Yeah. It's not why I became a programmer, to tell something else to program for me. Might as well find another job in that case.
comments
Its pretty good at SQL that already exists! And it of course heavily depends on the model. And theres the rub. I think we spend 1.5x for devs now cause of the tokens haha.
Claude can do some crazy stuff thats for sure. But I recall there was code generators that did entire apps before the AI boom. And they were more reliable but more static. And it keeps making like .75 of what you ask, then you have to spend twice as long to debug. At least in my opinion. And worse is that no one can read the code so they dont know what it does. The devs just go, well ill ask cluade to do it instead of taking responsibility. (old man noises)
It's a really mixed bag. I was a bit of an AI laggard for work stuff, while most of my org went all-in. Some stuff worked, most stuff didn't. Things that didn't work:
- Everyone is an engineer now (lol)
- Replacing engineers
- "Software factories"
- "Agentic product design"
- Intern + Claude = senior
But some stuff did work, and most of it was our more senior and technical staff's usage of claude. I'll admit that after I saw my peers hop on board and truly accomplish impressive (functional) things, I dabbled more and I think I have a rule of thumb that helps me. If I'm already a SME, claude may turn me into a super dev. I can smell bad smells, stop it early, and generally know what decisions I need to make up front. If I don't already know what I want, I NEVER let claude drive. Letting claude make decisions is a BAD IDEA.
So honestly I think it depends on who's using it and how.
Well given that my research was literally AI...Its a prediction engine in most cases. Hell I give feedback on hugging face regularly. I used to use hugging face to create specific models like the command line one a bit ago. Specific models for one specific thing. It was fun for a while, but then I got burnt out because everyone just distills without understanding what they are distilling.
I had a fantastic time making a bullshit simulator using startreck jargon. that was fun.
Honest question, in your opinion, how experienced was the development team prior to AI being introduced?
At work you have to have a college degree and at least 5 years of experience. Generally thats the case. I think at most we have one person 20ish years of experience. all the way to two years straight out of college.
What level of code quality could be expected?
Well we had CI/CD, testing,etc... in prior projects. Now its just a toss up what does what. Its better now actually haha. Because docker and other containerization tools mostly rather than AI.
And what was the average velocity for development projects? No idea. I can say we accelerated like mad after beginning of this year. So 10x projects at least.
I get that giving it a VERY specific detailed prompt can get better responses...but at that point, I can just prompt myself and call it good. I am the AI/worker at that point.
You’re not yelling at clouds. But AI isn’t going anywhere, least of all in software dev. If anything I’d suggest learning and exploring patterns like spec-driven dev and how best to build skills and agents.
I lead engineering for my company and it’s taken a tremendous amount of work to scaffold for quality. Everyone runs loops and ships much more quickly. But, like I said, that takes a lot of work and isn’t easy to capture in a one-off comment.
Lots of cool shit to learn, see, and do though!
Honest question, in your opinion, how experienced was the development team prior to AI being introduced? What level of code quality could be expected? And what was the average velocity for development projects?
I have substantial development experience prior to AI and after. I also have spent the last eight years at of the the lagest technology companies advising a wide variety of our customers on implementation.
I can tell you that both my own experience and what I see at customers is that if you already produce low-quantity code and/or are not truly development minded, then the AI tools will largely reflect that. They are tools and require proper direction just like a human. If I give it a three paragraph prompt to create some app it will probably do it and it might even work, but it likely won't be reliable as you have experienced. However, if I put on my software architect hat and give it a detailed instruction file which coding standards, architectural patterns, frameworks, etc. It will usually produce a pretty good product.
As the age old computer adage goes: Garbage in, garbage out.
Look up Matt Pocock, he developed a set of skills that seem genuinely useful in a dev context. There are similar approaches out there, but this one seemed like a good starting point.
You are most emphatically not.
AI is as good as the human in the loop. Two rules would help in the long run: accountability (AI proposes, dev accepts, therefore dev gets the 2AM call when it hits the fan) and understanding (thou shalt not commit code thou cannot explain). If you have the power to push these, you have a fighting chance. Otherwise ask Claude to polish your CV.
Its a strange feeling. I kinda get it, its easy to turn off your brain. But thats KINDA why I get paid. To think right? To solve the issue whatever it is.
Why I haven't even started using AI ☝️
I'm not sure I understand you, but the signature will most often have a separate ordering that won't help with ordering the objects themselves.
Also, there are TreeMaps, that maintain order of elements, but those do the work on every insert
OAI are API endpoints for metadata access of articles. I imagine API access is more respectful in terms of bandwidth since it's organized specifically for access by the universities?
Basic etiquette, you'd probably want to ask the university portal maintainer.
Scraping is generally considered bad manners, and yes you would be immediately blocked if you ignore robots.txt. I assume by OAI you mean OpenAI? I'm unsure what kind of integration your university has, but like with many AI integrations, there is little oversight, which leads to... oversights.
That's straight up fraudulent behavior. Not how I want to start a new business relationship.
EDIT: I’d also like to hear from those downvoting this post.
Just make up whatever and pretend to know how to use AI. It's not like the people recruiting will know any better, they're operating on hype and copium. Worst case scenario, you can just burn tokens to show pretend work.
What's the best way to get an intro to these tools?
Find a website with a free chat bot and ask it for guidance on learning these tools. If that doesn't work, try another site. Keep asking for guidance to run up their chat bot bill until it blocks your IP range. Rinse and repeat with a new bot, or a VPN.
That's the most fun way to learn about this stuff.
Oh, the best way? I have no idea.
Best of luck in your explorations and your job hunt! If you find you like using local models, check out !localllama@sh.itjust.works
I owe you one, thanks.
OK, so there's a few things I've built. First, I want to clarify that there's the concept of a "tool call" in LLMs. i.e. the LLM generates a specific sort of response which is intended to be interpreted as a request to run a function (either in llama-server [if you enable that] or in your client). The LLM needs to be provided with a list of the tools that are supported (including the name of the tool, the description, and arguments) for it to know that it can call them.
Basically, you send a prompt, the LLM "thinks" for a bit, it spits out a tool call as the response, the client code sees the tool call, runs the appropriate function, then submits the result back as another prompt to the LLM and it continues on generating a response.
I've built custom tools (in my own custom client) for accessing limited parts of my file system in a particular read only fashion. (I do not trust these things to write to my disk autonomously...)
For example, I have a find_files tool that LLMs can call with a project name (which I need to provide -- restricted to a few specific locations based on a config file) and which basically runs a listdir and returns the results as JSON to the LLM. I also have a read_source_code tool that allows specifying a project and a file and it will return the text of that file.
This is technically redundant with features that are available out-of-the-box in llama-server but I'd rather run llama-server locked down in a container and provide it access with no more than I want it to have from code I control.
The custom client I wrote includes my own web UI (which is simpler than the one that comes out of the box with llama-server but is tailored to my specific tastes), and the code to run those custom tool calls. The first pass was also my first serious experiment with vibe coding; I wrote a very simple skeleton by hand and then iterated on it allowing the LLM to write most of the code so I could see what that process was like and how it would go wrong. As you might expect, that turned into a complete mess and I scrapped and rewrote pretty much the whole whole thing after a few weeks, but it was quite educational!
Neat that markdown helps.
I also have some of my own custom tooling.
Not asking you to share code or anything, but would you mind explaining some thing(s) you've created to help you?
Thanks again for the responses. They've been super helpful.
Are you just using it like a chatbot in this situation?
For short snippets, I usually just paste the code in (e.g. using triple backticks to indicate a codeblock with Markdown if I want distinguish it clearly from other text in my prompt). It's also possible to drag-and-drop files into the web UI that ships with llama-server, and I also have some of my own custom tooling.
How are you giving it things like binary files? Does it actually understand them? Is that a feature of only certain models?
Vision Language Models can work with images. Both Qwen and Gemma can do it. In the web UI, you can just drag and drop images in and they'll be added as attachments that get processed along with your prompt text. There's limits to what they can understand -- I recommend experimenting with them to get a sense of it -- but for things like OCR, they just do it...
I've also implemented handling for passing images into models via code if you're curious about that as well -- basically you just add the file as base64 encoded data in the JSON structure that you POST to the server.
llama-server's web UI can process PDFs too, but I'm not sure on what it does for that exactly under the hood.
Thanks for the response.
llama-server (which is one of the tools that comes with llama.cpp) includes a web UI. You can also use llama-cli on the command-line (but that gets old pretty quick).
Will check it out. Also came across opencode which is like a TUI for dozens of models, which seems interesting.
debugging assistance
Are you just using it like a chatbot in this situation? Like as a rubber ducky like you mentioned? And just paste code into the prompt?
here’s a screenshot of how it looks now
How are you giving it things like binary files? Does it actually understand them? Is that a feature of only certain models?
I can't give you much advice about Claude or Copilot since I refuse to use either, but I do use open weight models which I can run on my own hardware.
If you're interested in exploring LLMs from that angle, download llama.cpp and some models that'll fit on whatever hardware you've got and start poking at it. I got started a few months back, and it's been an interesting experience. llama-server (which is one of the tools that comes with llama.cpp) includes a web UI. You can also use llama-cli on the command-line (but that gets old pretty quick).
Gemma and Qwen are the two most popular open weight model families right now since they're small enough to run on local hardware and give good enough results that they can be useful.
I've found them to be useful for:
- debugging assistance (e.g. Qwen often points out typos I've made in Python scripts that would've taken me a while to find otherwise)
- brainstorming (think: interactive rubber ducky you can bounce ideas off of -- set a system prompt telling it NOT to give you code though unless you explicitly ask for it for this use case; they're too eager to write code otherwise)
- OCR
- natural language to JSON data extraction (e.g. here's an email, here's a reference table, here's an example of what I want, extract the data from the email into similar JSON...)
- prototyping web UIs (e.g. here's the HTML skeleton for [insert project here], write CSS to style it; here's a screenshot of how it looks now, fix the bug that causes [issue] in the CSS; iterate)
- light scripting (e.g. straightforward but tedious tasks that can be handled by a ~100 line or less Python script)
- quick search/snippet generation for things that I would've done by Googling for a link to documentation/stackoverflow a few years ago -- this works well enough for webdev questions; YMMV with other subjects
- answering questions based on reference data buried somewhere in a PDF
If you try to do batch processing with them, it's helpful to think about them like a flaky distributed system -- i.e. use timeouts, retries, error handling mechanisms that account for invalid output, etc.
I mean usually they do not force you to use a particular ide but most places I have been have been dominated by one like visual studio.