Wednesday, November 07, 2007

EclipseWorld 2007 Day 1

First day was Tutorial day. After having a wholesome breakfast of eggs and English muffins, I went to the Europa World Tour, and got to learn a few interesting things:

  • Europa and Callisto are Jupiter moons. In fact, all future Eclipse releases will be named with Jupiter moons, which leaves us with about 61 moons.

  • Eclispe does not only refer to the IDE or SDK, but also the platform, community, technology projects, eco-system, etc...

  • Eclipse can be run headless, boiling down to the plug-in framework. Some application servers are written on top of headless Eclipse like Websphere. That way, Eclipse is used as an OSGI component framework

I also attended a talk about Web Tools platform and saw how you can visually design JSP and JSF pages with Eclipse 3.3 and easily link them to managed beans.

After lunch, I attended Robert C. Martin's tutorial on Test-Driven Development. I entered just when he started talking about Fitnesse, an acceptance testing framework based on Fit. It was good to learn that every acceptance test can be written with Fitnesse by QA people and stakeholders after a little bit of training.

I asked a question about contrasting UI testing with Acceptance testing. What I learned is that if you test all your business logic through the UI and then make a simple change in the UI, you break many tests even though the business logic may still be correct. Bob Martin advised us to use UI testing only to test presentation logic, and leave business logic testing to Acceptance tests. In fact, Acceptance tests done test-first end up producing an application API completely decoupled from the presentation.

The day was concluded with a panel talk that included Mike Milinkovich from Eclipse Foundation, David Intersimone from Codegear, and Bob Martin from ObjectMentor. They discussed a number of topics. Bob talked about how when tools offered refactoring functionality, they lead developers towards following better practices due to how easy refactoring became. On the other hand, developers that are working with new dynamic languages like Ruby are leading tool makers towards providing new features to match what is available for static languages. Mike emphasized that an upcoming major version of Eclipse (e.g. 4.0) must definitely be faster, simpler, and lighter to succeed and fulfill developers' needs. David said that with Eclipse or any other platform, what matters the most is always getting better at fulfilling the user requirements and engineering software of high quality.

Stay tuned for more. I will also add photos to my blog posts as I find the time.

No comments: