Dec 13 2005
Refactoring and Correcting
Spending a lot of time at the computer has one big benefit: I get a lot done, or at least can do :-)
Last night I spent a few hours while watching TV and chatting to friends refactoring the forum software I have written, which eventually will be used to power the universitydancesport website. Its called paso and is coming on very nicely, though pretty slowly as its very much a side project while I do my PhD corrections. I had bumbled into my first Ruby On Rails project not quite sure how to go about it, and still not feeling very confident with the eXtreem Programming philosophy. I ended up with one big forum controller than did everything, boards, topics, posts, all done in one long file that was getting unwieldy. I realised that putting everything in one big file was a mistake, and that boards, topics and posts should each have their own controller. So I did just that. It was easy (if a bit dull), and thanks to my test suit (which is nearly twice as long as my actual code!) I’m sure everything still works. Cool. The next step will be some form of access control, watch here for details
Today I started on my corrections. Much of the day was spent making sure all the LaTeX source files still worked, getting the version I submitted checked into CVS and tagged all nicely (which took quite a while, the file system was convinced the files were in CVS, and the CVS system was convinced they were not!). After that I had to get LaTeX working on the new Linux install I set up between submission and the viva. With that all done, and after the minor panic when my thesis shrunk to 11 pages for 5 mins, but its back again now. I then had another go at going though the corrections, and came up with 13 stories, each one a small card with a task to do. When I have done them all then I will have done all the corrections. One of them I might write out as two or more new stories as I cant’ see myself doing it in one day. So if I write that one out as two new stories I will have 14 stories, each of which should take about a day (roughly). That means that in theory I can do the corrections in 2 weeks. Allowing for how any project always takes longer than expected, I might just get it done within the 3 month limit :-)
Oh I did actually do some corrections today as well. I changed the structure of the top levels (chapters etc) to reflect the new structure, and started moving some of the larger blocks of text to their new locations. Tomorrow I will try and complete one of my stories, and get that one step closer to finishing.
Technorati Tags : rails, ruby, refactoring, phd, thesis, corrections






Does creating the story cards help, I normally just estimate time and value. I should start splitting
my work down into one day chuncks to help ensure that estimates remain realistic.
When I moved to Japan my todo lists went out the window, the problem was that most of my day was filled with “new” tasks that I had little or no experince with. I am unsure of how to plan with little past experince to guide me planning. Tring a little of everything works but I don’t need a plan to do that, am sure there must be a better way.
The book on XP says
We like cards because they are simple, physical devices that encourage everyone to manipulate them. It’s always that little bit harder for people to see and manipulate things that are stored in a computer.
And indeed, i did get my little pile out of cards today, and spread them out on the table for my grandfather, who know thinks i know what I’m upto, and has an idea of whats going on. Maybe that didn’t really help me, but it certainly made him feel better.
Having said that though, computers are great when the people on your dev team are spread out a bit. I’m developing some software called Paso, for running a dance club website, and I have set up Trac, which is a cross between an issue management system and a wiki. Its design concept is to make the configuration as minimal as possible, so you can’t waste hours setting it up. I really like it. If your intersted you can have a look.
As for not having much past experience, XP’s theory (and this time I’m not so sure I agree, though I might just have it wrong) is that assume this week you will do as many things as you did last week. The nice thing about this is that its self correcting. If you have a bad week and find everything is taking longer than you though, next week you will be trying to do less things. On the other hand, if things go well and you do lots, you know you can probably repeat that next week. The bit I don’t quite get is I’m sure that it only works if every task is expected to take the same amount of time…
Maybe when I read the next chapter, on choose tasks, I will know more!