Placeholder Image

Subtitles section Play video

  • So you want to become a better programmer?

  • I mean, who doesn't?

  • But what exactly does it take to go from being a good programmer to a great programmer?

  • In today's video, I'm gonna go through all of the different techniques and skills you can practice to take yourself from good to great.

  • So let's get started now.

  • Welcome back, Toe Web have simplified my name's Kyle, and my job is to simplify the Web for you.

  • So if that sounds interesting, make sure you subscribe to the channel for more videos, just like this one now to get started.

  • First thing I need to say is that if you haven't already learned your first programming language or come to really understand at least one programming language, you need to do that.

  • Before you can follow any of these further steps, you need to have a solid understanding of a single programming language so that you could use that programming language toe actually become a great developer.

  • That is going to be your first step.

  • But I'm assuming if you're watching this video, you at least know or understand really well, one programming language.

  • So if that's the case, the first thing that you need to do to become a great programmer is to start building big projects.

  • I'm not talking small little tick tack toe projects or chat.

  • EPPS.

  • I'm talking Barger scale projects that'll take you days, weeks or even months to complete projects that really have to make you think about things such a scale, such as code structure, such as how you want to define all of your different connections between your front end your back into your database and so on all of these decisions or really hard decisions.

  • And you don't ever get to practice this on small projects that only take you a few hours or a couple of days.

  • So you need to do these larger projects to practice those decision making skills and figure out how your coat actually works on a larger scale.

  • Because one thing that you'll realize is that when you make something small, it's okay.

  • If the code is kind of messy, were difficult to understand because it's only being used in this one small, low place.

  • But when your project now takes weeks or months to complete the code that you wrote at the beginning of the project, You, Maybe we'll forget about.

  • And now if that code is poorly written, were not very easy to extend.

  • Now you have a bunch of problems with code maintain ability and re factoring that you're gonna come across a few months down the road.

  • And that is something that is really hard to learn how to do.

  • So building these bigger projects really is gonna teach you what is bad and what is good when it comes to building out the code in a maintainable and easy to read manner.

  • This is something that's almost impossible to learn on these smaller projects.

  • This is why generally, I tell people not to worry about code challenges, code wars algorithms, problem solving all of those types of things that people seem to really focus on when they want to become a good developer because they think the only way they could get a job is if they do leak code for 10 hours a day and constantly practice algorithms and data structures.

  • But the problem is, is that these types of coding challenges and hacker club challenges and things like that they never really teach you how to write clean well maintained code.

  • What these things are teaching you to do is to write really dirty code that will execute quickly and save a bunch of memory and do a lot of hacky things to build a solve, some kind of contrived algorithmic problem when in reality, most of what development is about is not making your coat as small when fast and energy efficient as possible.

  • But it's about making your code easy to understand, easy to read and easy to extend because really, what your code is is something that someone else will have to read and change in the future.

  • You more so our writing code for the developer that comes after you, and not necessarily for the computer that it's running on.

  • This is why writing code that is easier to read, easier to maintain an easier to extend is always better than writing code that is gonna run just a little bit faster unless that is the absolute number one concern of your program, which, let's face it almost always, that is not the case.

  • It's okay if Facebook is 1% slower, as long as the developers can add features twice as fast because people that use Facebook won't care if it's 1% slower, but they will care if it stops.

  • Getting new features as quickly as there used to following in the same vein of clean, well maintained code is that if you want to become a great programmer, you need to understand how to write clean and well maintained code.

  • And the easiest way to learn this at first is to practice learning the solid design principles and design patterns.

  • These things are not always applicable.

  • Toe every single piece of code and overusing them is going to make your code more difficult to use and maintain.

  • But having a solid understanding of design patterns and the solid design principles is going to make your code drastically better in the long run.

  • And I have videos on both the solid design principles and design patterns, so you can check those out.

  • I'll put him in the cards and description for you.

  • But having that understanding of how to write clean code and howto make your code function with other code in a way that makes it easy to change in the future is going to make you such a better developer.

  • than you are right now.

  • That, to me is the biggest way to improve your development skills.

  • Is writing clean, well maintained a code following that same vein of well maintained code testing is crucial for making sure that you're a larger project is going to continually work even as you make changes months down the road.

  • Having the ability to write unit test feature, test integration test and so on is going to make it so much better for you to become a great developer.

  • Not only does testing require you to write clean, well maintained separated code that's easy to test.

  • It also makes it so that your code is goingto work.

  • When you make changes to it, it forces you to make sure that your coat is always going to work because you have test that air checking to assure your code works, and having this skill to write well maintained, easy to write test that test your code thoroughly is really important.

  • I know when I first started writing test, my test were terrible.

  • They were long, difficult to understand and didn't really test my code very well.

  • So practicing that skill on your larger projects by writing out unit test feature test integration test and so on is going to make your skills as a developer massively improved just by writing these test.

  • Not only does it increase your testing skills, but it also will increase your code skills, since you need to write good code in order to write good test the last way to improve your code skills.

  • And in my opinion, the most important is to find a team or group of people that you can program with.

  • Whether this is just some individual person who's going to code with you or look at your code or if it's a large group of people all working on the same project.

  • This is going to make your code skills massively increase because you now have the knowledge of not just yourself but the knowledge of every single person in your team or group that is all coming together to help you learn.

  • And this is great because you may write up some code that works well.

  • It looks good and you think it's great.

  • And then you tell someone on your team to review your code, and they're gonna come back with so many suggestions and improvements that you can implement in your code to make it even better, which is great.

  • This is something that you can't find anywhere else.

  • It doesn't matter how many videos you watch, how many articles you read or how many projects you create.

  • If you don't have someone else with you learning, working with or teaching you, it's gonna be really hard for you to learn some of those more minute concepts and for you to really find tune your coat and make it even better.

  • This is why I code review, in my opinion, is one of the best ways to learn how to code, because people are going to be giving you their feedback and information on the exact changes you've made.

  • So this is a really easy way to make your coat better written, easier to maintain and just cleaner overall.

  • So if you can find someone, anyone, even if it's just an open source project on get hub that you contribute to this is going to be a team of people that are all helping you tow.

  • Learn by looking at your code, reviewing your code and working on the code with you.

  • If you can follow those simple steps, I can assure you your development skills are going to skyrocket.

  • And if you enjoyed this video, you can check out my other discussion based videos linked over here and subscribe to the channel for more videos just like this one.

  • Thank you very much for watching and have a good day.

So you want to become a better programmer?

Subtitles and vocabulary

Click the word to look it up Click the word to find further inforamtion about it