
What makes a great developer? A story of an extraordinary blacksmith - fagnerbrack
https://quickbirdstudios.com/blog/the-best-blacksmith-developer/
======
andrewla
This article seems to be more a series of backhanded complaints that managers
make about software developers rather than any sort of useful comparison. Any
software developer who routinely had requests that were analogous to "make 100
swords" would undoubtedly kill themselves immediately. I mean, that's not
really true; there's always a market for software developers who are expected
to churn out the same program that they've written before (program, website,
crud app) with slightly different branding. But it would be a stretch to call
such a person a "great developer" unless they built a framework that would
allow them to create each one while barely lifting a finger.

Here are the points in the article, translated into whining about software
developers:

"He Loves What He Does" == "Why are good developers expensive?"

Curiosity - "If a craftsman does not love what he does, he is usually working
for money or prestige" == "I should not have to pay a developer very much
money"

Creativity - "The best ideas come when you walk home from work and your brain
just cannot stop thinking about the exciting problems you are working on." ==
"My developer doesn't think my ideas are exciting"

Long-term motivation - "His motivation comes naturally the process of building
and creating new things" == "I should not have to pay a developer very much
money"

"He is humble" == "Why do my developers think they're smarter than me"

"He is courageous and honest" == "Why can't my developers give me good
estimates for how long things will take"

"He is a team player" == "I want my developers to be instantly replaceable
with another developer"

"He is extremely customer-focused" == "Why do my developers keep saying that
my ideas are bad?" and "Why can't my developers give me good estimates for how
long things will take"

~~~
AllegedAlec
> backhanded complaints that managers make about software developers

Bad managers, I'd say.

~~~
jchackert
Agree. Good managers are still relatively rare, even given all the attention
being paid to improving management in tech lately.

------
brianmcc
I can't help feel that this is quite misleading - let's take a bunch of
concepts we happen to like about our software team and project them onto a
17th century craftsperson.

I mean, you can construct a picture of such a blacksmith being Mr Super
Customer Focused, sure, doesn't really make it true though? Why add in such an
extra layer of distraction when you can just, well, describe good software
team members?

~~~
Manfred
Right, I was expecting an account of an actual blacksmith.

I'm pretty sure priorities in the 17th century were not the same as they are
now and people had a totally different perspective on work.

~~~
onemoresoop
And strong arms too. A smart black smith with weak arms/shoulders/wrists would
under-perform one who didn't. And the tools were a) quite simple, b) they
wouldn't change every 3 years and would last a generation. The comparison to
the software craftsman is quite silly, I agree

~~~
brianmcc
Yeah I thought that too - 30 years of fine tuning one's horseshoe shaping
skills is admirable, but it's wildly different to the "constantly learning new
things" narrative.

It's a shame, I did quite enjoy the "our sword guy let us down" cartoon!

~~~
C1sc0cat
_cough_ don't ask a Blacksmith to shoe a horse.

~~~
brianmcc
Sounds a sensitive one :-) Technically I meant making them not fitting them,
but mea culpa, the whole horseshoe area is not my domain so I'll watch my
step!

------
ken
I've never met a blacksmith, but I've met people in similar jobs (welders,
etc) and I'm not sure I'd describe them as having "fun and joy at his craft".
The best ones make it a point to be good at their work, for sure, but they
make it a point to do their best at everything they do. I've met people at the
top of their game who have won awards for their work, who tell me they have no
passion for their profession. It's just what they happen to do for money.

I'm probably reading too much into this, like someone complaining that
computers in a Hollywood movie are not technically accurate. Bloggers have re-
invented fables, only this time with medieval trade unions instead of animals.

Aesop got this right. Nobody thinks he's making a judgment on the work ethic
of tortoises. You use animals in morality stories for the same reason
programmers use "foo" and "bar" in sample code. Write about blacksmiths and
you risk naive people like me thinking that you actually mean a real
blacksmith.

------
C1sc0cat
Actually "Blacksmiths" don't forge swords or shoe horses - there is a whole
hierarchy of smiting trades in the European tradition.

I bet Masamune (considered the best sword smith in japan) had an amazing wait
list and you probably had to know some one to even get on that list.

------
ppeetteerr
So, this person is:

\- Curious

\- Creative

\- Humble

\- Communicates well

\- Sees the big picture

\- Teaches others

\- Honest

\- Brave

That's not just a good programmer, that's a good person to have on your team
regardless of her/his responsibilities.

~~~
alexandercrohde
True. Also I want to point out some basic math, if the traits are independent,
the odds of finding a person who is more of each of those traits than average
i.e. > 5 / 10 on each is 1/2^8

So roughly 1/256 people will have all of those traits more than average. This
on top of hopefully being able to program.

~~~
pacala
On top, you'd hope the respective manager is matching the engineer's traits,
if not exceeding them.

------
victorbojica
Don't really get the point of this article... Especially on hn. To me it
sounds very passive aggressive to be honest.

------
gabrielblack
"He is a team player". Do you ever seen a _team_ of blacksmiths forging a
sword ? IMHO a blacksmith is the figure more distant than ever from the
perfect team member. Do you know what a team member looks like ? An assembly
line worker. But who want to be an assembly line guy ?

~~~
daef
team striking is a thing...
[https://www.youtube.com/watch?v=YslKzxLF8Uw](https://www.youtube.com/watch?v=YslKzxLF8Uw)

------
crankylinuxuser
So.. What are they trying to stealth-sell here?

~~~
encorekt
Looks like just themselves -- a team of developers I guess. Or horseshoes?

------
EliRivers
I see they repeat the myth about a great developer being ten times as good as
a mediocre one, even though the actual reference they point towards in support
of that statement disagrees with them.

~~~
ludston
I know that this is not a myth because I have seen it. Just today I saw
someone reviewing some piece of work that had taken another developer two
weeks to implement, throw it all out and solve the same problem with only a
few lines of code.

The speed improvement isn't like, "This person can type 10 times faster than
everyone else", but more like, "This person doesn't get stuck or waste time
chasing dead-ends".

Possibly your code-base needs to have more than a certain level of complexity
before developers start getting stuck like this.

~~~
zimpenfish
> piece of work [...] two weeks to implement, throw it all out and solve the
> same problem with only a few lines of code

I've been in similar situations and, invariably, the "few lines of code" is
inscrutable nonsense that no-one else will be able to maintain (and often even
understand.) I can write obtuse one line "clever" hacks to solve problems but
I'm keenly aware that a) I'll have forgotten how it works in an hour and b)
some poor bastard (which might well be me) will have to maintain it for N
years after I'm gone.

~~~
techopoly
Right, and the product owner will expect all future maintenance to be done as
quickly as the one-line clever hack that took 15 minutes but didn't encompass
the edge cases.

~~~
alexandercrohde
Some 10x engineers just say "No" to product owners. If you let a product owner
to convince you that you need an .xls export rather than .csv for internal use
(this is a real-life example!) you may add a week+ of work/maintenance versus
the time it takes me to explain "no."

~~~
zimpenfish
> an .xls export rather than .csv for internal use

Presumably this was a trivial data dump and not something like a report that
could have benefited from, e.g., embedded formulas, multiple sheets, etc.?
(I've produced exports with the latter and the enhancements were greatly
appreciated over the plain old CSV export.)

