Hello. Thank you for the warm welcome. And today, we have some fun with a 30-year-old language and React. Because we all love React, right? So I'm Edoardo. I'm a senior dev rel at Storyblok. Storyblok is a headless CMS and it's so beautiful that I don't even have to talk about it.
We will talk about server components. And I want you to focus on this word. Server components run exclusively on the server. You may say, Edo, yeah. We all know about that. We all know that server components run on the server, yeah. I work on open-source SDKs, React SDKs, and next-gen SDKs, and I see the issues, and I see that many of us don't really understand how server components work, React components work.
So I want you to focus on this word and I will take you to a journey through time, and we will start with episode one first. PHP menace. And you remember maybe 30 years ago, this was the web. Some of you were there, some of you were not even born. But this was the web back in the time. And this guy, Rasmus Lerdorf, came up with a clever solution, a scripting language to have dynamic webpages loading data from somewhere, composing pages into something dynamic, right? And PHP was born.
It was called Personal Home Page back then. Now, after three completely rewritten of the core, and now PHP means something completely different and no one knows the meaning of PHP, but now we have PHP that works exactly like that. So we, the client, we make a request to the server. The server knows that the request has to be routed to an index.php or something like that. The index.php must be run by an interpreter. The interpreters have some access to the DBMS API, the POSIX API, some external API. And then the interpreter, the purpose of the script was to generate, is to generate an HTML file. This file then comes back to the server and to the client. This is the whole round trip, right? And the simple PHP component is exactly that. So we start from the top, we connect to a MySQL database, for example. We get some data, and then we have a template, we render data.
Comments