Knowledgebase

Choosing and Working Across Languages: Everything That Matters, Briefly Print

  • programminglanguages, programming, performance, database, troubleshooting, webhosting, guide, howto
  • 0

The summary.

WEIGH LIBRARIES AND MAINTENANCE ABOVE EVERYTHING ELSE

Writing what a mature library provides is expensive and usually worse, and a language nobody in your organisation knows is a liability regardless of its merits.

Several domains decide for you: machine learning, mobile platforms, browsers, embedded work and shared hosting.

MOST APPLICATIONS ARE NOT LIMITED BY THEIR LANGUAGE

They are limited by queries without indexes, requests in loops, and algorithms scaling badly. Changing language does not fix a slow application.

Where performance genuinely matters, use a fast language for that part, not the whole system.

LIMIT HOW MANY LANGUAGES ARE IN USE

Each is a permanent commitment to expertise, tooling and maintenance. Require a reason and an accountable owner before adding one.

NEVER IMPLEMENT THE SAME BUSINESS LOGIC IN SEVERAL LANGUAGES

The implementations diverge, and the difference becomes a bug. Implement once and expose it as a service.

Avoid sharing a database between services — the schema becomes a dependency nobody can change.

PIN THE LANGUAGE VERSION IN THE PROJECT, AND PLAN UPGRADES BEFORE SUPPORT ENDS

An unmaintained dependency is what usually blocks an upgrade. Identify it early.


Was this answer helpful?
Back

Are you happy with your experience? Leave us a review on Trustpilot.


Trustpilot