The Productivity Mirage
Posted by msephton 4 days ago
Comments
Comment by nine_k 4 days ago
I have a bunch of small productivity tools I made to match my workflows: tiny shell scripts and functions, custom Emacs functions and settings, small tools to control windows placement, etc. Cumulatively I spent many days building and adjusting it.
But when I need to jump into a task, things just work. Syntax highlighting is there, code navigation is there, code analysis is there, I can rearrange things in my area of attention the way I want with a couple of keystrokes, I can drive git the way I want with a couple of letters. I don't have to tweak anything. Nothing bothers me, nothing distracts me, nothing wastes my time and breaks my concentration by requiring legwork.
(Same applies to my mechanical and electrical tools. Mostly.)
Invest in your work environment. Adjust your chair. Adjust your shell prompt. Adjust your editor settings. Comfortable? Good. Now you can forget about them all, they are just there working for you. Concentrate on the real problem you have. Godspeed!
The skill of concentrating on a problem is much harder though. Endless tweaking of your tools that eats all your time can be a sign that you are just trying to avoid that daunting and uninspiring task. But this is not the tools' problem, not that simple.
Comment by loveparade 4 days ago
Especially in the age of LLMs I think a lot of us hate the current tools that force you to context switch between N agents and terminals. Constant context switching takes the joy out of work and prevents you from getting into a flow state. I hope someone figures out the solution.
Comment by lobofta 4 days ago
Nowadays I often feel that that is a better spend of my time. Especially because it allows my mind to wonder about the next thing and what I could have missed. Before I was doing the context switching dance I felt I was going at 10x, but realized I was only perhaps going at 2x. Now I have severely reduced the number of threads, mostly to a single thread, and ask smaller questions. My sense is that I am probably now going at 2.5x but with my sanity restored and with a much firmer grasp of what is going on.
I also find myself coding more skeletons and letting an agent finish it, because I am again taking the time to think of the shape of the solution. The end result is better then when I allow the LLM to flail about in the codebase.
Comment by nine_k 3 days ago
Comment by embedding-shape 4 days ago
Don't do that if it bothers you? My best experience for "agent produces good code following good design" essentially been to always work with one agent, at most two, but in the same project. And while the agent works, I continue taking my notes of what I'm doing, what's next, what the design/architecture needs to evolve to do and so on.
Of course if you switch between five projects, you'll suffer the context switching cost. The best to avoid that? Don't context switch, find other related things to do close to the task you're "outsourcing", or start planning how to validate, or...
Comment by loveparade 4 days ago
That is still context switching for me. I do the same. While the agent works, which may be 10 minutes, I start planning follow up tasks, etc. But then eventually I still need to come back to the original task to review the agents work.
I don't switch across projects usually. But I can never get into a flow state like that. But I also don't want to sit there for 10 minutes doing nothing
Comment by nine_k 3 days ago
Try that. Some of the best ideas get born during the "idle time".
Comment by skydhash 4 days ago
Comment by DrewADesign 4 days ago
Comment by jeremyjh 4 days ago
I'm on neovim now, and the reason is coding agents. It ported my Spacemacs bindings to Astrovim in a few minutes.
Any feature I need to add, I just tell it and its done in a couple of minutes. Anytime I run into something that doesn't work quite how I want, I just tell the agent and boom, done.
I manage all my dotfiles this way now I think it totally changes the calculus. I'm even considering giving Nix another go.
Comment by theshrike79 4 days ago
Emacs -> (n)vim -> hx for CLI editor. Helix just works out of the box pretty much, no need for a Doom Helix or Oh-my-Helix to get it comfortable to use.
In terminals I finally ended up on Ghostty, I think the only significant configuration I have is setting `macos-option-as-alt`.
As for shell, fish + starship prompt has been my choice for years now. Very little customisation needed for either.
And for all software I pick the one that stores its configuration in a sane format in a XDG compatible location so I can shove it into chezmoi easily (looking at you iTerm2).
Comment by skydhash 4 days ago
I don’t know. I switch back from neovim to vim for some reason, but that vim setup has followed me for years even when I switched to emacs. And while I changed my emacs settings every once in a while, it has always been stable to me.
I’m not questioning your choice, and I do use IDE when the needs arise. But my emacs setup is mostly about dealing with every language and most tech interactions that I need. Not to be a full featured IDE for a language or a project.
Comment by DrewADesign 3 days ago
Comment by earnest_baanter 4 days ago
Comment by inigyou 4 days ago
Comment by randusername 4 days ago
I think a lot of this comes from beginners skipping some steps because they want to be accepted and taken seriously.
To be, rather than to seem, takes time, and you gotta earn your meals in the interim.
Comment by hilariously 3 days ago
Comment by alfiedotwtf 4 days ago
Live to work? No!
Work to live? No!
Live and work to Emacs!
Comment by aerodexis 3 days ago
the samurai mentality doesn't make sense in today's economy.
Comment by Yokohiii 4 days ago
Comment by e40 4 days ago
Comment by nullsanity 4 days ago
Comment by marcus_holmes 4 days ago
The whole "90% of my time as a coder is spent typing, so I should optimise my ability to type fast" is so, well, wrong. 90% of our time should be spent thinking, and most of that reading.
Comment by AdieuToLogic 4 days ago
Any software engineer who proclaims "90% of my time is spent typing" does not understand two fundamental industry axioms:
Software is the manifestation of a solution to a problem.
Define the problem which needs to be solved.
When making software, remember that it is a snapshot of
your understanding of the problem. It states to all,
including your future-self, your approach, clarity, and
appropriateness of the solution for the problem at hand.
Choose your statements wisely.
"Coding", when performed at the appropriate time, is little more than reifying a solution to a problem already understood. Also known as "a typing exercise."All of this is to say; I agree with your position.
Comment by AlexandrB 3 days ago
Edit: From GP:
> 90% of our time should be spent thinking, and most of that reading.
Reading what though? I assume you mean reading code. If you're reading code, being able to navigate through it quickly is important to maintaining context in your head. If the tool you're using makes navigation hard, it's easy to lose track of what you're doing. Obviously this can be taken to extremes, but spending some time investing in being able to navigate a codebase quickly is not wasted effort.
Comment by saturn8601 4 days ago
This was me, until I got AI. Now im building cool stuff that I never would have built (but also slowly destroying what little skill I had and not knowing much about the underlying code). Of the code I do know about well, I am fixing and improving my old code and being amazed (but probably not deeply learning) with new tricks and techniques. The focus on setup to me was always my mind playing a trick on me. The AI reduced the "hump" I need to cross so I just try it. Its really another form of perfecting your setup.
Focusing on the setup for some might be a way to avoid the hard thinking part that comes with immense practice and focus. Its a hump everyone has to cross. It comes easier to some but not others. I remember doing exactly this when I was unemployed traveling Europe wanting to get into a software engineering role after being boxed into a QA testing role for years. I was a CS grad and did this same stuff in college to my detriment(thats how I ended up in QA I guess). I paid for InterviewCake and spent countless days in European hostels and cafes doing nonsense like perfecting my setup or editor instead of focusing deeply on the problem set. This might also be a symptom of ADHD. Recently started medication and the immense change in productivity has recently made me weep that I wasted half my life doing things like perfecting my setup instead of actually doing something.
Comment by marcus_holmes 4 days ago
And yes, messing about with skills is the new messing around with setup. It's a rabbit hole.
I'm a massive, massive, believer in The Cult of Done [0] especially "the point of being done is not to finish but to get other things done". Allowing myself to finish something badly so that I can move on to the next thing was a game-changer for me. And, of course, I found out that it doesn't have to be what I would call perfect for others to appreciate it. Getting something shipped is way, way more important than getting something perfect, and often my procrastination around the fear that it wasn't perfect was stopping either.
[0] https://medium.com/@bre/the-cult-of-done-manifesto-724ca1c2f...
Comment by computerfriend 4 days ago
Are you building it if the LLM does it? I'd say the negative reaction comes from this.
Comment by Paradigma11 4 days ago
Comment by antonvs 4 days ago
I’ve been watching this play out at work. The people messing about with skills are invariably the people who have least impact on the actual shipping product. I suspect they hope that somehow, they’re going to hit on the magic formula that makes them productive.
Comment by sodapopcan 4 days ago
If you really must bring up AI here, a more relevant comment would be how you may over-complicate your AI workflow, over-focus on promots, or something along those lines.
Comment by Cthulhu_ 4 days ago
Comment by Theodores 4 days ago
Procrastination doesn't have to mean time on the couch, the person that keeps their house 'unreasonably tidy' is also procrastinating, albeit in their own special way, with feather duster and bleach. Yet they feel productive, plus there is that 'cleanliness is next to godliness' feeling after everything is spotless.
We have to guard against this with our coding setup, for example, I know people that have organised folders for their outbox emails. Management were impressed, however, I was quietly grumbling that real work needed to be done. Hence I search rather than organise email, to rarely impress management.
I like the 'contractor's desk' where there is just the laptop with no personal items, with the laptop having the default interface, wallpaper and terminal windows.
Comment by inigyou 4 days ago
Comment by sefrost 4 days ago
I don’t know if that’s accurate for most of us, who are simply humble CRUD app developers.
Comment by skydhash 4 days ago
Comment by TonyStr 4 days ago
Comment by raincole 4 days ago
Comment by Nursie 4 days ago
Comment by abrookewood 4 days ago
Comment by iansmith_hn 4 days ago
Comment by altmanaltman 4 days ago
Comment by flexagoon 4 days ago
> 90% of our time should be spent thinking
Thinking and typing often happen at the same time. Its much easier for many people to reason about a problem by writing and changing the code, and it's also why LLMs can significantly reduce code understanding even if you read everything they wrote.
Comment by qsera 4 days ago
Not sure about you, but I do a lot of thinking by typing code...In fact, I think it would be very hard to think without actually typing code..
I don't think this is exclusive to coding. Even general ideas are refined if one tries to put them in writing.
Comment by marcus_holmes 4 days ago
I used to smoke a lot, and every time I went to smoke outside I'd think about what I was coding and find some stupid mistake just from thinking about it away from the keyboard.
Now I go for a walk and 9 times out of 10 it's the same, I write better code because I thought about it away from the keyboard.
This also works with vibe coding, I find - I think of better approaches to the codebase when I'm not in front of it
Comment by qsera 4 days ago
Comment by theshrike79 4 days ago
Scaffolding a shitty solution end to end lets me see the whole path and gives me something to ground my thinking with.
It's easier to polish a turd than to make a diamond out of nothing. =)
Comment by bayesianbot 4 days ago
Comment by palmotea 4 days ago
Comment by Tade0 4 days ago
Comment by sodapopcan 4 days ago
This is somewhat misguided thinking in that, while very true that people who care more about their setup than getting actual work done do exist, "Optimizing for typing" really means: "optimizing for how quickly you can get back to thinking."
I've seen some experienced programmers use simple editors extremely quickly and others use IDEs very slowly. This short article does not dive into things like: "Does Bob need to right-click his mouse in the right place and choose 'split vertical' or does he just make that shit happen in an instant?" I've done a lot of pair-programming in my career and many people, even if they are good developers, feel like I'm watching my boomer parents use a computer.
Of course, in the end your output is all that matters (which I realize is the argument of this article), but there is definitely something to being able to use your tools of your choosing efficiently (which it sounds like Bob does).
Comment by MSFT_Edging 4 days ago
Three or four years ago I landed on a desktop that let me keep my tiling but never think about placement. It took a few disconnected days to get it just right, but I haven't changed more than the occasional line in the config since.
I hate thinking about configs now. My config lets me glide through using my computer without much thought, which IMO should be the point of configuring one's setup, so you don't have to think about it. People comment how fun it is to watch me navigate when I'm in a flow(mad at the computer). Sadly, with wayland taking over, my setup isn't long for this earth and I'm dreading the level of effort I'm going to have to put in to get a remotely comparable setup.
The biggest drawback of wayland/hyprland/etc is just how much bullshit one has to wade through for a working desktop. I don't want to learn desktop rendering just to have a dynamic wm that can open a file picker. I rather give an attacker my login creds than drop x11 at this point.
Comment by bob1029 4 days ago
I solve most of my problems when I'm doing things like chopping vegetables or mowing the lawn. Sitting in the presence of shiny technology does not magically confer one with the ability to achieve higher quality decisions more quickly. I find the opposite to be mostly true. I can massively outperform the development team that my clients have simply because I am not a full time employee and can idle out long enough to think about their problems the slow way. The urgency to keep the status circle green in Teams (and related productivity theater) creates a lot of stupid decisions in many shops.
Comment by mark_l_watson 4 days ago
Right on! For 15 years I worked for two companies that had their offices on the cliffs overlooking the ocean in La Jolla CA. I would spend a lot of time walking along the cliffs or in the park thinking about work, and for serious work discussions I would urge my colleagues to walk with me if we didn’t need a white board.
Listen to Rich Hickey’s ‘hammock talk’ again…
Comment by croemer 3 days ago
Comment by discreteevent 4 days ago
This article compares these kinds of companies ("nihilists") with game developers who are producing things that people pay for and use. The game developers don't pay much attention to productivity tools because they are too busy producing things.
https://components.news/the-gamer-and-the-nihilist/
> the perennially unprofitable venture-backed startup, for which faux productivity is connected to the generally immaterial nature of its high valuations, versus the game studio that lives and dies by the profitability of its products.
> In a sector of the economy where "it's not about how much you earn, but about how much you're worth," the labors of the companies whose workflows are built on the kinds of productivity apps that today comprise nearly 40 percent of Product Hunt's output are not actually directed at the creation of a thing, but at the appearance of the creation of a thing.
Comment by jeremyjh 4 days ago
Comment by jaccola 4 days ago
Comment by ballsac 3 days ago
Comment by haritha-j 4 days ago
Comment by ballsac 3 days ago
Comment by YouWhy 4 days ago
Many types of performance optimization work, including "programmer productivity" are really the engineer's getaway from having to contend with the ambiguity of the problem domain, the politics, the vagueness, the risk of failure and other kinds of suffering.
Alas, solving a problem coming from the world requires confronting the world - a couple of examples are the tedium of mentally working through a user workflow, getting somebody else to cooperate by articulating and proposing a joint strategy and more.
I do not believe in pain for pain's sake, but good delivery has an inherent quality of athleticism, and one cannot be an athlete without accepting that training for the track means proficiency at managing pain - and at the track rather than elsewhere.
Comment by 4m1rk 4 days ago
Comment by raincole 4 days ago
Comment by gniv 4 days ago
Comment by Cthulhu_ 4 days ago
Comment by theshrike79 4 days ago
But what I'm more interested in is that do companies with no prior Java baggage start greenfield Java projects in 2026? If 90% of your stack is Java and you start a new project, of course you pick it.
But would you do it just based on technical merits?
Comment by skydhash 4 days ago
Comment by a34729t 3 days ago
Comment by apt-apt-apt-apt 4 days ago
Comment by readthenotes1 4 days ago
Iirc, one of the essays had the moral " many software developers would rather work on the infrastructure to solve the problem than actually solve the problem"
Comment by Sharlin 4 days ago
Comment by LunicLynx 4 days ago
Comment by mark_l_watson 4 days ago
I am an old man (mid-70s) and retired now except for personal research and writing, but fifty years in the business taught me to simply pay attention to what people actually get done.
Comment by fallous 4 days ago
Comment by nottorp 4 days ago
You can spend thousands on a carbon fibre hi tech bicycle, or do what the Dutch do and go everywhere in a 50 euros battered thing that may or may not have been metal at some point.
Bonus:
Do you know those people that spend tons on "high end" mountaineering gear and never make it to the peaks?
Comment by utopiah 4 days ago
Comment by utopiah 3 days ago
Comment by firasd 4 days ago
The hobbyist tinkering with the programming setup has its benefits (enjoyment) but it’s a mistake to think it matters at all to the end user or indeed — as this post argues — to actual quality and quantity of work when compared to the benefits of actually thinking about the product and the code
Comment by volkk 4 days ago
to be fair, the car mod people's end goal is just modding their cars mostly. there's no end goal like there is with software (a product).
I think people just get preoccupied with things that make them feel good and are simple and have immediate feedback. Not to be pedantic, but I would argue the more accurate analogy to this is the photography community. I had a period where I was really obsessed with photography and realized the majority of people love just...buying shit. All they did was just collect cameras and lenses and took extremely mediocre pictures. Turns out actual creativity is a lot harder and less immediately satisfying than the dopamine hit of buying some new lens, or changing your vim colorscheme and updating some alias for the 100th time. I'm sure there's some psychology behind people being too afraid to actually produce something because then they actually put themselves out there whether that's through some website or a photograph.
Comment by sosborn 4 days ago
Comment by grvdrm 4 days ago
But this article mirrors my thinking on every new notes app, or new “second brain,” or somehow new or better version of Jira, etc. There are real productivity gains and losses and a lot of theatrics.
Comment by codethief 4 days ago
Nah, man. I would be a LOT more productive if I didn't have to wait all day for Jira tickets to load every single time, or that dropdown to load, or that popover to show, …
Comment by sublinear 4 days ago
Comment by grvdrm 4 days ago
Comment by gherkinnn 4 days ago
https://en.wikipedia.org/wiki/Shopping_addiction#Gear_Acquis....)
https://stanforddaily.com/2025/05/27/productive-procrastinat...
Buying ever more elaborate keyboards and endlessly tweaking syntax highlighting and Kanban boards will always loose to just getting on with it.
Comment by mpdpsycho 4 days ago
To be fair I mess with “how” I use or orchestrate the harness myself, I still can’t say anything I do that benefits me is more than placebo. At least from my projects. I think it matters easily for the things that can be patched like Context7 helping with API knowledge, and less for those that can’t like whatever “prompting style” attempts to address.
Maybe for those, you can say it matters in making agent use more subjectively ergonomic? So less of a correctness thing and more of reducing fatigue.
Comment by kelvinjps10 4 days ago
Comment by jeffrwells 4 days ago
Writing code has never been the hard part.
Not for Bob, not for you.
Comment by jreynar 4 days ago
People think -- and rightly in some environments -- that being busy will ensure they're valued. There's no better way to keep yourself busy than to insist on a new tool and become responsible for keeping the data in it up to date. Notion used properly can be invaluable but I've advised a couple companies where "tending the Notion garden" became someone's job despite there being no incremental value there.
The solution to the status problem is to focus on outcomes. No one cared that Bob's tool choice might've slowed him down when deciding the winner of the hackathon. And your manager shouldn't care if you use Superhuman and blaze through your mail or print it out and highlight important passages.
If you're working somewhere that gets that right, or close to right, then you can focus on picking productivity tools / approaches that genuinely matter and lead to better outcomes, ideally faster. In the era of agentic AI, there are more of them than ever before, though you have to choose wisely since there are plenty that could win a Tony for productivity theatre.
Comment by arjie 4 days ago
There are superstar product developers. Pieter Levels of the world. History has taught me that I don’t have that level of insight. But improving my flow gives me sufficient performance boost to be able to be useful to people who pay me for that.
Comment by bluegatty 4 days ago
Comment by sevenzero 4 days ago
Also used neovim for 2 years or so and hated every minute of it having to configure LSPs and wwhatnot. I now use a mixture of VS Code and IntelliJ and its good enough for me.
I kept using vim motions however.
Comment by rf15 4 days ago
Don't be in love with your code or your workstation. Only the endresult matters.
Comment by critic-of-slop 4 days ago
Comment by breppp 4 days ago
In the AI world you see it with the overly elaborate prompt markdown files where my agent gives performance reviews to 4 teams of agents each with its own quirky personality traits
Comment by whytai 4 days ago
I have a hunch the amount of prs written per day per engineer is likely the same or only 10-15% higher.
Comment by nagoff 4 days ago
Comment by treszkai 3 days ago
Similarly to how no amount of efficiency gains would make Microsoft produce quality software, because they optimize for other metrics.
Comment by movpasd 4 days ago
Comment by Yokohiii 4 days ago
Then again, the question is, if the simple action needs to be changed, how hard will that be?
Comment by skydhash 4 days ago
Comment by jimberlage 3 days ago
I used to check once a quarter. With AI, I devote 1-2 days a week to the meta-task of improving my tooling, but I'm sure that will fade once AI tooling becomes more standardized.
It's not worth being one of those guys who gets too into the tools, because it can keep you from the actual valuable work. Plus, you are then judged not as a regular engineer, but as a person who is supposed to have some secret productivity sauce, and when people see that it doesn't make more of a difference they can start to discount your opinion.
Comment by blizdiddy 4 days ago
Comment by amazingamazing 4 days ago
Comment by blizdiddy 3 days ago
Comment by harrouet 4 days ago
At the end it is more productive to be focused on the right target, than to gain 15% of productivity because you use whatever tools. Note that this is not mutually exclusive, but putting brain power in thinking about the product, rather than about the productivity hacks, is what matters.
The problem is that most companies don't care about thinking. You may have more chances to get promoted because you are sweating and running everywhere, instead of calmly thinking, looking through the window and developing mental models.
Comment by HyperL0gi 4 days ago
Comment by mitjam 3 days ago
Ahead of the course, we prepared by obsessing over our IntelliJ or Eclipse configs and had intense discussions about this.
To our surprise, the teacher urged us to use nothing but the basic JDK tools and Notepad. He wanted us to learn what's going on under the hood and also told us, that the productivity will probably be about the same.
Comment by crossroadsguy 4 days ago
I stopped at this line
> he was responsible for shipping Facebook Groups
and wondered how can this be a compliment in any shape or form. I mean even considering Fb Groups from its day 1, not the bigger Frankenstein it has become today.
But I get it. "Shipping" was the achievement.
> massive productivity nerd
My "productivity" phase started at the start of college and since then it has a been tapering down every month/year and I don't complain at all.
I wish I did something else (I mean not even related to my studies or field..anything else) when I was actually exploring the shiny wide world of productivity porn. No, it didn't enrich me in anyway.
And I've seen so many seniors (at various levels of seniority over the years) who had stopped giving two hoots about tools or productivity tools in its entirety. It's like you have to reach city A from city B and few people just hop on the car available to them or public transport (this one not in USA) whenever they are ready to leave. But a lot of people go down the rabbit hole of best cars, best fuels, best routes (and then they obsess over their favourite coffee chains along the way), and get in fights with other people on car and other forums in the planning. By the time they could agree on their cars, the other folks who had just gone, had finished their works there, and even took an extra day or two to sightsee and shit like that and they might have even forgotten about that because it was weeks and months ago.
This is not too much of far fetching. This is actually quite important in early career states and habit and ideas set in during that time.
What has rather worked for me far more/better is a good place to work, environment, lighting, ambience, noise, temperature, material physical comforts available, maybe a bit of easy variation (as needed; not as forced upon) et cetera. But I think these things work differently for different people (and at different ages).
Comment by Yokohiii 4 days ago
Comment by Hasz 3 days ago
I like to marie kondo my tools -- if it is not bringing me joy to use or making my life easier, I yeet it. If it is, it stays.
Comment by theshrike79 4 days ago
In it he talks about how making things easier to do via scripts is a good thing. He even has a system of using `,` as a prefix for all his own scripts just to make them discoverable with ,<TAB> :)
Comment by kfse 4 days ago
Comment by asp_hornet 4 days ago
Comment by sharken 4 days ago
The easier part is maintaining and tweaking that code, but do not underestimate the value of the former.
Comment by kfse 4 days ago
Comment by LastTrain 4 days ago
Comment by kfse 4 days ago
Comment by Hamuko 4 days ago
Comment by strken 4 days ago
Comment by kfse 4 days ago
Comment by adrianN 4 days ago
Comment by etoxin 4 days ago
Comment by 4lx87 4 days ago
Comment by Ethan312 4 days ago
Comment by Cthulhu_ 4 days ago
Comment by hokapo 4 days ago
It applies especially now, in the age of AI agents. When it's so fast to build things, I need to deliberately stop once in a while, and think if it's actually worth it to go down some rabbit hole, or if I should assess what the real problems are.
Comment by itomato 4 days ago
Comment by Yokohiii 4 days ago
Back then every IDE needed minutes to load a tiny project and it was still much less efficient to open a file.
Comment by smitty1e 4 days ago
"If the iron be blunt, and he do not whet the edge, then must he put to more strength: but wisdom is profitable to direct." (Eccl10:10)
Comment by larodi 4 days ago
Comment by automatic6131 4 days ago
They adapted something that people were already using in great numbers, and provided a good interface for an extra hot flow without compromising what facebook was. (so that people would keep using facebook for this purpose, and not go to another platform with a dedicated workflow, e.g. craigslist or freecycle)
So they did actually provide value to end users here, and arguably captured some for themself too. I know the last n times I've opened facebook have been exclusively for buy/sell groups
Comment by Yokohiii 4 days ago
The hard part is that companies don't hire creative thinkers, but specialists. So you let people try stuff until you think something good happened.
Comment by larodi 4 days ago
Comment by _rousbound 4 days ago
No syntax highlighting at all.
And it is a commercial product, I'm not talking about a pet project or hobby.
It amazes me, really.
Comment by lofaszvanitt 4 days ago
Comment by spacecell 4 days ago
Comment by lilerjee 4 days ago
The main idea of the article is not clear, and the structure of it is not good to read
Comment by redwood 4 days ago
Comment by Kuyawa 3 days ago
Comment by khalic 4 days ago
Comment by luciana1u 4 days ago
Comment by t43562 3 days ago
One usually doesn't have to fall back from these too often because so many machines have them and its the fallback that I find so tiresome - having to get some other muscle memory going for a tool I haven't used in a while.
Level 2 would be strace - because it's so incredibly useful when trying to find out why something isn't working as you might expect.
I don't claim to be highly productive though - just old. Productivity for me comes from making up my mind what to do and being able to visualise it. Usually there's a massive period of unproductivity before every brief bit of decent work. If I was more decisive then people might know my name :-) but I'm obscure like most of us I presume.
Comment by PaulRobinson 4 days ago
I once spent 9 months trying to figure out how a piece of software should be built - I wanted it to be perfect - while my bosses agonised over the delay. One night, in a bout of anxiety and just trying to get something to show my bosses, I sat down at around 7pm and just started riffing away in the editor. I ended up working through the night. By 5am it was done. By 9am it was in production. By 11am the first customers were giving us money. I didn't need to edit it again for 3 months. That was the moment I decided to ignore an old quote I'd been handed and had until the point believed had real truth in it:
"Give me six hours to chop down a tree, I'll spend the first three sharpening the axe" - attributed widely to Abraham Lincoln, but as the other saying goes "90% of the quotes you read on the Internet are misattributed to the wrong person" - Mark Twain.
There are some situations where the preparation is necessary. If your axe is blunt, it'll never cut down the tree, even in 6 hours. Getting it sharp in the first 3 hours means you might finish the task early, for less physical effort.
But more often than not, you're just procrastinating. You could go find another axe. You could find that the axe you have is just fine and gets your tree down in an hour rather than three hours of sharpening followed by half an hour of chopping. But by spending your time sharpening, and not chopping, you have the illusion of telling yourself you're working towards your goal, but you're not. And guess what, sharpening is a lot easier and a lot less sweaty than chopping, so it's more comfortable too - what's not to like?
YAGNI, Yak Shaving, axe sharpening, Rimmer's Revision Timetable, they all bring into focus different perspectives of the same problem:
Doing a thing that isn't the thing, isn't doing the thing.
Yes, if your editor config is distracting and you want to fix something, go find a quick thing and move on. Installing a tiling window manager and a global keyboard shortcut app of some sort might make things flow a little better, but spending days optimising is likely poor ROI.
Just try and do the thing. Build something. Stop planning to build something. If you aren't sure what to build, spend 5 minutes trying to build something and figure out what's actually in your way (hint: it's not your editor, it's not your lack of gdb knowledge, it's not that you're not using the hottest new programming language or that new agent/skill/model people are talking about), and find the possible quickest way to get back to making progress.
Yes, you need to think about prod. The more senior you are, the easier this comes naturally, but writing tests is doing the thing, not procrastination. Putting in operational and business metrics is doing the thing, not procrastination. Why? Because those are part of the thing. Your prompts are not part of the thing, and neither is your tmux config.
As an aside, LLMs can maybe help here (but don't over-engineer the harness): I have a side project where I feel I need to pick up a lot of theory on reinforcement learning, I could do with a refresher on partial differential equations, and I also want to learn some more advanced socket programming in C (trust me, all these things combine into a single thing).
I could have spent the next three months reading books and doing courses and then started on my project, but what I've done instead is get Fable to build out a curriculum where I build the relevant parts as I'm learning.
The first spec it came back with told me I had about 7-10 months of work ahead of me, but I could see (at least in the early stages which I understand better than the later stages), I'd be in a virtuous cycle of learning → applying → learning → applying → ... and within the first couple of weeks I'd have some basic harnesses that showed progress and have some of the theory down too.
This, I think, is a valuable way to structure the learning without procrastination. A personalised tutor who can help you fill in the gaps in your knowledge as you build, so you build the right thing and learn, but you're not just procrastinating up-front, feels good. And, if I get 3 months in and have enough knowledge to realise the next three months are not quite right, I will have the knowledge to re-prompt, re-draft and move forward.
Comment by phtrivier 4 days ago
Comment by mawadev 4 days ago
I think thats exactly the problem
Comment by jbyers 4 days ago
1. We had an engineer who worked remote (us in Silicon Valley, him in Central Europe) in the early 2000s. He was - and still is, I'm being vague to protect his privacy - massively productive. He generated reams of high-quality code at a shocking rate, and was an all around star performer: supporting others on the team, fixing bugs, writing docs, super nice guy. We joked that he must have been farming out work to the rest of his town.
We finally get him to visit after a lot of challenges securing a visa, and we are super excited when he shows up in the office. He brings a tiny laptop with a screen half the size of a 13" Macbook Pro and sits down and starts coding away. I can't remember which editor he used - vi(m) or emacs - but someone asks him after an hour what machine he used at home and if he'd like to borrow a larger screen / desktop? He's like, what are you talking about, this is my only computer.
You could hear the crickets as every member of the team has the same thought: if he's that productive on a teeny laptop...
2. Our company did the first Oracle ERP implementation on Linux, which in the early 2000s was a big deal. It was very painful - we had to fix a lot of bugs alongside the team from Oracle at every level of the stack. After many rounds of escalations we told Oracle we needed a lot more horsepower, and they agreed to send their best consultant, pitched like the Harvey Keitel cleaner in Pulp Fiction. The Oracle team in our office held him in awe: "Oh, X is exceptional!"
The guy shows up. Very friendly, soft-spoken, unassuming. I agree to be his handler for the first week. We sit him down at a Windows machine, and I'm like, what do you need? He's like, I just need access to various systems and this stock Windows installation is fine.
He opens Notepad. He can't touch type, he hunts and pecks. I'm thinking: zero percent chance this guy is The Wolf.
I watch him write SQL and PL/SQL, huge queries, with no reference material and no distractions, entirely in Notepad, slowly picking away at the keyboard. I realize: he does not make typos, he does not backtrack. He looks at the problem, thinks for a few minutes, talks to people, thinks a bit more, runs a few exploratory queries, grinds out some code, pastes it in and runs it, on to the next. Obviously not every query ran perfectly, but he did 90% of the work in his brain and and then just played out the tape.
He did more in a few weeks than the rest of the consultants did in six months. I'm not sure he ever touched the delete key, and I'm certain he used nothing but Notepad.
Long story short, you see a few of these people in action, and you stop assuming anything about what great looks like. Never underestimate the people who don't look like you / use a fancy editor / fit the idealized high-productivity image in your head. Judge them by how they treat other humans and what they output.
Comment by Ozzie-D 4 days ago
Comment by latentframe 4 days ago
Comment by WangBuilds 4 days ago
Comment by khanhnguyen8386 4 days ago
Comment by Clapping5505 4 days ago
Comment by nsoonhui 4 days ago
How is this *not* real productivity gain?
Comment by Cthulhu_ 4 days ago
Comment by blargey 4 days ago
Comment by raincole 4 days ago
Comment by owebmaster 4 days ago
Comment by Grombobulous 4 days ago
Comment by Cthulhu_ 4 days ago
...unless they are instructed to use poor grammar.
Actually I'm surprised they do use good grammar given how much poor grammar would be in their datasets. But that's probably why they don't just blindly train these things on internet comments.
Comment by skydhash 4 days ago