Comment by magicalhippo

6 days ago

For me, the fun in programming is sometimes to actually write code, solving a problem in a specific way or try some new approach. Other times the fun is to create something that works, and the code is more a means to an end.

The first case I'll probably still do by hand, like handmade vases despite factory made are cheap and readily available.

For the second case I think these newfangled tools have made it even more fun, since writing lots of boiler plate, repetitive event handles and whatnot is not my idea of fun.

> I think these newfangled tools have made it even more fun, since writing lots of boiler plate, repetitive event handles and whatnot is not my idea of fun

That’s what code generators, snippets plugins, macros, and the old copy-paste are here for. I wonder if you were using notepad to code. Because even nano had macros.

  • Those tools only get you so far, especially if you write something novel to you. Using a new framework or programming language say.

    Sometimes using a new framework or programming language is the fun part.

    But sometimes it's just the best way of solving a problem incidental to the fun part.

    One of the two projects I vibed included a web frontend. I didn't touch a single line of HTML, CSS or JavaScript of the frontend. And I didn't touch the API on the backend. I'm not a web dev, so this isn't something I've got snippets for or whatever, and in this case wasn't the interesting part.

    The interesting part for me in that case was making a tool that could help us, not the details how exactly how that was done.

    • For someone who did a lot of webdev 20 years ago and hasn't done much in the last decade, and does mostly backend development now, being able to vibe code up a quick web or text-mode UI is killer. It might look like crap and not be very maintainable, but who cares - it's a temporary dashboard we'll throw away next quarter when we're done with our migration.

    • > The interesting part for me in that case was making a tool that could help us, not the details how exactly how that was done.

      And I wouldn’t argue about the economics of getting a MVP out. But with software, you often got one happy path and myriads way of getting into an incoherent state (and crashing early would be a boon in this case) and/or returning the wrong response. When you care about failure, you also care that your code is semantically right. The devil is very much in the details, especially if you have N>1 users.

      Getting thing dones for me include a high confidence that the code will do the right thing. And that’s means reviewing each line and checking the semantics (only when it’s a few line of code) or building a test harness and making sure I handle contracts and invariants.

      Snippets, Code Generators, and Copy-Paste gives me sample that I can trust, although I may need to edit. But LLM doesn’t. And I’m doubly doubtful when it’s something I’m not familiar with.