Coding was HARD until I learned these 7 things
Key Takeaways
Shares seven strategies that made coding easier, including not needing to know everything and starting projects without confidence
Full Transcript
I became a software engineer without a computer science degree let me be real with you coding was hard I wasted so much time fixing missing semicolons mismatched brackets and misspelled variables even when the code compiled it would not work as expected and I would spend hours staring at the screen and questioning my life choices but over time I picked up some strategies that made coding click for me and I'm going to share these strategies with you today the first thing I learned was that as a programmer you don't need to know everything I did not know any Linux commands when I started my first job as a programmer when I joined Amazon I did not fully understand G at Amazon my first project was in Python and I had never written a single line of code in Python later when I joined Google I could not program in C++ but most of my work was in C++ the point I'm trying to make is that you don't need to know everything you just need to know where to find it when you need it but when I was a beginner I would try to do these 30 40 hour boot camps to learn a programming language thinking that I'm going to learn everything in real it you cannot learn everything there is to learn so do not wait until you have the right skills to start your project your project will teach you the skills do not wait until you have the confidence to do what you want the confidence will come when you start doing it well a successful Warrior is an average man with laser-like Focus the same is true for a programmer but it's really hard for a beginner to stay focused that's because a programmer has more choices than a buffet in an Indian wedding first they have to choose a programmer pramming language after that they need to pick a course to learn that language if they want to learn front-end development they have all these choices and for backend developers there are whole other options the more options available to a person the longer it takes to decide which option is best this is also called hix law as a beginner it can be tempting to learn a little bit about many different Technologies after all there are so many exciting areas to explore while broad exposure is good it's important for beginners to pick one technology stack to focus on initially Mastery takes time and repetition so go deep and not wide programming Concepts take time to fully Click by focusing on one technology you can iterate on the fundamentals again and again until they become second nature and usually you need to know one technology stack really well to get hired breadth is great but you'll be evaluated on how well you know a specific technology that the job requires next week lesson was not to just focus on the coding ability but also on developing a problem solving mindset you see coding is ultimately about solving problems big and small but the issues we solve as developers don't come prepackaged as coding problems like you see on lead code or in coding interviews they come disguised as open-ended product requirements refactoring challenges or performance bottlenecks learning to deconstruct these messy real world issues into solvable chunks is a key skill that you need to build let me tell you two techniques that help me become better at problem solving the first is five wise analysis this technique was created at Toyota as a way to identify underlying reasons behind manufacturing defects here is how how it works when you encounter a problem you ask five y's one after the other each answer forms the basis of the next y for example let's say your code is running slower than expected why is that happening because it's taking a long time to process a large data set but why because I'm using two nested Loops to search for a specific value and why is that because I thought that nested Loops are the easiest way to solve the problem why is that because I do not know more efficient search algorithms but why because I've not taken time to study data structures and algorithms by the time you get to the fifth y you have reached the core issue second technique I use is separation of concerns the main idea behind this is to break a complex problem down into smaller manageable parts for example let's say you are building a web app with user authentication you can break this problem down into multiple tasks like building a user interface for login and registration database management for storing user credentials and authentication Logic for verifying user identity this makes the problem easier to process without getting over welmed building strong problem solving skills will also help you in coding interviews in coding interviews they will ask you questions Based on data structures and algorithms these questions are designed to test your logical thinking and problem solving if you want to prepare for coding interviews you can get my free crash course on interview.io after finishing the course you will also get weekly coding challenges to further improve your problem solving next thing you need to do is to stop obsessing over the syntax like I mentioned in the beginning of this video I would constantly get frustrated by silly syntax errors I would spend hours just trying to get my code to run without any errors but then I realized that obsessing over the syntax is pointless syntax is just the grammar of the language it's important but not the core of coding like we discussed the core is problem solving breaking down a complex problem into simple steps that even a computer can understand that's why I started practicing coding with pseudo code first pseudo code lets you mock out your solution in plain English before trying to write written proper code syntax it forces you to truly understand the logic of your solution upfront once I had that down the actual coding became much easier because I just had to translate my logic into whatever language I was using another thing I wish I learned early was to write code for humans not computers a study done by chajang University found that developers spend 58% of their time just trying to understand the code they are working with as beginners we tend to write code that works in a way that only makes sense to us but effective code needs to be understandable by any developer who looks at it including your future self I cannot tell you how many times I came back to my code from a week ago and could not understand it myself so writing clean readable code with proper variable naming code formatting and comments can massively boost your productivity as a developer it's a skill I worked very hard to build by studying coding best practices and getting code reviews trust me when I say this your future self will thank you for writing readable code talking about understanding code the next thing that made my life life easier was learning debugging I can't tell you how many hours I wasted just randomly tweaking code compiling running and tweaking again in the hopes that it would magically work I thought that's the only way to do it but then I read this article that talked about how developers spent somewhere between 35 to 50% of their time debugging that's over a third of their time so I decided to get serious about learning debugging I learned how to use a debugger adding log statement systematically and recreating issues in smaller isolated cases learning and applying a proper debugging process saved me a lot of time and headache most code editors have built in debugging functionality in certain cases you can also use a thirdparty extension like resharper to learn more about debugging check out Google's troubleshooting and debugging techniques course on corsera and this brings me to the most important lesson back in 1980s American Airlines was looking for ways to cut cost and improve their profit margin Bob Crandle who was the head of American Airlines at the time decided to take a closer look at Airlines Food Service he noticed that the salads being served on the flight included a garnish of Three Olives per salad Bob did some quick math and figured out that if they remov just one Olive from each salad they could save a substantial amount of money keep in mind that American Airlines was serving thousands of meals every day so even though one Olive might not seem like much the numbers added up fast American Airlines saved around $100,000 per year in today's dollars by doing this the lesson here is that sometimes the biggest improvements come from paying attention to the little things in his book Atomic habits James Clear talks about the power of making small incremental changes in life the idea is that tiny habits when compounded over time can lead to remarkable results he shows that just a 1% Improvement every day over one year can make you 38 times better the key to making these improvements is starting small so if you want to get in shape start by doing one push-up per day if you want to read more start by reading just one page every night and if you want to learn programming start by doing just two exercises per day over time these small improvements will compound two exercises will become 20 and 20 exercises will become one project and so on whatever you do you cannot have anything worth having without struggle and if you're struggling to learn programming you are on the right track by the way if you want to crush your next technical interview don't forget to sign up for my free email crash course at interview.io my name is sahil and I'll see you in the next one
Original Description
Try my free email crash course to crush technical interviews:
Interview Master (now called InstaByte) - https://instabyte.io/
► For more content like this, subscribe to our channel: https://www.youtube.com/@sahilandsarra
► Follow us on Linkedin:
https://www.linkedin.com/in/gabag26
https://www.linkedin.com/in/sarrabounouh
► Let's be FRIENDS! https://www.instagram.com/sahilandsarra/
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from Sahil & Sarra · Sahil & Sarra · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Product Management Internship - EASIEST Path to Become a PM
Sahil & Sarra
I Quit $200,000 Software Engineer Job at Amazon
Sahil & Sarra
What do I do as a Product Manager? - Product Manager Role
Sahil & Sarra
CHEAT SHEET that I Used to Crack Product Manager Interview at MICROSOFT
Sahil & Sarra
Why Tech Workers are Getting RICH💰💰 #shorts
Sahil & Sarra
Why Is Everyone Quitting Their Six Figure Tech Job?
Sahil & Sarra
5 Years of Coding - Everything I've Learned
Sahil & Sarra
5 Highest Paying Tech Companies 💸💸 #shorts
Sahil & Sarra
How I TRIPLED My Salary by Joining TECH
Sahil & Sarra
How I Became a Software Engineer Without a Computer Science Degree
Sahil & Sarra
Top 5 non-CODING Tech Jobs that Pay $100,000+
Sahil & Sarra
Top 5 Tech Jobs That Pay $100,000+ Without Coding
Sahil & Sarra
FASTEST Way to Learn Coding and ACTUALLY Get a Job
Sahil & Sarra
Coding Interviews Are Easier Than You Think
Sahil & Sarra
THIS is Why Software Engineers Make So Much Money
Sahil & Sarra
System Design Interviews are a SCAM
Sahil & Sarra
I got $50,000 more when I negotiated my tech salary
Sahil & Sarra
How I would learn to code in (If I could start over)
Sahil & Sarra
Google is not the best tech company
Sahil & Sarra
How YouTube is killing your programming career
Sahil & Sarra
This is Why Your Resume Gets Rejected
Sahil & Sarra
How I Hacked My Mind To Learn Coding
Sahil & Sarra
FASTEST Way to Learn Data Science and ACTUALLY Get a Job
Sahil & Sarra
FASTEST Way to Learn Web Development and ACTUALLY Get a Job
Sahil & Sarra
Why Most People FAIL to Learn Coding
Sahil & Sarra
Google Engineer reveals his darkest secrets
Sahil & Sarra
Become a better Programmer in 8 minutes
Sahil & Sarra
Start Behaving Like a Programmer
Sahil & Sarra
The Resume That Got Me Into Google
Sahil & Sarra
I solved 541 Leetcode problems. But you need only 150.
Sahil & Sarra
Why Good Programmers FAIL Coding Interviews
Sahil & Sarra
Can you solve this problem in one line?
Sahil & Sarra
Puzzles for Software Engineers - Microsoft #1
Sahil & Sarra
Puzzles for Software Engineers - Amazon #1
Sahil & Sarra
Layoffs = The END of Software Engineering?
Sahil & Sarra
Puzzles for Software Engineers - Apple #1
Sahil & Sarra
Puzzles for Software Engineers - Amazon #2
Sahil & Sarra
Puzzles for Software Engineers - Microsoft #2
Sahil & Sarra
Puzzles for Software Engineers - Apple #2
Sahil & Sarra
2-Minute Rule to Learn Coding - Atomic Habits
Sahil & Sarra
2 Minute Rule for Coding
Sahil & Sarra
5 Math Skills Every Programmer Needs
Sahil & Sarra
3 Developer Roadmaps That Actually Work
Sahil & Sarra
Cracked Google without a CS degree
Sahil & Sarra
Top 5 Coding Languages To Get a Job
Sahil & Sarra
4 Reasons Good Programmers FAIL Coding Interviews
Sahil & Sarra
Reality of Software Development
Sahil & Sarra
C is the grandmother of JavaScript
Sahil & Sarra
How to Hack Passwords
Sahil & Sarra
Learn Python with ChatGPT
Sahil & Sarra
Learn Web Development with ChatGPT
Sahil & Sarra
ChatGPT 2.0 aka GPT-4 is here!
Sahil & Sarra
7 things I wish I knew in my 20s
Sahil & Sarra
💸💸 $177,000,000 Coding Error
Sahil & Sarra
5 Google Search Secrets
Sahil & Sarra
QWERTY Keyboard Slows Your Typing 🤔
Sahil & Sarra
💰💰 Top 5 Highest Paying Jobs For Programmers
Sahil & Sarra
👩🏻💻 Top 5 Programming Languages
Sahil & Sarra
5 Steps to become a Full-Time Developer
Sahil & Sarra
Coding is NOT enough
Sahil & Sarra
More on: Algorithm Basics
View skill →
🎓
Tutor Explanation
DeepCamp AI