Hey, this is the Daily Overpass! My name is Eric and I make apps. Now today, I want
to answer the question, "Can bad programmers make great apps?"
Alright. So today, I want to answer a question that came in last week from
True Dreams who said, "Hey Eric. Can bad programmers make great apps?" Now, I've
been thinking about this one because the answer I want to give you is no. I
so badly want to say no, it's not possible.
As someone who takes code very seriously, as someone who's been working on a long
time, who looks at things not just func- not a big ledge things like, not just
about functionality, but also things like code readability,
maintainability, scalability, everything like that. I want to say the
answer is no. But the end - but the - actually the answer is, actually YES. Bad
programmers can make great apps. It's - and a lot of the time, we talk
about the quality of code. We're not talking about how it - well, we're talking
about how efficiently it runs and how how much it can scale. But a lot of times,
especially with junior developers, putting things together, slapdash cowboy
type of stuff, getting it out on the market and everything like that. It can
look really, really bad. Like I used to like to say, when we talk about cold call
and everything, and developers would say, "You know, I don't know if my codes that
good." And I said, "Look, Facebook could be a bunch of spaghetti code and could be a
mess for all we know." Because we don't see the backend of that. The reality of
the fact is, it probably isn't, because they've got lots of really talented
people. They're throwing a lot of money at it. all Lots of times, people working on
it at the same time. And when you get teams like that, you have to be - the
quality of your code has to go up because you're working with other people
and you have to not step on everyone else's code. But a lot of projects, that a
lot of apps have been written by first-time developers who've put them
out onto the market, that couldn't afford to hire a developer. And if they could
afford to hire developer, they couldn't afford to hire the most expensive or
the best, or they didn't know enough about what they were
looking for in order to do that. So, they learned to do it themselves they spent
the time and learned it. You could say I'm gonna study this for the next
five years until I get really good at it. But you don't really know until you
start doing it. So, the answer to that is yes. A lot of times, we talk about code
quality, we talk about scalability, with scalability, code readability and things
like that. So, a lot of times, you don't find out how
bad the code is until you get a second developer looking at it. Like you - so if
you're gonna hire a developer and everything looks good, you're just
looking at the front end, everything runs fine and then you give it to somebody
else and they go, the code is really bad and they have to rewrite it and
everything like that. Now, some developers will always say they
need to rewrite it. They're just not used to working in those kind of situations,
where they follow certain standards and everything like that. So, the easy
answer is to say, "I can't understand what the last perso, give it to
me." A lot of times with code, this is why I say it's good to work in the team.
At least at some point in your career it's because you get to know what
it's like to structure things in a certain way that everybody knows. The way
things are done. And sometimes, I've worked in teams like really good
developers and got with teams with other developers, where their standards
were different in the way they were doing these were different, and I had to
adapt to that. But I also had to code to that standard as much as I wanted to
just say I'll just do whatever I want. Let me give you an example - for
those of you don't know - we talk about - when I talk about code readability, I'm
not talking about there's two parts to code. There's the fact that it runs
and there's a fact that if you're going in and looking at it, like version 1.1, it's
usually where you find out how readable it is. Like it whether you've done it
yourself and you can't remember what you've done or more likely you're trying
to get somebody else to look at it, you know, that's what you find out how bad it
is. But like one of the apps, just give you an example, some of the bubblebath
games that we have out there, we have like you got your standard
layout. Where you have rows and columns of icons. You click it on the icons,
everything like that. We had, we have - so, usually as a developer, I don't
want to get too complicated. But again, this is simple for you a lot of you,
guys, you have two loops. You've got the loops for the columns, you have two
loops for the row. So, you got less, you got three rows, every row has three
icons and you got three columns. So, you'd have the outer loop which we know every
time you which is, you know, one, two three, and you got the inner loop, which is one,
two, three. And you increment the outer loop as you go through and everything
like that. But they were - they weren't calling them like normal variables so
they had other loops within those. That were setting up the icon and everything
like that and they named them I, J, K, H and M. These are the
variables like I was going through and when you're on that inner loop, it was
impossible to read. Like I would think you would just, like logic would just say
column count, row count, be it whatever. Just give a variables a logical name and
everything that, I mean, that's coding standards 101. There's -
we're not even talking inheritance or interfaces, or using
polymorphism anything like that. Or naming conventions. We're just saying
name your variable where they make sens. So, yes True Dreams. I wish I
could say that NO, bad developers could not write great apps. They can. But
then may not be scalable. They may not be - you can't give them to anyone
else because the code is so bad. You have to - you're stuck with that one
developer. And a lot of the times - and this is one of the things I
talk about. It's not just the code as a developer. I focus a lot on the code but
it's more important to get something out on the market. it's more important to get
something out onto the App Store and see how it performs. So, if you - if that's all
you have at your disposal is part developers or you don't feel your
development, your development skills are up to snuff just yet, I would say still
put something out there. You know, start working on the marketing side, start
getting something out there, because although it will be expensive, you could
get a better developer to come in there and clean up the mess later on. But like
I said, I'm usually one of those people who's been brought into projects
or late in the project, it's like it could be messy. So anyway, I hope
that - I hope that helps. Some of you, guys, will disagree with me, alright? Some
of you, guys, will. So, let me know in the comments if you disagree, if whether or
not bad developers, bad programmers could write great apps. And that's it
for today. I'll talk to you, guys, tomorrow!