Easiest (sic!) way to run a blog like a hacker using Github Pages.
Github Pages is a cool service. It provides a free hosting for static websites, and this is is a great choice for any project to host its documentation. Even better is that it provides ability to use great static websites generator named Jekyll to introduce some kind of dynamics and drop the need to create each separate html-page by your hands (or need to generate a site locally).
While you creating content for the website you do not need to use less or more poky WYSIWYG-editor, to have a browser or even graphical environment at all! Content are just simple text files, templates are also text files and changes sending is not a form submit using website interface, but regular well-known push to git repository!
Altogether, each cool hacker runs its blog like this. And I am not the exception! But I didn't like either default Jekyll's theme nor one from the hundreds of available themes. They didn't have... minimalism, even those that had "minimalistic" word in their names. Minimalism not only in their look but also in what is under the hood: within templates, scripts, stylesheets... Because of this, I decided to make my own theme with blackjack and everything else. And the main requirement was simplicity in everything described above.
I am not a designer and I do not like to design things, but - wow! - minimalistic design, when content is placed at the forefront, i. e. "content first" approach, on the one hand, is more comfortable for a reader (simply because there are no distracting gimmicks), but on the other hand, it is easy to implement.
Templates: why do we need a lot of partials? Let's make just one, easily modifiable and understandable! Stylesheets: only base simple layout, styles for default elements let's leave to a browser - simply because in different browsers they differ only by values of margins and paddings. Scripts... what the scripts, for what?! Why do we need any kind of dynamics within simple - and trying to keep its simplicity! - blog?
So, how to use
smpl? It's easy. Fork theme repo and rename it
<your-nickname-on-github>.github.io. Remove all posts from directories
_drafts, and also all images from
images directory and change
contact data in
index.html. You need to change
CNAME if you need custom
domain support or delete it otherwise. Take a look
_config.yml in order to change it for your needs. That's it! You may begin
to write posts. They must be written in markdown
and lie within
_posts directory. They also should be named as Jekyll
requires (YYYY-MM-DD-post-title.md) and there should
be minimal front-matter at the top of each post in which
you may redefine post's title if you didn't like generated one.
Further please refer to Jekyll documentation. At this moment you already may make a git push and take a look at your nice minimalistic blog.
Optionally you also may copy files named
service to generate custom 404 error page (a warning plus redirect to homepage
after five seconds of waiting) and atom-feed, respectively. If you want to have
your blog on your custom domain you can refer to corresponding documentation
entry of Github Pages.