Build Valuable Systems, Better and Faster

Two Decades of Systems and Architectures

It is now the end of 2015 and for decades I have been reading and writing software in both small and large companies, in startups and established enterprises, and in multiple industries. My background includes several early languages (C, Basic, Pascal, Fortran, and specialty database systems), but I truly became a serious engineer in Smalltalk. After doing several systems including IRIS-2 / CargoSmart, BidLink, and others, I switched to Java as my primary language. Since then, I have also worked in Objective-C, Ruby/Rails, JavaScript (client and server), Python, and various other languages.

By building so many systems over the years, I have seen many choices and their impacts. Sometimes the choice was before me, commonly it was mine and my team, and sometimes people made choices after I ‘passed the system on’. This series is meant to document as many of these systems as possible. Previously I spoke at conferences and disseminated some of our insights. I may return to that venue, but wanted to get more than a decade of work visible.

The systems, applications, and architectures documented here will eventually include:

  • Evant Advanced Planning: A multidimensional planning system
    • Java, JavaScript
  • Velidom Factory: A highly virtualized and automated software development environment / factory
    • Java, VmWare ESX, Subversion (as part of the infrastructure), Flash/Flex, and Eclipse plugins
  • Winster: A cooperative online gaming and social site
    • Java, Flash/Flex, MySQL
  • FooPets: A virtual pet entertainment site
    • Main Site:
      • Ruby, Rails, Maya, Flash, iOS, etc.
    • HeartPark: A 3-D world / game
      • Unity 3D, C#
  • Vive: A mobile health and wellness application
    • Grails, Java, YUI
  • Epocrates EMR: An electronic medical records application
    • Ruby, Rails, iOS
  • PeerCase: A mobile-first medical communication application
    • Grails, Sencha
  • Rumble: A platform to support free-to-play and hiqh-quality games
    • Grails, Kafka, Redis, eJabberd, and a host of other technologies
  • SnapArch: An architecture to build out a collection of services and applications on top of them
    • Spring, Angular, etc.
  • ABC: An analytics platform for massive scale machine learning
    • Weka, Python, Grails, Amazon AWS services
  • ADD: A recommended development & delivery environment and platform for The Gap, Shaklee, and others
  • IRIS-2 / CargoSmart: An enterprise container-shipping logistics system
    • Smalltalk, GemStone, C++, Java, etc.