The web is an ever-changing platform and so are the websites we create. With new technologies and possibilities come new challenges for both developers and SEOs. In this session, we will talk about how developers and SEOs can become a team and solve challenges together. We will look into a few scenarios where this collaboration can bring success to a project.
Hello and welcome everybody out there. I'm super excited to be talking about technical seo to all of you today. Specifically, I want to focus a little bit on vue.js, but basically none of the things that I talk about are very, very vue-specific. If you want to learn more about vue-specific seo, then I'll show you a few resources after the talk. So when we talk about seo, then a lot of people are like, what does it even mean? Besides the obvious meaning, which is search engine optimization, it seems that it's very non-obvious to a lot of people what this is, and a bunch of people think it's basically snake oil and trying to sell links and stuff like that. It's not that. Fundamentally, what seo is about is making sure that what you are creating, what you are putting online there, is actually visible to people looking for it. Because if you are going online to seek something that you don't know yet, then you're going to your search engine of choice, and you search for whatever it is that you need, and then you find potential web applications or websites that are serving that specific purpose. To do so, you need to make sure that search engines can actually find your things, and thus people using search engines can actually find the things that you build. And that entails making sure that the robots, which are the search engines, because they are computer programs that consume your content, you need to make sure that these robots actually can process and understand what you're putting out there on the web. And for that, there is a bunch of stuff that needs to be done. And a bunch of it is technical, but not all of it is technical. So seo is a very broad field, similar to how software engineering is a very broad field. You might do front end, you might do back end, you might do embedded systems, you might do game development. seo is not only technical, but we'll focus on the technical side today, as we are all developers. So when it comes to search engines, search engines fundamentally run a process. And this process can be broken down into multiple steps. The very first step is actually making HTTP requests to your server, to a URL that we found somewhere, and then fetching whatever comes back from your server. And we need to understand what it is. So is this a website about dogs? Is this a website about cats? Is this a website about boats? And then we would put that into a database, which is called the index. And whenever someone looks for, let's say, you make a cat website, if someone looks for cat pictures, then we have lots of images, lots of websites for cat pictures in our index. And we need to fetch them, and we need to figure out what is the best result for this user at this time. And that's the ranking process, where we figure out where each of the websites in our index goes on the list of results. And then we show these results to users. Now, as developers, we actually have fundamental impact on this process.
So definitely make sure to use history api rather than hash-based routing. In 2019, 12% of the websites we crawled for the web analog unfortunately continued to use fragment URLs.
Another thing is that people are worried, is client-side rendering OK? And to which I say, yes, it is, because we have a render queue and we render websites. So client-side rendering works. Also, people are like, oh, but it takes a long time for Google to actually client-side render. That's not true. The queue time is really, really short. It has been at least since 2020. Also, we're using an evergreen Chrome. So if you're using ES6 or something, that is not a problem because we are updating our renderer to be the latest version of Chromium anyways.
Another thing that happens often in client-side rendered applications are soft errors. They happen because you go to a URL that doesn't exist, and you see an error message, and you are happy. But if you check, you actually see that the HTTP status that comes back is a successful request. And then there's an api request made. And then only if the api request returns an error, we are actually showing an error page. Unfortunately, that's not very great. It would be better to redirect to a URL that actually gives us a server-side error. That would prevent such soft 404 errors that might show up nastily in search results.
So with that in mind, you've seen a few things that you can already look into. And the two biggest issues are not using proper URLs for your routes and also making sure that you are using HTTP services correctly or you mitigate client-side 404 errors, such as shown in here. There's a lot more to consider. If you're interested, check out these resources. They have a lot more content and a lot more time to present that to you. And with that, I'd like to say thank you very, very much and enjoy the rest of the Lightning Talks.