Blogs / Personal blogs

Jeff Atwood

blog.codinghorror.com

programming and human factors

Popular posts
41
Total points
5,998
HN comments
3,581
Rank
#162 personal

Visit blog.codinghorror.com → RSS feedOn Hacker News Feb 2014 – Sep 2026

Software Engineering 23Society, Policy & Culture 9Life, Learning & Writing 7Hardware & Electronics 6Career & Management 6Systems & Performance 3

1

Hacker, Hack Thyself

We’ve read so many sad stories about communities that were fatally compromised or destroyed due to security exploits. We took that lesson to heart when we founded the Discourse project; we endeavor to build open source software that is secure and safe for communities by default, even if there

2

Ten Years of Coding Horror

In 2007, I was offered $120,000 to buy this blog outright. I was sorely tempted, because that’s a lot of money. I had to think about it for a week. Ultimately I decided that my blog was an integral part of who I was, and who I eventually

3

Standard Markdown Is Now Common Markdown

Let me open with an apology to John Gruber for my previous blog post. We’ve been working on the Standard Markdown project for about two years now. We invited John Gruber, the original creator of Markdown, to join the project via email in November 2012, but never heard back.

4

The God Login

I graduated with a Computer Science minor from the University of Virginia in 1992. The reason it’s a minor and not a major is because to major in CS at UVa you had to go through the Engineering School, and I was absolutely not cut out for that kind

6

To Serve Man, with Software

I didn’t choose to be a programmer. Somehow, it seemed, the computers chose me. 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 great-for-everyone career field with

7

TIS-100: the Programming Game You Never Asked For

You know what’s universally regarded as un-fun by most programmers? Writing assembly language code. As Steve McConnell said back in 1994: Programmers working with high-level languages achieve better productivity and quality than those working with lower-level languages. Languages such as C++, Java, Smalltalk, and…

8

Why Can't Database Tables Index Themselves? (2006)

Here’s a thought question for today: why can’t database tables index themselves? Obviously, indexes are a central concept to databases and database performance. But horror tales still abound of naïve developers who “forget” to index their tables, and encounter massive performance and scalability problems down the road…

10

The Magpie Developer

I’ve often thought that software developers were akin to Magpies, birds notorious for stealing shiny items to decorate their complex nests. Like Magpies, software developers are unusually smart and curious creatures, almost by definition. But we are too easily distracted by shiny new toys and playthings. I no longer

13

Code: It’s Trivial

Remember that Stack Overflow thing we’ve been working on? Some commenters on a recent Hacker News article questioned the pricing of Stack Exchange – essentially, a hosted Stack Overflow: Seems really pricey for a relatively simple software like this. Someone write an open source alternative? it looks like something…

14

Performance is a Feature

We’ve always put a heavy emphasis on performance at Stack Overflow and Stack Exchange. Not just because we’re performance wonks (guilty!), but because we think speed is a competitive advantage. There’s plenty of experimental data proving that the slower your website loads and displays, the less people

15

The Ten Commandments of Egoless Programming

The Ten Commandments of Egoless Programming, as originally established in Jerry Weinberg’s book The Psychology of Computer Programming: 1. Understand and accept that you will make mistakes. The point is to find them early, before they make it into production. Fortunately, except for the few of us developing rocket

16

The Principle of Least Power

Tim Berners-Lee on the Principle of Least Power: Computer Science spent the last forty years making languages which were as powerful as possible. Nowadays we have to appreciate the reasons for picking not the most powerful solution but the least powerful. The less powerful the language, the more you

17

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 and coughs

18

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 hammer

19

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,

20

Falling Into The Pit of Success

Eric Lippert notes the perils of programming in C++: I often think of C++ as my own personal Pit of Despair Programming Language. Unmanaged C++ makes it so easy to fall into traps. Think buffer overruns, memory leaks, double frees, mismatch between allocator and deallocator, using freed memory, umpteen dozen

21

Why Can’t Programmers... Program?

I was incredulous when I read this observation from Reginald Braithwaite: Like me, the author is having trouble with the fact that 199 out of 200 applicants for every programming job can’t write code at all. I repeat: they can’t write any code whatsoever. The author he’s

23

Commandos, Infantry, and Police

As I was driving home, I found myself thinking about a favorite section of the book Accidental Empires, by longtime computer journalist Robert X. Cringely. Originally published in 1993, it’s getting a little long in the tooth, but it still contains a lot of great insights about the personalities