75 karma · joined April 6, 2023
It is ironic though that the site itself fails to employ even its own "required" practices, but that's more of an aside.
we're in the same boat, and currently trying to fix that 20% problem because it's the biggest hindrance to shipping things quickly
there is a ton of learned ceremony that we have to undue gracefully because it's extremely tempting to vibe code a problem spec as opposed to just... talking to users directly and understanding what the actual problem is
For example, Battle of the Bits [0] is a community all about chiptune music. I'm sure you _could_ use AI to help you learn and produce some things, but the community is mostly about sharing ideas about what works at the electronic level, so even if AI became super capable, it wouldn't help you engage with the community in any meaningful way. There are several such communities across different domains and I imagine they aren't going anywhere anytime soon, regardless of how much improvement happens w.r.t. AI, since the focus is on "what you learned" and not so much "what you did".
Similarly, I have seen communities focused entirely on Silicon Graphics workstations, or pc-98 internals. Human passion-based communities aren't going anywhere, Google just makes it incredibly hard to find them outside of word-of-mouth.
it's brilliant
This is overly dismissive, there are many things that are possible now that weren't before because writing the code is no longer the bottleneck, like porting parts of the codebase from managed to unmanaged for teams with limited capacity. Writing code is about 1/3rd of the job. Another 1/3rd is analysis, which also benefits from AI allowing people who aren't very good at it to outperform. The final 1/3rd is-
> the effort to carefully design and implement correct solutions to real-world problems.
That's problem-solving - that part doesn't get sped up, and likely never will, reliably.
I've moved to Kubuntu and haven't looked back. Proton support is amazing, and Claude Code fixes the doc-diving problem that used to plague Linux. In fact, with Claude, I was able to get such a buttery smooth setup on Kubuntu - Wezterm auto-saving and restorable sessions (even with multiple windows), a working fading background switcher with history, automounting drives and vhdx images on startup - and these are all relatively simple things, but they were near-frictionless to set up and they don't break on a random Tuesday. I love it and would recommend anyone who is on Windows to reconsider.
It was only after I checked Twitter that I saw Garry Tan's callout of the exact same scam. After experiencing it myself, I wouldn't fault anyone who fell for it. The only other tip-off was that the voice was pretty monotone and unemotional, but that only appears obvious in hindsight, not in the moment where you're slightly panicking that someone might be trying to claim access to your account.
But we did? We've come a long way from the limited XBLA catalog. It didn't happen overnight, but doubtless we wouldn't have the volume of games we have today without Unity, Godot, Gamemaker, Renpy, RPG Maker...
Highly complex, fairly novel.
Emulators themselves, for any chipset or system, have a very learnable structure: there are some modules, each having their own registers and ways of moving data between those registers, and perhaps ways to send interrupts between those modules. That's oversimplifying a bit, but if you've built an emulator once, you generally won't be blindsided when it comes to building another one. The bulk of the work lies in dissecting the hardware, which has already been done for the NES, and more open architectures typically have their entire pinouts and processes available online. All that to say - I don't think Claude would have difficulty implementing most emulators - it's good enough at programming and parsing assembly that as long as the underlying microprocessor architecture is known, it can implement it.
As far as other NES emulators goes, this project does many things in non-standard ways, for instance I use per-pixel rendering whereas many emulators use scanline rendering. I use an AudioWorklet with various mixing effects for audio, whereas other emulators use something much simpler or don't even bother fully implementing the APU. I can comfortably say there's no NES emulator out there written the way this one is written.
> I'd be a bit suspect of an LLM getting an emulator right, when all it has to go on is docs and no ability to test (since pass criteria is "behaves same as something you don't have access to")... Did you check to see the degree to which it may have been copying other NES emulators ?
Purely javascript-based NES emulators are few in number, and those that implement all aspects of the system even fewer, so I can comfortably say it doesn't copy any of the ones I've seen. I would be surprised if it did, since I came up with most of the abstractions myself and guided Claude heavily. While Claude can't get docs on it's own, I can. I put all the relevant documentation in the context window myself, along with the test rom output and source code. I'm still commanding the LLM myself, it's not like I told Claude to build an emulator and left it alone for 3 days.
The most egregious case involved an incompetent configuration that resulted in hundreds of millions $ in lost data and a 6-month long automated recovery project. Fortunately, there were traces of the data across the entire stack - from page caches in a random employee's browser, to automated reports and OCR dumps. By the end of the project, all data was recovered. No one from outside ever found out or even realized anything had happened - we had redundancy upon redundancy across several parts of the business, and the entire company basically shifted the way we did ops to work around the issue for the time being. Every department had a scorecard tracking how many of their files were recovered, and we had little celebrations when we hit recovery milestones. To this day only a few people know who was responsible (wasn't me! lol)
Blame and derision are always inevitable in situations like this. It's how it's handled afterwards that really marks the competence of the company.
rather than open pdf directly, it would be better to take me to the arXiv page, since i can do more there (like use semantic scholar to find related papers quickly)
i like the potential
Most people can't do that, and even if they could, most people don't have the time nor the patience to do that
Maybe, but being told they can freely jump ship to the new team at Microsoft, alongside the fact that their upcoming shares are most definitely going to lose most of their value as a result of losing key talent and pissing off their main compute provider certainly sweeten the deal