27,650 karma · joined September 4, 2008
Now: HotelTonight / Airbnb
Web generalist with a product focus and wearer of many hats.
https://mubi.com/users/2
https://github.com/gtd
http://websaviour.com/
https://twitter.com/dasil003
[ my public key: https://keybase.io/gtd; my proof: https://keybase.io/gtd/sigs/LLH-bIciQfUgvlVI7-Xe0LaEIEZxOSA0zHYbjhCYiXU ]
Now, human interaction is squishy, so yeah, they are also trying to cover the all-too-common-in-tech case where someone is just being an asshole. Let's call it the Comic Book Guy case. In this case, it actually doesn't matter whether surprise is feigned or not, because what's actually happening is this person is listening and waiting for someone to express a blind spot so they can prove their intelligence by correcting them. You can't really write down an explicit deterministic rule for this, because it's all cognitive behavior social stuff that people are generally unaware of moment to moment. However the recurse center rules plus live feedback when it happens is as good of a solution as I can imagine.
However I think this really misses the mark:
> Probably one of the most ego-crushing realizations (if you're a nerd) is to discover that there are people out there MUCH more talented and higher performing than what you'll ever be, but with none of the obsession or pride. In other profession that's not really a topic. You can be a top performer in other professions, without a deep interest, clock out 4 daily, and never think about work outside work.
This is a strawman based around immature, fragile-ego individuals. There are plenty of nerds who realize intelligence, talent, and resourcefulness are completely orthogonal traits from interest in tech. The former is over-represented in online discourse, and the latter is more common in engineering leadership in top companies. You can't really be a top-performer in any large-scale effort without realizing that there are top performers in all domains, and they have insights you don't have. You can't do great things if you don't leave space to learn about your own blind spots, and have a productive dialogue with people who have a completely different mental framework than you.
Surely these things are on a moral and ethical continuum and we need to look at them individually? Pretty much every person has broken some law at least once in their lives. I don’t disagree that moral ambivalence is often necessary to make billions, but I also don’t consider all laws sacrosanct, or that breaking the law is the primary measure of a company’s moral standing.
For these reasons, I think people are overestimating the end-state impact of AI. Right now the hype cycle is fierce, and it definitely changes the economics of producing software (with a lot of negative effects forcing adjustments in open source ways of working), but I don't think in the end state the core landscape of software changes all that much. Well worn and hardened infrastructure like the Linux kernel is infinitely more valuable than CRUD apps used with small user populations on the edge. User space libraries and frameworks fall somewhere in between. AI increases the volume of new software, yes, but I see it as mostly fractal bits filling in the margins.
I have no idea how things will play out, but so far I am not worried because the amount of software continues to increase, and AI only accelerates that trend. This will require the same mental modeling, first principles thinking, and relentless curiosity that already formed the foundation of the software engineer skillset.
Incentives in companies are such that there is never a shortage of people pitching projects that require more headcount. Growth justifies the decision to hire more headcount, but the connection from increased headcount to growth is tenuous and usually difficult to impossible to demonstrate with any real confidence. It wasn't so difficult pre-industrialization, but mechanization, automation, computerization and now AI have progressively made it harder and harder to really understand the economics of labor. You do need to hire people to pursue new areas, but also every incremental person adds to communication overhead. The effects of this depend on the org structure and the operating environment over time, so what may have been a good idea at the time can flip to net negative due to outside forces beyond the control or foresight of any decision maker. This explains why companies do layoffs while still hiring at the same time.
That's not say leaders here and there aren't thinking about what they're building and the macro effects, but you have to understand that unless you're bootstrapped and self-funded, even the most morally minded CEO is still beholden to investors who primarily care about money. You can only be as ethical as your board allows, and that primarily comes from profitability and financial success. In the good times its easy to talk a big game (eg. Google's "Don't be Evil"), but eventually competition comes for us all, and if your morality is hurting the bottom line you will be replaced. The backstop would be customer sentiment, but most buyers (whether B2B or B2C) are also not morally motivated. That's why free + ads is the dominant model, why micro payments failed despite years of techie hand-wringing, and paid consumer apps outside of streaming are vanishingly rare.
It's not all hopeless though. If things reach a high enough threshold of public sentiment then we can put legal and cultural pressure that will actually change things top-down. I think this is where AI is probably going as it's the most universally feared and hated impact across party lines that I have seen during my life, and the leaders in charge seem incredibly tone deaf about how it's being perceived, so I do expect regulation and softer forms of social enforcement to affect that trajectory. But if you're hoping for individual CEOs and leaders to fix our systemic problems, don't hold you're breath, they are just as replaceable as the workers under them.
If you call yourself a manager--which is a questionable role at startups--then you need to be optimizing for the entire output of the team. Rigidly declaring everything must be async text is no better than scrum by numbers.
To me what AI is doing is changing the economics of human thought, but the change is happening way faster than individuals, let along organizations can absorb the implications. What I've seen is that AI magnifies the judgment of individuals who know how to use it, and so far it's mostly software engineers who have learned to use it most effectively because they are the ones able to develop an intuition about its limitations.
The idea of removing the human from the loop is nonsense. The question is more what loops matter, and how can AI speed them up. For instance, building more prototypes and one-off hacky tools is a great use of vibe coding, changing the core architecture of your critical business apps is not. AI has simultaneously increased my ability to call bullshit, while amplifying the amount of bullshit I have to sift through.
When the dust settles I don't really see that the value or importance of reading code has changed much. The whole reason agentic coding is successful is because code provides a precise specification that is both human and machine readable. The idea that we'll move from code to some new magical form of specification is just recycling the promise of COBOL, visual programming, Microsoft Access, ColdFusion, no-code tools, etc, to simplify programming. But actually the innovations that have moved the state of the art of professional programming forward, are the same ones that make agentic coding successful.
The more obvious reason to not tax wealth is because it's hard to measure, and if you try to do it you will incentivize hiding it. Meanwhile, there are obvious obvious loopholes that the ultra-wealthy enjoy which could be reasonably closed. Namely, close the buy-borrow-die loophole, don't allow step-up basis for inherited wealth, and tax capital gains at least as much as income. Now people with a lot of money can afford to fund a lot of premium think tanks to come up with fancy economic reasoning why those ideas are Really Bad™, but at this point it's clear that's bullshit propaganda and the unintended consequences are exceedingly unlikely to be worse than the current unchecked consolidation of wealth and power enabled by the current loopholes.
In general I tend to agree with you if you're talking a codebase you are deeply familiar with, the value-add from have agents write the code probably ranges from very small to negative in most cases.
On the other hand if you're trying to make changes in systems you are not familiar with, LLMs are a huge speed boost to folks with enough experience to sniff out what would be a bad path essentially via socratic method to the agent.
Obviously there are no silver bullets and no substitute for judgment. I will say though, I'll tradeoff ugly local code for good data models and interfaces any day of the week, and there is definitely an archetype of engineer that is very precious about code without good judgment on where it matters and where it doesn't.
Of course I was still super junior and had so much to learn, but from that point I could at least interrogate any pattern or best practice to understand why it existed and where it should or should not be applied.
On the other hand, almost any business problem can be solved in a reasonable way that doesn't send your system through any terrible one-way doors if you zoom out enough and ask enough whys. Of course not every place allows engineering to do that, but the ones that don't aren't able to retain senior folks because they will just go somewhere where their judgment is valued. Sometimes technical debt is the right thing for the business, but sufficiently senior engineers can set things up so there is always a way out. But what you can't do is uphold the purity of the system above the business problem. The systems are paid for by the business, so if you lose sight of that then you've lost the plot and the basis for your influence.
More broadly, it's well understood that experiments are not a replacement for design and UX. Google is famously great at the former and terrible at the latter. Sure the AI maxxers will say the machines are coming for all creative endeavours as well, but I'm going to need more evidence. So far, everything good I've seen come from AI still had a human at the wheel, and I don't see that changing any time soon.
I'm under no illusions about the goals of AI company execs to justify their valuations (and expenses!) by capturing a huge chunk of global employment value, and the CEOs of many big companies whose financials are getting squeezed for all sorts of reasons and are all too happy to jump on the efficiency narrative of AI to justify layoffs that would have been necessary anyway. Also, AI will keep getting better and it could certainly will move up the food chain—it's already replaced a lot of what I did and I assume capabilities will continue improving for a while even after model capabilities plateau as we improve harnessing, tooling and practice.
So yeah, it can replace a lot of what we do, but I'm not running scared because every step of the way I've seen software people are the ones who actually get the most out of LLMs. Sure it can write all the code so the job changes, but even our workflows completely change, it's giving us more of an edge (if we're open to it) than it does to anyone non-technical. At this stage it still feels empowering on an individual level.
Now I do worry about the consolidation of power and wealth in a tech oligarchy, but that's an issue we need to deal with at a societal and government policy level. Essentially, I can see AI as having radically different outcome potential based on how it's governed. In one way it can be very empowering to small teams, and reduce coordination costs, and increase competition by allowing smaller groups of people to make more scalable companies. But it could also lead to unprecedented concentration of wealth and power if a small set of AI companies are allowed to capture all the economic gains. I don't think there are any easy answers, but I do feel hopeful that we can figure something out as a society—it certainly seems to be creating some unified sentiment across political lines that have been so polarized and divisive over the last decade.
But beyond that, man this is such a depressing way to live. I've worked a lot of jobs I don't like and put in varying degrees of effort based on how I feel about the people and the situation. But generally one value I live by is that if I'm paid to do something I'm going to try to do a good job at it. That doesn't mean burning myself out or going above and beyond for a boss or company that doesn't deserve it. But for my own integrity and self-worth I have to at least put in a baseline professional effort. If I can't stomach even doing that then it's a clear sign I need to be planning my exit, anything less is disrespectful to my basic self.
AI is a tool, everything it does is attributable to the person who prompted it. Anything else is no different from the long-understood fallacy of counting lines of code.
That said, looking at the way things work in big companies, AI has definitely made it so one senior engineer with decent opinions can outperform a mediocre PM plus four engineers who just do what they're told.
My view is over-engineering comes from the innate desire of engineers to understand and master complexity. But all software is a liability, every decision a tradeoff that prunes future possibilities. So really you want to make things as simple as possible to solve the problem at hand as that will give you more optionality on how to evolve later.