In school, we recently finished a project in the GUI design course, where we (a group of four people) built an application for grocery shopping, aimed towards elderly people. The tools were quite horrible: Java, Swing, Netbeans, and the currently deprecated Swing Application Framework. In two weeks, a working prototype had to be finished, and for freshmen who just had taken an autumn of two introductory courses in Java, it seemed a bit harsh. After all, the course is about “GUI design” — that doesn’t ring very well together with “Java” and “Swing”.
Anyway, there were four of us, building this application. Everything went very well in my opinion: through the sketches, paper prototype, user testings and finally software prototype we discussed, developed, and weighed different options. Really interesting process. We had big visions about the application’s interface features, but there was this nagging thing in my head saying that it would be hard pulling off all these things in Java and Swing. This ain’t no flexible HTML/CSS/JS, nor fancy Objective-C/Cocoa. In this case, all my skills as a web developer almost counted for nothing. Animation in Swing? I had no bloody clue how to pull that off. Showing/hiding panels? Nope. Fading, tweening, navigational patterns? Hell no. Since I’ve been working solo for some time, I instinctively started to plot things up in my head, but we divided the tasks among us, and each of us set for home with our stuff.
Here’s the reason for this post. I had relinquished control over some key features (very unlike me) and trusted the others. And it worked. The next day, a member in the group came and casually said: “– Um, that sliding modal overlay panel we talked about - I fixed it last night. It’s pretty cool now”. I was really happy then. It was exactly as we had pictured the panel in the mockups. I never would have done it better myself (with some time perhaps). This guy just solved the problem I had been worried about for some time, and it felt great receiving those news.
The moral of the story is that these guys who fix stuff is worth their weight in gold. I realized I’ve been that guy for many, but I experienced it myself in this project. It’s wonderful to be able to hand a problem to a person and know that they’ll go to hell and back again just to solve the bloody problem.
They are the real programmers — stubborn, eager, and thirsty for knowledge, glory and awesome code.