A Brief History of TopLink
By: Donald Smith

Introduction

It's been an amazing decade for TopLink, and the next one is looking just as remarkable. It's fun to look back and see how TopLink has grown. We started in the trenches of a consulting organization in the early nineties and today it's a critical piece of infrastructure thousands of organizations rely on. TopLink is there; processing the packages you ship, calculating your telecom statements, managing your networks. Many of our customers are on their fourth or fifth generation of applications using TopLink, having gone through the various software "revolutions" that have occurred.

Our team has grown too; from barely a dozen engineers when I joined to the hundred people we have today. Our user base has grown by orders of magnitude over the years from those early adopters in the financial services and insurance industries through to the unbelievable variety of users we have today.

 I personally have seen the world thanks to TopLink. I've roamed the beaches of Australia, endured the traffic in Mumbai, dipped my toes in the Persian Gulf and wandered lost down back alleys in Sao Paulo. I have been up the Eiffel Tower in Paris and less than 48 hours later been up the Eiffel Tower in Las Vegas. I have pretty high status on airlines. Not only will they kick someone off a full plane to let me on, sometimes they'll let me pick whom to kick off.

We've been through two acquisitions, had twelve major releases, interacted with thousands of users, been through several major programming revolutions, have road warrior stories that will send shivers down your spine - leading to one great product. Please allow me to introduce you to the history of TopLink.

The Early Years

 I'll never forget my first day at "The Object People" (which is where the TOP in TopLink comes from). I had started my career at a telecom company, but found it too stifling. On my first day at TOP someone took me aside and said, "You should go buy and expense a decent chair, here's where you should go." I had gone from a company where a stapler required six signatures to a place where I could pick my own chair.

I picked TOP instead of going to an object database company who had also made me an offer. I was a bit apprehensive as to if I'd made the right choice, but the apprehension didn't last long.

It was lunchtime before I got the burly green leather chair into my office and it was time to meet some of my new colleagues. There weren't many of us at that point, and everyone made an impressive impression. A lot of that core group is still together today. Some kept going in the Smalltalk world, some went on to solo careers, but there are a dozen or so of us who joined from 1994-98 that are still the nucleus of the team.

TopLink had been created in the early 90's as a Smalltalk product. TOP started off primarily as a consulting company and there were several early projects trying to hook Smalltalk to a relational database. Eventually the experiences were formalized into a product and in 1994 "TopLink for Smalltalk" was sold for the first time to USF&G (now St. Paul Insurance).

 I'm glad that TOP was multi-faceted as being a consulting company and having a successful product. It allowed us to constantly integrate feedback from the field about emerging technologies and trends into TopLink. Moreover, it gave us lots of opportunities to get together and share experiences. By the late 90's, TOP had offices in Raleigh North Carolina, Southampton UK, Bonn Germany and Istanbul Turkey. Many of the people from those offices are still with the TopLink team (especially Raleigh, more on that later).

In the mid 90's we started to hear about this "Java" language that was being developed at SUN by a fellow Canadian. As a Smalltalker, it was somewhat a weird language, "mostly" OO, but with C like control structures. There was a lot of internal debate as to whether to build TopLink support for Java. Luckily no one listened to me.

 The Birth of Java

In 1996 the TopLink team got to build a new TopLink from scratch in Java, but this time we were able to apply the lessons learned from the Smalltalk version.

The internal code name for TopLink for Java 1.0 was "Wallace and Grommit". Wallace was the runtime engine and built primarily in Ottawa, Canada. Grommit was the "Mapping Workbench", and built primarily in Raleigh, North Carolina. These development responsibilities still hold today.

In 1997, 3M was the first company to officially buy TopLink for Java. The market adoption for TopLink was swift and strong. It was one of the very first successful commercial Java products. The TopLink team grew a lot over the next couple years.

It was around that time that I became a full time road warrior. A persona of "Big Daddy TopLink" was developed. When teams needed help, "Big Daddy" came to town. I hopped from country to country, filling up passports and building up air miles. I remember once gassing up my car at home on Halloween and then filling up the next time on Groundhog Day. Learned a heck of a lot about the world during that time, and a co-op student temporarily claimed the big green chair.

We quickly began winning awards. In 1999 we received one of our first awards from Java Report as "Hottest and Coolest" Java product. Since then we've won countless awards including recent Java Pro, Java World and JDJ Readers Choice awards.

In 1999, J2EE application servers had significant momentum. We had a lot of companies interested in TopLink's persistence capabilities and we formed a number of partnerships with server vendors around integrating TopLink to support EJB container-managed persistence. In autumn 1999 we released our first container managed persistence support with "TopLink for WebLogic". "TopLink for WebSphere" support soon followed.

Many of our users stuck with plain ol' Java objects (POJO). Many people bought TopLink for WebLogic/WebSphere but in the end developed POJO applications. We began to lobby for POJO based persistence in J2EE, but as a small company like "The Object People", we didn't get much traction. We kept pressing throughout the years however, and now it looks promising for POJO persistence in EJB 3.0.

WebGain Years

 It was a cold wet April day in 2000 when I had the first inkling TopLink was being acquired. Most of the team was asked to be in the office that week, and several people who work remotely were flying into the office. The day went pretty slow and eventually we learned that The Object People had been split into two. The consulting (non-TopLink related) division was sold to BEA, and TopLink was sold to a new startup called WebGain.

WebGain was formed to target the developer market and had recently acquired Visual Cafe from Symantec.

WebGain quickly grew to over four hundred people through both hiring and further acquisitions, and opened offices all over the globe. The TopLink team grew from 30 people to 90 over these two years. I was fortunate enough to become TopLink product manager for most of the time TopLink was at WebGain and those were probably two of the most educational years of my life.

 One of the first lessons I learned was that our licensing model didn't work well with our partners. We had partners like BEA and Digital River who were used to selling application servers and middleware in a very specific way - per CPU. They wanted to bundle TopLink and use the same model. They couldn't manage the nuances of developer based pricing and wanted to bundle and sell TopLink just like any other middleware.

The second lesson I learned was that we had too many different kinds of TopLink. TopLink for Java, TopLink for WebLogic, TopLink for WebSphere, TopLink for Bluestone/HP-AS, and the list was getting ready to grow. We merged all the support into a single product, "TopLink".

I got to see even more of the world during the WebGain years, including a visit to Tel Aviv and other parts of Israel. The team in Germany had been doing a fantastic job with TopLink so I made many trips throughout Europe. At some point I came home and took my chair back from the co-op student and wheeled it into the new office space WebGain had secured.

 I had great visibility into the major application server vendors. I worked closely with major vendors such as BEA, IBM and Bluestone. There were also glimpses inside other application server vendors seeking relationships with TopLink. It was educational to say the least.

In May of 2002, I had some meetings with Oracle about TopLink and support for OC4J. I'd had many meetings with Oracle over the years, but this one was a little different. A month later it was announced that Oracle had acquired the TopLink product and the 90 people related to the product from WebGain.

Oracle Acquisition

TopLink did extremely well at WebGain. We grew the core team from about 30 to 90, and grew the user base exponentially. When Oracle acquired TopLink from WebGain, it's important to note that it ensured everyone related to the TopLink product was part of the acquisition. Oracle wanted the people as much as the technology. The main group in Ottawa, developers in Raleigh, the teams in Europe and people from all over the US became Oracle employees. Oracle had realized the importance of having the industry leading persistence layer as part of it's offering and knew our experience was a key benefit.

 It's been almost two and a half years since Oracle's acquisition of TopLink, and it's been an amazing success. The user base has continued it's significant growth and we've been able to greatly leverage the resources of being part of a multi-billion dollar company. We no longer have to answer questions about company viability like we did as a small company. We integrated the TopLink team with the Oracle Ottawa office, meaning the big green chair had to make another trip across town to the heart of Ottawa near Parliament Hill.

After the acquisition by Oracle, I moved from product management into a field-focused technology role. I speak at and attend conferences regularly, interact with many users and evaluators and have broadened my skill set to include SOA and Business Process Modeling.

A great thing to happen over the past couple years is the market validation for persistence layers in general. The biggest competitor to TopLink always has been and always will be those who don't recognize the complexity of Object-Relational persistence. Those who think building their own persistence layer "looks easy enough", or feel they can "make do" with a basic persistence layer and generally assume it's an easy problem. The awareness generated by the numerous new vendors in this space, and the awareness generated by recent discussion on the POJO persistence model in EJB 3.0 have really helped validate that building your own persistence layer is a bad idea. TopLink growth has never been stronger.

Future directions and Conclusion

The team has continued to grow at Oracle, and TopLink has been expanded in major new directions. One notable new direction is XML support. With the increased use of XML, there has been a real demand for O-X mapping technology. Moreover, many data sources now produce and consume XML natively so there are requirements for O-X persistence layers for the same reasons there is a need for O-R persistence layers. TopLink has been embedded in other Oracle products also, including an upcoming release of BPEL where TopLink will provide database adapter support. In the near future there will be TopLink support for EJB 3.0. EJB 3.0 will standardize the TopLink POJO style of persistence for both J2EE and J2SE applications. TopLink will continue to evolve as our customers' requirements evolve.

The big green chair has been doing well; it'll easily go another decade. It hasn't needed a single piece of duct tape or repairs yet. Perhaps it's because I travel so much and it doesn't get much use, or perhaps it's because I made a great decision a decade ago to pick a quality product with a bright future.

Author Bio

Donald Smith is a Technology Director at Oracle Corporation. He has a decade of experience with object persistence.