davideisinger.com

My personal website
Log | Files | Refs | README

kristoff-it-edtlns.txt (4703B)


      1 [1]Loris Cro
      2 
      3 Personal Website
      4 [2]About   •   [3]Twitter   •   [4]Twitch   •   [5]YouTube   •   [6]GitHub
      5 
      6 The Static Site Paradox
      7 
      8 October 08, 2024 • 3 min read • by Loris Cro
      9 
     10 In front of you are two personal websites, each used as a blog and to display
     11 basic contact info of the owner:
     12 
     13  1. One is a complex CMS written in PHP that requires a web server, multiple
     14     workers, a Redis cache, and a SQL database. The site also has a big
     15     frontend component that loads as a Single Page Application and then
     16     performs navigation by requesting the content in JSON form, which then gets
     17     “rehydrated” client-side.
     18  2. The other is a collection of static HTML files and one or two CSS files. No
     19     JavaScript anywhere.
     20 
     21 If you didn’t know any better, you would expect almost all normal users to have
     22 [2] and professional engineers to have something like [1], but it’s actually
     23 the inverse: only few professional software engineers can “afford” to have the
     24 second option as their personal website, and almost all normal users are stuck
     25 with overcomplicated solutions.
     26 
     27 Weird as it might be, it’s not a great mystery why that is: it’s easier to spin
     28 up a Wordpress blog than it is to figure out by yourself all the intermediate
     29 steps:
     30 
     31  1. Buy a domain
     32  2. Find a hosting platform
     33  3. Configure DNS
     34  4. Find an SSG (or handcraft everything yourself)
     35  5. Learn how to setup a deployment pipeline
     36 
     37 And so, while we software engineers enjoy free hosting & custom domain support
     38 with GitHub Pages / Cloudflare Pages / etc, normal users are stuck with a bunch
     39 of [7]greedy clowns that make them pay for every little thing, all while
     40 wasting ungodly amounts of computational power to render what could have been a
     41 static website in 99% of cases.
     42 
     43 Last week I spoke at SquiggleConf in Boston about my experience writing a
     44 language server for HTML. Most of the talk is tactical advice on what to do (or
     45 avoid) when implementing one, but I concluded the talk with a more high-level
     46 point, which I will now report here fully as conclusion to this blog post.
     47 
     48     When I published SuperHTML, I discovered that it was [8]the first ever
     49     language server for HTML that reported diagnostics to the user. I wrote a
     50     blog post about it, it got [9]on the frontpage of Hacker News and nobody
     51     corrected me, so you know it’s true.
     52 
     53     I originally found it a funny thing, but thinking about it more, it’s a bit
     54     sad that this is the case. Linters do exist, and people can get diagnostics
     55     in their editor, but that’s usually tooling tied to a specific frontend
     56     framework and not vanilla HTML, which leads to people opting to use
     57     frameworks even if they don’t really have a real need for all the
     58     complexity that those frameworks bring.
     59 
     60     And that’s bad in my opinion. Not because of an abstract appreciation for
     61     simplicity, but because the web doesn’t belong just to software engineers.
     62     The more we make the web complex, the more we push normal users into the
     63     enclosures that we like to call social networks.
     64 
     65     Don’t you find it infuriating when lawyers and accountants fail to clarify
     66     how their respective domains work, making them unavoidable intermediaries
     67     of systems that in theory you should be able to navigate by yourself?
     68 
     69     Whenever we fail to make simple things easy in software engineering, and
     70     webdev especially, we are failing society in the exact same way.
     71 
     72     This is not something that startups or big tech can solve for us, their
     73     economic incentives are just too misaligned, so I invite you all to help
     74     make the web more accessible, partially as a matter of taking pride in our
     75     craft, and partially because the web used to be more interesting when more
     76     of it was made by people different from us.
     77 
     78 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
     79 [10]← Critical Social Infrastructure for Zig Communities   •   [11]Yes, Go Does
     80 Have Exceptions →   or   [12]Back to the Homepage
     81 
     82 References:
     83 
     84 [1] https://kristoff.it/
     85 [2] https://kristoff.it/
     86 [3] https://twitter.com/croloris
     87 [4] https://twitch.tv/kristoff_it
     88 [5] https://youtube.com/c/ZigSHOWTIME/
     89 [6] https://github.com/kristoff-it
     90 [7] https://techcrunch.com/2024/10/04/wordpress-vs-wp-engine-drama-explained/
     91 [8] https://kristoff.it/blog/first-html-lsp/
     92 [9] https://news.ycombinator.com/item?id=41512213
     93 [10] https://kristoff.it/blog/critical-social-infrastructure/
     94 [11] https://kristoff.it/blog/go-exceptions/
     95 [12] https://kristoff.it/