Online Marketing

UI Elements at 60fps (Progressive Web App Summit 2016)

I kind of wanted to put that into a little bit of context when we talked about performance historically on our team. Last year year and a half we’ve talked about a thing called rail and rail stands for response, animation, idle and load, and it’s a way of thinking about performance that puts the user in the middle and lets us figure out what they expect from things.

So, for example, if you tap on a screen, you expect something to be coming back on screen in under a tenth of a second. If you scroll or there’s a transition, that’s an animation, and we want that at 60 frames. A second idle is a bit of a funny one, but the general idea is that you should do work when the user isn’t interacting and when there’s opportunity to do so when the main thread has some time and we do those in 50 millisecond chunks.

So we can keep responding to users and loading. You want to keep the user on their train of thought, and so you’ve got about a second to get something up on screen, whether that’s from a cache for the network. Now, when we talk about rail, this is the kind of world view. Then I think many of us have today we kind of go yeah responses. Ok, yeah! We don’t need to be lucky, that’s fair enough! It’s kind of important scrolling animation.

It definitely heard that’s a thing and that’s something I want to make sure is good idle. Yeah sure seems good load load, yes, whoo back in the safe, ok load, yeah man, if I can catenate all that good stuff, but here’s the thing this is kind of where we’re thinking of being on people’s home screens and a closer look at that home screen Raises an interesting question which of these is the progressive one up which of these is the native web app? The truth is users don’t care what they care about.

Is that the thing that they tap on works really well and they would never say something: oh wow. It skipped things there you go back would go rewind, okay, nobody ever going to say this, and if they did, it was something ice. That up looks like native. I hope it behaves like it. There you go, they expect it to behave like a native app. They expect your stuff to run. Well, I want to say, behaves there, we go hello behaves for me is like performance, and it’s about.

Does it behave as we expect? Is it do the things that you know and interact with it? Just do the right things right, since that’s the case, I think we can reevaluate rail to look more like back bad clicker more like this, the response part of rail. Well, we expect our responses to be instant like every time instant. So that’s just now more important. Animations yep they’re down there and there we go they’re going up there, because we expect again, we expect instant transitions.

We expect you know scrolling to be super smooth idle. Well now, if we’re doing more work, to make responses and animations good idle is something we’re going to have to be more tactical about we’re going to have to do some work when the user isn’t, and we have things like requests idle callback for that, so idle. Just went up good news, though I think, if you’re expecting somebody to add you to home screen and run your stuff lots of times.

Hopefully, you’re going to have a serviceworker, hopefully you’re, going to be running from a cache and therefore I think load drops down to here. I don’t think it’s unimportant. Don’t get me wrong. You still got to do a good job to get that first load there, but I think over time I think that’s what we’re talking about so, if you’re being home screen minded. I think it looks more like this and I think, if you think about the the native apps, that you run, you have a similar expectation.

You don’t ever sit there thinking about well, this APK took a long time. You know when you’re using it for the 50th time you’re thinking more about how this actually behaves, whether it’s got the features you want and so on. So with that in mind, I wanted to talk about three individual components, but they give me an excuse to talk about about a bunch of other things and I can explain, I suppose, the way I categorize my components from deterministic.

We know up front. We can hard code the values, those animations and interactions through something that’s a little bit less known upfront all the way through to something where we’ve got no idea about how it’s going to behave until somebody actually clicks on the thing, or we have a little bit Of an idea, but not much so those three components are a side, nav some swipeable cards and then expand and collapse view, let’s jump straight into the side navigation, which I think most of us I’ve seen before seen these you ever seen these quite a lot.

So what, although, for each one of these I’ll, explain the theory of how I would approach them to maintain performance and to kind of be performance minded? I will be leaving probably some glaring omissions in the area of accessibility, but just as well Bob Dodds coming on next and he’s going to talk about accessibility. Oh it all fits together wonderfully anyway, the theory for the side nav. What we’re going to do is we’re going to pop on a containing element over the top of all our content, into which we can place a semi-transparent black, a background to obscure our content and then we’re going to have this contents bit with our actual side.

Nav. In it, which will slide in from the side like so so, the CSS for something like that for that containing element, it’s going to be positioned, fixed left:0, top:0 width and height 1 %. Some people like to do write 0 bottom 0. That’s fine works just as well overflow, hidden because we don’t want any scroll bars, but the pointer events. One is a bit of an interesting side step that I want to take it lets me talk about something that’s kind of like a primed element, so these are elements where you you want that thing to be ready to go, and the sign now is one of Those because, when a user taps on the button, they expect the side nav to just come throughout right.

So the general idea behind a primed element for me is that it’s something that could be activated at any time: okay, like a side, nav yeah, it probably fits that bill and if you were to toggle its visibility, it would take more than 100 milliseconds, as in Because they’re, probably at a tap a button and you ray’ll, tells you you’ve got 100 milliseconds to respond if you take longer than that, it’s going to feel lucky.

So these are my sort of two criteria. As I say, I’m leaving a glaring omission where’s. The regards accessibility so hold on to your hats for that bit coming next, but all the same we have around on. I think this is a primed element. I think it fits and as such we can take a couple of shortcuts, one of which is we’re going to promote the content bit to its own layer and, if you’re not familiar with layer promotion.

The idea is, you want to separate out an element from the rest of the page so that when you paint it or move it around, you don’t affect any other element on the page. It’s the same kind of deal. Is you know if you are not packaged whatever you create a layer and you can mess with the pixels in it and you don’t mess with anything else now? The easiest way to do that today, to create one of these layers called a compositor layer, is to use, will change transform.

So if you imagine the simplest possible page with a photo of bald idiot and a nice guy – and you put will change onto said image now, you can move it around with a transform and you can see that it’s kind of separate from the page. Obviously, this isn’t happening in real time, but it’s it’s the idea of separating these things out now you may be sitting there thinking that seems like a great idea star.

Will change transform burn that from your mind? Okay, if I’m not clear, don’t do it! The reason you don’t wan na do it is twofold. Firstly, you’ll want to keep your memory usage down, especially on a mobile device. If you create layers you’re going to use memory, you’re going to have management you’re going to have textures on the GPU all that kind of stuff, so you want to do this as needed now with the primed element, I’m going to make the argument that you probably Want to do something like the will change in your CSS, but in other cases, where it’s not known until you start interacting, you probably do the will change in your JavaScript.

The other reason is you want to keep your time in compositing to a minimum. Compositing is where we take all those layers and we squish it back together and put the pixels up on screen now, of course, if you made lots of layers, that’s a lot of depth, sorting, it’s a lot of management, and it’s a lot of putting back together That takes time, so you want to be tactical about this, so we’ve got our promoted layer and, as you can see in the CSS I’m going to put will change transform on it like so and then come back, then yeah I’m going to transform the contents off To the left, by a oddly specific 102 percent and if you’re curious about that is because I’ve got a shadow, and I just do an extra couple of percent to hide it, cheating, but that’s programming.

You know it’s just cheating right sometimes and I’m a cheat when it comes to programming, I’m very, very, not otherwise, especially not when playing little games with my kids, I’m very fair, never cheap anyway. Eventually, the user is going to tap on a button and that’s going to show the side nav, which in this case is just going to add a class in that class, is going to remove that 102 percent fairly straightforward.

And we get something like this, where it slides in from the side that semi-transparent black black background is the same kind of deal here. We’re going to do a will change of opacity from an opacity value of 0 to an opacity value of 1 and getting rid of it like so it’s just going to be the same in Reverse, we’re just going to remove that class. Everything goes back. It’s great and we could just do that, but it’s like hide side nav, which I put on the containing element.

So if you click anywhere, I’m going to hide the side nav, which is a bit bad, if you actually click on something in the side nav. So the way to get around, that is, to just add an extra handler for that particular situation, which cancels the click which is just a stopped propagation, so I’m kind of canceling the click and it works out really well, in fact so well, this is what it Looks like in reality, this is one that Surma and I built.

This is actually running on a nexus 5x and you can see you know slide out slide in. I actually added a bit of drag thing to it, which you can see if you want to afterwards. When you take a profile of this in the dev tools timeline, which is kind of what you want to be doing with all your UI elements, I have the side nav sliding in and sliding out, which doesn’t look very big. So, let’s zoom in you can see that green chunk is the frames per second and we’re hitting a nice comfy 60 frames a second on our Nexus 5x and below.

It is the amount of work frame which is pretty low because we’re not doing much we’re just using transform changes if you’re interested in seeing that actually being built for real there’s the TL DW and is also a live stream, which was about an hour long with Me and Surma, where we built the side, nav books and everything it was great, but you can catch that if you, if you haven’t seen it so, let’s move on since we’ve done the essentially done the fully deterministic hundred and two percent, nothing.

We can move on to this swipeable card, which is a little more interactive, a little more dynamic. So that’s this one you’ve seen it probably some that Google, now you know just ours and it slides up to take its place. The theory here is again. We want to promote to a layer for the thing that’s being interacted with, but we want to do that on demand. We don’t want to do this one ahead of time, because if you had a lot of cards, that’s a lot of layers and a lot of memory usage, not a good idea.

We also want to use transform and opacity as well, because we’re going to transform this thing off to the side and from a kind of behavioral point of view. If we want it to fade out, because that gives the idea of being dismissed, it’s it kind of something the user would expect now. At this point, I want to take a little bit of a detour and talk about kind of game loopy stuff, which is something that any game developer would be like yeah and it’s extremely useful in this situation.

What we want to do in these kind of cases is decouple our input, which can happen fairly, sporadically and whatever, from the actual rendering and drawing you bit. We should expect from a game because your character stood there. You don’t want to you know you want the kind of game to keep moving, even when you’re not moving the character right same kind of thing. We want this animation to keep going, even when we’re not actually doing touch.

Events, for example, and the way we do that is, we call requestanimationframe for every frame of the interaction and we’ll give it our update function, which you know the nice side effect, gives us a function that we can just call to be like just draw it. Even when there’s nothing else going on now, we’ve got a touch move at the start of the frame. Well, that’s, okay, we’ll just use it will distort its value and we’ll pick it up in the requestanimationframe.

If it comes in a little bit late or it doesn’t come in at all no big deal, we’ll just use the last known good value. If, by some weird weird chance, we actually got two or more well again we’re not doing work per input event we’re the only going to do it once per frame and we’re just going to use the last known good value, that’s good. So this is a model that you probably want to adopt. If you haven’t already for this kind of work now we get to the actually to adding the event listeners and fair enough, I’m going to share them between Mouse and touch.

I think pointer events might help a little bit here, but you know I’ve got this so touchstart touchmove touchend, so on and as a side note, the adding of these touch handlers to the document is bad. Generally speaking and the reason it’s bad is this: really? You have on the compositor thread, which gets the user touch. It’s the one that actually is told about the interaction first and by default. It would do something like scrolling.

It would just move the page up and down, but we registered a touch move, and that involves the main thread and if the main thread was busy or our touch move, just ran for a long time. For some reason, then, eventually to come back and the frame will be shipped, but in between that we’ve blocked the user oops. So that’s not as good, and there is a way around this it’s new as of I believe, chrome, 51 and it’s in opera and Firefox.

It’s in development, according to Chrome status, same with WebKit, but this is encyclopedia large, obviously, and I’m not sure about age. I can check with the folks on that team. However, what we do is we add this passive, true to the event listener. One that says is, I won’t call prevent default, I’m not going to do it. So don’t worry about waiting on me in order to do the thing you’re going to do still give me the events and give me the information, but I’m not going to prevent default.

Okay and then the browser goes cool. I won’t block then I’ll just get on with it. That’s great. So, anyway, back to where we were. We have our event listeners and we talked about what they are going to do. For example, we have this card, it’s in the start exposition. So what we’ll do is tapped on it we’ll go to our on start, which is going to basically ask for the position which lie to be paychecks or the first touch.

Events, page X and then we’ll add, will change on it dynamically, which will give us a bit of a hit because we have to create the layer and everything. But it’s probably going to be. Ok. Probably now you actually move your finger across and we have to category in what’s the new position, which is fairly straightforward, it’s the same kind of deal. We just tracked the page X or the first touch events page X and since we know where we were and where we are, we can figure out what the translation should be, such that in our update function.

We can say if you’re dragging the card, your translation is the current minus the start and what we will do is we will apply a transform with that value. Great stuff, that’s going to work, we’re going to be able to slide across. We can change the opacity and the same in the same kind of way, but we now need to think about the next part, which is I’m kind of dismissing the card right or I don’t go far enough and it comes back to the middle so kind of This is the behavioral bit, so if we consider a normalized distance, so it’s at 0.

If it was out to the side, we could say that’s position 1 or back in the other way. That’s also position 1. All we can do is we can come to throat. These thresholds, I put them in 0.35, when I was doing this, you could pick naught point 3, 6 or something else entirely. It’s very exciting. What will I choose today? Who knows that’s web dev, so I put an all point three five and if you don’t know, Pratt’s, not point three, five, I’m going to slide back to the middle.

If you do go past, not point three, five, I’m going to dismiss the card fair enough. Okay, so that’s in the the on end, like so oh yeah, threshold card width times by not 0.35, and it’s is this – is this target x value which we’re going to come on to in a moment it’s defaulting to zero? If you go past the threshold, we’re going to choose, either the card width or card with, depending on which direction you were going okay, and we can pick that up in the the else here, where we say translate x, plus equals target X minus translate X, all Over four and if you’ve been around for a while – and it done this kind of work – you probably recognize this if you haven’t very exciting little one-liner, that is incredibly helpful when you want to do what I call the easiest easing in the world or easy inning Easy takes always takes this form.

Okay, it’s value plus equals target value all over strength, and I genuinely have made other developers like memorize that, because it’s incredibly helpful, let me show you what I mean worked. Example. Let’s say you want to get this box from zero to a hundred and you basically target value. So it’s 100 zero all over strength, which is four we’ll move. It 25 pixels cool on the next iteration. It’s a hundred minus 25, which is 75 all over the strength, which is four, that’s 18 point, seven five and, as you build it up, you’re going to see that it’s going to slow down because there’s a nice kind of slowdown easing feel for this, so that Your box would go mmm sound effects, not included okay.

So that’s this one line, but it’s an incredibly helpful line. It’s either than that users back to zero, which can ease us to the card dismissal point now we need to detect doneness. There’s no better word for what we’re doing here. Is this animation done? Can I say that we’re finished with this? Okay? The way we do that is well, it’s either you go there and back to the middle, fair enough, in which case we can just say.

Are you nearly at the start? If so, yeah you’re probably done I’ll work that’ll get us most of the way there. If you are just reset the target allow the user to interact again. Other one is basically, you slide. You’ve done the slide out to the side like so, and we also know that we’re going to fade out the card. So I mean this is pretty cheeky, but we can just ask: is the opacity really really low if it is it’s nearly invisible? If it’s nearly invisible, it’s going, it’s going going gone and, in fact gone so much that we’re going to remove it from the Dom with remove child like so now that will cause all the other cards to jump up immediately, because the Dom yeah we took our Element until the other ones went full cool, there’s some space, let’s take it, which we don’t want.

We want them to animate. We have this function. That says, is what there’s and it looks like this. You know that kind of slide up there. You go. That’s the thing you want, so what we do is in our animator the cards into position. What we’re going to do is we’re just going to ask for the current card and we’re going to step through all the remaining ones like so and we’re just going to. Basically, push them down straight down by a cards height, so you go back down to where you were.

Please just ignore the fact that we just removed a card. You stay where you are, and then what we’re going to do is we’re going to wait a frame for that to take hold because styles will run after the end of our JavaScript cool and then what we’ll do is we’ll switch on a transition on transforms and We’ll get rid of it and that’ll cause all the cars to go and that’ll look great cool, and then, when we’re done, we can reset the target and in reality this is what it looks like.

This is another one that server and I built again. It took an hour there were bugs weird, so you go slide swipe it’s great. If you have two timeline and you were to take a recording of that again zoom in and it’s actually in two parts, this one the left-hand bit is the car dismiss. What are you doing slides? Don’t do that to me. I maybe it’s me and Jake. Maybe maybe we just there’s something bad going on, I’m blaming Jake.

It was all fine until Jake came on stage and everything broke for him. Interesting coincidence. Yes, so the car dismissal. That’s right there and then there’s the other bit here, which is sliding the card and you see, there’s a little dip at the start and that’s because that layer, promotion of there’s a bit of layer promotion, but the kind of setting up of those card animations did Cost us a little bit so, if you’re interested in nine, you want to see that one built.

What are you doing seriously? Okay, if you want to see that one built there’s a TL DW, there’s an hour-long livestream that you can catch of that one as well. So I football cards right. We can move on areas, I’m just going to stand around here. Okay, the exponent collapse is the final one and it’s the one. That is the kind of fully dynamic one, because you could pick any of those cards. They could be anywhere on screen and okay, in this case, in the mobile case, they might do a full screen takeover, but they might not.

They might just expand a little bit or something like that. We don’t really know ahead of time. We can’t hard-code those values and if we try it’s going to be pretty horrible, so how do we handle this situation? Well, the theory for this one is going to be a little more involved, but that’s fun. When I get something like this from a designer or I do it myself, I kind of read it over and over and over again it’s a thrilling few minutes.

But it’s a useful few minutes because it’ll as you kind of read something over and over again, your brain starts to notice the patterns and the patterns here are in this case. I think that thing is, is getting bigger and it’s moving. Yes, there’s the pink head a bit, that’s fading in, but predominately this is about a movement, it’s getting wider and taller and it’s moving and therefore I would normally go wow that feels like a width, height left in top moment.

Great, that’s probably what I would animate, except that that would be bad and the reason it would be bad is that in every browser you would trigger layout with a purple chunk at the top. There paint and composite layout is basically where the browser says. Where is every element? It’s basically a geometric process. Where is the remote element? Every element, what is its size and so on paint is where we fill in pixels and compositing is where we put the page back together all those layers.

Now, if you’ve got to do that for every single frame, when you might have a reasonable size that Dom you’re in trouble, you don’t want to be able to do under have to do this work on every single frame. Chances of getting 60 frames. A second slim to none – you may have noticed that I use transforms an awful lot and the reason it is their profile is different for an element. That’s got its own compositor layer.

Changing a transform is not going to trigger layout and it’s not going to trigger paint. It should only trigger compositing, which is something that we can probably get done comfortably at 60 frames a second, so this then changes the question to look like this. Can we do that effect with transforms? Can we remap this slow-mo? Can we do that with a transform? Well to me that looks like a scale and it looks like a translation cool.

My approach is called flip all right, so that’s the first last invert and play because there aren’t enough acronyms okay, so I’m adding another one cool, but it’s an extremely useful way to think about the animation. What we want to do is we want to essentially ask the question at room type. Where is the element that I’m interacting with so we record its first position on screen and we do that with something like get bounding, client rect, which is fun to say and has been around since ie for lint.

And it will tell you in relation to the viewport, where this element is its left, its height, its top its right, its bottom, all the stuff that we need to know know what we can do is we can actually snap the element in question out to its Final position, I’m doing this for the class. We could have manipulate the Styles. You could do whatever you need to do so now our card is going to be in its last position like so, and we can call get bounding, client rect a second time.

So now we know where you were now now. We know where you’re going to be that’s cool. That means we can start to kind of figure out our transforms that we might need dynamically. Now there is a word of warning here. Going from first to last is going to trigger styles and layout and the reason it’s going to trigger styles and layout is because the second gets bounding, client rect came after some style mutation.

We said: here’s a new class for you or here’s, some style changes, and then we asked for how wide and how high and where are you on screen and the browser goes. I don’t know you just moved everything hang on. Let me go and figure it out and I’ll come back with an answer and that’s exactly what happens. So you got to bear in mind that there’s the from this first class, I mean you might be sitting there going hang on a minute.

I’r sure you said trigger in layout was bad and I did, but the key is here: we’re not going to do it on every single frame. There are two things we need to bear in mind, one we’re going to do it once at the start, as a set up cost. Secondly, we have rail, which is going to be our friend here, bear in mind the user tapped on a card to get the animation. Therefore, in rail terms there here, we have a tenth of a second in which to respond.

We have a tenth of a second in which we can do some work and believe me, a tenth of a second is actually quite a long time, especially when it comes to this kind of work. It’s great. We should use it and we do so. When it comes to rail and flip, you can typically afford to do a single styles and layout. Pass then seriously one, but that’s cool. That’s often enough and in terms of flip, that’s a good set up time.

You’ll still need it to complete in less than 100 milliseconds, so you kind of have to be aware of how big the DOM is and if you’re able to use something like CSS containment to limit the scope of layout and paint. You should definitely do that and that’s really useful. However, we knew where we work. That was first, we know where we are that’s last and now we can transform. What we’ll do is we’ll just basically apply an inverse transform to take us back to here.

We can do that so first left, you know blah blah blah. Do that with a scale, apply a transform that uses those values. So at this point, we’ve done first last an invert – and it’s like this. So if I was the top on the card Ready, Steady, Go there, you go from the users point of view. Nothing happened. What’s really happening. Is this going first last and then we’re inverting and it feels like a lot of setup cost and it kind of is, but it gives us a huge advantage, because what we can do now is switch on transition on transforms and remove that transform and our card Will just go, we didn’t know where it was bit the stuff.

We didn’t hard code it we just said: where are you going? Where are you now I’ll figure out the transform and I’ll apply it for you, we’ve just most a remaps, something there was width, height, left and top, which wouldn’t have run at 60 frames. A second do something that definitely will hopefully all being well caveat. So because there’s always those if you’ve got some scale changes that are being applied.

They something like text, let’s say, you’re, doing something flipped like when you got something with text inside that might get squashed or stretched. So you might need to move the content to a sibling element so that it’s not affected and then just have faded in or something like that, but a sleight-of-hand. You might need to do that bit of gymnastics, but it’s well worth it like. I said the first to last does involve forcing Styles and layout, so you have to be careful with that, but this is what it looks like in reality there.

This is a little kind of expanded collapse, e-card thing, which you know that’s running on our Nexus 5x, and this screen doesn’t make a look at like it’s. 60 frames a second, but it is, and I can prove it because I’ve got timelines that show it and you can see it I’ll show you it’s great. It’s also responsive design friendly, like I said, we’re going to ask at room time what the first position is and what the last position is.

We don’t we don’t hard-code those values, which means the same animation on desktop, looks like this different position: different sizes, but still the same stuff, and this is what it looks like in timeline – will zoom in again to the top bit, and you see the dip at The start – and you see, there’s a red markers – that’s they’ve tools telling you your frames per second dipped below the comfortable point of 60, but we know that that was the setup of flipped.

That was the first lesson invert, which, on a nexus 5x on this case, was about 40 milliseconds. After that that is a steady, 60 frames, a second afterwards tremendous cool. I get to call this one a day in a moment. Some closing thoughts. You’ve noticed probably that I use will change, and I would suggest that you start doing that. If you haven’t already for elements that you intend to animate, you need to decide.

Is this thing primed? If so, I’m going to probably put the will change into my CSS. If not, I need to do it on demand, probably via JavaScript, but you want to use it sparingly, don’t go overboard. Transform and opacity are your best friends. When it comes to UI elements, running performant ly. I hope in the future to be able to say that you can get away with a lot more and actually we are heading for that world with things like Jeep, GPU, rasterization, CSS containment, lots of really good things that might help us limit the work, and I Mean that we can do more, but for today for the cross browser story, I would suggest that you stick here.

If you find yourself in the kind of dynamic and then something like flip, where you can remap expensive properties calculate your transforms at runtime is very useful. Now follow that’s news to you and you’ve never come across like layout, recalc style or anything here are some links, inbound phones out, don’t worry, you can get the slides afterwards as well. Other phones went down, don’t care anymore.

There’s the Google web fundamentals render performance section complete with Udacity course, which will take you through the same kind of content, very useful to get up to speed. Secondarily, if you want the source code for those elements, I showed you can get that at the supercharge. Do I wish to take you to the github repo? If you want to see me and Surma, where sermo basically spends an hour interrupting me and I try and code it’s like real life.

There are bugs as well. It’s just it’s every time. I don’t when it’s scary, but brilliant and there’s a TL DW, which is like five minutes. If you ever got that on that time right, I need to shut up and move on, but before I do, I just want to say this again. We are hopefully going to be here. This is the first time we’ve been invited to people’s home screens. That is incredibly exciting, but it’s also a huge responsibility.

We need to act like we deserve to be there, and that means taking a user interface work super seriously. The web is ready for us to do that. We can do that today with the tech. I’ve shown that you can. I hope that you go and give it a try, and with that I’ll say, thank you very much. You


Online Marketing

.tech .website .store .space .site .press .host .online New Domain Names by Radix

I handle marketing for addicts, which is a new domain registry. What we’re doing here is basically be on these new domain extensions, so you have that website. Yes, that store that holds that press space yeah. So these domains are quite cool right. They’re, amazing, I mean look at it, just just the fact that there’s so self-explanatory. Just if you have a dog tag, you already know what the website is about.

If you have a dot press, you know it’s going to be something to do with news journalism. If it’s a dot store, I don’t even need to tell you what’s going to be there on it? Yes, you have this. What happened like there was some kind of yes, so four years back, I can, which is the organization with hands. Policy for the internet, actually opened up applications for new domain registries or new domain extensions, and we were one of the companies that applied to them.

We applied a few of them and after that we had to go through a process in which some of them had. We, we had multiple applicants to them. For example, dot, tech and dot store are ones that we had come. Yes, we did actually not so actually was one of the ones that we competed with Google and Amazon and we wanted in an option. I mean that’s, it’s a it’s an option. It’s a closed option that we had to.

Basically, there is a condition about when you’re applying for the domain name. Obviously the I mean I can checks whether you have the technical capabilities and the financial capabilities to actually run the registry, but once that’s done, it’s basically the option. So what is radix? I have marketing for radix. Radix is a part of a bigger community known as direct. I direct a group of companies where based out of India – and this is what we do.

Radix is a domain name registry. We don’t have any offices in London UK, but we work worldwide through partners like GoDaddy name.Com, name, chief one and one one, two, three reg all the guys. So I think it’s very, very cool that there’s a new domain top-level domains, there’s lots of new ones. Yes, but how is it with pricing and are there any pretty ones so uh pricing for minister? First of all, let me get to all the questions that you ask.

The first one is yesterday a lot of new top-level domains. They about almost a thousand of them, but luckily we own some of the best ones right now we have eight. As of now we’re still acquiring more so the next one to come up would be dot fun, which would be launching somewhere and early next year. We’ll be launching that soon and we’ve already got it yeah there are a few. There are the Slovak not right now, there tons of them actually so yeah we own these, eight of them, we’ve already sold about and you’ll find, most of them doing really really well knocked over the latest and yeah we’ve got some really kick-ass websites on it already Is there any chance that you can see a business model or be allowed to give them out for free for people actually use them and somehow make money some other way? That’s uh! I mean we could, but are you companies good? But we wouldn’t look at that, because our core competence is in the domain names, I’m where you buy them and which TLD you’re looking at it can be priced anywhere from about a couple of dollars to about thirty to forty dollars zero.

So, for example, something like store might be more expensive because it’s commercial, correct, dot store is a little bit, I would say expensive, but it’s priced a little bit higher than maybe a dot site, and that’s because of not only its commercial. It’s also because of the audience that we’re looking at we’re looking at companies in in e-commerce in retail, so that target audience is much smaller and at the same time they much more serious.

We don’t want. We want to keep the pricing at such point. We’re not anyone just gets the name and uses it for anything. We want specific um companies to use. It only see the somebody’s usually price. Is it public what you paid for being the ones that own that pay it is. You can check it out tech. I think is public. The other ones. Aren’t I’m not too sure right now, so I wouldn’t want to command without exactly so.

When we apply for the domain extension, we actually put down our business plans and we submit those. So I can those have been reviewed. Some of them all our business plans are fine, because our business model is quite straightforward, but there are people who are doing something different with domain names, and you could do something else close, for example, there’s some people making money with that.

But let’s say I even sold a couple domains because people ask me yep. I wish they would not all these people that just buy domains – and just I know that’s uh – happens to all the babies. We cannot prevent it, but we do that. That’s where pricing comes into play, so that’s why we’re not going to price our domains really really low, or if we do, then we do get a lot of people buying them and just squatting on them.

That’s why some of our domains would be priced a little higher, like I said, not stored, our tech, not hosts. These will be priced higher so that, if that prevents people from actually buying them in stock and just sitting on them like have a system that there would be a way to use AI or whatever and buy go to do. An API to check is actually ever being used to just park. That’s not the best way to do it, because there are a lot of people who would want to buy the domain name for brand protection, say, for example, TechCrunch wants to protect all its breath.

Its brand across all extensions, they would still buy all the domain names but wouldn’t actually use them. That’s so that nobody else uses TechCrunch start store to sell there, someone else’s products on them, so that still is nobody should be allowed to take that code. So we have a process for that in place before we launch any TLD. We have a 60 day period called the sunrise period where only trademark holders are allowed to register.

But after that it needs to be open for shark. The web no domain so any domain. Sharks, but if there’s just more important in charge now on it, so I don’t think it’s affected the number of people actually swatting or actually purchasing domains just to hold on here in anyway. What we have done is actually given an opportunity for people who didn’t get domain names earlier to actually work on these domain names.

Now they can get the choice of domain name, that they want and actually build a business of it. So I think, in that way we’re definitely helping out all these startups are using. Oh yeah, that’s a brilliant uh. I can. I can name a few. We actually have a couple of startups using your Tegrity name over here. We have gone VTEC in whole, star tech in the style valley right now, and you can see a lot of them.

We had about 20 order of startups at Web Summit using our domain extensions and that’s growing everywhere. You’ll see people getting onto these extensions so that you can get the best name. How about these big guys? Do you know what they’re doing? Are they yet letting people to register all the ones that they got? Oh yes, so let me yeah couple of examples so, for example, dot store, it’s been used by NBA, so you go to NBA, dr.

PS, dot, tech and then they RCS web dot, orgy yeah, and that’s why it makes sense. Ces or tech tells you exactly what it is. They also free name their company, the CDA tech. So that’s uh, it’s basically everyone’s already using these extensions amongst all the sets, so depends where you’re, looking, what you mean by popular, if it’s just in terms of sales in terms of registration, is very different, because a lot of TL DS are being sold for very Low prices, amongst our own extensions, I can tell you that dot site is doing really well, it’s sold over 600,000 names or tech is sold over half a million names, that’s just launched was actually one of our biggest.

We sold thirty four thousand names in the first day itself, so all of them are doing really really well in totality. We’ve sold over two million names amongst these and you can see a lot of them already on there, like some 1 million ranking there’s so many people know everybody needs to the mail, it’s not nice that they have to. Yes, our one makes sense. People are not going to remember along the main name, so uncle makes and no one’s going to type it in or getting your short name is way difficult.

Now, intercom, oh and that’s where we come in that that’s something we can explore, but I don’t think that will help us in the large keep saying three times a radio. Okay, thanks cool! That’s awesome, okay, something host something pressed my that space; no, maybe not, and lots of cool domains right here.


Online Marketing

I Tried To Be Twitter Famous in One Day 2018… *emotional

No one gives a sh*t f**king hate, twitter, (, Fire Music Plays ), Ok good morning, guys umm woke up 4:30 and decided that I want to be Twitter famous. Ok, So I’m not sure how I came up with this. I just don’t really understand Twitter, like I don’t even have.

How do you Twitter, like I don’t know, Welcome to my blog. My name is Jade. If you’re new Hi, I usually do Instagram growth articles, but I was trying to give you guys some variety Hey guys. So I’m at the gym – It’s currently like 8 a.M.. And I’ve got a meeting today. So I’m going to take you guys along I’m, going to try to do the first tweet this morning and I’ll. Do it lunch and then do an afternoon and see how many followers I get so, let’s just start with the workout and I’m just trying to get inspired, I’m going to listen to some Gary Vee get the brain flow going, so I could think about cool tweets.

Oh, what do you even do on Twitter? Let’s get into it. We just finished the workout hardcore on these weights. I’m just trying to think about my first tweet Honestly guys when I think about Twitter, I think about memes and high-schoolers subtweeting. I don’t really know how to use it like. My first instinct is to post like motivational shit like Gary Vee, But I feel like no one relate the main reason why I don’t use Twitter is because it’s just filled with people from school.

It’s not like. That’s a bad thing. It’s just like. I can’t tweet anything. That’s relatable! If you guys would help me out and like help me be myself and just follow me on Twitter, So I have an audience to share my thoughts and values. I mean I’ll be linked right here and below I’m going to think about a meme just because I want to see if I can come up with a good, meme post it right now, It’s the morning, so we’ll just see what I come up with.

I want to get some fresh air to think about my meme. It’s really hard to come up with stuff without like, depending on a trend like the tide, pods trend like I can totally make something Out of that. But, like I understand why people get Twitter famous, it’s fu**ing hard to be creative. I mean Twitter’s the only platform where people would post their sh*t on their timeline. In addition to Facebook, But Facebook is like, I guess, older demographic, so I feel like no one will understand my memes, But I’m just trying to think so.

I decided that I was willing to search up the Twitter algorithm Just to get a better understanding. You can see it’s just use appropriate hashtags use topics that are trending. I can’t come up with anything creative. This is draining. This is hard. I’m looking at the trending tweets and one of them is 14 years of Wings Club, Which is one of my favorite shows when I was younger everything that’s good is taken.

I swear every single idea. I have is just done and I don’t I just want to be: okay Yeah. You got it so. Basically, wings club is like an old show and something That’s old too. Is my nintendo ds. Mom. Look! Oh yeah. Did you know what this is yeah your ds game? Do you remember the show I think I used to read when I was a child? Oh yeah, the wings. I wonder if it turns on ( GAAASSSPPPP ) Nooooooooo, Okay, so I’m going to take some photos of it with just my iphone just taking a photo of it, Then I’m going to put on the meme.

So I’m going to compare it to something and I’ll show. You guys that the final tweet, so here it is I’ll pop the tweet right here, And I think it’s just really funny. If you don’t get it you’re not going to get it, It’s just like it’s only like if you were like 5 or 7 years old, Like you, would understand this tweet, because it was just the best like TV show. Ever someone just commented: lol yikes, Don’t even give a shit.

Okay, alright, So post it on my Instagram story and all I got ta do is just wait. Til I get a million more followers on Twitter. Help me out guys I’ll put the link below. If you can follow me and tweet my tweets and comment on my tweet turtle, emoji And then I’ll know, you came from the YouTube article. No one gives a sh*t Hate Twitter, I’m just kidding, I’m not going to give up, I’m actually getting ready, because your girl anotherrrr Busy day, I always say I have a busy day, but it’s not actually always like this.

Ah today is just like really packed. I coach people how to grow their social media and their online business, and then I actually have a tea date with the subscriber. That’s pretty cool. Oh, I can’t wait to meet some of you guys today. Only dilemma is like I have to work to like 8 p.M. Every hour. Maybe I should think about like spreading out my time and not concentrating all on one day But uh we’re all just update you all the tweet thing, but I said it’s just kind of a busy day.

So we’ll see how it goes. I actually have a coaching call right now: ( Fire Music Kicks in ). Most of their audience are the people that you want to work with, because, if they’re in the make up niche they’ll, also like your Products or your services as well, I wrapped up my coaching call. I just looked up Twitter growth and you can buy real Twitter followers. How expensive Is that… Haha just kidding ( Horn Sound Plays ) *womp womp womp wooommmp, Ok, listen! I did my research when I say the research.

I was reading a few YouTube articles. I’m trying to learn Twitter man. What I’ve heard is like even the CEO Jack Dorsey was It’s like. He sent out a tweet I’ll have to like insert it here October, he’s like we’ve, been working so hard to reengage everyone. It’s been two years and it’s hard like he basically just restated that Twitter is dead. I just read this article also by Inc and was saying why Twitter might be the new entrepreneurs best friend Or it’s just like the only person that spends money on Twitter ads or like political sh*t, And you know what I mean like.

No one’s really spending money on Twitter ads for e-commerce And there’s a reason. Why? Because, like none of the attention, is there Twitter decrease from 70 million users to 68 million users? That’s not good at all. I don’t know I’m not even offended yo, I’m killing the Instagram, I’m just going to double down on Instagram and youtube. I was feeling bad about myself that I wasn’t doing Twitter. Sorry Twitter’s just not relevant right now.

You guys might like Twitter. I just don’t think it’s going to be sustainable just because they’re out their an algorithm is really really weird. It’s I think, what’s happening is, if you tweet a lot, You won’t get engagement and, like usually most platforms, encourage a lot of posts, but Twitter is like the opposite. Also, If you want to show up on someone’s timeline, it’s not it’s like not always Chronological and the fact that Twitter is not like a article and audio Platform.

The reason why it’s declining just because everyone’s so accustomed to visuals and subtag – but I know you can do tags on Twitter, But you know it’s not really meant for that, But I’m not even offended. So maybe I shouldn’t try to be Twitter famous, because Twitter is dead, confirmed, I’m just kidding I’ll try it. I keep trying. I think I’m going to tweet Twitter is dead. I’m not Twitter girl, Okay, so we’re just going to do that for a second tweet of the day I might have lunch and I have another coaching Call so I’ll give you guys any progress.

I’m just like I realize I shouldn’t be offended if no one’s seeing my posts Just because I’m not really made for Twitter like purposes, I just don’t understand, okay, so I’m going to pop this second tweet. I think it’s just a good space for political news and updates, but for like content creators, It’s actually very weird, just not a fun area to get engagement. Um, I think YouTube is where it’s at to be honest, but I just cuz.

I love you guys so much so: ( Fire, Music, ), ( Fire, Music, ) Tie that with your music and run yourself as a media company, instead of just an artist you’re going to be so much stronger, ( fire, Music, ) And create like a like a freakn’ like Machine yeah. I just closed a deal with a student for a month program. So Honestly, I should just give up on Twitter. I had lunch. Then I made some bulletproof coffee.

You guys check out my coffee, vlog I’ll, just link it right here. My really high class recipe Hope you guys enjoy it. I have a meeting right now with a girl named, pin, ( Music, Bumps ). You need to try it man, You got ta, try to be an entrepreneur, But you know it’s not working for you, because if you can’t take rejection And if you can’t take the risk like you just you just it’s a feeling, I think it’s more of like A great podcast with James I’ll put his socials below So James interviewed me for his podcast, and it was great so, but now I got another phone call with Lex another artist, I’m working with hey.

This is Jade, hey how you doin Hey welcome to car chats with Jade And Mom. This article is a fail. I was sad, but now I’m not even offended, because the platform itself is dead, hashtag, not even blaming the platform. I feel like a lot. People have traffic on Twitter because it’s a great place to repost and send stuff to peoples timelines, But like coach, I lot of music of people in the music industry and she’s like yeah.

I get a lot of traffic on Twitter like a lot of retweets, But I’m like. Are they loyal like do they come back for your regular music and then just like? No, so I realize, like I think, is a huge space for people to transfer their Twitter traffic to their Instagram or their YouTube, because the moment you don’t cross-platform, the social media itself will eat you alive. Although I’ve failed all my challenge And it didn’t become Twitter famous, at least I have you guys so at least this makes a good title, alright, guys so other than today’s meeting, and then I have another call at 5:00 and another one at 6:00, another one at 7:00, another one at 8:00, so Nice to meet you hi, Hey guys, I’m here with Jenny, so we were talking about her blog life And I love connecting with you guys since this Twitter Thing’s going to fail anyways.

I thought I’d leave you guys with the more motivation which is, I think, my source of energy, and I get this question a lot. Ah, it’s just like. I think i’m just honestly grateful And I have so much to be thankful for and that’s why I just have so much energy to keep going. Let’s just check our results from today’s Twitter Fame. It’s not that much. I normally get anywhere um Two retweets to three likes and we’re just going to see how it is so we got One retweet and five hearts cool for my other post.

We got six hearts. Alright, we’ r, cooking, (, YAAAAYYY, Sound clip Plays ), Can’t believe Twitter’s. A fail, no offense Jack Dorsey, but you really need to step up your algorithm. I could make this article again and have successful results, but you guys are the best on YouTube. So I’m not even complaining. I love you guys so much. Congratulations to the comment winner! ( SONG ) Shout out to the comment winner Comment on this post to be featured in the next episooooooode ( SONG ENDS ).

If you want to be the next comment, winner Comment below your thoughts on Twitter, Do you use it Alright, catch you guys in the next one goodbye? What’s up guys? Thank you. So much for reading hold up. If you could do me, a huge favor give this article a like and hit that subscribe button to turn on my post notifications. That would mean the world to me and I’d really appreciate it.

Meet the guys behind one of the top-rated pumpkin seed snacks on!