OK, so if you don’t know me (or even if you do) you might be asking yourself that question. Why do I talk about Eclipse in one post and then Microsoft in another? Well I’m trying my best to be objective and most of all, learn something.
I’m reading a lot about Microsoft these days because they are doing some truly extraordinary (for them, anyway) things. They are letting their developers loose on their blogs, describing key technology that is going into Microsoft’s next operating system, Longhorn. Some of it is bleeding edge software engineering. Other stuff is embrace and extend. It doesn’t really matter … in two years it will be out there in production and even if I’m primarily using Java I’ll have to deal with it in some capacity. How can I defend my choice of language/platform when I know nothing about the competition? So I’m learning about it now … and it looks like pretty cool stuff.
Eclipse I like from a technical standpoint but I also admire the coordination involved to get to the end product. There’s some good software engineering lessons in there — and it’s easy to learn them: the project is wide open. So from a curious future software engineer’s perspective, Eclipse is a gold mine of information.
It’s the same reason I got a Mac. It’s no secret why Mac’s are the new geek toy: they have a strong Unix core with a candy-coated usable shell. What a great mix — a lot can be learned there too.
So I’m not rushing to hitch my wagon to one train. It’s good to get your fingers into everything and experiment. See what works and what doesn’t and learn why. Recognize what people will pay for. Learn to compromise and critique. This is what will make us successful software engineers.