Live data from Hacker News

On Craft

drcathicks.com

11–20 of 34 posts

Re: On Craft

#11
Great article!

> I have read a lot of long spiels about craft that frequently end in something like, software work isn’t like other work, and we shouldn’t be judged the same way. We are entirely unique. We are the special ones.

It might comfort the author to know that even within the realm of software engineering, there are insiders and outsiders. Some of the most important engineering work was made by these outsiders.

Growing up poor, self-taught, as the only programmer I knew around me, I felt like an outsider my entire life. When I finally began to associate with other programmers... I still felt like an outsider.

Here were people from structured family units with solid life skills, a college education, large support networks, a lack of systemic trauma, and a fundamentally different understanding of the world. I've begun to find my place in this world, but the feeling of being an outsider will never fully go away.

It's of little coincidence that my favorite kinds of music and other art are often categorized as Outsider Art.

My advice... find a way into that makerspace. Open up a REPL. Software engineering might entail a specific rigid and deep understanding of engineering principles, but software craftsmanship is for everyone. Personal computers were made for the average person to enhance themselves and the world around them, and we should never forget that.

https://en.wikipedia.org/wiki/Outsider_art

Re: On Craft

#12
post #9

The author doesn't use words like "pragmatic", which embody this essay a lot more than "craft", IMO. Craft to me implies design, which this essay doesn't touch on much.

It does, a little bit. E.g.:

> He would point out risky work, bad decision making in the form of shoddy materials or shifting angles. He was offended by the trace measures left in the world that signified short-term planning.

But I definitely agree that the essay has a lot less to do with craft than you might think at first.

Re: On Craft

#13
You could call "craft" understanding and power gained from firsthand experience with a thing.

As opposed to experience with ideas about a thing, models and abstractions and stories and such.

The former is of course infinitely deeper.

The latter, you could make a whole world out of that. And live inside it like a house.

Re: On Craft

#14
post #9

The author doesn't use words like "pragmatic", which embody this essay a lot more than "craft", IMO. Craft to me implies design, which this essay doesn't touch on much.

I disagree, to me, craft implies an investment in making something that exists better or something new the best you can make it.

It's an investment in saying that the quality matters as much as the function, and in many cases the quality improves the function.

Re: On Craft

#15
Computers speed up craftpersonship, so it doesn't feel like craftpersonship, but really if you slow it down, it has elements of craft. Software is often rushed out the door at breakneck speed these days so it seems shoddily made and rushed, but then it works, has few bugs, and doesn't suffer from technical debt. I think this is miraculous and shouldn't be taken for granted.

Re: On Craft

#16

I can relate to her grandpa. However, it doesn't win me much support, these days. People like us aren't really what the tech industry is about. I'm not sure that it ever was about it (which was why I didn't append "any more"). There was a fairly decent book, called Software Craftsmanship [0], that I read, many moons ago. I found it comforting. At least I wasn't a complete outlier, even if I was routinely treated with…

> routinely treated with scorn for my approach

Seriously? I feel for you.

In my experience many companies do recognize tech debt now, and the value in fixing it or implementing it the right way, although that was not so much the case in early 2000s.

That said, many times we do still have to argue for time to refactor vs adding new features.

I think that the best software craftsman is the one that can quickly add features without accumulating tech debt and the best way to do that is to just fix/refactor the other stuff around the feature addition immediately. It seems like the OP's grandpa was that kind of person.

Speaking for myself, I sometimes do take longer because I want to get it right, even if it does mean missing an internal deadline. It has to have the right "smell". I have learned that if we don't do that then, as cruft accumulates, 3am production incidents will be inevitable.

So, do take this to heart: if others did not understand it, it does not matter. You have already benefited from your approach :)

Re: On Craft

#17

A sweet article, thanks. In trying to make my pizzas round, I realize that there's a craft to it. It can't be all that hard since so many people do it, but I haven't got it yet. Also, cooking is a craft. That's why a restaurant interview for a cook is often "make me an omelet." There are, indeed, some foods you can make strictly by following the recipe, but others take craft.

I would posit that any food can be made following a recipe. I know, because I am dabbling at it ;) The food will still taste good :)

The craft here is to make it taste special, even for simple recipes like an omelette. That is why the chefs get asked this question.

Re: On Craft

#18
The author's grandpa reminds me of Sam Hamilton from East of Eden, someone who (though fictional, of course) I think about often when I think about the kind of man I'd like to be some day. A couple lines in particular jumped out at me:

> He had a visual vocabulary that amazed me

> do you know what it is like to make your whole life?

These two lines together hint at a kind of connectedness with the world that I sometimes feel (and observe in certain cases) an acute lack of. I see it in myself and in many people I care about, but also in the archetypes generated by the culture/society I'm embedded in. A lot of the time when I talk to people about this particular thing, they assume I'm being nostalgic, but I don't think so. I think we don't realize how many hard (as in "hard science") truths we really learn from casual observations of the wind and the stars and the trees.

Re: On Craft

#19
post #16

I can relate to her grandpa. However, it doesn't win me much support, these days. People like us aren't really what the tech industry is about. I'm not sure that it ever was about it (which was why I didn't append "any more"). There was a fairly decent book, called Software Craftsmanship [0], that I read, many moons ago. I found it comforting. At least I wasn't a complete outlier, even if I was routinely treated with…

> routinely treated with scorn for my approach Seriously? I feel for you. In my experience many companies do recognize tech debt now, and the value in fixing it or implementing it the right way, although that was not so much the case in early 2000s. That said, many times we do still have to argue for time to refactor vs adding new features. I think that the best software craftsman is the one that can quickly add feat…

Yeah, I'm not a subscriber to the "YOLO/MVP" school of software development, which basically makes me persona non grata in many tech crowds.

When I write software, I use what I call "Constant Beta." Basically, my software is at a release level of Quality, from the very start. It may be incomplete (thus, unshippable), but what's there, is ready for its closeup (Mr. DeMille).

Basically, before moving to the next feature, I make sure the one I'm working on, is complete. It may require coming back, after other parts of the program are done, but I always make sure that the API is clear, the documentation is done, and things like error handling and localization are in place, as early as possible.

Surprisingly, I work very, very quickly, despite taking so much care. There's a number of reasons, which would require a series of blog posts, but the results speak for themselves.

Re: On Craft

#20
post #17

A sweet article, thanks. In trying to make my pizzas round, I realize that there's a craft to it. It can't be all that hard since so many people do it, but I haven't got it yet. Also, cooking is a craft. That's why a restaurant interview for a cook is often "make me an omelet." There are, indeed, some foods you can make strictly by following the recipe, but others take craft.

I would posit that any food can be made following a recipe. I know, because I am dabbling at it ;) The food will still taste good :) The craft here is to make it taste special, even for simple recipes like an omelette. That is why the chefs get asked this question.

You'd posit wrong. The craft is getting the texture right. Managing the heat, how much to beat it, when to add salt, etc. Chefs don't get asked the question to find out how good it tastes, and in fact, most of their score can be derived just by watching them.
Post reply on HN