Learn to Code Without Burning Out: How I Did It

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
way too many programmers watch out before they have a chance to taste a little bit of success or even get that first programming job it's no secret that the path to becoming a programmer is a hard journey it's kind of like hiking up a mountain when you muster up the strength to get to the top of the hill in front of you you find that there's another one and then there's another one after that when you finally reach the top peak you look around and everywhere you can see are Hills and Valleys different obstacles it wouldn't have mattered which direction you went each a little different but all challenging Journeys unfortunately there are programming YouTubers and content creators out there who make it sound easier than it is the lure of a fast path to becoming a programmer gets the clicks and sometimes they leave out important information such as maybe some unfair advantages that they have that got them where they are or they might just be a brilliant exception sharing a real story but one that just isn't going to be realistic or practical for most people who are starting out learning to code and hoping to get a programming job it could be easy for some people to look at my current situation as a senior software engineer at Adobe and completely ignore the fact that it took a lot of hard work to get where I am ignoring important facts like how I gave up on my first attempt to code and it was several years later when I finally started again there are several reasons that new programmers especially self-taught programmers burn out so let's chat about that also stick around and I'll share my framework for ways to improve your chances of succeeding the first reason new programmers burn out is that they completely underestimate how much stuff there is to learn in order to get good enough to get that job learning a programming language can be hard but that's just the start of an endless list of Frameworks and libraries and tools and ways to build things you either learn to drink from the fire hose or else you wash out you have to learn to manage your expectations how to pace yourself and how to work through the down times when you're full of self-doubt imposter syndrome and you just don't know what to do most people struggle here because they don't have a solid plan they are adrift in the ocean getting washed to and fro by the way waves and they don't know where they're going so they just let the current take them wherever it wants to go you have to have a plan another reason the new programmers burn out is that most of us will hit this point where we feel completely overwhelmed and stupid there's just no way we're going to be able to learn everything that we need to things will be exciting for the first month or two but sooner or later you're gonna hit that I'm stupid moment and that's what caused me to give up on my first attempt when this happens it is super important to accept this truth and that is you are on a journey where you will never know everything there will always be something new and shiny to learn even when you become super knowledgeable about a programming language someone could come along and share a different way to do things that could just completely blow your mind programmers Journey never ends we are forged through the experiences and challenges we face this is the way let me know if you're a Mandalorian fan an unfortunate consequence of social media is all the day in the life videos that show programmers and Tech workers who are just chilling doing nothing with all these perks it makes it look like programming is a quick path to a high-paying job and the good life don't get me wrong becoming a programmer did completely change my life and I feel like I have a very blessed and good life but getting here was full of challenges problem solving which is what we do for a living is mentally exhausting there are days that I come home feeling like I've been in a math test all day so if you want that high paying software development job you're gonna have to work for it and you aren't going to get those super high paying software development jobs solving entry level problems you're going to find as your career progresses that you're going to be chasing harder and harder problems to solve which is going to be financially rewarding but also exhausting you'll have to find that balance point where enough is enough to keep you happy without burning out and this just isn't going to be a path for everyone folks who don't like problem solving or who just want to become a programmer for the money often don't have the self-motivation that's needed to progress to those higher paying jobs some won't even make it to their first job you need grit and resilience and a good book that I'm reading on resilience is called do hard things I'll leave a link in the description now let's talk about my framework or plan for how to become a programmer and actually get a job and I have other videos where I actually go into details about actual programming Frameworks and libraries to learn for web development this is not one of those on this channel I share a lot of insights into becoming a front-end software engineer because that's the path that I personally took and it's a great path but that doesn't mean it's the only path and it doesn't mean it's the right path for you so let's focus on how I figured out my path as well as strategies that can be applied to other programming languages the first step to figuring out your journey requires some self-reflection before jumping off into learning and programming language or tutorials you need to come up with a list of different topics or areas is of programming that interests you as an example that list might include building iOS applications or financial related applications maybe you're into games or you want to build Commerce websites for each of these interests I do some more research by watching some less technical videos maybe reading some articles blog posts to figure out three things first I would want to come up with a list of all of the most common programming languages and Frameworks used for each of those interests second I would want to find out a rough estimate of how many jobs are related to each of those interests in the area where I live third I would want to find out the work culture differences between each of these areas of interest is it something that is family friendly or does it lean more towards aggressive timelines and lots of overtime there's a huge difference in the culture between game development companies and Enterprise software companies the next step is to make a list of all of your past work experience that could provide some sort of benefit to you as a programmer in the future for example if you had worked at a finance company you could have some industry knowledge that could be valuable if you were to go work at a fintech company next thing I would do is research the local job market I would want to find out what programming languages and what Frameworks are in high demand and to do this I would look at listings but I'd also probably go to local programming meetups if they're available and ask around to just find out what are the skills that employers are looking for the most in your area not only do you want to figure out which of the programming languages and Frameworks is most in demand but also have an idea of how the pay Compares between the different Technologies next I would analyze this data and I'd probably use a Venn diagram to look for things that overlap are there any of your interests that have a lot of job opportunities that also pay well our are there any of the programming languages that are actually shared across several of your different interests that could be really useful if you decided down the road that you wanted to Pivot and try something else do any of your interests align with any of your past experience that could give you a competitive Advantage when it comes time for looking for a job how would they take two or three of the top interests and do a little bit more research I might do some basic tutorials on each of the programming languages just to see if any of them really click for me or if I enjoy one more than another programming languages approach things differently so it is possible that one just makes more sense to you than another now's probably a good time to bring up a concept called the Paradox of choice the idea here is that the more options you have the harder it becomes to actually make a decision which is why we want to have this ranked list everything on that list that you don't end up pursuing is something that interests you enough that it could cause a distraction that could prevent you from meeting your goals so I want you to remember that because this is going to be a pattern that we are going to use over and over again when you pick that single interest to pursue it's really important to take all of these other things that interest you and try your hardest to push them aside and not let them distract you you want to stay focused you've written them down so if in the future you decide to change your mind that's totally fine you have that but you want to focus for this main interest that you've picked we're going to kind of repeat the process that we just went through in this step you want to identify the programming language that you're going to learn as well as the most popular framework that also aligns with your interests and that has high demand in the area you live the same goes for libraries and other tools and I'm leaving off remote jobs here because frankly it could be really hard to get a remote job as a new programmer and I'll save going into the details for another video now once you have that ranked list of combinations of programming languages and popular Frameworks in library queries it's time to figure out your actual learning path it's going to be a ton easier to find tutorials that are actually going to be helpful for achieving your goals rather than just wandering through a bunch of random stuff it doesn't end here though the next obstacle you're going to face is having to figure out what is the important stuff that you need to learn without getting lost in all the countless things that you aren't going to need to know as a programmer one of my biggest mistakes was reading several programming books cover to cover and quickly all of the things that don't really matter start to overwhelm the things that do matter because your brain Can Only Hold so much new information and we all learn differently some people are really good with books others videos for me personally I like videos with documentation and what helps me is when I'm approaching A New Concept is that I watch a tutorial just Without Really focusing closely on trying to understand everything that's being taught I just want to have the ideas kind of start to float around in my head and then once I I've watched that through then I will start over and I will watch it again and this is when I'll actually like follow the examples and I'll try to take what I'm learning and then also apply it to other things and instead of just copy and pasting I like to pause and try to experiment a little try different things out see if it behaves the way I would expect it to see how it breaks this is going to be really slow going at first but it will help you really understand the most important common principles a lot of other deeper stuff you can learn later on as you need it we want to learn as fast as possible and the fastest way to learn how to code is by actually writing code by trying to solve problems because it's solving all the little problems along the way that teaches us how to think like a programmer and also helps us to better understand the most important and useful parts of a programming language and you don't want to get trapped in following tutorials as quickly as possible you want to be able to shift over to where you are building your own things even if it feels painful and then once you've been doing this for a month or two then it could be okay to introduce some of those books they're like the comprehensive guide to this programming language because what you'll find is that once you've actually been building some things you start to develop an awareness of what you've done and of how things come together and so when you end up actually reading these books then you'll actually have aha moments where it's like oh that's how I could do that a different way oh and that's even easier that's even better and because you have context on how you tried to solve it it's gonna stick you're going to remember it better for example when I was starting out I read this one really dense book on JavaScript and I felt completely lost by the end but after doing some things and actually building some things I later on Revisited that book and started reading it again and that second time through because things started to make a little bit more sense to me I had that awareness I had context of how to take that new information and I could actually apply it to something perhaps one of the biggest challenges with learning to program is our battle against time there's just no way around it if you want to become good enough to actually get a job as a programmer it's going to require a lot of time to practice writing code to develop the skills that will make you competitive enough to actually get a job for me personally I needed any really rigid schedule to do this I have a ton of different interests and hobbies and so I had to make a list of my most important priorities and then for nine months I pretty much had to take all the rest of that all those distractions and I had to just push them away and completely avoid them this pattern lets you maximize the odds of actually achieving your end goal by focusing on the things that are going to make you most competitive and still be happy in this other video I shared the most important things that you should focus on if you want to learn web development thanks for watching and I'll see you in the next one lates
Info
Channel: James Cross
Views: 171,409
Rating: undefined out of 5
Keywords: james cross, devsmak, devsmack, new programmers, burnout, coding challenges, psychological traps, coding passion, learning to code, tech industry, programming courses, high expectations, programmer's career, mental health, code fatigue, hustle mentality, digital age, silicon valley, programming paradox, resilience, emotional struggles, intensive bootcamps, programmer's guide
Id: 4bAZXEjxDDE
Channel Id: undefined
Length: 12min 56sec (776 seconds)
Published: Tue Apr 11 2023
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.