I have a theory that software drives people insane
Posted by rglover 1 day ago
Comments
Comment by bob1029 1 day ago
When developers are required to interact with the customer on a regular basis, the freewheeling effects described in this article are damped massively.
The potential for insanity goes off the charts when the development team is siloed away in solitary confinement and the only interactions with the client occur via some prison guard known as "project manager" sliding notes under the door.
Working with the customer sometimes sucks. Just like exercise and eating vegetables sometimes suck. It's a temporary unhappiness that keeps us grounded in reality.
Comment by bombela 1 day ago
Obviously, the number of uniquely different users has an influence, and users most often do not truly know what they need, but that's our job to tease appart.
Turns out the users most often benefits from small changes that reduces friction toward achieving their goal. Any time saving will be appreciated, but only if it can be trusted to work. Nothing worse than the dread of knowing an action might or might not work randomly.
I use most software today with a constant sense of fear that the next action will break something and waste my time. Undo probably doesn't work properly anyways
Comment by devmor 1 day ago
It's very frustrating.
Comment by hathawsh 1 day ago
Comment by robertlagrant 1 day ago
Comment by computomatic 1 day ago
Comment by Alwayshasbeeb 1 day ago
Wow, that's describing it really well. I work for a guy who basically started a company by trying to vibe code his ideas into existence (late 2023 LLMs) and realized he would need actual developers to get anywhere.
It was excruciating trying to make him answer questions to get proper domain modelling going since LLM use had made him think of software as being wished into existence in a "declarative" way.
Not to mention the heavy contrast my persistent questioning had to a background of sycophantic yes-man claudespeak.
Comment by devmor 1 day ago
I think I have been pretty lucky the last 5-6 years of my career at least, where someone asking those questions is treated as trying to drive the team to a better result, rather than a pedant.
Comment by some_furry 1 day ago
Comment by natdavidson 1 day ago
Comment by paulhebert 1 day ago
I’ve asked that question all the time throughout my career. Lots of promotions. No firings or layoffs.
Why would you lose your job?
Comment by reaperducer 1 day ago
You are correct. You ask that if you want to get promoted to a better job, because you understood the problem and likely saved the company money, time, effort or all three, rather than just pushing the buttons like a good code monkey.
Comment by devmor 1 day ago
Comment by win311fwg 1 day ago
Comment by devmor 1 day ago
Comment by win311fwg 1 day ago
Comment by devmor 1 day ago
You can't always change your circumstances, but if you work to make little changes to improve your environment, the people that work with you probably will too.
My current team is like that - we all see the roadblocks that make our job harder, and we know we can't solve them all, but we talk about and work on making our own solutions to get around those things - like making a habit of asking those questions to better understand what's really desired by the stakeholder.
Comment by win311fwg 1 day ago
Comment by devmor 1 day ago
Comment by win311fwg 22 hours ago
'"What problem are we trying to solve?" is a question I have to ask constantly in corporate development environments, and rarely does anyone presenting the task to be done actually know the answer! It's very frustrating.'
We talked about that for a bit, and then, only hours later, we got:
"Your job doesn't have to be that way."
So, again, I am glad you realized you have the power to change your world and did so. But, again, know that there were only hours between your job being a complete frustrating mess and it ostensibly becoming a well functioning system so there is not yet any evidence of it being a long-lived change. People can modify their behaviour momentarily but old habits die hard.
Comment by devmor 20 hours ago
Comment by win311fwg 18 hours ago
Now this seems to imply, to the best of my interpretation, that you only experienced that job at a single company some time in the past. Okay. But where did you think that was found in the earlier text? As far as I can see this is new information. And why are you still (at time of writing that comment, at least) frustrated by something that you are now suggesting, as best I can tell, was already no longer a part of your life and, given you finding significance in noting that you've done this for 15 years, likely hasn't been for a long time?
Comment by devmor 13 hours ago
You have repeatedly confused yourself by assigning your own meanings to my words instead of asking for clarity where you didn’t understand.
I think that most people who read my comments understood that I am speaking broadly about my career, and that while I’ve encountered this problem at my current job, my team and I have worked to make it better.
Your primary issue comes from the fact that you asserted that my frustrations with corporate development are in fact the real job, and your seeming offense at being told that no, your negativity and hostility are not a universally shared experience.
I hope things get better for you in your career, but please stop harassing others for not succumbing to cynicism.
Comment by win311fwg 10 hours ago
As instructed, the words were taken literally. Now that you are telling us that we actually needed to read between the lines to understand what you really meant is informative, but curiously late to make that known, especially in light of earlier instructions.
> and your seeming offense at being told that no, your negativity and hostility are not a universally shared experience.
Uh, what? That doesn't make any sense. If I were offended or felt negativity or hostility I would have turned off the computer and went outside. This is a completely voluntary time use. It had better be good. The fact that I am still here proves that there is no negative emotion felt whatsoever because the instant there is anything else I'm gone. Presumably the same holds for you because there is no rational explanation, assuming you are of sound mind, why you wouldn't have equally found something better to do if there was anything unpleasant experienced on your end.
I guess this is supposed to be another case where we cannot take what you have written literally?
Comment by boogieknite 1 day ago
my "customers always right" approach has produced much more successful and useful software compared to my perfect little hobby projects which will never be complete and noone would ever use anyway
Comment by cosmic_cheese 1 day ago
How great the impact is depends on how management uses the data. If they use it add resolution to broad strokes from studies and the like, there may be no negative impact at all, but in my experience it's much, much more common for management to read analytics like tea leaves and interpret it in whatever way best fits the individual's/team's biases/agendas.
Comment by burningChrome 1 day ago
I lost track of how many times the directors would tell us, "Since the analytics say A, we should do B." then the research person says, "Sure Jim, great idea, lets get a few rounds of useability research and confirm it first."
Then the always predictable thing happens: Users never align with your analytics. Seeing data and seeing someone struggling to do something basic with your interface is totally different. When directors see these videos, it really makes them see how important research is and not just relying on data to make decisions. Right now, anything the research team wants, they usually get - its had that profound of an impact on our leadership team.
Comment by asdfman123 1 day ago
Unfortunately, orgs often treat devs like this as indulgent or wasting time. They need it to be done the inefficient way because that's the only way they have visibility and control.
Comment by cm11 1 day ago
Comment by zahlman 1 day ago
Any good theories for how this happens (i.e. why the data fails to capture the struggle)?
Comment by layer8 1 day ago
Comment by zbentley 1 day ago
Comment by zmgsabst 1 day ago
Eg, if you have a bunch of airplanes returning from a war, you might be tempted to armor the areas where they were hit. But you want to armor planes where the holes arent because those are the critical areas.
If you can read literal bullet holes backwards, hundred dimensional preference vectors say something, but we generally have no clue.
Comment by skydhash 1 day ago
I think it's because a lot of analytics are data points oriented instead of being workflow oriented. So you can see that feature A is not being used a lot, but it's very important in a particular flow. Feature B may be used a lot, but it can be only important for a particular class of users while very detrimental mentally for another class.
People use software for a needs, but rarely I've seen a need being highlighted when interpreting analytics data.
Comment by anonymars 1 day ago
Hold on, why is it rarely used?
Is it hard to use? Is it hard to find? Was it poorly named? Does it work right? Does it get me 80% of the way there? Does it get me 20% of the way there? Do I rarely need it but when I do need it it's a huge time saver? Am I hesitant to depend on it because I fear it will be taken away in a future update?
Comment by mjr00 1 day ago
Oh man, I remember a very specific example of this: many years ago now, Google Chrome pushed an update that got rid of the option on the menu bar for "Close Tabs to the Right". I remember looking into the Google issue tracker where people were complaining, and some PM provided a "data-driven" justification: when people opened the context menu, they only clicked on the "Close Tabs to the Right" option 1-2% of the time.
It's a great example of why data without context can give you the wrong answer. Of course the option is used relatively very rarely; you only need to clear out your tabs every once in a while, compared to creating new ones or managing tab groups! But it's still an essential task. It's like saying filing your taxes isn't important because you only need to do it 0.2% days of the year.
Comment by ronjakoi 1 day ago
Comment by zahlman 1 day ago
Comment by bluefirebrand 1 day ago
Comment by fragmede 1 day ago
Comment by anonymars 1 day ago
Not only to understand the usage of features, but also use cases perhaps to design even better features
Comment by skydhash 1 day ago
Comment by Terr_ 1 day ago
Comment by cosmic_cheese 1 day ago
Comment by zer00eyz 1 day ago
The over reliance on analytics combine with a lack of metrics and proper accounting.
If you are renting all your infrastructure knowing how people use your app, and what the COSTS of that are is kind of a big deal. If your high dollar client is your lowest margin one, thats a problem that is technical and financial as well as a product insight.
And that infrastructure your renting, it stopped making sense for a lot of orgs to do that almost a decade ago, but here we are where everything is in the cloud because capacity planning is a lost art and was a great throttle on the insanity that the post is describing.
Comment by stinos 1 day ago
This has provided rather deep and interesting insights in software development for these particular products and in general. Or in OP's lingo: not a lot of potential for insanity at all. Because any new idea immediately gets regarded on 2 fronts: what does it take to implement and what does it really do for the user.
Comment by godelski 1 day ago
As engineers we need to be a little grumpy. Frustrating with our software provide directions to improve it. If we're not grumpy, we don't know what to fix.
But some of this also comes from top down. Engineers also need the freedom to fix things. They're the experts. Management Also shouldn't interpret that frustration in quality as the engineer being a thorn in their side. It means the engineer cares and is willing to remove the thorns in their side. But I think there's a strong natural tendency in any organization to surround yourself with yes men. They're sneaky, telling you no when you ask them to. Maybe a reason management loves LLMs so much
Comment by mandevil 1 day ago
Comment by diydsp 1 day ago
At my friend's org, they like it to suck bc that reminds them they are doing the very sophisticated work of dogfooding. No one told them they're allowed/supposed to feel good making/using the sw...
"We want to feel the same pain the customer feels" is shortened to "we want to feel pain." Instead of "neither we nor the customer feel pain."
Comment by da_chicken 1 day ago
I believe it's the major reason that industry specific information systems are universally shitty. The user can't articulate what they need to accomplish and the developer doesn't really understand the purpose or importance of the work. Result is bad functioning or bad interface.
It's why only software like text editors and web browsers gets to be really good. Huge user base. Lots of developers involved.
Git kinda proves that it's not infallible, though.
Comment by addaon 1 day ago
There's lots of great software out there that you interact with every day that was written by a small number of developers to clear requirements. Your car ABS brakes. Your coffee maker. Your brushless drill. Your TV remote. Think of the fact that majority of the microprocessors and microcontrollers that you interact with every day have software that you never think about, because it just works and gets out of the way. (And think of the cases -- maybe your dishwasher, your smoke detector, whatever -- where that's not the case! It really drives home how incredibly pleasant just-works-without-thought really is.) It's only these big, large team, overly complex systems where the expectations are so low that even the crap that is a current web browser is considered acceptable, let along "not sucking."
Comment by da_chicken 1 day ago
By intentionally picking the software that eliminates the UI, when the whole benefit of computers as a tool is that the UI is infinitely flexible, you're picking shitty software that doesn't appear that shitty. But it still is.
I mean, I hate the way my TV remote works and have wanted to change it. But I can't. It has buttons that open NetFlix or Apple TV that I can't change, and I don't have any ability to reprogram them because the companies paid for it to be a permanent advertisement I can't get rid of. That sucks.
But also, I think we only have to look far for what shitty appliance software looks like. VCRs and microwaves are notorious for having shitty software. As soon as we introduce a network, suddenly the software sucking is an immediate problem: witness the nightmare stories of Jeep updates, Tesla lockouts, and paywall feature locks when the hardware is present. Or we can look at the spying done by LG that you can't turn off. Or the forced advertising that Samsung showed they can do to your fridge.
Or how automobiles need an OBD reader even thought they ship with a built-in tablet. Or how the OBD codes are something you have to pay for. Or how you might not be able to disable the stupid "shut the car off" feature when you stop at a red light.
Shitty software on microcontrollers is some of the most tyrannical shitty software there is.
Comment by addaon 1 day ago
I think this statement is insane. The benefit of computers is that they allow complex behaviors to be defined and implemented. The benefit of software is that it’s the lowest-NRE way of defining those complex behaviors. UI doesn’t come into it, except in a few edge cases like desktop computers, phones, appliances, etc. A climate model’s “benefit” comes from its output, not the form in which it generates output or takes input.
Comment by da_chicken 20 hours ago
Comment by win311fwg 1 day ago
Huh? Web browsers are still laughably bad even after all these years. They are engineering marvels, certainly, but using them leaves a lot to be desired. I cannot imagine anyone would voluntarily use them if the ultimate function was equally available another way.
Comment by mitxela 1 day ago
Comment by jrapdx3 1 day ago
Your approach to developing software goes a long way to producing software that users appreciate. OTOH users may have no opinion about software sufficiently intuitive to use that it fails to bring attention to itself. Such transparency is an outcome developers should be proud to achieve.
Comment by nyeah 1 day ago
Comment by noir_lord 1 day ago
Your conceptual model of how things work is going to be different to that persons and it is a very hard trap not to fall into.
Comment by variaga 1 day ago
The devs did use the software, but used it in such a different way from everyone else that when the devs optimized for their own case, it made the software actively worse for everyone else.
Comment by noir_lord 1 day ago
Comment by Sleaker 1 day ago
Comment by sodapopcan 1 day ago
Sometimes it sucks, but often it's awesome. I love seeing people use what I built for them. It was also very enlightening doing prototyping and watching the customers use it. Often they would ask for something that they didn't realize they didn't actually want until they used it. Working directly with them saved potentially months of building out features that would never be used.
Comment by jghn 1 day ago
Comment by bob1029 1 day ago
I used to be this developer.
The more the development team complains, the more valuable the system is. If there is never any friction between the developers and customers, it's likely that everyone is on the same page and the meeting is largely redundant.
Comment by pydry 1 day ago
If I put some devs in front of a customer I'd be very much afraid of them doing what they ask rather than what they want, for instance, or overindexing on one particular customer's problem.
If the devs understand and can empathise with the users and there aren't a lot of them, sure, maybe but on most projects it's more effective to have the distilled and filtered customer feedback from a PM who is good at being a PM.
Comment by Brian_K_White 1 day ago
I don't have a lot of patience or sympathy for this attitude even though it's practically universal. There might be a few legitimate cases where someone basically has a handicap where they are clinically incapable, but then that's a handicap like a broken leg. A defect. Maybe it's ok to make allowances for them in the name of equality but it's absolutely making allowances, and should not be a norm and should not be something just everyone gets to claim for their mere comfort and convenience. IMO anyway if I were king and all that.
Comment by anonymars 1 day ago
If I'm graded on getting tickets done or getting some feature out, then meeting with users may be beneficial and the right thing to do but incentives turn it into swimming upstream...
Comment by ronjakoi 1 day ago
Comment by fragmede 1 day ago
In an idealized world, maybe, but enterprise software isn't paid for by its actual users, but by their company's executives/management.
Comment by mediaman 1 day ago
But you have to be willing to break out of the bubble, including getting on a plane, and I see very few people being willing to do that.
Comment by strangattractor 1 day ago
Being untethered from reality is the natural state of humans;)
Comment by vector_spaces 1 day ago
Comment by PaulHoule 1 day ago
Comment by hulitu 1 day ago
Nobody asked Mozilla for a redesign.
Comment by maxgashkov 1 day ago
Comment by vismit2000 1 day ago
Comment by zanellato19 1 day ago
Comment by martijnvds 1 day ago
More actual interaction between end-users and programmers makes the end-users better at reporting bugs and describing what they want (and at having an idea how complex a certain request actually is).
Because the multiple translations from customer wish to project manager language to backlog items are all lossy.
Comment by beyonddream 1 day ago
Comment by seki285 1 day ago
Comment by Twirrim 1 day ago
I flat out guarantee they'll come away with a wildly different perspective of the things that need done, and the ways their service operates.
Ideally I'd want them to do a rotation in customer support so they get the small customer perspective too, and at least learn what kind of paper cuts they're inflicting on customers.
Comment by jrm4 1 day ago
Comment by j45 1 day ago
Software that is not about the user and more about the developers or the providers struggles with alignment and optimizing for the outcomes of the user instead of their own.
Comment by mschuster91 1 day ago
But... but what would Project Managers do, then?
Anyway the key thing for any software developer AND Project Managers to do is regularly work first level helpdesk.
Comment by AnimalMuppet 1 day ago
Comment by lezojeda 1 day ago
Comment by surcap526 1 day ago
Comment by icantevenhold 1 day ago
Or weaken your security so it works with their fucked up legacy firewall that cant ever be changed and so on.
Talking to users -> not even once.
Might be only this bad in B2B software
Comment by hulitu 1 day ago
You should use some Microsoft, Google, Adobe and Apple products to have an idea what good quality _isn't_.
Comment by hliyan 1 day ago
I was recently chatting with a friend about how we used to do so much more with so few developers: 20 years ago, we developed mission critical, real time software (trading systems) in C++ with team of a couple of dozen developers. The core trading kernel team was four people. An in-house distributed process orchestration tool (both front end and back end written in C++) were two guys. I myself once managed to produce an entire post-trade risk management system for futures contracts in a couple of months, working alone. Today, I see teams of 60-80 working on web and mobile applications where the vast majority of operations are CRUD, with some transaction/queue complexity at the extremities.
I think the difference is tech churn. Back then, what few dependencies we had in terms of either runtime libraries or development time tools, were stable: the standard library, compiler, unix commands and bash scripts, and some internal libraries. Much of our time and focus went into figuring out the right algorithms and data structures, with coding coming in second. Very little time was spent on selecting, configuring, updating, rearchitecting or replacing tech stacks and tools.
Comment by hermitShell 1 day ago
It seems like you're implying that teams of 60-80 developers should be expected to outperform teams of 12. This is simply not true. The most important feature of source code as a language is that it allows precise mindshare among close knit teams. It doesn't guarantee it, but it makes it possible for people to talk about the product at a level that is otherwise very difficult.
A convenient side-effect of the source code is that it instructs the machine what to do. But instructing the machine was never the bottleneck, the essential difficulty of software development is in understanding what are the correct instructions to achieve some objective, not typing them out.
The problem is that communication doesn't scale at all. Having just 3 developers with good alignment about mental models, best practices, and design direction is hard enough, and if you found the right three people at the right time with the right ideas, you could generate billions of dollars of value.
Large monolithic teams on the order of 80 are a product of people in control not understanding how software development works, and how to make it work well.
Comment by cpeterso 1 day ago
> Think of the history of data access strategies to come out of Microsoft. ODBC, RDO, DAO, ADO, OLEDB, now ADO.NET – All New! Are these technological imperatives? The result of an incompetent design group that needs to reinvent data access every goddamn year? (That’s probably it, actually.) But the end result is just cover fire. The competition has no choice but to spend all their time porting and keeping up, time that they can’t spend writing new features.
Comment by robotnikman 1 day ago
Comment by hliyan 1 day ago
Comment by michaelrpeskin 1 day ago
Comment by daveguy 21 hours ago
Comment by anthonypasq 1 day ago
Comment by bluefirebrand 1 day ago
That's awesome
I would much prefer to have coworkers that literally commit zero code than the monkeys I sometimes work with who commit way too much code, or just plain commit the wrong code
Comment by rwmj 1 day ago
We've managed to emulate this behaviour in silicon now.
Comment by sph 1 day ago
In fact, the entire tech sector, favouring fresh grads out of college over greybeards, is built this way. My pet very controversial theory is that this phenomenon is massively fueled by everybody and their dog using ADHD stimulant medication to get through their day; fresh grads + amphetamines is the preceding step to Kubernetes and the entire React ecosystem.
tl;dr: modern software is built by 'work hard, not smart' kinda types.
Comment by kerblang 1 day ago
My expectation is that the toolchain will expand by another order of magnitude because LLM's, not just because of what they can produce, but because we are lowering the ceiling with LLM assistance when it comes to just understanding the toolchain. That creates a vacuum that people can fill up with more stuff.
The "insanity" that makes people do this is hard to explain. It's certainly irrational and seemingly unconscious.
Comment by hankbond 1 day ago
Comment by randusername 1 day ago
Did you conquer commercial real-estate ushering in the future of work and society, or did you build a handy scheduling app?
Did you have a neat idea for an online community or did you revolutionize human connection?
Comment by zug_zug 1 day ago
I think it takes a certain type of mental or emotional deficit to forfeit all of your free time and the majority stake in your company for funding for a tiny shot at hitting a grand-lam.
"Not everything needs to be a platform". I remember a 10 person company that did translation dispatch for medical needs in California. And the CEO was insisting we needed to someday "become a platform."
Comment by Terr_ 1 day ago
[0] Read: "Needs to be pitch-able to investors as a magical 1000x growth unicorn."
Comment by fragmede 1 day ago
Comment by ambicapter 1 day ago
Comment by Terr_ 1 day ago
I'm not sure on how much of the flight/sales/maintenance data is being used, versus simply a big archive of emails and support calls.
Comment by fragmede 1 day ago
Comment by dwaltrip 1 day ago
Comment by benleejamin 1 day ago
Comment by nxnxnxdd 1 day ago
Comment by tcdent 1 day ago
Read back through and apply every example given through that lens.
It is possible that we're in an industry that inordinately expresses this part of human nature, but I'm pretty sure it shows up everywhere though different anecdota. Apply a reductionist Zen Buddhist view to your professional creativity and all of this goes away.
Bob wants to refactor a subsystem because it will make him a hero, and if he positions it correctly to management, the technical merit and actual realized level of success will be irrelevant. Alice chooses to surface some obvious concerns and then sit back and watch the show. Jane chooses to throw her hands up in stand-up and try to emotionally convince everyone the sky will fall. Be like Alice and preserve your sanity.
Comment by wuliwong 1 day ago
Comment by EA-3167 1 day ago
Comment by Terr_ 1 day ago
> All programming teams are constructed by and of crazy people [...]
> The destructive impact on the brain is demonstrated by the programming languages people write. [...]
> All programmers are forcing their brains to do things brains were never meant to do in a situation they can never make better, ten to fifteen hours a day, five to seven days a week, and every one of them is slowly going mad.
Comment by eschneider 1 day ago
Comment by iamcalledrob 1 day ago
Truer words have never been spoken.
Comment by icantevenhold 1 day ago
Comment by AnimalMuppet 1 day ago
Comment by anigbrowl 1 day ago
Of course sometimes the ask is justified and addresses some failing of the original spec, either through lack of ambition or excess ambition that harnessed a cargo container to a lawnmower engine. But most of the conflict the article describe stems from a combination of imagining the benefits of change with the unspoken assumption that implementation is just a matter of pushing a few more buttons.
Comment by cestith 1 day ago
Comment by perlgeek 1 day ago
I've noticed that my own mind always searches for corner cases, error conditions and failure modes. This can be super helpful when planning new features (or explaining to stakeholders that certain conditions must be met first, when they want some new features), but when it extends to other things besides software, it can be psychologically unhealthy.
Comment by FLeXMurphy 1 day ago
Comment by arthurfirst 1 day ago
But it's a tool like any other and the results depend on the user.
For those with eyes to see and ears to hear it is (was) the Library of Alexandria. The knowledge of the world unfiltered without gate keeper trolls deciding what you can see and learn.
Getting on the internet in 1993 completely changed my life. Linux changed my life and without the internet there is no Linux. Before Linux you could not get a UNIX distro for less than $1000 USD which was a lot of money for me back then.
Before Linux and Internet all that was available to consumers outside of big institutions was Windoze and Apple was already on life support. The internet and Linux opened an entire world to me and I never looked back. Everyone at the time said I was wasting my time and should be doing an MCSE LOL but those are people in the 90%... they will NEVER get it.
Fast forward 4 years later I'm working in startups and leading dev teams and that was almost 30 years ago.
I can imagine what my life would have been without the internet and I prefer how things worked out.
So it did not make me dumber... but the filtered nannied corporate approved internet of 2026 -- that probably just makes anyone dumber.
Comment by FLeXMurphy 1 day ago
Comment by my002 1 day ago
Comment by mitxela 1 day ago
Comment by add-sub-mul-div 1 day ago
Comment by msteffen 1 day ago
1. Much of constructing software is math of a sort. In math, you write proofs that say why X is true. In software, you write code that guarantees X will be true (e.g. "the backend assumed a user ID was always available, but now that we have service accounts, we need to change the access control code so that a sensible view is still returned")
2. Math is hard, and most of the work is invisible thinking. If you asked a mathematician for an estimate on when the Reimann hypothesis will be proved, they would laugh at you. Our problems are generally easier, but they can still be hard. And as in math, they're sometimes much harder than you expect (e.g. Fermat's Last Theorem. "Why was it so hard? Did you talk to Fermat? He left? But he said it would be easy!")
Comment by aghilmort 1 day ago
thinking to this day afaik still can't change width of first column on Monday.com even tho they claim to replace spreadsheets and only js console will fix
or Trello going the opposite direction of former CTO when any page specifically had sub-second load target. now many seconds, that insane auto markdown editor showing up on almost all input boxes except HN that can't disable no chatgpt i dont want automated bullets i wanted plaintext so can c/p etc.
Comment by DidntUseIt 1 day ago
Think the author means most back-end software is a glorified spreadsheet (CRUD app with a few sorting algorithms).
The last 10-20 years in software has been more about new device interfaces, improving UI/UX, and networking technologies. I think of things like streaming, 3D games, live chat, video content, mobile apps, and LLMs.
Anyone who thinks about software like that would not instill confidence in me that they make very good software.
> You can watch sensible people argue for an hour over a button because, somewhere deep inside the conversation, the button has become connected to a future pile of money.
> It means understanding that not every problem is existential, not every idea belongs on the roadmap, and not every abstraction deserves to exist.
> waste away in Margaritaville tinkering with shit that doesn't need tinkering with.
I don't really understand what each paragraph has to do with each other, or why this message is being shared with me today.
I don't even mind that style of writing, but it should be more specific and interesting if it's going to be stream of consciousness style like that (IMO). To do all that, and deliver just vague half-points and boring assertions, felt like I was just waiting for some kind of punchline or point to be made that I could nod my head at but no thought was stuck with long enough.
The conclusion was like they tried to come up with anything just to turn the essay in on time.
Comment by wuliwong 1 day ago
Comment by DidntUseIt 2 hours ago
But you are right that it’s beginner level writing.
Comment by kerblang 1 day ago
Comment by mikewarot 1 day ago
Other than having a summer intern once, it was a solo effort. The code was written in Turbo Pascal, with some code on the hand-held computers written in a language called PL/N. (A variant of PL/1 for the Norand corporation handhelds)
I wrote all my own text editing/forms handling libraries, and everything else I needed. Version control was using pkZip to archive the source code onto 3.5" floppy disks.
Tying it back to the article in question, I can't imagine what it's been like with the push for "sprints" and all the rest in software development over the past few decades. I can see how it would drive you to burnout. I'm very thankful I missed it.
Y'all have my sympathy.
Comment by antfarm 1 hour ago
Comment by mawadev 1 day ago
Comment by GalaxyNova 1 day ago
Comment by JohnMakin 1 day ago
Hold on, this isn't that crazy in today's day and age. I used to wash my hands basically only when using the restroom or before eating. Since the pandemic though, I started upping that a lot (not every 30 minutes, but pretty frequently) and since then almost never get sick.
Comment by hackingonempty 1 day ago
Comment by disgruntledphd2 1 day ago
Don't get me wrong, they're my first port of call (mostly for the funnel plots), but they're one source, with their own biases.
Comment by gowld 1 day ago
https://www.cochranelibrary.com/cdsr/doi/10.1002/14651858.CD...
> Key messages
> We are uncertain whether wearing masks or N95/P2 respirators helps to slow the spread of respiratory viruses based on the studies we assessed.
> Hand hygiene programmes may help to slow the spread of respiratory viruses.
> There is uncertainty about the effects of face masks. The low to moderate certainty of evidence means our confidence in the effect estimate is limited, and that the true effect may be different from the observed estimate of the effect.
> Hand hygiene is likely to modestly reduce the burden of respiratory illness, and although this effect was also present when ILI [influenza-like illnesses] and laboratory‐confirmed influenza were analysed separately, it was not found to be a significant difference for the latter two outcomes.
> Our confidence in these results is generally low to moderate for the subjective outcomes related to respiratory illness, but moderate for the more precisely defined laboratory‐confirmed respiratory virus infection, related to masks and N95/P2 respirators.
> Relatively low numbers of people followed the guidance about wearing masks or about hand hygiene, which may have affected the results of the studies.
Comment by s_dev 1 day ago
Not arguing one way or the other just brining up the last Hacker News conversation where it was established that dirty hands are good for you.
Comment by EvanAnderson 1 day ago
Comment by tjwebbnorfolk 1 day ago
The human world today is freer of pathogens than at any point in all history.
Comment by mathisfun123 1 day ago
Comment by damethos 1 day ago
I have fought way too many times the new "the one" feature. Just ship it, it's already good enough, everything else just adds cost, especially psychological cost to the team.
Comment by raphar 1 day ago
A company cannot get free (o low cost) software changes anymore. Someone invented llms and they charge by work produced (useful or not)
So a PM cannot "save" costs by pushing. The employees will resort to their agents and there will be cost. If there is no agent, another company will beat them. So now a change has a measurable cost and even you can calculate in what was spent (agent logs)
Comment by IvanLudvig 1 day ago
But things don't have to be this way. Buttons moving around after every update isn't inevitable. AI-assistants in text editors aren't inevitable either. I use and love xfce, for example
Comment by IvanLudvig 1 day ago
Comment by wuliwong 1 day ago
I particularly liked this quote:
>You can watch sensible people argue for an hour over a button because, somewhere deep inside the conversation, the button has become connected to a future pile of money.
I have worked in a number of different types of jobs; from restaurants, to nursing homes, to roofing, to physics research. And finally for about 15 years I've been developing software at various companies of various sizes (Giant corporations to tiny startups). Part of what he describes is what attracted me to this industry. The feeling of being able to create something that people can actually use and might actually make money (maybe A LOT of money) was/is stimulating. Having witnessed the craziness that can come from that seed, well I just think he did a great job of explaining it. I appreciate that he tries to balance showing the insanity with the fact that there are times when the underlying driver is real. That's probably true of most insanities though. :)
Anyway, I'm not leaving the industry but I think it's really difficult for the AI agents to tell what is crazy and what isn't, so they are picking up this insane culture. (^▽^)
Comment by tkel 1 day ago
As well as the people who work on software not being the ones making decisions about that work. A gap between the deciders and the laborers. Which is a result of the structure of the current micro political economy within organizations. It is not separate from it.
Comment by huurtehoog 1 day ago
Another related problem is people will often take software at face value. When you have an inkling of what sort of dysfunction might be behind a certain buggy behavior it is much easier to cope both by finding workarounds, deciding to wait it out (my parents had an issue with some government database and I thought it suspiciously like some change propagation issue, told them to try again next week because I assumed some reconciliation on the weekend would solve it and it did) etc.
But a lay person will see error messages and take it to mean some catastrophic bureaucratic issue with their data when it's most likely just poor quality software...
I think the expectation that software is correct, accurate, and trustworthy, drives people up the wall when they are confronted with the reality of buggy and poorly implemented systems that they are required to use to function in society.
Comment by manlymuppet 1 day ago
Maybe it's because I'm reading work with a deadline, or from a half-hearted writer, or maybe it's because a lot of people have never been taught how to write well. Whatever it is, so much of writing is bad because the author hasn't done their due diligence with their purpose for writing.
Except unlike software, this fault is so prevalent and eternal that it has become the status quo.
Comment by aamoscodes 1 day ago
Comment by ninju 1 day ago
> them doesn't sound especially impressive, while a distributed event-driven
> platform with a service mesh and realtime synchronization layer sounds like
> you're building NORAD.
Very well put
Comment by glitchc 1 day ago
Comment by hungryhobbit 1 day ago
The goal of writing is to communicate. That means saying what you mean to say ... and not filling paragraph after paragraph with pointless and redundant things you don't need to say.
There is not an English teacher in this world who would argue that was even a well-written essay, let alone a beautifully-written one.
Comment by w10-1 1 day ago
The solution is not just "do only what's needed by the customer".
There are emerging environments where the conditions don't force previously-rational decisions, and where assumptions no longer apply. New tools in the battlefields of yore, new beliefs and practices in cultures...
The stunning march of compute hardware in the last 50 years has changed many such conditions.
Those who work with new freedom - liberated from the strictures of old gods, able to harm enemies without putting themselves at risk, with the time freed from foraging to build - have to identify the new constraints and conditions at work.
And sometimes to make the conditions that make for sanity: Solon got ancient Greece out of a stagnating pickle by getting the wealthy to release the poor from debtors' jails but sign them up for the military that could defend lands and trade routes, if they subjected themselves to land-owner self-government and the annual ostracism of one person who went too far.
Capitalism used competitive markets to liberate but discipline business, but right now the scaling power of compute leads to winner-take-all, and the openness of the West is seeding closed systems (military or foreign) with the power to destroy the liberal governance that sustains it. In software we're stuck between Scylla and Charybdis: an Anthropic+OpenAI duopoly or Chinese control over the lifeblood of enterprise.
If there were someone who in the large had structured the freedom of software to make its practitioners and stakeholders sane, they'd be a good candidate to steer us through this situation, so this freedom wouldn't drive us insane.
Comment by FiddlerClamp 1 day ago
* It gets in the way: confirmations, notifications, features that don't exist and can't be added, even when they're asked for repeatedly.
* It stops listening: freezes, overly-strict interaction requirements.
* It's not 100% safe, and thus not truly reliable.
Not all tech is like that. Or has to be.
Comment by scrubs 1 day ago
Comment by oedemis 1 day ago
Comment by wuliwong 1 day ago
Comment by jadbox 1 day ago
The apps I pay for are simple and focus on a super basic interface. BookFusion and Libro.fm are great examples.
Comment by icantevenhold 1 day ago
Companies like Oracle or Microsoft are so massive not because they sell simple and focused products that work well; quite the opposite
Might be different when you’re selling to endusers
Comment by ravikapoor101 1 day ago
Comment by mitxela 1 day ago
Comment by kazinator 1 day ago
Why, of course! We leave the kitchen deployment where it is, and just install a proxy kitchen facade on the other side of the house, which does everything via the original kitchen through remote procedure calls.
Comment by FiddlerClamp 1 day ago
And since the 'world' of the chat is mostly epistemologically closed (except for Web search), there's no absolute tether point. Everything's subjective, and self-confirming.
Comment by dvh 1 day ago
I finally understand why I quit my previous job.
Comment by marcelo-earth 1 day ago
I've always liked representing it this way, the software we use rarely breaks out of the CRUD mold.
Comment by Chance-Device 1 day ago
Shipping MVPs or minimal features quickly and seeing if they stick is a solution. Quick and dirty until you know something is worth further effort. Yes, user feedback is good but often people don’t know what they want, or think they want things they won’t actually use, and you won’t find out until it’s sitting in front of them.
And someone is always yelling that everything is taking too long, usually the same person who told their boss that something would be done by x date without asking anyone else.
Comment by GaryBluto 1 day ago
Comment by throw-qqqqq 1 day ago
For office work, it sounds excessive to me.
I think most people only wash their hands after toilet visits and perhaps before eating (many don’t).
Comment by tanseydavid 1 day ago
Comment by fragmede 1 day ago
Comment by dkarl 1 day ago
I once tried to explain a pointless debate over the definitions of "acceptance testing" versus "regression testing" to a non-tech person, and they said that was the most relatable thing I'd ever told them about my job.
Comment by butlike 1 day ago
Comment by cindyllm 1 day ago
Comment by hypfer 1 day ago
It explores a bunch of interesting ideas, but the way they're mushed together makes it taste a bit bland.
I still don't really understand what exactly it was that this text wanted to tell me. A bunch of things? But also nothing. I can deduce what it I think was supposed to tell me (based on extrapolating patterns and most likely talking points), but it didn't necessarily do that. _Telling_ me I mean.
Maybe leaning less into the relateable-ness would've helped there? Or just containing it better.
__
I suppose there is a place for just stream of consciousness rambling (like this comment), but the post kinda came with the optics of "here's a statement", but then there's no real statement.
So maybe that could also have been fixed with a "Here are some not necessarily fully coherent thoughts you might find interesting" disclaimer.
Perhaps my mind is just not wired in the same way as the ones of the target audience, but if that is the case, then I am a bit offended by the blog naming itself "Graybeard".
A bit too vibey feely "that is so me omg" for that.
(The LLM I've consulted telling me that I'm just missing the point here kinda validates that hypothesis for me. Good for you then. May you all bond over this with your weird "emotional resonance" stuff. It seems to tickle the RLHF stuff just right.)
Comment by nilsherzig 1 day ago
https://www.pangram.com/history/5a4b90c6-0123-4f97-b50e-9c90...
Comment by mmm0x 1 day ago
Comment by nektro 17 hours ago
Comment by waylandsmithers 1 day ago
Comment by mococa 1 day ago
Comment by hungryhobbit 1 day ago
Comment by delichon 1 day ago
Comment by divs4real 1 day ago
Comment by jondlm 1 day ago
Here's my alternate title: people are insane, software reveals it.
Insane feels too strong, though. I believe people make sense. We just have this crazy ability to fool ourselves by spinning stories. And many of the stories we continue to spin were handed to us without our awareness.
Comment by bluegatty 1 day ago
Comment by atoav 1 day ago
As a freelancer my process involves a lot of observation, asking questions and planning. Usually when I go into the details more questions emerge and whom to ask better than the people who do exactly this daily? Sure sometimes their process is a bad abstraction, they chose because they did not knew better and thus not worth putting into software. But before you decide that you gotta ask whether there are reasons why it was done that way. I see my task as a programmer to make peoples lives easier, by finding elegant abstractions for their problems, that are at the same time, reliable, adjustable, encourage correctness, avoid problems and so on.
Now most software companies I interacted with from the other side did none of the things. They rushed to gather the specs, asked some questions in the beginning and were out of the door to start way too fast, with some things they just assumed without confirming. Then crickets and then something half broken comes around that you need to beat into shape in an exhausting back and forth, where again you have to be the person with the questions.
If it is exhausting for a person with software development experience to be your customer, how bad will it be for people who have no such experience.
Now there are of course exceptions also in such companies, but in my experience that is mich rarer than it should be.
Comment by Apocryphon 1 day ago
Comment by pjerem 1 day ago
Comment by phendrenad2 1 day ago
Comment by einpoklum 1 day ago
Lost me right there.
Comment by arthurfirst 1 day ago
Comment by black_13 1 day ago
Comment by eazel7 1 day ago