Today was my first full day of coding inducted into Copilot. I know a lot of you folks have had the fun of playing with it for a long time.
I have a particular way of writing code after 25 years, certain idiosyncrasies. Just as a cheap shot example, I write mysql queries in PHP by defining the whole string first as a variable named $someQ = "SELECT * FROM table WHERE id=:id;" and then, rather than binding the variables, I prefer to compile the query as $someZ = $conn->prepare($someQ); and then $someZ->execute(array(":id"=>$id)).
This isn't a usual way of doing things. Copilot tried to bind the vars the first time I did it. The second time, it set up the array. The third time, when I wrote $insQ as the name of the an insertion string, and $insZ as the query that would execute it, Copilot wrote $updQ and $updZ by itself as the names of variables for the update string and update query. For the record, I checked and I've never named a variable $updQ or $updZ... I usually use $uQ and $uZ. It made that up. It stopped trying to bind vars and inserted them into the execute statement. It guessed contextually almost 100% which vars I wanted to bind. This was beyond magic; obviously it read a huge amount of unrelated code in my stack to come to those conclusions from this one small file. But no one besides me uses this naming convention.
It was magic; scary magic.
I spent my evening shooting pool and drinking with bar friends; one's an ex-marine who works for the government and another's a guy who manages ops and software for a small company. They're lamenting that it's impossible in this country for anyone to make enough to afford an apartment. This never seemed hard to me. I just wrote code and got paid a lot for being good at it. Or I made graphics that could probably now be done by DALL-E.
It's been my opinion for awhile that consumers and users of software were redundant. Maybe now we're redundant, too. But in that case, who is talking to whom? What human born today has the experience of struggling to learn something, and what would they accomplish if they did learn it if a giant cloud filter could already translate their thoughts into art or code that would take them years of experience to comprehend, let alone write for themselves?
Are we the last generation to learn skills? And what happens when everyone's skill set is just telling a cloud filter what to make for them? Will that be okay...?
I feel like this is fundamentally different from the shift from Assembly to C to BASIC to Java or the fact that coders now don't think in terms of the metal. This is not "clip art" taking over the illustration space.
I feel like I've woken up halfway through a wholesale replacement of all creative industries with robots, at a point where all consumers (or measurements of consumers) have been fully replaced by robots. Having been in a niche for so long, I ignored it and thought that it would never be a real threat. I'm admitting now that it is.
Where do we go from here? How do we avoid a dead creative class spamming dead code and dead art to an already-dead consumer internet?
Worth noting that people have had these sorts of worries for over 200 years - see e.g. the Luddites[2] and Luddite fallacy[3]. While new forms of technology do make certain forms of employment obsolete, they also introduce many new forms, e.g. who would have thought 20 years ago that there would be people making a living from being a "social media influencer", or even writing and maintaining software like Copilot.
[0] https://en.wikipedia.org/wiki/GPT-3
[1] https://en.wikipedia.org/wiki/DALL-E
[2] https://en.wikipedia.org/wiki/Luddite
[3] https://en.wikipedia.org/wiki/Technological_unemployment#The...
a very useful, highly sought-after and an important profession!
The average influencer in 2022 isn't making any more money than the guys that stand outside stores flipping a giant sign to grab the attention of passers-by.
One of the criteria I have for a professional is to understand how their work fits into the wider context, and be able to juggle multiple vantage points. Most developers now are amateurs that just stitch together code from npm, Stack Overflow and random github repos to create unmaintainable messes. Their work might be made redundant, or even sadder it might be that quality will become even more irrelevant, and all that matters is how well developers can sell themselves.
Whatever might happen, solid fundamentals and knowing how to best abstract the real world with minimal complexity will still be useful in the next 10-20 years.
best programmers will be in still in demand in 10 years.
Best programmers (who understand requirements well and write concise code, etc..) are only less than 1/3 of total programmer population as of TODAY. What 2/3 of the total programmers doing today can be done by 20% of this current 2/3 group at similar ( or better) quality with the help of COPILOT like tools.
This tedious task of finding answers will be the job of GPT Codex/Copilot in near future
Future of Coding is AI pair programming
Between 2025 -2030 GPT-8 Codex/Copilot kind of tools enable developers write "better" code, regardless of their SKILL LEVEL ( this is with the 2/3 programmer population as of TODAY).
Even in 2030 we still need best programmers, whose programming patterns will be still be input to GPT-10 kind of tools.
Like "Peak oil" , "Peak automobiles" ( we are almost there), we will be reaching "Peak programmers" in few short years, then decline from there onwards.
What is software development: let AI generate most code then REVIEW code for accuracy, completion, security etc.. and test it
What is NOT software development : "solving age old problems" via Stackoverflow
By 2030 tools like Copilot create 'two-tier programmers'
-Tier 1 (squeeze 10x from Copilot) : writes 'prompts' and 'function signatures' for AI tools likes of CoPilot as part of technical design, from which Copilot will generate 80% of the code
-Tier 2: will check completeness & execute generated test suite
the only currency in this world is ownership and job-takers take no ownership in their work because they choose to trade their finite time and valuable IP for peanut butter
What's the alternative?
to understand what they are actually doing
but companies don’t care, all they want is that lemon juice extracted by cheap labour
That's the wrong takeaway. Plenty of people know how to build "what's needed" instead of "what's requested", CS degree or not.
I'm not super confident it correlates at all, but if I were to make a guess, I'd say that people with CS degrees are more likely to focus on the wrong things (eg: take requirements as they are without thinking about the why and optimize the requirements given to them) compared to people who got into tech other ways. But that's just based on anecdotal data, won't apply everywhere and so on.
Deleted Comment
And when you find me an AI that can do this, I'll happily concede the goddamn planet to them.
https://youtu.be/N8uk9Ql8J-A
To reach even a degree of knowledge in any of them is to understand just how important nuance is necessary to becoming a good musician, social scientist, journalist, writer, author, painter, designer and even politician.
Can you program nuance? You could certainly try. And maybe you could create something that supplements these fields. And maybe you could try hiring AIs to do some of their work for them, and believe in some meritocratic pipe dream that you have somehow done society a good deed by hurting the job pool of a bunch of underpaid professionals.
They will still be needed. And when they are not, only the social scientists will be able to explain what that will do to the human psyche. Or anyone with an understanding of what high unemployment rates have done to once-powerful states
You don't need advanced AI to compose a blues, a toy script calling RNGs will give you a chord progression and rhythm of the backing track that 'works' and decent DSP will replicate authentic sound with great consistency. In fact, I'm pretty confident the toy script will consistently generate progressions which appeal to enthusiasts more than the neural network with a corpus of all the greatest blues performances in history, in much the same way I'd trust a pocket calculator over GPT-3 to perform basic addition. But the sum of those parts still isn't quite the same as watching a bearded middle aged bloke with a guitar trot out the same basic chord progression over a slightly sloppy drummer, so people rarely pay to watch blues soloists (themselves often playing something which in terms of basic composition is just common variations on a scale) play over a prerecording.
We underestimated flaws, sloppiness, mistakes and changes in tempo, stuff that makes us humans and we can relate to. Rick Beato, a music producer & youtuber that has a video series where he breaks some of this stuff down in "What makes this song great"[0].
I like Jimmy Page a lot, and I know he isn't known to be the best technical guitar player, but the songs he makes and plays (especially in live performances, with the whole LZ band of course), it's just magical.
Can that be emulated? Maybe, eventually, down the line.
But the question that will eventually arise: do we care more about the arrangement of notes, chords, instruments, or the story behind it?
I don't have any doubt that machines might be able to produce music that's pleasant to hear, that gives you goosebumps, that will be #1 in some charts, and we will listen to it. But we relate to other humans too much to replace them, I believe we will always seek the human condition because we relate so much to it.
How would an AI come up with Bob Dylan, that doesn't sing well, but it's bound to a time and place.
A quick anecdote: an ex girlfriend of mine taught me how to appreciate a bit more of art, to go beyond the "it's pretty" you need context, the story of the artist, what was the status quo and what did they disrupt at that point in time.
To have NFTs that are procedural generated, or trippy images made by an AI, might be technical achievements but of little value to my human experience.
A cynic might say: "if you didn't know, you would be a sucker! One day an AI will create his own back story and produce art and you will be a sucker to eat it like it was the real deal! Maybe there's one already!" - so what? We are deceived on a daily basis, and we're easy to be deceived in some areas more than others, we even fool ourselves. The problem is that when you realize you're deceived, you empty the thing of it's value, and you move on with your life.
Don't think too much of it just because it was able to fool a human.
[0]https://www.youtube.com/watch?v=qFVpSjRUD2E&list=PLW0NGgv1qn...
So your AI whips up a fantastic Led Zep 1970 album. And it sounds almost nothing like Led Zeppelin III, which was actually released that year.
How could it? The inputs were Led Zeppelin I (composed and recorded late 1968) and Led Zeppelin II (composed and recorded while on tour in 1969) not to mention the other trends taking place in the British music scene, from Hey Jude to War Pigs as well as American influences like Jimi Hendrix and CSNY.
Led Zeppelin III came out of left field, from a desire of the band to switch things up and take a break from what they had been doing for the first two albums. They did a lot of writing and some recording at an isolated farmhouse in Wales. It's more acoustic, and it's quite wonderful.
I don't think any AI could pull it off even with some setting like "skew acoustic" because little of that existed in the band's earlier output, Page's Yardbirds work, or even the mid-60s studio musician sessions completed by Jones and Page in London. What the "Led Zeppelin 1970" AI would turn out is something more akin to the hard rock/psychedelic sound of the first 2 albums and reworkings of obscure American Delta blues songs.
Would it be fun to listen to? Maybe. But it wouldn't represent the creative evolution and experimentation of the band, which comes about from 4 very talented people (and sometimes other out-of-sight creative forces) working together and sometimes making unpredictable discoveries, mistakes, and wrong turns.
Tell that to Nickelback fans. Or every 12 year old girl who thought Green Day was a punk band or Maroon 5 was a rock band. They pass on into their 20s and don't think back. They've never heard good music and that's the end of it. Now they're 40 and humming along. Not to get off topic here, but since you bring it up, music is the first place that programming people by computer has been manifest for the last 20 years. And basically no new music has been created since that wasn't a deeper iteration of what was already known to sell. Movies are only about 5 years behind the music industry. Books are just catching up, and art and code are imminent.
And even if AI can't replace Jeff Buckley it doesn't mean that the jobs of many working musicians doing things like backing music for corporate videos aren't at risk.
so many big film actors get started in small tv adverts, so many musicians support their ambitious solo albums after work spending the day as session musician for some video game soundtrack. etc.
of course the artists never stop and wont go away, but the economics of it all may end up pretty brutal and demoralising, theres already so little respect and fractions of pennies paid for listening to your music. add to that the fact that many people will probably happily listen to the spotify AI generated band that can spit out music on demand in any style based on a search query...
Creative jobs will be the only ones that will remain one day, but the meaning of "creative" could be redefined or expanded in the coming decades.
i think it will be the opposite
the only jobs remain would be stupid bullshit jobs
creative jobs will only become more competitive
in capitalism system the future doesn’t look bright for proletariat
It was best at writing comments on a function that had already been written.
There were one or two times that it guessed correctly at code I wanted.
What kind of usage info it's pulling from every other thing you touch in VSCode is a source of wonder...
I now use copilot regularly to spin up longer functions that aren’t hard to write, but would take time. With copilot I’m now finished within seconds
We're not dead/redundant yet, IMHO.
It would be nice actually to not have to have skills only tangentially or coincidentally relevant to the task. Our skills are often a thing in itself, e.g. you may know how to write SQL, but what you really want is to run (or to help run) a business. Is writing SQL a skill? Yes. Is it relevant to what you really want? Barely. The same for washing brushes, setting up routers, cutting vegetables.
We drown in ourself invented complexity and are scared of the perspective of living a true life. Those who were sleeping cogs will wake up. Those who want to do SQL will do it anyway, as a hobby. But what will they do to make a living? Haha, why would we bigcorps and elites even care. You’ll do something, maybe. We just have to make sure you can’t riot.