It seems like Python static site generators are the new Python web frameworks. No one liked what existed, so everyone decided to create their own. Spirit of open source, this is neither good nor bad, just depends on how you look at it. Not the purpose of this post though.
I like the idea of a static site. Perhaps I'm getting old. I don't want to manage a server, or services, or applications, or patches or updates or whatever. I chose Pelican and it's hosted on Amazon's S3.
- I now no longer have to worry about updating security patches on Ubuntu/Nginx/MySQL/PHP/WordPress.
- I'm writing this in Vim!
- Source control exists in git.
- Templates have a "Django" feeling, and that's what I'm most familiar with regarding Python/Web so this familiarity is a good thing.
- I know nothing regarding MarkDown vs. ReStructuredText so I'm indifferent (though Pelican supports both).
- Creating a new post and publishing it requires the recreation of all content.
- Editing the theme appears to require removing the theme, then installing the theme again. This is probably OK if your theme is set but for a new site, it's a PITA. Docs do indicate that you could symlink the theme, perhaps I should adopt this in the short-term.
This WAS NOT an easy migration or simple by any means. Like anything it was a learning experience. LOTS of sed to find/replace WordPress markup and make it suitable for Pelican. Pelican also does not like drafts w/o titles and my import continued to choke if I imported everything. None the less, I slowly kicked it's ass (RST) and got my content under control.
Things that did not make the move:
- Possible Tag Cloud
- Very good possibility I'll roll a completely unique template.
Overall I'm very happy with Pelican. I'll of course update as I get more time and experience with it. The next thing that has to exist is a means to publish to S3 via CLI instead of using the console. I know Python/Boto/S3 is fairly straight forward, so just need time to put it all together.