Know those projects built on the technology no longer relevant Or have you seen code that was built on a language which is now obsolete it seems that in the world of software development some trends appear and other old tools and frameworks are forgotten but amid the frenetic change a surprising amount stays the same How can we explain this

The Lindy Effect popularized by Nassim Nicholas Taleb in The Black Swan says that the future life expectancy of a nonperishable item is proportional to its current age Put even more simply the longer something has been around and worked then the longer it should be expected to be around and work in the future

Visualize a classic Manhattan sandwich shop like Lindys Deli the effects namesake Its been feeding folks for generations making it a good bet to remain in place long into the future, This rule also applies to technology for example SQL 1979 and C 2000 are languages that have both stood the test of time while hundreds of different frameworks have come and gone.

The reason is that the basics are useful SQL is the building block of relational databases one of the most fundamental technologies for the storage and retrieval of data C is a generalpurpose language with broad utility and a wellestablished infrastructure of tools and libraries These are the core functionalities that continue to be important in building software irrespective of the new technologies.

In contrast frameworks tend to be designed for a particular use or problem within a language They can shortcut and increase productivity in the short term but they often become linked to the specific language version or libraries they are designed for As languages change and new libraries are created frameworks that were useful when initially developed can quickly become obsolete or incompatible.

This is where the power of learning fundamentals over frameworks comes in Once you have learned the core principles of programming languages OOP concepts and design principles like SOLID you will have a toolkit that is compatible with the passing fashion of frameworks These fundamentals provide a base that makes it easier to learn and change with new technology.

Remember the skills you learned 1015 years ago Most of the core programming concepts you were exposed to then are likely still very much in play Sure the syntax of a language can change but the core concepts variables loops conditional statements and functions remain the same Likewise developed software projects can be powerfully structured using objectoriented design encapsulation inheritance and polymorphism regardless of whether a specific modern framework is present or not.

Jeff Bezos the founder of Amazon is quite known for his emphasis on things that dont change, It helps you to invest in your longterm career growth by focusing on the basics You become a developer who will not only be able to keep up with the constantly evolving technology world but will also be able to contribute to the development of solid and stable software.

This is not to say that frameworks are completely worthless They can be excellent timesaving devices and offer out-of-the-box solutions to common problems But what is important is to know the underlying principles they are based on What tradeoffs do they include A solid grasp of the basics allows you to select the right tool for the job and approach new and changing frameworks with more agility.

Always remember software development is a marathon not a sprint If you focus on developing your understanding of the basics instead of the latest and greatest frameworks you will be wellpositioned to navigate the changing tech landscape for your entire career

References:

     1. The Black Swan by Nassim Nicholas Taleb

     2. Quote by Jeff Bezos