bgneal@4
|
1 Blog reboot with Blogofile
|
bgneal@4
|
2 ##########################
|
bgneal@4
|
3
|
bgneal@4
|
4 :date: 2011-04-17 14:10
|
bgneal@4
|
5 :tags: Blogging, Blogofile
|
bgneal@4
|
6 :slug: blog-reboot-with-blogofile
|
bgneal@4
|
7 :author: Brian Neal
|
bgneal@4
|
8
|
bgneal@4
|
9 Welcome to my new blog. I've been meaning to start blogging again for some time, especially since
|
bgneal@4
|
10 the new version of SurfGuitar101.com_ went live almost two months ago. But the idea of dealing with
|
bgneal@4
|
11 WordPress was putting me off. Don't get me wrong, WordPress really is a nice general purpose
|
bgneal@4
|
12 blogging platform, but it didn't really suit me anymore.
|
bgneal@4
|
13
|
bgneal@4
|
14 I considered creating a new blog in Django_, but I really want to spend all my time and energy on
|
bgneal@4
|
15 improving SurfGuitar101 and not tweaking my blog. I started thinking about doing something
|
bgneal@4
|
16 simpler.
|
bgneal@4
|
17
|
bgneal@4
|
18 Almost by accident, I discovered Blogofile_ by seeing it mentioned in my Twitter feed. Blogofile is
|
bgneal@4
|
19 a static blog generator written in Python. After playing with it for a while, I decided to use it
|
bgneal@4
|
20 for a blog reboot. It is simple to use, Pythonic, and very configurable. The advantages for me to go
|
bgneal@4
|
21 with a static blog are:
|
bgneal@4
|
22
|
bgneal@4
|
23 1. No more dealing with WordPress and plugin updates. To be fair, WordPress is very easy to update
|
bgneal@4
|
24 these days. Plugins are still a pain, and are often needed to display source code.
|
bgneal@4
|
25 2. I can write my blog posts in Markdown_ or reStructuredText_ using my `favorite editor`_ instead
|
bgneal@4
|
26 of some lame Javascript editor. Formatting source code is dead simple now.
|
bgneal@4
|
27 3. All of my blog content is under version control.
|
bgneal@4
|
28 4. Easier to work offline.
|
bgneal@4
|
29 5. Easier to deploy. Very little (if any) server configuration.
|
bgneal@4
|
30 6. I can use version control with a post-commit hook to deploy the site.
|
bgneal@4
|
31
|
bgneal@4
|
32 Disadvantages:
|
bgneal@4
|
33
|
bgneal@4
|
34 1. Not as "dynamic". For my blog, this isn't really a problem. Comments can be handled by a service
|
bgneal@4
|
35 like Disqus_.
|
bgneal@4
|
36 2. Regenerating the entire site can take time. This is only an issue if you have a huge blog with
|
bgneal@4
|
37 years of content. A fresh blog takes a fraction of a second to build, and I don't anticipate
|
bgneal@4
|
38 this affecting me for some time, if ever. I suspect Blogofile will be improved to include caching
|
bgneal@4
|
39 and smarter rebuilds in the future.
|
bgneal@4
|
40
|
bgneal@4
|
41 It should be noted that Blogofile seems to require Python 2.6 or later. My production server is
|
bgneal@4
|
42 still running 2.5, and I can't easily change this for a while. This really only means I can't use
|
bgneal@4
|
43 Mercurial with a *changegroup* hook to automatically deploy the site. This should only be a temporary
|
bgneal@4
|
44 issue; I hope to upgrade the server in the future.
|
bgneal@4
|
45
|
bgneal@4
|
46 Blogofile comes with some scripts for importing WordPress blogs. Looking over my old posts, some of
|
bgneal@4
|
47 them make me cringe. I think I'll save importing them for a rainy day.
|
bgneal@4
|
48
|
bgneal@4
|
49 The bottom line is, this style of blogging suits me as a programmer. I get to use all the same
|
bgneal@4
|
50 tools I use to write code: a good text editor, the same markup I use for documentation, and version
|
bgneal@4
|
51 control. Deployment is a snap, and I don't have a database or complicated server setup to maintain.
|
bgneal@4
|
52 Hopefully this means I will blog more.
|
bgneal@4
|
53
|
bgneal@4
|
54 Finally, I'd like to give a shout-out to my friend `Trevor Oke`_ who just switched to a static blog
|
bgneal@4
|
55 for many of the same reasons.
|
bgneal@4
|
56
|
bgneal@4
|
57
|
bgneal@4
|
58 .. _SurfGuitar101.com: http://surfguitar101.com
|
bgneal@4
|
59 .. _Django: http://djangoproject.com
|
bgneal@4
|
60 .. _Blogofile: http://blogofile.com
|
bgneal@4
|
61 .. _Markdown: http://daringfireball.net/projects/markdown/
|
bgneal@4
|
62 .. _reStructuredText: http://docutils.sourceforge.net/rst.html
|
bgneal@4
|
63 .. _favorite editor: http://www.vim.org
|
bgneal@4
|
64 .. _Disqus: http://disqus.com/
|
bgneal@4
|
65 .. _Trevor Oke: http://trevoroke.com/2011/04/12/converting-to-jekyll.html
|