technical practices

programming languages

To Serve Man, with Software

I didn't choose to be a programmer. Somehow, it seemed, the computers chose me [https://blog.codinghorror.com/if-loving-computers-is-wrong-i-dont-want-to-be-right/]. For a long time, that was fine, that was enough; that was all I needed. But along the way I never felt that being a programmer was this unambiguously

By Jeff Atwood ·
Comments

open source

Given Enough Money, All Bugs Are Shallow

Eric Raymond, in The Cathedral and the Bazaar [http://en.wikipedia.org/wiki/The_Cathedral_and_the_Bazaar], famously wrote > Given enough eyeballs, all bugs are shallow. The idea is that open source software, by virtue of allowing anyone and everyone to view the source code, is inherently less

By Jeff Atwood ·
Comments

software development concepts

The Rule of Three

Every programmer ever born thinks whatever idea just popped out of their head into their editor is the most generalized, most flexible, most one-size-fits all solution that has ever been conceived. We think we've built software that is a general purpose solution to some set of problems, but

By Jeff Atwood ·
Comments

history

The Organism Will Do Whatever It Damn Well Pleases

In the go-go world of software development, we're so consumed with learning new things, so fascinated with the procession of shiny new objects that I think we sometimes lose sight of our history. I don't mean the big era-defining successes. Everyone knows those stories. I'

By Jeff Atwood ·
Comments

programming languages

New Programming Jargon

Stack Overflow – like most online communities I've studied – naturally trends toward increased strictness over time. It's primarily a defense mechanism, an immune system of the sort a child develops after first entering school or daycare and being exposed to the wide, wide world of everyday sneezes

By Jeff Atwood ·
Comments

php

The PHP Singularity

Look at this incredible thing Ian Baker created. Look at it! What you're seeing is not Photoshopped. This is an actual photo of a real world, honest to God double-clawed hammer. Such a thing exists. Isn't that amazing? And also, perhaps, a little disturbing? That wondrous

By Jeff Atwood ·
Comments

programming concepts

Rubber Duck Problem Solving

At Stack Exchange, we insist that people who ask questions put some effort into their question, and we're kind of jerks about it. That is, when you set out to ask a question, you should … * Describe what's happening in sufficient detail that we can follow along.

By Jeff Atwood ·
Comments

programming languages

How to Hire a Programmer

There's no magic bullet for hiring programmers. But I can share advice on a few techniques that I've seen work, that I've written about here and personally tried out over the years. 1. First, pass a few simple "Hello World" online tests.

By Jeff Atwood ·
Comments

usability

Usability On The Cheap and Easy

Writing code? That's the easy part. Getting your application in the hands of users [https://blog.codinghorror.com/shipping-isnt-enough/], and creating applications that people actually want to use [https://blog.codinghorror.com/youll-never-have-enough-cheese/] — now that's the hard stuff. I've been a long time fan

By Jeff Atwood ·
Comments

programming languages

The Non-Programming Programmer

I find it difficult to believe, but the reports keep pouring in via Twitter and email: many candidates who show up for programming job interviews can't program. At all. Consider this recent email from Mike Lin: The article Why Can't Programmers... Program? changed the way I

By Jeff Atwood ·
Comments

programming languages

Buy Bad Code Offsets Today!

Let's face it: we all write bad code. But not every programmer does something about the bad code they're polluting the world with, day in and day out. There's a whole universe of possibilities: * Follow the instructions on the paint can * Become a software

By Jeff Atwood ·
Comments

security

The Wrong Level of Abstraction

In Why Isn't My Encryption.. Encrypting? we learned that your encryption is only as good as your understanding of the encryption code. And that the best encryption of all is no encryption, because you kept everything on the server, away from the prying eyes of the client. In

By Jeff Atwood ·
Comments