Why does software suck? Management often has other priorities, and isn't interested in doing the hard work required to increase the reliability and reduce the technical debt in software. Engineers who care about such things, often engage in acts of "benevolent noncompliance". Common workarounds are "asking for forgiveness instead of permission", secrecy, and misdirection. Alternately you can confront management and fight for doing what you think is right. These sorts of things can be risky. You can be fired, you can be reprimanded if caught, you can be retaliated against or lose political advantage. In the past, software engineers had a lot more agency than they do now, because nowadays the supply/demand ratio no longer favors software engineers, and as a result we have weaker negotiation power. Now we're more afraid of being fired and not being able to find a job, and managers aren't afraid of us quitting and not being able to replace us.
I haven't yet finished the whole thing, but there are sections around dark patterns and other forms of user-hostile software. I'll probably finish it.
I think you have far more leverage than you think in most places still.
This sounds like a job for unions. It would have been advantageous to have formed and joined them before so much power was lost, but it's easy to be shortsighted when you're happy and comfortable with where you are and ignore that the situation could easily change, if not for you then for the next generation. Companies are happy to leverage every advantage they have against workers. Unions can be a powerful tool for workers, one that could help solve a lot of problems current and future, and it's sitting there just waiting to be used.
You could also silently burn out. Especially if fighting this as your own personal sisyphean uphill battle.
I think especially people driven by passion and curiosity are at risk of this. And I mean, that's pretty much what the "hacker mindset" of many people on here amounts to. There's also a reason why people with a lot of passion are often taken advantage of, e.g. game development industry.
This is Hacker News syndrome. What you described is why everything sucks. It's because people at the top are more concerned with making money than doing good things well.
Without the support of a unified vision, these good intentions could pave the path to hell by the way.
I've been guilty of this myself.
(I think HN should consider creating TLDR type of comments for upvoting separately from commentary. @Dan incentivise with different karma credits?)
Crazy how time flies, given that talk is seven years old at this point. But could've been given today, with the points being more relevant than ever.
Computers and technology are force multipliers for humanity. As coders, we are lucky to be gifted with such high agency and global reach, all at a fairly affordable price tag.
I love computers.
Building software that serves you only...and then sharing with others is like serving others. It's good stuff and we need more of it.
I'm not sure how the deconversion of his faith needed to be conflated as related to the main ideas, especially when the next point was about weilding technology for good or evil in the next point as if these aren't pre-existing realities of our world or universe.
Is this engagement bait? Is this a cultural critique? What is meant to be said here? At any rate, this is the kind of speech which will alienate a lot of people. Look, I'm more on the progressive end of things, I get it, but I think this just feels mean and divisive from the perspective of a conservative OR a Christian, and I find that to be a message made in poor taste... which is difficult because this is such a potentially inspiring and positive talk. I lost the energy to be inspired by the talk due to this style of messaging, but I don't think you should have to. I'm just a bit thrown off, I guess.
Taylor Tomlinson puts much of this into her comedy. She often asks the audience to call out if they were similarly screwed up by their religious upbringing. The is a loud audience response every time.
While I don't agree with Andrew Kelly's adversarial attitude, I do understand it a little more from the perspective of someone who had to fight his way out of an ideology that will not seek consensus with his values.
edit: it's wasn't just about developing software but also using software. You don't have to accept the bad situation you're in (or the bad software you've been given or told to use). Finally, I'll say that while the speaker's comment about conservative christian upbringing isn't a universal one, it is a widely shared one. If you take offense by it maybe take a moment to pause and consider that maybe the way you were exposed to it was probably more balanced than what many others experience, or in the worst case that maybe your negative reaction to it is a sort of defense mechanism that you've learned to shield yourself from confronting the reality that your own conservative christian upbringing was not so good after all?.
I am Christian. Everything in the world seems to be falling apart these days and my faith is one of the few real-feeling things!
EDIT: just saw your reply to a similar comment below, appreciate your response!
It's clear that he had a bad experience, and I'm nobody to tell him what to put on the slides and what to leave out, but my impression is that there are lots of believers out there who do cherish their faith, experience it as a very positive force in their lives, and draw from it the power to make the world a better place around them. Speaking for myself, I'd say faith has been a net positive so far in my life.
[0]: https://youtu.be/zLZwpH5lCD4?si=45knBo2Hsy_6wjEM&t=2092
Also notable that not up for discussion was any second order effects about user interaction with software; software always must serve its user in the immediate first order. Why? I suppose it's because if you attempt to examine nth order effects the proposition completely falls apart because the world is much more complicated than "software must serve the end user".
Finally, the purpose of software isn't determined by the end user, nor necessarily its author. A user can have their goals, the author(s) theirs, the funding body theirs, and so on. The "purpose" is diffused in this way until what's left is what it does. Saying it _must_ serve the user is a principled stance reflecting a world view, but it's just that. That are other coherent worldviews where software has more than one master. Or no master.
I hope I can get this out soon
Free software is about the worst example, as it has inadvertently built the technology that has, more than any other, concentrated corporate power and debased the profession.
Edit: I know there are some certifications that may be required by some software engineers, computer engineers, etc. But this is limited to critical/near-failure-proof systems. Which I willing to wager is less than 1% of those employed in these fields.
But in a way that does not diminish his work on Zig.
I recently took a consulting engagement with another US public (pink sheets) company and remembered how dysfunctional some software development structures/cultures are.
and while i'm not a massive fan of the music (not my kind of electronic) the mentioned Ninajirachi - Infohazard music video really is fucking cool (strobe warning) https://www.youtube.com/watch?v=p2ZdeIKJA8c i definitely feel like my jaded oldtimer critic got called out there.
edit -- jfc, from one of the youtube comments
> From Ninajirachi, in a RollingStone interview about this song: “I love my computer for a million reasons, but it’s also exposed me to some pretty dubious material when I was far too young to see it. Infohazard is about the first time I encountered a snuff film as a kid. It’s kinda like a rite of passage and loss of innocence moment for people who grew up online. If I’d been in high school a hundred years ago, without ever touching a computer, would I even know things like that existed? I can’t ever really forget about it.”
The main thrust is simple:
- Technology is not good or bad, it is an amplifier of human values and our collective ambitions.
- Those of us who are terrified of where technology is going are actually terrified that humans are, on the net, bad, and technology will amplify that, bringing about dystopia.
- Believing this this is self-fulfilling. By embracing such beliefs you surrender your agency, which is what actually brings about dystopia. If you, instead, have a positive vision of humanity, then you are one of the people that drives society forwards rather than backwards.
We are currently at a moment in history where this message bears repeating.
A lot of things feel unstable, and as a result we have an opportunity to redefine the world in good ways and bad ones. Those who choose to redefine it in ways that are intractably bad will often do so from the point of view of a system observer, not a system participant. This is cope, because in reality everyone, whether they choose to accept it or not, is a system participant.
As a mapper[2], that knowledge now gets subconsciously checked for matches and usefulness against all the other chunks of knowledge I'm fairly certain of.
The first thing that popped out (and there will be more over the next 24+ hours) is that y'all are black pilled about computers and security. You believe, incorrectly, that computers can't be safe AND secure AND easy to use all at the same time. I believe otherwise, and this might help convey that at some future point.
Currently my best hope is that the upcoming release of Genode offers a way forward. Their roadmap[3] features this line when describing the upcoming release
Sketch of a capability-based desktop environment
Right now, that's where my hope rests, it's been a LONG time coming, but I think Genode might become a widely used OS if they can pull it off. If they can break enough people out of being black pilled, that is.[2] https://garden.joehallenbeck.com/container/mappers-and-packe...
Clearly they had discovered or created an incentive to write "bad software", push testing onto users, and sell the fixes. Bad software or smart business?
Look at Rock stars GTA V Online a money printing machine: still has bugs. Are we to assume they are incapable of fixing them? Or that there is no market for doing so. People play anyway.
The "developers are no good" is a red herring that blames individuals who are doing what they are told to do, or not do.
He talks about developers not standing up to management's unreasonable demands, but doesn't he himself receive donations from wealthy people at his foundation? Everything seems contradictory.
The concept of 'pure will' is also really hard for me to grasp. It feels like trying to bring Plato's Forms into reality.
I always feel like the purity advocates on HN are contradictory. They just try to package their own superiority as purity. Honestly, in what sense are they pure? I don't really get it. Is not using AI somehow superior? Is using a hand drill instead of an electric drill more admirable?
I also know that dark patterns undermine user autonomy. But that has clear limits. It's like Prohibition. I understand the criticism of A/B testing in context, but shouldn't we be criticizing Goodhart's law, trying to hit metrics without understanding user behavior, rather than demonizing the tool itself?
The younger generation never experienced the open web or software sovereignty. How can they give up system convenience and choose free software?
I understand that there are problems arising from the nature of capitalism. And I agree that the world needs ethical brakes. But honestly, what I find hard to understand about this person's argument reminds me of a line from Russian literary criticism: 'Those who praise the land are those who do not farm it.
I acknowledge Andrew Kelly's technical achievements are impressive. But honestly, I find it hard to understand the people on HN who keep echoing his words. The Zig foundation runs on sponsorships from big tech companies.
The development cost of 'free software' paradoxically comes from the 'excessive profits of monopolistic big tech' that they despise.
Kelly's uncompromising will is not actually built on pure individual will alone—it rests on the autonomy provided by a very unique sponsorship structure. Can that really be presented as a universal developer ethic?
Ordinary developers don't get $300,000 in sponsorship from anyone. If they refuse a Jira ticket, they could be kicked out of their room next month.
I wish he wouldn't speak while erasing his own economic conditions. It's not that developers are evil—they're just working within the system as a condition of survival.
Honestly, the fact that he achieved that life through his abilities is admirable. But whether it's right to generalize his own minority experience and insist that everyone should follow it is a different matter.
How is that any different from a high-class courtesan telling a cheap one, 'I'm different'?
Andrew Kelly's words are just a symbol of vicarious satisfaction for cogs in the machine. Not just me, but the vast majority of programmers live as cogs—solving Jira tickets, chasing deadlines and KPIs. To them, Kelly appears as an icon of rebellion, refusing to compromise with reality and preserving his purity. But the irony of rockstars is always that they are the most devoted to capitalism.
When I strip away the halo effect around Andrew Kelly, I can't make sense of the contradictions inside.