Recently, I have found myself thoroughly enjoying reading the Art of Manliness blog it features articles about butch skills, how-to about hand tools and a touch of philosophy about what it means to lead a life well lived. An article that particularly stood out for me was Manvotional: The Bridge Builder which talks about “The Bridge Builder” written by Will Allen Dromgoole. I urge you to give it a read, catch you after.

An old man going a lone highway,
Came, at the evening cold and gray,
To a chasm vast and deep and wide.
Through which was flowing a sullen tide
The old man crossed in the twilight dim,
The sullen stream had no fear for him;
But he turned when safe on the other side
And built a bridge to span the tide.

"Old man," said a fellow pilgrim near,
"You are wasting your strength with building here;
Your journey will end with the ending day,
You never again will pass this way;
You’ve crossed the chasm, deep and wide,
Why build this bridge at evening tide?"

The builder lifted his old gray head;
"Good friend, in the path I have come," he said,
"There followed after me to-day
A youth whose feet must pass this way.
This chasm that has been as naught to me
To that fair-haired youth may a pitfall be;
He, too, must cross in the twilight dim;
Good friend, I am building this bridge for him!"

(source)

In summary the poem talks of an experienced though weary traveller resolutely choosing to help other less experienced travellers cross a turbulent river. The river is of no danger to him but could be a disaster for others.

Software development is not normally as dangerous as a turbulent river but it has some similarities. The first steps of contributing to an established project can be a frustrating experience, it can appear like nothing seems to work. This can block new people from helping out with your projects unless steps like these are taken with the project:

  • A simple readme that describes the purpose of the project.
  • Ensure that the code builds straight out of source control without undue faffing.
  • Include unit tests to that show how the code should be used, proves it really does work and double checks that the development enviroment is set up correctly.

We can change this together, focus on making it a pleasure for others to begin helping you on your software projects. Raise issues, make pull requests, write documentation or whatever ritual is required to sort out just one annoyance today.

Remember, the mind you save may be your own. You could be in the same situation when you need to work on one of your old projects.

Go on, get out there and build some bridges, Aaron.