Programming
A magazine created for the discussion of computer programming-related topics.
Rules
Please keep submissions on topic and of high quality. No image posts, no memes, no politics. Keep the magazine focused on programming topics not general computing topics. Direct links to app demos (unrelated to programming) will be removed. No surveys.
@[email protected]
very important and relevant toot for me at this moment
thank you
singed
i use AI mostly when i can't get my head around something (or there's something missing but i don't know what), which happens like every 2 months or so
several times when i used the AI for asisstance, it threw out some 50 lines of code but there was 1 line which helped me getting past my coding block
@[email protected] Writing music feels much the same way. If I've ever thought I knew exactly what I wanted and stuck doggedly to the vision, the final product was always the worse for it. Follow the muse where it leads you!
@[email protected] Love it!
I've never had this more then with (indie) gamedev! Often start out with an idea but at the end there often not much left of the original idea and has improved so much
Besides, the process is the part where it all comes together but also where one learns the most I think, the part of discovering more or alternative options to one's design for example
If you skip right to the end you'll never walk that road and miss out on a lot, prob the most
@[email protected] This is breaking down, though. The last decade I've noticed developers are less and less interested in understanding their code and working on it. They want to just get something that passes tests and move on to the next thing, and if it breaks in production they'll put that in the queue to fix.
@[email protected] Exactly. Even if some hypothetical fancy computer program could generate actual good and working code - I'd still write code myself.
@[email protected] I’ve been using claude.ai to do basic web development - a thing I’m not very good at. I do get a wall of code, but I know enough about how code generally works and where the the functionality I want is located that I can trim out the pieces I don’t want and modify the pieces I do want to get the final result.
I think a good art analogy is sculpting, where rather than mould the medium, you take away from the medium. Either way, you still need to understand and practice.
@[email protected] Not sure the sculpting analogy holds. Michelangelo didn’t start with Peter and remove the bits he didn’t like to arrive at David; he started with a block of marble.
(And his chisel didn’t require new fossil fuel power plants and data centres that contaminate fresh water at a time when humanity faces an existential threat of its own making to its own habitat.)
@[email protected] spare a thought for where the clay and marble comes from and who’s mining it.
And I’m pretty sure neither of us are art experts to make an air tight analogy for art and coding.
Let’s instead argue about how much resources are spent making a “somewhat deterministic” code generator and whether all the other “features” are worth it.
One of the things you learn in many art classes as an adult is that the product is much less important than the process. Take pleasure in the process, and the outcome will take care of itself.
The artists I know draw and paint and sculpt (and since I know techie artists) “make” for the sheer pleasure of it.
Having said that, having programmed for fifty years, there’s a lot of boilerplate involved in programming. AI tools help one turn a human-language description of a problem and potential solutions into a partial solution in a matter of minutes.
One might ask: why is there so much boilerplate? Maybe our programming systems should seek to eliminate boilerplate by being more expressive?
To that, I agree. But one of the ways of being more expressive is using an expressive language to describe problems and possible solutions — and what is a coding-specific LLM if not that?
Of course, one can write buggy code in any language. The LLM does not free you from that, so walk through the output carefully, suggesting changes, asking for reasons of particular constructions. The LLM is also a pattern completer, so it will insert unnecessary, but frequently used things. The LLM has limited attention, so it may lose track of the project goal when down in the weeds.
#ai #vibecoding #design #programming #technology #llm