I still hate the “vibe” terminology.
What I would have liked it to mean: While coding, put on some music, and zone out to coding.
What it means now: Prompt an AI to generate working code and solutions.
I don’t get where the “vibing” comes in. I guess you don’t have to think about the technical details? And that’s vibing? Maybe it’s just unfamiliarity and lack of practice, but poking the AI via prompting and thinking about how you can influence it better doesn’t feel like you could zone in to or “vibe”.
Maybe it’s about letting go of reasoning and just going for it? Vibing in the sense of going with the flow?
It’s not the first terminology I find unfitting. I’m trying to accept that it is what it is, and that it just is what “we collectively” have decided to call it (or ran with).
I assume the term is referring to the person knowing only the vibes of the program they want to code rather than comprehending the details of what it needs to do.
Zoning out to coding I sometimes refer to as zen-coding, I love it just cuz it feels darn great. Until my body hurts from sitting/standing too long
In the meantime, I am interviewing juniors who can’t write a while or for loop without looking on the internet…
The future is looking grim.
Should ask them to make an if loop and see what happens
This is giving me hope that I might actually be fine and succeed in interviews lol. On the other hand maaan I really don’t wanna maintain code written by AI-andys…
As a senior programmer I can’t write a for loop without the internet.
I can’t remember the last time I saw a job listing that didn’t expect me to be an expert in at least 5 languages. The best part is that halfway through the interview you learn that they are no longer using half the languages listed, and are “transitioning” towards 2 others that aren’t even listed. You want me to whip out examples written in Fortran, C++, Rust, JS, and some random word you claim is a language in 2 hrs without the internet? Bitch, I don’t even think I could get prewritten “Hello World” examples compiled in 5 different languages in 2 hrs, much less on machine that I have never seen before.why are you booing them; they’re right!
You must forgive them young Padawan, they still have fucks to give, or have only recently run out. They are still concerned with the “knowing” of things. It is only once you reach a severe and immeasurable deficit of fucks that you can completely let go of your personal pride and ego enough to admit that this shit is fucking ridiculous and you might as well just let Google/AI remember it for you.
fortran and js in the same sentence… Ugh… Not in a cold day in hell.
What ramdon ass language could they possibly be pulling out of their ass for you to he completely unable to write a for loop? I’ve yet to see a for loop, or really any sort of loop that doesn’t look pretty much exactly like the standard C style for loop
for(int x = 0; x < z; x++) { }
If you have a C style language with iterator for loops like C++, Java and friends you almost certainly have this syntax
for(int x : numbers) { }
Python has exclusively iterator for loops with this syntax
for x in range(z)
The only real difference is that instead of a colon
:
you use thein
token.At best I can see the need for a quick refresh on what the exact syntax is but if your a senior any languages you actually use should have a template for junk like this. I don’t think I’ve manually written a loop in ages, I just type out
iter
for an iterator for loop or when I rarely need an indexfori
and the rest gets stamped out for me.If your being tested on random languages you can simply just not be familiar with a language. I haven’t touched Zig once but I’d totally be down to learn it. Everybody whos got a couple languages under their belt knows how easy it is to pick up new ones.
In G’MIC, there’s
repeat(num_of_iters,_var_name,code(););
on JIT code, and repeat code_block done outside of JIT. It has while, for, dowhile on JIT too. Other than repeat, there is only do while, and for which is while outside of JIT.Note:
_var_name,
can be omitted. So, if you need to just repeat a code N times, that can be removed.Dude, there are at least 4 different “for” loop syntaxes in Js/Ts alone:
for (let num = 1; num <= 5; num++) {}.
for (const num of numbers) {}.
for (const num in numbers) {}.
this.numbers].forEach(num => {});
Also don’t forget ngFor and @for in html, and then the @for in sass/scss.
That’s 7 different for loops and I haven’t included the non-for loops, or even left Angular.
Once we include some scripting like I did just this week:
bash: for i in {1…5}: do … done
dos: for /L %%i in (1,1,5) do ()
Then you can just stfu if I feel the need to remind myself of the exact syntax for one of the 3 or 4 different for loop options in c#.
Plot twist, the company app is written in a Lisp-like language.
Vibe Coding: To generate AI slop code without understanding, nor manually reviewing/altering said generated slop.
It literally means, produce low-quality work.
I’ll be forever salty it’s come to mean that when it sounds like it should mean when you’re getting really in the zone and finding inner peace coding straight from the heart.
Thankfully that still has a distinct word: flow https://en.m.wikipedia.org/wiki/Flow_(psychology)
Inner peace coding is the best feeling in the world. It’s like crack, nothing feels the same after.
…or so I’ve been told 👀
I hope vibe coding is a joke like “I just paste from stack overflow”
But I have met people who do just paste from stack overflow, mixed indentation and casing and all.
As a software engineer who was introduced to the field in high school, over two decades ago: it’s real. People are doing it. I’ve met people doing this at my job, and directed focused scorn at them. You know the idiom of “knowing just enough to be dangerous”? Like, you’re learning C and you’re just playing around and you discover pointers, and you’re like “oh this is interesting”, but you haven’t learned or internalized that it is real easy to Fuck Things Up if you don’t use them very carefully (there’s a ton of stuff like this)? LLM codegen being used by novices is an absolute shitshow because the codegen will often create nonsense, broken, logically flawed, or deprecated code, and the novice user is just going to accept it at face value instead of understanding that it’s subtly wrong.
That is just horrendous. I am not a coder by trade or education, but I do a fair amount of it in my job. I may heavily use copy and paste, but I at least make sure it matches the structure of my current code, and I always include the URL to where I got it in a comment above the code.
My org is encouraging it…
I often compare vibe coding to lord of the rings. Saruman blocks the fellowship’s path with difficult challenges. So too does solving hard problems in programming. So Gandalf decides they will take the mines of moria (vibe coding). He knows better but does so anyway. The rest of the fellowship naively follows him down (junior devs). Most of the path is just minor hiccups and the juniors fumbling around. But they get to a certain point and things start to get too heated. The hordes of goblins being the bugs introduced by the LLM as they keep changing the code via different prompts. Then they inevitably awaken the Balrog… the monstrous Complexity Demon that was brewing behind the vibe coding sunshine and roses.
I tried it (Mostly cursor, cline, claude code and the new copilot agent mode) a few times, maybe it will get better at some point but right now I am incredibly slow doing it and the mental load reviewing changes and trying to get it to do what I want is incredibly exhausting.
This seems like more time and trouble than just writing the code yourself.
(And while the same could often be said of assigning tasks to junior programmers, in that case it is an investment in the person rather than strictly a waste.)
I swear, I wholeheartedly agree. By the time I get even something slightly like what I want I could have wrote it myself so I ended up saving zero time; there are instances where I actually save time, but it’s about tedious and simple tasks (I had to search a K-tree) or to refactor certain parts that are more or less the same. All the other times either the code sucks so much I end up writing the whole thing myself, or i know the steps myself so what’s the point of detailing a prompt that will require my intervention instead of just writing the code? Line completion is the other good thing about this wave of AI at least
Let’s acknowledge the good: AI-assisted coding can be a game-changer. It lowers barriers for new programmers and non-programmers, allowing them to produce working software by simply describing what they need.
CW made a simple software in C# as MVC with ChatGPT. Let it change it once. HE DID ESSENTIALLY NOTHING FOR 7 WEEKS, EXCEPT ASKING ME TO FIX ANOTHER BUG EVERY WEEK. WE’RE SUPPOSED TO LEARN SOMETHING. GIVING JUNIORS AI TO “PROGRAM” IS LIKE GIVING A TODDLER THE TOP TEN DEADLIEST SUBSTANCES TO LEARN WHAT IS TOXIC AND WHAT ISN’T.
Is CW in the room with us now?
I don’t think so
I find that using AI can sometimes help me get the ball rolling. Rather than having a blank page, I have some (sometimes shitty) code that I can start from. I have never used 100% of generated code in production.
I’ve heard someone comparing it to the famous rubber duck.
I use it to generically explain things to me. I give it limited things and ask it to break it down or give me alternatives.
No different than googling skills, how I ask gets different results, and sometimes it’s far faster than digging and digging through forum posts or textbook style documentation. Other times it’s a waste of my time and I quickly move on.
I often refer to ai as an index for human knowledge. It’s pretty good at expanding on the context around what you ask it. It’s great for getting started or to help point you in other directions
Yeah I agree. It’s often easier to start from something that’s wrong than a blank page.
I have no idea how people can use LLM-generated code. In my experience they’re absolutely terrible. However it can be good for giving some insights time to time.
I only used LLM-generated code once. I tested and made modifications to see if it was I want. It worked out.
Probably because they’re not good enough to know any better.
It’s definitely improving. I thought the same as you but I looked through my recent ChatGPT prompts and it’s actually decent now, at least at simple/throwaway tasks. It doesn’t stand a chance at the niche domains of my actual job.
It is an excuse. It’s just a bad one
That’s like saying “Enjoying to cut peoples throats and see the life vanish from their panicked eyes is not an excuse for murder”
The bosses don’t deserve high quality work, fuck them. Micro-sabotage the machine anywhere you can.