H. Jun Huh

Why We Should Be a Bit Wary of Technological Conservatism

Translated by GPT

Reasons to Be Cautious of Technical Conservatism.

Python is a 33-year-old language. JavaScript is a 29-year-old language. Even the React library, which is credited with changing the frontend paradigm, is 11 years old.

The technologies driving modern software are mostly old. As they age, they undergo numerous revisions to become stable, and their stability leads to widespread use.

Software developers are often thought of as progressive people. We imagine them eagerly trying out and getting excited about new technologies. However, new technologies often remain confined to side projects and take a long time to be used in actual services or become obsolete.

Perhaps that’s why the software industry often opts for technical conservatism. So when should we adopt a perspective of technical conservatism? My answer is as follows:

  1. When prioritizing business value.
  2. When hiring at the senior level.
  3. When adding new features without causing issues.

However, this can lead to an overly business-centric view. While maximizing business value through software is undoubtedly a good direction, extreme technical conservatism can lead to convenience-driven development.

Recently, I was shocked when I saw a database table at work. It was developed while ignoring database normalization principles. Data columns were stored in JSON Text format, and the data was parsed and retrieved on the frontend, making it prone to bugs.

Software is akin to an organism. It requires frequent updates and periodic refactoring. This reduces the likelihood of bugs when new features are added and helps maintain productive code. In the long run, it also aids in maximizing business value.

I believe extreme conservatism leads to convenience-driven development. Software developed for convenience will eventually develop holes, and addressing those holes with the same convenience-driven approach only exacerbates the problem.

Contemplating good code leads to studying good architecture and technology, which sometimes gets applied to business.

For example, our company is developed with PHP in the background and Vue. This is the result of recent refactoring by a developer. The frontend and backend, previously written in PHP, were migrated to Vue and Java/Spring, demonstrating a stable structure. Naturally, developing new apps became faster as they could communicate with the backend API.

Perhaps thinking about the future and making changes now is more important than anything else. If we hadn’t separated the API back then, our workload would have increased now.

https://www.linkedin.com/posts/huhhyeongjun_기술적-보수주의를-조금은-경계해야-하는-이유-python은-33년-된-activity-7213473915241680896-rH2Q?utm_source=share&utm_medium=member_desktop&rcm=ACoAAEFmlqQBrrvwpls605PMVcHtL6PcgGL4e9E

← Back