Why LLMs Within Software Development May Be a Dead End
thenewstack.io
thenewstack.io
And it wrote it without any issues. (1 little thing, I was in WSL and had to call a windows binary to unload the model from lm-studio, but was an easy fix)
It seems to me, llm writing code has some interesting areas, gets people learning code, writes basic code for users, and helps solve problems when stumped. It wont take over real dev jobs, but will help everyone. LLM's are like a teacher, we just need to make sure the code it gives are correct, lots of spin off jobs to come out of it.
I'm even started asking LLM's for questions like "whats a good free program for xyz", how do you remap keys on a mac like a pc, etc. Its been very helpful.
And fabric and ollama to parse data (news/video text/urls) to break down data in all types of categories. And I've only scratched the service on Fabric usage.
I'm having a blast using LLMs for projects outside my skillset, but I always wanted to do. Even going to make an RPG game with AI music/art/code soon.
Future looks awesome to me.
I'm using GitHub's CoPilot to write a React application, something I wouldn't have contemplated with my current level of brain fog and risk aversion. I've bounced off some dead ends, but so far I'm making progress with my cheap as heck virtual assistant programmer who happens to know React and other things as a team mate.
I bet the hard part is creating compressed and decomposed representations that really encompass all of the common edge cases. And maintaining a good compression ratio without having conflicting uses for the same neuron.
But with small networks, it seems like there will be a way to fully analyze, for example, how language is grounded in visual and spatial-temporal data.
Maybe we can use another network to help come up with circuit factorings and connections for specific use cases given a Q&A or conversation dataset.
For development, you need to thing about what you are doing. To me AI still has decades to go before it becomes a reality.
These are the things "AI" is good at, it's Intellisense on actual steroids. It can take your project's style and structure into consideration and create suggestions based on that.
It's not for breaking new ground and doing cutting-edge software engineering.
Now we have LLMs that have been fed vast quantities of code based on the collective hunches of humanity. Due to the nature of this source, the result is simultaneously more productive, yet lower quality.
Every previous skeptic making this argument has been proven false so far
A professional, experienced engineer can filter the crap from the real. LLMs usually get me over the mental hump of project setup/boilerplate. They also let me rapidly prototype vague ideas in record time.
They also make the bar for a productive junior engineer much higher, as an LLM can perform a precisely defined task much faster than a junior engineer.
How can one become a professional, experienced engineer if one has not put in multiple years being a productive junior engineer?
And what happens if those jobs are no longer available?
My first job in 2010 required 12 operations personnel to manage a simple app server + database. The db had a dba oncall of 3 people, along with oracle support contracts. These days that job would be done using cloud tools, and that team of 12 people wouldn’t exist.
The same story has been true throughout the infrastructure space for 15+ years, with current practices foisting the remaining work on software teams.
I suspect junior engineers who can make effective use of LLM tools will be in high demand. LLMs also minimize the benefit of experience provided you can still sift BS vs truth. A firm ultimately only cares about who delivers the most impact.
This is the paradox that I'm seeing everywhere. While LLMs ostensibly make it easier for inexperienced engineers to get started, in practice it makes juniors irrelevant in the market. A senior with an LLM is more productive than a senior with a team of juniors. So while LLMs may make programming accessible to more people, it simultaneously kills their chances of employment.
I predict the software market is going to shift away from entry jobs entirely. They can be replaced with LLMs under an experienced hand. Which makes senior engineers more valuable. How are we going to train seniors if we're not hiring juniors? ¯\_(ツ)_/¯
I can't think of many things more boring than arguing whether "autocomplete is bad" or "autocomplete is superpower".
Autocomplete is more advanced = saves you more time at first, but because you still need to review the autocompleted part and know exactly how it works it does not save as much time as you thought.
News at 11.
For 100500th time it turns out that typing speed is not the bottleneck if you are doing anything original and generating more code in less time is not such a win as you'd think. However, we don't always get to do original stuff, and 90% of programmers do unoriginal stuff 90% of the time.
An interesting question is whether autocomplete that autocompletes based on others code without their permission is stealing but even that is less interesting in software because mostly licenses are permissive (not so much in art etc)
We are bestowed the power of gods and instead of thinking about creating something new and placing that power in the hands of the users you.. do the same thing you were doing before but delegating your gruntwork to the machine so you can.. what go out for drinks after 5?
It's either that or people who have no experience building apps and don't have the kind of money to pay a dev, bless them, at least they are doing something that's new to them.
Devs trying out Devin and that kind of stuff have no excuse.