The Darker Side of Tech Layoffs (it's darker than it seems)

The headlines have been stark: tech giant after tech giant announcing significant layoffs. While the immediate impact on those made redundant is undeniable and deeply upsetting, the fallout from these decisions extends far beyond those who receive the dreaded news. The industry wide repercussions are creating a climate of increased pressure, stifled career movement, and potentially lower earning potential for a vast number of tech professionals.

Let’s unpack the less visible, yet equally significant, ways tech redundancies are impacting everyone else.

AI is Making Developers Lazy: RIP Core Coding Skills

The hum of the AI co-pilot has become a familiar soundtrack in the world of software development. These intelligent tools, promising increased efficiency and code generation prowess, have been embraced with open arms by many. But what happens when this reliance morphs into over-dependence? What are the potential pitfalls of blindly trusting algorithms we don’t fully comprehend, especially when they occasionally – or even frequently – get it wrong? And perhaps most worryingly, what becomes of the core skills that define a truly capable software developer?

The Optimisation Lie: Why Your 'Optimised' Code Might Still Be Slow

We’ve all been there. You’ve tweaked a loop, maybe used a more efficient LINQ method, and patted yourself on the back for “optimising” your C# code. The profiler might even show a slight improvement. But then, the application still feels… sluggish. That’s because the initial steps in optimisation can be deceptively easy, leading to what we’ll call The Optimisation Lie, the belief that a few superficial changes equate to truly well-optimised software.

The truth is, while applying basic optimisations in C# is often straightforward, achieving significant and sustainable performance gains requires a much deeper understanding and a more strategic approach.

The Dirty Secret of Clean Code: When Breaking Programming Principles Makes You a Better Developer

If you’ve been in software development for more than five minutes, you’ve probably had these acronyms beaten into your head:

SOLID: that five-headed monster of principles that’s supposed to make your code amazing.

DRY: because apparently typing the same logic twice will summon demons or something.

Don’t get me wrong, these principles exist for good reasons! They’ve saved countless developers from nightmare codebases. But here’s the kicker: they’re guidelines, not commandments handed down from the mountain.

AI Is Smart Because You Are Stupid

Artificial Intelligence is often perceived as a technological marvel, a near-mystical force that can predict, automate, and generate at an astonishing rate. However, this perception isn’t necessarily because AI is truly “intelligent” in the way humans are. Rather, AI appears good because humans, by comparison, are inconsistent, distracted, and prone to errors. The brilliance of AI is not in its innate intelligence, but in how it exploits human shortcomings.

Understanding Garbage Collection - How the dotnet Garbage Collector Works

Garbage collection (GC) is a fundamental component of the .NET runtime, responsible for managing memory automatically and ensuring efficient use of resources. With .NET 8, Microsoft has continued refining the garbage collector, improving performance, reducing latency, and enhancing overall efficiency. This article dives into how the .NET 8 GC works, its key improvements, and how developers can optimise memory usage.

Why C# Developers Should Also Learn Rust, and What It Can Teach Them

As a C# developer, you might wonder why you should invest time learning Rust, a systems programming language. After all, C# is a powerful, versatile, and high-level language with a vast ecosystem and a wide range of applications. However, learning Rust can expand your programming horizons and provide unique insights that will make you a better developer, regardless of your primary language. Here’s why C# developers should consider learning Rust and what they can gain from it.

Why Frontend Software Development Is Needlessly Complex, When It Does Not Need to Be

Frontend software development has evolved drastically over the last decade, transforming from simple static HTML pages to dynamic, interactive web applications. While the growth of the field has unlocked new possibilities, it has also introduced layers of complexity that, arguably, aren’t always necessary. The question worth asking is: why has frontend development become so convoluted, and does it really need to be this way?

Linux Is NOT the Developers Paradise You Have Been Told It Is

Linux is often heralded as the holy grail for developers - a flexible, open-source playground free of corporate shackles. It’s the darling of the tech-savvy, the underdog in the OS wars, and the supposed utopia for programmers everywhere. But let’s take a step back from the hype. While Linux has its merits, it’s not the flawless paradise that some people claim. Here’s why.