New blog system design

I’m kinda getting tired of WordPress, and so now I’m thinking (again) about creating my own blog system. Of course I should go around looking at what’s out there instead of rolling my own, but I want to write some kind of web-app anyways, so I might as well think about how I would build it.
I have some sort of feature list in mind, but it is heavily based on my dissatisfactions about WordPress. I’m not sure that’s the best way to go about coming up with a feature list, but at least it’s a start:

  • Unified representation of Posts and Pages. Everything whould be a ‘post’ and whether its actually a blog post or what WP calls a ‘page’ is just a configurable attribute. In WP, Pages seem like an afterthought. You can’t even set categories for them. I agree that their presentation should be different from chronological blog posts, but that doesn’t mean they should have less info.
  • Support my common use cases: Uploading images. Not generic file upload (well that’s somewhat useful too), but I want a specific easy-to-use interface for uploading images, since it has to be a super-common thing to do with posts.
  • Show a few comments along with the post: I know, I’m sure there’s some WP theme that does this. I wish it was a generic on or off feature.

Those are my biggest ‘itches’ that I wish to scratch. I think I’ll probably think of a few more.
My plan is to start experimenting with Ruby-on-Rails to see how hard coding something like this is. I guess it’d be slightly nicer if I could find a mature Python equivalent, but I won’t hold my breath. I learned ruby at some point in the past, and re-learning it should be too hard. It’s probably a good mental exercise anyways.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s