At first, I got a bit defensive ... and in response, I ended up running an experiment, delivering code & written documents that — inside my head — felt incomplete, unpolished, not quite at the "bar".
The feedback following?
Overwhelmingly positive.
I had anticipated that my peers and leadership would notice a drop in quality. Instead, I was commended for speed of delivery.
Speaking from my experience in writing docs fast vs slow, the peers probably noticed the drop in quality, but as a positive on team-work.
Getting a document out before it is set in stone has helped bring in leadership early and have their hand in guiding your document (for better or worse). This has a diffusion of credit in general, but a document with many inputs and one editor has worked out better than a document which is written alone and only enters the debate as a "product".
Giving other people the opportunity to influence your opinion before you've made up your mind is a bit of a leap - but it is better for the group than the individual.
Do you think your coworkers were telling you your bar was too high?
Too much “thinker” mentality and the project never goes anywhere. Too much “doer” mentally and the project moves but may go down an unproductive path.
Perhaps an analogy is that “thinker” and “doer” mentalities work together like a stochastic gradient descent algorithm.
The “thinker” mode tries to calculate accurate gradients, but never moves towards the goal.
The “doer” mode takes a step towards the next iteration, regardless of whether you have an accurate gradient already.
Balancing the two correctly can give beautiful momentum dynamics that steers towards your goal.
There are some famous examples complementary and different personalities working together very well, like e.g. Kahneman and Tversky:
https://www.newyorker.com/books/page-turner/the-two-friends-...
Many engineers are somewhere on the Asperger's spectrum, as Temple Grandin tells her Googler audience in [1]. Overthinking is a prime symptom of it. I'm disappointed to see that not even mentioned in this article.
There are some engineering practices that, unfortunately, amplify this rather than tamping it down. Code reviews, in particular, can do that; a reviewer gets points by nitpicking ("you could have done that in one line instead of two!").
Discovering you have a mental disorder puts motivational and organisational think pieces in a very different light.
Would love to see a link to solid data of what this means. Is it 20% vs. 2% kind of thing if you filter for just engineers vs. general population?
Yesterday I helped a guy to register his little perfume company’s trademark on a government platform. We filled in all the fields and then unexpectedly (to me) it just asked for a picture. I thought okay, maybe we’ll get back to it after a designer makes a logo.
The guy pulls his iphone and creates a note. “Good fonts”. Three enters, <companyname>, enter, parfum. He asks how to make first line bigger, I show him. He indents with spaces. I point out that alignment is not exactly centered. “Looks okay”, he takes a screenshot, crops it to a rectangle and sends it to me to upload into the form, and to his chinese partner, straight into production.
It’s a book optimized for arguing with rationalists (who among other things think overthinking can solve every problem) so some of the points seem irrelevant to most people, but they can be useful.
---
"A person who faces many choices, really has one
Out of indecision and confusion, they choose to have none"
No. If we're anxious, addicted, lazy, having wrong information, being misled - then no. And unfortunately that is the case (most of the time). This assumes that all can think rationally and failure or redundant effort is wasteful. As always, balance is needed.
In a system that favors watching first and acting at the last responsible moment, this is in someways both a counterweight and an anchor for analysis.
There are some ways in which systems thinking is the same no matter what domain you're looking at, and to some extent the ways in which they are different have more to do with lack/lag in cross-domain communication rather than any intrinsic distinctions between the domains. There is probably a Scale of Permanence for creating a business, it's just not called that or nobody has compiled a canonical list from the available sources.
I'd also like something much more difficult to estimate: Scale of Importance.
You have some sloppy but readable code in a unit test vs. sloppy and unreadable code in a tight loop in a production module. Which one is more important?
What an interesting case of nominative determinism.
90% of the time, you need whatever technology your company already uses, or your team already knows, that solves the problem.
If your company already uses .NET and SQL Server, you probably don't need node.js and postgres. If your company already uses PHP and sqlite, you still might not need postgres, unless there's an identifiable reason to switch.
> Rust or Go?
Well that's quite a range.
- OK stop all the complexity of devops processes, just ssh to the server, then run `docker compose build && docker compose up -d`.
Now i can have my app running in production to serve its purpose. Problem solved.
[watchtower](https://github.com/containrrr/watchtower)
It's time you stop thinkin' and waisting the day.
—from The Hobbit (1977) [0]
That could of have used a lot more thought: What is the basis for it? Are less educated people more productive? Is the US ever portrayed that way?
IME, there are individuals who overthink - that is, they think for emotional needs not related to the problem. But I don't think I've ever encountered an organization where generally too much thinking was going on!
I think it's trendy to denigrate or ignore critical thought, education, reason, facts ... Our decisions come from somewhere; either we think for ourselves or we are victims of others who will think for you and influence the public. It seems so many trends these days benefit a powerful few and train the public to follow them obediently.
It’s important that the first release be extremely high Quality. I’m not a fan of lash-up MVPs.
I work very quickly, and do good work.
I just did that with the 2.0 version of one of my apps. I released 2.0 a couple weeks ago, and it’s at 2.1.4 (I think). I test, and solicit feedback. One of the releases covered feedback on the App Store.
It stops, after a few tweaks.
This is not some idle boasting. This is a project with a great deal of history.
Here's the app, itself, in the App Store: https://apps.apple.com/us/app/ambiamara/id1448933389
It started off as "SpeakerBeeper," in ObjC, ten years ago. Here's the codebase for that: https://github.com/LittleGreenViper/speakerbeeper
It then became "X-Timer," in 2015-17, after Swift came out. Here's the codebase for that: https://github.com/LittleGreenViper/x-timer
This is the current codebase for the "AmbiaMara" app, which has been out for the last three years or so: https://github.com/RiftValleySoftware/ambiamara
The codebases show a lot of learning and growth. You can easily see how fast I work, and how I'm able to maintain a fairly high level of Quality, throughout the project.
Yeah, it's just a silly timer, but it's a good one. I use it constantly. I basically wrote it for myself. A lot of my work is like that.
FWIW in the last 18 months I recall pitching one major European industrial group requesting specifically disruptive technology for established industries. Considered at the board level, their feedback was unanimously positive: but they could not take the opportunity because it was "too far from existing business lines". If you thought corporate VC was bad, try that in an old-Europe context...
I am not sure whether it is specific for old-Europe or not just a universal symptom for long-running companies unable to re-invent themselves, because they were somehow locked into an established pathway, so that fundamental changes promissing probable benefits in the long run would mean certain short-term losses in the near future due to major investments and canibalization of their legacy businesses. An example outside of Europe seems to be Boeing's stretching of a several-decade-old airplane design towards a limit were it became increasingly problematic, while starting over would have involved extremely large investments and the loss of much of the experience gained from the old design.
On the positive side, such lock-ins of traditional companies can mean sound business opportunities for small newcomers. I was myself working with small dynamic companies in Germany and Austria who were afraid that one day a large, financially strong competitor might decide to copy their successful products and business modell or enter their highly profitable niche market -- however, it never happened. In other words: If the parent is right and established companies in old-Europe are even more unflexible than elsewhere, it should be safer to attempt to disrupt their old-Europe markets than to try the same somewhere else.
First, how is the cost of failure reduced?
It sounds like fundamental economics: If you reduce the cost of investing, usually by lowering interest rates, then investment increases, following the pattern you described.
What is the state of credit / funding in China? Is the government still pumping credit into the economy?
> People seem to throw themselves in to ventures without business plans, market research or specific costings.
But usually when we start seeing that pattern, it's a bubble. Resources are being allocated to unproductive initiatives.
As with anything, there's a balance.
Perhaps our way might not be that bad after all.
And while Chinese currently the EV market discovers it's totally unclear how the car industry will look in 10 years
(as a means of decreasing the chances of information and ideas which they actively censure from spreading in the population, ideas which would be likely undermine the current leadership's ability to maintain unilateral power. Just as Russia has experienced with its citizens as they become more connected to others outside of the country, whose individual liberties and relatively meritocratic economic systems they've begun to push for domestically)
-rather than lacking technical merits in what they create or the speed at which they do so.
I think it's a fundamental error to call anything 'our way' or 'their way'. It prevents you - and them - from learning and integrating ideas. My way is to avidly learn and use the best ideas I can find, regardless of their source.