diff options
Diffstat (limited to 'content/blog')
| -rw-r--r-- | content/blog/static-pages.md | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/content/blog/static-pages.md b/content/blog/static-pages.md new file mode 100644 index 0000000..3549fa5 --- /dev/null +++ b/content/blog/static-pages.md @@ -0,0 +1,111 @@ +--- +title: Static page(s) +date: 2024-03-04 +draft: false +--- + +# Short History + +Since the start of the World Wide Web over the internet almost 4 decades ago, +[Static web pages][1] were the default, at least for a few years, before the +introduction of *"an unpleasant sensory and emotional experience associated with, +or resembling that associated with, actual or potential tissue damage."* +(pronounced as [JavaScript][2]) + +And for a few years, professionals and hobbyists alike, used to craft these +static websites manually using raw HTML and CSS. + +Then came the [dot-com boom][8], which gave birth to an explosion of different +frameworks, paradigms, methodologies, and template languages. + +Nowadays, there are so many [Static Site Generator (SSG)][6] frameworks; +almost all of them support remote data sources (AKA [Headless CMS][9]), making +it quite **inclusive** for professionals, hobbyists, small, and big businesses +to build a blog, photo portfolio, news reporting outlet, or a communication +channel with their audience. + +**In Short**, Static pages are simple, versatile, fast, secure, and cheap. +So cheap that over the years, many [SaaS][3], [IaaS][4], and [PaaS][5] providers +have offered it for free (or charged just network traffic fees).<br/> +**But**... Most of these providers are trying to lock you into their ecosystem, +which is understandable from financial incentives, +but quite harmful to providers' **diversity**. + +# Let me explain + +A few years ago, Oracle acquired Wercker before starting to throttle free-tier +offerings and delivering fewer and fewer updates to the platform, finally, +rendering it completely useless.<br/> +Microsoft acquired GitHub, [shortly before they started blocking developers +residing in sanctioned countries][10].<br/> +AWS was already gobbling up a massive chunk of the internet infrastructure.<br/> +And I don't like Google, plus their APIs and tools have always been quite bad. + +So, I started looking for a new open-source home for my code, preferably with +an open-source CI service. + +Naturally, I started looking at GitLab. I have already been using GitLab +for a while, mainly as a backup for the most important projects, but I wasn't +quite satisfied with its performance or with its CI system. + +After some searching, I stumbled upon [SourceHut][11]. Long story short, +a few months in, I migrated everything to SourceHut, with GitHub used as a backup +for a few projects. I have been quite satisfied with the service, even with the +[recent DDoS attack][12]. + +## The problem + +Because during this time I was already in the process of moving this +website's domain registrar to Cloudflare, I needed to test that the website +was working. I couldn't just add a `CNAME` record pointing to the `a14m.srht.site` +domain and the `A` or `AAAA` [IPs][13] were also down. + +I **needed** to deploy the website manually, and that's when I found that **almost +all** the static page hosting providers only support integrations with GitHub or GitLab, +or you can manually upload the generated website using UI +- Netlify also supports Bitbucket, and probably the manual upload can be +automated via `cURL` but it's not officially documented. +- Cloudflare supports both GitHub/GitLab integration, and either deploying manually +or using their [(wrangler) CLI][14] +- AWS S3 static hosting is either manual or using the AWS CLI. + +**This is quite alarming**. There are no open-source-based solutions, +like using `cURL`, or `git` remote to deploy without relying on a proprietary +code, or service provider APIs. + +And the same patterns can be seen also with independent CI providers, +and although it's at least much better on the integration side, GitHub, GitLab +and Bitbucket are the standard supported services (because they are missing +on $$$ otherwise), and although it is a much more complex case with CI, +it should be theoretically possible to standardize how it is working using +webhooks. + +## The solution + +I don't know if there is a solution, but I hope to see more projects like +[SourceHut][11], open-source projects that challenge the ongoing monopolies, +and provide alternatives that could at some point dethrone these giants. + +Maybe that's a solution.<br/> +Maybe supporting these projects is also a solution.<br/> +Maybe not. + +<br/> + +*PS: This site is built using [Hugo][7], YAML, and Markdown<br/>* +*Source: https://git.sr.ht/~a14m/a14m.srht.site* + +[1]: https://en.wikipedia.org/wiki/Static_web_page +[2]: https://en.wikipedia.org/wiki/Pain +[3]: https://en.wikipedia.org/wiki/Software_as_a_service +[4]: https://en.wikipedia.org/wiki/Infrastructure_as_a_service +[5]: https://en.wikipedia.org/wiki/Platform_as_a_service +[6]: https://en.wikipedia.org/wiki/Static_site_generator +[7]: https://gohugo.io/ +[8]: https://en.wikipedia.org/wiki/Dot-com_bubble +[9]: https://en.wikipedia.org/wiki/Headless_content_management_system +[10]: https://medium.com/@hamed/github-blocked-my-account-and-they-think-im-developing-nuclear-weapons-e7e1fe62cb74 +[11]: https://sr.ht/ +[12]: https://sourcehut.org/blog/2024-01-19-outage-post-mortem/ +[13]: https://srht.site/custom-domains +[14]: https://developers.cloudflare.com/workers/wrangler/ |
