Technical debt is the single largest obstacle to innovate according to research done in Norway. Today we know how to avoid technical debt, at least in greenfield projects. This doesn’t imply we don’t accumulate it on new projects though, due to humanity’s nature being to gravitate towards repeating the same mistakes over and over again. But at least in theory, we know how to avoid it, and the recipe is quite easy actually.
- Never reinvent the wheel, instead use pre-existing building blocks where you can
- Use micro services where you can to loosely couple together your end result
- Automate as much as possible
- Outsource as much as possible
If you follow the four above simple guidelines, technical debt cannot occur, not even in theory. This is because what you’re doing is to basically “outsource” your technical debt – Either to “the machine” (automation), open source libraries (components), or 3rd party vendors (components and outsourcing). I happen to run one such company, who’s sole purpose is arguably to “take unto ourselves your company’s technical debt” for a fee. The idea is that this holds value for others, freeing up internal resources, such that they can innovate more freely, without being hindered by their internalised technical debt.
By externalising technical debt, the debt doesn’t disappear, it’s simply moved to a 3rd party – So no natural laws are violated in the process. In fact, we’ve seen this happen hundreds of times throughout computing history before. For instance, if you’re a mature company, you’re probably using Microsoft Teams or something similar to organise your teams. Creating your own alternative here is madness. You could easily apply your 10 best developers at the job for months, without even coming close to the quality of a pre-existing solution such as Microsoft Teams provides you with out of the box.
What’s true for products is true for micro services
However, the kicker which few people realise, is that what’s true for products such as Microsoft Teams, is also true for micro services. Today, we can assemble products from pre-existing components, loosely tied together as micro services, do some wiring, add our own business logic on top of these components, and we’ve got ourselves a unique application – The same way you build a unique company from pre-existing products. And the above basically sums up my company’s value proposition.
The above results in that you no longer need to maintain your company’s chat client, because you bought it as a pre-existing micro service. For every single component you outsource to either open source projects, or 3rd party vendors such as us, you reduce your internalised technical debt. When you have externalised a significant portion of your technical debt, you are free to innovate more freely.
A NoCode Micro Service AppStore
We just recently launched “The Bazar”. The Bazar is basically an AppStore for Micro Services, fully integrated into our flagship product; Magic Cloud – Which is 100% Open Source and free of charge to use. Click the link below to download it and try it out.
However, starting out from our latest release, we now charge a fee for Micro Service modules. This implies we’ve got financial incentives towards delivering great products, justifying us spending time on improving said products. Compared to what it would require from your in-house resources to develop these components, the fee is really small. For instance, you could easily have one of your own developers spend months on implementing a badly implemented enterprise chat client module micro service. In the Bazar you can purchase one for the fraction of the cost associated with creating one from scratch. And we intend to run our Bazar as agile as we possibly can.
Crowdsourced Agile NoCode Micro Services
There doesn’t really exist a good word for what I am about to explain, but we intend to run our Micro Service AppStore as an “Agile project”. What we mean by that, is that if you’re not happy with some micro service module, you get to suggest improvements to it – To some extent. Hence, none of our current micro services are “set in stone”, but rather half baked, which is to your advantage actually – Since you get to influence its future feature map.
The idea is that most features making you happy, also makes others happy, resulting in that you get to share the cost of development, with other companies. Since most features suggested by you and your company, would be features others probably would be happy with – This results in a “customer driven micro service Bazar”, where features are implemented almost through the process of Darwinism and Evolution. We currently only have 3 such micro services.
- Babel, a chat client micro service
- Babel Mail, an email sender micro service
- Babel Fish, a translation micro service
And all of these are kind of in a “beta state”, which again if you’ve followed my above argument, should be easily understood as being to your advantage!
Hence, we’re looking for a few brave developers, and/or companies, willing to try out this brand new model of software creation, where arguably the lot of your technical debt is outsourced to us. Simply put, because we know that if we can please you, we can please 80% of other companies out there with similar needs. So, head on over to ServerGardens.Com, and let’s start the dialog 🙂