Hype Driven Development 101
This term has turn out to be pretty generic over the past year or so within the packages developers community, that’s pretty apt given its definition. Hype Driven Development refers to choices taken in the course of the development manner, in particular early on, based at the contemporary taste of the week/month/12 months that has the most ‘hype’ around it from the development community. These are important decisions which have ripple results throughout each component of the product, from its price range to its shipping date & satisfactory.
As new technologies emerge, they may be simply attractive to (to developers specially). The feeling may be as compared to that of a baby having a new toy which they want to play with. Don’t get us wrong, this isn’t a bad aspect. Developers have to get excited by means of new technology and have the preference to play with them, learn them, and recognize their strengths and barriers. They open up modern avenues of opportunities that had been previously unachievable, or possibly just too complex to undertaking toward. However, it is equally critical to know which conditions those technologies are first-class acceptable for, and now not try to forcefully use them to your next mission simply due to the fact everybody is enthusiastic about them.
Developers have to get excited by means of new technology
The largest example of this presently is Blockchain. The wide variety of human beings who’ve approached us to build “a few Blockchain detail” into their utility is quite impressive. Even if the product is presently stay, has users, traction and a 12 months long roadmap already in the works, stakeholders are keen to disrupt all of those matters on the way to shoehorn Blockchain into their product. In a significant majority of these instances, Blockchain will add no advantage to their product — in fact, it will be adverse. However, these objections often fall on deaf ears and are met with an intense quantity of resistance. Why? Because the hype surrounding Blockchain is immensely actual. The selection makers are eager to be beforehand-of-the-curve (which may be a great component every so often — however not in this case).
The same may be stated for other improvement technologies that maintain to emerge or evolve and make the legacy stuff appearance weak in comparison. While that may be proper, there is a fee worried with refactoring, or in a few cases rewriting a massive code-base just due to the fact. There are authentic instances where the improve is warranted, but, this needs to be considered from several angles to make certain that the rework concerned can be profitable within the lengthy-run and received’t just succumb to any other new framework or generation inside the subsequent 6-12 months, igniting some other rewrite.
In the case that a new undertaking is being initiated from scratch, these choices are similarly important. Rather than gravitating toward the exciting and brilliant new technologies which might be the talk of the town, we as software builders must be cautious with the generation stack that we decide upon. Several factors come into this decision, along with the project’s real needs & requirements, assets to be had, the team’s strengths & weaknesses, infrastructure, budget, timelines & education concerns to name just a few. Failing to take these topics into consideration and building a product on the today’s and maximum exciting technology simply due to the fact you are shopping for into the hype is a recipe for failure.
Lastly, it is vital to keep in mind that new generation typically takes some years to correctly mature earlier than it is ready for primetime. There are of direction usually exceptions to this rule, but it’s been a preferred rule of thumb that has held up quite properly over the years. Industry guide, thorough documentation, battle tested use-instances and community buy-in are all elements that play a main position in evaluating a generation’s location inside the lifecycle.
In conclusion, we would advise no longer taking those selections gently and focusing extra on Performance Driven Development instead of Hype Driven Development. Focus on the necessities of the venture, as not all tasks need you to have the cutting-edge cutting aspect generation with a purpose to maximize its gain. Building custom software and programs offers a bonus over off-the-shelf products because they’re tailor made for the requirements and now not bloated. Utilizing generation that is pointless for the assignment is counter effective and misses the factor entirely.