HNHacker News
TopNewBestAskShowJobs

iainmerrick

6,735 karma · joined March 11, 2014

https://github.com/iainmerrick https://mastodon.scot/@iainmerrick meet.hn/city/55.8611550,-4.2501687/Glasgow
submissionscomments
iainmerrick··on Born Against, or why hobby programming communities are against LLM usage
I really like that categorization, but I think you've missed a step (or several): designing and implementing all the extra stuff needed to make it work, but aren't directly related to the problem.

For example, you have an idea for a cool and useful app and you want to put it on a website. You need to figure out hosting, you need to write some copy, you need to do some visual design.

Maybe 3a) Yak shaving?

There are various ways to take shortcuts. For hosting, you can use something super easy like GitHub Pages or Netlify or Cloudflare, or maybe piggyback off an existing site that's already deployed. For both copy and visual design, you can just ask Claude or Codex to do it -- but only if you don't mind having that standard vibe-coded look and feel, all glowing gradients and punchy, mic-dropping text.

Maybe you're including that under 5), ship/deploy/publish, but I read that as being more about scaling, marketing, and making things robust. Even before you reach that stage there's always a bunch of bullshit to work through before you can even reach 4), seeing the solution work for yourself.

iainmerrick··on SwiftUI After 7 Years
Well, you can still have breakpoints, and switch between different structures for e.g. mobile vs desktop, or landscape vs portrait.

But I don't think you can cover all requirements with a set of fixed layouts, they do need to be somewhat flexible. Even if all screens were the same size, you'd want to be able to boost the font size for accessibility, and that essentially means scaling the whole UI.

And the slightly different sizes of iPhones are not really that problematic with something like autolayout.

I think something like flexbox is a better fit. There are tradeoffs in each approach, but I usually find a local, modular, bottom-up approach easier to work with than global constraint solving, even though it seems in principle like it should be nice to be able to say "keep this button here in relation to this other button". As you add more constraints like that your layout slowly turns to mush and doesn't actually resize nicely. (Edit to add: I'm probably conflating a few different generations of iOS toolkits here, I realise autolayout is somewhat separate from constraint-based layouts.)

I don't think it's a coincidence that most other UI toolkits have added something like flexbox (including iOS) -- it's not perfect but it fits how people generally think about UIs. Was HTML/CSS the first major UI framework to use flexboxes? That's how I remember it, but maybe it was copied from somewhere else.

iainmerrick··on SwiftUI After 7 Years
Cocoa and Objective-C are both great, but I think there's one huge problem that they never managed to solve well: responsive layouts.

Classic iPhone apps have fixed layouts, and classic Mac apps have a big dynamic document in the centre with mostly fixed toolbars around the sides, and dialogs with fixed layouts. Making a really dynamic layout with OS widgets is a huge pain, so most apps sidestepped it.

As Apple gradually added more and more slightly different sizes of iPhone and iPad, making good UI layouts got harder. Even handling screen rotations is a huge hassle! If iOS had proper support for resizing from the start, screen rotation would be trivial, just another window resize.

Xcode had Interface Builder and autolayout, but I found those to be disastrously fiddly and unusable. Maybe some people like them?

HTML has many problems of its own, but it does have good support for responsive layouts. CSS isn't perfect, but it's vastly better than anything you can find in macOS, iOS, Android or Windows.

It seems to me that SwiftUI was trying to tackle two problems at once: React-style declarative UI, and responsive layout. Those are both good ideas, but trying to tackle both in a single uber-framework and deprecating the lower layers was too ambitious. As somebody said elsewhere in this thread, SwiftUI could have been decent as just an optional helper on top of the existing UIKit / AppKit.

iainmerrick··on Cursor 0day: When Full Disclosure Becomes the Only Protection Left
If it happens out of the box with fresh installations of both Windows and Cursor, I’d say it’s a serious vulnerability in at least one of those.

Sounds like this is a golden oldie bug on Windows/DOS, which I assume is now patched by default. If so it’s Cursor’s problem.

iainmerrick··on Cursor 0day: When Full Disclosure Becomes the Only Protection Left
What’s due diligence? Reading all the code on GitHub?

That’s not a great interface, you probably want to clone it and open in your IDE so you can inspect the code properly...

iainmerrick··on Cursor 0day: When Full Disclosure Becomes the Only Protection Left
Only if you think opening Cursor.app counts as “using an AI tool”. Most reasonable people wouldn’t expect an AI-enabled text editor to hack their machine right away -- it should have the common decency to wait until you type something into the AI agent panel, then hack you!
iainmerrick··on Cursor 0day: When Full Disclosure Becomes the Only Protection Left
If you can’t download anything safely, the web can’t exist.
iainmerrick··on Cursor 0day: When Full Disclosure Becomes the Only Protection Left
Ideally, they’ll be able to look back through the logs and find the original analysis from when the bug was submitted, figure out why it was incorrectly filtered, and use that to improve their automation.

The general idea of a few layers of automated triage by increasingly powerful LLMs, before finally escalating to a human engineer, seems like a reasonable way to handle a deluge of submissions. It just has to be implemented well and continuously calibrated.

iainmerrick··on New era for Gibraltar with removal of border controls with Spain
It's really ridiculous how little discussion there was about places like Gibraltar and Northern Ireland before the Brexit vote.

Looks like NI voted ~55% remain and Gibraltar ~95% remain, but too bad, England voted ~53% leave, so screw all you little overseas territories with actual land borders who are most directly impacted.

iainmerrick··on How to stop Claude from saying load-bearing
Honestly? I don't really mind, and I even quite like it!

The thing is, "load-bearing" is a useful phrase when discussing architecture. What would you rather have it say, that has all the same nuances in as few words?

It's kind of like those sports metaphors that often get used in management-speak, like sending some important email "at close of play". Sure, they can sound a bit weird, but they're often useful -- they capture common concepts in a clear and pithy way.

Jargon isn't always just for obfuscation, good jargon exists because we needed a short word for the complicated thing that frequently comes up.

Usefulness aside, I quite like that Claude Code and other LLMs have their own weird way of speaking. Back in the day we always imagined robots and computers would talk like HAL or Spock; turns out that they talk more like Troi instead. Is that so bad? It reminds you that you're talking to an LLM, and as long as you're not lazy, it spurs you to rephrase things in your own words.

iainmerrick··on The real prices of frontier models
I’m normally one to complain about people complaining about these LLM-isms, but yeah, this one really grates on you.

It’s a shame because it’s making an excellent point! It just takes so long to get to the point that the reader loses the will to live.

Yes, I could probably ask an LLM to summarise it for me. No, I’m not going to. I would prefer the author just take care of that for me.

iainmerrick··on AI Can't Recreate the Thrust Game (But It Can Help You Understand It)
Your reconstruction is so close, I'm a little surprised you didn't stick with the original controls! Even though the BBC had a rather weird layout for all the non-alphanumeric keys.

It's been a very long time since I played Thrust, and I've played plenty of WASD games in the meantime, but it still felt really strange to control it that way rather than the classic BBC Z/X/*/? for left/right/up/down.

Pretty sure it was return to fire, space for shield/tractor; and maybe * for thrust? Edit to add: ah, no, shift to thrust. Works very well on modern keyboards too.

iainmerrick··on Rewriting Bun in Rust
"Compiling" is vague here; for TS I think you need to distinguish bundling from type-checking.

If you're talking about bundling the entire app, 120 seconds down to 10 seconds is a great saving, but other bundlers can do it much faster already. Most people don't bother using TSC to bundle their code. I can understand why Microsoft might insist on using it, but it's not typical.

For type-checking the entire app, I would see that as akin to running all the unit tests. 120 -> 10 seconds is excellent, but not something that should be a constant bottleneck in your development workflow.

I can definitely see that 10x improvement being crucial on large teams (and/or LLM swarms) where the speed of the CI queue becomes a bottleneck.

iainmerrick··on Rewriting Bun in Rust
Typescript's compiler is much slower than Rust's, but it's plenty fast enough for most people and you almost never see complains about it because it mostly doesn't matter

But you have to compile Rust code to run it. You can run TypeScript code without type-checking it. That’s a massive difference in the development workflow.

The new TSC, supposedly 10x faster, will be very pleasant to have but not as much of a game-changer as you might expect. A 10x faster Rust compiler would be incredible.

iainmerrick··on FrankenMarkdown
Points for the consistency of the theme, at least.
iainmerrick··on CarPlay Is Additive
How do you mount your phone in a rental car? Do you bring your own phone holder with you?
iainmerrick··on CarPlay Is Additive
There are plenty of people who actually do write like that. That’s one reason why LLMs often write like that.
iainmerrick··on The short leash AI coding method for beating Fable
Even if you could understand human cognition to the level required to say, confidently, that it’s done one word at a time, it’s likely not!

I think they’re not talking about cognition, but about output: regardless of what may be happening inside your brain, ultimately one word at a time comes out of your mouth, right? And you can’t then unsay it.

When you put it in those terms, LLMs are in exactly the same boat.

iainmerrick··on The short leash AI coding method for beating Fable
Yep, this is my experience too. I think of it more as a very, very smart and fast intern -- you can tell it’s going places, and in many ways is already way better than you, but it still needs an experienced hand to steer it.

My rule of thumb is, any special processes you put in place for AIs are either sensible for humans as well, or they’re not worthwhile. Good CLIs, auto-summarization of long command outputs, Markdown docs and workflows -- those are all useful for people too!

To guard against mistakes and abuse, you use sandboxing and scoped permissions, not micromanagement.

One thing I’d like to figure out is a good pair-programming workflow for AI agents. You can tell a high-level model to go and do something, and that works; you can use a low-level model as an IDE assistant, and that works; but they’re separate workflows. What would be really useful is a way to kind of hand the keyboard back and forth with the high-end model and build something together. But safely, not in full-on YOLO mode on my own machine. This is one specific area where humans and LLMs differ -- it’s so much faster than me that I can’t just grab the keyboard back from it if it goes off the rails.

iainmerrick··on Matrix URIs, a URL syntax from Tim Berners-Lee that never shipped (1996)
You can use it if you want, but the browser doesn’t help you at all. It can’t automatically turn a form into a matrix URI, and it can’t do anything useful with relative matrix URIs.
iainmerrick··on Parse, Don't Validate – In a Language That Doesn't Want You To
The main advantage of branding is that it’s a zero-cost abstraction -- the boilerplate vanishes at runtime. Just using a string instead of a containing object can give you a lighter-weight runtime.
iainmerrick··on Studio Canal Movies purchased on PlayStation Store removed without refund
jaywalking in front of your house is illegal

In most parts of the world it’s not illegal. That’s a seriously draconian law.

iainmerrick··on Japanese verb conjugation the simple hard way
Well, the native speakers or otherwise self-diagnosed experts who felt obliged to chip in here!
iainmerrick··on Japanese verb conjugation the simple hard way
I'm a bit dismayed by all the negativity you're getting. Thanks for all your level-headed and detailed responses here.

I have a hard time understanding why people object to this kind of attempt to systematize something that conventionally relies on rote learning. I've always found that figuring out the underlying rules helps with the rote learning. When you see some new word or conjugation, it's super helpful to have a method for explaining why it's that way; it helps fix it in your mind.

I wonder if native speakers object to this approach because it isn't really how you learn as a kid. You don't learn any abstract rules, you just absorb a huge amount of training material and construct your own model. But that doesn't mean adults need to learn in the same way; we can and should leverage our painfully-acquired knowledge and skills from other domains.

iainmerrick··on Excessive nil pointer checks in Go
they're never going to be great at quantifying too many nil checks

Why not?

iainmerrick··on Why Is Claude Turning into an a**Hole?
People like to complain about AI-written slop, but this kind of thing doesn’t seem any better - vague kvetching with no concrete examples whatsoever.

I haven’t noticed this myself at all. I wonder if the author is just getting their own grumpy attitude reflected back at them.

Judging by the volume of discussion, Claude seems to be the only LLM worth complaining about, which I assume means it’s still the best one.

iainmerrick··on Vinyl succumbs to Loudness War: more than just collateral damage (2025)
Even if you think in purely transactional terms like "asset currently worth $1300", what's wrong with holding onto an asset? Especially one that's likely to appreciate, not depreciate, as long as you look after it carefully.

And in the meantime, you get to enjoy owning it.

iainmerrick··on Show HN: Gravity – interactive solar-system simulator, from Newton to Einstein
It works pretty well on iPhone, except the descriptive text fills most of the bottom half of the screen, overlapping the sim which is centered on the screen.

If the sim were instead centered on the free space (the top half of the screen) it’d be perfect.

iainmerrick··on They’re made out of weights
No, the original "they're made out of meat" works because we're confident that we are in fact intelligent and conscious, despite how ridiculous and unlikely the author manages to make it sound.

"They're made out of weights" works precisely because LLMs really do have this mysterious property that they seem somehow intelligent even though nobody can explain exactly why, and there's active debate over whether they could be considered conscious.

The thing being discussed isn't simply an arbitrary MacGuffin; in both cases the nature of the thing is central to the impact of the story.

iainmerrick··on They’re made out of weights
Just wanted to say, I appreciate your patience and good sense in this thread.

It's difficult to tell who's trolling -- probably best to go with the charitable assumption that everyone is honestly trying to convey their opinion, but mostly talking past each other. Unfortunately these discussions about the nature of consciousness never go anywhere useful.

I think I'm probably in the same boat as you, roughly: a) LLMs are doing something really interesting that resembles in many ways both intelligence and consciousness; b) I suspect they're not actually conscious but I don't know how you'd know for sure; c) it all just drives home that we still don't really know what consciousness actually is. But like (a), it's definitely something really interesting...

← PreviousPage 2 of 34Next →