Mid-nineties
In the mid-nineties, we certainly did not have the luxury of big video conference systems or even to chat with customers to clarify things. During this era, we still had to rely on a fax machine and later email to share information with customers.
Y2K
Then came the millennium and the big worldwide scare that all computer systems would stop at midnight. The Y2K problem was that just two digits were used to encode the year in a date (storage was extremely expensive at this time) which would lead to a major problem in most software systems as the 99 would become suddenly 00. So the industry focused on the productivity challenge. New approaches in architecture like Model Driven Architecture (MDA) would now abstract the business models from the applications and have cartridge-based automatic code generated. Huge efforts were spent on building the toolsets and implementing MDA based applications.
Agile
The Agile manifesto excited developers with a new approach to software development: an iterative-based development effort got traction which gave the opportunity for such practices as Extreme Programming. The typical waterfall model was extremely risky and very few projects actually managed to be finished in time, on budget or have the right quality. Products were often not validated with the customers before release, so there were even fewer projects that made customers happy once release. And so more and more projects were started based on Agile methodologies like Scrum. The improvements were so significant that the practices, once part of the Extreme Programming wave, like pair programming, unit testing and refactoring were considered the de-facto way of building software.
Rich Internet Applications
At the beginning of 2000, Microsoft further developed their Internet Explorer browser which allowed for the creation of a new type of web application supporting more complex and very fast web usage. This approach was named AJAX from Asynchronous JavaScript and XML, and it started a new revolution with Rich Internet Applications. It eliminated all the complexities of the deployments of graphical applications and allowed new concepts like SAAS (Software as a Service) to be developed. In 2005, we also started with our first dedicated team of front-end developers, and our first object-oriented JavaScript application framework that allowed Progress 4GL developers to build Rich Internet Applications in no time.
Since all the Services Oriented Architecture efforts that began with the WS-* group proved to be too complex, and with the advent of JavaScript applications, REST-based APIs have become very important.
iPhone
With the release of the iPhone in 2007, a new revolution began. PDA devices had been available in the market for quite some time using operating systems like Symbian, Windows CE or Palm OS but they did not manage to get enough traction to withstand the test of time. In 2009, we were building the first native applications for iPhones followed by Android and Blackberry. For the majority of Yonder’s enterprise customers, it just did not make sense to rebuild the same application multiple times as the typical operations were quite often related to a bit of data processing. Commercial hybrid application development platforms promised us they would bridge the gap, but they did not always deliver on that promise. Luckily HTML5 and JavaScript were the way to go for the majority of mobile enterprise applications thanks to open-source projects like Apache Cordova, JQuery Mobile, Angular,…
Open-source
Open-source has also been one of the stars of the last decade. Although the concept seemed to be around forever, it really gained attention after Eric S. Raymond published ‘The Cathedral and the Basar,’ a reflective analysis of the hacker community and free software principles. But it wasn’t a smooth evolution. At the beginning of 2000, Microsoft, then headed by Steve Balmer, tried its utmost to bury the concept. Remember the SCO / Linux controversy, and the FUD (Fear, Uncertainty, Doubt) campaigns targeted towards Linux especially, and open-source and free software in general? Still, open-source couldn’t be stopped, and thanks to that, today most enterprise software contains and relies on open-source for delivering cost-effective value. Starting with the numerous libraries and frameworks that we rely on during a typical development process. But also new open-source database systems that we deploy on our open-source operating systems. And we can now use practices such as continuous integration and delivery that were built on common (open-source) toolsets like Jenkins, Maven, Git, and so on. The whole DevOps movement has allowed, supported by open-source, the entire industry to push towards lean and lean enterprise with continuous delivery based on new emerging technologies such as containers. Today most public clouds are based on open-source software and toolsets so that any company in need can easily reproduce a private cloud relying on available platforms and toolsets.
Remus Pereni, CTO Yonder
STAY TUNED
Subscribe to our newsletter today and get regular updates on customer cases, blog posts, best practices and events.