Level Up As A Programmer With This One Technique!
Key Takeaways
The video outlines a simple strategy to increase efficiency and productivity when writing code by separating the thinking and designing of code from the actual writing of code. This strategy involves breaking down large tasks into discrete tasks, stubbing out files and functions, and then focusing on writing code without constant context switching.
Full Transcript
foreign what I want to do in this video is outline for you a simple strategy that I've been using recently that has really increased the amount of code that I can write in a day and just the efficiency and productivity I have when I am writing code now this strategy relies on the premise that I'm going to outline for you here which is that what becomes difficult when you get into larger projects or just become more experienced as a programmer is not writing the code itself it's knowing what code to write for me personally if you were to give me a list of a bunch of functions or classes or kind of some detailed requirements right you gave me what exactly I needed to do a bunch of discrete tasks I could complete those tasks pretty quickly and I would just continue going through them and spend the entire time pretty much writing code however if you don't give me that and instead you give me kind of a very very large task that's not broken down that requires a ton of thinking up front Etc that's going to take me a lot longer to complete now I know that seems obvious but the reason I'm stating this is that a lot of people especially as they kind of get into the intermediate and advanced stage of programming they forget that thinking about your code and designing your code is a completely separate thing from actually writing the code itself if you're constantly switching between these activities spending a few minutes writing a few minutes thinking a few minutes writing a few minutes thinking you're going to notice that you're extremely delayed you're not very efficient and you're constantly context switching and it's hard to kind of get into the Flow State and really get a lot done so what this strategy is that I want to share with you here is to really separate the thinking of your code from the writing of your code now I know that seems obvious I'm going to share with you exactly how I do that and kind of what my day looks like when I'm kind of getting into a code base and writing some code so the first thing I do every single morning when I wake up if I'm going to be coding that day depending on what task I'm doing is I think of overall what the goal is for the day right what do I want to get done what should be completed by the end of the day now that could be something fairly large that could be an entire feature that could be maybe a few different files that could be maybe some automated testing doesn't matter I think okay what is it that actually needs to get done once I have that I immediately start breaking this down into as many discrete tasks as possible now there could be many iterations of doing this but for example if I'm writing let's say kind of a social media feature where people can follow each other they can view each other's profiles let's say I'm doing something like that I immediately start thinking okay what are the separate components of this task well I need a way of tracking who's following who I need a way to follow someone I need a way to unfollow someone I need a way to get someone's profile Etc okay there you go I've just split this into four separate tasks now for each of those individual tasks again you repeat the process and split those into even more discrete tasks once I've done that now for each of those tasks I say okay do I need a file for this do I need a function for this do I need a class for this once I've done that I stub all of those different things now what I mean by stub is all right for example an empty file or an empty folder or an empty function or an empty fast doesn't really matter what it is but I'll write kind of an empty version of it so just the function signature just the class name so that I have an idea of what it is that I need to do now once I have all of this stubbing done now I need to pick a relative order that I want to complete the task in so I'll you know just order it I can do a comment one two three on all the different functions or the different um what do you call files usually I just remember the order that I need to go in and then that's when you actually start thinking about how you're going to complete the individual task so now I have a function in here I have a class here blah blah blah okay I need to write this individual function let me spend some time before I write the function thinking about what does this function need to do and again breaking it into as many discrete tasks as possible until you're at the point where you're almost at individual lines of code or small blocks of code that you need to write now at this point and only at this point is when I actually start writing any code now I have a very clear picture of what I need to do in my brain I've thought about different edge cases I've thought about essentially what the problem is and how I'm going to solve it and now I can just go and code this extremely fast now obviously yes I'm going to make mistakes I have to test this code all kinds of stuff still goes into it I may have to stop and think about it again but generally this drastically increases the output that I can have because now I'm not constantly writing a few lines of code stopping for a few minutes thinking writing a few lines stopping for a few minutes thinking I'm already in the flow and I can go for 20 30 40 whatever amount of time in a row just writing code and just being on the keyboard and really kind of flowing with each keystroke if that makes sense to you so that is really the strategy that I wanted to outline in this video I know for a lot of you you probably already do this this is an obvious thing but I know a lot of people that watch this channel are just beginners you guys are looking for some guidance and ways to kind of level up so I wanted to share this with you in case it could give you some value and allow you to kind of change the way you think about writing code key takeaway here is that thinking about and designing your code is a separate task from writing the code itself and as much as you can separate those two things you you're going to really increase your efficiency and allow yourself to get into that flow state where you can get more code down now I know a lot of people complain about writing more code whenever I say more code I get people in the comments saying well we don't want more code you want less code Etc what I mean by more code is just you're getting more productivity of the day more efficiency you're actually getting more done if you and me can write the same quality code but I can write two times the amount then that's better than writing less right so hopefully you get what I'm saying here hopefully this was a helpful video if you like these short tip videos leave a like subscribe to the channel and I will see you in another one foreign [Music]
Original Description
Today, I will outline a simple strategy that will increase efficiency and productivity when you are writing code. This will outline issues that come up when writing code, and how you can increase the amount of code you write in a given time. I hope you enjoy the video, thanks for watching!
💻 ProgrammingExpert is the best platform to learn how to code and become a software engineer as fast as possible! Check it out here: https://programmingexpert.io/tim and use code "tim" for a discount!
◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️
👕 Merchandise: https://teespring.com/stores/tech-with-tim-merch-shop
📸 Instagram: https://www.instagram.com/tech_with_tim
📱 Twitter: https://twitter.com/TechWithTimm
⭐ Discord: https://discord.gg/twt
📝 LinkedIn: https://www.linkedin.com/in/tim-ruscica-82631b179/
🌎 Website: https://techwithtim.net
📂 GitHub: https://github.com/techwithtim
🔊 Podcast: https://anchor.fm/tech-with-tim
🎬 My YouTube Gear: https://www.techwithtim.net/gear/
💵 One-Time Donations: https://www.paypal.com/donate?hosted_button_id=CU9FV329ADNT8
💰 Patreon: https://www.patreon.com/techwithtim
◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️◼️
⭐️ Tags ⭐️
- Tech With Tim
- How To Learn Coding
- Programming
⭐️ Hashtags ⭐️
#techwithtim #developer #codingtips #howtolearncoding
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from Tech With Tim · Tech With Tim · 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
A* Path Finding Algorithm(Visualization)
Tech With Tim
Python Programming Tutorial #1 - Variables and Data Types
Tech With Tim
Python Programming Tutorial #2 - Basic Operators and Input
Tech With Tim
Python Programming Tutorial #3 - Conditions
Tech With Tim
Python Programming Tutorial #4 - IF/ELIF/ELSE
Tech With Tim
Python Programming Tutorial #5 - Chained Conditionals and Nested Statements
Tech With Tim
Python Programming Tutorial #6 - For Loops
Tech With Tim
Python Programming Tutorial #7 - While Loops
Tech With Tim
Python Programming Tutorial #8 - Lists and Tuples
Tech With Tim
Python Programming Tutorial #9 - Iteration by Item (For Loops Continued...)
Tech With Tim
Python Programming Tutorial #10 - String Methods
Tech With Tim
How to Overclock a NVIDIA GPU
Tech With Tim
Python Programming Tutorial #11 - Slice Operator
Tech With Tim
Python Programming Tutorial #12 - Functions
Tech With Tim
Python Programming Tutorial #13 - How to Read a Text File
Tech With Tim
Python Programming Tutorial #14 - Writing to a Text File
Tech With Tim
Python Programming Tutorial #15 - Using .count() and .find()
Tech With Tim
Python Programming Tutorial #16 - Introduction to Modular Programming
Tech With Tim
Python Programming Tutorial #17 - Optional Parameters
Tech With Tim
Python Programming Tutorial #18 - Try and Except (Python Error Handling)
Tech With Tim
Python Programming Tutorial #19 - Global vs Local Variables
Tech With Tim
Python Programming Tutorial #20 - Classes and Objects
Tech With Tim
Cool VBS Script to Prank Your Friends!
Tech With Tim
How to Overclock an AMD GPU
Tech With Tim
Best GPU'S For Mining Ethereum (2018)
Tech With Tim
Recursion and Memoization Tutorial Python
Tech With Tim
Ethereum Mining Rig - Hardware Guide
Tech With Tim
Pygame Tutorial #1 - Basic Movement and Key Presses
Tech With Tim
How to Install Pygame (Windows 8/10)
Tech With Tim
How to Trade Your Cryptocurrency (Bitcoin, Ethereum etc.) For Cash!
Tech With Tim
How to Mine Ethereum 2018 - WORKING (Super-Easy)
Tech With Tim
Microphone Comparison - $10 Mic vs $150 Mic (Blue Yeti USB)
Tech With Tim
Pygame Tutorial #2 - Jumping and Boundaries
Tech With Tim
Pygame Tutorial #3 - Character Animation & Sprites
Tech With Tim
Pygame Tutorial #4 - Optimization & OOP
Tech With Tim
OBS Studio Tutorial - Best OBS Settings
Tech With Tim
Linear Search Algorithm - Python Example and Code
Tech With Tim
Make Any Mic Sound AMAZING! (WITH OBS)
Tech With Tim
Binary Search Algorithm - Python Example & Code
Tech With Tim
Pygame Tutorial #5 - Projectiles
Tech With Tim
Pygame Game - Mini Golf
Tech With Tim
Pygame Tutorial - Projectile Motion (Part 1)
Tech With Tim
Pygame Tutorial - Projectile Motion (Part 2)
Tech With Tim
Pygame Tutorial #6 - Enemies
Tech With Tim
Pygame Tutorial #7 - Collision and Hit Boxes
Tech With Tim
Pygame Tutorial #8 - Scoring and Health Bars
Tech With Tim
Cloud Mining vs. Hardware Mining - 2018
Tech With Tim
How to Install Pygame on Mac OSX (Fast-Simple)
Tech With Tim
Pygame Tutorial #9 - Sound Effects, Music & More Collision
Tech With Tim
Pygame Tutorial #10 - Finishing Touches & Next Steps
Tech With Tim
How to Fade Your Screen in Pygame [CODE IN DESCRIPTION]
Tech With Tim
How to Create a Button in Pygame [CODE IN DESCRIPTION]
Tech With Tim
Pygame Side-Scroller Tutorial #1 - Scrolling Background/Character Movement
Tech With Tim
Pygame Side-Scroller Tutorial #2 - Random Object Generation
Tech With Tim
Pygame Side-Scroller Tutorial #3 - Collision
Tech With Tim
Pygame Side-Scroller Tutorial #4 - Scoring and End Screen
Tech With Tim
How to Create A Message Box in Python - Tkinter
Tech With Tim
Is Ethereum Mining Still Profitable - Is It Worth It (April 2018)
Tech With Tim
How to Run MAC OSX on a WINDOWS PC (Clover Boot-loader)
Tech With Tim
Programming Problem #1 - Alphabet Soup (Beginner/Novice)
Tech With Tim
More on: AI Pair Programming
View skill →Related Reads
📰
📰
📰
📰
The 15-Minute AI App Stress Test: Can Your Product Survive Before You Launch?
Medium · AI
The 15-Minute AI App Stress Test: Can Your Product Survive Before You Launch?
Medium · Programming
Grok Build Is Now Open Source: What Developers Can Learn from Its Coding-Agent Architecture
Dev.to · Vishal Singh
Running NVIDIA Nemotron 3.5 ASR Locally with parakeet.cpp (and how it beat Whisper on my laptop)
Medium · Deep Learning
🎓
Tutor Explanation
DeepCamp AI