Instant legacy
Quick throwback
I have been writing code for a long time. I've been through thick and thin, even before "the internet" and I was rewriting code from paper books. Yeaaa, I've done some things I'm not proud of. Things back then went slow, we waited for Microsoft to come with an update for Visual Basic 5 so I can use my modem from code to call my friends from THE COMPUTER. All was peachy, no sudden changes, no paradigm shifting, OOP was just making a mainstream break through. I'm saying, existing developers were happy.These days
There are ten different frameworks for even the smallest of tasks... Hell, a new JS frameworks is popping up every 6 Months. New kids on the block don't even know what an object is these days. Functional programming is making a come back and everybody is constantly letting arrows -> -> -> (nerd jargon, sorry I had to)
Should we keep up with the trends
Not with the minor updates, but surely consider the major paradigm shifts. And this is not only my opinion, this has been a debate in our circles for a long time. A new shiny and well advertised JS framework is not a reason to cause an earthquake on your project and team. However, as a good Software Architect, one should foresee the trending and adjust team's mindset to easily accommodate the major paradigm shift when they inevitably happen.
There are several common pitfalls at this day and age, that lead to writing what we call Instant Legacy Code:
- Thinking of the project as one unit of matter, instead of small pieces of service bricks
- Thinking of your team as machine, that only needs attention when it breaks
- Not thinking about Unit or Automated testing
- Not thinking about CD/CI, doing everything manually
- Not having coding standards, If it does the job, just keep going!
- Not using well known code stack or language standard frameworks/libraries
- Not thinking about containerization, scalability, etc...
- Not thinking about caching and security
- Not optimizing during development
Comments
Post a Comment