Skip to main content
← All Tags

Opinion

8 articles in this category

Code qualityOpinion

Why We Should Stop Writing 'Smart' Code

Writing clever, concise, one-liner code is a common developer ego trip. In practice, 'smart' code is a maintenance liability that increases cognitive load, slows down debugging, and confuses your colleagues. Readable code is boring, obvious, and explicit.

Read more
TestingCode qualityOpinion

Your Unit Tests Are Mocking You

Unit testing with mocked dependencies has become a software industry obsession. We write tests that verify our code behaves against mock assumptions, resulting in green test suites that pass while production crashes. It is time to embrace integration tests with real, lightweight dependencies.

Read more
EducationProgramming languagesOpinion

Why Python is the Worst Language to Teach Beginners

Python has become the default first language in universities and bootcamps. But its magical syntax, lack of explicit types, hidden memory models, and chaotic package ecosystem teach beginners terrible habits and make transitioning to other languages unnecessarily painful.

Read more
Web developmentCSSOpinion

The CSS-in-JS Fever Dream is Over

For years, frontend developers insisted that CSS should be written in JavaScript. We got dynamic styling at the cost of massive runtime overhead, bloated bundle sizes, and broken browser style injection. Now, the fever dream is over. Tailwind and modern CSS features have won.

Read more
Project managementAgileOpinion

Agile is Dead, and Scrum Murdered It

The Agile Manifesto was a beautiful statement of developer autonomy and adaptive planning. Scrum turned it into an oppressive, ceremony-heavy micromanagement machine. Here's how story points, standups, and retrospectives killed the spirit of software engineering.

Read more
AISoftware engineeringOpinion

The Lie of 'No-Code' and Why AI Won't Replace Programmers

With the rise of LLMs, pundits are declaring the 'end of coding.' But this view fundamentally misunderstands what programming actually is. Writing syntax is the easy part; the hard part is translating ambiguous human desires into rigorous, deterministic logic. AI is an accelerator, not a replacement.

Read more
ArchitectureWeb DevelopmentOpinion

Why You Probably Don't Need a Backend

Before you spin up another Express app, deploy a PostgreSQL database, and configure a Redis cache, ask yourself: does this actually need a backend? For most projects, a static site coupled with a Git-based cron job is faster, cheaper, and infinitely more reliable. Here is how to build backendless apps.

Read more
Web developmentFrontendOpinion

The SPA Obsession Has Ruined the Web

Single Page Applications (SPAs) were supposed to make the web feel like desktop apps. Instead, they gave us megabytes of JavaScript, blank pages during loading, broken back buttons, and over-engineered build steps. It's time to admit SPAs are a failure for 90% of websites.

Read more