Thursday, May 15, 2008

11 This is the End

It's been a long time in coming; the dust has settled, exams are finished and we've received our final grade for the project. As expected, the grade had to reflect the fact that the project was never completed and obviously suffered as a result. Nevertheless, the feedback we received from Graham was very fair, helpful, and helped to highlight some of the areas in which the project was lacking - most notable was it not being finished, I suppose.
To conclude this record, I'll finish as I've progressed - by discussing the aspects of the project attributed to me, as I don't want to be speaking for the team as a whole. Hindsight is a great thing, and there are a good few things I would have done differently had I known at the beginning what I now now.

Firstly, I should have first checked that everything we needed was on the current buildroot revision, and upon finding that something was missing, I should have updated immediately. Flash first, ask questions later.
Luckily enough, because I had documented what I was doing as I went along, I had reference points to work from when I did update and things went wrong, but if I hadn't been logging my actions I would have been back to square one. Since the buildroot update did actually cause a lot of problems in the end too, flashing early would have given me more time to work up a backup plan for the aspects that ended up broken - namely bluetooth, for which I came up with a backup but the rest of the team didn't have time to implement.

Secondly, integration was an absolute nightmare. Although we're obviously not blameless in this, I would partially put this down to inexperience - and this would be supported by the fact that some other teams ran into integration problems on their own projects. We hadn't really any experience with putting a fairly diffuse project - in this case, using new hardware, and getting C, C++, and Java talking - together, and we'd assumed it would be a cakewalk: it wasn't. As far as my role in this was concerned, I managed to get the given programs compiled and working on the gumstix, so I was a bit happy with this, but obviously it's pretty useless if it's not all working.


I would be lying if I said it wasn't a bit of a pain working on the gumstix, especially when things went wrong. However, I would also be lying if I said I didn't have any fun while working on the project. For anyone reading this who may be working on gumstix for a project, learn from my mistakes! Use the many resources on-line and post to the mailing list if you're having problems - hopefully they'll be more helpful in your case than they were in mine!
Thanks to the rest of the team - Semir, John and Donal - and thanks to everyone who lended a helping hand with the project, most notably Graham and Lorcan. It's been enjoyable keeping this blog, and may it serve as a lesson to any potential gumstix projects in the future:

Abandon hope all ye who enter here


Just kidding ;)

~Fin