How to learn programming | Charles Isbell and Michael Littman and Lex Fridman

Sdílet
Vložit
  • čas přidán 25. 12. 2020
  • Lex Fridman Podcast full episode: • Charles Isbell and Mic...
    Please support this podcast by checking out our sponsors:
    - Athletic Greens: athleticgreens.com/lex and use code LEX to get 1 month of fish oil
    - Eight Sleep: www.eightsleep.com/lex and use code LEX to get special savings
    - MasterClass: masterclass.com/lex to get 2 for price of 1
    - Cash App: cash.app/ and use code LexPodcast to get $10
    PODCAST INFO:
    Podcast website: lexfridman.com/podcast
    Apple Podcasts: apple.co/2lwqZIr
    Spotify: spoti.fi/2nEwCF8
    RSS: lexfridman.com/feed/podcast/
    Full episodes playlist: • Lex Fridman Podcast
    Clips playlist: • Lex Fridman Podcast Clips
    CONNECT:
    - Subscribe to this CZcams channel
    - Twitter: / lexfridman
    - LinkedIn: / lexfridman
    - Facebook: / lexfridmanpage
    - Instagram: / lexfridman
    - Medium: / lexfridman
    - Support on Patreon: / lexfridman
  • Věda a technologie

Komentáře • 1,2K

  • @dantedt3931
    @dantedt3931 Před rokem +1506

    A bit long to read, but here’s my programming path and advice:
    I started with C++,failed it the entire year, but the next year I attended a few extra classes(no pun), i eventually understood the different concepts and passed it very well.
    I then discovered Python, it was much easier to grasp and found a lot of use cases for it. I’ve been building applications with Python/Django for years now, loving it.
    I also watch videos and read books about Algorithms, Data Structures etc to enhance my skills.
    My advice to anyone starting out, especially in a non-academic way:
    -Pick a language that you can build a small project with
    -Try to understand how the code works
    -Add more functionalities to your project
    -Never copy and paste a piece of program that works but you don’t know how.
    -EVERY BUG IN A PROGRAM IS A LESSON,AND LEARNING NEVER STOPS.

    • @programmer1840
      @programmer1840 Před rokem +15

      Same as me. Started with C++, but Python is way easier to build stuff with, like little applications and data science.

    • @DoubleAAmazin3
      @DoubleAAmazin3 Před rokem +14

      Should learn C before Python so you can grasp data types...and Python is written in C

    • @xazarl3381
      @xazarl3381 Před rokem +1

      What project do you make though whats a small project whats in your head vs someone who is new is probably not even close.

    • @xazarl3381
      @xazarl3381 Před rokem +3

      @@dantedt3931 nice ithink thats more useful than anything you could be taught it gives you a goal lol.

    • @nikorasukamado2245
      @nikorasukamado2245 Před rokem +3

      thanks for the advice

  • @paull9086
    @paull9086 Před 3 lety +388

    Start small but have something specific you want to build.

    • @0mer870
      @0mer870 Před 3 lety +16

      This is a better advice imo

    • @reasonerenlightened2456
      @reasonerenlightened2456 Před 3 lety +1

      Why the programming languages are still not self-aware in the 21-st century !
      That should really trouble you all.

    • @Badj4s
      @Badj4s Před 2 lety

      Exactly this!

    • @worldshaper1723
      @worldshaper1723 Před 2 lety

      I want to build a Neuralink device.
      I have been working with Assembly and C/C++

    • @nuvcrossbackit4361
      @nuvcrossbackit4361 Před rokem

      To build what? Examples please

  • @isaacroberts9089
    @isaacroberts9089 Před 3 lety +547

    I have no idea what they're talking about but I'm just like "Mmm, yes, makes sense. That's right, yes, LISP is best, of course."

    • @Priva_C
      @Priva_C Před 3 lety +11

      🤣🤣🤣🤣

    • @tomace1201
      @tomace1201 Před 3 lety +10

      That shit had me cracking up dude

    • @davidcalderon2161
      @davidcalderon2161 Před 3 lety +25

      Anytime I look up programming for beginners it seems like there no such thing like these people just start throwing terms around like I’m just supposed to know these things lol

    • @layo3452
      @layo3452 Před 3 lety +18

      @@davidcalderon2161 😂😂 it seems that way, but if you stick around a bit, after some time it’d just click.

    • @YashuaElohim7
      @YashuaElohim7 Před 3 lety

      😂😂😂😂😂😂😂

  • @kiwi-soop
    @kiwi-soop Před 7 měsíci +82

    For people who want to learn how to write code, as someone who's been coding for 10+ years my biggest piece of advice is this; Don't worry about what language you start with, just pick something that has a relatively simply syntax so you can focus on learning the CONCEPTS. Once you understand the concepts like data structures, loops, functions/methods, you can transfer that to any language.

    • @elis2634
      @elis2634 Před 4 měsíci

      Do you recommend Java as a first language ?

    • @kiwi-soop
      @kiwi-soop Před 4 měsíci

      @@elis2634 Probably not, although you definitely could. I feel like Java can be a little confusing when you're first starting out, but if you feel like you want to start with an OOP language like Java I would recommend C#. You can get started building programs with an actual UI pretty much immediately with Visual Studio which I think can make the learning process feel more gratifying. Also if you decide later you want to learn Java instead, there's not a huge difference between the syntax of the two languages.

    • @playversetv3877
      @playversetv3877 Před 12 dny

      yeh i think these programming languages are like human languages. if you get used to a simpler syntax programming language, i guess that would make it easier to focus on the gist of programming and coding. then applying that language sense to other languages is easier because the logic is pretty much the same, its just different syntax, different rules and grammar and what not

  • @b-manz
    @b-manz Před 3 lety +424

    2 ways to decide what language to learn:
    1. What are you most interested in - gaming, apps whatever and pick accordingly
    2. What is well supported. Nothing worse than wanting help and not being able to find it.

    • @miroslavdanilov902
      @miroslavdanilov902 Před 3 lety +43

      goal + community

    • @DavidBarlowDavido01
      @DavidBarlowDavido01 Před 2 lety +1

      C#

    • @swetsTV
      @swetsTV Před rokem +1

      Trying to learn python but it’s rough. Lol.

    • @rarodrig6
      @rarodrig6 Před rokem +17

      @@swetsTV been teaching myself python for 18 months. I've found when I discover useful new thing, there's actually a window where I can use it without fully grasping it. And then one day something clicks, and it falls into place and it takes you to the next level. Repeat again at the next level

    • @wobbly562
      @wobbly562 Před rokem +6

      @@rarodrig6 i find this happens and works as an effective way of learning in most subjects and probably even especially stem, you take a break from whatever youre trying to figure out or just focus less on trying to decypher it and it gives your brain room to just work with it subconsiously until you revisit it with a slightly new different view.

  • @andreasleonhard1512
    @andreasleonhard1512 Před rokem +797

    I've been writing code for 9 years. I almost can't believe I have reached the level I have reached. When I first started out I seriously doubted I could ever become a software developer. I also almost dropped out of my studies because I felt like they kept adding material on top of the stuff I was still struggling to understand. It is very abstract when you're not familiar with it. When I got my first job I was still not good at coding, but slowly I got better and better and it became a lot more natural to me. I guess you can compare it to learning to read or learning a new language. Things became more and more obvious to me. At this point, I feel like I can understand most concepts and I can learn new frameworks fairly quick.
    So I really recommend that if you study it and you're close to giving up. Just keep grinding. You will end up learning it if you put the effort into it.
    On a side note. I've noticed that some of the developers I studied with, who found it super easy back then, are now struggling. Being an employee is more than just being able to code, and some of these former classmates have their own way of doing things, and sometimes it does not align with working in a team or working in a company on bigger projects. So yeah, don't lose hope.

    • @islomtuyjonov6952
      @islomtuyjonov6952 Před rokem +27

      funnily i'm at that stage right now... i'm only two month in on my python course and feel stuck and even doubting my ability to become a developer. the fact that a lot of people struggle in the beginning just like i'm now giving me hope that i can go further.

    • @andreasleonhard1512
      @andreasleonhard1512 Před rokem +13

      @@islomtuyjonov6952 Keep going! You will learn it :)

    • @Anmeldn
      @Anmeldn Před rokem +10

      i gave up several times, because i have a language aptitude, i always sucked at math, i find those steril words offputting, but i cant let programming go. did you feel mathematically inclined as you kept going, or is it really something that feels unnatural for a long time?

    • @andreasleonhard1512
      @andreasleonhard1512 Před rokem +14

      @@Anmeldn I have never been good at math. I think developing has more to do with logic than with math. Data is more or less just input and output, but the structure of that is what makes it difficult.

    • @Mikeysham
      @Mikeysham Před rokem +10

      @@Anmeldn I suck at maths. Programming is different to maths, the similarities are that they both require you to apply logic, break down a problem and apply a solution. You don't need to be some sort of algebra pro, literally just basic knowledge imo is all that is required.

  • @moseschung3220
    @moseschung3220 Před rokem +262

    In math = is equality, in programming = is assignment. This concept, once it was made known to me, made such a huge difference in my computer science journey. I'm still not a great programmer but defining basic stuff like this explicitly really helped me.

    • @loganmedia1142
      @loganmedia1142 Před rokem +14

      It's both equality and assignment in mathematics. Programming languages need two representations because computers are stupid.

    • @murtajiz545
      @murtajiz545 Před rokem +27

      @WomenBeater88 in math, which is where the “=“ comes from in the first place, the equals sign quite literally means that both numbers/entities that are mentioned are the same, they’re *equal.* In programming, if you want something to EQUAL something, you use “==“, just one “=“ means that you’re assigning a variable or constant to a certain value be it letters or numbers.

    • @aname206
      @aname206 Před rokem +5

      this is groundbreaking for me. thank you.

    • @rmrbush
      @rmrbush Před rokem +3

      Yeah but sometimes in story problems or set up problems you will see something like "if x = 3 and y = 7" which is assignment in that context, even though you are technically doing a "math" problem. This muddies the waters a bit for new person. In any case, it's one of the easier things to figure out in programming.
      Funny this guy talks about loops. I'm self taught and learned the basics from a library book. I had to spend lots of time going through the different types of loops writing out all the silly examples till I finally understood. I never thought I'd crack arrays, it took a solid day.
      I also remember asking someone once I how return two things from a function and that's the day I learned about array structures.
      Anyways I taught myself because I had a program I really wanted to write. I spent 6 months learning until I could write a really shitty program. That was 15+ years ago.

    • @PedroTricking
      @PedroTricking Před rokem

      @@rmrbush > Anyways I taught myself because I had a program I really wanted to write. I spent 6 months learning until I could write a really shitty program. That was 15+ years ago.
      That's a cute story. What was te program?

  • @SuperYova
    @SuperYova Před rokem +12

    There are only 3 things (6:08):
    1. Reading from a variable
    2. Writing to a variable
    3. Conditional branching
    Everything else is syntactic sugar.

  • @Morelloo1
    @Morelloo1 Před 3 lety +668

    That was biggest problem for me when I started learning C++ in first year I remember being so mind blown by just hello world and not getting at all why it worked. I really didn't like taking it for granted. I think the problem for me was not grasping the concept of 'abstraction' - to me it was just some buzzword that I didn't really get. Wasn't until I knew about assembly , compilers and how basic processor architecture worked that it all started to click.

    • @Straitjacket346
      @Straitjacket346 Před 3 lety +35

      This is why I've never been able to go more than a day into the journey, it's like a state of permanent OCD.

    • @ajmalzahir3088
      @ajmalzahir3088 Před 3 lety +51

      Bro the day I realized that data structures were abstract creations we’ve made to form containers for collections of data and the power and freedom that allowed a dev 🤯

    • @freepatriot9070
      @freepatriot9070 Před 3 lety +35

      Like Lex said, they should make everything as explicit as possible. For instance in your case, they should have made a clear link between the output you see on the screen and the 0's and 1's that create them.

    • @benvella1728
      @benvella1728 Před 3 lety +6

      Helped a lot when we were made to write java and check out the resulting byte code to figure out what was happening

    • @xamael1989
      @xamael1989 Před 2 lety +4

      To a certain degree i would favour abstraction especially when the lib or tool does its job well the problem comes when you have to go beyond that abstraction and figure ought how things connect to implement improve or change an object that has been abstracted is difficult an abstraction is an addictive confort zone thats born of necessity

  • @dmitrygrin6930
    @dmitrygrin6930 Před 3 lety +208

    Morpheus started programming when he retired from Matrix

  • @tkayuniverse3493
    @tkayuniverse3493 Před 3 lety +95

    Lex's statement about being ok in a state of confusion speaks to me so much! that is the vast majority of my 2 months or so of getting into cs

    • @bennri
      @bennri Před rokem +1

      One person's confusion is another's puzzle to solve.

  • @TheirSavior
    @TheirSavior Před rokem +139

    I just learned the basics of Javascript using the Headfirst book. It was enough to make my own card game. From reading the book to finishing the program took a month of full time commitment. I only recommend coding to people who are willing to problem solve often and can learn to sit in uncertainty for long periods of time. Those skills should be learned prior or along with coding.

    • @kuukiwoyome5640
      @kuukiwoyome5640 Před rokem

      Ditto

    • @gianni3611
      @gianni3611 Před rokem +1

      Sitting with uncertainty is very hard to master. It takes a lot of mental fortitude and patience.

    • @paradoxofchoice4110
      @paradoxofchoice4110 Před rokem +5

      Can we see the card game and which card game is it similar to?

    • @savachi
      @savachi Před 7 měsíci

      "sit in uncertainty for long periods of time" - excellent concept and quote and transfers to a lot of other life domains.

  • @michaelanthony4750
    @michaelanthony4750 Před 3 lety +1805

    Coal miners are gonna love this video.

    • @The_Mosaic
      @The_Mosaic Před 3 lety +46

      Stop.

    • @nunyabiznes6702
      @nunyabiznes6702 Před 3 lety +35

      🤣🤣🤣🤣🤣🤣👍

    • @methylphosphatePOET
      @methylphosphatePOET Před 3 lety +57

      @@GeoFry3 Sorry, but I have a "studies" degree. And all of this is laughably simple. Code is not very complicated at all. I've been writing programs in C++ and Python for years. There are some dense theoretic frameworks developed by people like Derrida and Foucault that are required reading in "studies" courses, that the typical software developer would be completely intimidated by. Many developers are morons who don't bother to read anything beside the little software language they were interested enough to learn once upon a time. The fact that you think this is heady stuff says more about you than it does "studies" majors.

    • @johnmarkjames5447
      @johnmarkjames5447 Před 3 lety +294

      @@methylphosphatePOET I bet you’re fun at parties.

    • @johnjay6370
      @johnjay6370 Před 3 lety +33

      @@GeoFry3 I understand programming might be easy for you, but it does not mean it is easy for most. The IQ of a standard programmer is 110 or above the adv IQ in United States is 98.. This tells me most people will never be a programmer.

  • @jacobjohn378
    @jacobjohn378 Před 3 lety +69

    Seeing Lex focus so hard on the question, expecting something really difficult, is gold.

    • @brians7100
      @brians7100 Před 11 měsíci +2

      I'm still not convinced he knew the answer was y = 3 and not y = 7 tbh

  • @petropzqi
    @petropzqi Před 3 lety +23

    Lex please talk more about this void feeling, I bet we all can relate to that when it comes to programming

  • @marchfifth1754
    @marchfifth1754 Před 2 lety +31

    I learned HTML and CSS when I was about 10 or 11. I was fascinated with making websites so I grabbed a book from Chapters and just followed it. I read it in the bathroom, on road trips. I didn't get much time to practice but I knew the basics, however, because I didn't practice it I never really got good. Now, I use it almost daily for small tasks in my job. I understand it more and more and more, but I want to be better and get into Javascript as well. I am 32 now but I hate my marketing job and want to go into strict coding. I think I am going to start studying again.

    • @bennickclayton6468
      @bennickclayton6468 Před rokem +3

      Check the Odin project, its well structured

    • @ramicollo
      @ramicollo Před rokem +1

      What's your marketing job like? What are some typical daily tasks?

    • @Ismail-zd9gp
      @Ismail-zd9gp Před rokem +5

      Can you give an update about your coding journey. Did you start javascript? How long do you think it takes to become a good web developer.?

  • @phyrr2
    @phyrr2 Před rokem +6

    What helped me learn the most was focusing on error handling in regards to UI/UX/QoL issues (started with Python after failing C++). Building a simple program and doing everything I could to break it, then creating fixes to handle said errors. I create data entry forms and do a lot of work in Excel as well, and I cannot stress how much learning basic programming helps in regards to building solutions in Excel workbooks. Things like interactive dashboards and the like need to be resilient when sharing with say your boss or other end users. It also has to make sense and be dependable.
    The thing is, "programming" has such a wide variety in application it's not just "I'm going to grow up and become a software developer". For me, it was "I'm going to learn data science, including standardization, enrichment, ETL, reconciliation, management/strategy, etc. etc. then apply to marketing automations for a dozen different customer journeys".
    In the end, learning to code is learning how to solve problems. The better you are at solving problems the more valuable you become in anything you do (especially in any tech field). Working in marketing, having these skills should be required nowadays and at the very least, gives one a huge edge over any non-tech counterparts you may be working with.

  • @ForOrAgainstUs
    @ForOrAgainstUs Před 3 lety +85

    This was so good, I don't even know how good it was.

    • @Woji52
      @Woji52 Před 3 lety +8

      x = this was good
      y = not sure if this was good
      You and I = x + y

    • @shivamjalotra7919
      @shivamjalotra7919 Před 3 lety

      @@Woji52 Haha

  • @iAlberto923
    @iAlberto923 Před 3 lety +105

    I am starting to get into programming (One year in) I really wish there were more videos such as this. I have never heard about Charles, but he seems to understand the position that a complete beginner find themselves in, and that's what I would like to have from someone who is trying to teach programming.

    • @StormKidification
      @StormKidification Před rokem +2

      How did u start

    • @dragospahontu
      @dragospahontu Před rokem +3

      How did u start

    • @alejandror.2630
      @alejandror.2630 Před rokem

      You got a job already?

    • @markdeleeuw5446
      @markdeleeuw5446 Před 7 měsíci

      @@StormKidification im a wannabe-junior but i started with python to learn the syntax. Just try it for a few weeks or months and you will understand more what you want and what (other) syntax you need to learn.

    • @markdeleeuw5446
      @markdeleeuw5446 Před 7 měsíci

      @@dragospahontu im a wannabe-junior but i started with python to learn the syntax. Just try it for a few weeks or months and you will understand more what you want and which syntax you need to learn.

  • @Maeda_Toshiie
    @Maeda_Toshiie Před 3 lety +81

    C was my first language, and I use it from time to time for performance reasons. I like C for its simplicity when doing just raw number crunching. Input and string parsing is painful but the memory management aspect is the most painful of all.

    • @mojeedazeez958
      @mojeedazeez958 Před rokem +7

      I got admitted into an scholarship academy in Africa (ALX) to learn programming. Lectures started in August and we started with C. Sorry i have to talk about my background. I'm from a art background, i did Mass communication at the polytechnic. I think I really like C because it touches on all the basic roots of programming you need to understand but the painful part is you need to be conscious about memory management all the time. I recently have stopped with the scholarship programme and now taking a course on Udemy for Python.. I thinks C is a great language, I'm sure to come back to it, I just need a less complex bedrock..

  • @mtribe3442
    @mtribe3442 Před 3 lety +66

    This episode is incredible. Love the third mind sanity check

  • @shteakhouse
    @shteakhouse Před 3 lety +129

    Teaching concepts from intro to programming to someone with no background is a real art. That in itself is a problem most of us have trouble solving.

    • @ajmalzahir3088
      @ajmalzahir3088 Před 3 lety +2

      It’s fun to think back at your mindset from 101 classes till present. Honestly trippy to see the growth so clearly

    • @shteakhouse
      @shteakhouse Před 3 lety +3

      I didn’t see the big picture until i took OS. Probably the most fundamental/important class to take imo

    • @reasonerenlightened2456
      @reasonerenlightened2456 Před 3 lety +2

      Why the programming languages are still not self-aware in the 21-st century !
      That should really trouble you all.

    • @pineapplehead789
      @pineapplehead789 Před 3 lety +2

      @@reasonerenlightened2456 what do you mean and why are you commenting this in a lot of comments

    • @reasonerenlightened2456
      @reasonerenlightened2456 Před 3 lety +2

      ​@@pineapplehead789
      What do you think it means.
      It is time for a new paradigm.
      (i.e. Computers that ask questions.
      Everybody is obsessed with building computer languages that find answers. But nobody yet wants to focus on giving them the ability to ask the questions.)

  • @danielbusquets3282
    @danielbusquets3282 Před 27 dny +1

    I started learning programming some 10 years ago when I was already past 35. I never stopped. I’m now able to build complex softwares on my on. It feels very empowering to be able to transform my ideas into products as a solo coder, solo entrepreneur. Every long journey starts with the first step and it is never too late to start while there’s life. Just do it. By the way, I started with python and I will never regret doing so. My current project uses python, typescript (vue3) and 3 databases including one vector db. I love it and I will launch in only a few more months! Happy coding everyone!

  • @blink182lives100
    @blink182lives100 Před 3 lety +91

    Charles Isbell walks a fine line between condescending and humble. idk thats just the vibe I get from listening to him speak

    • @mulatto401
      @mulatto401 Před 3 lety +28

      I found him condescending and annoying.

    • @morlyfe
      @morlyfe Před 3 lety +4

      @@mulatto401 hes giving real answers though

    • @mulatto401
      @mulatto401 Před 3 lety +12

      @@morlyfe He is giving his opinion, not answers.

    • @JayBowles
      @JayBowles Před 3 lety +1

      Haha very generously put. I wouldn’t be so generous...

    • @br2716
      @br2716 Před 3 lety +16

      He's an academic. He is likely aware that when it comes to Computer Science, his opinions/experiences are primarily valuable within the walls of MIT, while simultaneously being very disconnected to programming in the open market.
      That being said, after watching the entire interview, he seems to be very full of himself and makes some pretty bold claims without even acknowledging that what he is saying is a mere opinion.

  • @ws8061
    @ws8061 Před rokem +123

    It's interesting hearing these guys, I struggled a ton trying to understand recursion until my TA showed me how it worked in memory on the call stack. It seems dumb now but it's interesting how good teachers can really get you understanding concepts.

    • @rayyanamir8560
      @rayyanamir8560 Před rokem +7

      Bright friends can teach you better than teachers of harvard or oxford.

    • @bird6472
      @bird6472 Před rokem +7

      Recursion becomes second nature and very intuitive over time. But often where students get stuck with recursion is that they just don't have a system in place yet for cognitive offloading. Instead of trying to trace everything in your head, try to offload some of that mental processing and cognitive demand onto paper as you go. It'll really help for interviews later too.

    • @wagutoxD
      @wagutoxD Před rokem +4

      @@bird6472 Recursion! 🤬 I'm having trouble with it. I do write it in paper and I even get the correct "answer"... but that's it. I just repeat the process. I don't really understand it... yet. it still eludes me. I'll get there...

    • @bird6472
      @bird6472 Před rokem +3

      @@wagutoxD You'll get there. It takes time and then one day it just clicks!

    • @ws8061
      @ws8061 Před rokem +1

      @@bird6472 that's excellent advice

  • @rafaeldericksanchezlockwar4920

    "Python is basically lisp but with better syntax"
    "...blasphemy" xD

  • @RationalSteve
    @RationalSteve Před rokem +8

    Learning Python and SAS, and It's been tough to stick with it. This helped. I wish everyone luck on their journey of becoming better.

  • @WhossBobbFPV
    @WhossBobbFPV Před 3 lety +7

    Thought I had no idea what I was doin but I guess I have a pretty good understanding and should get back to learning

  • @saberxebeck
    @saberxebeck Před rokem +12

    X=3;
    Y=4;
    What is X? (Ans=3)
    What is Y? (Ans=4)
    Y=X;
    What is Y? (Ans=3)
    X=7
    What is Y? (Ans=3 But would be 7 if x and y would be anchored with an ampersand)
    I Couldnt see this in the comments and the ans wasn't clear in the vid so I figured I'd type it up for others.

    • @lvrsvid
      @lvrsvid Před rokem

      Thank you for this. I thought I was correct in my thinking but you finished the loop for me, haha.

    • @kingoffongpei
      @kingoffongpei Před rokem

      Thanks for this. I am just learning about memory while learning Javascript right now and had a feeling it was still 3 and I think it's due to being primitive values? Not sure if that's correct and also not sure if that's correct for all programming languages. I don't know what the anchoring means yet but I'll probably get to it later.

    • @nyion7584
      @nyion7584 Před rokem

      Yes, I was looking for this comment. Guys in video just assume that X and Y are reference variables. When usually those are just value ones so this Y = X does what it should do in math. And then changing X does not affect Y. Until it's value type not reference type. So explanation in video was poor.

    • @ahancho
      @ahancho Před rokem

      hello I am currently completing harvards free cs50 and i learned that ampersand in C was used for as an address operator or pointer. may you explain what you mean by "anchored with an ampersand"? thank you

    • @thisisthechief1
      @thisisthechief1 Před rokem

      Thank you. I love how they never answered it in the video lol

  • @willf.h6951
    @willf.h6951 Před 3 lety +6

    Soooooo happy, as a beginner I understood all of that!!

  • @nebulous_57
    @nebulous_57 Před rokem +2

    This makes me feel better about learning C++. I'm on my midterm and I don't really know what's going on sometimes but I do understand the majority of what I'm seeing, I just need to learn how to build a program using my own notes and skills. As a visual learner, the text doesn't help me as much as watching youtube or googling others' blocks of code and seeing it in action. I don't know how I'll grade at the end of the semester but I enjoy programming and the high I get after my programming running as intended is new and awesome

  • @robbieparis07
    @robbieparis07 Před 3 lety +3

    I remember in elementary school math doing word problems where the answer would involve something along the lines of Let x= ..... and maybe this helped to set me up for understanding the difference between equality and assignment

  • @erichighsmith7299
    @erichighsmith7299 Před 3 lety +247

    I know how to write Hello World!

    • @digitalhippie2336
      @digitalhippie2336 Před 3 lety +19

      In the big world, every time you do that - the big bang happens
      We don't fully understand what's happens in the quantum world, so behave please

    • @harsimranbansal5355
      @harsimranbansal5355 Před 3 lety

      @@digitalhippie2336 “the universe is not obligated to make sense” -NDT

    • @cpzd83
      @cpzd83 Před 3 lety +1

      You'll get there man. I'm nowhere near Eve half decent at programming but you start feeling when you get the grasp of it, trust me. Just keep at it.

    • @chite3111
      @chite3111 Před 3 lety +8

      print(“Me too, but not much more than that lol.”)

    • @johnstamos8258
      @johnstamos8258 Před 3 lety

      @@freedomgoddess it’s printf not print in c

  • @meowcat64
    @meowcat64 Před 3 lety +13

    00:6:09 breaking it down to its primitives, very interesting and useful take on programming

  • @mattordiway1955
    @mattordiway1955 Před rokem +6

    I am completely in love with programming right now. I mean just the process of problem solving is so fun, and I actually hated it when I was attempting a CS degree. I have no idea what changed other than a maturing view of the world...Anyway all the love to Lex

  • @GohanBurner
    @GohanBurner Před rokem +28

    I am only a couple months into my coding journey and the fact that I understood all of that really gives me hope. Maybe this is something I was supposed to do. I always thought I could never grasp these things but they actually came naturally to me. It's making this whole experience fun.

  • @bokchoiman
    @bokchoiman Před 3 lety +4

    I was taught assembly and as soon as I started learned C++, I begun to flush out assembly altogether. At some point it becomes unproductive to think at such a low level of abstraction because what you wish to accomplish will significantly outweigh the capabilities of the language you're using.

  • @waynegnarlie1
    @waynegnarlie1 Před 3 lety +13

    I learned Microchip assembly (MPASM) first. I still use it and love it.

    • @waynegnarlie1
      @waynegnarlie1 Před 3 lety

      @@TimoNoko Never heard of Cosmac, and from your description, I'm thankful, lol!

  • @sibbyeskie
    @sibbyeskie Před 3 lety +165

    When I first got into programming this talk (languages, etc) got me endlessly excited. Now syntax is hard to get excited about. It’s all the same basic formal structure. Now when I see experienced guys still get excited about this, it usually means they aren’t making much that is truly creative. Like an artist spending most his time admiring his paint brushes and testing them out for insignificant differences, but rarely actually painting.

    • @prabhdeepsingh5642
      @prabhdeepsingh5642 Před 3 lety +9

      Thats what I was thinking. For a while I got confused that there must be something really deep that these guys are talking about, which I am unable to understand.

    • @erikpost1381
      @erikpost1381 Před 3 lety +14

      They're not talking about syntax, at least not exclusively, but about semantics, which is ineed a deep subject. Programming languages do not have 'the same basic formal structure', although many languages do indeed have much in common.

    • @buttslaya
      @buttslaya Před 3 lety +1

      I guess programming in LISP makes you think about things in a different way? I agree with you about learning to program in different languages though, without doing deep dives into a particular language its really all the same. Look up Haskell school of music if you are looking for a cool application for code. I've been meaning to give that a run myself.

    • @qlee50
      @qlee50 Před 2 lety

      I agree, language structures don’t mean much except minor learning curve friction while you’re writing code. The higher level libraries, frameworks and SDKs that enable you to combine and build useful tools, functionality and bring joy to users are what really matter

    • @josemaria_landa
      @josemaria_landa Před 2 lety +2

      MMM. As a hobbiest compiler/language designer syntax/semantics always excites me haha.
      So many different and cool languages:
      Lisp
      Haskell
      ColorForth
      Clean
      Standard ML
      J
      Prolog

  • @vertzy821
    @vertzy821 Před 3 lety +2

    Thank you for these videos Lex

  • @RonaldoGoat12327
    @RonaldoGoat12327 Před 3 lety +40

    Im learning fullstack development right now in school, where u train for 1.5 years here in Sweden then u get released into the workforce as a dev. Honestly, it's fun and stimulating. But also very hard at times and frustrating... I remember being stuck in react for hours, but it ended up being like 4 lines of code that solved my issue. I assume this is what it's like for everyone. But I really like it so far. Not the front end side, I like SQL and c# way more so far, but front end is not that bad.

    • @5FT6MAN
      @5FT6MAN Před rokem +1

      try draw to code for front end

  • @jacobjohn378
    @jacobjohn378 Před 3 lety +15

    AHHAHA "Stare into the void with tears slowly rolling down your face". Lex is such a gem.

  • @yiro6577
    @yiro6577 Před rokem +1

    Thankyou lex,this is very educational as a person who just started programming

  • @danielpelanek7869
    @danielpelanek7869 Před rokem +2

    I feel like flowcharts are the best way to introduce programming. You can clearly follow what the program does, without needing to learn almost any syntax, and it teaches you how to visualize programs in regular programming languages.

  • @m7mmad772
    @m7mmad772 Před 3 lety +64

    So important and true what lex said that when you are learning programming you have to be ok being confused for a while

    • @ajmalzahir3088
      @ajmalzahir3088 Před 3 lety +13

      Program not working -> follow errors -> there’s 20 errors and half are in deeper library files -> pull docs -> docs give basic unclear implementation info -> look up examples -> end up on stack overflow, again

    • @OmegaF77
      @OmegaF77 Před rokem +1

      @@ajmalzahir3088 Sometimes the libraries jusst straight tells you to git gud at C/C++ first before using it.

    • @yyyd6559
      @yyyd6559 Před rokem

      It's been 6months and I'm still confused

  • @joethestrat
    @joethestrat Před 3 lety +4

    9:50 to 10:04
    So much truth in this process you mentioned. Don't know how I wasn't subbed to you before but I'm rectifying that right now. Liked and shared also.

    • @Soso-ho2si
      @Soso-ho2si Před 3 lety

      When are we leaving to K-PAX ?

  • @astrahcat1212
    @astrahcat1212 Před 7 měsíci +2

    I started with C# and there were all of these best coding principles, but what kept me going was kind of being a 'rogue' programmer and doing it the way i wanted to. Now a days I can see that what I was doing was called 'procedural' programming style, and it was oop style that I was learning at the time.

  • @varunsharma7911
    @varunsharma7911 Před 3 lety +1

    I put a lot of emphasis on building stuff using documentation over solving problems from the popular competitive programming websites and as a result failed at so many interviews.

  • @wagutoxD
    @wagutoxD Před rokem +3

    This cut gave me some sort of relieve... I'm new to programming, I'm studying JavaScript right now. I realized the thing I have the most difficult with is the abstractions! It screws my mind hard! But seems normal as my mind is not really used to logics behind it all... not sure if I was clear enough... anyone at the same boat?

  • @DAMfoxygrampa
    @DAMfoxygrampa Před 3 lety +54

    This man and Paul Graham have absolutely convinced me to learn lisp

    • @BLawwat
      @BLawwat Před 3 lety +2

      I thought he said list and I searched for that. I'm 57--should I be thinking about programming at all?

    • @youtubesuresuckscock
      @youtubesuresuckscock Před 3 lety +6

      Lisp blows. Compete waste of time in 2021.

    • @DAMfoxygrampa
      @DAMfoxygrampa Před 3 lety +3

      @@BLawwat If you're interested in it then absolutely man, if you have a mind like an engineer then you'll find programming to be a lot of fun. It doesn't necessarily have to be your future career.

    • @wills242
      @wills242 Před 3 lety +1

      @@BLawwat yes please, man! And please encourage any of your curious friends to do the same! If I could talk with more old guys about basic basic code lingo it’d bridge so much of a gap! A big shortcoming of the world rn is the digital disconnect !

    • @brigittetitte4415
      @brigittetitte4415 Před 3 lety +1

      @@youtubesuresuckscock rather...?

  • @FlyingCorkscrew
    @FlyingCorkscrew Před rokem

    Thank you. I needed to hear this

  • @marcogranados2477
    @marcogranados2477 Před 3 lety +1

    Love this as a newbie

  • @Quasidono
    @Quasidono Před 3 lety +116

    I think dig this more than JRE

    • @moritzgro2442
      @moritzgro2442 Před 3 lety +31

      Of course, because Java sucks.

    • @mountainp800
      @mountainp800 Před 3 lety

    • @worldeconomicforum7210
      @worldeconomicforum7210 Před 3 lety +14

      To me.lex fridman is just the place where all the really smart JRE fans go. When we don't want to hear about working out, comedy, or DMT. I just glad I found him on JRE.

    • @veryincredibly
      @veryincredibly Před 3 lety +3

      @@worldeconomicforum7210 Lex also talks about DMT?

    • @ironmagma
      @ironmagma Před 3 lety

      He's the hero we need but don't deserve.

  • @bobdoggy4312
    @bobdoggy4312 Před rokem +5

    I'm 45 years old. Starting small changed careers drifting away from nursing while swinging hard into in bits with front end and python. Web dev is so far my goal while starting out my first year in BS CS, Im feeling happy learning.

    • @kompila
      @kompila Před rokem +1

      Good luck Doggy!

  • @SecretHymns
    @SecretHymns Před rokem +1

    Staring into the void has been me and still is me. Very good point made by Lex

  • @sameeruprety8306
    @sameeruprety8306 Před 2 lety +1

    Great piece of advice

  • @ssgtblackmamba7991
    @ssgtblackmamba7991 Před rokem +6

    As someone who's learned the very very very basics of python, the fact that I could understand and answer his question correctly makes me feel really great and motivated to keep going.

    • @369pendulum
      @369pendulum Před rokem

      How long ago did you start?

    • @ssgtblackmamba7991
      @ssgtblackmamba7991 Před rokem

      @@369pendulum about a year ago for like 2 months, then I had to take a break because our second was born, new job, selling our house, buying a house that still needed to be built and starting on a bachelor's....so I got a bit busy XD
      I'll pick it back up in about a month.

  • @vjfperez
    @vjfperez Před 2 lety +8

    Theres usually a tradeoff between efficient to use and easy to learn.
    To make something easy to learn you shoehorn a lot of familiar concepts into the most intuitive form.
    To make something efficient to use you try to simplify the most frequent operations at the expense of intuition

  • @AlumniQuad
    @AlumniQuad Před rokem

    9:00 Good point. In Pascal, it's ":=" specifically to address this. Xerox's Mesa programming language used left arrow ("←"), but only because their computer keyboards had an "←" key that was distinct from the left arrow key.
    I think that before the age of Java people avoided this pitfall by being required to study assembly language very early in the CS curriculum (in my experience, it was couse number two and was required to be taken before the department would allow you to major in the subject).

  • @uPenguin
    @uPenguin Před rokem

    Finding a project you're really interested in helps a lot, I wanted to build an ML model to predict the outcome of the Tour de France because I am interested in cycling and I taught myself how to Webscrape to get the data I wanted, and I learnt how to train a model and I ended up with a decent output which I am still working on. I even tried learning TensorFlow but that is still something I haven't fully got to grips with.

  • @paologallardo8869
    @paologallardo8869 Před rokem +5

    I'm currently enrolled in an AI/ML Associates of science. We're having to learn python along with some other ML knowledge. It seems interesting and espite the steep learning curve I'm going to force myself to love it.

  • @leonlysak4927
    @leonlysak4927 Před 3 lety +9

    Learn programming by thinking of a cool thing to build. You learn way faster, and it's fun as hell. I taught myself programming in 2019 initially because I wanted to make some tools and automate my work. It sort of just morphed from there. It doesn't really matter what language you start with, but I personally started with Python and then Nim. Ever since I tried Nim my fingers wouldn't let me type in any other language lol

    • @judgedbytime
      @judgedbytime Před rokem +1

      First two lines should be shouted from the mountain tops.

    • @iamdopeasfcuk
      @iamdopeasfcuk Před rokem

      sometimes the cool thing you want to build is too complex for your skill set, which can make you feel overwhelmed. maybe i'm weird, but i think the best way to learn is just open a c++ textbook and just go through each chapter doing the exercises. if you get stuck, there's plenty of resources online to help. I learned c++ in uni, so that's why i'm partial to it.

  • @simpliside
    @simpliside Před rokem

    Assembly is very great language. You get to understand the conversion process to raw machine code. In my study, it was a marvel

  • @SaidThoughts
    @SaidThoughts Před 6 měsíci +1

    The debate on which is better is funny because he first starts out saying his is better, but when challenged on that decision he reverses it stating "SO you're going to say it's better than anything?" while just prior saying the same about his suggested.

  • @stulego1
    @stulego1 Před 3 lety +4

    I wish I had Charles as my intro to C++, I was stuck on what syntax meant from the beginning and why it was required.

  • @matthewwoodard9810
    @matthewwoodard9810 Před rokem +11

    “The very basics are often not made explicit.” Very very good insight there. This is true in teaching most complex topics, but seems to be especially present in teaching programming. I can’t count the times where I’d finally get a concept and think, “why the fuck do they teach it this way.” Or, “why don’t they explicitly point this out.” Or worse, to understand a concept, decide to dive deeper, listen to “teachers” and start thinking holy fu.. I don’t understand this at all, only to come around and realize my original understanding was correct but the way it’s taught is a convoluted mess.

  • @zzzzzzzzzzzzzzzzzzzzzzzzzzzz__
    @zzzzzzzzzzzzzzzzzzzzzzzzzzzz__ Před 7 měsíci +1

    Awesome video. I was hesitant to click because I’m pretty confident in knowing the pathways to learning programming but I’m so glad I did anyway. Really cool insights from some great thinkers!

  • @Zgredu666
    @Zgredu666 Před 3 lety +2

    Shure SM7B is a dynamic microphone and should be directly in front the speaker's mouth, around 1 inch away from the lips. With this audio equipement you are able to achieve nearly radio sound quality. Enjoyed the video tho!

  • @MsgrTeves
    @MsgrTeves Před 3 lety +9

    I remember these guys from Udacity's Reinforcement Learning course

    • @thomaswyrick4648
      @thomaswyrick4648 Před 3 lety

      You should check out their Machine Learning Course. It covers mostly Supervised and Unsupervised Learning. It was designed to work with their RL course.

  • @cybersyndicate1645
    @cybersyndicate1645 Před 3 lety +22

    This was helpful. I felt stuck at a beginner python level for a while. Not because the language is difficult to learn. But it's difficult to articulate my ideas as code.

  • @jagavi9822
    @jagavi9822 Před rokem

    Love this! Great job

  • @lylewyant3356
    @lylewyant3356 Před 7 měsíci +1

    Pascal was one language I studied 30 plus years ago. Now, trying to learn C# with Unity.

  • @thomasjones9559
    @thomasjones9559 Před 3 lety +6

    God damn. I'm 6 weeks in and loving this clip. Failing miserably so far but this is encouraging to see we all go through the same pain.

    • @dlo5640
      @dlo5640 Před 3 lety +1

      2 weeks here...lol I didn't realize how feable minded I was before starting this journey

    • @thomasjones9559
      @thomasjones9559 Před 3 lety +1

      @@dlo5640 what Ive learned so far is sometimes you need to refresh your eyes. If you're stuck on something for too long its sometimes best to shut it down. Usually the next day you'll come back and instantly know how to fix your code.

    • @LightsOutToney
      @LightsOutToney Před 2 lety +1

      Same here my man, started 2 months ago and by now basically I just accepted that it’s going to take time until I get where I want to be as a programmer so now Im just trying to embrace and enjoy the journey.
      Seeing as you posted this 8 months ago how far would you say you have come since then?

    • @ahmadaltaheralfayad135
      @ahmadaltaheralfayad135 Před 2 lety

      Harvard has a free course called CS50, it’s honestly been a great resource for me in learning the fundamentals. The professor is incredibly engaging as well. It’s kind of tough so bear that in mind, but it’s definitely worth it.

    • @frog6054
      @frog6054 Před 2 lety

      I only got to learn python for 4 months and then I give up lol.

  • @faismasterx
    @faismasterx Před rokem +20

    I hate programming so much, but I have great respect for programmers who've built the technologies of today's modern world that we can't live without.

  • @in4moon
    @in4moon Před rokem

    My humble opinion which was inspired by my friend a long time ago, is that because programming languages can only evolve in a backward compatible manner, the most efficient syntaxes tend to be the ones of the languages that are new. For example TypeScript , elm , rust. That is only 1 consideration for picking up a language. Adoption rate in a particular field could also be a big factor, if someone want's to develop software for others (mostly for corporations).

  • @MrBBOTP
    @MrBBOTP Před 3 lety

    love it & i know nothing about it... thanks you tube & LEX

  • @Tomsonx232
    @Tomsonx232 Před rokem +8

    I agree with start simple, but also with an emphasis on starting with something simple that you find interesting. You will always find ways to make a simple idea more complex as you build it and think of more features to add, and that's the best way to learn. If you just build simple things for the sake of building them you will lose motivation

  • @kontranorth6159
    @kontranorth6159 Před rokem +42

    I’m learning to code right now and this was very insightful. I have a mathematical oriented brain and the syntax seems to be my biggest issue and now I know why.

    • @CoolStoryBroWhoCares
      @CoolStoryBroWhoCares Před rokem +1

      I suck at math. Do I have a chance?

    • @dragospahontu
      @dragospahontu Před rokem +1

      @@CoolStoryBroWhoCares yes, but your brain needs to be mathematically oriented.

    • @CoolStoryBroWhoCares
      @CoolStoryBroWhoCares Před rokem

      @@dragospahontu damn

    • @dragospahontu
      @dragospahontu Před rokem +1

      @@CoolStoryBroWhoCares give it a shot, it's kinda cool

    • @aufkeinsten7883
      @aufkeinsten7883 Před rokem +4

      @@CoolStoryBroWhoCares I've always hated maths in school and love programming.. Don't rely on what others tell you for an important decision like this, just give it a shot if you have some time on your hands. Even if you're working full time or are going to school, take a few hours of free time every week and see for yourself! Don't judge what you're able to achieve or how "fast" you learn, just whether you enjoy programming and learning it. If the answer is yes, then there is a place for you in software engineering. What's important is the affinity towards logic & tinkering, which has absolutely nothing to do with high school maths. There's fields of software engineering where you'll never use more complex mathematical concepts than the ones taught in high school!

  • @tomsetberg4746
    @tomsetberg4746 Před rokem +1

    Start from the basics and practice every day. Just like everything else you need to build the muscle memory for what you're doing.

  • @maus8161
    @maus8161 Před rokem

    Thanks mate, love ya'

  • @tomparke2407
    @tomparke2407 Před 3 lety +23

    If you want to learn how to program, know a few of the basic concept like variables, loops and if statements, then trying to build some basic web UI functionality with Javascript is a great way to get started building something you can use and interact with. Great visual feedback. Build a dropdown menu in JS. Build a modal with JS.

  • @seniorreact9627
    @seniorreact9627 Před 2 lety +4

    Commenting so the CZcams algorithm suggest more videos like this for me.

  • @BudgiePanic
    @BudgiePanic Před 3 lety +1

    Start small is great advice, and you might be surprised just how small you've got to go to begin with

  • @lorenzocabrini
    @lorenzocabrini Před rokem +2

    It's really interesting that he mentioned Pac Man because that was exactly the first thing I tried to do on a VIC-20 sometime in the early 80s. I also managed to do it, but it took me a lot longer than an afternoon. I started by placing an @ character in the middle of the screen. Then I wanted it to react to joystick movement. That took quite a while. Next, walls. First I just had an outer wall right next to the border.
    For some reason, Pac Man was the itch I had to scratch. Should probably have started with breakout, Space Invaders or something, but I didn't know that some games were more complex than others. I was just a little dumb kid. But, at least it taught me never to give up.
    It was when I got to the ghosts ($ characters in my version), that it began to get challenging. Had a lot to learn there. It took me about a month to have a first playable version, then another month to rewrite it based on things I learned through building the first version. I figured out LDA, STA, ADD and those things quickly. Took much longer to understand ROR and ROL and things like that. The concept of flags, overflow, program counter and instruction related to flag values such as BEQ, BNE and the others took me a lot of suffering to figure out. (To be honest, I've forgotten many of the instructions on the old 6502 by now).
    Another thing I remember I needed to wrap my head around was in which areas of memory you could actually stick your code. There was no operating system, no protected mode to save you, just you and the memory, some of which was reserved for specific purposes like character maps, interacting with hardware, etc. There was a lot to learn, but I was totally hooked. I could sit for hours and hours on end, telling myself I hated programming but actually loving the fact that it kept challenging me and I had to try to figure out how to overcome each challenge.
    I still love programming. It's what I've done professionally my whole working life, but I must say that some of the early magic is gone. There was something so simple and beautiful with simple switch on/switch off instructions, which is lost with big complex languages of today. Don't get me wrong, I love Haskell, Lisp and even C, but to program those old CPUs directly was just so much fun (even up to the older members of the Motorola 68xxx series). I could never really wrap my head around assembly on Intel processors. I'm sure it's beyond my brain power. Too many instructions, too complex, better to just let your C or Haskell compiler figure it out.

  • @Jackson_Zheng
    @Jackson_Zheng Před rokem +18

    Abstraction is probably the most important yet understated concept in all of programming!
    I'm not a good programmer by any means and I haven't coded in over a year but when I was just starting out learning about classes and objects, I was so confused as to why they structured things that way. I also couldn't understand how software could talk with hardware and it made programming seem like a thought experiment.
    Once I understood the concept of abstraction, everything clicked and fell into place.
    Someone should really make a map of how everything in programming fits together in ascending abstraction, starting from transistor logic gates and storing charge in capacitors to act as memory, to ALUs, binary, all the way up to Python and JavaScript.

    • @moscrow3247
      @moscrow3247 Před 7 měsíci +2

      It’s all ones and zeroes???
      ALWAYS HAS BEEN

  • @thebxsavage
    @thebxsavage Před 3 lety +12

    print(“What’s up Lex!”)

  • @andjohn7912
    @andjohn7912 Před rokem

    I started studying data structures and algorithms and tbh it started to make more sense

  • @bllvir
    @bllvir Před 5 měsíci

    MOST BENEFICIAL, MOST NEEDED TIPS &ADVICE EVER FOUND ON CZcams.

  • @FuzzyDunlopification
    @FuzzyDunlopification Před rokem +28

    I think python is a great first choice. One of the problems with learning python on the internet is that a lot of people seem to use python without the OOP approach. I ended up learning without the OOP approach until I learned the advantages of OOP.

    • @judgedbytime
      @judgedbytime Před rokem +4

      good comment

    • @almoszold5011
      @almoszold5011 Před rokem +2

      Python is a very versatile language with tons of use cases, some of which don't really need an object oriented approach.
      I use it many times when I want to automate something, just as a scripting language and it's almost always easier to just use basic data structures like maps, arrays and tuples to achieve most of what I want to do.
      This is especially true for beginners. You'll want to first understand loops, if statements, functions, recursion and other basic stuff, before dwelling into a programming paradigm about abstraction, methods, encapsulation, inheritance, polymorphism. Once you understand the basics, you can discover the benefits and drawbacks of object oriented design.

    • @murtajiz545
      @murtajiz545 Před rokem

      Same situation here; love the language, but man it makes you miss out on SO MUCH.

  • @lokeshrana7359
    @lokeshrana7359 Před 2 lety +33

    From a software developer's perspective, I would suggest learning javascript because it broadens the scope of what you can develop. Websites, servers, native mobile applications just to name a few.

    • @Nikki_the_G
      @Nikki_the_G Před rokem +6

      @@techtutorvideos Right because it's not like js is used in actual development and web at all, wtf are you talking about? It's standard.

    • @over1498
      @over1498 Před rokem +1

      I know JS purists hate when I say this, but I’d say learn JS basics then learn Typescript thoroughly.
      You can do anything JS can do, it will be supported and growing for a long time. But the main point is that you’ll be able to switch to Python, Rust, Scala, and other high demand functional code easily.
      I consider it sort of a mistake that I spent so much time learning JS quirks. Of course it’s good to know, but the docs will always be there if you really need. Just saying I n the time it takes to understand JS thoroughly, you could have learned like 4 other skills at an intermediate level.

    • @user5214
      @user5214 Před rokem

      I started about 7 months ago and now am almost finished building a chess game from scratch using react. Very rewarding without having to know how memory works or how the computer itself is doing much of anything, but rather being able to focus on how the language itself can assist me in getting the results I want without a massive barrier to entry that other lower level languages present.

    • @Ismail-zd9gp
      @Ismail-zd9gp Před rokem

      How long does it take to become a frint end web developer learning javascript?

    • @vibovitold
      @vibovitold Před rokem

      JS is used for cross-platform mobile applications. only then a framework like React Native can compile, or tranpile your work into native ones.
      NATIVE mobile development is generally taken to mean that one uses Android SDK or its iOS counterpart, coding in Kotlin (formerly Java) or Swift (formerly Objective-C).
      this being said, i do agree that JavaScript is ubiquitous, and a sensible choice (although i'm not a big fan of the language myself, but that's of course subjective)

  • @usienwkdau2jfb28u4b
    @usienwkdau2jfb28u4b Před 6 měsíci

    I am learning Assembly and C++ and at this point I feel like these are the two languages I'll ever need...I personally see arguments made for other languages being easier to learn and etc but I've had no issue learning any concept so far in either Assembly or C++...it's definitely doable

  • @superjarri
    @superjarri Před rokem +1

    I think I have a decent level at C, C# and Python, and if I had to chose a tool to learn programming, it would be Excel and VBA. It's like a language and a test bench at the same time and of course, it's one of the most usefull skills you can learn if you work in any kind of office.

  • @thehazarika
    @thehazarika Před 3 lety +95

    I started learning programming before I can read English properly. It took me 8 years to understand memory management and pointers.

    • @brigittetitte4415
      @brigittetitte4415 Před 3 lety +5

      Wtf, 8 years?

    • @thehazarika
      @thehazarika Před 3 lety +6

      @@brigittetitte4415 Yeah, I am dumb.

    • @brigittetitte4415
      @brigittetitte4415 Před 3 lety +8

      No dont get me wrong, im just wondering how difficult these topics are lol

    • @thehazarika
      @thehazarika Před 3 lety +31

      @@brigittetitte4415 It is not that difficult, I started learning programming from an English text book, and I barely knew english back then. So learning both C and English at the same time may be why I took 8 years

    • @johnford2517
      @johnford2517 Před 3 lety +23

      @@thehazarika It wasn't until recently, while talking to someone who's had to deal with this issue, that it dawned on me how unfair it is that all non-English speakers have this extra barrier to writing code. One of those things that you just have to accept but really puts people, especially those who don't use Latin alphabets, at a disadvantage.

  • @clearnandimprove4604
    @clearnandimprove4604 Před 3 lety +30

    I have been learning c # for the past few months. Its going alright I know more then when I Started.

    • @MV12267
      @MV12267 Před 3 lety +2

      Great for ETL, visual studio has an SSIS template.

    • @BrokenAbyss
      @BrokenAbyss Před 3 lety +1

      How complex is it? I’m a video editor and want to try my luck at coding, but idk how hard it will be.

    • @Cyberspine
      @Cyberspine Před 3 lety +14

      @@BrokenAbyss All programming languages are complex, but some are more abstract than others. For example, assembly is the language the computer operates at, and is not very friendly to humans. On the other end of the scale, Python works much like natural language, where the final code resembles a verbal description of what the code is doing (eg. for each element in list do an operation). C# is somewhere in the middle, where it has these human-friendly abstractions but allows you to also talk to the machine directly. My personal opinion is that you want to start learning with a highly abstract language such as Python, and then gradually move closer to the silicon with languages like C# and C++. The core concepts, such as loops, functions, classes etc. translate readily from one language to the other, so it's possible that you'll be able to learn C# faster by learning Python first. It's a bit like learning to drive with a car with automatic transmission first and then switching over to manual.

    • @clearnandimprove4604
      @clearnandimprove4604 Před 3 lety +1

      @@BrokenAbyss you can do a lot with it from what I can tell. I have been using it with unity. Learning to make apps and games. I can see it having many other uses.

    • @JethroYSCao
      @JethroYSCao Před 3 lety

      @@Cyberspine well said, though after one gets familiar with the fundamentals, there's a strong case to be made for going in the opposite direction on the abstraction spectrum too, in particular languages in the strongly typed functional paradigm like Haskell, Ocaml, Scala, etc.

  • @midnightwatchman1
    @midnightwatchman1 Před 3 lety +2

    great advice about getting into coding

  • @composercode
    @composercode Před rokem

    I could listen to this guy talk for hours.

  • @Rakesh6720
    @Rakesh6720 Před 3 lety +29

    I'm teaching high schoolers javascript. It's funny how you need to have coded for two years before you can appreciate how deep this convo about starting really is.

    • @Sindoku
      @Sindoku Před 3 lety

      True

    • @MegaFirefox360
      @MegaFirefox360 Před 3 lety

      advice for learning java? how do I even start actually making code

    • @avi7278
      @avi7278 Před 3 lety +9

      @@MegaFirefox360 my advice is not to ask random people in youtube comments.

    • @bombardo2489
      @bombardo2489 Před 3 lety +3

      @@MegaFirefox360 You have to understand the very basic Things like Data Types because you gonna suck without Understanding them,Also Methods ,Scope,And access specifiers ,and Objects because in Java Everything is an object literaly. Use This Video it really helped me czcams.com/video/S0V20PHPR4M/video.html

    • @morlyfe
      @morlyfe Před 3 lety

      @@MegaFirefox360 look up alex lee on youtube thank me later 🤟🏾

  • @TrebleWing
    @TrebleWing Před rokem +3

    I started with 6502 assembly as my first language.... I feel I have a much closer understanding to memory than if I started with higher level languages.

    • @MichaelPohoreski
      @MichaelPohoreski Před rokem +1

      I program in 6502 assembly every month to stay sane from the modern over-engineer clustertruck of C++.

  • @ubercorey
    @ubercorey Před 3 lety +2

    Is there a resource you recommend to learn some of these basic concepts?

  • @PoulLarsenmusic
    @PoulLarsenmusic Před 2 lety

    6:30 love this simple experiment