Readers occasionally request which static HTML generator is used by fabiensanglard.net
, and if they can take the same stylesheet/ fonts to start their own blog. I usually send back the whole 134 lines of gen.php
[1] and invite them to copy whatever they need to get started[2].
I also add a, somewhat unsolicited, piece of advice. Writers who are getting started may not need any of this stuff. All you may need is HTML.
Starter pack I recommend.
index.html
files ➔ Hostgator $33/year plan.index.html
files ➔ Sublime Text[3] on all platforms.index.html
to the host ➔ Cyberduck[4] on Win/Mac and sshfs on Linux.
The fluff does not really matter much. Several articles in my hall of fame use the default font Times New Roman
and blue hyperlinks.
Check out nothings.org
's beauty. It has everything it needs[5]. An author, a date, and awesome content for someone interested in real-time 3D.
Another example is Paul Graham's straight-from-1998 layout website which does not prevent him from being a highly-regarded author.
If you can stick to the same style long enough and also write articles for long enough, your style sheet can become your brand. Some people will love your style and some people will despise it. Mostly css appeals to our vanity and ego[6].
By starting with a markup based generator, you rob yourselves of the opportunity to learn the core technology running the whole internet. Instead you will learn to use a layer built on top of it with little to no re-usable knowledge. Inevitably, you will want to do something the framework did not forecast and will come up with convoluted ways to do it anyway.
Additionally, depending on how long you will write and how often you do it, setting up a generator may be counterproductive[7].
Pages on this website used to be authored with pure HTML. Now a script, gen.php
, turns src.php
files into index.html
files. There are three reasons for that.
img
tags trigger layout reflow. The PHP script generates img
tags including the width
and height
of the src
. By integrating these values in the markup, the browser layout engine can reserve space for an image before it is downloaded.If #3 is all you need, you may be better off using a recursive sandwich bash script turning src.html
into index.html
.
There used to be a fourth reason. To save bandwidth, img
were presented within a picture
tag so browsers supporting it could use webp
while others fell back to png
. Automatic webp conversion and picture
generation are no longer needed[8] since Safari added webp
support in late 2020.
Custom fonts are a waste of bandwidth and a visual annoyance because they come with one of three evils called latency, FOUT, and FOIT[9]. If you don't need monospace, go with a websafe font[10]. Verdana
is a great choice. It looks fantastic and ships on all major OSes so your website will look the same on all platforms.
If you want to use monospace, a custom font may be useful. The one monospace safefont, Courier New
, is not legible. Originally this website's font-family
simply requested monospace
. This approach resulted in varying reading experience depending on the OS. Windows browsers got Consolas
, Linux users got DejaVu Sans Mono
, and macOS people got Courier
. Using a custom DejaVU
makes the reading experience consistent (at the, barely tolerable, cost of FOUT).
The more tech you add to your stack, the more maintenance work will be required to keep it up and running. Recognizing cycle eaters helps to not waste motivation on overhead.
asmallorange
. When I became dissatisfied, all I had to do was to open an account on hostgator
, upload my html
files, and change the DNS entry.^ | [ 1] | fabsite.zip |
^ | [ 2] | Even if copying a CSS is missing out on a marvelous creative journey. |
^ | [ 3] | Sublime Text |
^ | [ 4] | Cyberduck |
^ | [ 5] | 0x10 rules |
^ | [ 6] | Too strong a statement. Spacing and black hyperlink (vs blue) can help legibility. |
^ | [ 7] | Is It Worth the Time? |
^ | [ 8] | Can I use WebP image format? |
^ | [ 9] | Fighting FOIT and FOUT Together |
^ | [10] | CSS Web Safe Fonts |
^ | [11] | Saddest WordPress casualty is dadhacker.com. |