0th entry
Prelude
{ Ouch }
Out of boredom & persitent feeling of mental stagnation I've decided to challenge myself to create something. Something moreless related to my daily job. Something which I've intentionally avoided for most of my professional life. **Personal website**. Here, I've written it.
So.. I plan to write mostly to myself, as a tool to force me to go forward (whatever that means). I am not sure how often I will publish, but I have few ideas for first n articles in my head.
I plan to focus on how I am filling space. Thats right, I have nothing new to be written (which wasn't written already by smarter people), that is why I will write about my experiences related to building tooling for this website. This sounds like a nice excuse to learn [Zig](https://ziglang.org).
Starting state:
- this entry was written in markdown,
- then manually translated to simplest html file,
- then manually copied to hosting provider,
- I am not using 3rd party libraries or blogging frameworks.
Target state:
[x] this entry was written in markdown,
[ ] then automatically translated to clean and aesthethically pleasing html file,
[ ] then automatically uploaded to hosting provider,
[x] I am not sing 3rd party libraries or blogging frameworks.
Nice progress, already 50% done.
Site desing?
Before I will jump into writing code I need to think about what kind of product I am trying to build. What will be the target use case, what features I want to write.
I've came up with this short list. I want :
- a landing page with index of all articles (and links to them)
- a page where I write who I am
- a page for each article
I really enjoy how [Fabien Sanglard's website](https://fabiensanglard.net) looks like. Something a little bit more pleasant than for example [Dan Luu's website](https://danluu.com). Not clunked, clear. Straight to the point. That is why I want my target landing page to look similar. Centered, at most 1 short paragraph of what are you seeing followed by list of references to articles. The "about page" will be filled eventually, no need to waste time here. Articles should follow the theme. Text should be centered, cut into paragraphs separated with newline. I should be able to add quotations, images and so on. I should be able to navigate back and forth between landing age, previous and next articlets. Just basic stuff.
Site skeleton
At least 20 years passed since I had an opportunity to manually mess with html pages. This is a cause of my internal urge to go through [HTML Living Standard](https://html.spec.whatwg.org/multipage/). I've stared with 1st chapter, but somewhere in 3rd chapter (_Semantics, structure, and APIs of HTML documents_) I've understood that I am reading about stuff which is not a priority at the moment. I've decided to jump straight to 4th chapter (_The elements of HTLM_).
4th chapter is pretty valuable, because it explains stuff and usage of nav
or articles
and sections
. I will be keeping those in mind, especially this [summary about usage](https://html.spec.whatwg.org/multipage/sections.html#usage-summary-2) and [summary about text modifiers](https://html.spec.whatwg.org/multipage/text-level-semantics.html#usage-summary).
After reading it I this is how my skeleton may look like (pseudocode):
{ <!DOCTYPE HTML>
, <html lang="en">
, <head>
, <title> some title lol </title>
, <meta charset="UTF-8">
, <meta name="viewport" content="width=device-width, initial-scale=1.0">
, </head>
, <body>
, <header>
, <h1> lol? </h1>
, <header>
, <nav>
, <p><a href="/">Home</a>
, <p><a href="/prev.html">Previous</a>
, <p><a href="/next.html">Next</a>
, </nav>
, <main>
, <article>
, <h1> a title </h1>
, <p> wooords </p>
, , <h2> a sub title </h2>
, <p> wooords </p>
, , <h3> a sub title </h2>
, <p> wooords </p>
, <article>
, </main>
, <footer> Posted ...</footer>
, </article>
, </body>
, </html>
}
After skimming through rest of the standard it hit me how huge effort it was (and still is) to maintain this kind of work.
Another surprise - there is an [validator](https://whatwg.org/validator/) which can check if my site is properly formatted. Awesome!
Closing thoughts
Reading mentioned standard reminded me that most of stuff which I am seeing is working just because there are people who put so much effort into it.
I know what to do next - start writing the code.