Gandalf Hudlow
The value-destroying effect of arbitrary date pressure on code
An Article by Gandalf HudlowThe mandate from above is clear, just get it done! Avoid everything that's in the way: all advice, all expertise, all discovery efforts that detract from hitting the Date™!
What these organizations don't realize is that all software change can be modeled as three components: Value, Filler and Chaos. Chaos destroys Value and Filler is just functionality that nobody wants. When date pressure is applied to software projects, the work needed to remove Chaos is subtly placed on the chopping block. Work like error handling, clear logging, chaos & load testing and other quality work is quietly deferred in favor of hitting the Date™.
Software that nobody wants
An Article by Gandalf HudlowFinding value is the result of enabling individual and group-level discovery attempts. It's not the result of everyone following one leader's gut.
What just happened is a new software product/feature was created that no customer wanted. This happens way too often. In fact, most hyper important software projects that must be done by date certain or else, have deep flaws that cause some variation of this phenomenon, flaws that include:
- Not wanted - Company specified a solution to a problem that customers don't actually have
- No Rarity - Company is pursuing an iKnockoff of existing products. The market already has two scaled competitors with working solutions, customers naturally spend budget on products that are already successful to avoid risk
- Incorrect Packaging - Customers need a website, but the company created an iOS app instead
- Incorrect Pricing - Customers need SaaS pricing, but the company created a shrink wrapped, on-premise solution with CapEx and maintenance agreements instead
Five basic rules
Five basic rules:
(1) Record your work as notes to your future self and colleagues.
Write notes so that someone fifty years from now (or more) will understand and be able to use the factual information you collected, perhaps for purposes quite different from the original reasons.
Clearly separate facts from interpretations so these are not confusing to a future reader.
(2) Establish a clear and consistent notebook format and process.
I always include the data, place, main activities or events, weather conditions, and other people involves. The day, month, and year is the most important link between that particular point in time and other people’s records, separate data sheets that I filled out myself, photos, and most important, collected specimens.
Documenting collecting strategies and protocols receives special attention. In the moment, these may seem like common knowledge for the field team, so sometimes no one bothers to write them out.
(3) Don’t lose your field records!
(4) Pack a camera, create a visual record.
No matter how many words you write to describe a fossil locality, you can’t beat an actual photo, taken on the spot, annotated in pen, and pasted into your notebook.
There is no substitute for a photograph you actually mark in “real time” in the field as the best way to preserve a lasting, accurate record for yourself, or for someone who has never seen the site or object in question.
(5) Learning through sketches and diagrams.
Photographs are great, but drawn what you see is a more powerful way to learn about spatial patterns and relationships.
Even if you are not an expert at drawing, you can make sketches that are much more informative than words would be.
Always include a scale, an orientation, and labels in your diagrams.