Jill Peterson

Download my public key from an NDSU server jillande.pub.asc.


Comments on software development
and a page for testing “stuff”

It takes a license to cut someone's hair, but literally anyone “can” [write] code

Bruce Faulkner, in Chat Window of "Five Ways to Improve Code Quality" Webinar with Venkat Subramaniam

Software development is a craft, it is an engineering discipline, it is mathematical, it is a mysterious art. It is like getting a whole community to write poetry together. There are temperamental geniuses, hard requirements, communication needs, and, under it all, humans working together building something they don't quite understand. Done well, the result is breathtaking. Done poorly, and the result is assembly-line material. It is its own activity, and in 50 years other activities will be likened to it.

And later:

Programmers have a reputation of being anti-social. In particular, they hate going to meetings. Let us consider, however, that software is a very complex matter of tying together different threads. The designer or programmer, while designing, spends a great deal of time lifting a set of ideas up, holding them together in her head. She then starts typing, holding in her head this tangled construct, tracing the chains of links as she types. If you call a meeting at this point, the whole structure falls to the ground, and she must rebuild it after the meeting. If can easily take 20 minutes to get into this structure, and an hour to make progress. Therefore, any phone call, discussion, or meeting, distracting her for longer than a few minutes, causes her to lose up to an hour of work and an immense amount of energy. Is it any wonder programmers hate meetings? Anti-social behavior, meeting-avoidance in particular, is, therefore, a valuable part of their profession.

Dilbert on project estimates

Some folks wonder why we put so much time into planning projects. Dilbert has a good way of answering why:
I need a budget estimate for my project, but I don't have a scope or a design for it yet. "Okay, my estimate is $3,583,729." You don't know anything about my project. "That makes two of us."

Another way of thinking about project planning

Let me ask you: would you hire a contractor to build a house and then demand that they start pouring a foundation the very next day? Even worse, would you demand that it be done without blueprints or house plans? Hopefully, you answered "no" to both of these. A design is needed make sure that the house you want gets built, and that the land you are building it on will not sink into some underground cavern.

This is too easy to understand

no one ever