✅ What’s it like to think like a programmer?
Well, we were thrilled when Kyle (aka Web Dev Simplified) agreed to sit down to answer these questions and talk with us about his developer journey.
This post contains affiliate links. I may receive compensation if you buy something. Read my disclosure for more details.
1. Web Dev Simplified: tell us about yourself.
My name is Kyle Cook and I teach web development full time through YouTube, my blog, and my courses.
Before I became a full time teacher I was a full stack developer working at a small local contracting company.
During my time there I worked with a wide variety of companies from small local companies with no on staff engineers to large technology giants like Disney.
2. Where did you learn web development?
I learned web development in a combination of multiple ways. I went to a 4 year university for a computer engineering degree and during that degree I learned a lot about programming as a whole, but didn’t learn anything about web development.
Once I stumbled upon web development while in school, though, I immediately fell in love and devoted most of my free time to building projects and studying web development.
Pretty much everything I learned about web development in my first 3 years came from blog articles, YouTube videos, and just building tons of projects I found enjoyable.
I just thought they were the same thing.
You don’t even have to explain it to anybody. Just grab a stuffed animal and explain it to them. By doing this you will easily be able to see where the holes in your knowledge are.
It is a lot like learning a foreign language in that you need to learn not only a bunch of new words, but also a bunch of grammar for connecting those words together.
This is similar to if you decided to learn a foreign language, but only focused on learning new words and spent no time on the grammar needed to connect those words.
Then from there you can learn a new concept and repeat the process.
They make working with functional programming so much easier and they also make working with functions that return arrays/objects easier.
On top of that you can use destructuring to write out the explicit properties of objects that are parameters to functions such as an options object passed to a function.
7. On your YouTube channel and your courses, you emphasize thinking like a programmer. What does it mean to think like a programmer?
Thinking like a programmer is simply the ability to break down large problems into smaller problems.
Usually as a programmer you will receive a task such as “Build a login page.” This sounds like a daunting task on its own, but if you can break it down into small pieces such as setting up a user’s table in the database, creating a login page, integrating password hashing, etc. then it becomes much easier.
You can then break each of these tasks into smaller steps such as breaking the login page down into create an email input, create two password inputs, etc.
This ability to deconstruct large problems into smaller and smaller problems is the most vital skill for any programmer and if you can master it you will be a great programmer.
8. For newbie developers, why is it oftentimes so easy to build a project with the help of an instructor, but so hard to think of one on your own?
The hardest part of building projects on your own is not knowing where to start.
With a tutorial you are always told what to do next, how to start, and which problems to tackle. When you are on your own you are left with a blank text editor which is daunting.
You have no idea where to start and it can feel overwhelming.
This is where it pays to have the ability to break problems down into smaller pieces. If you can go from the problem of building an entire app to the smaller problem of creating a login page it is much easier to get started.
It also helps to break down the logical portion of a problem separate from the code portion.
What I mean by this is to write out what you are planning to do in plain English first.
That way when you are ready to write the code you don’t have to worry about the logical portion since you already wrote out what the logic should do in English and now you just need to translate English to code.
9. Is there anything else you’d like to add?
The only other piece of advice I want to give is don’t get discouraged.
Learning to code is hard and nobody learns it overnight. I have been programming for many years and I still am learning new things nearly everyday.
I also make tons and tons of mistakes that you never see.
For every mistake that makes it into one of my tutorials there are hundreds or even thousands of mistakes that are behind the scenes that you never see.
Web Dev Simplified Interview: Conclusion
Thanks to Web Dev Simplified for letting us pick his brain!
If you’d like to know more about his courses, check them out here.
Readers of this Web Dev Simplified interview are also reading: