> This exact thing is what software developers have been begging for since the beginning of the profession: Receiving a detailed outline of the problem and what the end result should look like.
> This is often the part that slows down software development. Trying to figure out what a vague, title only, feature request actually means.
But that is exactly what Software Engineering is!. It's 2026 and the notion that you can get detailed enough requirements and specifications that you can one-shot a perfect solution needs to die.
In my experience AI has made us able to iterate on features or ideas much faster. Now most of the friction comes from alignment and coordination with other teams. My take is that to accelerate processes we should reduce coordination overhead and empower individuals and teams to make decisions and execute on them.
> It's 2026 and the notion that you can get detailed enough requirements and specifications that you can one-shot a perfect solution needs to die.
It's 2026 and the idea that even with detailed-enough requirements you can one-shot even a workable (let alone perfect) solution also needs to die. Anthropic failed to build even something as simple as a workable C compiler, not only with a perfect spec (and reference implementations, both of which the model trained on) but even with thousands of tests painstakingly written over many person-years. Today's models are not yet capable enough to build non-trivial production software without close and careful human supervision, even with perfect specs and perfect tests. Without a perfect spec and a perfect human-written test suite the task is even harder. Maybe in 2027.
Sorry where are we seeing that it failed? It compiled multiple projects successfully albeit less optimized.
"
It lacks the 16-bit x86 compiler that is necessary to boot Linux out of real mode. For this, it calls out to GCC (the x86_32 and x86_64 compilers are its own).
It does not have its own assembler and linker; these are the very last bits that Claude started automating and are still somewhat buggy. The demo video was produced with a GCC assembler and linker.
The compiler successfully builds many projects, but not all. It's not yet a drop-in replacement for a real compiler.
The generated code is not very efficient. Even with all optimizations enabled, it outputs less efficient code than GCC with all optimizations disabled.
The Rust code quality is reasonable, but is nowhere near the quality of what an expert Rust programmer might produce.
"
For faffing about with a multi agent system that seems like a pretty successful experiment to me.
Anthropic said the experiment failed to produce a workable C compiler:
- I tried (hard!) to fix several of the above limitations but wasn’t fully successful. New features and bugfixes frequently broke existing functionality.
- The compiler successfully builds many projects, but not all. It's not yet a drop-in replacement for a real compiler.
> Like I think people don't realize not even 7 months ago it wasn't writing this at all.
There's no doubt that producing a C compiler that isn't workable and is effectively bricked as it cannot be evolved but still compiles some programs is great progress, but it's still a long way off of auonomously building production software. Can today's LLM do amazing things and offer tremendous help in software development? Absolutely. Can they write production software without careful and close human supervision? Not yet. That's not disparagement, just an observation of where we are today.
This evaluation appears to be AI-written itself. It claims a 3x slowdown and a 4x slowdown combine to produce a 158000x slowdown "because there are billions of iterations" - yeah well both versions of the program had the same number of iterations.
Does anyone know how the 158000x slowdown happened? That's quite ridiculous.
It could be written more clearly but I think when it refers to a 4x and a 3x slowdown, it's actually a 4x slowdown and 3x larger code that causes cache misses, and the impact of those cache misses on runtime is surely much larger than 3x.
> Each individual iteration: ~4x slower (register spilling)
> Cache pressure: ~2-3x additional penalty (instructions don't fit in L1/L2 cache)
> Combined over a billion iterations: 158,000x total slowdown
I think that "2-3x additional penalty" refers to this:
> The 2.78x code bloat means more instruction cache misses, which compounds the register spilling penalty.
Also, the analysis refers elsewhere to other factors that weren't included in this part.
> Can they write production software without careful and close human supervision? Not yet. That's not disparagement, just an observation of where we are today.
I never claimed they could! I just view this as a successful experiment. I don't think anthropic was making that claim with their experiment either.
It feels reflexive to the moment to argue against that claim, but I tend to operate with a bit more nuance than "all good" or "all bad".
The experiment failed to produce a workable C compiler despite 1. the job not being particularly hard, 2. the available specs and tests are of a completely higher class of quality than almost any software, not to mention the availability of other implementations that the model trained on.
You can call that a success (as it did something impresssive even though it failed to produce a workable C compiler) but my point in bringing this up was to show that today's models are not yet able to produce production software without close supervision, even when uncharacteristically good specs and hand-written tests exist.
That's great and all, but that's not the point I was making and you're engaging rather uncharitably on it. So when you view it from the perspective of capability increase it's rather impressive. Note the slope of progress which this experiment was to show.
Edit: Maybe uncharitably is too strong, but we're talking past each other.
Saying the model failed to write a competitive C compiler makes more sense.
I don't think they tried to do that though.
> today's models are not yet able to produce production software without close supervision, even when uncharacteristically good specs and hand-written tests exist.
> Saying the model failed to write a competitive C compiler makes more sense.
Their compiler fails to compile (well, at least link) some C programs altogether, and in other cases it produces code that is 150,000x slower than a real C compiler with optimisations turned off (interestingly, the model trained on the real compiler's source code). That's not "not competitive" but "cannot be used in the real world". But even more importantly, the compiler cannot be fixed or evolved. It's bricked (at least as far as today's models' capabilities go). For any kind of software, not being able to improve or fix anything or add any new feature means it's effectively dead.
You could not use it in production even if no other C compiler existed.
While I understand both points of view, I'm leaning towards yours, because:
- John Carmack embedded a C compiler and interpreter/runtime into Quake back in the mid 1990s as a scripting language! It was that efficient that it could be used in a real time 3D shooter. That's a solo effort as a minor component of a much larger piece of software.
- I've seen university CS courses hand out "implement a C compiler" as a homework / project exercise for students. It's not particularly difficult.
Sure, a modern C compiler like GCC has to handle inline assembly, various extensions, pragmas, intrinsics, etc... but like you said, all of those are thoroughly documented and have open source implementations to reference.
Similarly, the Rust compiler is implemented in Rust and could be used as an idiomatic reference for a generic compiler framework with input handling, parsing, intermediate representations, and so forth.
> Their compiler fails to compile (well, at least link) some C programs altogether, and in other cases it produces code that is 150,000x slower than a real C compiler with optimisations turned off
I would bet that those things are also true of at least one expensive commercial C compiler.
I'd love to hear of any currently available commerical C compiler which has that level of issues. I would bet you'll be hard pressed to find one. C compilation is a quite thoroughly solved problem. In any case please provide an example.
I think people are concerned about the large discrepancy in concrete claims in your previous comment and subsequent empirical information. You may have seen a headline or skimmed an article and missed some details, not a big deal.
The overall impression given was inaccurate and the implicit claim of a fully working end-to-end generated compiler was inaccurate. The headlines were incomplete in a way that was intentionally misleading. It was an interesting experiment and somewhat impressive but the claims were overblown. It happens.
I've been using claude to make a project over the last few weeks. Its written ~70k LOC to solve a complex problem. I've found that it can get surprisingly far in a 1-shot, but about 90% of the work I've had it do (measured in time and tokens) is cleaning up the junk it outputs in its first pass. I'm finding my claude sessions have a rhythm like this:
1. Plan and implement some new feature.
2. Perform a code review of what you just did. Fix obvious problems. Flag bugs, issues, poor factoring, messy abstractions, etc. Make a prioritised list of things to fix (then fix them).
3. (Later) fixes:
- Write tests for the code you wrote and fix the bugs you find.
- Run the code through memory leak checks, and fix bugs.
- Do a performance analysis using benchmarks and profiling tools, and make any high priority performance improvements.
- Read the whole program, looking for ways in which the code you've just written could fit in better with the rest of the program. Fix any issues.
- In directory X is the full documentation for the library you're using. Reread it then review the code you wrote. Are there better ways we could make use of the library?
And so on.
Claude's 1-shot output is often usable, but its consistently chock full of problems. Bugs. Memory leaks. Bad factoring. Too many globals. Poor use of surrounding code. And so on. Its able to fix many of these problems itself if you prompt it right. (Though even then the code is often still pretty bad in many ways that seem obvious to me).
At the moment I think I'm spending tokens at about a 1:9 ratio of feature work to polish. Maybe its 1-shot output is good enough quality for you. To me its unacceptable. Maybe a few models down the line. But its not there yet.
The ratio is an interesting way of thinking about it. I wonder how this compares to other SWEs at various levels of experience, replacing tokens for person-hours.
Yeah I think people are really underestimating what LLMs can do even without specs.
As an example, I did an exploratory attempt to add custom software over some genuinely awful windows software for a scientific imaging station with a proprietary industrial camera. Five days later Claude and I had figured out how to USB-pcap sample images and it's operationalized and smoothly running for months now. 100% of the code written by Claude, it's all clean (reviewed it myself) pretty much all I did was unstuck it at a few places, "hey based on the file sizes it looks like the images are being sent as a 16-bit format")
For day to day work, I'll often identify a bug, "hey, when I shift click on this graphical component, it's not doing the right thing". I go tell Claude to write a RED (failing) integration test, then make it pass.
Zero lines of code manually written. Only occasionally do I have to intervene and rearchitect. Usually thus involves me writing about ten lines of scaffold code, explaining the architectural concept, and telling it to just go
People both underestimate and overestimate what LLMs can do. LLMs have shown very different results when autonomously writing a small program for personal use and autonomously writing production software that needs to be evolved for years.
A workable C compiler is a ~10-50KLOC program, and a fairly simple one at that (batch, with no concurrency or interaction). That Anthropic's swarm of agents wrote 100KLOC before failing is a symptom of the problem. It's certainly possible that many programs are in the sub 5KLOC range, but it's definitely not "most software". Plus, almost no software has this level of detailed spec, ready-made tests, and a selection of existing implementations of the same spec.
My first thought when reading Anthropic's description of the experiment was that it is unrealistically easy. It's hard to come up with realistic jobs in the 10-50KLOC range that would be this easy for an LLM. That it failed only shows how much further we still have to go.
People who independently tried to use it reported that it is very much not workable:
- "CCC compiled every single C source file in the Linux 6.9 kernel without a single compiler error (0 errors, 96 warnings). This is genuinely impressive for a compiler built entirely by an AI. However, the build failed at the linker stage with ~40,784 undefined reference errors."(https://github.com/harshavmb/compare-claude-compiler)
- Overall it’s an interesting experiment, and shows the current bleeding edge of Claude’s Opus 4.6 model. However the resulting product is also a clear example of the throwaway nature of projects generated almost entirely by AI code agents with little human oversight. The prototype is really impressive, but there is no real path forward for it to be further developed. It can build the Linux kernel [for RISC-V], which is impressive. It can also build other things… if you are lucky, but you really cannot rely on it to work. (https://voxelmanip.se/2026/02/06/trying-out-claudes-c-compil...)
Anthropic themselves said that the codebase was effectively bricked and that their agents could not salvage it.
Well then as you say a 10-50KLOC C compiler is workable. Could you show me the C compiler that does manage to compile a modern Linux kernel that is of that size?
By "workable" I meant something more modest, say, successfully compiling SQLite, something that CCC fails to do unless you stretch the meaning of success (it seems the problem may have to do with register allocation, but I would say that register allocation is pretty much the only interesting job a C compiler does).
As to the Linux kernel, you're right that a compiler that can successfully compile it is likely to be bigger, but we don't know that CCC is able to do it, either. What we do know is that (when using the gcc linker and assembler) people were able to boot the RISC-V kernel in qemu. That's something for sure, but not enough to call it a successfuly compilation.
TCC did several years ago. It could boot Linux from source in under 10 seconds. It's wasn't that big of a C compiler. It's in the 50,000 lines of code range.
This was 20 years ago from what I can find. Beside that Linux now is a vastly different codebase than it was 20 years ago. That effort also did not compile Linux unmodified, it required several changes: https://bellard.org/tcc/tccboot_readme.html.
A bit off topic, but see how Anthropic publicity stunts went from "Claude C Compiler" with 100K LOC to the recent Bun Rust rewrite with 1M LOC (10x!) in just 3 months.
I get that it's "novel" creation vs porting, but given that they reported that the C compiler cost them $20k in API costs, the Bun rewrite must be at least $200k, maybe even closer to a million. Pure madness.
Asking an LLM tp change programming language of an implementation is completely different from asking it to code from spec. It's orders of magnitude simpler in practice. I converted some 60kloc of Java to C++ and it works. There were some issues where the Java implementation used runtime reflection because that needs creative workarounds and not all of the C++ translations worked on the first try. And that was my first serious attempt at a task with an LLM. I could likely do better now. An important task simplification here is that a well designed codebase can be converted in small pieces and then joined back together. So the total amount of code converted becomes an irrelevant metric.
I don't know how it could fail - Bun loses popularity among devs? Is it an objective metric? From what I understand, Node.js remains dominant across the industry as a whole, with Deno and Bun mostly used by startups.
Anthropic can always fire the Opus/Mythos token machine gun on any problem (bugs, features, security) to ensure PR success, and there would be plenty of AI-sphere startups already drinking the kool-aid that would consider the whole vibe-coding thing to Bun's benefit.
> Anthropic can always fire the Opus/Mythos token machine gun on any problem (bugs, features, security) to ensure PR success,
Can they, though? They tried and failed to do it in their C compiler experiment. The experimenter wrote: "I tried (hard!) to fix several of the above limitations but wasn’t fully successful. New features and bugfixes frequently broke existing functionality."
Do Firefox not have tests? Then how was there over 200 CVEs found?
Are we going to be comfortable running a piece of software that has 1M lines, and who knows how many zero-days will be in it.
Yes, sure they are going to use LLM to find the CVE's, and so will the hackers. You need a day or two to fix the security issue, a hacker just need to put it in use.
I can make a c compiler in a couple weeks just by looking up open source libraries and copying them.
I can't make any software that people will pay me money to use without taking months/years of development, research, expiramentation and iteration.
Just because the original people who invented compilers had to be genius, doesn't mean anyone has to spend much time or thought in copying that work now.
I built a compiler for a simpler language as part of my compilers course in a CS degree. It was a non-trivial exercise well beyond the majority of software applications. What open source libraries did you have in mind and what are you copying?
If you can truly write a C compiler in weeks then kudos to you. How many compilers have you written so far for how many languages?
I work for big tech and I would say a large % of developers are incapable of producing a working C compiler on any reasonable time scale, certainly not weeks, even with looking at open source. I'm sure they can download one and run it. Most developers today don't even know C or assembler. They don't know how to approach the C language spec. The top 5-10% of developers/engineers can do it but even for them it's non-trivial.
> It was a non-trivial exercise well beyond the majority of software applications
That depends on how you count. By number of programs that may well be right, but that's not what matters in terms of impact on the industry, as software value roughly corresponds to the number of people working on a particular piece of software (or lines of code, if you wish). By number of people/LOC most software is not in the "simpler than a C compiler" category.
I'd copy and paste from all the thousands of open source ones, what do you mean?
There are plenty of open source compilers that I can copy and paste whatever I need to. I don't get why you think this would have any level of difficulty?
Of course I couldn't make a brand new compiler that was better than what's out there...
Just like a game engine, I could clone one of the thousands of engines out there pretty easily - making something better or novel would be difficult. Just making a bare bones clone of what already exists by referencing documentation and pre-existing code is relatively easy now.
Yeah, when I made a mediocre 3d game engine 20 years ago, it was brain breaking difficult work. I can make one infinitely better in a micro fraction of the time now because most of the hard stuff is done and can just be looked up now.
If you copy and paste an entire compiler you didn't make anything. If you copy pieces from different compilers they won't work together. So I'm not sure how you "make" a compiler with copying and pasting from open source compiler. Are you saying you'll take one file from clang, one from gcc, another another from another compiler?
Sure. You can clone gcc and build it. You can close a game engine and use it.
> It was a non-trivial exercise well beyond the majority of software applications
Maybe if you include every application ever written, including every variation of "hello world", but if you are claiming that most serious production quality software could be written by a CS student who is simultaneously working on other classes, I'm gonna have to disagree with you.
I do think being able to write a compiler is a milestone indicator of your computer science knowledge. Most developers probably don't understand pointers either, because "most developers" are people who did a React bootcamp.
I wonder how knowledgeable in compilation was the engineer that attempted this. I'm pretty confident that I could produce a decent C compiler in a few weeks (or less), if given Opus 4.7 + unlimited tokens + a good test suite. (and this is not blind unsubstantiated belief in AI, I've recently rewritten a somewhat sophisticated interpreter in a week with AI; and have worked on several C++ compilers in the past, including a GCC port to a custom DSP, so I have a bit of an idea about what this would take).
But yeah, this is not a "one shot" project, none of it is. One shot doesn't work even with humans - after all, this is exactly what killed waterfall as a methodology.
> I'm pretty confident that I could produce a decent C compiler in a few weeks (or less), if given Opus 4.7 + unlimited tokens + a good test suite.
Of course. The point is that a full, detailed spec isn't enough (even in the rare situations it does exist, like for a C compiler). At least for the moment, you need expert humans to supervise and direct the agents.
Vibe coders usually also let the agents write the tests, which mean that the only independent human validation of the software is some cursory manual inspection. That also obviously isn't enough to validate software.
> One shot doesn't work even with humans - after all, this is exactly what killed waterfall as a methodology.
You can one-shot a C compiler with humans. LLMs' software development ability is impressive and helpful, but it is not human-level yet, even if at some tasks the agents are better than most human programmers. And while many waterfall projects failed, many succeeded (although perhaps not as efficiently as they could have). So far I don't believe agents have been able to produce any non-trivial production software autonomously.
yeah, the key part is that there be a human in the loop, directing and course-correcting the ai while it produces code in reasonably small and well defined stages.
I completely agree. It's more than 40 years since I wrote my first program, and I've never seen software that was first specified and then written and all was good.
The most difficult part of any non-trivial engineering is understanding the problem, and the first versions of a piece of software are how you reach that understanding.
That's why I do not think that AI-powered "software factories" will ever work. It's waterfall development all over again. An architect writing UML diagrams and handing them off to the team of programmers to do the essentially mundane task of implementing... the wrong thing.
AI is, however, very good at helping you go fast from the wrong first version to the less wrong second one. But you need to remember that your main task is to understand the problem that you are trying to solve.
Yeah and any detailed design is still likely to skip over "obvious" things like "only admin users can use admin features". Both the PM and the engineering team will understand this implicitly. But with AI, you never can tell if it's going to make that inference, or just create admin users and admin APIs with no relation between them. These are also the bugs that can most easily slip through, because the reviewer wouldn't even think to look for it.
> AI is, however, very good at helping you go fast from the wrong first version to the less wrong second one.
For me using AI as an entry point into developing my own small tools for personal use, this is incredibly useful. I can start with a concept, fail miserably, then scrap it and try again a few times in an evening. And instead of brute forcing something over that time I can hand off analysis to an LLM and read about better solutions or learn more about what I'm trying to implement.
There is a reason why startups succeeded because the founders actually ate their own dog food as well as solved a problem that many felt.
Products are no projects. Product development is so incredible hard.
The reason why I like Steve Jobs is his nerdy personality, best shown in the iTunes key note. For two hours the guy plays around with the app, demonstrating what to do with it, how and why.
Remember, this is the CEO. No wonder lower ranks had a hard time when they came up with ignorance about a product.
Today’s so called Product Owners know next to nothing about their product nor craft.
Design by committee. And this is what will will AI as bloated bottleneck: piling on a mess of documents only ever increasing context windows can barely make sense of.
The lost art of lines deleted is amplified within the AI age.
I regularly get pieces of work someone product guy has thought up in an afternoon. They only care about the happy path, and sometimes only part of the happy path. I work for a global company that has to abide by rules and regulations in each country we operate in. The product guy thinks up some feature, we implement the feature, then we're told "actually, we legally aren't allowed to do this in 90% of the markets we operate in". Cool, so we add an ability to disable it in those markets. Then they come back "We can do this in some of those markets if it's implemented with [regulatory bureaucracy], so can you do that please".
Then we have to hack away at the solution because the deadline is right around the corner.
This is not software engineering! None of this is related to the software. The job of a software engineer is to take a list of requirements and figure out the way we accomplish those requirements. Requirements gathering is NOT a software engineering problem. Software is implementation, product is behaviour. That's the split. The behaviour of the thing we're building needs to be known before we even try to seriously build it.
If someone just held back for week and did their due diligence, we would been able to architect a solution that is scaleable, extensible, easy to maintain and can make the future easier.
> Requirements gathering is NOT a software engineering problem. Software is implementation, product is behaviour. That's the split.
That's a theory but I've never seen this work in practice. A piece of software is unique. If it weren't, we'd just use the cp command.
What usually happens is you get a set of requirements that looks simple. Then you start thinking about a design and see 10 different possibilities, each corresponding to a slightly different interpretation of the requirements set. You iterate a few times reviewing the designs with who set the requirements and a few peers and see more possible variations to the requirements. You need to double check its parent requirements up to the master requirements. Then you need to take time/feature/quality tradeoffs, affecting the fulfillment of requirements.
Once starting to implement, you see dependencies to other software (framework, sdk, drivers, language features,...) and understand that other software is not what you thought, or has bugs. Or you see an issue with performance or see that one particular feature becomes unfeasible.
That's where all the complexity goes. AI doesn't change that, but can make prototyping iterations and bug hunting faster, as long as someone holds it on a leash and understands its decisions.
I think this was TFA's point about "engineers have been begging to be involved earlier in the process forever". Which is absolutely true.
It has to be someone's job to push back on the Product Guy's stupid idea and answer all the awkward questions about the not-so-happy path with it. Unfortunately, because of the way we've ended up with this process, that person is often the engineer tasked with building it, without any effective political power to challenge the design process.
That's a software developer's main job. Saying no. Or in rare cases saying "yes, but".
If there is a "hierachy" where product managers are seen as superiors to software development, i.e. where product managers decide what to and then only delegate the implementation to software developers, that product will invariably fail. Don't do that.
But that it's not really the case in the example above.
It's not the software engineer duty to know about how a given product is legal in what regulatory environment. That is something that must be hashed out upstream, well before tasking somebody to write a program.
Granted, an expert engineer with strong domain knowledge could be aware of those kind of pitfalls, and offer insights during the product development phase. But again, that should be done before committing to a schedule or making implementation decisions.
I have only been doing this for the last 20 years, so maybe I don't know, but it seems to me that requirement gathering is trivially software engineering. How can you implement something if you do not know what you need to implement. Figuring out what it need to be built and how to build it are closely linked. A good project manager will help collecting any missing domain knowledge, but ultimately it is on the architect to make sure that all the right questions have been asked.
And it is given that not all requirements will have been discovered before a development start or that they may change during development.
This is also the part that AI speeds up the most for me, maybe 100x productivity.
I start with something like this prompt:
"This is a research project around <vague statement>. What do competitors, like <x>, <y>, <z> do around this, are there any blog posts or tech talks?
Are there any academic approaches or recent papers around the topic?
Can you survey any related open source projects? I know of <x> and <y>. Please include analysis of activity, github stars, number of downloads on npm/pypi/crates, and search the web for reviews or complaints or positive or negative blog posts from developers.
All claims should have links to the original sources, preferably with quoted text where appropriate.
We are going to write a research plan for how to produce this report.
The implementation of the plan will spawn subagents to survey breadth, then spawn subagents for each depth topic in detail"
A previous iteration of my company had a CEO with a simple management idea that I believe worked really well: treat each product team as a mini startup.
That means EVERY role needed to develop the product was in that team. No separate corporate wide QA function, infrastructure and operations function, sales function, project management function, or domain expertise function. All the people performing those functions for that project were part of the project team.
Now this is somewhat hyperbole as if there is no sharing of resources whatsoever you don’t really have a single corporation.
But the idea is clarifying and helps to eliminate silos and tighten communication and feedback loops.
I miss that style of working. Although I try to break those barriers where I can as an individual contributor by just figuring out who needs to talk to who to make things happen and opening those channels of communication.
If they can't at least imagine the golden path themselves and write it down, they shouldn't be in charge of the product because they will be unlikely to understand any other in depth conversations about it. And I have no idea how they'd be having coherent conversations with anyone above them either. They're also unlikely to use AI well or not identify bad-out-of-the-gate solutions. It is of course different if they're just gathering opinions or want a PoC or exploratory work done, but those aren't requirements to me.
Developers are unlikely only doing development these days. There's ops and support to do as well, so more back and forth is less time doing those things and development.
We need to meet in the middle about requirements otherwise developers will end up doing someone else's job for them.
I'm seeing decision-makers / people who write requirements starting to use AI as well in my day to day. As before, my job is to read, understand and test those requirements against the real world as I understand it. But same with code. Software engineering for the past (at least) 20 years has had a core focus of "don't trust anyone", this hasn't changed and this takes a lot of time and effort still.
The problem is that instead of trying to figure out what they really want/need, now we're trying to figure out what they really wanted or needed before it got obfuscated by the babble-machine.
We have a bunch of tools - specs, code, tests. All of these really are models of the end outcome we're trying to capture.
You could just build something, see if you're right and then build it again. If that seems ridiculous, what makes a spec special that it can work first time?
Why we've not done this historically is code is annoying and (was) relatively expensive. You can rough out a spec document and get feedback from a wide variety of stakeholders -- after all, they can all read a document.
If you can use AI to explore a problem space and get feedback directly, that's definitely a whole new tool in the kit.
It's UML and outsourcing all over again: If only we can write the perfect UML diagrams representing the ideal class hierarchy, we can just put that in an email, send it to India, then we'll get back exactly the program we wanted, no mistakes!
The article is correct to emphasize the importance of definition and that this can be a bottleneck. But it is incorrect to show the layered documentation and development lines taking just as long as they did pre-coding-agents.
Our team is coding much much faster at high quality then we were before coding agents. As this commenter says, if you empower individuals and small teams to define, document and they set up good practices and harnesses, they can accelerate dramatically.
> we should reduce coordination overhead and empower individuals and teams to make decisions and execute on them.
Improved collaboration. Says every new CEO and manager. The notion that this is ever going to be solved especially with different experience, views, agendas etc needs to die too. AI is surely not going to help and with that roadblock iterating faster doesn’t help because then people want to try just for trying.
> Trying to figure out what a vague, title only, feature request actually means.
> My take is that to accelerate processes we should reduce coordination overhead and empower individuals and teams to make decisions and execute on them.
This is funny because it's exactly what the agile/scrum training taught me 20 years ago.
If by "much faster" you mean ~10% faster, then sure. Having actually measured gains across a few teams, I haven't found anything faster than that. And that's making no effort to amortize across the slowdowns introduced by shipping more bugs (which I also measurable, but is not necessarily damning. Yes, I'm well aware of the knee-jerk "then you need to use GenAI to write better tests!" - which, I will add, is more undiscovered, non-free work).
Writing "80% of the code" is not saving "80% of the time". Code is usually trivial and writes itself when other problems are solved.
Yeah I agree, such a fundamental aspect of software engineering is translating ambiguous “asks” into specific requirements. We now have a tool to convert those requirements directly into code.
And yes, architecture and how to actually implement the designs are also part of the requirements.
The code is just the implementation, the actual problem that needs solving is one abstraction level higher.
Nailed it. I suspect the OP is a waterfall guy (despite the token references to agile). All the references to documentation is a big clue. When I see "documentation" and "development" running in parallel, as if that's an extraordinary thing, I mentally cross out "documentation" and replace it with "input from stakeholders", which, in an agile world is... YES!! Of course those run in parallel. That's the whole point of agile.
How do you translate "send an email to users" as a feature without a Document? ... also an incredibly waterfall thing. We Don't Do That Anymore. Thank goodness. Because it is incredibly inefficient (and not any less error-prone). And the chances that Some Guy who wrote the Document six months ago really understood the actual problem is...practically zero.
One of my favorite waterfall stories. A friend of mine who does contract programming for <big company>, who said that her projects were always delivered exactly on time, so you never had to apply the "double the estimates rule".
"So your projects always finish exactly on the delivery date original given?!" Incredulity!
"Oh no. They usually take twice as long, but the difference is that, first we deliver what they asked for (which arrives exactly on the original schedule date, but is completely unusable); and then we charge them 3 times as much to deliver what they actually wanted (which takes twice as long)."
Not to mention that ai lets the domain experts create and test proof of concept implementations themselves. This alone has been a revelation for us and saves a tremendous number of design cycles.
We will see smaller and smaller teams where all this overhead is minimized by handful of people, and more than ever we will see 2-5 people teams creating great software
You joke but that's pretty much what cross functional teams are.
The only other observation is that as you grow teams, communication channels multiply exponentially and at over 6-8 people communication starts breaking down.
So instead you make small "companies" and set a few ground rules which software they build needs to follow, and you are back at a working org producing complex software.
Putting everyone responsible for some function of a product on one team, instead of having separate departments for separate functions, can do wonders for actually shipping and iterating on software.
I don't remember who said it first but "software teams always ship their org chart" has always stuck with me. How a team is organized has such an outsized hand it what they build.
This sounds like surface level wisdom if you are in your earlier career. I see several problems with this advice, but here is the most obvious one: this only works if you want to become a manager.
It used to be the case that the only way for engineers to advance their career. But we've long moved since and now you can have a long career and get very high in a company without management responsibilities. The examples given in the blog post are exactly what I would expect ICs to do, not managers.
Do you want advice to get promoted? if your company has a formal career ladder, look into the process and optimize for it. Despite people grievances, this is still the fastest and easiest method to get a promotion (shocker!).
As a european living in the US, the idea there is a market at all is laughable. I tried to get price quotes for treatments several time just to get a "well, it's hard to say" or "it's very complicated".
I'm hispanic and my two last names are Garcia Garcia. That is two last names that just happen to be the same.
When I moved to the US I could have dropped one or hyphenate them. I decided to keep it as-is, and use "Garcia Garcia" as my last name (space and all).
Besides confusing amongs americans and people always confusing one Garcia for middle name and one for last name, I had almost no problems. One time an airline messed up my plane ticket (again by dropping one of the Garcias) but that's it.
I appreciate other people have different experiences, I definitely met folks who have changed their names to conform to american customs and make things easier.
I left my home country over 10 years ago, and ever since I've travelled back once every 1 or 2 years.
Since 4-5 years ago I started to notice these betting houses cropping up where my family and friends live. They are impossible to miss, with big pictures of different sports and no windows.
The most important thing to notice is where these place are and are not. They proliferate in working class and less well off neighborhoods, while they tend to be absent from more affluent ones.
These places get a lot of foot traffic, all the locals barely making ends meet, blowing a few tens of euros here and there, with the eventual payoff. It's not difficult to hear stories of people getting into the deep end and developing a real addiction with devastating consequences.
And it's not only the business itself, but what they attract. All sort of sketchy characters frequent these places, and tend to attract drugs, violence...
Legal or not these places make the communities they inhabit worse, not better. I personally would be very happy if family didn't have to live exposed to them.
> while they tend to be absent from more affluent ones.
It’s not that they don’t want to be, it’s that affluent neighborhoods tend to keep things that are considered “low class” out of them. The only Safeway in my city that doesn’t sell lottery tickets is the one in the most affluent neighborhood.
There are many ways to use the financial markets that are not gambling. Buying an index fund or Coca-Cola isn’t gambling; it is not even very risky. Nor are individual stocks gambling, as you can get a reasonable idea of what a company’s price ought to be and how it is likely to perform in the future, at least for well-established companies. It’s also harder to get into debt, as long as you don’t short, because you can only spend money you have, and the stock does not become worthless if your analysis is wrong. (At least, there are warning signs)
Now day-trading? I consider that gambling, because any particular day’s price movement is a lot closer to random.
Buying a stock or mutual fund is the very definition of gambling: placing a monetary bet on an unknown future event. Just because this activity has historically had a +EV, doesn't make it any less gambling.
By this definition prime loans are also gambling. When you bet on something risky then you are gambling. When you bet on something not risky you are not gambling. Also consider that not investing will generally lose money over time due to things like inflation. If we define the goal to be holding as much value as we can, holding dollars is more risky than investing in many stocks (or bonds, which also have a risk of defaulting). A better definition of gambling is something like "taking unnecessary and unproductive risks."
I'm not sure I buy any definition of gambling that depends on the outcome. If you lose money or tend to lose money, then it's gambling, but if you win money or tend to win money, then we change the name to "investing?" Risk includes upside and downside risk.
It doesn't depend on the outcome. If a bank only does prime loans and spreads out it's loans multiple borrowers, has a good reserve ratio etc. and still loses it all, that still wasn't gambling. This is more clear if you consider that storing value in money is also risky. When you get paid in a currency, you automatically begin investing in it at the same time. This is even more clear with foreign currencies. If you got paid $1 million in Turkish Lyra and do not store that value somewhere else, that is more gambling-like than putting it in the S&P. I guess you can say that any time you increase the amount of risk in an investment to get more reward you are gambling. But you can invest in something other than USD with the same risk but with greater reward. For example you can invest it in US bonds (over multiple issues) which has a similar risk to the USD but a greater reward. Still, under such a definition, any business is gambling. We can accept that, but then we have no word that differentiates owning a grocery store from betting all your money on a coin flip, so then the word "gambling" becomes much less useful or really useless in my opinion.
Purchasing a business or parts thereof is not “gambling” any more than purchasing a house is “gambling”. People purchase them (or are supposed to) for the value they provide either through income or asset appreciation in the case of businesses or shelter in the case of the house and not for the singular promise of some winning outcome unlike games of chance. The only expectation is that the asset purchased will continue to provide value throughout the period of ownership which is no more or less than what you would expect of many other assets or goods you might purchase and none of this is contingent on mere chance alone. Just because somebody quotes a ridiculously high or low price does not necessarily mean the intrinsic value of the asset has changed. Overpaying for an asset is not the same as losing money to a slot machine. Have I “lost money gambling” if I buy something in a store the day before it gets discounted? These are just risks that exist in any market. Do not confuse this issue just because some have decided to use them as mere vehicles for price speculation. People speculate on the price of eggs, oil and gold as well but that does not mean buying eggs for breakfast, fuel for your car or a gold necklace for your wife is “gambling”.
Those who already took 99% of the pie can safely bet on every possible outcome.
Most can avoid to lose completely while alive, but they have no path to a winning position, and others are trapped in a situation where it's so hard to go down to a net lost that they lose ability to understand that individual hard work and wiseness is not going to defeat societal asymetries.
Financial markets produce a net positive outcome for investors (gamblers), no? The average rate of return in the S&P500 is about 10% and it's considered the baseline for thr stock market.
> bet the better off do gamble on the financial markets though
Much less. Something I’ve noticed is the parents of the wealthy teaching their children to invest versus e.g. day trade. In middle class or poor households, on the other hand, it’s not uncommon for the kid to be trading crypto instead.
This is a misleading judgment the expectations out of the stock market being that the investments produce money generally speaking are expectation positive. Gambling is expectation negative always. That's the defining difference in my opinion.
Can you lose money in both absolutely but only actual investments have historically positive expectations. The stock market has had net growth of 7%+ on average in the last 100 years. Gambling has not increased the gamblers pockets at all its only shrunk there pockets
Investing is putting money into (hopefully) productive use, like a company with revenue, in an expectation of a return.
Gambling is basically redistributing money according to a random numbers generator, It's a negative sum game (because the house takes its fee), but a surprise positive spike game. That spike forms an addiction in the less fortunate.
> Investing is putting money into (hopefully) productive use, like a company with revenue, in an expectation of a return
The big differences are time horizon, addiction and expectations.
The longer the term, the less actively one must watch it and the lower the expected returns, the more likely it’s investing. The shorter the expected turnaround, the more closely one watches numbers go up and down, and the more one is focused on turning multiples than yields, the more likely it’s gambling.
Any stochastic process can produce gambling behaviour. Only a positive-sum game can facilitate investing.
When you buy a stock, you're not contributing it to the company's productive use. If I buy $1000 of MSFT, Microsoft doesn't get an extra $1000 in their bank account to invest in their business. That $1000 is going to another bettor to settle his previous bet, and at some point in the future, I'll sell and get an unknown amount of money to settle my bet. Just because historically betting on the stock market has been +EV doesn't mean it's not still gambling.
Sure, but that's pretty indirect and a far cry from "putting the money to productive use." Unless you're an early investor or IPO participant, your actual money is not being directly put to productive use by the company you are "investing" in.
> that's pretty indirect and a far cry from "putting the money to productive use."
All finance is indirect. Particularly at small scale.
> Unless you're an early investor or IPO participant
Plenty of IPOs are entirely secondary. And public companies regularly raise money via at-the-market offerings, where a random trader may wind up cutting a cheque to the corporate treasury. (I’ve been a seed investor and IPO investor. My effects on the outcome were rarely singularly meaningful.)
In a large offering, a small IPO investor has about as much direct effect on the outcome as someone buying the pop publicly. In aggregate, however, their actions are meaningful and productive.
Put another way: contrast two economies, one in which most capital is tied up sports gambling (negative-sum game), the other in which it’s in equities (positive-sum long term), one will outperform the other.
Early investors and IPO participants put their money in expecting that 20 years later you would buy the stock off their hands. It feels weird to call it causation when it's traveling back in time, but in a way buying the stock contributes to investment.
If you buy MSFT specifically you'll get regular, fairly predictable dividend payments and not just an unknown amount of money in the future.
MSFT goes up a tiny fraction when you buy. That means MSFT employees with stock grants get a tiny "raise" courtesy of you and with no cost to the company. Microsoft can also use their more expensive stock to make acquisitions. So you are contributing to the company's productive use in at least 2 ways if you buy its stock.
Buying MSFT doesn't meet the criteria to be called gambling, for me.
I'd wager (heh) a bit of both. The distinction isn't that the affluent neighborhood gets to make its own decisions or be cared about by large corporations whose presence ostensibly enhances their quality of life, it's that poor neighborhoods don't. The reason the latter have these socioeconomically deleterious establishments is the same reason they don't get grocery stores or gyms: the people making the decisions don't see them as customers to serve, but as marks to exploit. And suddenly we're back to the notion that privilege isn't necessarily having it "better," but sometimes just having what most would consider the dignified standard.
Well over a decade ago, when we were initially looking for a place to rent in Bavaria's second-largest city, which is otherwise one of the safest cities in the country and the world, the quickest way to screen neighborhoods was the presence (or absence) of those little casinos/sports betting offices.
It's frustrating because technically it's all "legal" and marketed as harmless entertainment, but in practice it’s just another way to extract money from people who have the least to spare
Maybe their having the least to spare is a consequence, and poor impulse control is the cause.
Anyway, it's like making money off other human deficiencies, say, poor vision or dyslexia, and mistakes made due to those. It feels unfair, it does not feel like a conscious choice. Hence the understandable backlash.
That doesn't feel like a very apt analogy. Poor vision or dyslexia can't easily be hijacked into a cycle of addiction the way poor impulse control can. Making a bit of money helping someone with poor vision is very different than blasting advertisements on every single medium and using predatory practices to draw in those with poor impulse control. Not to mention the continued exploitation afterwards until the victim has nothing left.
Making money helping people with poor vision (selling glasses) is fine, of course. I mean exploiting their weaknesses, like using a tiny typeface to write important price information while showing a big price-like number prominently. Doing something formally correct which turns into a trap because of the customer's disability.
I was already expecting a lot of gambling site ads, they took over the soccer tournament sponsorships almost completely anyway.
But what I found out when I came back in the last 3-4 years 100% shocked me. It wasn't just TV and soccer teams, I saw gambling ads in napkin holders at some restaurants, bus stops. I went to get a haircut and the barbershop had TV with gambling ads adorning their frames.
I also left my country years ago and come back once or twice a year. This year the city hall introduced a new parking app that can't be installed on a phone with an app store registered outside Romania, because the freaking parking app has a gambling section and they decided to go with gambling instead of supporting a universal parking app (like the previous one that they had) available also for tourists from outside the country. I called them out on that and said that they can't make it available outside the country because of legal issues with the gambling section....
Guilt by association: If, e.g., violence is a problem, then one needs to deal with the violence. In general, law-abiding citizens are—and should—be free to congregate and partake in their bad habits wherever they please. And even though gambling is generally immoral, it does not infringe on anyone else's God-given rights and has no business being made illegal.
Gambling is emphasized above to emphasize we are talking about individuals who are not sufficiently skilled to argue they are not essentially partaking in pure games of chance.
Sports betting is not a game of pure chance, but bookmaking is arguably ethically quite problematic.
Most individuals are going up against these very sophisticated statistical models created by teams of quants working with huge datasets that you have to pay substantial amounts to access. I think most bettors don't know what they're up against.
And the bookie business model is intrinsically anti-consumer: if you win too much then the bookies will ban you. Whereas bookies are quite happy to keep taking money from addicts even when said addicts have already lost their life savings.
And any active investment platforms are not different at all. A lot of matketing budget is spent to make people believe they can earn money by trading.
There are some differences: investment platforms wont kick you out if you manage to earn money. Gambling sites do that. If you are loosing a lot, gaming sites make your limits go up. If you are winning a lot, your limits go down. Investment sites dont do that.
They also assign "consigliere" to you if you loose a lot. He is supposed to create a personal relationship with you. If you try to stop playing, that person will try to get you back into gaming.
You are not betting against investment platform itself, you are betring against other people on it. That is major difference.
Yeah, the incentives are completely different between exchanges and bookmakers. Exchanges make money regardless of who wins or loses. Bookmakers make money from their users losing.
> Most individuals are going up against these very sophisticated statistical models created by teams of quants working with huge datasets that you have to pay substantial amounts to access.
There are two things you might do as a bookmaker:
(1) Perceive the truth of who is likely to do what, and set odds reflecting that perfect Platonic reality, but with a percentage taken off for yourself.
(2) Adjust the odds you offer over time such that, come the event, the amount you stand to collect on either side will cover the amount you owe to the other side.
You don't need to know the odds to use strategy (2). Nor do you need to reject bettors who are likely to be right.
I have worked in the betting industry for several years. And the reason I'm writing is to tell you that while (2) sound logical, it was not used during my time in the industry. Or to be more precise, of course the odds are adjusted all the time to balance the market, prevent arbitrage etc, but it was also very common to have a 'loss leader bet', usually on the favourite, where the betting company would take a loss or make very little money if the favourite wins (but if that happens the customers still don't make a lot, because the odds are already low, and betting on a favourite is not a winning strategy because the real fav loss probability is higher than the odds would suggest). OTOH what is also often done is when 'real odds' are very high (low probability), the odds that are offered are way lower than the probability would suggest. So if 'real odds' are 100:1, the company would offer 50:1, so, even taking into account the company margins, you as a customers are never offered anything close to the real probability and as a consequence unless you are exceptionally good can never make money (and if you do your are banned).
Strategy (2) doesn't tell you how to come up with the initial prices, and bookies can potentially lose a significant amount from giving "bad" initial prices. If an individual is winning a lot of money from a bookie repeatedly because of these bad initial prices, then it is a sign that they might have a better model than the bookie, and so it is in the bookie's interest to ban them, since sports betting is a zero-sum game: every dollar you win from a bookie is a dollar that the bookie loses.
I worked for a gambling syndicate. We often made money from bad initial prices. Many bookies tolerated us because they wanted to know what we thought was mispriced and rapidly adjusted their odds after we started betting.
It was a balancing act though. They really wanted to know what we were doing, but didn’t want to lose too much to us. So there was some give and take / bartering around the fair value of our information in the form of our accounts being banned and limited or bets being voided. But they definitely didn’t want to eradicate us.
> If an individual is winning a lot of money from a bookie repeatedly because of these bad initial prices, then it is a sign that they might have a better model than the bookie, and so it is in the bookie's interest to ban them
I don't think this follows. If an individual is winning a lot of money repeatedly in this way, it is a sign that the bookie should give their bets a lot of weight when adjusting prices. But that information is something the bookie might want.
If bookies want better prices they can pay for prices from places that have good models. Or they can buy / build their own models. What you're suggesting doesn't make sense from an economic perspective.
It is your right as a human to waste your life away. It is also by definition immoral regardless of moral system (so long as 'waste your life away' is an accurate assessment within said moral system), but they are completely separate matters.
A college fund your parents saved for you isn't your money unless the money is in your name (or possibly set up correctly at the bank). If they just save it in their name, they can spend away as they like. It is their money until it is actually in your name even if you were told it was there as a child.
Which is understandable in many cases if the family actually needs the money before someone goes to college.
Yes, they chose their genes and the structure of their brain after all, how irresponsible of them! /s
In general, something that happens at scale and consistently is not an individual problem.
You have whole armies of very well funded designers of things like processed food, or games, working to deliberate find the faults in human brains, and to make politicians make the laws that lets them do it legally, and you say it's the fault of the individual that falls for it?
Do you think people with a gambling addiction are enjoying it and making an informed choice to continue, and could therefore just choose not to do it instead?
But seriously, mental illness exists. Other sorts of things affect the brain - hormones, cancers, dementia, injuries, etc. Some things really are completely out of your control and no amount of "personal responsibility" is gonna get you out of them nor avoid them.
This argument doesn't account for the inherent, drastic power imbalance between the average participant of gambling and the average owner of a gambling center.
Gambling between people, a basement poker game, that's fine, that's no one's business.
Handing your money over to rich people operating black boxes that are designed from ground up to mesmerize and mind control you into emptying your wallet is a totally other story. On the individual level, it ruins the lives of anyone who is unable to resist or understand the psychological tricks employed on them. Zooming out, it destroys families, communities and in effect, societies.
If we are going to base the legality of gambling on consent and human rights, we have to recognize the limit where consent is no longer valid, due to sickening engagement tactics.
Someone's freedom to make money off of my ignorance or weakness does not supersede my right to self-determination and well-being, neither of which are possible when being hoodwinked by exploitative capitalists.
If we are to continue allowing corporate gambling operations and 24/7 mobile sports betting, we need to place serious restrictions on how these companies are allowed to operate.
I'm fairly okay with legalizing everything but absolutely banning advertising it.
Which is what we should be doing with gambling: no advertising, as opposed to now where everybody ad break has a celebrity endorsing the intelligence you clearly have when you choose (betting platform).
The emotional manipulation of paid celebrity endorsement of harmful, engagement-hacking products and services is downright sickening, just the thought of how normalized it's become makes me sick to the stomach.
I'm very pro gun, pro freedom of consumption, pro crypto, etc. but once emotional manipulation comes into play, self-determinism goes out the window and people are no longer making free choices.
> I'm very pro gun, pro freedom of consumption, pro crypto, etc. but once emotional manipulation comes into play, self-determinism goes out the window and people are no longer making free choices.
To me, this is a very mature response. The whole idea of you do what you want as an adult and you own all of the consequences. Why do you make an exception for "emotional manipulation"? To be clear: I am not trolling in this post. I want to know why you think these things can be legal, but advertising about them is "morally bad".
Well, advertising as a concept is fine, but the industry is steeped in advanced, refined yet old-as-time-itself psychological manipulation tactics.
When addiction is intentionally engineered at a high level and wrapped in the Trojan horse of self-sufficiency or emotion, deceit, or the power of suggestion, we have a problem. Imagine Taylor Swift doing an ad for crack cocaine.
The war on drugs should never have happened. It's been used a tool of foreign and domestic terror and control for a century. It was designed and popularized by corrupt people who stood to gain wealth from restricting the freedom of others.
To your implied point, drug addictions similarly ravish communities, destroy lives, and in the case of drugs like fentanyl, legalization effectively makes it easy to acquire extremely potent and discreet poisons, which has a huge potential impact for violence.
We can paint a similar story for gun violence. We can tie drugs, gambling and guns together even more tightly when we look into where cities approve permits for gambling centers, where most liquor stores pop up, selective enforcement and scandals like the Iran-Contra affair [0].
It's important to have a consistent position on all of these topics, so I thank you for raising this point. So all of that said, I think drug consumption/manufacturing/distribution, guns and gambling should generally all be legal at a high level, but we must dispense with the racist and classist implementations of these systems within our societies, and we should have sensible evaluation and certification programs in place for access to different stratifications.
You should be required to periodically prove medical and psychological fitness, as well as operational certification, for certain powerful substances. Similarly, we need sensible restrictions on gambling and guns [1].
The reality is that with freedom comes responsibility. Without responsibility, unrestricted freedom leads to anarchy or a post-capitalist nightmare. One of the main points of government is to balance these freedoms across individuals, communities and society at large, in order to maximize the well-being and self-determination of the people, while allowing for progress and innovation.
[1] To be clear, I am very pro 2nd amendment [1] and am not calling for a ban on anything or for the State to maintain a monopoly on violence and power.
"Under no pretext should arms and ammunition be surrendered; any attempt to disarm the workers must be frustrated, by force if necessary" - Karl Marx
I asked because I noticed this strange cluster (for me) of people which want to ban some things like gambling or social media algorithms because they are exploitative and addictive, but who also want to legalize drugs. I had a feeling you might be in it.
Stranger, some of them want to ban/make it harder to distribute drugs "legally" through doctors (OxyContin, Sackler family scandal) because doctors might be monetarily incentivized, but then they also support complete drug legalization, including for the same drugs (fentanyl). This position is not even internally consistent, in this case fentanyl was "legalized" close to what they seem to demand, just gated by a doctor.
I don't have a clear position, but I don't think I would support legalization of "hard" drugs (anything above marijuana/MDMA). I can't see any positive, the negatives are clear, and it impacts the whole society (I will respect your freedom until it impinges on mine).
I am pro 2nd amendment, but I also believe the State should maintain it's monopoly on violence. Otherwise it's Mad Max world. The way the 2nd amendment is stated (prevent tirany) would not work anyway today, the military power of the State is vastly larger, the "militias" will never stand a chance against Police/Army/Cyber/... So I am pro guns just as far as personal protection requires (so no rocket launchers).
I was reading this chain of responses. They are great. The two of you are very thoughtful in your world view.
About your last paragraph: How do you feel about other OECD (highly developed) countries that do not allow personal gun ownership (except for hunting and sport shooting (clays, etc.)? Take Japan for example: Except for hunting and sport shooting, ownership of guns is not allowed. How do you feel about it?
The entire point of defense against tyranny is because today's well-behaved police can be tomorrow's racist State thugs. Authoritarianism is a ratchet.
It absolutely does account for that. Your entire comment is a strawman.
If that is not intentional (which I suspect it is not, so no offense intended), then I believe a quick search on “God-given rights” should help you make whatever case you want to in a logically consistent manner. It is a well-defined concept that has a specific meaning over a specific domain. I get the feeling “negative rights vs. positive rights” might be a useful search phrase as well.
The Judeo-Christian god does not exist, nor any other god, so I'm not sure what rights you're referring to. Are you referring to human rights? We don't need a religion to justify those.
Anyway, you said your argument accounts for it, but didn't actually follow through and demonstrate why that is. How does your argument take into account the aforementioned power imbalances?
No. Normally I would, but you are either being lazy or just plain acting in bad faith.
1. My answer is not vague. You are refusing to look up the critical definition.
2. Everything you have brought up (except for the theism bit, which is just completely off-topic) was preemptively addressed in my initial comment.
It’s not about the Gambling, it’s the fact these businesses are collecting a large number of easy victims in once place.
Imagine you’re a loan shark. Which of the following seems like a good place to look for customers: upscale restaurant, movie theater, random bar, theme park, baseball stadium, city park, or a sports betting venue.
Imagine you're a luxury watch thief. Which of the following seems like a good place to look for customers: upscale restaurant, ... or a sports betting venue.
By customers you mean "people to sell stolen watches to"? Cause if that is the question, neither of these is a good place. Affluent people wont buy obviously stolen watches directly in the restaurant, they will go through middleman that makes them look legit.
And people being there to bet wont be buying watches that much either.
Rights are merely a simplification of complex interactions. Societies are more focused on what benefits themselves than such simplification.
The minimal effectiveness of enhanced interrogation plus the desire of the population not to risk being so interrogated means people are generally apposed to such. Tracking down a nuclear threat is considered something of an exception to this stance by the average person.
Either you accept the definition of God-given rights, which is certainly not consistent with your opening statement.
Or you don’t, at which point any following argument regarding its proper usage is moot.
You seem to have gone with the latter, which makes your comment irrelevant. And that is regardless of its truthfulness. To be clear I disagree with it, but getting into that would contribute to derailing the conversation.
It’s not a rejection of the existence of God-given rights.
It’s a rejection of the idea that people’s list of them would be consistent through time. In 1,000 years people may come up with a list of God-given rights, but it won’t be the same list you use.
As such trying to come up with a list of God-given rights from a human perspective is inherently a flawed undertaking. God is beyond human comprehension.
Rights are not something you enumerate, i.e., they are not a “list.” The underlying idea of God-given rights is, simply put, that your freedom ends where mine begins and vice versa.
The idea, moreover, is the generalization of ethics to an environment with multiple actors, such as Earth. And it is, of course, inconsistent with many ethical systems: A competing idea in equally simple terms is “might makes right.”
And the idea, furthermore, does not change over time. So if you substitute it into my previous comment, you will see that the argument within holds.
Finally, and as a side note, I strongly agree that the state of possible actions, and as the “list” of possible infringements changes with, e.g., technology. An 1800s philosopher would, for example, never have considered the applicability of any theory of rights to the operation of a nuclear power plant.
Except it does “them’s fighting words” only died out very recently, but it provides a starkly different boundary between my rights and your rights.
Ritualized lethal combat was a thing for very long time, and took an incredibly long time to go away. Trial by combat and dueling grows out of a fundamentally different ethical framework not just a lack of technology. It seems antithetical to Christianity today, but that wasn’t always the case.
Books most definitely won’t let you win long term. They only want you as long as you’re losing and can ban you once you win too much. This sounds illegal and isn’t.
Irrelevant. I only bring up the stochastic element because of the implicit argument that people are being victimized by gambling against their will.
Since you would be extremely off-topic if you tried to extend this argument to, e.g., Daniel Negreanu engaging in a game of poker, I wanted to explicitly preclude individuals competently engaging in whatever activity is being deemed 'problematic.'
It was mostly to help the 'other side' stay on topic; otherwise, I could trivially refute their arguments by counterexamples, e.g., Daniel Negreanu.
The argument that the article uses to critique AI coding is that coding is not the bottleneck, instead the testing and validation of ideas is.
This is a first-degree smart argument. It presents a seemingly non-obvious idea that makes sense in retrospect.
However I happen to work at the experimentation team of a hyperscaler so I have a different perspective.
First, we aren't always saturating all of the potential experiments we could be running. The reasons are different, but essentially it takes time and effort to build those experimental features. If that cost trended to 0, we could make sure to have a queue of experiments deep enough.
Also in our side we need to do development work to support new features and products. We have a backlog long enough to keep us perpetually busy. If dev cost trended to 0, we could always be ready to provide our customers what they need.
Speaking of new products, each one our company comes up with comes with extra effort to support in our side, and yet more effort to produce dozens of AB test to validate new functionality.
This is not talking about ongoing maintenance effort. Bugfixes, upgrades etc. take a non-trivial amount of effort to keep up.
And this is only inside our little experimentation team. What about security, reliability, scalability, efficiency... it makes me wonder if OP has experience running products at scale.
Instead I'd like to think that dropping the cost of development by orders of magnitude changes the equation of how we create products.
We drove from Seattle to SF and back on a Model 3, and I would say there were only a couple of situations where I wish we could keep driving instead of recharging. Otherwise almost all breaks for charging aligned with breaks to go to the toilet, eat, walk the dog, or simply have a rest.
Definitely a very minor inconvenience. And, compared with frequent trips to the gas station vs charging at home overnight, a total net positive in time saved (if you want to measure it that way).
I also thought this was a pretty silly way of bringing up range anxiety. It's like a dealership selling you a gas car with an empty tank. Obviously the very first thing you would do is to refill it before driving home.
This isn't discussed enough. One argument I've heard is that "this only applies to people who break the law".
One thing to consider is how easy is to make minor mistakes that technically count as an infraction. When acting in good faith, the administration can acknowledge this and promptly fix it, as it happened to me during my immigration process.
Then there are random mistakes out of your control. For example, when I first moved to the US and tried to get insurance for my car, I received extremely high quotes from the insurer. When I inquired why, they replied that my file showed several traffic infractions years ago in a different state. Simply clarifying that they'd mistaken me for another person was enough to fix it. Imagine if instead they deported me to a prison in El Salvador without a chance to defend myself.
And this is not talking shadier practices, such as changing the rules so that certain things suddenly become offenses, or simply fabricating evidence against someone.
> This is often the part that slows down software development. Trying to figure out what a vague, title only, feature request actually means.
But that is exactly what Software Engineering is!. It's 2026 and the notion that you can get detailed enough requirements and specifications that you can one-shot a perfect solution needs to die.
In my experience AI has made us able to iterate on features or ideas much faster. Now most of the friction comes from alignment and coordination with other teams. My take is that to accelerate processes we should reduce coordination overhead and empower individuals and teams to make decisions and execute on them.
reply