Skip to Main Content
Becoming a Better Programmer
book

Becoming a Better Programmer

by Pete Goodliffe
October 2014
Intermediate to advanced content levelIntermediate to advanced
362 pages
7h 49m
English
O'Reilly Media, Inc.
Content preview from Becoming a Better Programmer

Chapter 32. It’s Done When It’s Done

In the name of God, stop a moment, cease your work, look around you.

Leo Tolstoy

A program is made of a number of subsystems. Each of those subsystems is composed of smaller parts—components, modules, classes, functions, data types, and the like. Sometimes even boxes and lines. Or clever ideas.

bbpg 32in01

The jobbing programmer moves from one assignment to the next; from one task to another. The working day is composed of a series of construction and maintenance tasks on a series of these software components: composing new parts, stitching parts together, and extending, enhancing, or mending existing pieces of code.

So our job is simply a string of lots of smaller jobs. It’s recursive. Programmers love that kind of thing.

Are We There Yet?

So there you are, getting the job done. (You think.)

Just like a small child travelling in the back of a car constantly brays are we there yet?, pretty soon you’ll encounter the braying manager: are you done yet?

This is an important question. It’s essential for a software developer to be able to answer that one simple request: to know what “done” looks like, and to have a realistic idea of how close you are to being “done.” And then to communicate it.

Many programmers fall short here; it’s tempting to just keep hacking away until the task seems complete. They don’t have a good grasp on whether they’re nearly finished ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

How Functional Programming Can Improve Testing, Reuse, and Maintenance in Your Current Codebase

How Functional Programming Can Improve Testing, Reuse, and Maintenance in Your Current Codebase

Eric Normand

Publisher Resources

ISBN: 9781491905562Errata Page