So I guess its that time – reading week just finished, and we are halfway through the term – yikes!
In the Eclipse4Edu camp, we are starting to get into the thick of the project. I won’t lie, it was a pretty slow start… programming the Eclipse framework is large, complex, and has a layer of abstraction for everything. I like to consider myself fairly competent with Java, but the Eclipse framework almost always has a different (sometimes non-intuitive) alternative solution to everything. Also, we weren’t really given a set of goals or objectives to accomplish by the end of the term, so I can’t really say if we are “on track” or “falling behind”. However, my personal goal since day 1 has been to get a working IDE that a new programmer can sit down with, and not feel overloaded, while learning important programming concepts. I felt the “Java Lite” perspective was in pretty rough shape when we started the term, so I’ve been focusing all my effort into fixing that. I’m unsure if we will be able to accomplish this by the end of the term, but we are definitely taking steps (and perhaps leaps) in the right direction. We’ve slowly been cleaning up the backend code (a lot of it was ripped from the internal stuff, and had a lot of functionality we didn’t require). Even small tasks are sometimes taking longer then expected, due to complexity of the framework.
I feel like it’s hard to describe what exactly I’m learning; but coming from other team projects (done locally), the open source ideologies, attitudes, and way of approaching problems have definitely been a unique experience thus far. The whole submitting a patch, and waiting for someone else to verify / upload it (and he’s a pretty busy guy), is sometimes annoying – a little 1 line patch may take weeks to get commited. Thus leading to having to manage multiple patches, has been a headache, but we are slowly learning to work within the system (it would be nice if we got commit status at some point before the end of the project!). But I guess this is the open source way; we can’t have just anyone submit code. Also, my googling skills have also been put to the test on more then one occasion… my time spent trying to figure out a solution or find help towards one, is usually 500 times more then it takes actually implementing it. Sometimes you get lucky and theres a goldmine of help and (decent) documentation for a particular eclipse development area, but more often then not its a terribly vague description (and / or doesn’t work as it was meant for Eclipse 3.1 and not the current version).
So overall, its been a nice change of pace, and a challenging new environment to work with – what more could you want from a school course / project?
Not really a comment to the UCOSP course itself, but it would have been really, really, beneficial if the previous semester’s group left some sort of “knowledge transfer” document. I’m now loaded with a bunch of Eclipse framework tips, strategies, and general knowledge; I think it may have helped cut down the learning phase and left more time for development if we were brought more up to speed instead of just dumped into the project and told “Go!”. (I guess I just volunteered myself to write one for the next semester..)