
Blogging Like a Hacker (2008) - gk1
http://tom.preston-werner.com/2008/11/17/blogging-like-a-hacker.html
======
Eiriksmal
Fascinating. For those who click to read the comments before the actual
article, this is Mr. Preston-Werner's introduction of Jekyll, the Ruby static
site generator, to the world. He lays out his reasons for creating the tech:

>>>First, all my writing would be stored in a Git repository. This would
ensure that I could try out different ideas and explore a variety of posts all
from the comfort of my preferred editor and the command line. I’d be able to
publish a post via a simple deploy script or post-commit hook. Complexity
would be kept to an absolute minimum, so a static site would be preferable to
a dynamic site that required ongoing maintenance. My blog would need to be
easily customizable; coming from a graphic design background means I’ll always
be tweaking the site’s appearance and layout.

Which are the exact same wishes I had with my own blog, and I assume many
other "hacker" types have for theirs, as well. I don't remember why I settled
on Pelican (Python) over Jekyll (Ruby), but either tool is a fantastic choice
for blogs... and I now understand that's because Jekyll was literally created
to support those goals!

~~~
greggman2
I switched to a static site gen and a git repo. I lost the ability to preview.
Sure, if I'm at home I can run the build script, launch a simple server,
navigate to the page on localhost but it's a long way from say wordpress
(previous solution) where it was a much nicer experience to preview.

Adding images into a post was also nicer. Just drag and drop instead of copy
into folder, check into git, manaully type urls like it is now.

I use a private repo on github so at least I can add something without having
to be at my computer but still no preview or nice UI.

Any static generators have well designed solutions for this?

~~~
Eiriksmal
A markdown-based blog lets you preview, if you're typing into an editor that
supports previewing markdown. I do my long-form writing in LibreOffice Writer
(because Fedora), then the "blogging"/translating bit in PyCharm in a markdown
file. PyCharm has a rich markdown previewer, so I can write short posts in it,
without the translation step.

I'm not personally aware of a static site generator that supports drag-and-
drop images, but nothing stops such an extension/plugin from existing. When I
want to embed an image on my site, it goes into an /images/[year]/ folder and
is referenced in the markdown file with the manually-typed partial URL, as you
mentioned.

~~~
greggman2
My blog uses many custom features not found in plain markdown so a simple
markdown preview found in some editors isn't helpful for verifying the post
will work correctly.

------
bhaak
I often remark that IT in general is a history-less space. I wonder if Tom
would have developed Jekyll if he knew about Blosxom? Blosxom had its last
release in the same month when Jekyll had its first.

The blog post seems to imply that he came up with the idea and code for Jekyll
all by himself. But also as he's a Ruby guy, it's likely he would have ported
over the code and concepts to his own project.

~~~
mettamage
Your comment gave me an idea. I'm not going to do it alone (I think), but
someone should do it.

Start a podcast/educational website on the history of tech.

For anyone who wants to do it together and see if it's a fun project to
pursue, email me :) (in my profile)

Or are there already podcasts on it? If so, I haven't seen it appear on HN.

~~~
adventured
There are some, for example the Internet History Podcast is overall
tremendous:

[http://www.internethistorypodcast.com/](http://www.internethistorypodcast.com/)

I'm not aware of anyone successfully doing a more expansive history of tech
podcast (and actually filling it out).

------
stakhanov
You call that blogging like a hacker?

 _This_ is blogging like a hacker:

[https://www.stallman.org/archives/2019-jul-
oct.html](https://www.stallman.org/archives/2019-jul-oct.html)

 _This_ is blogging like a hacker:

[https://blog.fefe.de/](https://blog.fefe.de/)

~~~
saagarjha
What, serif fonts?

~~~
compressedgas
Neither of those pages specify a font. If you are seeing a serif font that is
because that is what is the default in your browser.

------
GEBBL
The nice thing about Jekyll is that you can just find a nice looking theme and
then fork it, edit the config.yml file with your specifics, such as
name/address/etc and then publish.

Posts go under the posts folder, uploaded as md files. It's very nice and
clean. You can host a site on github pages and point your .com to their DNS
servers.

It frees you up to focus on writing, and you have the benefit of markdown
there if you need it.

Makes you wonder why a simple blog site needs to be interacting with a DB and
making mad calls all over the place, with loads of insecure plugins and all
the rest of it. Just give me simplicity :)

------
strogonoff
Jekyll can be used for much more than blogging, too.

Ribose, for example, has a network of sites for its open-source initiatives[0]
built on top of Jekyll. Sites are integrated with each other and also with Git
repos of relevant software packages, pulling e.g. latest commit times &
documentation in AsciiDoc at build time. Each site does have a blog/newsroll,
but in the end is much more than that.

The implementation involves a gem-based theme with accompanying helper plugin,
which are open source[1].

Going the static site route, on one hand, introduces new constraints—for
example, build times become important—but on the other hand allows to build
blazing-fast websites without having to worry as much about ongoing server
maintenance. (Currently each site gets built on Travis CI and delivered via
AWS S3/CF.)

Disclaimer: I work with Ribose currently and participated in Ribose Open
development.

[0] See for example [https://www.metanorma.com/](https://www.metanorma.com/),
[https://www.rnpgp.com/](https://www.rnpgp.com/) or
[https://www.cryptode.com/](https://www.cryptode.com/)

[1] [https://github.com/riboseinc/jekyll-theme-open-
project/](https://github.com/riboseinc/jekyll-theme-open-project/)

~~~
arkokoley
True. Zense Dev (we are a student software development group based out of
Bangalore, India) uses Jekyll to render its main website[0] which includes a
blog, a list of projects, lists of events happening and a list of the members
of the group. We even have member pages and the blog posts written by that
member show up there.

[0] [https://zense.co.in](https://zense.co.in) [1]
[http://zense.co.in/people/arkokoley](http://zense.co.in/people/arkokoley)

------
nickjj
Jekyll is great. It's what I use to run my site for the last ~4 years with
about 250 posts (it's still very fast -- reloads happen in less than 3
seconds).

It really doesn't take too much effort to use existing Jekyll features to add
in custom "user features" into your site. You can go so far without needing to
write your own plugins.

For example, I just put out a video a few days ago that goes over using
"includes" to add 3 unrelated site features (site wide affiliate link notices,
a table of contents for blog posts and embedding media):
[https://nickjanetakis.com/blog/implementing-3-different-
webs...](https://nickjanetakis.com/blog/implementing-3-different-website-
features-with-jekyll-using-includes)

------
hashberry
Also, blogging like a hacker includes not being afraid of your blog being
hacked. Static HTML has the advantage of high security + high performance.

------
andreyk
I really like this quote from this article:

“I love writing. I get a kick out of sharing my thoughts with others. The act
of transforming ideas into words is an amazingly efficient way to solidify and
refine your thoughts about a given topic. “

So much so that it is quoted on my own Jekyll-based personal website
([http://www.andreykurenkov.com/](http://www.andreykurenkov.com/)). I have set
up 3 additional site since with Jekyll, all hosted on GitHub, and it's super
easy every time.

------
gr8pes
What about Ghost blog? I have been wanting to dive into some of my own
blogging and have been trying out Ghost
([https://ghost.org/](https://ghost.org/)). It has been really fun trying to
find a theme that I like and the native apps make it very pleasing to work on.

~~~
outworlder
Ghost is like the antithesis of this post.

~~~
mettamage
Lol, I literally used Ghost for a while and used Jekyll to convert it into a
static blog. It allowed me to use Markdown to quickly write blog posts. Jekyll
would create a static version of my public localhost, and I'd push it to
Github.

------
unpwn
Recently set up a static gen blog. I went with Hugo over Jekyll. I think its a
bit personal preference tbh, but I really liked Hugo's layout, speed, and
kinda prefer hacking with Go over Ruby if it comes to that.

~~~
outworlder
I like Hugo too – but it came much later as is probably influenced by Jekyll.

