The local minima of suckiness - Deepstash
7 Days of Inspiration

Learn more about corporateculture with this collection

How to find inspiration in everyday life

How to stay motivated

How to cultivate a positive mindset

7 Days of Inspiration

Discover 40 similar ideas in

It takes just

6 mins to read

In “Rise of the Expert Beginner” , an essay that I re-read every couple of years, Erik talks about how developers stop learning. His basic thesis, based on previous studies of skill acquisition, is that people start acquiring skills very quickly. But, at some point in the learning process, they get to a point where they stagnate because the skills that they learned as a beginner will carry them to being an expert.

3

95 reads

You can write print statements in any language pretty quickly (given that you get over the hump of installing it on your local machine). But it takes a very long time to understand how to get from print(“Hello World”) to “Here’s an app that is making machine learning predictions for you in real-time.”

2

57 reads

So how do we get everyone on our teams to that place?

How do we help others get out of the dark, frustrating place that is the local minima of suckiness that is the expert beginner, past the stars, and into the cloud?

And, how can we help ourselves become better developers?

2

49 reads

There are three things that I’ve noticed in my own career that developers need to become better:

  • the room to make mistakes
  • repeated exposure to best practices
  • understanding how to ask good questions, or learning how to learn

2

49 reads

The room to make mistakes

we now call it psychological safety.

The simple story is that, in a good, productive software environment, you have the room to mess up. The apocryphal story about how this works is the one where the junior developer breaks production, costing the company thousands of dollars. After he sees this, he starts putting everything on his desk in a box. The CEO comes up to him and says, “Where are you going?” “I just cost the company so much money, I figured I was fired.” “We just paid thousands of dollars to train you. Why would we let you go?”

2

33 reads

Bill, who was working on (ostensibly) a missile defense system, with instructions written in machine code. He got to a point where he thought he figured it out and asked Marilyn to review his code.

Code review was still in the nascent stages in those days, and Weinberg writes, “His value system, when it came to programming, dictated that secretive, possessive programming was bad and that open, shared programming was good. Errors that might be found in code he had written were simply facts to be exposed to investigation with an eye to future improvement, not attacks on his person. “

2

30 reads

Marilyn found 17 bugs in the 13 lines of code. Instead of fuming, Bill’s reaction was to go around and tell everyone how impossible this code was, and how hilarious it was that she had found 17 bugs. While he was doing that, a few people joined in, for at this point, it was a game, and found a few more bugs. A scenario that could have ended with Bill accusing Marilyn of blocking him or of Bill hiding his code because he thought others would think he was a bad developer ended up much better because things were out in the open.

2

30 reads

They also promote people who value all of these skills: patience, mentorship, and people who demand technical excellence while acknowledging what it takes to get there. Who you promote will tell your org chart how you want the organization to look, so it’s important to spotlight people who share these values and set the tone for the organization.

3

31 reads

Repeated exposure to best practices

There is a way, though, to tell who those people are in your organization, and to try to work with them if at all possible. Good senior developers ask lots of questions to get to the root of problems, and usually they ask them publicly so others can find out the answer. Good senior developers figure out how complicated systems work . Good senior developers carefully review PRs and give feedback, and they also answer questions . chances are you know who the good people in your organization are, because, if you have a question, they’re the first person you think about when asking for help.

2

27 reads

The ability to learn

Learning how to ask the right questions at the right time is one of the fundamental skills of being a developer. Formulating the right question takes a lot of time, a lot of trial and effort, and a lot of tinkering with different solutions until the question even makes sense.

This is why an environment where it’s ok to ask stupid questions is important. One of the best ways I’ve seen of dealing with this is having a #dumbquestions channel on Slack. Another is having the Good Senior People ask seemingly simple questions in meetings to empower others.

3

35 reads

CURATED BY

decebaldobrica

#engineering, #machinelearning and #crypto

Read & Learn

20x Faster

without
deepstash

with
deepstash

with

deepstash

Access to 200,000+ ideas

Access to the mobile app

Unlimited idea saving & library

Unlimited history

Unlimited listening to ideas

Downloading & offline access

Personalized recommendations

Supercharge your mind with one idea per day

Enter your email and spend 1 minute every day to learn something new.

Email

I agree to receive email updates