How To Learn Fast And Efficiently (as a software engineer)

Поділитися
Вставка
  • Опубліковано 22 сер 2024
  • In this video, ex-Google and ex-Facebook software engineer Clement Mihailescu shares four techniques to learn coding faster. If you're wondering how to learn programming efficiently, use these four techniques.
    Video on how I learned to code in 6 months and then got into Google: • How I Learned to Code ...
    Prepping for coding interviews? Practice with 85 video explanations of popular interview questions and a full-fledged coding workspace on AlgoExpert: www.algoexpert.io (use "clem" promo code for a discount!)

КОМЕНТАРІ • 649

  • @kevincen5736
    @kevincen5736 4 роки тому +552

    Summary:
    1. Don't spread your attention to a lot of things; don't try to get profoundly good at everything, sometimes better to just focus on less
    2. Know which things you should focus on and be good on; i.e. recurring themes, concepts
    3. Do it everyday (frequently), will make you improve faster than if you did the same number of hours more spread out
    4. Don't put 100% of your trust into someone else. Everyone is different, if doing something others recommend (for quite a bit of time) makes you worse, then do your own method. However, don't just ignore criticism, sometimes it's free info, but just have a grain of salt in case it (definitely) doesn't work for you - used 'definitely' in case people just ignore criticism and say 'it doesn't work for me'.

    • @MrChris7582
      @MrChris7582 4 роки тому +3

      lol howd you know it was 2am

    • @EdgarSanchez-ss9qi
      @EdgarSanchez-ss9qi 3 роки тому

      What would we do without summaries? Imagine a blockchain-based UA-cam where each like to this comment is a tiny fraction of crypto being sent your way :)

    • @fabricio-garcia
      @fabricio-garcia 3 роки тому

      😎

    • @johnc5258
      @johnc5258 2 роки тому +2

      1. Find out what you're interested in
      2. Practice it
      3. Use many sources

  • @MaratAmanzholov
    @MaratAmanzholov 4 роки тому +1045

    1. Buy a white board with dry erase markers, and use it for brainstorming and practicing whiteboard coding.
    2. The most important: when you learn a new concept (a new algorithm for example), try to explain it to someone/something (yes, you can find dummy to practice on), and if you have struggles explaining, go back, re-study, and try explaining again. Once you can explain the concept in very simple words, you got the whole idea.
    3. Doesn't apply to learning, but more to solving coding interview questions: once you solved the problem, try tweaking and changing a problem statement and solve that new problem. Helps also sometimes.
    4. Think outloud. Ask questions to yourself and answer them, also outloud.

    • @clem
      @clem  4 роки тому +107

      Couldn't agree more with points 2 and 4. I actually wanted to add point 2 to this video, but somehow forgot!

    • @anuragagrawal2317
      @anuragagrawal2317 4 роки тому +27

      5. Be smart! Don't trust new grads with no interviewing experience to give you interview advice (and charge $85 for it)

    • @FirdavsiWebDev
      @FirdavsiWebDev 4 роки тому

      Marat Amanzholov nice but there's more to learning

    • @sintuboro4224
      @sintuboro4224 4 роки тому +1

      is it only me or are these really vague ?

    • @atheismop2758
      @atheismop2758 4 роки тому +20

      For point number 2 ....if no one is agreeing to listen to u then....make a video of yourself explaining stuff....and watch it as a revision tool.....u won't have to go through the books or notes again & again😉

  • @SajeelCodes
    @SajeelCodes 4 роки тому +760

    Learning becomes automatically faster when you get interested in that

    • @clem
      @clem  4 роки тому +117

      Find something that you're genuinely interested in, and you'll indeed learn it a lot faster (likely because you'll be willing to put in a lot more hours into it).

    • @SajeelCodes
      @SajeelCodes 4 роки тому +17

      @Dazzle Daze Girls lol

    • @ginicholas4322
      @ginicholas4322 4 роки тому +3

      Yeah I believe it has something to do psychologically with having a open mind to being able to receive and store that information. There were times where I'd spend hours/days/weeks/months on learning something but because I wasn't enthusiastically interested it took much longer to learn than compared to when I'm really hyped about learning something. I also find that caffeine for me reduces the time needed to learn something at least by half.

    • @SajeelCodes
      @SajeelCodes 4 роки тому +4

      @Dazzle Daze I'm actually interested in learning JavaScript. I learnt python and c kind languages. Now want to try a web dev language

    • @bestopinion9257
      @bestopinion9257 4 роки тому

      @@clem And because you are curious and so pay more attention.

  • @lfx2mlfx2m8
    @lfx2mlfx2m8 4 роки тому +51

    Love your honesty and down-to-earth nature, you will definitely reach at least 0.5 million subs one day

  • @fawazaljohani8447
    @fawazaljohani8447 4 роки тому +59

    I'd say project-based learning is the key, make small to medium projects from scratch

    • @rezajanjani7712
      @rezajanjani7712 4 роки тому

      hi, how can i find the best projects for JavaScript and C++

    • @krazyinstinct
      @krazyinstinct 4 роки тому +8

      Reza Janjani “google it”

    • @fsw917
      @fsw917 4 роки тому +3

      @@krazyinstinct very usefull answer, keep doin nice work

  • @AparnaVadlamani1
    @AparnaVadlamani1 3 роки тому +8

    1. There are certain things which can be learned just superficially.(I agree with you)
    2. There are certain things which you should know very deeply.
    3. Do the thing which you want to learn repeatedly
    4. Stick to what works for you

  • @LegendaryGamer711
    @LegendaryGamer711 4 роки тому +247

    Interviewer: Why should we hire you?
    Me: I mastered the card tricks in 2 weeks by watching Clement.
    Interviewer: Congrats, you are hired

  • @faisalahmed9434
    @faisalahmed9434 4 роки тому +38

    - focus on learning the things that actually matter.
    - there are certain things you should know very deeply.
    - if you want to learn something fast, do that thing a lot.
    - follow your own rule, if it works well for you.

    • @Abdi_Akhmet
      @Abdi_Akhmet 3 роки тому

      No...
      You just need to invest more energy

  • @malthaelaoc
    @malthaelaoc 4 роки тому +15

    Great video, Clement! How many hours did you study during your first 6-7 months before you got into Google? What was your day-to-day schedule like, and where did you start? Did you start with first learning the syntax and data structures, and then the frameworks, and then the algorithms? Can you make a video of what you did on a day to day basis? How did you divide your time on a day-to-day basis? Also, do you prefer learning by reading, watching, or a combination of both?

  • @shreyanshsingh2627
    @shreyanshsingh2627 4 роки тому +22

    I was literally listening to you yelling at the camera at 2 AM here

  • @rishisankhla3124
    @rishisankhla3124 4 роки тому +18

    Maintain your curiosity in the subject while learning, then you will never stop learning in your life!!😎

  • @fardinshahriar6404
    @fardinshahriar6404 4 роки тому +35

    I learn faster, when I start doing a project and get stuck, and then learn that thing.

    • @thenon-gaapbillionaire3306
      @thenon-gaapbillionaire3306 4 роки тому +3

      Thats a good point. It also ensures you focus on the things that you really need to accomplish your goals.

    • @levi9731
      @levi9731 4 роки тому

      Yeeah i agree with yoy

    • @unlockwithjsr
      @unlockwithjsr 3 роки тому

      Same

  • @alefalfa
    @alefalfa Рік тому

    "You want to learn something fast? Put in the hard work". Very well put indeed

  • @ryanzwe
    @ryanzwe 4 роки тому +2

    It's amazing how strong your speaking is now. I think it was your first video where I commented that I couldn't stand your lisp (but subbed anyway since I found you on techlead channel and seemed really knowledgable) but now it's barely noticeable! And now your channel Is a lot higher than 100 subs

  • @snlagr
    @snlagr 4 роки тому +9

    This channel can turn into a podcast. ♥️

  • @theguitarplayer102
    @theguitarplayer102 4 роки тому +4

    Yes! I learned the basics of git in just 1 week of my swe internship. This is something definitely not worth stressing OR wasting time over.

    • @Tntpker
      @Tntpker 4 роки тому +1

      You can learn git in legit 10 mins lol

  • @cnerdmahadi
    @cnerdmahadi 4 роки тому +5

    The best of advice from a coder Ive ever heard till date

  • @Max-ot1hh
    @Max-ot1hh 4 роки тому +7

    You're a good guy Clem. Thanks for the videos.

  • @premkumars6510
    @premkumars6510 4 роки тому +9

    use 2x speed to learn from this video much faster and efficiently

  • @mewzi
    @mewzi 4 роки тому +38

    My technique is to learn something as if it's going to kill me if I don't

    • @yashrajbothra
      @yashrajbothra 4 роки тому +2

      And how do you think that

    • @clem
      @clem  4 роки тому +10

      Getting that mindset in can be tough, but if you can get it, it definitely works!

    • @nateo7045
      @nateo7045 4 роки тому +4

      @@clem I hear it works exceptionally well for those predisposed to schizophrenia

  • @zss123456789
    @zss123456789 4 роки тому +18

    first thing, start training your ears so you watch all videos at 2x speed.

    • @jiroaoun9456
      @jiroaoun9456 3 роки тому +1

      Someone said it🤞

    • @HorizonHuntxr
      @HorizonHuntxr 3 роки тому

      I personally do 1.5z and when I watch videos in normal speed it feels so slow now

  • @tharun4896
    @tharun4896 4 роки тому +4

    One best takeaway from the video :
    "If it ain't broke, don't fix it"
    on to the point! :)

  • @srafez9057
    @srafez9057 4 роки тому +3

    Technique 1 and 2 can be combined into the Pareto principle: In a field, focus on a few concepts that can yield vastly more results than the other menial concepts. In the case of passing a coding interview, data structures and algorithms contain the few vital concepts needed to pass coding interviews. The rest can be learned and improved as you go along in your career if you so desired.

  • @devalpha5016
    @devalpha5016 4 роки тому +2

    This is great advice. Yeah, learn every single day. I applying this method in the last 65 days. yeah now I'm a frontend developer

  • @justinburgess435
    @justinburgess435 2 роки тому

    I think this video is a great example of the psychology and requirements of performing at a high level. Clement is teaching the requirements to perform at 'Michael Jordan' or 'Tom Brady' like levels in a given discipline.
    1. To perform at a high level, you must have a high aptitude relative to your peers.
    Clearly, graduating college with a degree in math demonstrates a high aptitude for logic based problem solving. I myself took quite a few high level math courses in college, and I can assure you, only a handful of people out of a given set are capable of understanding math on this level.
    2. To perform at a high level, you must have a deep passion for the field or subject at hand.
    Becoming addicted to a site like CodeWars and performing coding for 12+ hours a day, while building your own websites and going to a coding academy is a great example of letting passion drive development.
    3. Performing at a high level requires ignoring or avoiding roadblocks that slow you down.
    Maintaining due course is pivotal to achieving high goals. Becoming distracted with unrelated challenges delays development, and reduces capacity for learning a skill quickly.

  • @JamesBond-mq7pd
    @JamesBond-mq7pd 4 роки тому +274

    "The day is 24 hours.
    You sleep six hours.
    You need eight hours?
    Just **sleep faster!**"
    Arnold Schwarzenegger

    • @squirrelpatrick3670
      @squirrelpatrick3670 4 роки тому +25

      This is dangerous and wrong advice. Getting good quality and sufficient sleep is essential to learning new skills. I would say it is actually when you sleep you that you assimilate your learning. www.supermemo.com/en/archives1990-2015/articles/sleep

    • @GisakuIkiru
      @GisakuIkiru 4 роки тому +2

      @@squirrelpatrick3670 Quality ≠ Quantity. It's already proved that matters more stuff like circadian rhythm, diet, and your nervous system and metabolism when it comes to sleep.

    • @SirAdrian87
      @SirAdrian87 4 роки тому +1

      Sleep on the chopaaaaaa!!!!

    • @SirAdrian87
      @SirAdrian87 4 роки тому +1

      @@GisakuIkiru Don't know about you but I was never able to get any work done without 10 continuous hours of sleep.

    • @dzk6714
      @dzk6714 4 роки тому

      bullshit quote ...
      You need more sleep especially if you are training hard or learning all day(maybe you dont if you are on steroids cough,cough)

  • @gauravkulkarni6284
    @gauravkulkarni6284 4 роки тому +4

    Thanks a lot bro, I will follow the 3 techniques but I will find my 4th technique now. i haven't found it yet. You are a legend!

  • @krishgusain3959
    @krishgusain3959 2 роки тому +1

    this men don't even need video editing

  • @Mysticana
    @Mysticana 4 роки тому +2

    I whole-heartily agree with your first suggestion with learning some items from more of a high-level perspective without getting too deep in that specific area. My response is a bit long, but I feel it will help people who may disagree on that item have a better understanding.
    I do feel there are certain areas that it is good to do a deep dive on, and others that you only need a base understanding and ARE beneficial to get at base level. There is a large benefit of having a base level understanding of certain areas versus being just being more knowledgeable in a particular area that you are doing a deep dive on.
    I will give two examples.
    1) You are a Systems Administrator who specializes heavily in configuring and managing servers, storage devices, and back up management. Let’s also say that you don't have decided to get that required base level understanding of say Network Security because that is the Network Administrators job. As long as you know how to setup the settings, they ask that is all that matters. The problem is without that base level of understanding you may unintentionally create gaps or vulnerabilities when doing configurations because you don't have that understanding. That gap then is either a) missed and later found the hard way down the road or b) require you to go change a bunch of configurations when found.
    2) The second example is true for many fields, however, let's stick with IT because that is most likely the field many of the viewers are trying to break into. You could specialize heavily in a specific domain within IT or even be a generalist BUT you have minimal knowledge of how the business units outside of IT work. I mean why would you need to know how HR interacts with say HR works internally or interacts with other non-IT departments or how payroll submits their time data to their vendor of choice. That is something they manage and their specialty, why should it matter to me?
    I can speak from personal experience that having that knowledge that may otherwise seem not important can help vastly when designing systems and ensuring that they functionally work efficiently for those various departments as well as find out about systems that could require further assistance that would otherwise not be known. In addition, part of the reason why many companies are not fond of the IT department (beyond basic competency) is because they keep implementing systems that cause problems in THEIR efficiency because when it was designed it took none of their processes into place. In a similar sense that it would go a long way if the average employee had a base understanding of IT to avoid causing the bumps in the road the reverse is also true if when designing systems we had a base understanding of those various departments.
    You of course need to have a scope of where you want to focus your knowledge (generalists can be that focus) and not just try to learn everything but I feel it IS important to branch out on certain areas to learn a base level of certain things and can set you apart from everyone else because many others may have no idea about those areas and you do. I would say don’t be afraid to get that base level, but be careful not to get too far unintentionally, if you feel that it would be beneficial even if it isn’t “standard” because it can help set you apart especially if its not typical because it means you will have that understanding and others will not.

    • @cUser691
      @cUser691 4 роки тому +1

      Thx Mythico... long AND beneficial comment. Appreciate time and consideration you expend to share this

  • @ThatBigGuyAl
    @ThatBigGuyAl 4 роки тому +137

    I bought a Tai Lopez course. I already have all the knowledge.

  • @datboi_gee
    @datboi_gee 4 роки тому +1

    1. TopCoder / CodeForces.
    2. Always be working on a personal project, and always make sure that it's at least slightly beyond your current ability.
    3. When you learn a new concept, practice writing it out multiple times. By this I mean implement it in code, get it to compile, and then maybe the next day start from scratch and do it again.
    These are super simple tips that I found myself using. The first is simplest of all: competitive coding sites are phenomenal learning tools, and is related to tip 2 and 3. A huge part of learning to code relies entirely on having problems to solve. That's where learning is done. You can try to understand a concept intellectually and step through it logically in your head, but it never beats staring a problem dead in the face and being forced into adapting a new concept in order to solve it. These sites sharpen your ability by generating tasks for you, and by accomplishing these tasks you're burning the solutions into your memory.
    The second tip has to do with comfort zones. You'll never learn anything new by doing what you already know how to do. Thus you MUST step outside of your comfort zone and force yourself to learn concepts you're unfamiliar with. Just like the example above, you will learn these concepts simply by being prompted with a problem that needs solving.
    And finally, the third might be a personal thing more than the others but I know at least in my own experience that adjusting to new syntax is a process. First you have to know how to arrange the syntax. Then the next time, you remember the general arrangement but might stumble over specific placement. Finally on a third pass you've trained yourself to nail the syntax. Just like learning a spoken language, you have to repeat those words a few times before they really stick in your memory and can be called upon reliably.
    TLDR always be solving and memorize through repetition

  • @simonhrabec9973
    @simonhrabec9973 4 роки тому +1

    I remember when I decided to stop taking notes at the university. It was so liberating. I could just focus on what the teacher says, ask questions and really think about the content. But I needed the professor to give us some materials so I can go over it to do a review later. But not giving people any material and forcing them to rely just on the notes they have written during the class is stupid anyway... Thats why I hated highschool. I was not a student, just a typewriter.

  • @BiancaAguglia
    @BiancaAguglia 4 роки тому +19

    I love all four tips: they are spot on and super useful. Still, if I had to choose one as my favorite it would be the last tip about learning the way it works for you. My take on that is to keep your mind open, nimble, and smart. More specifically, don't be afraid to change your mind, but make sure it IS worth changing. 😊
    BTW: my imagination is not as vivid as your girlfriend's. That looks like a perfectly reasonable, un-poop emoji haircut to me. 😀

    • @clem
      @clem  4 роки тому +2

      😂I'll make sure to show her this comment. And totally agree with what you said above!

  • @levi4thon
    @levi4thon 4 роки тому +1

    I actually learn slow. I go through the basics of that technology, do a full tutorial or two and then build something. It takes longer, but it really works for me. I am not concerned about the speed at which I pick up things, because you can't know everything and at the same time in this field you have time, you have endless opportunities, but it is important to have the skills and to really know the tool you work with.

  • @jatinpunia121
    @jatinpunia121 4 роки тому +2

    he actually spent more time on maths in bachelors and then learnt coding. the perfect way.

  • @machinelearningguy8600
    @machinelearningguy8600 4 роки тому +1

    Yeh, totally agree with points 1 & 2. I see it as interfaces. If I only need to interact with an interface, I'll just learn enough to interface with that. I.e. if I need to drive a car, I'll just learn the interface of the wheel, pedals, gears. I don't need to know any further than that (how engine works etc). There are layers of interfaces, you'll need to keep going through the layers until you can solve the problem you want to solve.

  • @ching-anwu2410
    @ching-anwu2410 4 роки тому +3

    Thanks for sharing your tips about learning, Clément! Couldn't agree more with your techniques.

  • @TheChemist49
    @TheChemist49 4 роки тому +2

    To anyone who ever doubts themselves, the look in his eyes at 9:00 is motivation enough to know people care!

  • @ws_zilch
    @ws_zilch 4 роки тому +1

    11:02 "So I took the note and threw it out of the window"
    *SWAG 100*

  • @nick_jacob
    @nick_jacob 4 роки тому +1

    I'm the one getting pulled in every single direction possible. It's an absolutely insane thing to do and I have to stop myself sometimes and think about my end goals.

  • @welociraptoruspospolitus7232
    @welociraptoruspospolitus7232 4 роки тому +9

    1:57 all the hard work only for the card reflect all the light

    • @clem
      @clem  4 роки тому +3

      Hahaha I know!! I was sad when I saw that while editing the video.

  • @ATIWatchReviews
    @ATIWatchReviews 3 роки тому +2

    definitely one of my favourite coder youtube channels. Thanks Clement you're a breath of fresh air, straight to the point, highly intelligent and great insights, cheers mate

  • @connorhughes2100
    @connorhughes2100 4 роки тому +2

    What an awesome video, that 3rd step is something I have to incorporate Into my studies

  • @nicklandreth2527
    @nicklandreth2527 4 роки тому +2

    Intelligence is the ability to ignore irrelevant information.

  • @petarvico1757
    @petarvico1757 4 роки тому +1

    The most energetic man I have ever seen in my life, keep it up man!!!

  • @manesafaryan2045
    @manesafaryan2045 Рік тому

    You are really smart. I spent a lot of time learning things that should be leart very superficially and now i understand that. its important to choose good abstraction layer when learning something especially in software engineering.

  • @killingjoke5622
    @killingjoke5622 Рік тому

    I'm currently on internship, learning front end technologies and this video is just what i wanted to hear from someone. If I have my own way of doing things and It works for me, i shouldn't change it. Thank you so much, because i found myself in a lot of situations where people tried to prove me wrong that my way of thinking is wrong, even if it works afterwards.

  • @sendotakeshi2286
    @sendotakeshi2286 3 роки тому

    I just caressed the like button this time around since i was so frightned by how rilled up you were in this video

  • @petrbrzon7028
    @petrbrzon7028 4 роки тому +1

    You're entertaining and got me to pay attention to every single word you said. Definitely worth subscribing your channel! I'm gonna check out your other videos. Keep up your good work!

  • @programmingdesign4382
    @programmingdesign4382 Рік тому

    1. Don't go down the rabbit hole of figuring out edge cases and things that are not occurring.
    2. Go down the rabbit hole to figure out things that are occurring and you need to know to accomplish your tasks.
    3. To learn fast you need to spend a lot of time learning that particular thing over a certain period of time, without distracting yourself with things outside of that learning path.
    3. Do what works for you. Take into consideration other people's feedback, but in the end, you (should) know best for yourself.

  • @hasnatchahad
    @hasnatchahad 4 роки тому +3

    Hey Clement,please make a guideline video of how to become a software engineer.For me as a beginner it's really tough to know what should I learn to become a really good software engineer.
    I will be highly thankful to you if you do so because we lack of proper knowledge that what we should really learn rather than wasting our time to here & there.
    #PleaseMakeAVideoOnThis

  • @KyleLanmon
    @KyleLanmon 4 роки тому +4

    The worst part is that coding interview skills are mostly not transferable to actual software engineering skills.

    • @RakeshPGopal
      @RakeshPGopal 4 роки тому

      Agreed! The shitty Uber app is a living breathing example.

  • @antonio-ry9tc
    @antonio-ry9tc 4 роки тому

    This is honestly an actual unique video than the other vids like this good work

  • @florentinniyongere8647
    @florentinniyongere8647 4 роки тому +1

    We all know what we need to do to get where we want to be. However, staying motivated for a long period of time is the actual secret.

  • @Kadotus
    @Kadotus 4 роки тому +1

    Your videos are pure gold.

  • @MaximilianBerkmann
    @MaximilianBerkmann 4 роки тому

    A lot of great points.
    Jim Kwick has made a few videos on how to learn fast and such (I definitely recommend anyone to watch his videos).
    It usually boils down to the following:
    Information + Emotion = Long Term Memory
    Keys to learning fast (BE FAST):
    Believe in what you do
    Exercise ("body moves => brain grooves")
    Forget ("don't be like I know it already, learn it like it was the first time", kids are the fastest learners because they are curious and don't know it already)
    Active ("learning isn't a spectator sport")
    State ("all learning is state-dependent [...] don't be the thermometer, be the thermostat")
    Teach ("learn with the intention of teaching it", see also: Feynman Technique").
    Things I and others I know do (that may or may not work for you):
    0. Find a problem you want to solve (it can be a project you want to do)
    1. Find out what you can use or what you think you should use.
    2. Learn what you need (don't get stuck in tutorial hell tho).
    3. Apply what you learnt to solve the problem.
    4. Keep going, learn more, practice.
    5. Did you solve the problem? Great, you progressed; if not, then keep going, you can do it.
    Remember to be dedicated and have a passion for what you're doing. Enjoy, and don't forget to take regular breaks, sleep, eat and drink.
    Having goals is nice, but having goals from small (short term) to big (long term) WITH a plan is better.
    What's even better is all of those with PRACTICE.
    As Feliks Zemdegs once said, "Practice, practice, practice".

  • @darrenzou2483
    @darrenzou2483 4 роки тому

    Two example i find that you really need to absolutely master are loops and arrays, you use them everywhere, so learning how they work under the hood really helps you out

  • @balancemode2228
    @balancemode2228 4 роки тому

    What works for me is considering what focused skills and support skills are needed for me to accomplish the goal that I want.
    Then I write those down in an organized checklist (I’m using the new Apple Reminders).
    Then I have set focused blocks of time every day to focus on that study/work, and I stay focused on that curriculum and don’t veer from it and try to learn everything.
    If something comes up, I consider if it’s a necessary support skill for my goal and how deeply I should learn it. Then I either choose not to or add it to my itinerary and keep moving forward.
    I’m doing online courses at first, and for projections I’m planning for it to take a little longer than the perfect amount of time, so I don’t have to deal with the stress of not finishing on time, maybe even the boost of finishing early.
    I’ve also included courses for stuff outside of code, such art principles, GUI/UX, communication skills, interviews, even emails, and when my study is “done,” my daily focused blocks will be allocated into the monetization: branding, project-building, portfolio, résumé, networking, and anything else that is necessary to achieve my precise goals, now and on an ongoing basis.
    Focus, plan, focus, act, reflect, repeat, continue.
    Keep an open mind but make decisions and then be disciplined and focused.

  • @souvikkundu
    @souvikkundu 4 роки тому

    I watched this video and instantly connected with Clement because for the first time I found out someone else who hates note-taking. It didn't work for me too most of the time. And if I did write notes, they were always short and temporary.

  • @jsonkody
    @jsonkody 4 роки тому

    1. Do not try to learn everything. There are things you should ommit or learn just superficially.
    2. On the contrary there are things, the core concepts that you should dive in and try to master.
    3. To learn something well, you need to put some time and effort in it. If you want to learn it fast, do it every day for a few hours.
    4. You should know yourself better .. be honest with yourself. If you really want to learn that stuff and you think that
    you know the way, go that way even if it's in contradiction to what everybody else telling you.
    PS: in my first dev job they gave me chance even when I was not programmer at all. I was a lifeguard but I took that chance. I read some book about OOP in Java (600 pages long) eight hours a day for two months. I've done many exercises. From the book and from some local university. So the 3) is real and I think that it is one of the biggest obstacle, to really put that effort in something. Many people just dont believe that they could learn it. That and laziness mixed of course :D I know I wouldn't do it if they didn't pay me for just literally sit down for eight hours and read a book. I wouldn't believe that I could do it. To actually learn the language .. but they gave me a chance and I knew that this is THE test, THE chance. I have everything I need. So if I put in all my time, effort and abilities and still fail I would know for sure that it is not for me.
    After three years in I could now say that programming is for me. Maybe not all programming, but creating new things, definitely. It's awesome!

  • @arcadeduo7101
    @arcadeduo7101 2 роки тому

    Guys, he is not just a software engineer/entrepreneur. He is also a part of cardistry community!

  • @8koi139
    @8koi139 3 роки тому

    I've never smashed a like button this much
    1. Be aware of the things that you don't need to learn deeply, and focus on what matter to what you want to do, making the way the fastest!
    2. Also theres things that you SHOULD know throughly and deeply, thing that you will be doing on a daily basis
    3.Repetition at least 2 hrs DAILY
    4.If you already have one, THAT'S the one for you

  • @cleancoder3838
    @cleancoder3838 4 роки тому

    absolutely correct about first topic. no matter what you learn, it's basically soon outdated. So there is a simple logic to not waste your valuable time to learn more than the necessary stuff. period. This should be an absolute no brainer. I'm praticing this for 20 years and it was a key to success. check my channel description and judge yourself.

  • @TVD360
    @TVD360 3 роки тому +1

    Funny how I stumbled by this video on my birthday, and I'm taking coding also

  • @giovannilalala
    @giovannilalala 4 роки тому +4

    I was watching this at exactly 2 in morning.

    • @curiostory369
      @curiostory369 4 роки тому

      LOOOL its 03am by me now hahaha :P

  • @reaperforever8478
    @reaperforever8478 4 роки тому +1

    To sum it up ,
    #Try and fail till u get a grasp of what works best for u
    #Work on the important stuff as much as possible and trim the less important stuff while maintaining above step
    #do the stuff that works for u everyday while understanding it and learning what's actually important
    # there's no shortcut for success , work hard work smart

  • @ryanellis6115
    @ryanellis6115 2 роки тому

    Good job man. I really dig what you're doing. Very humble. Very clear.

  • @victorialo440
    @victorialo440 4 роки тому

    Wow. This is some of the best advice I have heard when it comes to the topic of learning how to be a better software engineer. Thanks for sharing!

  • @johngramaticus.7494
    @johngramaticus.7494 3 роки тому

    This is exactly what most people trying to get started are struggling with.
    What is worth the effort and what is not?
    What should someone learn at all costs and what can be overlooked?
    It would be really great if you did a step by step video (or series of videos) simply stating things that need to be learned.
    Step 1 learn this, step 2 then this and so on.
    There is so much information out there.
    It’s just really difficult knowing where to concentrate your efforts.

  • @bhargavpandya9189
    @bhargavpandya9189 3 роки тому

    Great advice. And the way you convey it makes it more convincing

  • @mostlysanetrader
    @mostlysanetrader 2 роки тому

    1. Focused learning
    2.go in depth on the things that you focus on
    3. live breath and eat that thing to get it done fast
    4. If your way is more better than this video suggestion stick to it
    5. Subscribe to this channel and buy algoexpert
    PS: Clement , i am a mechanical engg and want to get into coding ...what would you suggest ??

  • @sudhanshusharma9123
    @sudhanshusharma9123 4 роки тому

    I think you may not like this comment, but I have to say this that this video motivated me more than the "6 months learned coding" video

  • @mohammadalavi8848
    @mohammadalavi8848 2 роки тому

    One of the most efficient techniques I use is "MIND REVISION". I review what ever I have learned (in the past 20-30) minutes and explain it to myself and maybe examine different aspects of it. This removes the need to do any note taking (at least this works really well for learning software engineering materials).

  • @fil8649
    @fil8649 3 роки тому

    You can't say that being a math major (Ivy league or not) doesn't directly benefit learning programming. There's a reason why a lot of jobs have "mathematics" in their list of degrees the candidate should have. You've already learned a lot of data structures and algorithms while being a math major.
    For me, I had no background in anything tech. I was a film major, then business, then architecture, then finally gave in and decided to go for computer science, since I'm a huge video game nerd. The problem was that wrapping my head around even what an algorithm is back then was just confusing, it took me a long time to grasp some basic concepts since it's so different from anything I was used to. I was horrible when it came to learning things on my own. I feel like if I was to learn this stuff on my own, it would have taken me longer than my 2 years at uni and would have been a much bigger headache. Coding bootcamps are great, but I think it takes a specific mindset and a very dedicated person with a passion to never stop until you master something in order to really benefit from them, otherwise you'll just end up X thousands poorer with no hope of getting a job.
    On the flipside, did I need to learn how to create a decompiler in assembly language? Definitely not, but for the many electives I had, I was able to learn things like mobile development, machine learning, and web development and even peek into some of the cool things the hardware geeks were working on. So there are definitely upsides to both. (The cost of education in the US though needs to change...)

  • @GabiN64
    @GabiN64 4 роки тому

    I've been down the ML/DL/RL rabbit hole trying to learn everything just to get a Data Analyst job. Currently I have 3 interviews in one week all from deciding to stop learning and just apply to jobs and sell yourself out there by cold emailing employers.

  • @jordanlong5354
    @jordanlong5354 4 роки тому +3

    Clement is the 🐐

  • @AnirbanGorai
    @AnirbanGorai 4 роки тому +12

    Now Techlead will try to sue you for the Video title.

    • @robsnook4512
      @robsnook4512 4 роки тому

      Anirban Gorai as a millionaire

  • @georgetsiklauri
    @georgetsiklauri 4 роки тому +1

    Hey, Clément
    Thank you for your videos. I just found out about them, and I kind of liked the ones I've watched so far. I'm a big fan of learning, I'm big fan of properly structured and well designed Educational materials, with a clear language and a KISS explanation strategies. I know, Einstein didn't say this quote, which a lot of people associate with him, but I'm a very strong believer that "If you can't explain something to 6 years old kid, then you don't understand it yourself". Of course, I talk here about concept, and abstraction, not about specific mathematical formulas or etc.
    So, enough of big intro-text. The question is, that from my experience (which is not quite small), I'm almost 100% positive, that you should read around 100 books, to find the one - really worth reading. Yes, even bad or incomplete experience (during reading) will definitely give you something.. snippets of some concepts and etc., but they can also successfully confuse you further in the topics, which you thought before you understand.
    It'd be great to record your proposals/offers about books, and namely, or before you do it (if you will), maybe you can propose a REALLY good book(s) for Algorithms and Data Structures? also, share your thoughts about comparison of learning from book vs. learning from videos (online courses and etc.). Yes, that's subjective.. but still, try to share your objective thoughts on that, please.
    Thank you very much,
    Giorgi

  • @omidragon15
    @omidragon15 2 роки тому

    Applying advice N. 3 I became an expert at watching youtube videos

  • @constantinamundsen2487
    @constantinamundsen2487 4 роки тому

    I learned java in one week and ok android development in the next week. So 6 months to learn the stuff ist way enough time. The real challange is, to build your project for a portfolio/business, implementing new conecepts, while learning what amazing stuff you can actually do while coding. Its about beeing consistent and always making it harder.

  • @klaus5136
    @klaus5136 2 роки тому

    One of the best intro's ever saw😅👽

  • @charleskp947
    @charleskp947 3 роки тому

    I'm learning to code, but i'm a musician. I actually studied music and now well, thanks covid. When i was younger i'd put in 10hrs of practice a day easy. It just flew by.
    If you like what you're doing you're just doing something you love. Unfortunately "learning" has such a negative connotation, because in school we were made to "learn"
    things we had little interest in.

  • @TheSkarabeush
    @TheSkarabeush 3 роки тому

    I saw another video regarding becoming a comedian, initially, I got worried but... you got me laughing in this one few times, in a good way, not an irony.

  • @emilyhuang2759
    @emilyhuang2759 4 роки тому

    Lol the way you held that cards like the Chinese fan

  • @aaronhanson1694
    @aaronhanson1694 4 роки тому +1

    when he said 2 in the morning. I looked at my clock, low and behold it was 2.

  • @lapasta9925
    @lapasta9925 4 роки тому +3

    thanks i loved this video, i'm new to programming and learning Python atm.

  • @josephangelodelosreyes4206
    @josephangelodelosreyes4206 4 роки тому

    Really helpful man. Right now, this quarantine just forced me to learn new frameworks.

  • @luce7380
    @luce7380 4 роки тому

    I'm a programmer in Korea wanting to go to the States! I love your videos and have watched every single one of them after discovering you 2 weeks ago :)

  • @yuvrajagarkar8942
    @yuvrajagarkar8942 3 роки тому

    I have tried it , I have been learning iOS development from 7-8 months now and all things that I felt was tough to understand makes sense now ,nothing comes in days or weeks it takes months and years you are right , very great advice there 👍

  • @mahamatadoummahamathamid530
    @mahamatadoummahamathamid530 3 роки тому

    Always thing about why you want to be a programmer, you will end up to find a way to learn faster, enjoy the journey, practice practice and practice. I love the third point, but I love taking note :)Great tips by the way, thanks for sharing.

  • @prabhatism
    @prabhatism 4 роки тому

    I had to switch from Python to Ruby for a job change!
    A mixture of doing a lot of coding and understanding how rails works helped me get very good at it in 3 months!

  • @KGcodes
    @KGcodes 4 роки тому

    I totally agree with the first point. There is too much to learn; you have to optimize what you learn and can’t be an expert in everything

  • @chessplayer8551
    @chessplayer8551 Рік тому

    I'd really like to thank you for sharing all knowledge 🙏🙏🙏

  • @mattmarkus4868
    @mattmarkus4868 4 роки тому

    I have a tip: close all your browser tabs before every session to help you focus on one thing you want to do

  • @rubencarreira5124
    @rubencarreira5124 4 роки тому

    Found you here on youtube a few days ago, now you are the only youtube content I enjoy watching. Atm I'm going through some questions and doubts about my capacities and potential in becoming a good software engineer and your content gives me hope ahahah * confused noises *

  • @jingli4558
    @jingli4558 4 роки тому

    This video cannot be more important!!!
    My undergraduate major was math (just like you) and I practiced 5 months from scratch and got an offer from Google (just like you!). I am going to join Google as a residency SDE in March 2020 and I really want to do it well so I decide to make use of the following 3 months to learn as much as I can. But I have no idea how to start and what do I need to do.
    When you talked about learning a low-level language like C++. I shouted in my head, that was what I thought yesterday!
    Anyway. Your videos have a significant impact on me. Oh, btw, I used algoexpert when I was preparing for Google :)

    • @clem
      @clem  4 роки тому

      Amazing; congratulations! You're going to love it at Google!

    • @jingli4558
      @jingli4558 4 роки тому

      The last sentence should be highlighted lol

    • @clem
      @clem  4 роки тому

      @@jingli4558 Hah, did you find AlgoExpert very useful in your prep? Also, I'm really happy that my videos have had a significant impact on you!

    • @jingli4558
      @jingli4558 4 роки тому

      @@clem I used it as my main prep material. What do you think :)

  • @anglv777
    @anglv777 4 роки тому +3

    1:41 when you tryin to get to that 10minute mark

  • @raunakchhatwal5350
    @raunakchhatwal5350 2 роки тому

    If you don't know C++, then you cannot call yourself a programmer or software engineer. You are a mere coder.

  • @eduardohernandez552
    @eduardohernandez552 3 роки тому

    Teach what you learn. If you don't find students, build a blog write and explain it. You will master it really fast.

  • @wisjnujudho3152
    @wisjnujudho3152 4 роки тому

    This is gold, especially no. 3, no, actually all of them. 💯 agree.