For quite a while now my "personal" blog hasn't interested me much. I read other people's entries, and it's a good way to stay up to date with what people are doing, but I don't really care to post much other than photographs and rants. I'm going to start using this blog to publish lengthier entries on various things I've discovered while programming.
Anyway, that's the plan!
I've been working on a system that parses (and then interprets) Google Transit Data Feed information. My first shot at this used the ORM Storm (by the Canonical/Launchpad people). That wasn't a good fit, so I've rewritten it to use Django.
I think most projects should start up with a write, then immediate rewrite. It should almost be part of standard software development practise. I'm much happier with the code now. Printing out the timetable for any given stop is about twelve lines, and that includes the "logic" of figuring out what times buses will appear on any given day.
As this has been a spare time project, I've taken the liberty of absurdly over-engineering the whole thing. I've come up with some neat patterns for Python programs using metaclasses. Those ideas will be the subject of my next post, at which point (once people find and read this blog) I'm sure I'll get flamed.
Anyway, that's the plan!
I've been working on a system that parses (and then interprets) Google Transit Data Feed information. My first shot at this used the ORM Storm (by the Canonical/Launchpad people). That wasn't a good fit, so I've rewritten it to use Django.
I think most projects should start up with a write, then immediate rewrite. It should almost be part of standard software development practise. I'm much happier with the code now. Printing out the timetable for any given stop is about twelve lines, and that includes the "logic" of figuring out what times buses will appear on any given day.
As this has been a spare time project, I've taken the liberty of absurdly over-engineering the whole thing. I've come up with some neat patterns for Python programs using metaclasses. Those ideas will be the subject of my next post, at which point (once people find and read this blog) I'm sure I'll get flamed.