Is technology different from any other tool?
Years ago I received a gift of some old tools, a hammer, saws, screwdriver, spanners and so on. They all dated back to the period around 1945-1960. After some sharpening and cleaning, all were perfectly serviceable and have been in use since.
Recently I was asked by a client to look at an old system.
It has a number of parts:
It has a number of parts:
- Relational database back end
- User interface hosted in an executable and also as a series of AddIns to Excel
- Some middle tier components to do some heavy lifting
- An embedded scripting engine to allow user-defined workflow operations to be injected into the normal workflow at pre-determined hook points
- A compliance library to run parameter based reports on portfolio
- Series of loaders to load data into the database
- Series of reports to extract data from the database.
In essence, the system is a small-scale buy-side OMS, due to the use case of the firm there is no FIX connectivity and the small number of concurrent users along with their business model mean that there is no need for a complex method of ensuring consistency while supporting concurrency.
The main code base dates back to 2002-2003 and includes:
When looking at the code I was faced with a simple problem - that the technologies employed were old and in some cases deprecated and/or no longer supported. Without going into a lot of detail, the client requested that a full technology refresh be the preferred option and so a re-write is ongoing to a stack including:
- A middleware layer to be confirmed, AMQP based and/or Solace Systems
A further extension has been requested which is a FIX engine interface to allow orders/RFQ/quotation/execution/allocation workflow to be performed. That's easy for me to do and is in progress.
The point here though is that the work done in the past outside the relational database is pretty much all throw-away. And there is the point - that within many other endeavours the tools used in the past are still useful many years into the future. Within IT so much of what has been used is no longer useful and is in fact baggage.
The relentless pursuit of the new and rejection of the old is characteristic of any field of rapid technological progress. Yet how many business managers are willing to pay for this on an incremental basis and instead lurch from famine to feast in budgets?
Oh, the buy-side OMS, it's one I wrote myself. Interesting to see my old design patterns and code comments and how much of what I do has changed.