
Setting up your own blog - mastermojo
http://james-huang.github.io/programming/2015/07/19/setting-up-your-own-blog/
======
jordigh

        under a version control system as beautiful as git?
    

I'll grant that git can be useful and it's certainly unavoidable, but
"beautiful" is not a word I would use to describe it. Git is ugly and best
hidden underneath GUIs, WUIs, and frontends. Indeed, this is how most people
use it. Very few of the thousands or millions of git users know more than
basic usage and most do not rely on the CLI.

So, in a similar vein to static blogs under version control, we have blohg for
hg:

[http://blohg.org/](http://blohg.org/)

~~~
imron
> Git is ugly and best hidden underneath GUIs

I guess I'm one of those 'very few', because every GUI and frontend I've used
that tries to hide what's going on underneath has been far more cumbersome to
use than the command line.

The only thing I'll use a Git GUI for is to check the history/revision graph.

~~~
jordigh
The HN "random" sample of git users is also very skewed towards the git power
users. Here is some usability research from Google et al about VCS usage:

[https://static.googleusercontent.com/media/research.google.c...](https://static.googleusercontent.com/media/research.google.com/en/us/pubs/archive/42942.pdf)

------
moonlighter
If you don't want to go with Jekyll/Ruby, there's Hugo (written in Go):
[http://gohugo.io](http://gohugo.io)

~~~
ryan-c
I'm using Pelican[0], which is written in Python.

0\. [http://blog.getpelican.com/](http://blog.getpelican.com/)

~~~
girvo
And I used Sculpin[0], written in PHP and uses Twig for templating.

[0] [https://sculpin.io/](https://sculpin.io/)

------
wiradikusuma
Maybe I'm missing something obvious, but can't you already do this with
Tumblr, Wordpress or Blogger? They're Free, Open (from his description, I
assume it means customizable), and Easy.

~~~
g_delgado14
Wordpress is extraordinarily clunky. There's a lot of configuration you have
to concern yourself with (i.e. plugins, SEO, etc). If you want a custom domain
with wordpress there's even more of a hassle.

With Jekyll + GH Pages you have full control of your site with as little
complexity as necessary.

Here's some more info: [http://joshualande.com/jekyll-github-pages-
poole/](http://joshualande.com/jekyll-github-pages-poole/)

------
resir014
Another Jekyll theme that I've been using is Poole:

[http://getpoole.com/](http://getpoole.com/)

It comes with the barebones theme, and two other sister themes.

------
AdrianRossouw
This is a nice client-side markdown editor for gh-pages :

[http://prose.io/](http://prose.io/)

------
greghendershott
While checking the Traffic stats for one of my projects on GitHub today, I
discovered inbounds from the following site:

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

It's interesting to see just how many static blog generators there are. :)
Also, if you prefer you can probably find one written in
$FAVORITE_PROGRAMMING_LANGUAGE.

------
steventhedev
I've had a blog[0] on GH pages for a few years now. I wrote a few posts about
how to go about setting up feeds/og tags, GA, and I really should write
another one about setting up everything else.

Basically, hosting a static blog is a rabbit hole. Keep track of where you
came from, and share it out there. It's kinda amazing what you can do with a
little bit of effort.

Personal plug: I cofounded Feedio[1], which gives you a widget for doing email
subscriptions (among other things).

[0]: [https://stevenkaras.github.io](https://stevenkaras.github.io)

[1]: [http://feedio.co](http://feedio.co)

~~~
x5n1
What about the fact that your content is duplicated in multiple places? Does
that concern you at all?

~~~
steventhedev
To be honest, I'm not really sure what's duplicated here. Are you talking
about the markdown sources being visible through the project?

~~~
x5n1
yeah. google indexes that.

~~~
steventhedev
Hadn't considered that.

On the one hand, GH pages is a fairly popular resource for quick static site
hosting, so Google should have had an engineer sit around and come up with a
special filter just for that. On the other, I doubt very much that they've
actually done that.

All in all, as long as you set canonical tags for your posts, the duplicate
content on another domain shouldn't penalize you too very much. In any case,
SEO for a personal technical blog isn't a high priority for me. If I were
writing books or doing something to earn money with the blog, I would probably
shell out for static site hosting using S3 and Cloudfront or something.

------
bovermyer
Eh. I don't get the Jekyll thing. I'd much rather run my own server.

After using Blogger, WordPress, and Ghost for years in various forms, I
decided (for various reasons) to just write a simple blog engine of my own to
power my site. The result is here: [https://github.com/BenOvermyer/obelisk-
blog-engine](https://github.com/BenOvermyer/obelisk-blog-engine)

It's not elegant, it's not extensible, and it's not really intended for anyone
but me. But it works, and it's fully under my control. Any failings with it
are mine, not that of anyone else.

~~~
NateDad
uh, you can host your jekyll blog wherever. it's just static html.

~~~
bovermyer
Sorry, I meant the most common flow I see - Jekyll+Github.

------
adenot
I also recommend using [http://prose.io/](http://prose.io/) to edit the
markdown files and commit directly to github. It even writes metadata for
jekyll.

------
ricardolopes
So far, after a disappointing experience with WordPress, I've been pretty
happy with Jekyll, and would recommend it.

I've written a tutorial on how to set up your own from scratch, which might be
interesting of you're considering that: [http://ricardolopes.net/blog/setting-
up-a-hackers-blog-with-...](http://ricardolopes.net/blog/setting-up-a-hackers-
blog-with-jekyll/)

------
isaacremuant
I used github pages to set up a test blog with hexo [1] (and posted 1 entry
about xsel [2], wooh) but wasn't able to find a very clean solution to
providing multi-language versions of a post (the fork someone recommended
kinda broke the theme [3] which is all on me, since I didn't really know what
I was doing)

I'm wondering If people here have done the whole multilanguage blog
(translations for each post) and what problems they've faced and solutions
they've employed.

[1] - [https://hexo.io/](https://hexo.io/) [2] -
[http://isaacremuant.github.io/2014/10/27/xsel-Copy-Paste-
fro...](http://isaacremuant.github.io/2014/10/27/xsel-Copy-Paste-from-the-
shell-en/) [3] -
[https://github.com/hexojs/hexo/issues/474#issuecomment-90086...](https://github.com/hexojs/hexo/issues/474#issuecomment-90086217)

~~~
ejstronge
If you'd be open to a new framework/language, Pelican's creators seem to have
considered translations of articles in designing their framework[1].

[1]
[http://docs.getpelican.com/en/3.6.0/content.html#translation...](http://docs.getpelican.com/en/3.6.0/content.html#translations)

~~~
isaacremuant
Python's always good, thanks, I'll check it out.

------
dataker
I've been fascinated with Jekyll as a blog, but I wonder whether it offers the
same SEO resources as Wordpress.

Any experiences?

~~~
roflmyeggo
Jekyll can set the basics such as meta descriptions via YAML front matter and
the page template system, custom page titles, custom URL structure, etc. You
can also use proper formatting quite easily (h1, etc.) with your choice of
formatting.

As long as you have that covered that is all you really need for good SEO -
the rest is keyword research, quality content, links, etc.

------
rshaban
You can also do this pretty easily with Hexo, which makes it easy to push
Markdown blog posts to prettily-formatted static webpages. There's easy Github
integration so that creating and deploying a new blog post is as a two-command
process: [http://razishaban.com/2015/07/from-zero-to-hexo-a-quick-
tuto...](http://razishaban.com/2015/07/from-zero-to-hexo-a-quick-tutorial/)

------
sergiotapia
Lost me at Jekyll, I never really liked it.

If you want something where you can write where inspiration hits, use
something like Ghost and throw it on a cheap DigitalOcean droplet.

------
jasonmccay
If you are interested in the Jekyll / Github approach, you ought to check out
Octopress
([https://github.com/imathis/octopress](https://github.com/imathis/octopress))
by Brandon Mathis.

It includes all the benefits of this approach, but with a nice out-of-the-box
theme as well as useful helpers to make the blogging experience much better.

~~~
x5n1
Also [https://github.com/developmentseed/jekyll-
hook](https://github.com/developmentseed/jekyll-hook)

------
kentor
For those who want to use React to generate a static site check out the source
to my blog:
[https://github.com/kentor/kentor.github.io](https://github.com/kentor/kentor.github.io).
I've ditched Jekyll because I don't want to use its template system and have
ruby set up.

------
kordless
I just did Swacker[1], which does a deployment from a Github to a continous
integrations build with Wercker to a hosted container on Giant Swarm. No
downloaded software required.

1\. [https://github.com/giantswarm/swarm-
wercker](https://github.com/giantswarm/swarm-wercker)

------
ne01
We are working on a new blogging platform SunSed.com (still a work in
progress) with focus on writing and reading experience.

Just try our editor! With Emacs like keyboard shortcuts (next sentence, etc)
and features like moving content up/down in the page (no copy and paste
needed). Anyway!

------
hawsome
Here's Github's official tutorial: [https://help.github.com/articles/using-
jekyll-with-pages/](https://help.github.com/articles/using-jekyll-with-pages/)

------
joelrunyon
Another setup guide - this one's for WP - [http://impossiblehq.com/how-to-
start-a-blog-guide/](http://impossiblehq.com/how-to-start-a-blog-guide/)

------
new_blogger
Is Jekyll superior to Wintersmith in any way? Am currently fiddling around
with Wintersmith.

~~~
mastermojo
I picked Jekyll cause it works out of the box with github pages.

------
itistoday2
I just spent a good long while converting a Jekyll theme to a WordPress theme.

I value WP's comments too much. Static sites require you to give control of
your comments to third parties, and that, for me, is unacceptable.

