1. Don't Bother taking notes for the first 2 months rather focus on the course or tutorial. 2. After learning the basics, start building projects and comment on every single line. 3. Write documentation, basically explaining the purpose of your project (watch other tutorials on how to write documentation in VScode). 4. Only take notes of those concepts which you use very often and find it difficult to remember them. Thank you, Dorian it really helped a lot :)
You are absolutely right. Programming is similar to mathematics you write down important formullas but at the end it's all about practicing and solving more and more problems.
The same could be said about any skill worth learning. You could take all the notes you want on it... But it doesn't really help you out if you don't actively practice the skill.
@@Othorius I always found memorizing details to be much harder than understanding concepts Maybe it depends on the person? Memorizing formulas might be your weakest link, for example.
If you learn one thing try it simple way different ways then shortest way for different scenarios then find common ground, revise that puzzling step and it's solution
I'm an Unreal Engine game dev working on a large project, and documentation and commenting is SOOOO important, it's everything. All code is at its core is a communication tool, so one of the biggest parts of being a good developer is communicating as clearly as possible.
Do game devs need to learn design patterns? I feel like following SOLID and clear-cut design patterns would make for good code that is already self documenting, but maybe comments would still need to exist. I haven't learned design patterns yet as right now I'm learning multithreading, and I heard design patterns should be one of the last things an entry developer should learn, as it can get pretty complex. Would you agree that learning design patterns is not easy - that some can become complex? Or should I learn it immediately - asap...?
"All code is at its core is a communication tool" completely agree and which is why comments should only be for things you cannot capture through code, i.e., why something is implemented in a certain way vs "how" its implemented.
Focus on Very clear variable names, this isn't the 1980's and you are not character limited. m_Debug_Iterator is not a variable name it's gibberish or obfuscation, variables should either be adjectives, verbs or objects (language sense). Then use xml summaries etc to document your methods. Only comment choices you can't explain with your code inline, everything your can't fit in that like program logic, document it. I was very lucky to have a talented and pedantic lead programmer actually teach me things especially regarding making code understandable, still learning but it has been invaluable experience.
I did a course on Udemy, I created my notes in a document. Since I forgot stuff and tricks. I have to again go through the video. Now using a document my speed to catch up is instant. It is real gold. I don't mind the time it takes. It is worth the effort when u take a break for a month and forgot what that class or syntax do.
same for me,, some people need it, as it helps you stay organized, and worry free, cause you've got everything written down, your own personal stack overflow.
That's exactly why I started writing comments. At first I didn't do it and it happened to me that I would forgot how part of my own code works. Since then I started writing comments, even though I should be writing more comments according to this guy, since I am still a beginner.
Even before watching this video my preffered option was to comment the code than to take notes but I still do take notes of some things, how some things work.
I’m glad I caught this video. I have been self teaching myself and have been taking notes on a 5 subject notebook. Half of the notebook is filled and I’m not even halfway through my course! I will definitely take your advice and comment more on my code.
You should take notes on things that don't come up often, but things like loops, vars, functions, etc should all be learnt by muscle memory. That isn't the stuff you should have to google.
0:58 💡 Comment your code extensively when starting out to build the habit and improve understanding. 4:30 💡 Write documentation for each project to showcase your skills and develop good habits. 7:12 💡 Commenting code and writing documentation are skills that will benefit you in the long run. 10:45 💡 Employers value well-commented code and thorough documentation in a developer’s portfolio. Key Insights 💡 Commenting code extensively helps developers understand their code better and explain it to others. 💡 Writing documentation from the start builds the habit of documenting projects and is valuable in professional settings. 💡 Commenting code and writing documentation are essential skills for developers, especially in team environments. 💡 Well-commented code and thorough documentation make a developer stand out to potential employers. 💡 Learning to prioritize code commenting and documentation over note-taking enhances learning and project building. 💡 Taking extensive notes can be time-consuming and may not provide as much value as hands-on coding and documentation. 💡 Memorization is not crucial in coding; muscle memory and practical application lead to better retention and understanding.
Yep, something like that. I 'm doing the FCC so I download each answear and comment it. So when I'am building and dont know how to, just search the file and read my comments. Also each line of code from FCC I rewrite it in VSCode for practicing.
I need mentor for my coding journey I learn c then data structure now I m learning greedy algorithm I know c++,html , css little bit too but after completing dsa should I go with java or c++ ? help me out buddy
HEY DORIAN! I've been in this channel since you have a small subs. Can I ask do you post you videos outside like FACEBOOK to increase your views or RUclips just got you through Algorithm? sorry for the non related question :)
When I saw this video, I thought the title was clickbait, but since I take a ton of notes, I decide to check it out. And I have to say that this is really good advice. I realized taking notes has made me spend twice as much time to learn something because I have to write it down in human language, which is hard. It helps you retain more information but you spend too much time in the process. The worse part about it all is I never go back to my notes. The comments I make on each code line ends up becoming a better reference point. Absolutely sound advice! Thanks for sharing, Dorian. Subscribed.
When I started I took a lot of notes and have cut way back as I feel more comfortable working with the editors, languages and all of that. I use index cards to jot down quick reminders and notes as I am learning something and just keep them nearby, and as soon I don't need them anymore I toss them. I really like the idea of commenting your code and making documentation for your project, good thinking to build those habits and get the benefits of note taking all in one. I am going to make the effort to do this from now on. Thank you so much for the video!
This is a great tip! Like coding flash cards, love this idea and makes it a lot easier for note takers like myself to have a quick reference in your own words.
Simply when you're starting at coding as a beginner u need some notes...but once speed up and running you might not need them...go with comments and documentation...
My 2 cents as a senior developer. This is a good starting point for juniors, but as time goes on (maybe 1-2 years or more) you will understand that it's better to write clean-code and name identifiers correctly (this comes with years of experience), and you won't need comments, they will slow you down because they need to be maintained just as your code does. Quality code are the best "comments" you can possibly write.
@Ryan Tandy No advice is "final". If you think that you need to use comments in your project, DO IT. Comments will always have a place in our code, some things can only be explained by comments and if it makes the team happy, even better.
@@krillansavillan Yes and no. Sry for the riddle, but life is always about balance and change. If you have a good company you'll have style guides and standards per company then per project, but it's ok if you have only standards per project. Who decides the standards? "The TEAM" - All the people involved in the project. The interesting thing is that standards can change and should change with time, because the team changes (people come and go) and also because the people in the team get better with years of experience. (programming as a practice also) So yes, code to the project standards, but don't be afraid to change the standards for the better when you guys feel like they need a change.
While learning, I absolutely agree. The problem with comments in the workplace is that -- code gets updated but comments rarely do so you wind up working on code where the available comments are no longer applicable. Companies prefer code that is self explanatory through descriptive class/method/variable/etc names which act as comments as you're reading the actual code. That is a GREAT habit to form while you are learning that transfers very well to the workplace.
That's fine if the company keeps all of its history of specs because sometimes you have a sleeping bug that can pop up 10 to 15 years later and you see what the code does, but it doesn't say anywhere what the business rules intended it to do. Sometimes, the person who worked on it originally doesn't remember doing it. If the full history of specs isn't kept, the comments are the next best thing.
Gonna have to disagree-ish; in an enterprise level code base, part of good coding practices along with readable naming conventions is updating the comments and aptly naming commits.
Have worked on large scale enterprise systems. Well named functions/variables/etc. is the baseline. Good comments are paramount to maintaining a large codebase. Code often cannot read as prose nor explain intent. The GREAT habit is updating any surrounding comments when you touch the nearby code
I've worked on systems where the people who had designed it were self taught. The problem was it showed in the code. The designers clearly didn't know the difference between a goto and a gosub, the applications would behave in ways not intended because they didn't understand the memory stacks. I've seen over-use of small variable names as if the computers used still had 2k of memory and there was very little in use of comments which would describe what the code was supposed to do. I've seen over two pages of code in some programs that was no longer reachable by the code that ran but it wasn't commented out so a person could waste time reading non-accessible code etc. This bad coding could have been prevented by having the programmer reading a few books on good coding practice.
@@HepCatJack I can agree to some extent, however I am 100% self taught where my field of study is within C/C++ and I dove into 3D Graphics Engine Design, Hardware Emulation, and more. I taught myself all about the entire process. Not just on the software side of things, also at the assembly level, the compiler and linker or interpreter side of things, I learned how to use the debuggers. And it doesn't stop there. I even dove into and researched into OS design, as well as ISA or Computer Architect Design. I mean building a basic CPU from Logic Gates! There's a lot more than just the stack frame and stack pointer involved. You have calling conventions, name mangling - symbol tables, virtual function tables, utilizing the cache, understanding the branch predictors especially with modern systems that implement out of order instructions, and more... and the list goes on! If it involves a Circuit and Software, I'm game about learning how it works and how to instruct it to get it what I want it to do! I even started to pick up a little bit of Python and some JavaScript when I started to learn about A.I. Algorithms, Neural Networks and Machine Learning. It's not just the programming, nor the data structures, the algorithms, Big O, etc. it's also all of the math that is involved from basic Algebra to Linear Algebra and Vector Calculus, Boolean Algebra, Lambda Calculus and even Number and Information Theory! I have had some college courses in the mid 2000's around 2005-08... but none of my courses involved computer science... the highest mathematics I had was Calc II and Physics II. All of the rest was all self taught! I believe the comment you made can be self evident in many cases sure, but I also find it to be very stereotypical. In all honesty, it comes down to the individual and how they apply themselves! Some of your best engineers or programmers don't have any "formal education". They are smart enough to figure it out on their own. I would tend to think that the stuff you are seeing may not necessarily be from someone who's self taught. It could actually come from someone with a bachelor's degree, one who took it and just barely passed with a high C average about a 2.8-3.2 compared to those with a 3.8-4.0 GPA... I'm not claiming this is so in your particular case, I'm just stating that it is highly possible, even highly probable! They could have either just happened to do well in the interview or got lucky as opposed to someone who knows the entire workings of a computer system as well as the different layers of abstractions, the different paradigms, idioms, etc... One should never assume something based on a stereotypical mindset without having more information, more details and proper context! Just because there's one bad or poor apple doesn't mean the entire orchard is bad! Why do I say this? Throughout the years, most of your inventions came through Garages! And many of those people didn't even graduate from high school! It's almost analogous to the old saying, "never judge a book by its cover!" From my own experience, reading books can be good and helpful and do make a good reference, however, one of the best ways of learning is just by doing it through trial and error, finding what works and what doesn't, finding your mistakes and fixing them. A good programmer, software developer, computer scientist, software engineer, etc... isn't based just on their ability to "write source code". No! What makes them good is their ability to Debug It! The most tedious and dreadful aspect throughout the entire development cycle! If you can debug it! Then you know what's going on under the hood!
Tips broken down into steps: 1. Comment on your code, build this habit. -The amount of comments at the start should be commented to explain what they're doing. As you get better, this will be needed less and less. Eventually you will only need to comment on important steps (this will be intuitive). 2. Write documentation. -Every project you start should start with a readme file. Learn basic markdown, many markdown cheat sheets often. You'll build the habit of starting with readme files. See how other apps and technologies write their own documentation. Expand and develop this skill as you learn. Potential employers will look at github documentation will value this. A nice portfolio will have applications with explained comments and documentation.
@@emmancrafts. I'm still relatively new to building my own apps but the best examples can be found on github. To put it simply, whenever you look up or download someone else's work, there are usually readme files that come attached with it. This is documentation. Say you were building your first app, like a food suggestion app. Your documentation would be the readme file attached to the app, explaining exactly what the app does and what its purpose is. To be even more thorough you could also explain what skills you were trying to polish by building this app. As you build your skills, your documentation should also become clearer and more intuitive.
I learned the essence of how to properly write your code and commenting when I first watched CS50. They'll grade your code based on its functionality and its design and then I also learned that the most efficient way for me to write my code is creating the pseudocode first. Understand how you want your program to run, then for each line of the pseudocode, write the actual code which will make everything else really easy.
I feel like this mostly only works when you're solving algorithmic problems. If you're writing some layout code, or some simple stuff, it may be overkill
I had a high school programming teacher back in the day who really emphasized comments. Especially early on, he would give us assignments requiring us to write nothing but comments or pseudocode first and submit it, then go back and write the actual code. I think it helped me a lot.
Great vid! Two benefits I gained from taking notes. They helped reinforce things as I learned, and I was also able to look over them later on in my career to measure my progress and understanding because what didn’t make sense before made sense. I was able to confirm what I understood by looking through my notes and explaining the concepts to myself and others, whereas I could not do that early on.
More one subscriber, I'm a Brazilian so I don't know much English, so thank you so much for put subtitles. Your voice is very clear and easy to understand. I have a lot of notes about React basics that's I almost never reviewed.
Great video. I have been learning to code for about two years now and I spent alot of time taking notes. I think it helped a little with retention but overall I think it's been more of a disadvantage because: 1.It adds to the time it takes to finish a course, tutorial or book and, 2.It stops you from focusing on applying what you learn. I have not done any coding for about three months as I ended up feeling overwhelmed and burnt out. I'm starting to get some energy and motivation back and I will start back up again. I think the key here is to keep it simple and straight forward. Its important not to overthink things. If you don't understand something or copy it, that's ok. If you keep doing it you'll understand it over time.
You should take notes. The point of doing a course is not to get through it as quickly as possible. It is to learn as much as possible. And no taking notes does not take your focus off what you are learning. It actually helps you.
I am about 6 weeks into learning how to code on my own and I have been taking a lot of notes. I did realize that memorizing was not helping me at all. In fact, it was time-consuming. I just started getting into the habit of commenting about 2 weeks ago and honestly, I saw myself understanding code blocks better. Definitely need to get into the habit of documentation now. Thank you for this!
Would you let me know, after a year how much this video helped you or is it helpful. I started learning web developing and when it comes to note i had wasted over 2 days to find how to note. Even now s didn't find a way for note. So, i wanted to take note traditionally (with pen and paper)
A thing I have picked up that has started to help me remember things better. Being a complete beginner with no code experience ever. Is to explain the concept of what you just learned outloud to either yourself or something like a toy next to you. Pretending that thing is another person that you have to teach what you just learned. Yeah it really makes you realize if you learned what you just did, or just went through the motions.
Man... Just starting learning coding. First day was yesterday. I got to the end of the first days lesson, and I realized I had not taken enough notes or the correct notes. And then... I come across your video today. Ha! Genius sir! thanks!
I remember taking a lot of notes when dealing with Data Structures and Algorithms. In fact I still have them by my desk. The only reason I was really pushed to was because I wanted to see how the code worked next to a picture of what it was doing. This was really helpful. But I would probably agree with you in the fact that being able to comment your code helps in the two ways. 1) People can understand what you are doing. 2) You understand what you are doing. Great Video!
I'm taking this cs50 class and I've definitely been taking notes, I actually found this video looking for things I should’ve studied before taking the course. Thank for he tips.
Notes may be a waste of time depending on how you're planning to use them. "writing once to remember and never read again" is indeed bad. You have to take notes for yourself in the future, not yourself right now. My current approach is to use Markdown (with Joplin to manage notes by "Notebooks" and tags, one note per book chapter) to note everything I don't know yet or will surely need quick reference to in the future. And if I ever needed to reread a book, rereading the notes should be enough. They're the step between the book and the cheat sheet. As for comments in the code, I don't fully agree. Drowning the code in a sea of comments can have the opposite effect so I'd rather organize the code in a way so that anyone could understand directly what's happening and why, but it's easier said than done (applying the "Clean Code" rules). If your language has widely accepted header comments such as JavaDoc or PHPDoc of course it's wise to use them, in no small part to help your IDE help you back.
Thank you for the advice! I'm confused when taking notes while following the course. Started to learn swift as designer & I thought I should write down the terms I didnt know like array/strings and such. Should do more on commenting!! 👌🏼
When I was learning I was writing notes. I would learn the specific thing to the point I could explain it in a paragraph or half a page of notes. I wrote it as if my girlfriend who has no programming experience could read and understand it. I think that definitely helped grasp some abstract concepts. If you can explain it simply in your own words, you understand it. I haven’t looked at the notes since, but I knew I wouldn’t. They served their purpose.
Would you let me know, how to take notes . I started learning web developing and when it comes to note i had wasted over 2 days to find how to take note. Even now i didn't find a way for taking note. So, i wanted to take note traditionally (with pen and paper). I still didnt start to make note after watching this video. 😢😢😢
As a SysAdmin, I greatly appreciate when my software developers write comments in the code. I don't know code well but those kind of comments really help me when I am troubleshooting an issue.
This is similar to an approach I saw in a video about math. The person explained to not write out the code itself, but explain in words the process one needs to follow to get the right answer. These are the comments that could help someone really learn. Good video!
Thanks for this video. I'm learning right now and began taking notes down immediately since, like you, I came off earning my CompTIA (Network +) so took the same approach. Knowing it's better to focus on the practical aspect and not to kill myself jotting every detail down for the sake of memorization has encouraged me to focus on repetition and google if anything if I get lost. Thanks again!
I spent my first year studying frontend taking notes college ap style, with highlighters and bullet systems. In a way it helped me retain the basics (that should be known/memorized) but after a while it reallyyyyy hindered me time-wise and as I was taking more notes and practicing less, I noticed that they weren’t helping my comprehension at all so I abandoned note-taking, as great at it as I may be, it just isn’t as useful for learning and applying code. Thanks for the tips about documentation, that sounds so much more proactive and useful in the long run.
Excellent tips, I couldn't agree more. Another habit I started implementing is creating my own cheat sheets. Great time saver and helps structuring some of your coding habits.
I did this too. When I was learning my first few months, I had my notes app and iCloud full of code snippets ...it got messy lol.. later on I learned to write comments. I'm glad you bring this up for those who are starting out.. btw great video production quality ..love it 👍
It's something I think that we all do when we're first learning. I'm old and much of my early notes were pen and paper 😂 that was messy as well. Had to step up the production values to try to reach a wider audience. People really like "entertaining" video.
Thanks Dorian for the brilliant advice! I have been struggling to find an effective note taking system and find I go back to older projects to figure it out. Comments would've made it soo much easier! Will definitely be looking into how to write documentation.
My method is this: I draw an object i want to build or work with, I describe all the variables on it. Then I define algorithms for the object which I encapsulate as methods on the object. Once all these are done I build a test suite and test all that. Once done I move everything to objects own folder, that is the drawing, the class and the tests. That is my, reusable note. Finally, I have one drawing with all the objects I have ever developed, worked with and tested. Every time I have a problem I look at these objects and think which one might be a solution to the problem. This is not a traditional note taking, but something that I developed on the basis of how I solve problems mathematically. You need a drawing, you need all the variables and you need algorithms clearly described.
Hey might giving an example of this ? Like an example of one drawing you did with all this info. Your strategy seems really interesting and a good approach to understand
@@djamz3793 Imagine a stack. It is a container with a pointer variable called top with value -1 and a variable capacity, which tells you how many items you can put on the stack. Open inkscape or other program for vector graphics drawing and draw a box with open top, call it container, then draw a red horizontal arrow right at the bottom of the box, to the right of it write top and set the value of this variable to -1. At the of the box draw another red arrow and at the top of it write capacity and set it to how many items your stack can have. I use orange color to describe all the parts of my data structure that normally would be considered variables. So box, top and capacity would all be orange. Next to your stack draw some blue boxes and label each of them item. These are items you will be putting on your stack. Once you have your basic structure you are ready to draw how actions will affect your data structure. Lets say you want action called push, which is normally used to put an item on a stack. Copy your basic data structure and paste it below. Label it push(), Draw a black arrow from one of items to point into the box. Then draw a green vertical arrow under the red horizontal arrow next to variable top. It shows that value of top changes from -1 to 0 as you push an item on the stack. This is a very simple example of how you might visualize things. You should do similar drawings for other operations defined on the stack like isEmpty or pop. It does not really matter how you draw. What matters is, you should use colors, make all the variables available for change on your data structure and be precise how they change as you manipulate your data structure. Sometimes it takes several copies of the basic data structure to depict what happens as you sort or do some other thing. You might say, this is too time consuming method. It might look like that, but remember that you do it once. Once you have these drawings, your code based on it and tests you are set for many many years. When you need a quick reminder how things work, you take a quick glance what you drew and you know immediately. Your code should be based on your drawings, and your tests on your code. This is nothing different to what you would do while solving a maths problem. Drawing gives a nice face to programming and helps to define classes and actions on them very cleanly. On top it is an extremely pleasant part of coding process. Finally, you are left with something that you can always come back to for a quick review. Finally, once you have drawn a couple of things, you have reusable components, like arrows, items, containers, you can use to draw other things quickly. Once you have started with this it becomes a habit, one which is invaluable when you have to deal with a complex data structure with many moving parts ... in fact, when you see that there are too many moving parts, it is time to separate some parts and move them to a different drawing. Your drawings should have no more than 6 moving parts as your classes should not have more than 6 variables in them. Hope this helps.
Solid. Thank you. As I move forward building my site, portfolio, etc... this will be the heart of the effort. Thanks Dorian. As usual, knocked it out of the park.
Commenting your code and doing practical projects are much more valuable than taking notes when learning to code, I do agree on that. However when you are learning new concepts that feel abstract I think it can be valuable to take notes or write diagrams to make more sense of things. For example: The event loop, or wrapping your head around what ORM is or how global state manager works
I take notes on a notepad , I did feel exactly what you described, not sure what to and what not to note down, going to switch to comments! And only note down stuff I really can’t get into my head ! Love this video, thank you.
Wow, this really works. I am in a bootcamp learning javascript. I use comments in the code instead of notes and my comprehension has increased tremendously. Great advice that I will take with me into my career.
Personally for me, taking notes helped me remember things and concepts. Whenever you're struggling to remember something, just a quick look at the notes helps me remember but whatever works for you, use it.
@@mcwally514 it’s quick through googling but it’s not the same as taking your note. If you are still young brain, do notes , don’t take shortcuts. Most of our teachers are already mature and they got so many more things in life in their mind. So, they don’t want to study anymore. Thanks to google , it’s a their solution Trust me! My experience of taking note is make me more *indulge* and connect to what i’m doing. Taking time of doing something is actually make you more associated with what you are doing So it gains confidence in your own field. So do anything make u happy, dear. I do digital note through Ms word or notion I just go through Table of content or Find It’s more faster than handwriting and i still can do notes,
Yo, thanks, bro! It's funny how simple good advice can be sometimes. :) Even though I learned to comment and document my code faster than other developers I got stuck on taking notes for far too long and even as a developer, almost 5 years into my career this is still a blocker for me since I love taking notes. I'm busy looking for new jobs and I know that I'm going to have to learn some new tech and pick up the pace so this was a good pointer for me and I can't wait to get started and get productive! I think the main takeaway for me here was to learn by writing more code and not to focus so much on writing better code. Peace and Love from South Africa!
This is the third of your videos I am watching and it is on point a question I raised during my own research and learning periods. Thanks again for the good advice!
Thank you. I’ve been taking notes (Lololololololol) but what you are explaining makes perfect sense... - I shouldn’t take notes like a regular person in English class, I need to take notes as a coder/ software developer.
He is so honest in every single thing he said in this video because, I as an upcoming programmer I notice how I learn fast and how I don't. And its quite the same way he just explained
Thanks for you honest content that get direct to the point and with alot of informations that can save any one like me who start his journey learning to code . I like to watch your videos and i hope you keep the good work up . Always waiting for the next videp 👌👍
I totally agree with you because I realized all the notes I've been making from my code I never had time to go through it. So it was a total waste of time and energy and an overkill.
Coming from the education industry I almost bypassed this, but coming from the education industry I had to take a look:) Glad I did. I'm commenting the hell out of my entry work. As I was doing it I figured out where some of my errors were. Thanks!!
Yes Dorian! I add too : Make your notes your architecture and design (video coming soon from me on this). Too often I see entry and mid developers not know what they're designing. Jot down your ideas so can explain and it makes you think about it. This can be small charts and relationships that you jot down.
You are so right. I am taking a Python course and have taken a ton of notes. I can not make heads or tails of my notes, and I can't find a note when I need it for practice problems. Commenting my code would help me better understand what I am doing. Thanks for the tips!
I love to take notes because while writing the notes along, it helps me to understand the code and what it does. And if I forget how something works, I can refer to it later
Thanks for this. Realised it the hard way but now I'm becoming more laser focused on just practicing coding and focusing on communicating what's going on in the code.
spot-on video! I took my first introductory course last semester and I wrote every single thing down! I never read them or looked at them! I ended up taking more time writing notes than actually practicing. It was very detrimental. They aren't beneficial in any way! practice! practice! practice!
I'm currently taking my first web dev course and I've been taking notes on Evernote. At first they were unorganized and messy but I've found a way make them more organized and easier to read. Now I do find that writing (or typing) things down does help me remember them. I also like to explain what my code is doing in my notes, to myself when learning concepts that are more difficult. It helps me to understand what I'm doing and why. Plus, since I don't have the time to learn every single day, (I really wish I did...) I have gone back to reference something I learned before and it's been helpful. BUT.... I do feel like I spend a crap ton of time writing notes. Even on easier things I still try to write things down for later reference. But as I'm doing it I'm thinking, "should I even be taking notes on this? Well what if I need them later??" I swear I've spent like well over an hour going through an 8 min course video because of all the notes I'm writing. So I am deff going to try these suggestions you made. Especially commenting my code. I've already thought of times when that would have helped me a lot. I will also be researching mark down and documentation. Thanks for the tips! Subscribe and a like from me 👍
Would you let me know, after a year how much this video helped you or is it helpful. I started learning web developing and when it comes to note i had wasted over 2 days to find how to note. Even now s didn't find a way for note. So, i wanted to take note traditionally (with pen and paper). I still didnt start to make note after watching this video. 😢😢😢
I'm learning about coding from basics, while i'm thankful for the info and help on the commenting and documentation( really helpful) , my way of learning includes taking notes as well. Its the best way for me to learn anything. I have tried various ways and this method sticks the lessons in my memory , need to practicing it too. Its easier for me to understand and learn this way.
Yea that's so true, that's what comments are made for, we gotta show gratitude for comments, they aren't syntax, and programs don't understand, but humans do, that's why comments are so special. Is special in such a a way, after this video, I'm starting to feel more gratitude for comments. Thank you.
Bro first video I found is your video about this topic. I am still a beginner and I am currently taking a course, but I was really confused about what exactly should I take note of since all of them kinda look important, thanks a lot for the video. Good luck on your journey
I'm very new and the thing that has helped me is referencing my older code. I haven't taken notes and have commented a little bit, but I've found myself recalling past projects or algorithms that I've done and referenced those files. Idk if that's an efficient way to do it for learning but I do like the idea on comments to help myself walk through a problem/ segment of code. Thanks for the advice!!!
A great video! Good tip on the comments! I still don't have the developer mind and writing comments to explain everything will help me understand code for sure. I often write code without fully understanding it. I need to level up! Thank you!
I am currently in my senior year of college in Computer Systems. When it comes to the courses where I have to do hands-on stuff, I usually tended to note down ANYTHING I am forgetting and think I will be able to remember that via memory XD That couldn't be farther from teh truth. I feel as if I am in a loop where I would spend time to understand a topic for a specific Language (JAVA, HTML, PYTHON, etc.), I would take notes on their related topics, I push it aside for a few days to even a week, I forget it all: Rinse and Repeat ; . ; You practically just read my mind, man XD Thanks for the advice.
Yes I’m took the route you took. I started with CompTIA also. I felt like I had too take all these notes, but it honestly fells daunting. That why I click on your video because I feel like the notes I’m taking are a waste of time. I’m currently a beginner coder, and currently learning on Codecademy. I am eventually going to a affordable boot camp I’ve discovered soon. I will be watching your content also, thank you for the tips.
I just a few months ago began learning to code. I did this as well with writing notes on paper while trying to learn. Switching to just writing comments on something you dont understand is is definitely way better.
lol I thought comments was how you take notes! Whenever I'm following along with a tutorial I'll explain what the code does so I can look back later & understand it again. I'm certainly not doing as much as you recommended though I'll ramp it up. I started learning how to code a while back, but I got bored & gave up. I'm giving it another go with the goal to finish the whole course no matter what & then use those skills to complete a personal project.
Hi Dorian, I agree 💯 As a mid-career engineer who loves to write (I've taken up technical documentation as a secondary skill too), I get caught up in writing notes. I have taken notes, also to help the future me when I'll be teaching someone else (I teach too), but it takes a while and the context switching between code and notes is draining. Thanks for sharing. Simply commenting as I go and using the comments to write lesson plans is a flow I can get in 🚀
this is why im loving discord so much more, i have my own little personal learning server and jot things down in which i can just go into and remember later, tho this helps a lot too and ill have to remember it from now to apply them
1. Don't Bother taking notes for the first 2 months rather focus on the course or tutorial.
2. After learning the basics, start building projects and comment on every single line.
3. Write documentation, basically explaining the purpose of your project (watch other tutorials on how to write documentation in VScode).
4. Only take notes of those concepts which you use very often and find it difficult to remember them.
Thank you, Dorian it really helped a lot :)
4. Only take notes of those concepts which you use very often and find it difficult to remember them.
Yeah thats everything lol
Thats what commenting is?
thank you too
@@Turnpost2552😮
thank you mate
You are absolutely right. Programming is similar to mathematics you write down important formullas but at the end it's all about practicing and solving more and more problems.
The same could be said about any skill worth learning. You could take all the notes you want on it... But it doesn't really help you out if you don't actively practice the skill.
This is it what he said what so ever
@@Othorius I always found memorizing details to be much harder than understanding concepts
Maybe it depends on the person? Memorizing formulas might be your weakest link, for example.
Nope wrong. Situations variable constants making certain shape if all elements in place making certain way then apply this
If you learn one thing try it simple way different ways then shortest way for different scenarios then find common ground, revise that puzzling step and it's solution
I'm an Unreal Engine game dev working on a large project, and documentation and commenting is SOOOO important, it's everything. All code is at its core is a communication tool, so one of the biggest parts of being a good developer is communicating as clearly as possible.
Do game devs need to learn design patterns? I feel like following SOLID and clear-cut design patterns would make for good code that is already self documenting, but maybe comments would still need to exist. I haven't learned design patterns yet as right now I'm learning multithreading, and I heard design patterns should be one of the last things an entry developer should learn, as it can get pretty complex. Would you agree that learning design patterns is not easy - that some can become complex? Or should I learn it immediately - asap...?
Really! This is very bad, commenting should be the last resort.
But I do agree with the documentation.
"All code is at its core is a communication tool" completely agree and which is why comments should only be for things you cannot capture through code, i.e., why something is implemented in a certain way vs "how" its implemented.
Focus on Very clear variable names, this isn't the 1980's and you are not character limited. m_Debug_Iterator is not a variable name it's gibberish or obfuscation, variables should either be adjectives, verbs or objects (language sense). Then use xml summaries etc to document your methods. Only comment choices you can't explain with your code inline, everything your can't fit in that like program logic, document it. I was very lucky to have a talented and pedantic lead programmer actually teach me things especially regarding making code understandable, still learning but it has been invaluable experience.
In school comments were just as important as the code you would loose so many marks if you didn't comment.
I did a course on Udemy, I created my notes in a document. Since I forgot stuff and tricks. I have to again go through the video. Now using a document my speed to catch up is instant. It is real gold. I don't mind the time it takes. It is worth the effort when u take a break for a month and forgot what that class or syntax do.
Totally agree.
May you share with me document ? Plz
same for me,, some people need it, as it helps you stay organized, and worry free, cause you've got everything written down, your own personal stack overflow.
That's exactly why I started writing comments. At first I didn't do it and it happened to me that I would forgot how part of my own code works. Since then I started writing comments, even though I should be writing more comments according to this guy, since I am still a beginner.
Even before watching this video my preffered option was to comment the code than to take notes but I still do take notes of some things, how some things work.
I’m glad I caught this video. I have been self teaching myself and have been taking notes on a 5 subject notebook. Half of the notebook is filled and I’m not even halfway through my course! I will definitely take your advice and comment more on my code.
How's it going now?
You should take notes on things that don't come up often, but things like loops, vars, functions, etc should all be learnt by muscle memory. That isn't the stuff you should have to google.
same here. Take my advise, never copy a full code from your source. Let your hands get used to typing codes, it worked for me.
Wait until you get back to your notes in the future and you don't understand sh*t about what you wrote no matter how well you wrote it.
How's it going now??
Your videos getting better and better every day.
Thank you very much!
0:58 💡 Comment your code extensively when starting out to build the habit and improve understanding.
4:30 💡 Write documentation for each project to showcase your skills and develop good habits.
7:12 💡 Commenting code and writing documentation are skills that will benefit you in the long run.
10:45 💡 Employers value well-commented code and thorough documentation in a developer’s portfolio.
Key Insights
💡 Commenting code extensively helps developers understand their code better and explain it to others.
💡 Writing documentation from the start builds the habit of documenting projects and is valuable in professional settings.
💡 Commenting code and writing documentation are essential skills for developers, especially in team environments.
💡 Well-commented code and thorough documentation make a developer stand out to potential employers.
💡 Learning to prioritize code commenting and documentation over note-taking enhances learning and project building.
💡 Taking extensive notes can be time-consuming and may not provide as much value as hands-on coding and documentation.
💡 Memorization is not crucial in coding; muscle memory and practical application lead to better retention and understanding.
For me the taking of notes reinforces the learning more than reviewing the notes later
Are you taking notes while you're learning to code? Let us know in the comments below!
Not anymore after this video lol 😂 thanks! I’m on js now
Yep, something like that. I 'm doing the FCC so I download each answear and comment it. So when I'am building and dont know how to, just search the file and read my comments. Also each line of code from FCC I rewrite it in VSCode for practicing.
I need mentor for my coding journey I learn c then data structure now I m learning greedy algorithm I know c++,html , css little bit too but after completing dsa should I go with java or c++ ? help me out buddy
Yes, I’m so used to learning this way especially coming from a science background. Your advice makes great sense! Thank you!
HEY DORIAN! I've been in this channel since you have a small subs. Can I ask do you post you videos outside like FACEBOOK to increase your views or RUclips just got you through Algorithm? sorry for the non related question :)
When I saw this video, I thought the title was clickbait, but since I take a ton of notes, I decide to check it out. And I have to say that this is really good advice. I realized taking notes has made me spend twice as much time to learn something because I have to write it down in human language, which is hard. It helps you retain more information but you spend too much time in the process. The worse part about it all is I never go back to my notes. The comments I make on each code line ends up becoming a better reference point. Absolutely sound advice! Thanks for sharing, Dorian. Subscribed.
When I started I took a lot of notes and have cut way back as I feel more comfortable working with the editors, languages and all of that. I use index cards to jot down quick reminders and notes as I am learning something and just keep them nearby, and as soon I don't need them anymore I toss them. I really like the idea of commenting your code and making documentation for your project, good thinking to build those habits and get the benefits of note taking all in one. I am going to make the effort to do this from now on. Thank you so much for the video!
Keep it up and do what works for you. Definitely can't go wrong when you start building good habits early in your learning!
This is a great tip! Like coding flash cards, love this idea and makes it a lot easier for note takers like myself to have a quick reference in your own words.
Simply when you're starting at coding as a beginner u need some notes...but once speed up and running you might not need them...go with comments and documentation...
My 2 cents as a senior developer. This is a good starting point for juniors, but as time goes on (maybe 1-2 years or more) you will understand that it's better to write clean-code and name identifiers correctly (this comes with years of experience), and you won't need comments, they will slow you down because they need to be maintained just as your code does.
Quality code are the best "comments" you can possibly write.
@Ryan Tandy No advice is "final". If you think that you need to use comments in your project, DO IT. Comments will always have a place in our code, some things can only be explained by comments and if it makes the team happy, even better.
Do you mean coding according to whatever style guide is used on the project?
@@krillansavillan Yes and no. Sry for the riddle, but life is always about balance and change.
If you have a good company you'll have style guides and standards per company then per project, but it's ok if you have only standards per project. Who decides the standards? "The TEAM" - All the people involved in the project. The interesting thing is that standards can change and should change with time, because the team changes (people come and go) and also because the people in the team get better with years of experience. (programming as a practice also) So yes, code to the project standards, but don't be afraid to change the standards for the better when you guys feel like they need a change.
@@TricoliciSerghei thanks Serghei, I appreciate the response. Totally get it how it's not just black or white.
@@krillansavillan Glad to be of help. Cheers!
While learning, I absolutely agree. The problem with comments in the workplace is that -- code gets updated but comments rarely do so you wind up working on code where the available comments are no longer applicable. Companies prefer code that is self explanatory through descriptive class/method/variable/etc names which act as comments as you're reading the actual code. That is a GREAT habit to form while you are learning that transfers very well to the workplace.
That's fine if the company keeps all of its history of specs because sometimes you have a sleeping bug that can pop up 10 to 15 years later and you see what the code does, but it doesn't say anywhere what the business rules intended it to do. Sometimes, the person who worked on it originally doesn't remember doing it. If the full history of specs isn't kept, the comments are the next best thing.
Gonna have to disagree-ish; in an enterprise level code base, part of good coding practices along with readable naming conventions is updating the comments and aptly naming commits.
Have worked on large scale enterprise systems. Well named functions/variables/etc. is the baseline. Good comments are paramount to maintaining a large codebase. Code often cannot read as prose nor explain intent.
The GREAT habit is updating any surrounding comments when you touch the nearby code
I've worked on systems where the people who had designed it were self taught. The problem was it showed in the code. The designers clearly didn't know the difference between a goto and a gosub, the applications would behave in ways not intended because they didn't understand the memory stacks. I've seen over-use of small variable names as if the computers used still had 2k of memory and there was very little in use of comments which would describe what the code was supposed to do. I've seen over two pages of code in some programs that was no longer reachable by the code that ran but it wasn't commented out so a person could waste time reading non-accessible code etc. This bad coding could have been prevented by having the programmer reading a few books on good coding practice.
@@HepCatJack I can agree to some extent, however I am 100% self taught where my field of study is within C/C++ and I dove into 3D Graphics Engine Design, Hardware Emulation, and more. I taught myself all about the entire process. Not just on the software side of things, also at the assembly level, the compiler and linker or interpreter side of things, I learned how to use the debuggers. And it doesn't stop there. I even dove into and researched into OS design, as well as ISA or Computer Architect Design. I mean building a basic CPU from Logic Gates! There's a lot more than just the stack frame and stack pointer involved. You have calling conventions, name mangling - symbol tables, virtual function tables, utilizing the cache, understanding the branch predictors especially with modern systems that implement out of order instructions, and more... and the list goes on!
If it involves a Circuit and Software, I'm game about learning how it works and how to instruct it to get it what I want it to do! I even started to pick up a little bit of Python and some JavaScript when I started to learn about A.I. Algorithms, Neural Networks and Machine Learning. It's not just the programming, nor the data structures, the algorithms, Big O, etc. it's also all of the math that is involved from basic Algebra to Linear Algebra and Vector Calculus, Boolean Algebra, Lambda Calculus and even Number and Information Theory!
I have had some college courses in the mid 2000's around 2005-08... but none of my courses involved computer science... the highest mathematics I had was Calc II and Physics II. All of the rest was all self taught! I believe the comment you made can be self evident in many cases sure, but I also find it to be very stereotypical.
In all honesty, it comes down to the individual and how they apply themselves! Some of your best engineers or programmers don't have any "formal education". They are smart enough to figure it out on their own. I would tend to think that the stuff you are seeing may not necessarily be from someone who's self taught. It could actually come from someone with a bachelor's degree, one who took it and just barely passed with a high C average about a 2.8-3.2 compared to those with a 3.8-4.0 GPA... I'm not claiming this is so in your particular case, I'm just stating that it is highly possible, even highly probable!
They could have either just happened to do well in the interview or got lucky as opposed to someone who knows the entire workings of a computer system as well as the different layers of abstractions, the different paradigms, idioms, etc... One should never assume something based on a stereotypical mindset without having more information, more details and proper context! Just because there's one bad or poor apple doesn't mean the entire orchard is bad!
Why do I say this? Throughout the years, most of your inventions came through Garages! And many of those people didn't even graduate from high school! It's almost analogous to the old saying, "never judge a book by its cover!" From my own experience, reading books can be good and helpful and do make a good reference, however, one of the best ways of learning is just by doing it through trial and error, finding what works and what doesn't, finding your mistakes and fixing them. A good programmer, software developer, computer scientist, software engineer, etc... isn't based just on their ability to "write source code". No! What makes them good is their ability to Debug It! The most tedious and dreadful aspect throughout the entire development cycle! If you can debug it! Then you know what's going on under the hood!
Tips broken down into steps:
1. Comment on your code, build this habit.
-The amount of comments at the start should be commented to explain what they're doing. As you get better, this will be needed less and less. Eventually you will only need to comment on important steps (this will be intuitive).
2. Write documentation.
-Every project you start should start with a readme file. Learn basic markdown, many markdown cheat sheets often. You'll build the habit of starting with readme files. See how other apps and technologies write their own documentation. Expand and develop this skill as you learn. Potential employers will look at github documentation will value this. A nice portfolio will have applications with explained comments and documentation.
Thankyou
thanks bruh, you saved me 10 mins.
You're a legend 🙏
I don't really understand what you mean by the 2nd one, mind explaining more to me?
😶
@@emmancrafts. I'm still relatively new to building my own apps but the best examples can be found on github.
To put it simply, whenever you look up or download someone else's work, there are usually readme files that come attached with it. This is documentation. Say you were building your first app, like a food suggestion app. Your documentation would be the readme file attached to the app, explaining exactly what the app does and what its purpose is. To be even more thorough you could also explain what skills you were trying to polish by building this app.
As you build your skills, your documentation should also become clearer and more intuitive.
I learned the essence of how to properly write your code and commenting when I first watched CS50. They'll grade your code based on its functionality and its design and then I also learned that the most efficient way for me to write my code is creating the pseudocode first. Understand how you want your program to run, then for each line of the pseudocode, write the actual code which will make everything else really easy.
I feel like this mostly only works when you're solving algorithmic problems. If you're writing some layout code, or some simple stuff, it may be overkill
@@chizonwazuo Yes, since most problem sets there are related to algorithms.
Thanks dude I was getting overwhelmed by my notes! Just going to go through the courses and trust my muscles from now on!
I had a high school programming teacher back in the day who really emphasized comments. Especially early on, he would give us assignments requiring us to write nothing but comments or pseudocode first and submit it, then go back and write the actual code. I think it helped me a lot.
Back in the day? Huh
I'm stuck at high school programming teacher ....some people are very lucky😂
Great vid! Two benefits I gained from taking notes. They helped reinforce things as I learned, and I was also able to look over them later on in my career to measure my progress and understanding because what didn’t make sense before made sense. I was able to confirm what I understood by looking through my notes and explaining the concepts to myself and others, whereas I could not do that early on.
Thanks for that, I started thinking way more critically about my code when I started using annotations, this is a really good tip.
More one subscriber, I'm a Brazilian so I don't know much English, so thank you so much for put subtitles. Your voice is very clear and easy to understand. I have a lot of notes about React basics that's I almost never reviewed.
Great video. I have been learning to code for about two years now and I spent alot of time taking notes. I think it helped a little with retention but overall I think it's been more of a disadvantage because: 1.It adds to the time it takes to finish a course, tutorial or book and, 2.It stops you from focusing on applying what you learn. I have not done any coding for about three months as I ended up feeling overwhelmed and burnt out. I'm starting to get some energy and motivation back and I will start back up again. I think the key here is to keep it simple and straight forward. Its important not to overthink things. If you don't understand something or copy it, that's ok. If you keep doing it you'll understand it over time.
Great advice, thanks.
You should take notes. The point of doing a course is not to get through it as quickly as possible. It is to learn as much as possible. And no taking notes does not take your focus off what you are learning. It actually helps you.
@@JustinDAMusic Did you watch the video entirely ?
I am about 6 weeks into learning how to code on my own and I have been taking a lot of notes. I did realize that memorizing was not helping me at all. In fact, it was time-consuming. I just started getting into the habit of commenting about 2 weeks ago and honestly, I saw myself understanding code blocks better. Definitely need to get into the habit of documentation now. Thank you for this!
Hey dude, how is it going?
True, try to memorize things is REALLY time-consuming.
Would you let me know, after a year how much this video helped you or is it helpful. I started learning web developing and when it comes to note i had wasted over 2 days to find how to note. Even now s didn't find a way for note. So, i wanted to take note traditionally (with pen and paper)
One for the algorithm.
Your videos are getting really good man. Keep it up!
Thanks, will do!
This video came up on my suggestions and I'm glad because I always commented on my code when first learning , and still do! great vid.
I'm currently learning Javascript and agree with you. I only note down key takeaways and concepts as I go along.
A thing I have picked up that has started to help me remember things better. Being a complete beginner with no code experience ever. Is to explain the concept of what you just learned outloud to either yourself or something like a toy next to you. Pretending that thing is another person that you have to teach what you just learned. Yeah it really makes you realize if you learned what you just did, or just went through the motions.
Man... Just starting learning coding. First day was yesterday. I got to the end of the first days lesson, and I realized I had not taken enough notes or the correct notes. And then... I come across your video today. Ha! Genius sir! thanks!
An unfinished Rubik’s cube bothers the shit out of me lol. I finish every one I see.
I cant imagine how many careers this guy has like doctors, teachers, plumbers, step father...and now he is a coder dang
don't forget Pizza guy.
I remember taking a lot of notes when dealing with Data Structures and Algorithms. In fact I still have them by my desk. The only reason I was really pushed to was because I wanted to see how the code worked next to a picture of what it was doing. This was really helpful. But I would probably agree with you in the fact that being able to comment your code helps in the two ways. 1) People can understand what you are doing. 2) You understand what you are doing. Great Video!
I'm taking this cs50 class and I've definitely been taking notes, I actually found this video looking for things I should’ve studied before taking the course. Thank for he tips.
Notes may be a waste of time depending on how you're planning to use them. "writing once to remember and never read again" is indeed bad.
You have to take notes for yourself in the future, not yourself right now.
My current approach is to use Markdown (with Joplin to manage notes by "Notebooks" and tags, one note per book chapter) to note everything I don't know yet or will surely need quick reference to in the future. And if I ever needed to reread a book, rereading the notes should be enough.
They're the step between the book and the cheat sheet.
As for comments in the code, I don't fully agree.
Drowning the code in a sea of comments can have the opposite effect so I'd rather organize the code in a way so that anyone could understand directly what's happening and why, but it's easier said than done (applying the "Clean Code" rules).
If your language has widely accepted header comments such as JavaDoc or PHPDoc of course it's wise to use them, in no small part to help your IDE help you back.
Thank you for the advice! I'm confused when taking notes while following the course. Started to learn swift as designer & I thought I should write down the terms I didnt know like array/strings and such. Should do more on commenting!! 👌🏼
Same here o 😂😂😂 just frustrating
When I was learning I was writing notes. I would learn the specific thing to the point I could explain it in a paragraph or half a page of notes. I wrote it as if my girlfriend who has no programming experience could read and understand it.
I think that definitely helped grasp some abstract concepts. If you can explain it simply in your own words, you understand it. I haven’t looked at the notes since, but I knew I wouldn’t. They served their purpose.
Notes are a must.
Would you let me know, how to take notes . I started learning web developing and when it comes to note i had wasted over 2 days to find how to take note. Even now i didn't find a way for taking note. So, i wanted to take note traditionally (with pen and paper). I still didnt start to make note after watching this video. 😢😢😢
This is super valuable advice! This even can be applied to experienced software developers learning new programming languages or frameworks.
As a SysAdmin, I greatly appreciate when my software developers write comments in the code. I don't know code well but those kind of comments really help me when I am troubleshooting an issue.
This is similar to an approach I saw in a video about math. The person explained to not write out the code itself, but explain in words the process one needs to follow to get the right answer. These are the comments that could help someone really learn. Good video!
Im starting to think that you are actually reading my mind dude. 😭 Great video!
hahaha 🤯
Thanks for this video. I'm learning right now and began taking notes down immediately since, like you, I came off earning my CompTIA (Network +) so took the same approach. Knowing it's better to focus on the practical aspect and not to kill myself jotting every detail down for the sake of memorization has encouraged me to focus on repetition and google if anything if I get lost. Thanks again!
I spent my first year studying frontend taking notes college ap style, with highlighters and bullet systems. In a way it helped me retain the basics (that should be known/memorized) but after a while it reallyyyyy hindered me time-wise and as I was taking more notes and practicing less, I noticed that they weren’t helping my comprehension at all so I abandoned note-taking, as great at it as I may be, it just isn’t as useful for learning and applying code. Thanks for the tips about documentation, that sounds so much more proactive and useful in the long run.
Excellent tips, I couldn't agree more. Another habit I started implementing is creating my own cheat sheets. Great time saver and helps structuring some of your coding habits.
Awesome and a right video for me, thank you @Dorian Develops
I did this too. When I was learning my first few months, I had my notes app and iCloud full of code snippets ...it got messy lol.. later on I learned to write comments. I'm glad you bring this up for those who are starting out.. btw great video production quality ..love it 👍
It's something I think that we all do when we're first learning. I'm old and much of my early notes were pen and paper 😂 that was messy as well. Had to step up the production values to try to reach a wider audience. People really like "entertaining" video.
it's good to have screenshots and/or gist snippets
Love the idea of using the comments as the notes. It forces you to write very concisely and keeps it with the sample code. +100 great idea, thank you.
Thanks Dorian for the brilliant advice! I have been struggling to find an effective note taking system and find I go back to older projects to figure it out. Comments would've made it soo much easier! Will definitely be looking into how to write documentation.
My method is this: I draw an object i want to build or work with, I describe all the variables on it. Then I define algorithms for the object which I encapsulate as methods on the object. Once all these are done I build a test suite and test all that. Once done I move everything to objects own folder, that is the drawing, the class and the tests. That is my, reusable note. Finally, I have one drawing with all the objects I have ever developed, worked with and tested. Every time I have a problem I look at these objects and think which one might be a solution to the problem. This is not a traditional note taking, but something that I developed on the basis of how I solve problems mathematically. You need a drawing, you need all the variables and you need algorithms clearly described.
Hey might giving an example of this ? Like an example of one drawing you did with all this info.
Your strategy seems really interesting and a good approach to understand
@@djamz3793 Imagine a stack. It is a container with a pointer variable called top with value -1 and a variable capacity, which tells you how many items you can put on the stack. Open inkscape or other program for vector graphics drawing and draw a box with open top, call it container, then draw a red horizontal arrow right at the bottom of the box, to the right of it write top and set the value of this variable to -1. At the of the box draw another red arrow and at the top of it write capacity and set it to how many items your stack can have. I use orange color to describe all the parts of my data structure that normally would be considered variables. So box, top and capacity would all be orange. Next to your stack draw some blue boxes and label each of them item. These are items you will be putting on your stack. Once you have your basic structure you are ready to draw how actions will affect your data structure. Lets say you want action called push, which is normally used to put an item on a stack. Copy your basic data structure and paste it below. Label it push(), Draw a black arrow from one of items to point into the box. Then draw a green vertical arrow under the red horizontal arrow next to variable top. It shows that value of top changes from -1 to 0 as you push an item on the stack. This is a very simple example of how you might visualize things. You should do similar drawings for other operations defined on the stack like isEmpty or pop. It does not really matter how you draw. What matters is, you should use colors, make all the variables available for change on your data structure and be precise how they change as you manipulate your data structure. Sometimes it takes several copies of the basic data structure to depict what happens as you sort or do some other thing. You might say, this is too time consuming method. It might look like that, but remember that you do it once. Once you have these drawings, your code based on it and tests you are set for many many years. When you need a quick reminder how things work, you take a quick glance what you drew and you know immediately. Your code should be based on your drawings, and your tests on your code. This is nothing different to what you would do while solving a maths problem. Drawing gives a nice face to programming and helps to define classes and actions on them very cleanly. On top it is an extremely pleasant part of coding process. Finally, you are left with something that you can always come back to for a quick review. Finally, once you have drawn a couple of things, you have reusable components, like arrows, items, containers, you can use to draw other things quickly. Once you have started with this it becomes a habit, one which is invaluable when you have to deal with a complex data structure with many moving parts ... in fact, when you see that there are too many moving parts, it is time to separate some parts and move them to a different drawing. Your drawings should have no more than 6 moving parts as your classes should not have more than 6 variables in them. Hope this helps.
Solid. Thank you. As I move forward building my site, portfolio, etc... this will be the heart of the effort. Thanks Dorian. As usual, knocked it out of the park.
I thank you for being real about taking notes isn't necessary for anyone cause I would write notes but at the end it end up either lost or forgotten.
This is THE best video on coding, hands down!
Thank you man.
Commenting your code and doing practical projects are much more valuable than taking notes when learning to code, I do agree on that. However when you are learning new concepts that feel abstract I think it can be valuable to take notes or write diagrams to make more sense of things. For example: The event loop, or wrapping your head around what ORM is or how global state manager works
I take notes on a notepad , I did feel exactly what you described, not sure what to and what not to note down, going to switch to comments! And only note down stuff I really can’t get into my head ! Love this video, thank you.
Very glad to see you comfortable back in your own workspace bud. looking forward to the future content.
Definitely feels more comfortable! I will be trying to make all my new videos better and better! Thanks for watching!
@@DorianDevelops Pleasure mate
the most practical guy i have heard on this platform
Wow, this really works. I am in a bootcamp learning javascript. I use comments in the code instead of notes and my comprehension has increased tremendously. Great advice that I will take with me into my career.
This is the best advice ever! Really is very helpful. It saves you a lot of time and allows you to really put in practice what you've been learning.
Personally for me, taking notes helped me remember things and concepts. Whenever you're struggling to remember something, just a quick look at the notes helps me remember but whatever works for you, use it.
Same... Until my teacher kept telling me to just google... Forgot something? Google. Google remembers your searches too...
@@mcwally514 But sometime taking note make me easier to renember it
I have a horrible memory so takibg notes is probably the right choice here
Yeah I'm getting overwhelmed with all the jargon. I think I'ma start taking notes
@@mcwally514 it’s quick through googling but it’s not the same as taking your note.
If you are still young brain, do notes , don’t take shortcuts.
Most of our teachers are already mature and they got so many more things in life in their mind.
So, they don’t want to study anymore. Thanks to google , it’s a their solution
Trust me!
My experience of taking note is make me more *indulge* and connect to what i’m doing.
Taking time of doing something is actually make you more associated with what you are doing
So it gains confidence in your own field.
So do anything make u happy, dear.
I do digital note through Ms word or notion
I just go through Table of content or Find
It’s more faster than handwriting and i still can do notes,
Yo, thanks, bro!
It's funny how simple good advice can be sometimes. :)
Even though I learned to comment and document my code faster than other developers I got stuck on taking notes for far too long and even as a developer, almost 5 years into my career this is still a blocker for me since I love taking notes.
I'm busy looking for new jobs and I know that I'm going to have to learn some new tech and pick up the pace so this was a good pointer for me and I can't wait to get started and get productive!
I think the main takeaway for me here was to learn by writing more code and not to focus so much on writing better code.
Peace and Love from South Africa!
This is a gold nugget advice I started immediately implementing it, luckily I am learning right now
This is the third of your videos I am watching and it is on point a question I raised during my own research and learning periods. Thanks again for the good advice!
Glad this video showed up, I never used to use comments for this. I took alot of notes, still have tons of notebooks filled with code notes.
Thank you. I’ve been taking notes (Lololololololol) but what you are explaining makes perfect sense...
-
I shouldn’t take notes like a regular person in English class, I need to take notes as a coder/ software developer.
He is so honest in every single thing he said in this video because, I as an upcoming programmer I notice how I learn fast and how I don't. And its quite the same way he just explained
Thanks, Dorian! I have been struggling and think this will help me immensely!
less clickbait trash talk and more useful information, love the vid
Your advise makes a whole lot of sense. Thanks for sharing your knowledge!
Thanks for you honest content that get direct to the point and with alot of informations that can save any one like me who start his journey learning to code . I like to watch your videos and i hope you keep the good work up . Always waiting for the next videp 👌👍
I totally agree with you because I realized all the notes I've been making from my code I never had time to go through it. So it was a total waste of time and energy and an overkill.
Coming from the education industry I almost bypassed this, but coming from the education industry
I had to take a look:) Glad I did. I'm commenting the hell out of my entry work. As I was doing it I figured out where some of my errors were. Thanks!!
Yes Dorian! I add too : Make your notes your architecture and design (video coming soon from me on this). Too often I see entry and mid developers not know what they're designing. Jot down your ideas so can explain and it makes you think about it. This can be small charts and relationships that you jot down.
You are so right. I am taking a Python course and have taken a ton of notes. I can not make heads or tails of my notes, and I can't find a note when I need it for practice problems. Commenting my code would help me better understand what I am doing. Thanks for the tips!
thanks man, yes i am stuck of learning how to code because I'm taking so much notes in order to remember everything
I love to take notes because while writing the notes along, it helps me to understand the code and what it does. And if I forget how something works, I can refer to it later
Thanks for this. Realised it the hard way but now I'm becoming more laser focused on just practicing coding and focusing on communicating what's going on in the code.
Brilliant and eye opening video. Thx!!
spot-on video! I took my first introductory course last semester and I wrote every single thing down! I never read them or looked at them! I ended up taking more time writing notes than actually practicing. It was very detrimental. They aren't beneficial in any way! practice! practice! practice!
Thanks, man. This was exactly the video I was looking for.
I'm currently taking my first web dev course and I've been taking notes on Evernote. At first they were unorganized and messy but I've found a way make them more organized and easier to read. Now I do find that writing (or typing) things down does help me remember them. I also like to explain what my code is doing in my notes, to myself when learning concepts that are more difficult. It helps me to understand what I'm doing and why. Plus, since I don't have the time to learn every single day, (I really wish I did...) I have gone back to reference something I learned before and it's been helpful. BUT.... I do feel like I spend a crap ton of time writing notes. Even on easier things I still try to write things down for later reference. But as I'm doing it I'm thinking, "should I even be taking notes on this? Well what if I need them later??" I swear I've spent like well over an hour going through an 8 min course video because of all the notes I'm writing. So I am deff going to try these suggestions you made. Especially commenting my code. I've already thought of times when that would have helped me a lot. I will also be researching mark down and documentation. Thanks for the tips! Subscribe and a like from me 👍
Bro I think the same thing not only that but do you go back and look bc I just hop on take my notes and hop off
i want to ask you after one year , what is the best way to learn ? because i have the same problem of you now , your advice will help me a lot
Would you let me know, after a year how much this video helped you or is it helpful. I started learning web developing and when it comes to note i had wasted over 2 days to find how to note. Even now s didn't find a way for note. So, i wanted to take note traditionally (with pen and paper). I still didnt start to make note after watching this video. 😢😢😢
I'm learning about coding from basics, while i'm thankful for the info and help on the commenting and documentation( really helpful) , my way of learning includes taking notes as well. Its the best way for me to learn anything. I have tried various ways and this method sticks the lessons in my memory , need to practicing it too. Its easier for me to understand and learn this way.
Same here brother
Really appreciate the advice I’m glad I found this while working on my first project thank you
Yea that's so true, that's what comments are made for, we gotta show gratitude for comments, they aren't syntax, and programs don't understand, but humans do, that's why comments are so special. Is special in such a a way, after this video, I'm starting to feel more gratitude for comments. Thank you.
Bro first video I found is your video about this topic. I am still a beginner and I am currently taking a course, but I was really confused about what exactly should I take note of since all of them kinda look important, thanks a lot for the video. Good luck on your journey
Wow, this video is really what give a me solution to my frustration for 4years of learning to Code. 🎉❤
Our greatest glory is not in never failing, but in always getting back up when we fall.
I'm very new and the thing that has helped me is referencing my older code. I haven't taken notes and have commented a little bit, but I've found myself recalling past projects or algorithms that I've done and referenced those files. Idk if that's an efficient way to do it for learning but I do like the idea on comments to help myself walk through a problem/ segment of code. Thanks for the advice!!!
A great video! Good tip on the comments! I still don't have the developer mind and writing comments to explain everything will help me understand code for sure. I often write code without fully understanding it. I need to level up! Thank you!
I am currently in my senior year of college in Computer Systems. When it comes to the courses where I have to do hands-on stuff, I usually tended to note down ANYTHING I am forgetting and think I will be able to remember that via memory XD
That couldn't be farther from teh truth. I feel as if I am in a loop where I would spend time to understand a topic for a specific Language (JAVA, HTML, PYTHON, etc.), I would take notes on their related topics, I push it aside for a few days to even a week, I forget it all: Rinse and Repeat ; . ;
You practically just read my mind, man XD Thanks for the advice.
Thank you. I was just about to buy a $7 coding notebook and everything you said makes perfect sense.
Yes I’m took the route you took. I started with CompTIA also. I felt like I had too take all these notes, but it honestly fells daunting. That why I click on your video because I feel like the notes I’m taking are a waste of time. I’m currently a beginner coder, and currently learning on Codecademy. I am eventually going to a affordable boot camp I’ve discovered soon. I will be watching your content also, thank you for the tips.
very fresh info i get from this video, which i dont get from others. Thanks!
MAN. The most satisfying coding video so far. 😀
I just a few months ago began learning to code. I did this as well with writing notes on paper while trying to learn. Switching to just writing comments on something you dont understand is is definitely way better.
lol I thought comments was how you take notes! Whenever I'm following along with a tutorial I'll explain what the code does so I can look back later & understand it again.
I'm certainly not doing as much as you recommended though I'll ramp it up. I started learning how to code a while back, but I got bored & gave up. I'm giving it another go with the goal to finish the whole course no matter what & then use those skills to complete a personal project.
So far I've watched 2 videos and you've already saved me months of work
Very helpful! I take notes on concepts and comment in my code. I hadn't considered documentation. I will look into how to do that.
Rather than making notes I made a cheat sheet to reference the more complicated things when I was coding especially when I was learning new concepts.
Hi Dorian, I agree 💯
As a mid-career engineer who loves to write (I've taken up technical documentation as a secondary skill too), I get caught up in writing notes. I have taken notes, also to help the future me when I'll be teaching someone else (I teach too), but it takes a while and the context switching between code and notes is draining.
Thanks for sharing. Simply commenting as I go and using the comments to write lesson plans is a flow I can get in 🚀
Everything you say here makes a lot of sense and it is a great help!
this is why im loving discord so much more, i have my own little personal learning server and jot things down in which i can just go into and remember later, tho this helps a lot too and ill have to remember it from now to apply them
Great and RELEVANT topic, I will waste my time taking notes and this was great. Thanks, man!