Archive for August, 2010

a successful summer at IBM

This summer, I worked for IBM in Austin, TX and had an absolute blast. Not only was the work enjoyable, but Austin is an incredible city. Definitely more friendly to someone in their early twenties than say, Rochester, MN (where I co-op’d for IBM previously).

Without going into too much detail, I worked on a test automation team. Through the course of the summer, I designed and built a test suite composed of approximately 90 different functional test cases using Rational tools. While there was some learning curve, my previous experience with IBM POWER hardware from my previous co-op with IBM and my experience with the Eclipse Framework was invaluable. All in all, it was a great experience.

I’m sure though that if you talk to most graduate students in Computer Science, almost none of them will say they want a career path that is pure coding like I did this summer and I would tend to agree with that statement. For me at least, that is part of the reason that I am pursuing graduate school, because I want something more than just writing code for the next however many years. But in the future, I would love to come back to Austin in some capacity, hopefully for IBM again.

bug or feature?

It seems to be a common joke among people in the software field whether when something odd happens in a program, is it a bug or a feature? I was working with Rational Functional Tester last week, which is a product based on the Eclipse framework, and came across a situation where I was asking myself that same question. This particular incident involved working with the application using the Java Development Tools (JDT), so its quite possible that this problem infests itself in the common IDE versions of Eclipse.

Long story short, Java projects in Eclipse have a source location and a binary location. The binary location is where source files are compiled to so that they can be executed. One of the common actions in Eclipse is to “clean” a project, which erases all of the compiled files and recompiles everything from scratch. This is particularly useful to improve the performance of binaries due to penalties incurred by incremental compilation. The problem I ran into was that my destination folder for compilation was the same as my source folder, which seems innocent enough to me. Why not store compiled files alongside their source counterparts? But when I went to clean the project, Eclipse decided to erase everything in the binary folders, including all of my source files. It would seem to me that the proper behavior would be to only delete files deemed to be generated by the build engine. Luckily, I had most of my work backed up in source control and on network shares, so not much was lost, but it was still very irritating.

RFT is based on Eclipse 3.3 or 3.4, I don’t remember which, but not a recent version, so I’m not sure if this is present in the current release (Helios). But I plan to investigate later when I have some time to burn…