I pushed really hard to get VisionLink to move off of FileMaker Pro and onto PostgreSQL, though any SQL database would have made me happier. After a lot of back an forth it became clear that they were not going to budge. It also became clear that I couldn't stand to work with FileMaker Pro any longer. That's ultimately why I left in the Spring of 2000. I was convinced that they were using the wrong technology and I was tired of having to work around it. More importantly I felt stifled and claustrophobic in my professional development. It was a pretty hard choice to make because I really liked my coworkers and really believed in the company and in the products. I still do, actually.
The job with Spacial (later PlanetCAD) was all that I could have asked for professionally. Right off the bat I was thrown into a project using PHP and MySQL on a linux box. I did my development in emacs. I introduced the use of version control for web apps. I also spent some time helping to automate the importation of an XML news feed. A little bit of cron, perl, XSLT, and a python module for zope. And then they decided to move everything we were working on to Java and Oracle. That led to Turbine and other Jakarta goodies. I couldn't ask for more...
... except for the fact that the company was in an irrecoverable tailspin. In addition to all the cool technical things I learned along the way I learned many negative examples about business. PlanetCAD had the right technology. But it completely failed as a business. Every decision was a foolish gamble striving to recover ten-to-one returns for the investors to make up for what they had been loosing. Over the same period .coms were crashing all over the place. The wreckage was profound.
VisionLink powered right along. Part of that has to do with their customers. The non-profit business ecosystem runs under different cycles than the commercial world. I'll take a fair bit of credit for some of the technical suggestions they did adopt. They agreed to move to an ASP business model. When I started, a significant chunk of my work was managing the servers which were installed remotely at the client's ISPs. Before we began gradually pulling them back into our own house there were probably twenty-five servers I was managing through Timbuktu. At the same time we were replacing the remote servers with our local server farm, we modified the code to work under virtual hosting -- supporting more than one community on a single piece of hardware. With all the servers relocated it was easy to throw hardware at the problem when a community outgrew their little slice of a server. The communities that outgrew their systems would get moved onto dedicated and spiffy new hardware.
But given the lessons at PlanetCAD and the accompanying hail of dot bombs, the lion's share of VisionLink's success has to go to their business savvy. They paid careful attention to maintaining excellent customer support and building relationships with their customers. That was a real business priority and not just rhetoric or marketing. They kept expanding the revenue stream in sensible ways and made sure those revenues covered salaries, rent, long distance phone bills, the expense of the new hardware, and so on. And they made exactly the right decision to not change technology when I pushed so hard for it. The revenue stream wouldn't have supported the complete overhaul I was suggesting. And the customers were served just fine with FileMaker Pro on the back-end and regularly expanded hardware.
It's too bad that my professional development needs didn't match with VisionLink's business needs. But I'm glad we finally figured that out and went our separate ways. I'm pretty sure we are both better off for the change. And I'm happy for their continued success. If you happen to be involved in workforce development efforts or education reform you should look at the tools and services they offer. You can most definitely trust that you will be well served, and you can trust them to manage their business and not drive it into the ground. They will definitely be there as you grow.