Live data from Hacker News

Mental Model: Difficult Problems vs. Hard Work

benjamincongdon.me

21–30 of 47 posts

Re: Mental Model: Difficult Problems vs. Hard Work

#21
I think there's a connection here with the mythic 10x developer as well.

Some developers are just so much slower at the Difficult Problems, so that the developers that are good at them seem like 10x (or 100x or infinitely) more productive than their peers.

But I don't think they have the same leverage on the Hard Work problems.

Re: Mental Model: Difficult Problems vs. Hard Work

#22
post #3

I usually refer to this distinction as "tall" vs. "wide" problems. Tall problems require having at least one exceptional or specialized person to solve it, whereas wide problems can be cleared by most generalist problem-solvers. The time required to solve wide problems is simply one of aggregate bandwidth. Unfortunately, I think society has a ton of people who can solve super tall problems working on super wide probl…

The way progress is made on tall and wide problems is different. On tall problems, you make progress "climbing", and don't move forward much until you reach the peak, and then it's behind you all at once. For wide problems, you can make a little headway "forward" in little increments, which is easier to track.

I think a lot of wide problems could be approached as tall problems, but the incentive structure in some places is set up to measure how much "forward" movement is made each day, so you're punished for "climbing" since people think that you're staying still instead of doing work.

Re: Mental Model: Difficult Problems vs. Hard Work

#23

> there are problems that are solvable by throwing a lot of human-hours at it (“Hard Work”), and problems that are not a function of raw work hours, but rather require dealing with ambiguity (“Difficult Problems”) There's also the 3rd category of the hell of work that is easy, ambigous, but just uses up a ton of mental space to work through that mushy ambiguity. I'd solve difficult problems all day, can stomach doing…

ambiguity can be solved by random action. I've solved so many of these uncertain problems by tossing coins. Once I make a decision, everyone comes out with reasons I'm wrong and just tells me what they want. Or, everyone accepts it and moves on and it is obvious nobody actually cares.

So can ignorance and it's hard to tell which you're solving with that coin. I wouldn't want to work with you.

Re: Mental Model: Difficult Problems vs. Hard Work

#25
post #6

What are folks thoughts on changing hard work into difficult problems? That seems to be the more interesting transformation. And potentially where startups thrive. What are some cases where you thought you transformed hard work into a difficult problem?

I actually think this (changing hard work into difficult problems) can be a danger on the individual level: a dislike of "mere" hard work means that we often seek to transform it into an "interesting" difficult problem. The classic example here is spending a day automating a task that only takes a few minutes of boring low-level maintenance a week.

Re: Mental Model: Difficult Problems vs. Hard Work

#26

I like this distinction, and the bit about converting difficult problems into hard-work. There's one thing that occurred to me in the context of agile + difficult problems. When I think about my sprints, the vast amount of my time is spend dominated on that one "difficult" problem, which on the surface does not feel difficult. The spirit of agile development is to _try_ to transform difficult problems into hard-work…

I see your point and thought the same when reading the article. Decomposition.

Re: Mental Model: Difficult Problems vs. Hard Work

#27
I sold cars for a living and was basically top 0.1-0.2% at it nationwide.

Every now and then a coworker would say that selling cars was easy work. So I'd ask him if it's so easy, why didn't he promise to double his sales next month? Ohh.. because that would be hard.

A lot of things are easy to do casually and hard to do intensely at scale.

Re: Mental Model: Difficult Problems vs. Hard Work

#28

Earlier quoted context omitted.

I don't think that's the spirit of agile development at all. Agile is about closed loops with fast feedback. It's about communicating quickly and reacting to new information. I don't see it as having much to do with "hard vs. difficult" at all.

It _can_. The idea of having prototypes that can be used immediately but very small in scope, not thinking about what you're going to be working on next week right now, making sure you're setting up systems that can give you fast feedback etc, are immensely helpful for difficult problems. Just taking the examples that are mentioned here: > Designing an architecture for a new, ambiguously scoped system. The MVP is, ca…

The idea of having prototypes that can be used immediately assumes you have hard work, not difficult problems. It doesn't try to transform anything into any other thing, it just fails to work on one of those cases.

As you quoted, it's a strategy for dealing with ambiguity risks, AKA solving the wrong problem. It assumes you have a lot of small problems to solve, and separates their risks so you can solve one at a time. It doesn't deal with big unseparable risks at all.

Re: Mental Model: Difficult Problems vs. Hard Work

#29
post #21

I think there's a connection here with the mythic 10x developer as well. Some developers are just so much slower at the Difficult Problems, so that the developers that are good at them seem like 10x (or 100x or infinitely) more productive than their peers. But I don't think they have the same leverage on the Hard Work problems.

Every time developers are extremely productive, it's because they converted hard work into difficult problems. It's not only that they solve those problems faster, but also that most people won't even try to convert them.

It certainly does not work for every kind of work. But when that doesn't work, you don't have extremely productive developers.

Re: Mental Model: Difficult Problems vs. Hard Work

#30

> One of my favorite working habits is to have two projects on my plate at a time: one project that is “just” implementation work, and another that involves some ambiguous design. If things go as planned, the implementation work finishes around the same time the design work does, so I can start implementing the design, and pickup another ambiguous task. Ideally, this is a cycle that perpetuates itself. Since implemen…

Everything you open source has been top notch - I can't wait to see what your 'ambitious' project becomes. (In quotes for your ambitious is not a mere mortal's ;)
Post reply on HN