at least knows some basics about networking. I'm not going to get into very many particle details here. So no bits and bytes. You can read up on that if you want to. These standards, neither quick nor HTTP3 are done yet. So some details may actually change before it ships. So just be aware. And sure, I'm going to make sure that actually I talk fast enough so that we can have some questions after my talk. I think there's a full hour until the next talk. Okay, so HTTP1 was defined. It actually, the first best specification is for 1996, HTTP1.0, and then 1.1 came 1999. So it's quite a long time. And then 2015, we published HTTP2. And HTTP2 has taken off, and it's really nowadays used, at least from browsers, it's used more often than HTTP1, at least for HTTPS traffic. So it's fairly popular, and it's had a widespread adoption. And now we're looking into what the next step then. Now we're going in HTTP3. Well, next. So HTTP started out done over TCP, or HTTP1 is over done over TCP. And I'm just going to remind you and use a little image here of a chain with links because that's how I view TCP. It's basically network traffic. And it's, you know, you set up a connection between two endpoints and you send data. There's a three-way handshake, three times ping-pong-pong before you have a connection. And then you send data and it resends lost packages.  There's, you send data from the other end, and it ends up in the other end, in that order. Or it doesn't end up there at all if the connection breaks, but sort of, that's basic for TCP. And it's in clear text, right? Everyone on the network can see your traffic. That's TCP. TCP created a very long time ago. It's from the 80s, and it's basically remained roughly the same over the years. But, okay, that's TCP then. But we used HTTPS today, right? And HTTPS is TCP with added TLS. And then you do HTTP over that. And HTTPS, looking at the Firefox trend, is used in, well, this graph ends in 20, by the year end 2018, but you see the trend is pretty clear. It's somewhere around 80% of all page loads are using HTTPS. So we're going into a world with basically, where HTTPS is going to be the primary protocol we're talking web traffic over. And looking at the same sort of trend from the Chrome's point of view, it shows roughly the same. Somewhere around 80% nowadays in share of page loads. This is, they have split it differently. So this is based on platforms. The other one was based on continents basically. So we're talking HTTPS here. So HTTPS being TCP plus TLS. And TLS then being the security layer that we add on top of TLS, sorry, on top of TCP. And that's how we secure TCP. And we do that for HTTP, one and HTTP, two. And this adds more handshakes, actually more back and forth. So the three-way handshake from before, you get some extra handshakes to add TLS on top of this. With TLS one of three, they fixed it. So it's actually not that many back and forths. But anyway, it's additional handshakes on top of this. And when using TLS and HTTPS, we get both privacy. So, and we get security. We actually know that we're talking to the right server. And we know that nobody can actually eavesdrop on your traffic so nobody can snoop on what you're doing. So that's what we like with HTTPS, right? But, okay, so HTTP done over TCP, as we're doing or have been doing for a long time, but it started out then, as I mentioned, HTTP 1.1 shipped in 99. We use HTTP 1.1 with typically a lot of parallel connections, right? With a browser, we use typically six connections per hostname and all bigger sites that event new hostname. So you have a really huge amount of TCP connections. To the extent that the median number of HTTP requests done over per TCP connection by five box is one. It's basically all connections that are used for one HTTP request before close it because it has to be closed because otherwise we would drown in TCP connections. So there's a very inefficient use of TCP. And TCP has also this slow start period. So it takes a while until TCP connections actually get up to speed. So closing them immediately like we do with HTTP 1.1 is really inefficient, which is basically one reason why no matter how much you increase your bandwidth, you won't get faster websites with HTTP 1.1 because we close the connections all the time. And we also have this little issue we call HTTP head of line blocking. So when you're connected to a site, you have your six connections to that host. When you wanna send the seventh request, there are many images on the site, you have to wait for the other one to one of the other requests to complete before you can issue your sevenths or eights and nine and 10. So they're all blocked by the one head of line blocking HTTP. And these are of course some of the limitations that people have created very imaginative workarounds for over the years. And those workarounds and those solutions were basically things that were taken into the work when HTTP 2 was made. So HTTP 2 was made to fix some of those problems that we experienced with HTTP 1. It shipped in 2015, not that long ago. So it uses then one connection per host, no more six connections per host, one connection per host and no more using funny host names to create new connections. And instead we do a lot of parallel streams within those connections, right? Typically you have 100 streams over a single connection. You can actually negotiate that, but I think 100 is by far the majority value used. So you don't have to, you don't get that HTTP head of line blocking anymore because you can always fire off and you will not always, but much more often. So you can send off more requests earlier, you don't have to wait for the other request until you send the next one. And that fixed it, HTTP head of line blocking and now instead introduced ourselves into the TCP head of line blocking problem. Because now we switch everything to one connection, right? Doing 100 streams over one TCP connection, we lose a little packet in the middle. All streams have to wait until that packet gets recent and then all 100 streams can continue again. So going into a loss of network with HTTP 2 using one connection is really crappy for you. That's the TCP head of line blocking. At the same time, we have an internet that has developed this habit or should I say a pattern that we call ossification which basically means that everything we do on the internet it gets stuck the way we introduce them. Over time, we can change anything and more because the internet is full of boxes. If you didn't know, it's a lot of boxes and they're all this sort of boxes. I mean, right there's gateways, load balancers, gnats, home broadband things and whatever, all those little boxes between you and the server in the other end. There are a lot of boxes and all those handle that net, the network data in various aspects. The forward IP packets, they terminate TCP, they load balancing HTTP, they do all these fun things that we need to make the internet work but they are all typically made, designed, written to handle today's protocols, right? They're implemented to handle TCP, the HTTP, the way we know how they work and that means that they're typically very, very bad at handling slightly new things when we try to change protocols. We come up with a new use of some bits in the header or new header values. A lot of these boxes, they don't like that new stuff. What's this? I threw it away. Introducing new things is really hard because of these ossifications. Things just get stuck in time basically because of all these boxes and these boxes upgrade a lot slower than the edges. You upgrade your browser, it happens automatically, basically daily or weekly at least. Even servers actually upgrade with some regular basis, not at all as often as browsers but still in the middle, however, that's they are stuck in time. Introducing new things is really hard. So just to illustrate what I said, this is the internet, lots of boxes. That's the server we want to access and that's me and we can go through the internet via a lot of boxes and all those are the middle boxes and they are the ones with this ossification effect. So due to this ossification that exists today, we never see HTTP2 done in clear text, for example. We need to do it with HTTPS which and part of the reason for that is that talking, changing HTTP, always speak a new protocol over TCP port 80 that will break because a lot of boxes, they know that HTTP port 80, that is HTTP 1.1 and we know HTTP 1.1, right? We can improve the traffic and fit a little bit with headers and stuff. So if we change the protocols dramatically, a lot of these boxes will just damage the traffic which really makes it hard to do HTTP2 in clear text over the internet, for example. Another fun little thing is, even if we then go down a layer in the protocol stack, looking at fixing TCP, one of these great inventions is the TFO, TCP fast open, is meant to reduce latency in the TCP handshake so you can send data earlier in the TCP handshake, a great idea. But there are a lot of boxes out there, they know how to identify a TCP header, right? There are some bits in there that says zero, nobody uses those except for the TFO case, right?  So using TFO, since we're talking about, we're in the Mozilla room, we fought with this in Firefox for a long time until we basically just gave up, sort of, no. The times it works, it's so rare, and it's so often that it actually slows down the handshakes, it's, no way. TFO, good idea, can't be implemented. And also, it actually also has this other little minor thing that TFO being a TCP change, you know, TCP is a kernel-based thing that everybody runs in the kernel, so it basically needs that this standard has to be set, it has to be implemented in code and then trickle down into Linux distros and into the kernels running on all these servers, which is also a very, very slow process. It takes a long time. TFO was written standardized for many years ago, I think it took about five to seven years until service actually started to support it. And Windows 10 is the first Windows version that actually supported. So it takes a long time until it happens and then in the end we couldn't really use it. Annoying. And another thing that is very similar to this is, you know, TCP, UDP, they are two different transport protocols and the IP stack, right? And you could imagine that you would create a replacement for these, like SCTP. But again, no, that won't happen because all these boxes out there, they know that TCP and UDP, they are the only protocols we care about. So they will throw away basically other protocols. So you cannot easily introduce a new protocol. These are the ones that they're here to stay. We will use these. Well, we can use ICMP and some others to some extent too, but these are the basic transfer protocols. So this of course then makes it really hard to innovate, change things because all of these boxes they make things really hard for us. Unless we encrypt. If we encrypt the traffic, nobody can inspect it. We hide it for them. They will just pass it through. They can't help us or improve the traffic. They can just sort of, it's just random gibberish to them. Excellent. So that is what we're doing then. In spite of this ossification, we wanna improve, we wanna change the world, right? We wanna make things better. So we need to do that in spite of this weird situation we're in. And that is what QUIC is trying to do or aiming to do. It is a new transport protocol. Just what I said we can't do. This is that, but I'll explain why or how. QUIC. Sorry, one moment. First I'll just mention that QUIC is not an acronym. It's the name. Doesn't mean anything. It's named QUIC. Whatever you read. It had a meaning once, but it's been removed. So QUIC, again, as everyone who remembers back several years ago, that basically this was how HP2 was made. This came from experiments and experiences that Google made with speedy. Taken to the ITF and out came HP2. HP2 being very similar to speedy. This time we're doing basically the same sort of operation. Google spearheaded with their version of QUIC experimented on the internet and they started a long time ago even before HP2 shipped. And they proved that sending HP2 frames over UDP over the internet actually works and is deployable. They have a fairly widely used client and some popular web services. Some of you might not try them. So they could really work it out and really prove to the world that it actually works to send HP2 over UDP. Yeah, it works. And it actually improves things to users and it actually helps in a lot of cases. So they took their protocol, called QUIC, to complicate things really a lot here. They made the Google QUIC. They took it to the ITF and said, let's make it a standard, which I think is a commendable thing to do and the right thing to do. And yes, in the ITF then they created the QUIC working group in 2016 and now you see we're after HP2 release at least. And then basically the ITF said, yeah, this is all fine but sending HP2 frames over UDP like this is a very HP specific use case. Let's make it a transport protocol instead of just HP over UDP. So they said, yeah, we should make it into a transport protocol and an application level protocol. So we shouldn't just munch them together like Google did. So they separated them. QUIC, since then, is growing into becoming the transport protocol and there's an application layer protocol on top of that. Then like HP3, the name HP3 wasn't set until last November. Before that it was only HP over QUIC but it's basically the same thing. So Google's QUIC is something different. Taken into the ITF, remodeled, completely new things came out in the other end. So we try to, in my talk here, I'm going to focus on the IETF QUIC and that's the real QUIC, that's the QUIC we're going to use in the future. The Google one is going to be left where it is or not something for the future to bother much about. So I'm not going to focus on the details of that. In QUIC, new transport protocol. When you do a new transport protocol, why not fix this TCP headline blocking problem? I'll explain how a little bit in a while. So I mentioned this three-way handshake in TCP with added TLS handshakes on top of that. We can fix that, right? To make sure that we get much better latency. And we can fix basically then, as I mentioned, the TFO problem sending data earlier in the handshake when we redo this, when we make a new protocol, we can add the TFO support, send the early data already when we design this protocol. And we can even make it a better early data support so we can send more, a bigger chunk of data than TFO actually can. And we can, of course, then add more encryption, always more bits, reveal less details of your connection to the middle boxes and to anyone snooping on your traffic. With both for your privacy and security, but also to reduce ossification. Boxes won't see your traffic. They can't make any wrong conclusions about what's in there. So this, hopefully, then, will put a pretty good foundation for future developments. I think the hope and I think a lot of people actually believe in it, too, is that when we ship this, we can actually trade. We can actually develop quick in the future, too. This won't get stuck as easily. So hopefully there will be a quick V2 even within a few years from now. Thanks to this being a good foundation and there's even a version negotiation thing so you can actually negotiate another version of quick. Fairly easy. And so to make this transport protocol, then since I said we can't introduce new transport protocols and we don't, then we just build it on top of UDP instead of replacing UDP. So we'll leave TCP and UDP. They can be like they are, right? We don't have to touch them. We instead use UDP as if it was IP, basically. It's just transporting data grams. So we implement a reliable transport protocol in user space on top of UDP. Basically a TCP-like thing on top of it. A little bit like TCP and TLS done by yourself. But I want to emphasize then that quick is on top of UDP and UDP isn't reliable. You all know that. I just wanna, because when I talk to people and say it's done over UDP and then people, all people, that's not reliable. They don't, there's no flow control and congestion control and things like that. And no, that's not available in UDP but quick is not UDP. Quick is a transport protocol on top of UDP. So all these resending flow control and everything is done on top of UDP. And to fix, sorry. The transport protocol, quick, then adds streams in the actual transport protocol. Pretty much if you're into, again, SCTP had streams, a little bit like SSH works. Similar to how HTTP2 solves it but this is in the transport protocol not in the application level protocol which might not make a big difference but it will for other application protocols. So quick provides the streams in the transport protocol. Which then is similar to HTTP2. You can do many parallel streams within one connection. And in the quick case, they are independent. So you can truly lose a packet on your connection and only those streams that are affected by that particular packet will have to wait. The other streams, they can continue. You can lose one packet and 99 streams can continue until that last packet is recent and that stream can go on. Which is sort of magic and it makes a new, it introduces new fun things. Just to illustrate it, I like to use my chain illustration because like in the TCP case when you wanna send many different streams, here's a green stream and a red stream, right? And the center of one single TCP connection. If you lose one of the links, like the red link is gone, the green one can continue, right, because the link is broken or the chain is broken. But when doing it with quick, they're independent. If you lose a link to one of the chains, if one of the blue links go away, the yellow chain can still go on without any problems. And of course then this being a transport layer protocol, we do application layer stuff on top of quick. And all these, all these, if there were more than one, right now there's only HTTP. But the application layer then gets streams for free because they're done in the transport protocol. And it could be any protocol. When the protocol was taken into the ITF, they pretty much one of the conditions to do the protocol in the ITF was that it should be made to do other protocols that just HTTP. And DNS was one of the protocols that was mentioned earlier on. It hasn't been mentioned much since then because I think very early on, the group also considered that it's too much of a job to take on a lot of protocols at the same time. So the emphasis has now been let's get quick and HTTP done first and consider other protocols after these ships. So once these ships, I'm sure there will be others who will join in and do other fun protocols on top of quick. So HTTP three is then HTTP over quick. And just to emphasize, this is again then changing HTTP, but HTTP remains the same, but not the same, right? HTTP is the, that's me and that's the server. And we still do request, right? We've always done. There's a method in there, you know, the verb, getPost, putPlub and there's a path and there are headers in the request and there's a body in the request so if we do a post or a put and stuff, exactly like before. Most of us will just think of HTTP like this and there's a response, you know, they are the same. There's a response code, there are headers and there's a body, like there's always been and this is going to remain. And most of us will just have to stick to that and we won't notice or care about any differences at all. But underneath, so of course, HTTP was the actual protocol party is ASCII based over TCP. And in HTTP 2, we changed that to become a binary protocol with multiplexing over TCP. But with HTTP 3, we go back to having a more simpler implementation because now the streams are provided by quick. And all of course being binary. So looking at the same thing then sort of stack-wise next to each other, this is how you view regular old HTTP 2 stack being IP, TCP, TLS and HTTP 2, right, very simple, that's how we do it. And now we're introducing quick instead, not as simple as, well, we do since we can introduce new transport protocol, we do everything with UDP and we add quick on top of that, we use TLS 1.3 for encryption and then we add HTTP 3 on top of that. That's HTTP 3 done over quick, quick uses TLS 1.3 internally. I'll get back a little bit about the TLS situation soon. And just if looking at the same data again, HTTP 2 versus HTTP 3, what's the difference really to sort of feature-wise, functionality-wise? They're very similar, functionality-wise. With HTTP 3, there's no clear text. You can never speak without encryption. There are independent streams in HTTP 3, so you can actually, you know, when the server delivers you images to your browser, they can actually end up in the client in a different order than the server symptom, which is going to be fun. But still, since the streams are independent, they can actually move independently of each other over the network. And because of their independence, HTTP 3 has a new header compression format because the H2 header compression format was relying on the streams being in that order and now they're out of order. And the server push better early data and much faster handshake. Zero RTT handshake in quick HTTP 3, which basically means that you, if you have talked to the server before, you can just set up a new connection without any latency at all. Well, one way of latency. So, okay, is this good or bad? How is this faster? And it's really a bit hard to say now because, because I put my slides in this order, you don't know this yet, but the HTTP 3 hasn't really been deployed much or used much yet, so I don't have a lot of, there's not a lot of numbers on how HTTP 3 actually works in the wild, so I'm using old numbers here based on Google Quick, which is, as I mentioned before, it's a different protocol, but this is HTTP done over UDP, so it's same basic fundamentals, but implemented differently. So if you're looking at those numbers, as before, this is another protocol improvement that really, really improves the situation to those who have the worst situation to begin with. So if you are in the 99th percentile of internet, you're probably in a really sad position, but Quick makes it really, improves things a lot for you. And apparently a lot of less buffering on YouTube. And they also proved that you can, that you can take advantage of the fast handshakes very often, which was also sort of a concern, how is this real R2T really a viable idea? But yes, a lot of connections can actually be set up again very quickly. And possibly three percent improvement on the average search page load isn't that much, but I don't know, I guess it's a small page and on average, I don't know. Okay, that is Quick, that is HTTP 3, and we have a world where we have HTTPS colon slash slash URLs everywhere, right? In the beginning of HTTP 2, there was actually this discussion if we should make a new scheme for HTTP 2, pretty soon it was more or less agreed that, no, we can't change the world of URLs, right? We have HTTPS colon, colon, things on quite a lot of places, they have to remain like that, they have to function, and we have to work with that, so we have to design an internet that can upgrade from whatever HTTPS colon slash slash is into the thing we actually wanna talk. But HTTPS is based on TCP, at least it has been, right? So TCP port 443, that's where we connect when we have an HTTPS URL, or is it? This is an area that hasn't really, really been settled yet, but I still explain how the specification says that we are going to upgrade to HTTP 3. That is by using an already existing header called old service, basically says, use this server over here, talk this protocol, it's the same as me. And this is an already established header, we already introduced it years ago for HTTP 2 basically. So it says this origin is also available on this server and this port with this protocol, which then could be the same server of course, but you could say, access this origin with this other protocol and do it for a week or a month or a year or whatever. You have an expired time. So you could do it for a minute, you could do it for a week. Ideally I would hope that we don't do it for minutes, but still, and there is also, no, I'll say that for some of the problems. But okay, I'll take it here instead. So will HTTP 3 then deliver it? Will this work actually? Can we do this? Anyone get any benefits from this? And here starts some of the problems. There are some challenges with doing it like this. I said, yeah, we shouldn't introduce new things, we should build it on UDP. But that is also new, right? We haven't really had internet-scaled, wide, fast, high-speed transfers over UDP. A lot of data centers, a lot of organizations, networks, they will just throw away stuff that is just too much UDP, throw it away. So somewhere around three, seven percent something, I guess it depends on who you're asking, they will just never be able to set up a quick connection. So that's still quite a large number, right? So all clients basically talking HTTP 3 going forward, they will have to have this fallback to HTTP 2 or 1 for those three to seven percent of cases where it can't establish the connection. And it has this silly property then that the blocking of the UDP or throw away the UDP package, that's going to be based on your network, right? Not on the server or your client.  So we're looking forward to a great new world that we're gonna have to raise TCP connections with the quick connections to make sure that we get the best one in all of the cases. I think a bit of an annoyance, but that's the reality. And I think of course this will, if HTTP 3 is actually a good thing, as I say if because I don't think it's been proven yet. So if it's a good thing, I think this will improve over time because all these organizations will actually help their users to get a better internet so they will actually have an incitement, I think, to actually fix the problems over time. Quick is awesomely CPU intensive, which of course is, as a client, it might not matter much, right? If you're using a little more CPU when you download stuff because that's your browser. But in the server end, we're talking to more than twice the CPU for the same bandwidth, which for the server side, of course, is a lot of more CPU. And I think it's just two to three times the CPU right now. So this is, I would say, a major problem for server implementers to deploy HTTP 3 short term. Of course, I think this is, I'm not really a server guy, so I'm not really into all these things. But this is partly done because of a worse hardware offloading situation because TCP and TLS has been done for a long time and we have sort of optimized this. We have optimized TCP stacks. We have optimized offloading to hardware for all the crypto stuff. And now we're changing all these protocols. So the offloading is really off. I think this will certainly improve over time when we get more hardware offloading when we're more improved software because as interesting enough, UDP is really slow in Linux, which is, yeah, we never really had to work on UDP because we didn't use UDP like this before, so it didn't really matter. But now it turns out that TCP is much better than UDP, which I think is a bit ironic since UDP is so much simpler, it should be. But so there's going to be more work to optimize UDP as well to make sure that UDP delivers as fast and smooth as possible. So it's, of course, it's going to be better over time. Everything is going to be better over time, of course. And a funny TLS layer. Okay. So when TLS, you know, they're designed to work on top of TCP and now this is a new transport protocol. It's not done over TCP, right? It's done over UDP, it's basically its own transport layer. So how do you implement TLS in your own transport layer? Well, in the quick working group, they decided that they shouldn't use TLS records like they do over TCP because you don't have to do it like this. So you extract this TLS messages and you transport those messages over quick. But there's not a single SSL library out there with APIs for this. Well, now there are because some of these guys who are working on quick are also working on SSL libraries. So if you're like Mozilla, the NSS library supports it and Boring SSL supports it from Google and a few other minor, I shouldn't say minor, less widely used libraries also support it. But for example, a fairly popular library called OpenSSL, they haven't even started implementing API for this. They basically wait for the specification to be done and before they start working on this. Those TLS messages are one part and then it also needs other secrets from the TLS layer that the OpenSSL for example doesn't provide API for. So we're in a funny situation here and I don't know if you remember but HTTP2 that was severely hold back the deployment of HTTP2 took a long time before because when we shipped HTTP2 the spec, all the server operators of the world said, okay, how do we enable this? Yeah, we need this TLS extension called ALPN. How do we have that? It was a standard, it existed in OpenSSL in a certain version but an entire world was stuck on the older OpenSSL version. So it took a long time until the server started to upgrade to I think it's OpenSSL 102. So it took a long time. It was a real hurdle for deployment and now we're in a situation where OpenSSL doesn't even have the code yet. So it's not even close to the same level of problem that we had before. We haven't even introduced the problem yet. So yeah, we're a bit behind here. And yeah, and some people are also implementing a library with a lot of different TLS implementations and this makes everything completely more awful. So that's a mess. Right now, right now in Curl for example, I have to single pick one of these libraries that have this support for this API and build the entire thing with that. And if I wanted to build with OpenSSL then I have to build with my own locally patched version of OpenSSL to be able to speak quick, which is a bit of a annoying situation. All user stacks are, oh sorry, all quick stacks are user based, user land. I mean, they don't have to be, but they are and I guess they will basically always remain. Which I mean, this is a challenge more in the traditional aspect that we will see different applications will link to different libraries and therefore there will be a mishmash of different versions and we will have a fun future of debugging different applications working differently over quick because they have different behaviors. And there's no standard quick API either. So if you wanna speak quick you pretty much have to get married to one of these APIs and use that and it's not going to be that easy to change. I'm in Curl with support two different quick stacks to begin with. So there are some challenges and there is also a slight lack of tooling. Well, you can actually use Wireshark already now to monitor most of the quick. So sure, Wireshark is on the game, but of course, I mean, we've debugged, we've seen TCP for a very, very long time, you know, window size, segment numbers, everything. This changes a little bit. So going to take a while, I think. There's the spec is going to ship in July. That's the plan. I'm not sure it will hold, but that's there. That's the plan. So okay, if the standard is going to ship in July, we talk about all this, how's the situation done in implementations right now? When can we try this out? When will Firefox run it? There are a lot of implementations, especially with quick implementations, not many HTTP 3 implementations, which one might argue is a bit worrying since we're going to ship it in July and we can't even do interrupt tests with HTTP 3 yet. At this place in time with HTTP 2, we had a lot of implementations. We could already run them on the internet, we could already try out everything, but we're not there with quick and HTTP 3. All of these companies, basically all those I mentioned in the earlier slides, they're all having their own implementations. Mozilla has one, Google has one. A lot of these companies have their own. I think there's like 15, 20, something different implementations. There hasn't been a single browser release yet with HTTP 3 enabled. Unfortunately, I don't have any news either about Firefox when the support is coming. I know that Patrick McManus has shown Firefox running with HTTP 3. Well, at least quick support. So I know he's been working on it, not that he's still at Mozilla, but anyway. And it says March because Google has said that they are probably going to have HTTP 3 support in Chrome in March. I mean, I guess that's some sort of developer version of Chrome. So, and there's, I mean, the popular open source servers, none of them have even said a word about HTTP 3, so I figured they are also not really here right now. And, Carlos doesn't support HTTP 3 either, but I'm hoping to soon. Again, HTTP 3 implementations are really behind, so I don't, there aren't even many HTTP 3 libraries to pick from, so I have a bit of a chicken and egg problem here. But I'm hoping to get there with curl within a month or so maybe. So then I took out my crystal ball and look at the future and I say that it will take some time until HTTP 3 is deployed, right? And I think it will grow slower because of all these problems and it's not as big of a gain as HTTP 2 was, so maybe it'll just stick to HTTP 2 for a while. But quick is here for the long term, it's going to be protocol for the future. So maybe it doesn't matter if HTTP 3 doesn't get on, I mean get deployed immediately, it'll come there over time. So in the future we're going to see more things in quick. There's a huge number of issues that are sort of marked work on this after V1 is released. So after V1 is released in this summer, I'm sure there will be a lot of persons working on new things to do with quick, for quick V2. So I expected quick V2 to come within years and there will be more application protocols that are long to implement themselves over quick as a transport. Okay, so what I'm trying to do is just to repeat what I've said if you fall asleep. It is coming, so it is always encrypted. It is basically HTTP 2 in sort of feature-wise but it's done over quick instead. Right, there are a lot of challenges. I think we will overcome them, but it will certainly be, there's more work live before summer. Yeah, maybe, sort of, perhaps. Yeah, but I actually think it will happen but we'll see what kind of speed it will happen. I wrote a little document about this called HTTP 3 explained. If you want to read more about that, what I already explained to you now. That's it for me, thank you. Thank you too, Daniel. So any question? Okay. Why is this so CPU hungry? Well, I think a large portion part of that is because of the lack of hardware offloading that we can do with TCP and TLS. So I think a lot of that is we will be fixed with improved hardware going forward. Okay, any other questions for Daniel? Okay, yes. We have the time to arrive.  Yeah, exactly, yeah, that's right. And then when you're gonna have vulnerability there, everybody will turn off quick and go back to TLS, right? Well, maybe, I mean everyone is going to implement HTTP fallbacks anyway, so yeah. Because it seems to me like by merging together your encryption and application layer, you're just opening yourself to be more vulnerable to future insecurities in your new protocol. Maybe, but I mean we're always all talking about TLS here anyway. So we're already, we're replacing TCP with TLS for quick. So I'm not sure TCP with TLS is better security-wise than quick is. Okay, just carry. Okay. Hi there, you mentioned multi-path in one of the future potential features. Yes. Do you mind just elaborating on that a little bit? Like as a user might you see that being able to have Wi-Fi and 3G both downloading bits from the same website or? Yeah, exactly, multi-path is basically about this setting up two different paths over the network. So it could use different interfaces and transfer data over both at the same time. And it could actually use the same interface but just to use different paths over the network. I mean TCP multi-path already exists. So multi-path is not a new concept. It's just a concept that hasn't been implemented in quick V1s, it's been said for quick V something else. So that's also, we can't really say anything about how it will turn out then of course because it hasn't been decided. So we'll just have to wait and see. Quick has, I could just mention that that quick already has a connection ID and it's not actually tied to the regular TCP tuple with IP addresses and ports. So for quick already has a really nice way to be able to transfer between interfaces, for example, in a computer without having to do any magic tricks that we have to do with TCP because TCP is sort of stuck to the IP address. Any other question? Okay. It's good that you sort of tried to be far away from each other. Yeah, but this is an exercise. Yes, yes, yes, yes. First of all, thanks to you and thanks to the people from CERN for HTTP first version. There is a fundamental change in the approach of transferring information from TCP to broadcast. Broadcast minds, you don't mind about heroes only and broadcast is mainly known as television. Of course there is YouTube, of course there is a lot of increasing volumes of data through images, through streams, but we have to remind that when you don't pay to access to those kind of data, meaning getting to YouTube, getting to Google, getting to old mainstreamers, you are the product. Meaning the information you transfer by requiring this content, the profiles we get from you within your moves daily, within what you do when you ask for information and when you transfer privacy and security from the lower layers, meaning the equipment layers to the user space to you, you are the added value of the network. But you're not changing that nature by changing the protocol here.  I mean, using HP2 or HP3, that's going to change. You're still the same person, you're using everything the same way, you're delivering the same information to the other point. It's not going to change that. It's going to change the amount of information anyone in between can actually see. So you're actually going to reveal a little bit less to the network. It depends how you mind the network. If you mind the network in peer-to-peer or if you mind the network in infrastructure mode with massive concentration of information from the main players, you've just... Sure, but that's not something quick changes. That's a different dimension, right? What you do with your connections. If you set it up to one single operator in the world, that operator will know everything if everyone does that. That's true, but that's the same truth no matter how you do that connection. You can use Pidgeon's too. Because we live in democracies, it is okay. What is your question? The question is to put at risk the whole internet by going to broadcasts. Okay, another question? Yes. Only for... Excellent idea, got to go there, I think. Hi. Is there a plan to have quick in Kernar loan for... It is possible? No, surely it's possible. I haven't seen anyone have that plan. I don't think anyone is going there right now, at least. So... Thank you. So with encryption and everything, that means the transport layer needs to have access to certificates and stuff. So there's two questions I have. One is, what if I want to use different certificates for different sorts of traffic? Because I might want to use different keys. And secondly, what if there are no certificates? How does it work? Sorry, what if there are no certificates at the endpoints? Well, you end up in a situation exactly like with TLS, I mean over TCP. So you have the same certificate situation as you already do when doing HPS. So sure, I mean as a developer you can just ignore certificate problems or you don't. This doesn't really introduce any new problems. We have those problems already. Any other questions? Yes. For Toronto, it's not far away. Hello, thank you for interacting quick. Now when I want to play with it, what would be the best libraries to start with? Like the implementations? What is your betting on? If you want to play with quick, I would really recommend to just find the quick implementations wiki page because it's a list with all the quick implementations that exist today. It's on the... They exist on this quick working group page. You can follow the links there. With Curl, I'm using two different quick libraries. I'm using the Kish library from Cloudflare and I'm using NGTCP2 library, which is from the same team that made NGHP2. So those are the ones I use, but there are many others. The Mozilla one is the most quick implementation. It uses NSS as a crypto. So you can pick your own flavor and there are available in many different languages for different platforms, different environments. You can go there and play around for ready today. Any other questions? Are you sure? Okay. Thank you so much, Lono. Thank you very much. So we'll have the time to relax a little. In five minutes, we'll start again. Okay, we'll start again with the next talk. Because we have the time. Yeah, no, but those kind of debates can not happen in this. Test, test, test, test, test, test, test, test, test, test. Both, one, two, three, four, five. One, two, three, four, five. I don't mind. One of those, it wasn't a question. It was more of an opportunity to rant about something. It's a quick, really mainly based on your language. Yeah. I mean, it's all the interpretation. I think it's going to be very useful now for you. Do you know what it is that's going to happen? Do you know what it is that's going to happen? Yeah, indeed. I know that's been thought, but it's basically just one of those things to work on. Test, test, test, test. One, two, one, two, one, two. One, two, one, two, one, two. I'm stashing my stuff here.  Good, how are you? I saw you. I watched Bayou last night. Oh. But you didn't see? Probably because I had it. I think it's quite awesome. It doesn't look like it. It doesn't look like it. It doesn't look like it. It doesn't look like it. It feels good to see. Can I talk with you about the adaptor for MacBook? You don't have one, right? Okay. We'll bring the VGA to HDMI. Show me your laptop. Are you presenting now? So, before your presentation, we will bring you an adaptor for you. Can you show me your laptop? Can you work like this? Why? Because I don't have battery enough. Okay, get first and I'll bring the VGA to HDMI. Testing, testing. Test, test, test, test. Test, test, test. Test, test. Have test, test, test, test. Test, test, test, test. Test, test, test. Test, test, test, test. Test, test, test, test. Test. Is it an iPhone or a iPhone? No. No, no, no. No, I see fine. Don't worry. Okay, test, test, test, test. Test, test, test. Test, test, test. Test, test, test. Test, test, test, test. Test, test, test. Test, test. Test, test, test, test. Welcome, everyone. A few minutes before we start. Only to resolve the issues for connect the notebook. So the next speaker is...


This has been quite a journey for me. I've had just a great time So today we're gonna just recap a handful of things a little bit of his biography touch on some of the the great works I'm gonna ask you some some other questions about some of your favorite works of his and what we can you know take take from this great man this great master not just great author but great Spiritual holy man and how we can apply that in our life today But let's begin as we always do father with a quick prayer. Yes, kind of Almighty God we employ your grace and your wisdom through the intercession of the venerable Thomas a campus May our hearts remain faithful to your commands May we walk your straight and narrow path which leads us to the kingdom of eternal joy Through Christ our Lord our bed. Amen. Thank you father. Well, let's just Let's just begin like this. What are We're talking about the man not just the author, you know the man himself What are the virtues or charisms? Do you think that Thomas a campus has to teach us today? You know what when we look at his life not just his writings his life. What should we try to emulate? He exemplifies The the quiet achiever he was someone who was this tremendous author who was highly respected as a spiritual Counselor and preacher yet. He always chose to remain in the background as much as he possibly could He was offered leadership of his community He was offered various professional ships and academies and so forth But no, he was committed to living the quiet life to which he committed to which he had bound himself by vows And within this life. He exemplified fantastic humility So here is one of the the greatest authors of the time one of the most recognized spiritual authorities But he prefers to go about the quiet daily domestic tasks With the minimum of fuss to keep himself in the background and he even preferred for his works such as the imitation of Christ to be published Anonymous them. So I think this is something we can learn from so many people in this world are pushing themselves Forward and trying to make the most of what they do rather He was happy to do the work for the love of God for the service of his fellow man And then just step back from it That's beautiful. And yeah, I think The pride and vanity of this world with our social media and our ability to get instant feedback on everything we say and do and everyone is now with You know, their smartphones and have constant communication with people. I think it feeds That vanity and so a campus is a great role model for humility. I mean the guy You know, yeah, he lived in a different time period but but pride Arrogance and ego and vanity were as much alive then as it is today Just manifest maybe in a different way today very much so and and he was really Recognized that he found his greatest peace and joy in this life In silence and in solitude I think this is a powerful lesson which we could learn from a lot today because as you say we're assailed by by constant information by distractions by streams of entertainment and To step back from this, you know to think well, I'm going to take Take a day or even to take a morning or an afternoon of quietness and solitude Such a wonderful thing and we can learn from this is a lesson of monastic and religious life in general But Thomas the campus particularly exemplifies that His fidelity I think also is something so he was committed to religious life for For about 70 years. He lived this enclosed life this very regular life And there's a saying attributed to St. Gregory the great R. J. Quad and Gis Do what you do In other words stick with what your with what your duties are Don't look for changes for promotions for movement all the time But be content with the lot which God gives you because it's a grace from God And you know we can find our happiness within that As long as we're properly disposed It reminds me of another great tan classic that we have the abandonment to divine providence by Jean Pierre de Cassaud Yeah, a wonderful work. Yeah, and he talks about fulfilling the duties of your station in life That's how my dad always defined success is one who Fulfills the duties of their station in life and the accompanying Theological point of that which a campus as you're talking about a campus as a man as a holy man It reminds me of the sacrament of the present moment and I would encourage our listeners All those tan fans out there busy moms with lots of little kids Busy dads, you know going to work or working mothers trying to manage both Yeah, wherever whatever their station in life is, you know the purpose of this whole series of podcast fathers is for our customers To find new spiritual directors and certain saints and so I would encourage our listeners To invoke the intercession of Thomas a campus who's often deemed to be blessed or venerable And ask his intercession to help them find stillness and quiet in their life, you know because in the busy world I think we actually it's it's one thing to say turn off your cell phone But I think we actually have to ask saints to help us do that and to help, you know Ask the intercession of Thomas a campus to help you find silence and solitude in your busy life And one of the things in another work by him which will be which will be out in a little while Silence and solitude he talks about in the midst of the busyness of the world Constructing within our hearts this little arc this this refuge of solitude to which we can revert in times of need And this is so important because people in different states of life Whether they're a busy mother whether they're a businessman whether they're doctor or lawyer or whether they're a priest or religious You know we all need this place of refuge and to realize that where we're called whatever station of life we find ourselves in Is precisely what God wants us to be doing at the present moment this full commitment and this is something which he exemplified so well You know wasn't focused on the past wasn't focused on the future but on fulfilling what it was God was asking him to do at any moment of time And of course God never asks us to do anything which is beyond our capacity Yeah, that's beautiful All right, so you know what what's well, you know what when we were just before we started recording you mentioned another Work of a campus that we hadn't talked about before and I think it's just worth mentioning it's Saint Lidwina of shydom did I get that right tell us about that because anytime anytime a saint writes about a saint I kind of find it fascinating So so this was a saint who Who Thomas a campus actually attended while she was on her deathbed and she related to him all of her visions of of hell and purgatory and heaven And she's quite remarkable in a number of ways her sickness began after she after she had an ice skating accident So I didn't realize ice skating was a thing back then me neither obviously it was yeah and she's also regarded as being the first Recorded victim of multiple sclerosis. Wow. Yeah, so it's a it's a tremendous work and Unfortunately or surprisingly not as well-known as it deserves to be we as tan does publish a book on her saint lead Lidwina if I'm saying it right of shydom. Yeah, now it's it's a name which has got innumerable variants Got it here. Well, we do publish it. It's not a campus's translation But if anybody's interested in you know in this the saint that a campus knew personally, you know, that's a fascinating thing to me So I'm gonna check this out, but yeah, we should probably talk about publishing her biography by a campus That would be a very special thing So I just thought that was neat to to mention that's another interesting point of his life that yeah Sad at someone else's deathbed who became a saint. You know, I mean, that's a beautiful thing now Let me ask you this of all his works and you've you've read many of them and you've translated quite a few What's your favorite? Well, I really love the meditations on death and One of the things in the rule of Saint Benedict is the council that we should keep death always before our eyes And this is a book which puts it into practice in such a powerful and moving way So it's it's a short book, but it's I would say it's a life-changing book Our episode on that we could have talked hours about that, you know, yeah So now if this was I'm totally understand how that's your favorite because I think now the ones I've read it's also my favorite because That that man who he fictionally creates is dying on his deathbed and thinking about how he's wasted his life It's just powerful So I can only imagine having translated that, you know, it would have been a very enjoyable thing but also Perhaps intimidating thing as well because of the reality of the subject Oh, yes, indeed But what you know, is that where you would tell people to begin? I mean, you know, perhaps but I mean if you were If you were telling how to begin with of course, I would really advise he's most famous for the imitation of Christ, which is An immortal classic of Christian literature So I would encourage everyone to read that if you haven't read it already if you have read it already It's certainly worth revisiting And yes, a wonderful work So what do you think? What do you think his future is in the church, you know, if we're in 2022 and 3022 if people are still on the earth, we know that their church will be here You think we'll still be reading a campus or you think he'll be put up on the on the bookshelf and be forgotten Well, you know, I think within the past couple of decades there's been an increase in interest in him And a while ago I put on a retreat at our monastery on the imitation of Christ And some people had said, you know, is anyone still interested in this book anymore? You know, it was a classic when we read this is older people and And it was booked out straight away. It was tremendous to see the interest in it Not only from people of all ages, a lot of very young people So I think Thomas Akepas actually is very appealing to the contemporary reader His wisdom is timeless. It's not fixed to any particular situation or whatever He speaks straight to the human heart, the human condition So I'm pretty confident that assuming the final judgment hasn't come by By 3020, which I wouldn't rule out altogether Assuming that the world and the church therefore is still in existence I believe that the writings of Thomas Akepas will still be read Well, I hope that you and I one day with our glorified bodies get to sit up there And have a nice conversation with Akepas in heaven and say, hey, thanks for writing all those things Because that gave you something to translate and me something to publish So that would be a great luncheon with the great Thomas Akepas one day So if we see him up there, we'll have to make sure we corner him and say Hey, sit down and have a drink with us The sound's incredible Well, thank you for this series on Thomas Akepas Father You've been masterful in your own explanation of all this I've learned a ton and I'm sure our listeners and our customers at Tan Are going to be very edified by everything you've had to say So we'll pray for you and you pray for us And we'll together seek the intercession of Thomas Akepas Thank you, Conan God bless you


السلام عليكم ورحمة الله today I'm bringing you guys a benefit that you will be able to appreciate and see at least how much of a difference when it comes to understanding the Quran Once you learn the Arabic language, it brings Oh my God He's saying the same thing when you learn the Arabic language, it gives you a bigger percentage or a bigger understanding a deeper understanding of the Quran Now look at this simple ayah and look at how amazing and deep this benefit and how far it brings you where Allah says to موسى وما تلك بيامينك يا موسى so usually when you ask for something, what prevows is the مذكر what prevows is the masculine you say what is ذالكة and ذالكة is to refer to something that is masculine so for example ذالك الكتاب because كتاب is masculine and تلكة will be for the feminine so you say تلك السيارة السيارة is a car and it's feminine yet الله عز و جل he said وما تلك بيامينك يا موسى he didn't say وما ذالكة which is the default when you ask someone and you don't know what he has in his hand you would say وما ذالك بيامينك however here it shows how الله عز و جل before he asks he already knows what موسى has in his hand and he knows it's a عصاة and الى عصاة it is feminine he said straight away وما تلك بيامينك يا موسى what is that thing and it's hard to translate because when you say وما تلك بيامينك يا موسى you already know what that thing is because you are already given the صيفة and the characteristic that is feminine and you cannot know if something is feminine just by looking at it or just by seeing it so knowledge about that thing you are asking about is a requirement so it shows how الله عز و جل knew what he was asking about and he asked موسى what is that in your hand and then موسى he said هي عصاة توقع عليها وقشو بها غنمي it is my عصاة a stick that I use to lay on or rely on and I guide my غنم with it I guide my goats with it so it gives you the deep understanding that سبحان الله عز و جل he knew what he was asking about before he even asked and as well he refutes what many people who might attack Islam by reading the translation of it because in the translation you won't appreciate this type of detail you won't appreciate you would just see what is that in your hand because the English language is not as rich as the Arabic language but in the Arabic language by just reading that small phrase you can appreciate all of this stuff like سبحان الله already asked وما تلك بيامينك and he is supposed to be asking about something so when you ask about something in most of the times you don't know but الله عز و جل هو عالم بما في الصدور وعالم بما يخفو و بما يظهر he knows what he was asking about he said وما تلك بيامينك so I'll leave you guys with this benefit very deep and detailed benefit and فائدة that gives you and makes you appreciate when you understand the Arabic language how deep you can understand and how many benefits you can get out of a simple ayah short ayah just like this one وما تلك بيامينك يا موسى السلام عليكم


Hello. Who's ready to learn about Google Analytics? Woo! This is exciting stuff, right? I'm going to try to make it exciting. I'm Pam Monkst of Pam and Marketing and Stealth Search and Analytics. Both companies specialize in search and analytics. So that's what we're going to talk about today, Google Analytics. First, I want to start by saying that there are so many ways to improve upon your Google Analytics skill set that we couldn't possibly cover them all in full today in this short 30-minute block. But these slides are chock-full of information. I'm going to do an overview on some focus areas that are really important. And you might want to look into each one later. So there's tons of links in these slides to look into each one more later. So I highly encourage you to download the slides. The link is right there. And I will show the link again at the end. So why improve your Google Analytics skills? I think this quote sums it up nicely. The quote says, the goal is to turn data into information and information into insight. But what's the difference between data and information and information and insight? Well, basically data is a bunch of characters and numbers in a maybe semi-organized but not totally organized manner. And data, when segmented in a logical way, becomes information. Information, when segmented in a logical way that can answer questions, becomes insight. For example, do our paid search visitors convert or engage with our site as well as our organic search visitors or vice versa? The data, when segmented in a logical way, in an organized way that can answer that question, can answer that question. It says, yes, organic users bounce less, stay longer, and consume more content. And the insight that can be gained from that is that we should invest more in SEO. I'm a big fan of data-driven marketing and investment decisions. So that's how to turn data into information, into insight. But in order to do so effectively, there's three things that need to happen with your data. One is it needs to be accurate. Two is it needs to be comprehensive. And three, it needs to be segmented in a way that can answer questions. So that's what we're going to go over today is how to do that in Google Analytics. Improving accuracy with things like these. Improving comprehensiveness with conversion tracking and event tracking. And segmenting data to answer questions with tips and tricks like these. But first, before I dive too deep into any one of those, I want to go do a quick overview of account structure. Because I'm going to use words like property and view along the way, so I want to make sure you know what that means. If you go into the admin section of your Google Analytics account, you'll see three columns. There's account, property, and view. One account can have multiple properties, usually used for multiple websites. And one property or one website can have multiple views where the data is segmented or filtered in some way, narrowed in some way in that view. So I just want to make sure that's semi-clear at this point that one account can have multiple properties, multiple websites, and each property can have multiple views. So now that that's clear, how do you make your data more accurate? First and foremost, you want to check that your tracking code is implemented properly. This is responsible, incorrectly implemented tracking code is responsible for a whole variety of accuracy issues that may not be immediately apparent in the data. So you definitely want to check that this is done correctly. You need to have one copy, not more than one, we see that a lot. One copy of your Google Analytics tracking code placed in the head section of the website after the opening head tag and before the closing head tag, ideally right after the opening head tag. But as long as it's in the head area, it should be okay. And to make sure it's okay, you want to use the Google Tag Assistant Chrome extension. That is quick and easy way to know if your tracking code is implemented correctly and working properly. You'll get a simple sad smiley face if you're not good and a green happy face if you're good to go. So definitely start with that. After you've checked your tracking code, another accuracy issue you can look for is called self-referral traffic. That is where it appears that new incoming traffic is coming from your own domain. So if you go to the acquisition all traffic referrals menu and you see traffic from your own domain, that's a problem because sessions are then being double counted that are really the same session within the site and conversion data can be inaccurate. So if you see that or just to preemptively prevent that, you can go into your property settings, middle column in admin, and under tracking info you'll find the referral exclusion list. Just add your own domain name there and that will take care of that problem if you have it or prevent it if you don't. Additionally, similarly, you want to, if you are collecting payments on your website, whether it's e-commerce or any other payment collections going on, and you're using third party external payment gateways like PayPal, you also want to add those to the referral exclusion list because a similar issue can occur when someone goes to PayPal to check out and then they come back in. Google Analytics can count that as a new entering user or session I should say for the same user, but it's really all part of one session for that user. So if you add the third party payment gateway domain to the referral exclusion list, Google Analytics will then automatically unify the returning visitors, quote unquote new session with their original session from before they started check out and treated as one. We'll have time for a couple of questions at the end. Also sort of similar in nature is if you have a user journey that crosses several domains, so let's say you have a main website, rsite.com, and you have a courier site, our couriersite.com, and it's very common for users to travel amongst those and back, that can cause a similar issue where one user is really just interacting in one session with all your properties, but it looks like in Google Analytics it can look like multiple sessions per user visit and that's just not true. So in this case you want to implement something called cross domain tracking, and there's a link there, it does require a little modification to your tracking code, so there's a link to read more about how exactly to do this if you need to do this, but the concept is basically that you're going to use one property, although properties are usually used one per website, in this kind of a case you want to use the same property across all of the domains, and then use separate views to segment the traffic out. You can have one view where you can see it all together, but then you can have separate views for each site as well, and this will avoid accuracy issues by making all the user visits that are hopping amongst domains look like brand new visits when really they're just in one session moving around. All right, and another thing for accuracy that you want to make sure to do is get your own self out of there.  One really easy way to take care of this is the GA opt-out extension for Chrome. Just install it, activate it, and you will no longer be counted in your Google Analytics metrics. That's the easy way. There's an advanced way. My slides are not changing. There we go. Advanced way is IP filtering, and this happens at the view level in your admin. You go to admin, view filters, and you can filter out your own and your team's own IP addresses from your view. However, if you do this, definitely, definitely, definitely create another unfiltered backup view. Whenever you filter anything out of your main view, it's gone forever. So if you make a mistake and it's really easy to accidentally put a dot in the wrong place or something, if you make a mistake, that day is gone forever. So definitely always create one view that's an unfiltered backup view just in case. All right, last but definitely not least is referral spam. Who's heard of referral spam? All right, about a third, maybe. Referral spam, as spammers always do, they figure out how to spam us in every area of our lives, including your Google Analytics account. Spammers have figured out how to send fake traffic hits to Google Analytics accounts, and they do it at random, just like spammers call you at random or text you at random. So you likely have some referral spam in your Google Analytics account. And it's just to get your attention, like this uptime site is just sending fake hits to get you to check them out. And often they will have bot-like metrics, like a 100% bounce rate, one average page per visit, and zero seconds session duration. So that will really skew your overall metrics. When you're trying to learn about your whole site's bounce rate, your whole site's average pages per session, et cetera, that's going to get messed up by this type of traffic. And it often has those characteristics exactly, but referral spam, some spammers have figured out how to fake those metrics. So they're not just easy to spot like that. So how do you get it out? The referral spam should be filtered out with filters. So again, always, always, always create a backup unfiltered view if you're going to try to do this. But how exactly do you get it out? Because there's hundreds of different websites doing this and hundreds of different metrics that they're sending with their fake traffic. One word, Carlos. This guy has got this figured out, and you can do it yourself by following his instructions and or you can pay him to do it for you. But he has got this down pat. He's really made a business for himself taking care of referral spam and Google Analytics, and I'm not affiliated. I don't earn any money by recommending him. He's just the best. So either follow his instructions carefully, they're incredibly complicated, but you can do it yourself if you want to. Carefully follow the instructions. So the pro to this is that it's free, but you do have to update it manually whenever new spam sources come out, which is pretty much weekly. But you can sign up for his email. He'll send you an email when there's a new one to add to the filter and tell you how to do it. Or you can pay him. His current pricing is not published on his website, but we sign up for it. It's very affordable. So those are your options for getting referral spam out of your Google Analytics account. All right, so we talked about a lot of ways to make the data more accurate, but we also want to talk about how to make it more comprehensive and to segment it to answer questions. So let's talk about comprehensiveness. For comprehensiveness, of course, you want to track all of your actual conversion actions as goals or transactions in Google Analytics. You'd be surprised how many sites we see from really established brands that are not tracking all of their actual conversion actions in Google Analytics. So this is key. And I say actual conversion actions. This is a pet peeve of mine. Viewed contact page is not a conversion. A conversion is when someone either purchases something or actually inserts themselves into your sales cycle somehow using some kind of form fill or something. So those are the things you want to make sure to track as conversions, as goals or transactions in Google Analytics. The easy way to track a form is to after submission, redirect that form to a thank you or confirmation type URL and set up what's called a destination goal in your admin for Google Analytics for that URL. Super simple and easy. For e-commerce transactions, if you're on WooCommerce, you're in luck. They have a plugin, the Enhance e-commerce tracking plugin. It takes care of this easily. Just install that, enable e-commerce tracking in your admin in Google Analytics, and you're done. Now, if you're not on WooCommerce or you have a really complicated form situation, you can't use those easy methods. Here are some links for using Google Tag Manager to set up both form fill tracking and e-commerce tracking for your website. So for non-conversion actions, but actions that are really important that you want to track, you can track those with something called event tracking. So anything that's an important action to track but is not someone actually purchasing or inserting themselves in your sales cycle should be tracked as an event, which can be viewed under the behavior menu and then events. And we don't have time to go through exactly how to set this up, so I gave you links, but here are some ideas for what you might want to track. Video views, there's links there for YouTube and Vimeo. Clicks on mail to links, click to call links, outbound links. Clicks on images or other elements. Those can all be tracked with Tag Manager event tracking. And I do recommend Tag Manager over inline JavaScript because it's just too easy for inline JavaScript to get accidentally overwritten and removed. So if you're going to do this, please use Tag Manager. All right, and last but not least, in our quest to have accurate, comprehensive and accurate and comprehensive data and data that we can segment to answer questions is segmenting data to answer questions. My favorite segmentation trick is called secondary dimensions. You can think of this as secondary columns. It's an easier word to remember. So if I'm looking at our reports and I'm like, hmm, our careers page gets a lot of traffic. I wonder where all that traffic to that page is coming from. I can click into that page and very quickly with this little dropdown that you may not have noticed before right at the top of the results, I can very quickly add a secondary column of information and break it down by whatever I'm curious about. So there's a lot of options in there. In this case, I was curious about the source or source medium, meaning the source and type of traffic that was coming to that page. I just quickly used that dropdown to add source medium. Now I have a second column showing me the breakdown that I was curious about and my question is answered very quickly. Similarly, to break down data in a way that can answer questions, you might want to use custom segments. This is something that will apply a filter of sorts, like a lens, to view all the Google Analytics reports through. So when you have this segment on, you can click around to any Google Analytics report and it will show you the stats just for that segment. For example, we have multiple careers pages in our careers section on the site and if I wanted to view any and all of the Google Analytics reports but only about the careers section of the site, I can create a segment for the careers section of the site. At the top of most of the reports, you'll see a button that says add segment. You put in the name of the segment, go to conditions to specify the condition that you want the segment to have and then say what it is in this case, page contains careers. You save that and now all of your Google Analytics reports will show you information just through that lens. So that's pretty handy and you can even do it for multiple segments at once. I can do the same thing for the resources section of our site and apply them both at once and view all the reports in Google Analytics through those two lenses at the same time and compare them stacked right over each other. Pretty handy. If you find yourself using the same secondary dimension options or the same custom segments all the time and just constantly having to apply them, apply them, apply them over and over again, you may want to look into custom reports.  In the custom reports you go to customization and you set up a custom report.  So this slide you might want to have handy if you try to do this as a cheat sheet of sorts. The dimension is basically the first column, whatever data you want in the first column. And then the metrics are the numbers that you want to come in the subsequent columns. And then the filter is that lens that you want to see it through if you want to narrow this report to only a certain type of data. And then your custom report will be available to you at all times and you can even schedule it to be sent by email just like you can with standard reports. And last but not least, custom dashboards are another very handy way to break down data in a way that can answer questions and visualize it. So you can go to the customization section and hit add dashboard. And you can either start with a blank canvas and start adding widgets of your own to it or you can go to the gallery and see if there's something similar to what you're looking for already. They're very well maybe. And then you can just tweak it a little bit and that's a lot faster. But that's definitely something to consider as well. So to recap, to turn data into information, into insight, you want to make sure your data is comprehensive, accurate, and can segment it in a way that can answer questions. And I hope this quick overview showed you some tidbits on how to do that today. And again, if you want to download the slides, the link is there and there's plenty of links in the slides for further reading on each topic. And we do. Thank you. We do have about two minutes for questions. Oh, five minutes for questions. There was one over here first. If that's important for accuracy. Oh, okay. All right. So the question was about sites that render with both www and non-dub-dub-dub. Do you need to have, like, two different Google Analytics accounts? The best practice would be to actually have one redirect to the other because if you don't, that's duplicate content which is not great for SEO purposes. So you want to just pick a primary, have it all redirect one way or the other, and then just set up your Google Analytics the one way. Technically, it can show both, but it's the best practice for a variety of reasons to just have it one way. Other questions? Okay. So the question was, do we use any other tools other than Google Analytics that can capture data that perhaps Google Analytics doesn't show? Yes. Google Analytics is an amazing in-depth tool, but it can't show certain things, especially metrics from other platforms. Like, you know, social media platforms have their own metrics and whatnot. So we do like a variety of dashboard tools for that. Dash this is one that we use a lot. It imports from Google Analytics to a whole variety of others. Clipfolio is another good one. And on the high end, for really complicated stuff, Tableau is pricey, but great for that. Second one is Clipfolio. K-L-I-P-F-O-L-I-O. Okay. So the question was about referral spam. See it a lot. Curious if there's an actual, like, detriment SEO-wise to having that happening on your site or if it's just like a harm, like a mosquito that doesn't bite. It is like an annoying mosquito that doesn't bite. There's no SEO penalty. It's not real traffic. Right, right. You can filter it out and then they do constantly change their domains and then... Yeah. I'm not going to repeat that, but... That's why Carlos's emails are really helpful because he's on top of that, like you wouldn't believe. So as soon as there's a new one, if you really want to do it yourself and keep updating your filters and keep on top of it, that's bound. Ah, great question. When making websites for clients, should you create their Google Analytics property in your own account or create a separate account for them? I would highly recommend the second option, create their own account for them or let them create their account and let you know what the number is and let them, technically, legally, intellectual property-wise, whatever, they own their data and I've seen horror story after horror story of clients trying to get a hold of their own Google Analytics data from a web developer that vanished or won't give it to them or was extorting them. I actually was on a conference call where a web developer tried to extort money out of a client to give them ownership of their Google Analytics data.  Just let them have their own account. We have time for more. We have time for more questions. Who else has any? I'll also be at the... I feel like there might be hands up. I'm not really seeing. There we go. Sorry, it was a little hard to hear. Any kind of data that is... Ah, okay. Is there any kind of data that maybe Google Analytics doesn't measure yet but is in demand and we see coming in the future? Yes. I think the biggest thing in demand right now is proper cross-device and cross-channel attribution is getting better at that but they've got a long way to go. I mean, it is a multi-device, multi-browser world, multi-IP, and advertisers who are spending a lot of money advertising are trying to figure out their funnels of what's working between impression, click, actions on the site, and conversion and sale, and users coming back days later from a different device is just something they haven't gotten good enough at yet but seem to be trying to and hopefully will. One more question. If anyone has question... Again, I feel like there might be hands that I can't see. Thank you for pointing. Oh, sorry. We'll try to do both really fast. Yeah, so the question was about is there a service that builds in your kind of predetermined conversion funnel tracking for you? Sort of, I mean, every business is different. I think the closest thing that comes to that is HubSpot. They show you that per contact journey in a nice neat funnel-ish type of way, sort of pre-designed or they make it easy to design. They're the ones that come top of mind for the ones that come closest to something sort of pre-done for funnel tracking. Yes, last one. Good question. How often do I recommend checking your Google Analytics? I'd say that checking and analyzing are two totally different things. Checking into it to make sure all the data is flowing through and it looks like traffic numbers have disappeared is a good thing to do on a regular basis but they also have alerts for that. You can set up alerts so that if all of a sudden you have zero hits when you usually have 100 hits a day, it will alert you. For analysis, that really depends on the volume of traffic on the site. A site that gets a total of 200 visits over a whole month, you're not really going to learn anything by looking at that daily or weekly. You might as well just do month over month. But if you get 20,000 visits a day, and in between, maybe if you get 2,000 visits a month you might want to check it weekly. There's no exact formula but it's kind of relative to the popularity. It's amount of data because you need a certain amount of data for analysis to be statistically significant. Yeah, it kind of scales up with as traffic scales up the frequency of which monthly minimum for any site, even the smallest volume site for sure. I'll be at the happiness bar which has moved to RB 140 if I remember that right, by the kids camp. Thank you so much for joining me today.


Alrighty, so welcome to the day of the week where I take something totally crazy and analyze it beyond belief. For those of you that are new, this is our conspiracy theory series, and for those of you that join us every Monday, welcome to a new one. So today's conspiracy theory is Cedar Point, or Cedar Creek mine ride removal. Yes, I know, lots of these are so unbelievable. Why are you even discussing this? This isn't going to happen. Why are you creating a video on it? Well, it's called a conspiracy theory. So I search the web for things enthusiasts say, discuss or talk about and dive into the whole situation and open a discussion on both sides of the argument while I try to make a decision on whether I think this has any possibility or not. But without further ado, let's get right into it. So the question is, will Cedar Creek mine ride be removed and replaced by a better coaster? I'm going to be honest, this is one of the most not so crazy conspiracy theories to date.  Like honestly, hear me out. So there have been teasers popping up at the point for months now. And one final one before the season ends has shown up and caused quite the stir. In fact, this picture of the poster has been sent to me a total of about 20 times now. That's fantastic. And that's why this was quickly bumped up to today's video. So one of the most important things that I've noticed on this is it says, don't put off until tomorrow what others can do for you now. So that's a very interesting quote. That quote, in my opinion, honestly points towards something like, don't put off removing a ride tomorrow what someone can do for you today. And honestly, Cedar Creek Mine Ride is pictured in the background there with an upgraded station. And honestly, what looks like almost like a wooden coaster.  Who knows? But it honestly brought me or got me thinking. It honestly got me thinking, what could be going on? So one could argue it's too iconic to come in attraction to remove. One could also argue it's kind of become a waste of space and that back part of the park holds a massive amount of potential. Like honestly, if you look at it, it's a very massive plot of land. Potentially you ask, well, yes, let's have a look. So there appears to be a lore taking place in the back portion of the park that puts a battle between two groups against each other as they fight for control of the town. This sets a beautiful setting for another coaster to enter that portion of the park. For those that think Magnum is being removed, it's time to have a seat in row six and grab your popcorn because I'm about to present some interesting theories about that back portion of the park that may have you fangirling over Magnum staying. Are you still here? How wonderful. Now it's time to go over what I think are the two most likely upgrades to Cedar Creek Mine Ride. Comment down below what you guys think as you follow along and trust me, just hear me out. When I made the Magnum removal video, I strongly disagreed with its removal and I honestly wasn't expecting it to be so split on whether it should be removed or not. Well, hopefully I can show you in today's conspiracy theory that Magnum isn't and shouldn't even be thought about being removed yet. Option one in my opinion, again, my opinion is a world record infinity coaster that breaks the inversion record, takes you into an immersive storyline and is surrounded by an absolutely amazing themed area. You kind of see this with something like the Smiler. So the Smiler is kind of immersive and themed. It's themed in a different way where one wouldn't necessarily think it's immersive and themed, but it is. Are your jaws dropped yet? No? Okay. Well, let's say this bow regards way of getting back at steel vengeance and is opening a mining operation is the setting for a new coaster, tight twists, turns and inversions abound. So one could argue that this infinity coaster would be a perfect fit for Cedar Point. In fact, this is one of my favorite options. An infinity coaster with the most inversions, very immersive theming, a storyline. And honestly, I think they've been hinting at the Cedar Creek Mining Company, I think is what it's called, coming to town. It would be perfect. You have Maverick right beside you and then right across from Maverick would be this new infinity coaster or the second model I'm about to present as kind of like a counter towards steel vengeance. And then who knows what that team will come up with down the road. But right now, there's so much potential in that area and I honestly think Cedar Creek Mine Ride is the best option to be removed for some world record coaster, especially something like the infinity coaster that would smash the Smilers records and other most inversion record coasters. Cedar Point apparently did say they would outdo steel vengeance for their 150th anniversary. And yes, to enthusiasts, this will be nearly impossible. Well, general public wise, this is very possible and in two forms I could see this taking place. Now option one, as I said, was my absolute favorite, but I strongly feel the second option will greatly win a lot of you over. So steel vengeance took a massive wooden coaster and turned it into an absolutely amazing hybrid coaster, arguably the world's best coaster. That's amazing and all, but it greatly created this void at the point, a wooden coaster void. This is where things get tricky. Breaking records and building the best of the best on the wooden coaster market is going to be tricky. However, if there was a park to take the records and build the best, it would be Cedar Point. So you have Holiday World and Great Adventure to just name a few to beat. How could Cedar Fair top these wooden coasters? Well, it appears many people ride wooden coasters for ejector airtime and tight turns. People honestly like length as well when it comes to wooden coasters. So if Cedar Fair were to build a wooden coaster, I honestly think they may go for length, most airtime and theming combined with a list of 10 other records the world doesn't even know exist. So now that I presented kind of what I think could be happening for 2020 in my two options, what do you honestly think about 2020 at Cedar Point? Comment down below what you think as I honestly have no idea. I'm just presenting what I think is the most likely and yes, I get it's a bit out there, but with Maverick being right across from Cedar Creek Mine Ride and Cedar Creek Mine Rides location and setting in that same area. And we know Beauregard is got a vengeance for steel vengeance now. So maybe we'll get wooden vengeance, wooden vengeance up at Cedar Point, but who knows? I know a lot of you honestly really wanna see a wooden coaster at Cedar Point and it's definitely very possible. There's many records they could go after. Length is a tricky one and to top something like El Toro at Great Adventure, that's gonna be very difficult too. And then you have a lot of fan favorites at Holiday World, those are gonna be tough to beat too. So a wooden coaster in my opinion is more tricky to beat world records on, but we do know that Cedar Fair is most likely gonna be breaking records on whatever they build in 2020 for the 150th anniversary. So hopefully you guys really enjoyed today's conspiracy theory video. Every Monday there will be a video for our conspiracy theory series. Don't forget to share this for others to join in and discuss and as always, don't forget to smash that like button. I hope you guys had an amazing weekend and stay tuned for tomorrow as I have three park construction updates. Thanks for watching guys and I hope you have an absolutely amazing day. Have a good one, bye. Alrighty, so this is where I ask for your guys' help. So the conspiracy theories videos are really taking off and they're extremely popular and I wanna make them better. So comment down below what conspiracy theory at your theme park or amusement park or home park, whatever it is, or you know, in a theme park or amusement park you know exists and you want me to cover. So again, comment down below what conspiracy theory you would like to see me cover in a future video down below and who knows? Maybe we could see it in one of our future videos. Anyways guys, I'm really happy you guys are enjoying these series I've been doing on conspiracy theories and yes, I definitely want your input. So comment down below what you guys think and stay tuned for some more conspiracy theories. Have a good one guys, bye.