VIGILANTEWEB

Blog · Jul 27, 2012

Software is handmade

Every line of code is written by a person. Software carries the style, assumptions, and fingerprint of its maker. That handmade quality is worth remembering.

I just read Scott Porad’s post “Why do web sites and software take so long to build? And why is it so hard?”, and it really got me thinking.

He talks about how clients and customers think software should be faster and cheaper. That’s human nature I think and we can’t isolate that to consumers of software. That’s true for consumers of everything. I would like my car to be cheaper and run better. Everyone would. So I hear that point, but I think the more interesting part of his post is about the handmade nature of our work.

I had never really thought of software as handmade, but of course it is. A human being pores over every line of code in a piece of software. Of course there is code that writes code, but the code that writes code was written (you follow?) by someone. The human element gives rise to a number of things which make software more than the sum of it’s parts.

Style

Software developers each have their own style. They may be devotees to a certain movement or ideology, but each of us have carved out our own style.

Answers to all of these questions are just the tip of the iceberg that is your specific style. The style of the software developer often comes through in the end product. We all make assumptions about the end user. How you came to those assumptions (research, intuition, testing, etc.) is part of your style.

Beauty

The ability for code to be beautiful has been widely discussed and debated. I won’t enter into that discussion at this point, because I don’t think it matters. Software most definitely can be beautiful. There are applications, and operating systems that are more beautiful than others. These points of beauty are crafted from the hands of the people writing the code. Choices are made to one thing rather than another. The result of those choices are what ends up on our screen (be it on your phone or computer).

Simplicity

A piece of software is rarely simple. Although the user experience of successful software is often simple. Distilling complex problems into simple solutions is a very difficult task. Think about the best teacher you ever had? Ten times out of ten, they were a good teacher because they could take something that you didn’t understand and simplify it to the point where you could understand little bits at a time, until you were finally able to understand the whole thing.

The idea that software is handmade is a good reminder that what we do is a craft and that we, as human beings, do have an impact on the things we create. It can very often feel like we are automatons churning out line after line of code, but to change our collective perspective to see that the product that we are creating is handmade and like anything else that is handmade, it bears the fingerprint of it’s maker. That is something I will be more mindful of now.

Previous: Sep 25, 2008

Twitter keeps drawing me in

Skeptic, then investigator, now a near Twitter freak. The secret is following people who inspire you and getting the right tools to engage.

Read post →

Next: Jul 27, 2012

Embrace mistakes

Hiding mistakes makes them compound. Owning up earns understanding and keeps the environment honest. Mistakes are how you grow.

Read post →

Who is this guy?

27 years on the web. Numbers to show for it.

I led web strategy and conversion optimization for an enterprise software company. I worked across engineering, marketing, and product to ship changes that moved the business. Here's what that looked like.

61%
Contact conversion lift
$6.9M
incremental pipeline