bitbuilder
Joined 12 years ago
Joined 12 years ago
But the original analogy is flawed too. I wouldn't consider caring about the craft of programming to be similar to obsessing over your photography equipment. GAS is about consumerism and playing with gadgets, at the end of the day.
Caring about the craft of programming is more about being an artist who takes pride in crafting something beautiful, even if they're the only ones experiencing it. I am most definitley not one of those programmers, but have always had nothing but immense respect for those that are.
I've started breathing a little easier about the possibilty of AI taking all our software engineering jobs after using Anthropic's dev tools.
If the people making the models and tools that are supposed to take all our jobs can't even fix their own issues in a dependable and expedient manner, then we're probably going to be ok for a bit.
This isn't a slight against Anthropic, I love their products and use them extensively. It's more a recognition of the fact that the more difficult aspects of engineering are still quite difficult, and in a way LLMs just don't seem well suited for.
Meanwhile a couple generations of us grew up with two working parents who were happy to just throw us in front of the TV or our lego sets when they needed a break. And that seemed to work fine?
Our daughter is only 2, but she's still absolutely thrilled whenever we let her zone out to some Disney movie on the TV, and has yet to even hold a tablet (that we know of, at least). I know things will probably change for us as she gets older, so I try to withold too much judgement from the parents I see happily plopping a tablet with YouTube in front of their kid. But for now, it's just hard for me to even imagine doing that.
I'm sure many would ask "whats the difference between a movie on TV amd YouTube on a tablet?" Well, tons, just from my personal experience. But her pediatrician, early child development professional we work with, and research I've read, all seem to indicate there's a pretty big difference.
If I'm using Claude through Copilot where it's "free" I'll let it do its thing and just roll back to the last commit if it gets too ambitious. If I really want it to stay on track I'll explicitly tell it in the prompt to focus only on what I've asked, and that seems to work.
And just today, I found myself leaving a comment like this: //Note to Claude: Do not refactor the below. It's ugly, but it's supposed to be that way.
Never thought I'd see the day I was leaving comments for my AI agent coworker.
I'm currenlty juggling a few side projects, one of which is a game I've been tinkering with for 3 years. It's a pretty simple simulation of riding your bike through a city at night. It's never been anywhere near close to anything I could actually release, but I finally at least pulled together a gameplay video I could show off to my familiy and friends. They were all pretty impressed, and all wanted to know when I'd actually release it.
But I doubt I ever will. To me, making the game is my game, and I've tried to frame my side project work to my gamer friends that way. Sometimes it's giving myself new techncial puzzles to figure out, other times it's just letting myself zone out and get creative with world building, snapping together building facades like legos to build whatever crazy city I can imagine. It's so much fun.
Another is a web project that's much less fun and creative, but the more I tinker with it the more it turns into something that may actually be useful to others. And it may actually turn into something I can release and promote, and maybe even earn a little beer money with. I'm currently working up the motivation and courage to do a Show HN on that one here soon.
It almost pains me to say it (for reasons I can't even articulate well) but I've found LLMs to be tremendously useful in pushing through on side project work. I've lost track of how many projects I've spun up over the years and abandoned as soon as I got to the tedious parts you need to tackle if you actually want a marketable product (admin interfaces, user accounts, endless boilerplate html, etc, etc). With a competent LLM I can just delegate all the tedious crap and stay focused on what's actually fun for me. It's great.
I've been trying to use Sonnet 3.7 tonight through the Copilot agent and it gets frustrating to see the API 500 halfway through the task list leaving the project in a half baked state, and then and not feeling like I have a good "auto save" to pick up again from.
I've attributed it to all your project content (custom instruction, plus documents) getting thrown into context before your prompt. And honestly, I have yet to work with any model where the quality of the answer wasn't inversely proportional to the length of context (beyond of course supplying good instruction and documentation where needed).
In the years I was doing it we all just lined up on one end of the field and walked the length of it pulling the tassles from the top of every stalk of corn. We started before dawn, soaked in the dew of the fields and freezing cold. And we ended early afternoon, soaked in sweat.
Pretty messed up in hindsight, though I can't say I've spent too much time thinking about it over the years. The only real lasting impact it's had on me is a crippling fear of grasshoppers, after being swarmed by them a few times in the fields.
It speaks to their seeming inability to read the zeitgeist on the general public's attitude towards generative AI at the moment. I'm generally "pro AI", in that I think generative AI is incredibly interesting tech that can potentially be used to create some very cool (and maybe even helpful) things. But "AI" has become a dirty word among the people I know who aren't living in our tech bubble - uncool at best, and evil at worst.
And every time I see something like this, I understand perfectly why they feel that way. Every new hamfisted or creepy attempt at inserting AI into everything by companies like Meta just digs the hole even deeper for people's perception of generative AI.
In a way it almost feels like it's become too good at following instructions and simply just takes your direction more literally. It doesn't seem to take the initiative of going the extra mile of filling in the blanks from your lazy input (note: many would see this as a good thing). Claude on the other hand feels more intuitive in discerning intent from a lazy prompt, which I may be prone to offering it at times when I'm simply trying out ideas.
However, if I take the time to write up a well thought out prompt detailing my expectations, I find I much prefer the code o1 creates. It's smarter in its approach, offers clever ideas I wouldn't have thought of, and generally cleaner.
Or put another way, I can give Sonnet a lazy or detailed prompt and get a good result, while o1 will give me an excellent result with a well thought out prompt.
What this boils down to is I find myself using Sonnet while brainstorming ideas, or when I simply don't know how I want to approach a problem. I can pitch it a feature idea the same way a product owner might pitch an idea to an engineer, and then iterate through sensible and intuitive ways of looking at the problem. Once I get a handle on how I'd like to implement a solution, I type up a spec and hand it off to o1 to crank out the code I'd intend to implement.
It's pretty easy for me to replicate the balanced circles by gazing at the center point. However, I can't say whether that would've held true had I not been predisposed to the possibility via the article.
It does require me to slightly "space out", for lack of a better way of putting. Not defocus, more like downshifting my visual cortex a notch.
For whatever it's worth, I was a college kid in the 90s, and I can induce a wavy effect on patterned walls and floors via a similar spacing out.