Gettings things done in Java – a chat with Eclipse Foundation director, Mike Milinkovich
Mike Milinkovich is the executive director of the Eclipse Foundation. He has been there from the start and has watched as Java has gone from enterprise default, to enterprise headache, to open source saviour. We caught up with him and quizzed him on his past, Eclipse’s future and the business of getting things done in Java…
What was your first computer?
I didn’t start programming until I was in university. I got my undergraduate degree is in business. In my second year, I took a COBOL programming course that had me on a Honeywell mainframe running the CP6 operating system. Despite the fact I started with COBOL, I actually enjoyed programming. I filled all my electives with programming courses: Fortran, Pascal, APL. When I graduated, I got a job at Bell Northern Research, where despite the fact my title was financial analyst, I spent every day programming in APL.
I went back and did a master’s in information and systems sciences. I did it backwards: I got my business degree first, then went back for my computer science. Before they even let me into the program I had to take two full credits of third-year math in night school. That was tough. I would not recommend it. When I went back doing my masters, at Carleton University in Ottawa, they were really big into object-oriented programming and Smalltalk, so I programmed a lot of stuff in Smalltalk. I did my master’s thesis in Objective‑C. I then went to work back at Bell Northern Research in the development group, working in Smalltalk on a Mac. I was also using Gemstone, which was a Smalltalk-based object-oriented database. I worked on what eventually became ObjectTime, which was then bought by Rational, which then became Rational RealTime.
The first computer I ever bought with my own money was a PC. I didn’t get an Apple II or anything like that. I did program on a Lisa while going to school, though.
How did you come to be executive director of the Eclipse Foundation?
In 1989, I got recruited to work at a startup called Object Technology International. I was employee #12 at OTI, and we were acquired by IBM in 1996. For the time when I was working at OTI, I was a Smalltalk developer; we created a product called ND Developer which was a collaboration-based SCM system for Smalltalk developers which eventually became the underpinnings for VisualAge for Java and for Smalltalk. That was acquired by IBM in 1996, so I worked for a couple of years at IBM. My pay cheque always said ‘OTI’. I never got a pay cheque that said ‘IBM’ on it. I left there in 1999 and went to a couple startups. The first was The Object People, the ones who created TopLink, the object relational mapping tool. They were acquired by WebGain in 2000, and WebGain failed during the .com implosion. In 2002 the TopLink piece of WebGain was acquired by Oracle. I ended up at Oracle for a couple of years as a VP in their development group.
In 2004, when they were creating the Eclipse Foundation, I was recruited into this job. I was a good fit because I had a good mix of both technology and business backgrounds. OTI was the group inside IBM that formed the core team that built Eclipse. I’d worked with them for a decade. I hadn’t been working at IBM for five years, and they wanted someone who was not an IBMer.
I had been mostly competing with Eclipse until then. At WebGain they had WebGain Studio, which was based on Visual Café. When I was recruited into the job, there were already a set of bylaws and membership agreements. I wasn’t walking into a completely blank slate. When I came on, there were no employees. I was the first employee, so there was a lot of work to do in terms of creating a functioning organisation… A lot of work to do in the startup phase. Some of the work was transferring the IT infrastructure over from IBM to the Eclipse Foundation: the CVS, the Bugzilla… getting those moved over without any serious interruptions. Part of setting up the foundation was the transition from the Common Public License to the Eclipse Public License: tracking down all the contributors and convincing them to resubmit their work under the EPL was a lot of work. I had to implement the IP policy the way it had been envisioned by the board.
Was there a lot of influence from IBM early on?
One of the things to realise is that the developers who had been working on the Eclipse team had worked extremely hard to build a reputation for Eclipse as a rock-solid platform upon which people could build tools and base an ecosystem. We’ve been growing pretty rapidly ever since the creation, and there were a few moments along the way where people had that feeling of letting go. Now all of a sudden there was this organisation acting as an intermediary. But the IBM team in general were great about it. They embraced the fact that the foundation was a good idea and needed to succeed.
Speaking of Eclipse as a solid platform, how goes the Rich Client Platform project?
The RCP project has been a big success, but I find – in terms of companies willing to talk about what they’re building – I see a lot more adoption of RCP in Europe than in America, for reasons I do not completely understand. The kinds of things people are building on top are many and varied. They’re mostly business applications, especially where a really rich user interface is required. Also, NASA has done work on RCP, in terms of building scheduling and simulation tools for the Mars Rover.
We’ve seen people building the Swiss railway system build a very complex scheduling systems on top of RCP. There’s a very wide variety of things being built on top of it. I think the Rich AJAX Platform (RAP) has been a welcome addition, as well. It gives them a way to deploy a common code base to the desktop and also to the browser. In the Eclipse 4.0 stream, a lot of the value proposition is really for people building RCP applications. The thing 4.0 does is to make it easier to build applications that do not look in any way like a workbench or an IDE. In previous versions, to build an RCP application that didn’t have that explorer on the left side… if you didn’t want to build something that looked like that, it required you to jump through a lot of hoops.