software development concepts

software development concepts

How to Write Technical Documentation

I was browsing around the CouchDb wiki yesterday when I saw Damien Katz’ hilarious description of how technical documentation really gets written. You know, in the real world: Welcome to the world of technical documentation! The situation you are in is no different from any other tech writer. The technical

By Jeff Atwood ·
Comments

software development concepts

Coding Horror Stickers

As I alluded to in the T-Shirt post, Coding Horror stickers have arrived: These are custom, two color die-cut vinyl stickers based on the high resolution vector art so graciously provided by our kind benefactor, Steve McConnell. To give you an idea of scale, the coin in the picture is

By Jeff Atwood ·
Comments

properties

Properties vs. Public Variables

I occasionally see code with properties like this: private int name; public int Name {     get { return name; }     set { name = value; } } As I see it, there are three things to consider here. 1. When is a property not a property? When it's a glorified public variable. Why waste everyone&

By Jeff Atwood ·
Comments

programming languages

Linus Torvalds, Visual Basic Fan

Stiff recently asked a few programmers a series of open-ended questions: * How did you learn programming? Were schools of any use? * What’s the most important skill every programmer should have? * Are math and physics important skills for a programmer? * What will be the next big thing in computer programming?

By Jeff Atwood ·
Comments

xml

Are You an XML Bozo?

Here’s a helpful article that documents common pitfalls to avoid when composing XML documents. Nobody wants to be called an XML Bozo by Tim Bray, the co-editor of the XML specification, right? There seem to be developers who think that well-formedness is awfully hard — if not impossible — to get

By Jeff Atwood ·
Comments

programming languages

Own a Coding Horror

A few people recently pointed out that my personal branding isn’t everything that it could be. Joseph Cooney even took matters into his own hands. Well, I contacted the big man himself, Steve McConnell, and he graciously provided me a high resolution vector file of the original Coding Horror

By Jeff Atwood ·
Comments

programming languages

I Heart Strings

Brad Abrams was a founding member of the .NET common language runtime team way back in 1998. He’s also the co-author of many essential books on .NET, including both volumes of the .NET Framework Standard Library Annotated Reference. I was at a presentation Brad gave to the Triangle .NET

By Jeff Atwood ·
Comments

software development concepts

How Good an Estimator are You? Part III

For the final installment in the How Good an Estimator Are You series, I’d like to start with an anecdote from chapter 7 of Software Estimation: Demystifying the Black Art : Suppose you’re at a reception for the world’s best software estimators. The room is packed, and you’

By Jeff Atwood ·
Comments

software development concepts

How Good an Estimator Are You? Part II

Here are the answers to the quiz presented in How Good an Estimator Are You? If you’re concerned that a quiz like this has nothing to do with software development, consider: In software, you aren’t often asked to estimate the volume of the Great Lakes or the surface

By Jeff Atwood ·
Comments

software development concepts

How Good an Estimator Are You?

Chapter 2 of Software Estimation: Demystifying the Black Art opens with a quiz designed to test your estimation abilities. It’s an interesting exercise, so I thought everyone might like to give it a shot. * For each question, fill in the upper and lower bounds so that you have a

By Jeff Atwood ·
Comments

software development concepts

The Mysterious Cone of Uncertainty

One of the central themes in McConnell’s Software Estimation: Demystifying the Black Art is the ominously named Cone of Uncertainty. The cone defines statistically predictable levels of project estimate uncertainty at each stage of the project. The cone has several ramifications, the most important of which is that early

By Jeff Atwood ·
Comments