Home Blog The Benefits of 20/20 Hindsight

The Benefits of 20/20 Hindsight

Platform, Posts, Software Development, Supply Chain

Choosing the technology for a long-term project is a risky business – this season’s hottest software may be horribly out of fashion a year or two from now. That’s a big problem if you’ve built your supply chain on it; no-one wants to upgrade their software platform very often.

It’s a lot easier with the benefit of 20/20 hindsight. If you were building a new enterprise application today you’d choose a web architecture for maximum flexibility in deployment (i.e. servers either local or in the cloud, clients on any kind of device running a browser). On the server you’d probably choose to build on a software ecosystem like Java since it runs on any hardware and has wide industry support. But a lot of enterprise software vendors chose something else when they began their long-term development projects and are left regretting that now.

So I guess you could say that in Tecsys we were prescient, lucky, and probably both when we chose the web architecture and Java more than a decade ago.

Nowadays the risk and uncertainty is in the software for mobile clients.

Building mobile client software that runs in a browser allows us to bring all the power and personalization provided by our supply chain platform to any device: Android, iOS, Windows, even BlackBerry. And as the HTML5 standards are ever more widely supported by browsers the web clients become more sophisticated and capable. But, at the time of writing (muddy March in Montreal, 2015), there are still some things that native iOS and Android apps do better than browser apps: their look and feel is more consistent with other apps on the device, they can operate offline when disconnected from the internet, and they interact efficiently with smartphone hardware such as cameras or accelerometers.

So in Tecsys we’ve chosen a dual strategy: most of our clients are browser-based but we provide native apps for specific scenarios that need the capabilities just mentioned. Our Delivery Management app for Android is one example of the latter and, happily, Java is the development language on Android so it’s a familiar environment for us.

However the challenge doesn’t end there, because choosing the software technology for browsers is also risky. The common denominator is JavaScript, and it’s truly a lowest common denominator: widely used and runs everywhere, but as a programming language it’s pretty yucky. But for the time being we and the rest of the software industry are stuck with it until a better technology gains widespread adoption. In Tecsys R&D we really like Google’s DART and would love that to be the future way of building browser applications, but its adoption is slow so we’re not betting the house on it just yet.

If you’d like more information on these topics I suggest you:

  • Check out the state of software in 2014 by Tim Bray, written in his inimitable earthy style.
Back to List View