Programming thread

  • 🔎 If you see an alert for analytics.usips.org, this is a self-hosted system I am running as a test. It is GDPR compliant and collects no invasive information.
  • Want to keep track of this thread?
    Accounts can bookmark posts, watch threads for updates, and jump back to where you stopped reading.
    Create account
Thank you. It's really starting to feel isolating to be someone who still enjoys coding by hand, not just here but on HN and LinkedIn and pretty much everywhere else coding-adjacent nowadays.

I guess this LLM revolution is creating a clear divide among programmers that couldn't really be seen before; those who truly enjoyed the puzzle and problem-solving aspects of coding, and those who thought the coding was just a means to an end. Unfortunately those of us in the former category seem to be in the vast minority if online discourse is anything to go by.

Frankly it's gotten to the point that I'm starting to consider new career paths despite me being way too old to do that. The robots aren't going to replace cattle ranching yet, are they?
You're not alone. If anything, everyone on this thread likes programming. Some just use LLMs more than others but we all enjoy aspects of the work.

There's always been a subset of people in it more for the money than anything else. That's just economics. The money for basic programming might dry up but the more complicated or risky stuff will be around, and it's unlikely those who don't really care will rise to that level. Deep understanding is almost always useful.
This is quite frankly bullshit. I enjoy the problem solving aspect. But professionally I never asked to solve anything more complex than "when I click this button, thing is bringing up this error". It is very boring work e.g. find error in AWS console, work out what line, write a test, PR, review and then deploy. It is fucking tedious.
I feel bad for you. I get to design systems and build them. Systems that aren't just UIs for CRUD apps. There's some boring shit when I am just gluing crappy APIs together, and that's where LLMs can help remove the tedium. I'm definitely not writing a hundred shitty mocks and tests by hand anymore either.
TDD. Read it. Use a good one.
Even if you don't use TDD, putting lots of tools in place to lint, test and format your code definitely helps the AI not be as retarded.

I somewhat struggle with TDD. Writing code is actually part of the design work. Even if you've specified it all out beforehand, there will be things you discover when building it. It's probably that part I also dislike relinquishing to AI.
 
Bro found a bug in one of Knuth's algorithms. https://kolja.rs/algorithm-d/

I was implementing Algorithm D, the well-known long division algorithm from Knuth's "The Art of Computer Programming", and I stumbled upon an issue that I couldn't let go. The correctness of the algorithm relied on Theorem B, and its proof bugged me. It felt unnatural, it took a very convoluted path to proving a simple statement, and it isolated a special case which was not a corner case and that seemed unrelated to the problem at hand. There was something odd about it, so I tried to prove the theorem myself, and I failed. However, the failure handed me a counterexample to Algorithm D that had passed as correct for decades, and with it a theorem on the correctness of the algorithm carrying my name.

He got the check from Knuth and everything. Kind of a big deal if you care about theory.
 
What would the clanker whisperers of this thread recommend for practical reading? In the same vein as looking at the code of really good projects as a learning exercise. Are there any good repos with all the prompts and answers alongside whatever's the end result of that?
 
What would the clanker whisperers of this thread recommend for practical reading? In the same vein as looking at the code of really good projects as a learning exercise. Are there any good repos with all the prompts and answers alongside whatever's the end result of that?

Literally not do that.

Make a project by telling it what to do. "Hey I am planning a project, do a UML." If you like that. Or just cowboy it.

"Yeah I'm making a Foo API, here's the properties. I want to do it in $LANG."
"Use $Datastructure for $ThingFooDoes."

If it's a very good AI, you can often just say "here's the AC" and it can actually just *do* a lot of it, then review.
 
What would the clanker whisperers of this thread recommend for practical reading? In the same vein as looking at the code of really good projects as a learning exercise. Are there any good repos with all the prompts and answers alongside whatever's the end result of that?
In general, treating the AI like an intern or junior dev works pretty well. Hey AI, here's the process to follow, let's discuss the design and features, write the design document, write the specs, etc.

For fairly complete projects, there's a PSX Silent Hill Claude reverse engineering project on github that's kind of fun https://sh1pc.com/ | github. CLAUDE.md, .claude/, and docs/ are where most of the AI related documents are. These documents were probably all written by Claude and flagship AI's are usually really good at design documentation and specs.

Instead of reading the AI generated docs, git clone some never-gonna-be-finish project from github that looks fun and start poking at with an AI. Ask the AI to overview the project, or summarize the design, or ask it to suggest documents and prompts to use. I think you'll get the idea pretty fast.

I've been trying to understand the differences between small models and larger ones by having Deepseek-V4-Flash and Qwen-3.6 35B work on a partially complete Source Engine project from github. Having them review each other's work and seeing their comparative performance is quite educational. They both need a strong process to get good results, although Qwen needs more hand holding than Flash.
 
Last edited:
I had an unemployed software Dev. friend tell me today that he refuses to use AI and never will as a programmer. He's been out of a job for 2 years now, and while I respect the sentiment, I'm worried he'll never be able to find a job in the industry.
He'll change his tune fast if you point out LLMs can help refine his resume and LinkedIn profiles for current trends in vapid empty-headed HR-driven recruitment and hiring.
 
feel bad for you. I get to design systems and build them. Systems that aren't just UIs for CRUD apps. There's some boring shit when I am just gluing crappy APIs together, and that's where LLMs can help remove the tedium. I'm definitely not writing a hundred shitty mocks and tests by hand anymore either.
If I could leave tomorrow and do something that is tech-related and not software development, I would do it in a heartbeat.
 
Thank you. It's really starting to feel isolating to be someone who still enjoys coding by hand, not just here but on HN and LinkedIn and pretty much everywhere else coding-adjacent nowadays.

I guess this LLM revolution is creating a clear divide among programmers that couldn't really be seen before; those who truly enjoyed the puzzle and problem-solving aspects of coding, and those who thought the coding was just a means to an end. Unfortunately those of us in the former category seem to be in the vast minority if online discourse is anything to go by.

Frankly it's gotten to the point that I'm starting to consider new career paths despite me being way too old to do that. The robots aren't going to replace cattle ranching yet, are they?
You are definitely not alone, but I agree that its getting harder to find those types of people. It is very nice when you do meet one though.

It is normal to prioritize putting bread on the table, but unfortunately I am not built that way. I'm too emotional for such an industry! I see it as an art. I waste two hours making sure my code is formatted properly, going back and forth between different variable names, etc. Absolutely fucking useless, but I see it in the same way as drawing. I love to draw, and I don't do it for pay, it does not serve me in the long run, it's just fun and beautiful. I really don't know what I'm going to do after graduation, not sure where I'll land in Cybersecurity. I feel like a jack of all niche trades, master of none.

The socialization of it is fun too. When I was a junior in high school taking my first programming class, all of us were crowded around someone else's computer trying to figure out how to print the stupid asterisk pyramid upside down. The collective frustration and everyone throwing out ideas, others rushing to compile and see if it worked, others getting roasted for somehow making an infinite loop-- oops! Someone hid:

Runtime runtime = Runtime.getRuntime();
Process proc = runtime.exec("shutdown -s -t 0");
System.exit(0);
in another student's code and now half the class is laughing at him having to wait for the computer to restart. I yearn for those moments all the time. Perhaps we are not doing anything that produces value, but we were having fun whilst in the throes of a collective struggle. And I love tutoring and teaching, but no one comes to office hours anymore because they use AI. None speak to each other or have anything to add because they all use AI. I have a lot of love and joy to give in a field of cold machinery, it sucks!
 
this is so fucking autistic but i’ve been working on a few tools that i use because for the most part, i tend to be the most consistent one when it comes to archiving the things i follow and i wanted to develop an easier way to archive everything without having to do it manually.

i’ve decided to start learning python so i can make a few python scripts. one is a yt-dlp proxy rotator script because i find it difficult to download videos when you’re using a throttled internet connection or being cucked by a VPN. over time of developing this script, i’ve learned a newfound appreciation of software development. it’s a thing you hear common in the computer industry but sometimes it’s nice when shit just works. i’ve never tested for bugs at the extent i have but i like to imagine myself as a regular guy and i want to use program but program is jeet code and program dont work. i have to turn jeet code into white man code.

so far everything has been working out and at some point i want to release this to the world because as far as i know, yt-dlp doesnt allow using a proxies.txt file if you’re using multiple proxies. i also want to try and apply it to other websites like yt-dlp and make it easy for any retard to type a few words and boom it works
 
Last time I read about Go it was when they didn't have generics.

What's the real advantage of Go over C besides "lifetimes/malloc/free & genearl pointer shit"?
My take on it is that it is better Python. It is super easy to write without using loads of third-party libs; the code runs quick as it is native. It also works well in cloud environments.
 
9xlv3zj51vih1.jpeg
 
I worked with some Go supremacists, so you just get this stuff like beaten out of you PR, by PR.

I also remember there working with some guy that used to go absolutely nuts over the tabs vs spaces thing. He was alright about anything else.
My last client had a big chunk of Go in their (fucking horrible, huge, incomprehensible) monorepo and their automated linter shit would've bitched if I tried to eliminate tabs. But I've deployed tab free projects for other clients. I'm subverting things slowly.
Last time I read about Go it was when they didn't have generics.

What's the real advantage of Go over C besides "lifetimes/malloc/free & genearl pointer shit"?
Best type system in mainstream usage. Pretty great concurrency model as a built in.

Edit: well and in that vein, I don't use Go generics and I feel they're unnecessary. Go's interfaces are fine and if they aren't, your idea is too muddled. Think it through a bit more or maybe python would be a better choice.

Or this:
My take on it is that it is better Python. It is super easy to write without using loads of third-party libs; the code runs quick as it is native. It also works well in cloud environments.
It's fantastic for docker stuff because static binaries make for excellent, butt naked docker images.

I'm actually not really a huge Go fan directly, necessarily.

I'm a Lisp, ML type in reality. Go is just way less gay for my day job working with jeets. They all insist on python and it's depressing. They pretty much keep me around because I'm the only US citizen (juicy gov contracts) and I know Go.
 
Best type system in mainstream usage. Pretty great concurrency model as a built in.

Edit: well and in that vein, I don't use Go generics and I feel they're unnecessary. Go's interfaces are fine and if they aren't, your idea is too muddled. Think it through a bit more or maybe python would be a better choice.

Can I ask for an example?

Not just the standard demo of "we can add floats AND integers!".
 
Can I ask for an example?

Not just the standard demo of "we can add floats AND integers!".
I'm on my phone, but it's less about flexibility, if that's what you're getting at. It's more that it actually makes it a pain in the ass to be flexible. That's good for you and produces less shitty code.

Also tuples that aren't just a shitty syntax for arrays is good.

Like merging most error conditions into the return type is massively helpful to writing understandable code. Java sorta understood what an unhinged problem exceptions were, which is why they had methods declare what types they'd throw. But the real lesson we had to learn was the whole model was retarded, top to bottom.

Splitting error handling control flow out of the ordinary call stack was a failed concept that will last for decades.
 
Back
Top Bottom