There is no getting around it, programming is hard. It just is. You stare at a screen all day. Every method you write looks just like the last one but they all do something just a little different. When it doesn’t work you stare at it, step through with a debugger, try to reason about it. It’s still not working and it’s on you to make it work. That’s the job, that’s what we get paid for, and it’s hard. If you’re lucky you have a good team. You’re also a good team player and you can ask for that second pair of eyes to help you see what you missed. And when your partner shows you what was starring you in the face, for God’s sake don’t take it personal or feel you’re less. You just needed a second pair of eyes to help. If you’re a good programmer and an even better team mate you’ll be that second pair of eyes for someone else. Just remember when it’s your turn to help, don’t think you’re better. Please don’t say it’s simple. Just accept the thanks and let that person know it happens to all of us. Programming is hard, it just is.
The thing to do is first define in my mind what it is that is going to be the end result. Then, break it down into pieces. Work on each piece so you don't get overwhelmed with the overall task. When your brain can't process anymore. Stop. Sometimes "sleeping" on it will make all the difference in the world. Our brains work out problems while we sleep. That is what dreaming is. Sometimes I'll wake up in the middle of the night with a solution to a problem and jump up and get on the computer. I love programming. It's like running 5 miles. Afterwards the feeling of accomplishment is tremendous. Now that I'm older and have tons of experience behind me with great professional credentials it amazes me that shops don't want to hire me because "I'm too old and can't possibly understand the newer coding languages". That is laughable. I can learn any language I have never used before. It's all about understanding the process of logic. The rest is just lexicons.
I find programming is a lot easier when I have a clear understanding of what it is I'm trying to achieve. I'm not saying that we all need to learn all the UML diagram types, but it does help to at least draw a diagram either with something like Powerpoint or even a pencil on a piece of paper that describes the components of a system, what they do, and how they interact. Until the design is clear and understood, there's not a lot of point reaching for the keyboard and trying to design as you code. That usually leads to being lost in the detail. If stuck, describe the problem to another developer. For some reason, we think about it differently when describing it to someone else out loud and the solution often pops right into our heads without the other person having to say much at all. Every developer should have a cardboard cutout developer on hand if working alone, just for this purpose :)
Everyone has. I used to try and compare myself to Dan Abramov until he a made blog post listing everything he didn't know so well and I was like damn. There's stuff I know he doesn't know so well and vice versa
Two things I do when I get stuck on something hard in a project: work on easy things for a while, so that I am at least getting something done; organize and cleanup code. Somehow these minor accomplishments clear the air and when I return to the hard code, I find a solution.
I was experiencing this yesterday, after coding for 14 hours straight and wasn't able to solve my problem, I just couldn't continue any further because it felt like I was forcefully trying to jam too much info into and through an already exhausted and overly used brain and eyes, so I just went to bed and it took half day simply not coding to cool off and now I'm having a fresh perspective on how I might approach the beast again. Although I could probably watch some more videos on YT haha before I start again. Like you said, you have to listen to yourself and feel yourself out. Great advice. Thank you for sharing us your experience.
The key here is to be able to have flexibility in your schedule.. Unfortunately there are still in 2019 many companies that have fixed hours , forcing developers to work in these hours, thus killing productivity and creativity...
Programming is hard... Life is hard... Get over it people! If shit were easy then it wouldn't be worth doing would it?! Remember, these days we have sooo many gawd damn tools that makes coding so much easier for us than our predecessors, who had far less tools at their disposal and probably had to code in far more complex languages like assembly. Seriously, how easy do we want it? Simply instruct the damn machines to write the code themselves? That sure sounds challenging and a whole lot of fun! Look... Get over it! Everyone will find coding hard initially... I did! So the only reason why people stick at it isn't because they find it hard... They stick at it because they love it and enjoy the challenge... And if you don't have those qualities then coding simply isn't right for you... So move on!!! And find an easier shortcut to make loads of money for fuck all effort... Like the lottery for instance... Lotteries are easy ;-)
I think the answer to this is meeting and getting along with the right people. Sometimes they're found in companies, sometimes not. Seek'em and find them.
Ive been coding for the past 7years professionally. Self thought. Now a Viacom engineer for the past two years and I can say one thing. Coding is not making it over night, its about constantly coming back and trying. Walls will brake if you pound on them long engough, and the best part is there will be other walls in front. If you don't mind coming back home with the feeling that you know jack shit over and over and over again It might just be a job for you. And once you figure it out, and learn your way around, you change the company, language, project and start over.
In the book "A mind for numbers", Barbara Oakley explains why breaks are great for problem solving. She gave an hour long presentation about it at Google (the video is on the Talks at Google channel). It's worth reading the book / watching the video. 😊 8:40 "C and Unix are easy to learn but it takes a genius to be able to use them." 😁True for so many things.
1:50 JSON is one of the greatest inventions for my programming hobby. 2:35 In the '70s, I spent a whole lot of time just reading through Star Trek programming code to learn what all the things do and to hack it and win every time.
You're timing is impeccable, Chris. I had this dilemma last night while practicing. Knew I could possibly complete this project but knew I'd but up for another two hours trying to complete it. I like coding, but a good night's sleep is always a top priority. Be well, man!
LOL @ 4:00 console app: "if he said his name is Chris, say, 'HEY, FUCK YOU!'" I'm glad I'm not the only one who writes test code like this. Generally when I'm getting really annoyed trying to figure out why something isn't working...then a big red div appears on the screen with some kind of "fuck you" message.
There is so much information to assimilate. I'm reading a book a week and my unread book list is growing faster than my library. After 30 years of doing this professionally I don't know how someone could get started today. It seems more complex than ever. Imagine going from learning simple control structure like for loops as a beginner and trying to put this to use in a world where all the projects are deeply complex distributed systems.
@@renifer483 I've programmed professionally in over 30 languages. If it's not hard you're either a super genius or someone else on your team is doing all the real work.
A person who has suffered, who has had many challenges, and remembers his challenges when successful, is a person I respect. I'm not nearly as advanced as you probably are but this is exactly the things I was thinking past few months. RUclips algorithm nailed it.
The 'take a break' part is so true. I find that I don't do that nearly enough and it sometimes hurts the code and more importantly, my life and the people in it.
Standing on the shoulders of giants was a great analogy for programming. Very refreshing to hear the struggles of another dev given the general attitudes we’re exposed to on stack overflow
Thanks Chris! Perhaps things are perceived as difficult because of the unceasing narrative 'out there' that everything is (or should be) 'easy'. Why do we do it? Sitting, starting at screens all day is brutal on your body, most apps never sleep so neither do we and at the end of it all, those apps, we spend so much time on seem to be as ephemeral as our ideas - easily swapped out and replaced like they never existed. It can also be hard on our spouses, especially if they have a typical 9-5. They might struggle to understand why we spend so much time 'learning'. Only people who know little about computers think they are 'smart' (or television manufacturers).
Haha dude you just described me in 14 min. I’m in this Bootcamp with only css skills thinking they would teach JavaScript. Well they did for a week then jumped straight into React then two weeks later sql then express JS etc... and it’s like WTF. Im literally paying for this out of my own pocket to just get rushed through a bunch of different frameworks and trying to make an api then fetch it without even knowing the fundamentals of JavaScript. It’s probably one of the most frustrating situations I’ve ever been in. It just shows that learning on your own is possible and doable compared to these "you can be a full stack developer in just four months with no experience“ what a joke. 2021 best advise I have to give is do not fall for these bootcamps because it’s a business and that’s it
Chris Hawkes: the honest programmer. Thanks for voicing the unglamorous side of programming. Your videos always make me feel like I'm not alone. I've been a programmer since I was 11 years old writing machine code and all the way to the abstract pure mathematics basis of logic & computability and I still feel the nagging impostor syndrome. After years of framework fatigue and the next TEDx/Google talk about a future tech that goes bust even before I've started to learn it, I have learnt to take comfort in pragmatism. Your advice always makes a lot of sense. Many thanks for hanging in there.
I like your mentality bro. That is a good angle that devs in general should look into. It is a community and we can only build great products if we come together as one.
I can totally relate with the swearing and going apeshit whenever I'm confronted with a outrageously difficult problem. I recall coding away for 18 hours straight and downing as much coffee as my system could handle (free coffee rocks! Lol...) a couple of years ago just to build some silly feature that I would likely find trivial now - and the only reason I've been able to persist and slog my way through all of the programming obstacles I've faced is that I'm stubborn as fuck and determined to make something work no matter what I have to do to make it happen. Persistence and determination can and do trump raw talent in many cases. You're right on the money when it comes to getting better with experience (especially experience with real clients and projects where you're really under the gun) and by just building a lot of stuff.
I'm the same way. Not the most talented, but still smart, but the problems programming presents you are sometimes enormous and requires god-like focus and determination to figure out and develop the solution. In the end, all it takes is the desire and willingness to put in the work to come up with a solution. Talent just expedites the process.
Spot on. It is difficult and takes time. Programming is one of those jobs where, if you're honest with yourself, it is a humbling job. There is always someone who knows more than you. Also, that fan is FAST!
I always thought I was a smart guy tbh. I took summer courses back in college which crammed a lot of material in just several weeks. And they were hard math and science courses. Then I took up learning Python recently and I just felt overwhelmed with basic projects like tic tac toe. I'm a bit better now because of my approach. Before I even begin to code I just brainstorm on the project and divide the program into sections. I also brainstorm what exactly I'd be doing. If it would be necessary to use lists, dictionaries, classes, iteration, etc... Gather data, store them in variables. The best way is to just brain storm before you even begin.
I'm currently in college to become a programmer and let me tell you lots of sleepless nights, frustrations, anger and dropping out jokes ect ect, I'm getting off track. I hate when teachers or my classmates tell me "its easy" or just do this. It's like this assignment isn't easy the last one wasn't and the next one isn't and its so frustrating to hear that I should be able to do it and I can't. And then its just back to me in my room going through the code for hours until I get it and let me tell you it sure as hell didn't feel easy. But the only thing worse than that is when people see you accomplish things and dismiss your work as saying "your just good at programming" or "well I just don't have enough time for that" or whatever. It's like I don't have time either sometimes you just have to buckle down and do it. So now I'm a TA for some lower level classes at my college and when my students come in begging for help and they had the same issues I did so I'm actually able to help them and they say things like "oh your so smart" its so easy to just drink in the praise because finally your in the position where you can tell someone its easy and you get it and finally someone is calling you smart, but I always as quick as I can tell them the truth, I tell them "You know I'm not exceptionally good at anything I just try really really hard and that's how I know how to do this I had the same exact errors as they did that's how I know how to fix them that I'm not special or smart and they aren't dumb, its just effort and time."
9:40 -> I was just telling my Dad that sometimes it's hard to get going in the beginning of the day, but it is much much more difficult to stop at the end of the day. You are totally right about needing to take breaks and learning when to shut off.
Programming can be easy to near impossible. One of the biggest problems is that there are plenty of examples of how to do something super specific like iterate a collection or read a file but virtual nothing on structuring an application or tackling hard problems.
Why am I not subscribed to your channel? *clicks SUBSCRIBE*. This rant basically encapsulates everything I feel about programming (with over 10 years of exp), in a nutshell. More programmer existentialist videos please!
Jumping into .net c# from python is crazy. Mindset of console based scripts to GUI based programs on top of the nested classes of the BCL is extremely complicated and confusing. I’ve noticed also the lack of information on trying to parse the .net documentation to better get a handle on why use X class over Y sucks. But it’s like you said, linear progression, small bits a day and a month/months down the line it’ll all make sense.
You said it at the end man,just listen to yourself and do what you feel like doing,we always just get attached to making a feature or to kill that bug no matter what ,we don't care about ourselves as much.
My first project that made me fall in love with programming was a notpad that read what I typed using regular expressions, I was working for an bank in a call center at the time and had to take notes from what the customer was saying, anytime I typed the name of the account it would auto load the information for me in an . There were many keywords, it was basically a wysiwyg with smart triggers. I don't know where the code is, I'm sure it was terrible by my current standard and it was written only for internet explorer, but It made programming real. My advice is challenge yourself to create something useful, not just use a framework.
The one thing I like about the developers community is the no-nonsense type of guys I get to meet. I spent 6 years in the business world, full of economists, management types and HR hell. I'm learning to code now, hoping that some day I will be able to work among guys like Chris.
I have run into learning brick walls over time where I for the life of me could not understand 2 sentences my instructor was saying to me. After 3 days of total shut down I came back and realized how easy and obvious everything was, including material from weeks up to the saturation point that had seemed to be ever increasing in complexity, when I fact it was all peanuts. A solid break makes stuff after look like a cakewalk.
This just dawned on me: If i where to switch the amount of training videos i watch on RUclips with time spent training i'd be a MONSTER athlete. Same pattern is beginning to show with actual coding vs watching people talk about coding.
I know it's time to take a break after an f-bomb or two. when i come back i see things much clearer and usually come up with a solution. You just gotta give your mind a break and allow your subconscious to work on it while your frustration calms. frustration is noise to the mind.
Isn't it a constant struggle of learning? That's what I'm feeling. I've always struggled with learning, but I love the feeling when things finally click and it makes it worth it. - Thanks for the video
I have a degree computer science and I can tell you that it really doesn't matter as far as learning. You basically regurgitate concepts for an examination without understanding what you've just read. Taking what you've read and being able to apply it to real-world scenarios is what makes you a programmer. In other words, you have to have the ability to think deep which means you need to have a high IQ. RUclipsrs like Tech Lead and Clement have high IQs so they are able to push themselves as seen in their youtube videoes and achieve great things. But you can do the same, just raise your IQ. A higher IQ means that you have a wider hypothesis which means that you are able to derive a solution that encompasses the majority of the test cases in your program. Trust me I had a low IQ and I found a way to increase my IQ. Once my IQ started growing I figured out how to coding solve problems that I couldn't have solved when I was back in school. Raise your IQ and your ability to think deep because you wouldn't get further in programming if you are dependant on tutorials that are going to spoon-feed you. Most tutorials teach new concepts or app features to build products but the instructor doesn't teach you how he learned the components that are required to build the app that he is teaching you. This is where your IQ comes in. Hope this helps
Definitely relate to the whole 'only take so much in'. Got my first junior developer job and becoming exposed to and learning all about the stack they use is a LOT to take in. Almost a month in with working 40hr/week am I now getting a grip of their set up. Each place I imagine is really different with how they do things
Thanks for this. I’m stuck as fuck learning authentication and it feels like brick wall after brick wall. Yesterday I was staring at my computer the entire day and never walked outside and made almost no progress. I’m pretty used to this happening at this point but yeah.
I'm a big proponent of reverse engineering to get a better understanding. When working with React I bought a few templates from Envato to see how things came together.
Sir I have question. Did you remember all code? Or developer need to remember code? Because I'm new start learn programming languages java and c++ and python I start self learning since two months.. i learn basics that I can read others basics level code. And please give me tips about fast learning. I just today I got your channel someone suggest me in Facebook groups.. thank you
I graduated from a coding Bootcamp last February and I still don't know JavaScript and cant make shit with it. I have been struggling and I honestly don't know what to do. I honestly feel like I wasted $8500 on a shitty Bootcamp. what really hurts is hearing some of my classmates getting jobs and I'm here sitting clueless and nothing working for me. I'm miserably lost, to be honest.
Hey Chris, I thought you had a tutorial on how to contribute to open source projects. Like ensuring you have the same environment/dependencies as the developer. Am I wrong?
Once i convince myself that I'll eventually figure the problem out if i just sit at the computer long enough while dropping f bombs, is exactly the time when i need a break. Such a paradox.
About two or three years ago, I started to getting interested in programming like building software, a list of execution iteration so on, I enjoy doing these and become part of my hobby. Now I'm at college course about standard server security system, and we student need to know partially about programming and only a few of us including me know. It's easy to me because I been learning how to programming everyday and still I struggle sometimes when touching what I still don't know yet. I notice mother friends who don't know how to programming even assigning a value to a variable to difficult to them. At the moment I don't know how to express or teach them how to programming or even how to code, because I used to be alone and love to doing stuff by myself. Any advice for my friend that motivate them to learn actively but not relying by other teaching?
There is no getting around it, programming is hard. It just is. You stare at a screen all day. Every method you write looks just like the last one but they all do something just a little different. When it doesn’t work you stare at it, step through with a debugger, try to reason about it. It’s still not working and it’s on you to make it work. That’s the job, that’s what we get paid for, and it’s hard.
If you’re lucky you have a good team. You’re also a good team player and you can ask for that second pair of eyes to help you see what you missed. And when your partner shows you what was starring you in the face, for God’s sake don’t take it personal or feel you’re less. You just needed a second pair of eyes to help. If you’re a good programmer and an even better team mate you’ll be that second pair of eyes for someone else. Just remember when it’s your turn to help, don’t think you’re better. Please don’t say it’s simple. Just accept the thanks and let that person know it happens to all of us.
Programming is hard, it just is.
"You guys are getting paid?"
I like you, can you be my friend?
Well said Philip.
Thank you!
@@collinsa8909 soo how to make it easy then this logic you call it?
The thing to do is first define in my mind what it is that is going to be the end result. Then, break it down into pieces. Work on each piece so you don't get overwhelmed with the overall task. When your brain can't process anymore. Stop. Sometimes "sleeping" on it will make all the difference in the world. Our brains work out problems while we sleep. That is what dreaming is. Sometimes I'll wake up in the middle of the night with a solution to a problem and jump up and get on the computer. I love programming. It's like running 5 miles. Afterwards the feeling of accomplishment is tremendous. Now that I'm older and have tons of experience behind me with great professional credentials it amazes me that shops don't want to hire me because "I'm too old and can't possibly understand the newer coding languages". That is laughable. I can learn any language I have never used before. It's all about understanding the process of logic. The rest is just lexicons.
Great comment. Upvoted.
@@dioncavanaugh6850 yes indeed
I find programming is a lot easier when I have a clear understanding of what it is I'm trying to achieve.
I'm not saying that we all need to learn all the UML diagram types, but it does help to at least draw a diagram either with something like Powerpoint or even a pencil on a piece of paper that describes the components of a system, what they do, and how they interact.
Until the design is clear and understood, there's not a lot of point reaching for the keyboard and trying to design as you code. That usually leads to being lost in the detail.
If stuck, describe the problem to another developer. For some reason, we think about it differently when describing it to someone else out loud and the solution often pops right into our heads without the other person having to say much at all.
Every developer should have a cardboard cutout developer on hand if working alone, just for this purpose :)
More minimalist living than even techlead
Techlead lives as a minimalist because his pre-nup took everything he had. (As a millionaire)
@@cookinsteve248 i actually laughed lmfao
💀💀💀
Cookin' Steve I wish he could see this comment 💀💀💀
If he jumps too high his head hits the fan, I've never seen an apartment with such a low ceiling
I don't know why this nigga always inspires me the most of all the programmers in youtube
Dude, I've been comparing myself with others for the last week and it's been hell. Thanks for the great advice Chris, awesome video man!
Everyone has. I used to try and compare myself to Dan Abramov until he a made blog post listing everything he didn't know so well and I was like damn. There's stuff I know he doesn't know so well and vice versa
I do that all the time. For some reason the past 3-4 months I been really been putting myself down a lot thinking I should be farther along then I am
Two things I do when I get stuck on something hard in a project: work on easy things for a while, so that I am at least getting something done; organize and cleanup code. Somehow these minor accomplishments clear the air and when I return to the hard code, I find a solution.
I was experiencing this yesterday, after coding for 14 hours straight and wasn't able to solve my problem, I just couldn't continue any further because it felt like I was forcefully trying to jam too much info into and through an already exhausted and overly used brain and eyes, so I just went to bed and it took half day simply not coding to cool off and now I'm having a fresh perspective on how I might approach the beast again. Although I could probably watch some more videos on YT haha before I start again. Like you said, you have to listen to yourself and feel yourself out. Great advice. Thank you for sharing us your experience.
The key here is to be able to have flexibility in your schedule.. Unfortunately there are still in 2019 many companies that have fixed hours , forcing developers to work in these hours, thus killing productivity and creativity...
That ventilator makes me super anxious.
"Take a break"
Yes!!!! For the sake of the laws of diminishing returns.
Programming is hard... Life is hard... Get over it people! If shit were easy then it wouldn't be worth doing would it?! Remember, these days we have sooo many gawd damn tools that makes coding so much easier for us than our predecessors, who had far less tools at their disposal and probably had to code in far more complex languages like assembly.
Seriously, how easy do we want it? Simply instruct the damn machines to write the code themselves? That sure sounds challenging and a whole lot of fun!
Look... Get over it! Everyone will find coding hard initially... I did! So the only reason why people stick at it isn't because they find it hard... They stick at it because they love it and enjoy the challenge... And if you don't have those qualities then coding simply isn't right for you... So move on!!! And find an easier shortcut to make loads of money for fuck all effort... Like the lottery for instance... Lotteries are easy ;-)
Wow, thanks I needed to hear this.
I think the answer to this is meeting and getting along with the right people. Sometimes they're found in companies, sometimes not. Seek'em and find them.
Ive been coding for the past 7years professionally. Self thought. Now a Viacom engineer for the past two years and I can say one thing. Coding is not making it over night, its about constantly coming back and trying. Walls will brake if you pound on them long engough, and the best part is there will be other walls in front. If you don't mind coming back home with the feeling that you know jack shit over and over and over again It might just be a job for you. And once you figure it out, and learn your way around, you change the company, language, project and start over.
Programming today is learning the pre-built building blocks and putting them together in useful ways to solve problems.
I can relate to swaying like that after days of coffee.
"If his name is Chris, then hey fuck you!"
This is exactly how I applied my knowledge of loops when I first started learning xD
🖕 lol.. you get it.
the famous if-loops 😛
In the book "A mind for numbers", Barbara Oakley explains why breaks are great for problem solving. She gave an hour long presentation about it at Google (the video is on the Talks at Google channel). It's worth reading the book / watching the video. 😊
8:40 "C and Unix are easy to learn but it takes a genius to be able to use them." 😁True for so many things.
no offense but that book is not very helpful
The hardest part of programming is understanding the problem domain
1:50 JSON is one of the greatest inventions for my programming hobby.
2:35 In the '70s, I spent a whole lot of time just reading through Star Trek programming code to learn what all the things do and to hack it and win every time.
You're timing is impeccable, Chris. I had this dilemma last night while practicing. Knew I could possibly complete this project but knew I'd but up for another two hours trying to complete it. I like coding, but a good night's sleep is always a top priority. Be well, man!
Thank you for sharing your thoughts with us... this video was what i needed to hear at this moment...
LOL @ 4:00 console app: "if he said his name is Chris, say, 'HEY, FUCK YOU!'" I'm glad I'm not the only one who writes test code like this. Generally when I'm getting really annoyed trying to figure out why something isn't working...then a big red div appears on the screen with some kind of "fuck you" message.
There is so much information to assimilate. I'm reading a book a week and my unread book list is growing faster than my library. After 30 years of doing this professionally I don't know how someone could get started today. It seems more complex than ever. Imagine going from learning simple control structure like for loops as a beginner and trying to put this to use in a world where all the projects are deeply complex distributed systems.
I know only 5 programming languages and 7 frameworks. That's not really hard. Ez stuff.
@@renifer483 I've programmed professionally in over 30 languages. If it's not hard you're either a super genius or someone else on your team is doing all the real work.
Excellent video Chris
Thank you
Dang. This is the realest programming talk I've found around. Not your top 5 cookie cutter video. Thanks for this.
Thank you for stopping by!
Thanks for the honesty. It's refreshing.
Always!
I learn programming by reading some code, banging my head against the wall, waiting for the pain to subside, and then banging it again.
TheCrusaderRabbits do you drink the pain away with 40% vodka?
Your pic is trash
A person who has suffered, who has had many challenges, and remembers his challenges when successful, is a person I respect. I'm not nearly as advanced as you probably are but this is exactly the things I was thinking past few months. RUclips algorithm nailed it.
this might be your best video. spot on. great.
Thank you for watching!
The 'take a break' part is so true. I find that I don't do that nearly enough and it sometimes hurts the code and more importantly, my life and the people in it.
Standing on the shoulders of giants was a great analogy for programming. Very refreshing to hear the struggles of another dev given the general attitudes we’re exposed to on stack overflow
Thanks Chris! Perhaps things are perceived as difficult because of the unceasing narrative 'out there' that everything is (or should be) 'easy'. Why do we do it? Sitting, starting at screens all day is brutal on your body, most apps never sleep so neither do we and at the end of it all, those apps, we spend so much time on seem to be as ephemeral as our ideas - easily swapped out and replaced like they never existed. It can also be hard on our spouses, especially if they have a typical 9-5. They might struggle to understand why we spend so much time 'learning'. Only people who know little about computers think they are 'smart' (or television manufacturers).
Haha dude you just described me in 14 min. I’m in this Bootcamp with only css skills thinking they would teach JavaScript. Well they did for a week then jumped straight into React then two weeks later sql then express JS etc... and it’s like WTF. Im literally paying for this out of my own pocket to just get rushed through a bunch of different frameworks and trying to make an api then fetch it without even knowing the fundamentals of JavaScript. It’s probably one of the most frustrating situations I’ve ever been in. It just shows that learning on your own is possible and doable compared to these "you can be a full stack developer in just four months with no experience“ what a joke. 2021 best advise I have to give is do not fall for these bootcamps because it’s a business and that’s it
Danm this dude about to hit the ceiling. How tall are you Chris.
I mean, is he standing on a table?! 😂
some say he's still growing :O
Chris Hawkes: the honest programmer. Thanks for voicing the unglamorous side of programming. Your videos always make me feel like I'm not alone.
I've been a programmer since I was 11 years old writing machine code and all the way to the abstract pure mathematics basis of logic & computability and I still feel the nagging impostor syndrome.
After years of framework fatigue and the next TEDx/Google talk about a future tech that goes bust even before I've started to learn it, I have learnt to take comfort in pragmatism.
Your advice always makes a lot of sense.
Many thanks for hanging in there.
I like your mentality bro. That is a good angle that devs in general should look into.
It is a community and we can only build great products if we come together as one.
I can totally relate with the swearing and going apeshit whenever I'm confronted with a outrageously difficult problem. I recall coding away for 18 hours straight and downing as much coffee as my system could handle (free coffee rocks! Lol...) a couple of years ago just to build some silly feature that I would likely find trivial now - and the only reason I've been able to persist and slog my way through all of the programming obstacles I've faced is that I'm stubborn as fuck and determined to make something work no matter what I have to do to make it happen. Persistence and determination can and do trump raw talent in many cases. You're right on the money when it comes to getting better with experience (especially experience with real clients and projects where you're really under the gun) and by just building a lot of stuff.
Danm
I'm the same way. Not the most talented, but still smart, but the problems programming presents you are sometimes enormous and requires god-like focus and determination to figure out and develop the solution. In the end, all it takes is the desire and willingness to put in the work to come up with a solution. Talent just expedites the process.
In 30 years, I've known two programmers who didn't struggle. They were both geniuses.
This video is probably the most raw and real video that I've ever seen. Really moving and inspirational. Thanks man
Cheers
if you think tensorflow is hard just check its source code
Spot on. It is difficult and takes time. Programming is one of those jobs where, if you're honest with yourself, it is a humbling job. There is always someone who knows more than you.
Also, that fan is FAST!
I always thought I was a smart guy tbh. I took summer courses back in college which crammed a lot of material in just several weeks. And they were hard math and science courses. Then I took up learning Python recently and I just felt overwhelmed with basic projects like tic tac toe. I'm a bit better now because of my approach. Before I even begin to code I just brainstorm on the project and divide the program into sections. I also brainstorm what exactly I'd be doing. If it would be necessary to use lists, dictionaries, classes, iteration, etc... Gather data, store them in variables. The best way is to just brain storm before you even begin.
I'm currently in college to become a programmer and let me tell you lots of sleepless nights, frustrations, anger and dropping out jokes ect ect, I'm getting off track. I hate when teachers or my classmates tell me "its easy" or just do this. It's like this assignment isn't easy the last one wasn't and the next one isn't and its so frustrating to hear that I should be able to do it and I can't. And then its just back to me in my room going through the code for hours until I get it and let me tell you it sure as hell didn't feel easy. But the only thing worse than that is when people see you accomplish things and dismiss your work as saying "your just good at programming" or "well I just don't have enough time for that" or whatever. It's like I don't have time either sometimes you just have to buckle down and do it. So now I'm a TA for some lower level classes at my college and when my students come in begging for help and they had the same issues I did so I'm actually able to help them and they say things like "oh your so smart" its so easy to just drink in the praise because finally your in the position where you can tell someone its easy and you get it and finally someone is calling you smart, but I always as quick as I can tell them the truth, I tell them "You know I'm not exceptionally good at anything I just try really really hard and that's how I know how to do this I had the same exact errors as they did that's how I know how to fix them that I'm not special or smart and they aren't dumb, its just effort and time."
9:40 -> I was just telling my Dad that sometimes it's hard to get going in the beginning of the day, but it is much much more difficult to stop at the end of the day. You are totally right about needing to take breaks and learning when to shut off.
Employers and clients depend on engineers to do the things they can't do themselves. If it wasn't hard, you wouldn't get the gig.
Or the big salary. I can hang though.
dude, this video hits home! Programming is hard.. sometimes i want to punch the screen.. :D .. Thanks Chris, it´s good to know that i´m not alone!
Programming can be easy to near impossible. One of the biggest problems is that there are plenty of examples of how to do something super specific like iterate a collection or read a file but virtual nothing on structuring an application or tackling hard problems.
Thanks for your videos! New developer here and it's really good to get your perspective/advice
Thanks for sharing really great to hear we all basically deal with the same problems no matter the age
Why am I not subscribed to your channel? *clicks SUBSCRIBE*. This rant basically encapsulates everything I feel about programming (with over 10 years of exp), in a nutshell. More programmer existentialist videos please!
Jumping into .net c# from python is crazy. Mindset of console based scripts to GUI based programs on top of the nested classes of the BCL is extremely complicated and confusing. I’ve noticed also the lack of information on trying to parse the .net documentation to better get a handle on why use X class over Y sucks. But it’s like you said, linear progression, small bits a day and a month/months down the line it’ll all make sense.
"And then I would just do a bunch of If/Else's...If he said his name was Chris, say hey fuck you..." LOL
You said it at the end man,just listen to yourself and do what you feel like doing,we always just get attached to making a feature or to kill that bug no matter what ,we don't care about ourselves as much.
might be the greatest realest rant-speech ever
Great information! Thank you! 🌻
Thank you for watching!
My first project that made me fall in love with programming was a notpad that read what I typed using regular expressions, I was working for an bank in a call center at the time and had to take notes from what the customer was saying, anytime I typed the name of the account it would auto load the information for me in an . There were many keywords, it was basically a wysiwyg with smart triggers. I don't know where the code is, I'm sure it was terrible by my current standard and it was written only for internet explorer, but It made programming real. My advice is challenge yourself to create something useful, not just use a framework.
This is 100% accurate. I wish I could watch this video 2 years ago.
The one thing I like about the developers community is the no-nonsense type of guys I get to meet. I spent 6 years in the business world, full of economists, management types and HR hell. I'm learning to code now, hoping that some day I will be able to work among guys like Chris.
I've seen so many videos about this topic, and this is the best one. By far. Thank you Chris. Finally Subscribed. You're a treasure, dude.
Awesome, thank you!
Bro, you are an amazing person , thank you a lot for everything
Thank you. I wish you the best
Being homeless is harder...just saying so I should be ok😅
I've been there
@@realchrishawkes tell us how you went from being homeless to a software engineer in the next video, thanks
Chris, you are coolest dude with "need to hear' things to say. thx
Thank you!
I have run into learning brick walls over time where I for the life of me could not understand 2 sentences my instructor was saying to me. After 3 days of total shut down I came back and realized how easy and obvious everything was, including material from weeks up to the saturation point that had seemed to be ever increasing in complexity, when I fact it was all peanuts. A solid break makes stuff after look like a cakewalk.
This just dawned on me:
If i where to switch the amount of training videos i watch on RUclips with time spent training i'd be a MONSTER athlete.
Same pattern is beginning to show with actual coding vs watching people talk about coding.
I know it's time to take a break after an f-bomb or two. when i come back i see things much clearer and usually come up with a solution. You just gotta give your mind a break and allow your subconscious to work on it while your frustration calms. frustration is noise to the mind.
Isn't it a constant struggle of learning? That's what I'm feeling. I've always struggled with learning, but I love the feeling when things finally click and it makes it worth it. - Thanks for the video
Just found your channel thank you so much for this
man i just love this video
Thank you Chris
Thank you for your work
You worked on Bayside’s website?
how did I furnish only ceiling (as a millionaire, ex google, ex facebook tech lead and ex apple brand ambassador)
I have a degree computer science and I can tell you that it really doesn't matter as far as learning. You basically regurgitate concepts for an examination without understanding what you've just read. Taking what you've read and being able to apply it to real-world scenarios is what makes you a programmer. In other words, you have to have the ability to think deep which means you need to have a high IQ. RUclipsrs like Tech Lead and Clement have high IQs so they are able to push themselves as seen in their youtube videoes and achieve great things. But you can do the same, just raise your IQ. A higher IQ means that you have a wider hypothesis which means that you are able to derive a solution that encompasses the majority of the test cases in your program. Trust me I had a low IQ and I found a way to increase my IQ. Once my IQ started growing I figured out how to coding solve problems that I couldn't have solved when I was back in school. Raise your IQ and your ability to think deep because you wouldn't get further in programming if you are dependant on tutorials that are going to spoon-feed you. Most tutorials teach new concepts or app features to build products but the instructor doesn't teach you how he learned the components that are required to build the app that he is teaching you. This is where your IQ comes in. Hope this helps
Definitely relate to the whole 'only take so much in'. Got my first junior developer job and becoming exposed to and learning all about the stack they use is a LOT to take in. Almost a month in with working 40hr/week am I now getting a grip of their set up. Each place I imagine is really different with how they do things
what is the Typical Salary? Is it worth the money?
Thank you.
No problem, thanks for stopping by!
Thanks for this. I’m stuck as fuck learning authentication and it feels like brick wall after brick wall. Yesterday I was staring at my computer the entire day and never walked outside and made almost no progress.
I’m pretty used to this happening at this point but yeah.
I'm a big proponent of reverse engineering to get a better understanding. When working with React I bought a few templates from Envato to see how things came together.
Did the same thing.
I needed this video after today, just feeling like crap... like I'm not a good enough programmer. Thanks man!
thank you, there is something wrong with me that I am trying to fix. Thank you for bringing that to light for me. That's why I am still in this.
It's easy to learn programming, but it's a really hard profession
Well said.
Sir I have question.
Did you remember all code? Or developer need to remember code?
Because I'm new start learn programming languages java and c++ and python
I start self learning since two months.. i learn basics that I can read others basics level code.
And please give me tips about fast learning.
I just today I got your channel someone suggest me in Facebook groups.. thank you
Thank you
You're welcome
I graduated from a coding Bootcamp last February and I still don't know JavaScript and cant make shit with it. I have been struggling and I honestly don't know what to do. I honestly feel like I wasted $8500 on a shitty Bootcamp. what really hurts is hearing some of my classmates getting jobs and I'm here sitting clueless and nothing working for me. I'm miserably lost, to be honest.
trapmuzik281 watch his other videos. Make one project, jump in on open source. Network. Just do not give up. You are worth getting it figured out!
Hey Chris, I thought you had a tutorial on how to contribute to open source projects. Like ensuring you have the same environment/dependencies as the developer. Am I wrong?
I'm really thankful for your words. Sometimes I feel totally alone and lost.
Thanks man for your honest words🙏
Always!
Perhaps, you are not aware how many lives you are saving with these good honest words. Thank you so much!
Nice video Chris. How'd you like the new Bayside record? I think it's the best they've done in a long time. 👍
Thanks for this video, programming makes me feel really stupid sometimes lol. Just gotta keep grinding through the struggle.
Once i convince myself that I'll eventually figure the problem out if i just sit at the computer long enough while dropping f bombs, is exactly the time when i need a break. Such a paradox.
Enjoyed that one. Good stuff!
Thank you for watching!
Take it easy! when it is fun, is no longer hard!
Learn to Code!
Code to Learn!
Just have fun ☝️😊
4:16 dude.... yes, as a beginner this hit sooo hard lol
great vid thanks
Thank you
where was this filmed? abu ghraib?
About two or three years ago, I started to getting interested in programming like building software, a list of execution iteration so on, I enjoy doing these and become part of my hobby.
Now I'm at college course about standard server security system, and we student need to know partially about programming and only a few of us including me know.
It's easy to me because I been learning how to programming everyday and still I struggle sometimes when touching what I still don't know yet. I notice mother friends who don't know how to programming even assigning a value to a variable to difficult to them.
At the moment I don't know how to express or teach them how to programming or even how to code, because I used to be alone and love to doing stuff by myself.
Any advice for my friend that motivate them to learn actively but not relying by other teaching?
That odd moment when you're looking at a piece of code wondering "who the F wrote this?!".. and that who is You.
Been there for sure
this is a blunt truth bro, I respect you sir
Thank you. Keep moving forward.
Programming is easy to pickup but almost impossible to master. Take comfort in that, we are all going through the same lane...