Home About Eric Topics SourceGear

Posts about: Software Development

Monday, 2 February 2009

Read the Diffs

Monday, 14 May 2007


But right after a spec is written, a document is usually the wrong form. It started out as a document only because that form was most convenient for the author. But a document is not the most convenient form for the people who are reading or using the spec, and those people have the author outnumbered. Most of those readers/users want that spec to be a database instead of a document.

Tuesday, 12 September 2006

Advocating the use of code coverage

Thursday, 2 February 2006

Yours, Mine and Ours

Friday, 11 November 2005

My life as a Code Economist

So why would an ISV ever intentionally release a product with known bugs?

Saturday, 15 October 2005

Scalability Story

Monday, 26 September 2005

My comments on "Hitting the High Notes"

Wednesday, 27 July 2005

Thoughts on development methodologies

Thursday, 5 August 2004

Great Hacker != Great Hire

When great hackers are as fussy as Graham says they are, they're not worth the trouble. We want the super-productivity, and we want the innate love of software development, but we don't want all the extra baggage.

Monday, 3 November 2003

Single User Source Control

For any team of two or more people, I can credibly argue the benefits of a good source control tool. And as the team gets even larger, source control evolves from "beneficial" to "compelling" to "necessary" and finally to "you are a complete bozo if you don't use it".

Wednesday, 3 September 2003


And then I realized that my lousy problem-solving skills are actually Visual Studio's fault.

Tuesday, 19 August 2003

Career Calculus

I submit that worrying about how others perceive your C value is a waste of time. The key to a great career is to focus on L, the first derivative of the equation. L is the rate at which your cluefulness is changing over time. The actual value of C at any given moment is usually a distraction. Only one question matters: With each day that goes by, are you getting more clueful, or less clueful? Or are you just stuck?

Thursday, 26 June 2003

Beyond CheckOut and CheckIn

Many people use only a small portion of the features of the version control system. If you use little more than checkout and checkin, you might actually be in the majority. A Vault user recently asked me to explain why anyone would use things like Share, Branch, Label, Cloak, and Merge Branch Into Trunk. I had fun writing my response, so I thought I would re-post it here. Beware, this writeup doesn't even attempt to be objective about which version control product is most neato. :-)

Friday, 9 May 2003

Small ISVs:  You need Developers, not Programmers

For the purpose of this article, a "programmer" is someone who does nothing but code new features and [if you're lucky] fix bugs. They don't write specs. They don't write automated test scripts. They don't help keep the automated build system up to date. They don't help customers work out tough problems. They don't help write documentation. They don't help with testing. They don't even read code. All they do is write new code. In a small ISV, you don't want any of these people in your company.

Thursday, 8 May 2003

What is a Small ISV?

On this weblog I often use the term "small ISV". It's time to define what I mean.

Tuesday, 29 April 2003

Followups on The .NET Abstraction Pile

Near the bottom of my article on The .NET Abstraction Pile, I mention that we've had some bad experiences with Java here at SourceGear. Yesterday I was pleasantly surprised when Joel Spolsky linked my article (thanks Joel). Today my mailbox is filled with email from Java fans telling me my remarks were unfair and incorrect.

Monday, 28 April 2003

Iceberg Sneak-Ins

Good project managers are made entirely out of paranoia, but the truly extraordinary project managers have a streak of courage.

Tuesday, 22 April 2003

The .NET Abstraction Pile

This success stands as a testimony to how incredible .NET really is. We built a reasonably full-featured version control system in 14 months, and it works. Sure, we had some trouble. Layers 25, 37 and 40 didn't always behave like they should. But layer 11 was problem-free, quite unlike its Java counterpart. Considering the productivity gains we received, I never expected things to go so smoothly.

Sunday, 30 March 2003

Are Programmers Engineers?

Our universities call us engineers because there is no college where we fit. I don't blame them for that, but I have no desire to borrow the word engineer as an attempt to make myself sound more credible.