A RAD Server Story
RAD Server and Delphi saved our butts. And by “butts”, I mean our whole business.
We’ve used Delphi since Delphi 2 in 1996. Back then, we built a basic app for managing appointments in Doctor’s offices. We call it DocOffice. Over the years it grew to manage all kinds of things, including billing, insurance codes, the works. We did well with it, deploying to a couple of thousand doctor’s offices.
There were only three of us, and we built it and deployed it when the customer needed help getting set up. It was pretty slick. We architected things pretty well, using datamodules to hold our data access components. We had InterBase on the back end (that always worked great and is a total no-brainer for a doctor’s office) and accessed it via InterBase Express. Pretty straight-forward fat client/back-office server kind of application. Customers loved it, and they gladly paid maintenance every year for the bug fixes and new features. We grew slow and smart, and made a nice living.
But a couple of years ago, our maintenance renewals started to drop. Apparently a number of our customers were moving to a new, Internet based system called DocsOnline. DocsOnline was a totally web based system with a cloud-based backend and a web front end. Doctor’s offices could literally be up and running in a day. They even had the audacity to offer a data migration service that would migrate our database data right to their cloud service.
DocsOnline was a big wakeup call to us. Revenue continued to drop, and we knew we had to do something. The era of the Client/Server application was coming to an end, and we had our whole codebase invested in an application that was growing less and less attractive to new customers, not to mention our existing customers. They were leaving in droves for a service that they didn’t have to manage and administer. We provided excellent service and support, but why would a Doctor pay for a day of our time when DocsOnline was virtually maintenance free?
So we started looking at our options. We looked at ways to create an online client with a REST API backend. There was node.js. There were Java solutions. There was .Net and WebAPI. All were capable, but they all involved a re-write of our entire codebase, and that would literally take years. We didn’t have that kind of time.
Just when we were at our wits end, we got a call from our Embarcadero sales rep, and she told us about a new product that they had -- RAD Server. She told us that it was a REST API-based backend server that let us leverage our existing code. Heck, it turns out that we had the ability to start with it right away with our Berlin Enterprise edition. (We make it a point to stay on the most current version of Delphi.) Sure enough, I was able to build a basic REST API server in literally two minutes using the IDE wizards. I saw the potential right away. We jumped at the great deployment and maintenance offer the sales rep had, and were off to the races.
We got started the following Monday. In just a few weeks we had designed our API and had the basics up and running. Our datamodules converted right over to the RAD Server design almost untouched. We were able to serve up our data as JSON without doing anything special at all.
We contracted with a front-end Javascript developer who built our web client. She had no trouble at all because all of our REST APIs were industry standards. In a chunk of time measured in weeks, rather than in months or years, we had most of our service up and running. We were able to start selling right away because the back-end running in the cloud was utterly simple to replicate, and we could get our customers up and running with a fairly familiar web client and all their data running in the cloud as well. We were beating DocsOnline at their own game. We even stole a few of our former customers back. Nice.
We couldn’t have done it without RAD Server. We literally leveraged large swaths of our code with almost no changes at all. We didn’t have to learn any new languages, and learning REST was quite simple. In other words, we got to use what we already know to build a modern, new tool to create an entirely different type of application that met the competition head on.
Like I said, RAD Server saved our business. And our butts.


Wonderful story, Nick!
It would be nice to feel even many of these stories. The IT world must know that to develop software does not exist only Java and .NET.
It would be nice that even the experts would start to appreciate the power of Delphi and its potential, unfortunately still little known and, perhaps for this reason, snubbed.
Bye, Sandro