What has come to your mind when you heard the word vibe coding?
When chat GPT first came in, which was a big leap, big movement that took everyone by surprise,
but since then they have been competing and sometimes we feel that we're kind of going
backwards, similar to what happened with chat GPT 4 compared to chat GPT 3,
or there is a lot of things happening right now because there is a lot of money on the table
that we need to grab and there's a lot of investments that is directed toward that
and hyping more vibe coding is a good thing for sitting more of that.
Do you think is it still the case or I think with the evolution of AI and stuff,
I think it's not like a vibe coding anymore?
It's still not in a position that you can just trust the code that it gives you.
You can tell that this code is related by someone who just is vibe coding.
I think at the time that this podcast will be published, we might have another version.
The entry barrier to start coding is way lower now, which is great.
I mean, from an innovation point of view, our job as developers is not only spitting code,
right? It's just like just building the code on blind.
We're building that code in order to answer a business feature and that's why the entry
to the production scale application is not there yet.
Yeah, that's true. This is like a fact currently. It's not anymore a hype.
It's currently in reality.
If you know what you are looking for, the LLM can basically try to answer that.
Yeah, that's true.
You need to double check because it's funny.
The attackers, what they started to do now is they started to realize that the LLM hallucinate
and it hallucinates for the name packages react.
It just can reverse the E in the I. It's like react.
And then what they started to do is basically look for those
namings and provide them as dependency packages in NPM or whatever.
True.
This is one of the worst nightmare that a founder can have to be able to wake up with no user,
which is really hard. It's sometimes you don't have to trust the I too much because
we'll end up screwing up something in production.
Just be aware that it's give you suggestions.
It's probably give you recommendations, but it doesn't give you best practices.
It doesn't give you how things should be like for each developer,
we have someone else to help them.
That is a junior developer kind of and there is something that's blow up.
I think last week in hacker news or read it,
the developers are getting somehow overwhelmed from all the PRs from co-pilot.
So it's a shift not only in startups, but the big companies are also incentivizing the
developers and pushing the developers to incorporate the EI work style now.
Vibe coding is not ideal, but get into the wagon.
Try it out and learn from it.
I think it's going to be the future of what's coming next.
So hi, welcome guys.
We are the Let's Go Podcast.
A podcast we interview software engineers to share the virtual industry.
And here we are on a special episode to discuss the vibe coding and the impact
of vibe coding on the product that people are built using other tools like our culture
and many other tools that you already been using for biocoding.
And unfortunately, we have like a trigger for this today's episode,
but unfortunately couldn't make it.
And then we catch up with the Muhammad Able late.
So let's catch up more about this episode after this intro.
So thank you, Muhammad Able late for accepting my invitation.
It will be a pleasure hosting you for today episode.
So can you give the audience an introduction about yourself?
Thanks, Elias, for the invite.
Super happy to be here with you today.
A little bit gathered for the other guests that couldn't make it.
But yeah, we'll try to get the most out of it and try to fill the gaps as much as they can,
even if other ones are super insightful as well.
So a little bit about me, Muhammad, I like to define myself as a community catalyst
in a sense that I like and enjoy doing community stuff.
I helped to spin up a few communities back in Morocco and a few others the world as well,
and also helped other conferences and meetups in communities.
I like doing conferences, meetups, contributing to other sources, all of that.
Professionally, what build builds.
I am a back and engineer in Spotify.
That's my full-time job, and that's where I work currently.
Awesome. So thank you so much for the introduction.
And those of the people who doesn't know Muhammad Able late,
he's one of the people behind Xblavos,
he's one of the best community for developer in Darija,
which is really hard to be able to have this good quality content from a community
in Darija in Morocco. So it's a pleasure to host you for today's episode.
And if you don't know more about Xblavos, you can check out their website at xblavos.com.
I will leave all the links in the description of this video,
or in the show, if you are watching from Apple Podcasts or Spotify.
So for the first question, I would like to ask you for this discussion,
because it will be a special episode, not an interview.
So for this one, I would like what has come to your mind when you heard the word vibe coding.
So the vibe coding, I think, is a term that was recently hyped a lot,
especially that it's basically changed the way how we code.
Instead of writing code, we write natural language prompts and telling another assistant
how, what we want and what we need.
And that assistant will basically try its best in order to fulfill that,
agnostic from what that assistant can be.
But I think that's what how I see and how I understand the vibe coding term is.
Now, obviously, I'm taking it from a developer perspective.
I think vibe coding is very developer focused,
but you can, I think soon we're going to see vibe everything.
It's going to be vibe designing, vibe productionizing.
A lot of vibe stuff will follow pretty much soon.
And I think the vibe coding term got a lot of attention and momentum,
because there is a big market in there.
I think the market for the public audience got saturated.
So when chat GPT first came in, it was a big leap and a big movement
that took everyone by surprise.
But since then, they have been competing.
And sometimes we feel like we're kind of going backward,
similar to what happened with chat GPT for compared to chat GPT three.
And then the evolution in that sense didn't make much sense from a user end perspective.
So we're kind of switching the focus to enterprise now where the money is.
And then one of the ways is basically making coding assistance and that the promise is
we're going to make the developers more productive.
They're going to achieve more things using coding assistance.
Is that true or not?
I think that's what we're going to discuss in the next hour or so.
But I think the main focus, or there is a lot of things happening right now,
because there is a lot of money on the table that we need to grab.
And there's a lot of investments that is directed toward that.
And hyping more vibe coding is a good thing for sitting more of that, I think.
So there is a business side of it.
But also there is a hobby fun part of it as well.
Yeah, makes sense.
And those are windy like because when we are like using the code vibe coding,
people are not tempted to make it.
Like if you think about it seriously when they are like because it does vibe coding.
Do you think is it still the case or I think with the evolution of AI and stuff?
I think it's not like a vibe coding anymore, but it's like an actual coding.
I think it's still, I've been discussing it quite recently, a lot with colleagues and stuff
and trying to get a lot of experiences and feedback.
It's still not in a position that you can just trust the code that it gives you.
Maybe in small trivial tasks, it could do the job and you can just like go with it.
But it still lacks a lot of the fundamentals in a sense where we want a code that is
not only working, but a code that works with the standard of the company,
the general guidelines, the best practices and all of that.
And the code that the coding assistants produce right now, most of it gets confused at some point.
Most of it doesn't respect that.
It works and it works great, but still lacks that enterprise grade production level.
And that's where what a lot of companies and a lot of developers are reluctant to.
If you are working on a heavy project, 100% work.
If we're working on a team, it becomes a lot more challenging.
But I think with the evolution that we got in, I think less than a year time,
we can expect something by the end of the year or by late 2026,
that we're going to have more controllable, more production grade at least, or a way for
those coding assistant to behave more in a way that producing code that does what we want
and respecting the guidelines that it was given.
Because I've been playing a lot with different ones and it pretty much gets lost,
especially in large code bases.
And a lot of the code that we work with is not like small ones, not really the worst example,
but code that is shared between a lot of developers, a lot of people contribute to,
and has thousands, if not millions of lines of code.
Yeah, that's true.
That's true.
And also when you are using Vibe coding and AI model to be able to help you
with the coding assistant, especially with a large code base and large products,
you will see a pattern that also like you can tell that this code is related by
someone who just is Vibe coding.
For example, you will see in a maybe in a code that they are using a structure or like a styling
for a code.
And this is how they are thinking about the schema for thing.
But in this function that is in the same like a utility function or the utility file,
you will see that is treated differently.
So you can tell there is like a pattern that you can tell like a within like a one hour
of reading the code.
You can tell that this is AI generated code.
And this, this is just Vibe coded product that I don't think it should make it to production
level like and people started paying it or using it.
So do you think currently with this level of that we are currently going into AI and
this stuff with Jim and I, Claude for and other like a new version of model.
And I think at the time that this podcast will be published, we might have like another
version like we'll be like I have a new update about this model.
So currently, do you think this is still the case that you can have at least something
that can be built and we are currently because Vibe coding, it could be applied to a technical
or non-technical person.
So currently we are getting the context that is someone who is technical who will be writing
the code to do this, we'll have a problem with that.
In the meanwhile, we are thinking about someone who doesn't know even like what is a variable
will be coding and using AI to be able to build.
What do you think about if we can ship something like it's just an EVP that is kind of working?
Yeah, I think one of the things that the business always try to achieve is going fast and
making features available to users as soon as possible.
And I can understand from a startup point of view, this is key and this is game changing
because I'm pretty sure in a startup world or you're just like building your MVP,
you want to validate your hypothesis and move fast and using coding assistance is 100% legitimate
because you want something that you can iterate on fast, add something, do your market research,
see how the users will react to it and then iterate over it.
We know that in a startup context, the code that we have now will not be the code that we
have in a three months time, not the code that we're going to have in a year time maybe.
So it makes a lot of sense to move fast and especially for a technical person,
even not a technical person to build things that cap in the startup environment has moved way down.
So the entry barrier to start coding is way lower now, which is great.
I mean, from an innovation point of view, it's unleashed a lot of innovation and we're going to
see a lot of startups probably in the next year and a lot of validation and ideation coming to
reality. The problem with large scale applications and enterprise applications is two things.
There is knowledge or business knowledge that still those coding assistance lack or they're
using a technology that is very niche. So for example, if you think of either Edge,
like specific design of Scala featured also a language feature that is not used by a lot of
developers like JavaScript, Python, Java, those languages are widely used and if you're not using
a specific pattern, you can just build things really fast. But if you're not using widely known
framework in Java, then you're going to probably be stuck or probably if you're using a language
that is not one of the big five or three, then you're going to be stuck as well. So there is a
technical side of it that is challenging because like the LLM is not trained as much of seeing
those patterns because it's niche and the developer community is smaller compared to the
others. So the knowledge is very limited for that LLM to produce that production scale code.
The other thing is the business side because our job as developers is not only spitting code,
right? It's just like just building the code on blind. We're building that code in order to
answer a business feature or fix some business issue or provide a certain functionality or
feature to the user. And all of that is missing in the coding assistance that we have right now.
They still lack that understanding of we need that feature to answer a specific business need.
All it does, it basically provides you with the technical answer, which it says the last step
of all the steps that you do as a developer. So you define the requirement. From the requirement,
you see how the technical implementation is. You gather alignment around the technical
implementation and then you split it up into spool implementable functions or components. And
then that's the bitch where you start coding. So you do all that steps, all that mind thinking in
order to get there. With the way of LLMs are evolving, we're still seeing a lot of thinking
and processing happening there. But that still lacks the general context, I think, where we will
still need to see a lot of evolution in there. So it helps a lot in the last step. But all that is
above definition of the requirements, implementation, gathering the alignments, gathering the buy-in and
all of that is still a little bit missing. And that's why the entry to the production scale
application is not there yet. However, I still think if someone wants to benefit from it
in the next few six months, the next year, the time is to start now. So we can understand the
limitation of those tools. You can understand how they work, when they work better, how they work
better. And then you can build upon it. Because I can see that this is only going to stay in the
coming months and years. It's not going any way anytime soon. Yeah, that's true. This is like a
fact currently. It's not any more a hype. It's currently a reality. So you have to go with the
wave instead of hitting the, like, go into the other side of the wave, because currently it's
there. You have to use it. And one of the things that you mentioned is, give me, like, for example,
the one that you mentioned about the AI model, you need, like, for example, this specific feature
that you are using for Java, for example, or Scala, that will not be you, like, cannot, the AI model
cannot give you a good answer for it. And you have to do your own research to get what you are
actually looking for. It's happened with me, like, fmpeg, which is a video technology. And it was,
it was like a really give me like some random command. It does give me like a structure, but
it's not working. The command doesn't work in. And you will need to, like, go and find the
documentation for fmpeg. And the problem with this technology, there's not a lot of GitHub
products. There's not a lot of documentation there. And you need, like, to do your research
and try every YouTube video and every medium blog post, everything yourself to be able to get the
level that you are looking for. And there is a lot of features that is hidden. So you just need to
ask someone that he's an expert. Yeah, yeah, I'd expect that to be able to get your answer. The
second thing that you mentioned is about when we learn how to code, like a before the AI model,
we need to, like, have a googling skills. But currently, it's no longer, I would say,
relevant anymore. And you should, like, be prompting skills. So currently, you need to know
how to prompt the AI model to give you exactly what you want, because the AI model is just an
assistant. But how you are framing the question and the context that you are given to the AI model
doesn't matter a lot. We will to give you the exact answer. For example, we can have, like,
engineering A and B, and they have, like, an exact issue. But this one know how to deal with AI.
But the other one doesn't know. The other one will, like, ship faster, and they will have,
like, a productivity and the 10x stuff to be able to get the stuff rolling. But the other one will
be stuck there. They don't know. And maybe they will blame the AI that is not good enough. So maybe
it's not the AI that is not good enough. But you are not using it good enough to be able to get
what you want. This is, like, another discussion that we cannot, like, get into. But just I would
like to flag this. Yeah, exactly. I think we are going more and more to LLMs with questions now,
rather than just searching. And I'm not sure if you have shown the Stack Overflow graphs.
Just, like, just going in a deep full sense since 2022, I think, or something. Because of that,
because most of the, let's say, the trivial tasks that, like, something in the API, something on
how to do this thing in the other way, how to format this thing, and that way,
the LLM can answer with high confidence. So we don't need to go for that. Maybe, as you mentioned,
the 10% of the cases where you need super specialized things, super niche, where the LLM
most of the time gets confused, then you need that search skill again, and you go to the forums
and try to understand. But most of the time, it's just like, if you know what you are looking for,
the LLM can basically try to answer that. And now with the introduction of the search feature,
like Gemini, Shadgipiti, and all of that, so they can combine both of them. So I think it's,
as you mentioned, it's becoming now more of how good of a prompter you are, unfortunately. So
the better your prompt is, the better the model can look for the internet and then gets you the
answer that you need. And that's, I've been using Gemini and I'm positively surprised at how good
it's getting, because it's backed by the Google search engine. So it has a lot of data for that
as well. But it's like, it just goes through the documentation, looks for the information and provides
you with, at least if not the correct answer, a way forward where you can look for that answer.
Yeah, that's true. And also, like I currently with Google, they are like using Gemini for Google
search for, for example, when other type of stuff, you like a summary of exactly. So I don't have to
look for like the page we want to get you answer, you can get it directly to you serve in a gold
plate, you don't have to do anything. Yeah, I mean, I feel for all those people that, you know,
there is a whole business around clicks, that probably is going to be affected by now because
of this summary thing. Because like previously, you need to click on something, go to that specific
post or article or website or page. Now we just like grabbing the data and showing it. So it's
like, I feel for all those people where all that traffic will just be lost. Yeah, that's true. This
is the problem. And also, currently, we're the target is currently, there is a leak of Shopify
checkout code. So you can, you will be directly having the option to be able to shop directly
from charge GBT. So you don't have to go to even to the website. So you can just click buy it now,
and you will directly to the checkout page. So you don't have to even visit the website of the
store to be able to get the information. Everything will be served in charge of GBT and just one
click away from the checkout, which is Google and now, yeah, Google announced something similar
in Google IO. Yeah, the demo was mind blowing. But yeah, I think it's, it's kind of, they're
trying to repurpose the chat surface as your only stop shop that you need. I'm not sure how far we
will get to that. But it's crazy that it's it's becoming you need to chat with one assistant.
And that would be basically it. You're gonna browse the internet from that little app, you're
gonna search, you're gonna order stuff. And now with the mcp and agent agent stuff, so everything
will be connected. It's just like a world of infinite possibilities that we're going, we're
going to see. I think if it happens, it's going to be similar to the mobile shift that we had,
like everything is going mobile. I think now everything is going chat and mcp and all of that.
Yeah, that's true. And the only one thing that I would like to add to this conversation,
I think charge GBT and the search AI assistant will become the next super app. So currently,
we have the super app for like, like a we chat. But currently, because everything is one in one
application, I think this is will be the next maybe everything that we can do. Maybe banking
will be in in charge of it. Who knows, like, we know what to expect with this, like I stuff,
there's a lot of possibility. Yeah, banking are the last one to write the wagon, like it's like
there when it comes to money is like a lot of regulations, but yeah, you need to double check
because it's it's funny. You know that it's Morocco, where the lowest in terms of adopting the
e payment and the credit card and all of that, because like we want the physical stuff, we want
the money. Yeah, exactly. I don't trust online. Yeah, you don't feel the problem with the pay
online. You don't feel the transaction. It just it just happened all like digitally. So we don't
like I feel like that you are paying for stuff. I mean, we invented a whole pay when you receive it
just for that. Yeah, it's like just because people wants to get the money. I mean, give the money
when they get what they want. So it's like just it's gonna be a lot of cultural shifts, not only
in Morocco, but a lot of countries in the world as well. Yeah, that's true. That's true. And talking
about this stuff. And also would like to mention currently, I see a lot of like one of the horror
story that's happened with AI that currently got some in top of mine is like a recently that's in
the podcast, it was like a person build a Shopify application. It's a web application. And the database
was like a vibe coded application. And the database was a Google sheet. So the Google sheet was the
primary database for the project. And you can imagine like all the things that would be happening
there. We don't need to talk about it. What like the thing that you see over especially over Twitter
that you think it's like a programmatically and especially with security. I have this is like
a big concern because people are building a SAS application or micro SAS application,
and they are like using stripe and all of stuff using just vibe coding that what is your take
about the stuff that is currently built using AI, and especially by non technical vibe code.
So people who is doesn't know anything about coding and they are building stuff. Yeah, I think
security is a big one because there is a lot of the attack surface just got a lot more bigger
from the moment you build the app. I think I saw an article a few weeks back where there the
attackers what they started to do now is they started to realize that the LLM hallucinate and
it hallucinates for the name packages. So let's say for example, react, you just can reverse the
E and the I just like react. And then what it started to do is basically look for those
namings and provide them as dependency packages in NPM or whatever. So when you download them,
it will not fail. It just like it looks decent. So it has that malicious code as well. And for a
non technical folks, even for a technical one that has that does not have all that what do we
call analysis analysis and security analysis and all of that. And what security concern in mind
is is is there is a lot of security concerns in there the supply chain security stuff would be a
lot of issues. The coding standards and as you mentioned also, sometimes it does some weird
stuff. It just like exposes the passwords in a weird way, use hard coded tokens that is available
use some keys that it's used for encryption, all of that are examples once because it is the code
that is the code that is available in GitHub is mostly demo codes, right? There's a few repos that
is that are true community, very well maintained code. But most of it is not enterprise, either
it's GitHub, or it's in a private repositories. So that's what it's got to train on. And it's
it's really problematic because even if you use those AI systems in your work, there is all the
companies say that sign the contract that our code will not be used to train your data. That's
something that all companies sign, or at least majority of the companies. So there is an issue
there. So the code that they generate is generally has a lot of security concerns.
And I can only see that problem going to be more known. And there is there is also a market there
because now there's a lot of startups that are popping up or existing startups companies that
are trying to solve that issue, and how to showcase how the vibe coding can affect your stuff.
But yeah, it just got a lot more worse with the vibe coding and security practices are unknown,
especially for the non non practitioners in the in the IT world. So be very, be very, like,
knowledgeable of that, and make sure that you follow the best practices in terms of at least
having some scanning tool, having something that's basically test your code and make sure that there
is no vulnerabilities in there. It comes free. There's a lot of free options that you can use.
Yeah, I think that's that's pretty much it. Security is a big one, that it can cost you
hard if not, if not well looked at. And the other one is the way you deploy your application,
especially if you're deploying in a cloud provider, like someone can just abuse your
application and then you can find your application scaling to dozens or 100 of nodes. And by the
end of the month, AWS will put the bell on you, knew why it's happened, because like you have,
you didn't configure it the right way, because you just followed what you asked the
vibe coding assistant. And it basically sets you the things simple stuff without having that
clear, well defined cloud native deployment model that you need to follow. So there is a lot of
things to be aware of if you want to take that app from being a MVP hobby into production. And
all that stuff, it just like that knowledge is getting from the tutorials, probably from the
conferences, which lacks a lot of context and a lot of knowledge. Yeah, that's true. And also the
thing that you mentioned about like the the new fee efficient for packages, like the stuff. So
moving from email to MPM packages, which is really like hard because currently we don't
like to see a lot of people talking about this issue. And this is what is causing this problem
is there's not a lot of knowledge and you don't think that AI can do this. And also the second
one, the deployment. So with also the deployment, for example, you are with the AWS stuff that you
mentioned, currently we can like expose your AWS API key or something like this for like a
history bucket and someone else can use this for public archive. And you will get you will get a
high bill from from AWS, like I don't expect that, which is because of like exposing some API keys
because of that. Yeah, which is really hard. And also with the new AI security agent that's currently
is in place, because we have like an agent that scan websites for vulnerability, we are just sitting
and watching. And maybe you left a poor, like a open in this server, you don't know what this
poor does. But you like a people can just log in and have like a privilege to be able to do
everything that you can do, they can download database, they can like do some hard stuff.
And even they can delete the entire code base and delete everything and you wake up with no user
in the morning. So no one is using the app. This is one of the worst nightmare that a phone that
can have to be able to wake up with no user, which is really hard. I mean, to be fair, those
stuff can happen without the LLM fault. I mean, but the LLM is making it worse, because it's
pretend to be a knowledgeable person. Like you ask it is like very confident and very sure,
because like it, it's convinced you really, really fast. Like you ask us something, it provides you
with a very well structured set of thoughts, and then do this and do that. And then you get
convinced and you trust it blindly. And then until you hit a roadblock. So it's just something that
you need to be aware of, basically. And this is what we call in Morocco. Exactly. It's like
LLM have a big white, something high, if you may say. Yeah, that's true. And sometimes the
people are like, I am in discussion with the LLM. I am saying this is wrong. And they are saying,
you are right. And I am doing this. And I said, you are still wrong about this. They are still
trying to be able to modify the stuff. Because like currently, I don't like I trust the LLM
like a hundred percent. Because sometimes I am writing the code and the code and giving some
example to LL, like the call, for example, to people to just follow the same structure.
But do we need this like a structure for another model? Like for example, I have like a user model
and this is the way for the store model, the same function, the same model, the same class,
just modify like the stuff that will be related to the store model. But sometimes it does mess up
for like something simple. And even one time, I had an issue with like a third party API integration
with like, for example, instead of using better for the API token, it does like, I couldn't remember
exactly what does, but that's something that is not like a well known for like the API
authentication, which is like a really weird because I already like a provide the API documentation
and doesn't mess up. So it's sometimes you don't have to trust the AI too much because we'll end
up screwing up something in production. Yeah. And some something that I like doing is just like
comparing the output of different LLMs, like I take this same thing and then provide it to
ShadGPT, Claude and Jim and I, and then see how everyone's basically react and things and build
stuff. And you'd be surprised how sometimes it's quite different. Like one time I wanted to build
a Formula One companion app. I asked ShadGPT, I asked Claude, and I asked Jim and I, and each one
of them provided me with different answers and with different side of APIs. The best one was Jim
and I because I think it was recent or it has this web feature. And then it provided me with, oh,
use this API, but it's in maintenance mode now and they are switching toward this API. So I found
that I found that really clever that it pointed me to that direction. But none of the solutions
was ideal. Like the combination of three might be a good one, but you still need to do that,
the work yourself in order to understand what's happening. Because if you just trust it blindly,
you can just probably wait another month and your model comes in and you might get a completely
different answer. So just be aware that it gives you suggestions, it's probably give you recommendations,
but it doesn't give you best practices, it doesn't give you how things should be. There is still human
input needed. It's still some research that we need to do in order to have the results that we
want to have. Otherwise, you might, as you mentioned, stumble upon a lot of issues and then
few months later, you might just like regret why you made that decision.
Yeah, that's true. Because one of the things that you mentioned that currently the LLM are
praying on public GitHub people that are mostly, for example, a junior developer
who are just starting out, that just like a building a basic application that doesn't follow
like the best practice. And there is like some community product, but it's not a lot compared
to what the other non-community one that is in a good level to be able to get trained on. So
the LLM are trained on this stuff. And this is what you will be getting because you are training
on this level of security and this level of best practice. So you don't end up with a good result.
And I think this is a good thing for the developer because currently because
like at the subject that is currently in like AI will take a job of the developer,
but because not only because of that, but I think currently with the AI model, the bar is higher
for a developer to be able to be considered as a good developer. And because of that, you can tell
that a good developer who is someone who use AI model, but can like do a good review
like for the staff that AI model and can know what to use and when to use the AI model because
there's a lot of things. For example, something it's much easier to just try to call yourself
because you already have the knowledge, you already know the stuff in and out. So it's much easier
and much time saver for you to be able to build this thing yourself instead of relying on the AI
model, which is really good because like at the AI model we save a lot of time, but sometimes
if you are using it for this specific task, you will end up like a re-prompting to just get
what you already can do yourself. So it's a big problem. So yeah, this is my tip.
Yeah, true. I mean, it gives you the impression that you're moving fast in the short term,
like to get up and running, it just like really fast and that's really good. But
at some point you will hit a roadblock because it generates a lot of stuff that it gets confused
itself and that's problematic. And then the problem with that code is just you don't know your way
around. So you would either because either you are in prompt mode or you are on the driving mode
and then driving mode as you are building the stuff yourself. And if you're in approach mode
and you want it to turn into the driving mode, it's like what this s word is about. It's like,
oh, that's that's too much stuff. I'd rather just refactor it. And then if I just rather
refactor it, because it's just like copy paste code, it just now, oh, I'd rather just like
throw the code away and start again, we are just we are now in that state with with the AI stuff,
with the AI assistance. But I think as they grow, we will we will see more improvements in there.
The beginners and the junior developers. Yeah, the bar is getting really high now. And because
the coding assistant, the way everyone starts to see in it is like for each developer, we have
someone else to help them that is a junior developer kind of because when someone is onboarding,
they like the knowledge, they just have this general knowledge about programming and all of that.
And the AI assistant still exhales on that. I mean, they beat every junior developer in the
world in that sense. If you compose the problem into small executable implementable tasks,
then the AI will be able to do it really fast without talking to anyone. And that's where the
junior developer fits in generally, like the the you need to help them to give them this
uniquely a small task in order to onboard them and make them aware of the business context and all
of that. The AI makes it harder to fit in. But we will for sure need to onboard developers
or beginners because that's how the business works. We need developers in order to grow to
become seniors. But it just like the pool of picking the developers is getting narrow and narrow.
Narrow were in terms of what it was before, because there is with every developer, there is an
assistant now. So there is almost one and a half, or at least one and a third developer with them
compared to what it was before. So that's why just like it's it will get another one and
narrower as we we go in. And with the trend of the market right now, if someone is fancy enough
to pull the job posts two years ago compared to today, just you would just see a decline because
of the how the markets and the economics shifts. But also because of that, because we are everyone
just waiting for when the assistance are good, so we can have a developer and a fraction of a
developer with them because that will help them to deliver more with less resources.
Yeah, that's true. And also one of the things that I would like to add to this conversation about
the AI model and the job market and also like the Shopify CEO, like it was leaked. It was leaked
and he published it himself about like currently, when you are hiring, you need to think twice if
the AI model can do it. If not, you need to hire. So this is like a really a bit like a bad for
genius developer because they don't have like a lot of experience to bring in the table. So
it will be like a hard job to be able to get a job right now than before. And also like currently
we invested they are still like afraid of this AI move and they are still waiting until to know
what will happen. So because like they are like a throwing money and this is what
make the startup hiring more people and they are fundraising. So if the investor doesn't bring money
to be like a true startup, they cannot hire if they don't have revenue to be able to support the
startup. So I think we are like a scene, a bit of not plateau, but a bit like a a lot of people
are like a still waiting at least slowing down if not like slowing down. And and from a business
side, I think it makes sense because like business is all about generating revenue and
generating revenue means increasing the income and decreasing the outcome, not the outcome, but
the expenses. Yeah, the expenses. And one way of doing that because like in every tech company,
what takes the most of the money is basically the human part, like the employees that you pay.
And then if you can find at least one of a third of a developer, let's say you keep the same size
of the company, you can still get let's say 20% more 30% more without paying an extra. And that's
from a business point of view is a great way. So if you can you can stop hiring for one or two years
and you get 20 to 10 to 20% more, which is good. I mean, for a company that's really good. And
they are there because we went into the hard truth of 2020, when everyone was crazy about hiring and
scaling. And then everyone realized, oh, you're throwing resources into problems, it's not the
solution. And then we went back into we went through the hardship of layoffs where everyone was
laying off people. And the market then is just shaking with and we I think we didn't recover
yet from that. So we're just like, the lesson learned back then, it just like, let's go slowly,
let's see how the markets would react. And with everything that is happening in the world, to
say the least, the the economics is not really stable to invest yet. So it's kind of a safe bit
now of let's hold off, we can invest off on on technology, because at the end of the day,
we just can stop the contract with that provider. And that's it. It costs the amount of months you
invest it in it. But if you hired someone, it's basically spending time and resources in the
hiring process, in the onboarding process. And then if you need to lay them off, it's basically
another process in most of the European countries or other countries in the world,
because you need to pay them the severance. And then you might not be able to release them back
as well. So it's, it's, there's a lot of challenges with that model as well. Yeah, that's true. That's
true. This is like kind of a hard time for people that would like to get into the, like I think,
you know, like as a developer, getting into the market as a developer, and also because currently
also be competing with the senior engineer who got left or get layoff. And there's a lot of people
get layoff. I'm not seeing that we will to to scare the people who just would like to get into
technology business. But this is the reality. I'm just like I'm telling what is currently
happening in the market. So currently, there's a lot of people got layoff from, like a big
bank company and they are currently in the market looking for a new job. And also maybe they are
looking to be able to build a new startup. Who knows, like there is like a two way, either you are
like a looking for a new job or you are building something, your startup yourself, a business
yourself. And also, like a recent YC request for startup has been announced, like for the new batch
for startup, and they are looking for what they called founder design. So currently it's like a
designer who knows like a design, but can build a startup and the vibe quoted. So it's currently
a new people who is non technical can enter the market of building startup. And they currently
back it by YC. So people don't know why it's like a white combination is like the biggest startup
accelerator or incubator in the world, back it by like, they are investing in Airbnb,
DoorDash, Dropbox also. So a lot of big companies currently being in the market.
And the valuation of the company is like over 80 billion or something. I couldn't remember exactly.
So it's like some real, real data that they are like having. And what do you think about this,
this thought of the founder, who is like a designer, can enter the market and vibe coding a startup?
I think, again, it goes back to what we said in the beginning that in a startup startup word,
it does make sense to reduce the expenses and then find someone that's basically can do multiple
jobs. We heard about the full stack, the full it was kind of the full stack thing, right? The
first stack developer that does a lot of things in a startup stuff. He knows a bit of everything
or most of a lot of things that it justifies the expenses and you don't find in a large companies.
In startup, I think that makes perfect sense because we optimize for delivery compared to quality.
We optimize for time to market, then a well established feature. We optimize for moving
fast, then building quality. And it makes a lot of sense, I think. And especially that,
yeah, you have a junior, let's say, coding assistant with you that has
knowledge about a lot of things. He knows probably the basics of all the languages.
He can help you build stuff. He can view prototypes stuff, validate your hypothesis.
So it does make sense. And not only startups that you mentioned, but also big companies.
I'm not sure if you have heard or the audience have heard that there is Microsoft as our
corporate in coding assistants in their day-to-day life and incentivizing developers to use it.
And there is something that blew up, I think, last week in Hacker News or Reddit. The developers
are getting somehow overwhelmed from all the PRs from co-pilot. So it's a shift not only in
startups, but the big companies are also incentivizing the developers and pushing the
developers to incorporate the AI work style now. And probably not only developers. So the
developers is only what we see because there are big communities and that's the community that we
are at. But I expect there's also the designers, also the product managers, and also the engineering
managers in things, how they manage, how they shift. I think the product managers will be
affected the most in a sense that they will not only be required or asked to write about stuff
or define stuff, but also they will be asked to prototype. They will become more and more
technical product managers that they can prototype stuff because it's become a lot
more easier to prototype stuff, to validate the hypothesis. If they have a feature, they can easily
glue a small app that's called different APIs, especially if the APIs are available,
and then spin up something that they can validate the hypothesis. And instead of writing this big
document with a lot of pages that the stakeholders and the upper management would need to go through
in order to understand the feature, they can also provide that to see the utility of that feature
because it's one thing reading about it and another thing basically seeing it. So I think
it's focusing on the developers, but in the IT sector, even the non-technical folks will get
affected. And it makes a lot of sense in the startup world, but now even in the big established
companies. From the companies that are producing those LLMs, there is a big shift and a big
incorporation of using AI and LLMs in the day-to-day life of the technical folks and
the non-technical folks as well. Yeah, that's true. I think the first target was developer,
but they are like including other people that are non-technical to be able to use the LLM.
Because I think the developer who are like people who already adopt new technology,
so it will be much easier to be able to target them first, to be able to use the LLM and get
their feedback. So they can expand to other targets that will be affected by this AI stuff.
And also, I think the bar will be much higher for that. And also one thing that's like a
relationship, the same question currently for the founder that will be coming,
someone technical to build an application. And you mentioned that time to market will be faster,
so currently you can just get from an idea stage to have an approved concept or an EVP in a couple
of, I would say they without needing like someone technical. But do you think, for example, I will
have an EVP as it's working, but I would like maybe get a funding. So do you think a founder
will be later on, be hiring a developer who will be rebuilding the same thing from scratch? Because
the Vibecoin maybe they don't have like a good structure or like a base to be able to build on
top of that, because you are a non-technical person, and you are building a startup. The EVP is working,
but something is working doesn't not mean it's good to be able to maybe to scale to other people.
Maybe you are hard coding some stuff. So there's a lot of like stuff that will happen behind the
scene. But do you think, for example, when a person will be getting a funding that they can't
afford to hire a software developer or an engineer to be able to build and scale the application to
a hundred or like a million of users, do you think they will be building from scratch or what do you
think they're like a move will be next? Because currently I heard some story that people will
like just throw the stuff away and just build something from scratch, because currently they
have the manageable to build stuff. And do you think this will be the case or what is your thought
about this? I think with the current state of the coding assistance it will be the case for sure,
because if you have enough money at least you would need to get someone to make the code
more maintainable and easier to contribute by different people within the org. I think
that would be the next step most probably, because of the quality of the code that the current
LLM is basically generate and the structure of it because for the one person to work on it,
it's hard. For multiple people to work on it, it's probably going to be even more harder. But
the case of throwing away or revamping, re-architecturing, redesigning that app is not only the LLM
fault, I just want to emphasize that. Every startup in the world goes through that cycle,
even if there is no LLM involved. It's just like a matter of I want to get fined then,
I want to go to the market as fast as possible, then I want to build whatever the application
I have. Because if you have an army of developers, there's nothing stopping you from building an
application each and every week, because you have the resources to solve it. But if you are a solo
entrepreneur, then it makes a lot more sense to use the AI assistance. So yes, to answer your
question, yes, definitely. And then you just like postpone that problem to later when you have the
money, you have the time, you have the resources that you can hire in order to solve that. But
it could also go the other direction. And then it depends on how much money you would get. You
can add more features to that code, squeeze every bit of it until you have a set of users and then
try to reach feature parity. That also can be a path that people can follow, like add more feature,
gather more users, and then the more users they have, the more money that you can get from the
funding. And then once you have an established sets of users that are happy with your product,
an established set of funders that's invested in your company, then basically you can take that
time. So it depends. It is no, I mean, it can happen in the 10th investment rather than the
first one, you probably need to do some refactoring here and there. But it's it can be a mix of both
like refactoring a little bit and then adding more feature. But sooner or later, the code that we
gonna see when you want to grow and scale is very different that the code is started with you
started with. And that's the case for every single startup that has succeeded in the world.
Yeah, that's true. Yeah. And I doubled down about the stuff that you mentioned that is
not the element fault for refactoring when you're like getting funded because
every startup and like one of the startup that I work with like do this because
the code is not good enough for what they're looking for. Yeah, I think this is like a part of
the startup cycle because they are flexible in term of what they can do because it's a startup. So
they would like to grow faster and they have like other concern that
like a legacy company, I would say, cannot have the privilege of doing that because
this is a lifecycle of a startup, it would be always refactoring and
exactly. And you need you need to reach a critical stage to justify that cost of
writing an application. I mean, we as technical folks like to talk about this, the best practices,
the best design, the design guidelines and architecture stuff and how it needs to be
clean code architecture and all of that. And then the reality of the market is,
or from a business point of view, it doesn't matter. I mean, if you're providing a feature,
it doesn't matter if it's written with clean code, or written with shitty code, right?
It just a feature that works for the user. The users doesn't don't care if you're providing
value for them, they will just follow you. And it's a problem when you want to add more feature
and you want to scale, then you can see scaling problem, the application becoming slow,
more user users see inconsistent state and all of that. So you're trying to envision that to solve
the issues to make the business or to make the app, the feature more stable. But from a business
point of view, just as fast as you go, you can go break stuff, iterate faster, gather more users,
and then make that a problem of tomorrow. The refactoring the clean code, it will come for sure.
Yeah, that's true. And sometimes the business person will say that refactoring this will be
just a waste of time because they are paying for the time that you are using for refactoring
and it doesn't justify the cost because you will be spending like a week or two or like a
maybe a month just refactoring something. That doesn't make sense. Like for a technical person,
they don't know if the refactorator right now, they can launch new feature as fast as possible
in the next iteration of the product. For example, they already set up a feature flag
currently in the system. So currently, you don't need to do this. So it does add a new feature
and you can enable for this couple of users. So it will be much faster to be able to do this
if you don't have the system already, you need to build it. So it will eat up
of the time of developing the feature instead of shipping it. So I think we are in the last
section of the episode. So thank you so much, Mohamed Aboulaid for taking the time to be able
to accept my quick invitation. My pleasure. Happy to be here and happy to support in any way
or form or shape possible. You are doing great. By the way, I'm a fan of your podcast. I'm a fan
of the great work you're doing. I forgot to mention that in the beginning. So keep going.
I'm a true fan and thank you for all the great work that you're doing and the quality that you
are bringing to the podcast scene, especially in Morocco. Thank you so much. It's like a
heartwarming to like to hear about the compliments because like at the Geeks blah blah project,
it's one of the things that happened to bring this project alive because I see like at the
community and the people are like willing to be able to share the knowledge and I am trying
my best to be able to like have a small part of like bringing the Moroccan community to
like I'm not using that is a bus. I'm using English to be able to like I reach the world,
but I'm trying my best to be able to like a share and bring the knowledge and share the knowledge
of people that would be in the podcast. So thank you so much. You're doing a fantastic and brilliant
job and please continue doing what you're doing. It's amazing. Thank you for wasting the time and
energy in doing so. I know it's hard and sometimes you just fail. Why don't I'm not taking a nap?
Why am I not doing this? You know, like we are recording on a Friday after 5 p.m. It is like
want to relax and forget about things. But yeah, thank you for keeping up and producing this high
quality content, I would say. Thank you so much. It's a pleasure to like have you and to
heard about your feedback in person. So it's like it's my May Day already. Happy to do so.
So for the last section, I would love like your final thought or your final word for
the title of this podcast episode, which is the vibe coding and especially non-technical
vibe coder and the impact of the quality. Does if you were like I have to say like a
one sentence or two, if you would like to. Yeah, I just like probably not something that is not
ideal, but there's something that came to mind. Vibe coding is not ideal, but get into the wagon,
try it out and learn from it. I think it's going to be the future of what's coming next. It's going
sooner or later becomes part of our coding style, our coding journey, our kind of body that we
go to. So learning it, experimenting with it. It's a fun journey. It's a learning journey.
We as developers went through a lot of changes in the technology side and this is one of them.
So it's better off that we get early, understand, adopt it and learn from it. And if it just
goes through a way and didn't happen, then you lost nothing. If it's becoming the next big thing,
then you are an early adopter. You understand how it's happening and you might have that early
advantage as well. It's a long one, but I mean, you get the first section and the other one was
just like an explanation of what I had in mind. Yeah, it's all good. So thank you so much,
Mohamed Aboulay for the time and you are on a Friday also to be able to be with me on this
podcast session. So it would be thank you so much for the time and see you guys on the next episode.
Thank you.