IT/Software career thread: Invert binary trees for dollars.

Haus

I am Big Balls!
<Gold Donor>
19,523
79,862
What impact do you think COBOL has on whether AI can take a Junior Dev role or not?
When those senior operators and coders who are writing and running those archaic systems retire/die this will pose problems for AI driven dev systems in that many of those old systems have evolved "organically" over time (i.e. horribly and often ill documented at best), and the newer devs have to learn not only how to code the language, but HOW and WHY the previous systems were written/architected how they were. I've seen examples of this still being a problem when some AI models asked to "Fix this code" or "Add this feature" to some of these entrenched systems. Maybe AI will advance soon enough that it won't be an issue. But I have that concern.

Or maybe AI will advance to the point that they'll point it at the system overall and just have it "Re-write this from scratch with modern coding practices, make no mistakes" to replace it. I think that will be a ways off still. So we'll still need some pipeline of humans for now.
 

Sheriff Cad

scientia potentia est
<Nazi Janitors>
32,846
78,547
Maybe it’s a difference in usage so pardon if this question seems ignorant… but why wouldn’t you just give it all the source code to look at? When I use Grok for legal stuff, I basically upload the entire case file (just the public stuff, we redact confidential/personal information) and say, I want to draft a response to this or that, here’s the points I want to make, etc. And honestly the drafts it comes out with are better than what I get from my junior associates.

Can you not do the same with code bases? Upload all the code base, say I need a library that transforms the output of function x to the inputs of function y, go - and then just slap that function in and start using it? Or do you give it more integrated prompts and it generates far wider-ranging things all at once?
 

Haus

I am Big Balls!
<Gold Donor>
19,523
79,862
Maybe it’s a difference in usage so pardon if this question seems ignorant… but why wouldn’t you just give it all the source code to look at? When I use Grok for legal stuff, I basically upload the entire case file (just the public stuff, we redact confidential/personal information) and say, I want to draft a response to this or that, here’s the points I want to make, etc. And honestly the drafts it comes out with are better than what I get from my junior associates.

Can you not do the same with code bases? Upload all the code base, say I need a library that transforms the output of function x to the inputs of function y, go - and then just slap that function in and start using it? Or do you give it more integrated prompts and it generates far wider-ranging things all at once?
You can. But with current coding technology that has it's issues.

With fresh "code from scratch" it seems to do much better than with "Maintenance coding" tasks. It's not the old language itself (COBOL) that I see as a problem. It's that a lot of older coding is, to say the least, somewhat difficult to follow. Plus many of the systems have "quirks" which are based on their age, plus pequliarities of their older operating systems, and complicated by the very bespoke nature of some of the more deep code in old apps.

Thinking of your example of case files. Imagine if the case files kept varying in format, and many of the citing of rulings weren't actually properly pointing to the original rulings, but back in the day when these were written people found it just "worked for them". Some judges had some "house rules" the cases in their court needed to go by, which some other courts didn't even though they were in the same jurisdiction. I don't know how much of that happens in your legal world though, so my analogy mapper probably isn't tuned well for this one. You could probably get an analysis done by an AI, but then you'd still probably need a paralegal to proof it out and sanity check it at the minimum, and if it was one of those older courts, you'd want one that knew about that judges quirks.
 

Sheriff Cad

scientia potentia est
<Nazi Janitors>
32,846
78,547
You can. But with current coding technology that has it's issues.

With fresh "code from scratch" it seems to do much better than with "Maintenance coding" tasks. It's not the old language itself (COBOL) that I see as a problem. It's that a lot of older coding is, to say the least, somewhat difficult to follow. Plus many of the systems have "quirks" which are based on their age, plus pequliarities of their older operating systems, and complicated by the very bespoke nature of some of the more deep code in old apps.
It’s very likely that most of my programming experience is on these “older systems.” When I got my first computer job it was writing C code on OpenVMS/Dec Alphas. A ton of my experience was on Informix 4gl systems where I did C++ connectors to the 4gL programs. This shit is so legacy it was legacy when we were working on it in the 90‘S.

Given that I really have no idea what you’re talking about here. Can you explain in more concrete terms?
Thinking of your example of case files. Imagine if the case files kept varying in format, and many of the citing of rulings weren't actually properly pointing to the original rulings, but back in the day when these were written people found it just "worked for them". Some judges had some "house rules" the cases in their court needed to go by, which some other courts didn't even though they were in the same jurisdiction. I don't know how much of that happens in your legal world though, so my analogy mapper probably isn't tuned well for this one. You could probably get an analysis done by an AI, but then you'd still probably need a paralegal to proof it out and sanity check it at the minimum, and if it was one of those older courts, you'd want one that knew about that judges quirks.
Which code files change in format or don’t follow syntax rules? I’m talking about just giving the AI model the entire code base, why would anything be changing? Again, can you give some concrete examples?