Тёмный

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

Lex Clips
Подписаться 1,3 млн
Просмотров 979 тыс.
50% 1

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 RU-vid channel
- Twitter: / lexfridman
- LinkedIn: / lexfridman
- Facebook: / lexfridmanpage
- Instagram: / lexfridman
- Medium: / lexfridman
- Support on Patreon: / lexfridman

Наука

Опубликовано:

 

25 дек 2020

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 1,2 тыс.   
@dantedt3931
@dantedt3931 Год назад
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 Год назад
Same as me. Started with C++, but Python is way easier to build stuff with, like little applications and data science.
@DoubleAAmazin3
@DoubleAAmazin3 Год назад
Should learn C before Python so you can grasp data types...and Python is written in C
@xazarl3381
@xazarl3381 Год назад
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 Год назад
@@dantedt3931 nice ithink thats more useful than anything you could be taught it gives you a goal lol.
@nikorasukamado2245
@nikorasukamado2245 Год назад
thanks for the advice
@paull9086
@paull9086 3 года назад
Start small but have something specific you want to build.
@0mer870
@0mer870 3 года назад
This is a better advice imo
@reasonerenlightened2456
@reasonerenlightened2456 3 года назад
Why the programming languages are still not self-aware in the 21-st century ! That should really trouble you all.
@Badj4s
@Badj4s 2 года назад
Exactly this!
@worldshaper1723
@worldshaper1723 2 года назад
I want to build a Neuralink device. I have been working with Assembly and C/C++
@nuvcrossbackit4361
@nuvcrossbackit4361 Год назад
To build what? Examples please
@kiwi-soop
@kiwi-soop 6 месяцев назад
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 3 месяца назад
Do you recommend Java as a first language ?
@kiwi-soop
@kiwi-soop 3 месяца назад
@@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.
@isaacroberts9089
@isaacroberts9089 3 года назад
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 3 года назад
🤣🤣🤣🤣
@tomace1201
@tomace1201 3 года назад
That shit had me cracking up dude
@davidcalderon2161
@davidcalderon2161 3 года назад
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 3 года назад
@@davidcalderon2161 😂😂 it seems that way, but if you stick around a bit, after some time it’d just click.
@YashuaElohim7
@YashuaElohim7 3 года назад
😂😂😂😂😂😂😂
@andreasleonhard1512
@andreasleonhard1512 Год назад
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 Год назад
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 Год назад
@@islomtuyjonov6952 Keep going! You will learn it :)
@Anmeldn
@Anmeldn Год назад
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 Год назад
@@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 Год назад
@@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.
@SuperYova
@SuperYova Год назад
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.
@moseschung3220
@moseschung3220 Год назад
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 Год назад
It's both equality and assignment in mathematics. Programming languages need two representations because computers are stupid.
@murtajiz545
@murtajiz545 Год назад
@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 Год назад
this is groundbreaking for me. thank you.
@rmrbush
@rmrbush Год назад
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 Год назад
@@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?
@b-manz
@b-manz 3 года назад
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 3 года назад
goal + community
@DavidBarlowDavido01
@DavidBarlowDavido01 2 года назад
C#
@swetsTV
@swetsTV Год назад
Trying to learn python but it’s rough. Lol.
@rarodrig6
@rarodrig6 Год назад
@@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 Год назад
@@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.
@Morelloo1
@Morelloo1 3 года назад
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 3 года назад
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 3 года назад
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 3 года назад
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 2 года назад
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 2 года назад
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
@saberxebeck
@saberxebeck Год назад
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 Год назад
Thank you for this. I thought I was correct in my thinking but you finished the loop for me, haha.
@kingoffongpei
@kingoffongpei Год назад
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 Год назад
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 Год назад
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 Год назад
Thank you. I love how they never answered it in the video lol
@petropzqi
@petropzqi 3 года назад
Lex please talk more about this void feeling, I bet we all can relate to that when it comes to programming
@tkayuniverse3493
@tkayuniverse3493 3 года назад
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 Год назад
One person's confusion is another's puzzle to solve.
@TheirSavior
@TheirSavior Год назад
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 Год назад
Ditto
@gianni3611
@gianni3611 Год назад
Sitting with uncertainty is very hard to master. It takes a lot of mental fortitude and patience.
@paradoxofchoice4110
@paradoxofchoice4110 Год назад
Can we see the card game and which card game is it similar to?
@savachi
@savachi 6 месяцев назад
"sit in uncertainty for long periods of time" - excellent concept and quote and transfers to a lot of other life domains.
@phyrr2
@phyrr2 Год назад
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.
@michaelanthony4750
@michaelanthony4750 3 года назад
Coal miners are gonna love this video.
@The_Mosaic
@The_Mosaic 3 года назад
Stop.
@nunyabiznes6702
@nunyabiznes6702 3 года назад
🤣🤣🤣🤣🤣🤣👍
@methylphosphatePOET
@methylphosphatePOET 3 года назад
@@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 3 года назад
@@methylphosphatePOET I bet you’re fun at parties.
@johnjay6370
@johnjay6370 3 года назад
@@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.
@mtribe3442
@mtribe3442 3 года назад
This episode is incredible. Love the third mind sanity check
@jacobjohn378
@jacobjohn378 3 года назад
Seeing Lex focus so hard on the question, expecting something really difficult, is gold.
@brians7100
@brians7100 10 месяцев назад
I'm still not convinced he knew the answer was y = 3 and not y = 7 tbh
@Maeda_Toshiie
@Maeda_Toshiie 3 года назад
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 Год назад
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..
@iAlberto923
@iAlberto923 3 года назад
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 Год назад
How did u start
@dragospahontu
@dragospahontu Год назад
How did u start
@alejandror.2630
@alejandror.2630 Год назад
You got a job already?
@markdeleeuw5446
@markdeleeuw5446 6 месяцев назад
@@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 6 месяцев назад
@@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.
@RationalSteve
@RationalSteve Год назад
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.
@marchfifth1754
@marchfifth1754 2 года назад
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 Год назад
Check the Odin project, its well structured
@ramicollo
@ramicollo Год назад
What's your marketing job like? What are some typical daily tasks?
@Ismail-zd9gp
@Ismail-zd9gp Год назад
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.?
@WhossBobbFPV
@WhossBobbFPV 3 года назад
Thought I had no idea what I was doin but I guess I have a pretty good understanding and should get back to learning
@nebulous_57
@nebulous_57 Год назад
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
@ws8061
@ws8061 Год назад
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 Год назад
Bright friends can teach you better than teachers of harvard or oxford.
@bird6472
@bird6472 Год назад
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 Год назад
@@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 Год назад
@@wagutoxD You'll get there. It takes time and then one day it just clicks!
@ws8061
@ws8061 Год назад
@@bird6472 that's excellent advice
@robbieparis07
@robbieparis07 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
@mattordiway1955
@mattordiway1955 Год назад
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
@ForOrAgainstUs
@ForOrAgainstUs 3 года назад
This was so good, I don't even know how good it was.
@Woji52
@Woji52 3 года назад
x = this was good y = not sure if this was good You and I = x + y
@shivamjalotra7919
@shivamjalotra7919 2 года назад
@@Woji52 Haha
@bokchoiman
@bokchoiman 3 года назад
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.
@willf.h6951
@willf.h6951 3 года назад
Soooooo happy, as a beginner I understood all of that!!
@sibbyeskie
@sibbyeskie 3 года назад
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 3 года назад
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 3 года назад
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 3 года назад
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 2 года назад
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 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
@danielpelanek7869
@danielpelanek7869 Год назад
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.
@astrahcat1212
@astrahcat1212 6 месяцев назад
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.
@wagutoxD
@wagutoxD Год назад
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?
@shteakhouse
@shteakhouse 3 года назад
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 3 года назад
It’s fun to think back at your mindset from 101 classes till present. Honestly trippy to see the growth so clearly
@shteakhouse
@shteakhouse 3 года назад
I didn’t see the big picture until i took OS. Probably the most fundamental/important class to take imo
@reasonerenlightened2456
@reasonerenlightened2456 3 года назад
Why the programming languages are still not self-aware in the 21-st century ! That should really trouble you all.
@pineapplehead789
@pineapplehead789 2 года назад
@@reasonerenlightened2456 what do you mean and why are you commenting this in a lot of comments
@reasonerenlightened2456
@reasonerenlightened2456 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.)
@dmitrygrin6930
@dmitrygrin6930 3 года назад
Morpheus started programming when he retired from Matrix
@conormcgregor2547
@conormcgregor2547 3 года назад
😂
@UserName-ii1ce
@UserName-ii1ce 2 года назад
Seashells by the seashoreus
@dhyeypatel5537
@dhyeypatel5537 2 года назад
🤣😂
@elemstuff
@elemstuff 10 месяцев назад
He helps the aliens with bugs from time to time
@Meritumas
@Meritumas 2 дня назад
He has been programming since he was born...
@RonaldoGoat12327
@RonaldoGoat12327 3 года назад
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 Год назад
try draw to code for front end
@meowcat64
@meowcat64 3 года назад
00:6:09 breaking it down to its primitives, very interesting and useful take on programming
@hassanjacobs7506
@hassanjacobs7506 3 года назад
First principles thinking
@paologallardo8869
@paologallardo8869 Год назад
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.
@blink182lives100
@blink182lives100 3 года назад
Charles Isbell walks a fine line between condescending and humble. idk thats just the vibe I get from listening to him speak
@mulatto401
@mulatto401 3 года назад
I found him condescending and annoying.
@morlyfe
@morlyfe 3 года назад
@@mulatto401 hes giving real answers though
@mulatto401
@mulatto401 3 года назад
@@morlyfe He is giving his opinion, not answers.
@JayBowles
@JayBowles 3 года назад
Haha very generously put. I wouldn’t be so generous...
@br2716
@br2716 3 года назад
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.
@GohanBurner
@GohanBurner Год назад
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.
@gumbo64
@gumbo64 Год назад
keep going :)
@imsudipp
@imsudipp Год назад
Best of luck man
@waynegnarlie1
@waynegnarlie1 3 года назад
I learned Microchip assembly (MPASM) first. I still use it and love it.
@waynegnarlie1
@waynegnarlie1 3 года назад
@@TimoNoko Never heard of Cosmac, and from your description, I'm thankful, lol!
@joethestrat
@joethestrat 3 года назад
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 2 года назад
When are we leaving to K-PAX ?
@yiro6577
@yiro6577 Год назад
Thankyou lex,this is very educational as a person who just started programming
@varunsharma7911
@varunsharma7911 3 года назад
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.
@m7mmad772
@m7mmad772 3 года назад
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 3 года назад
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 Год назад
@@ajmalzahir3088 Sometimes the libraries jusst straight tells you to git gud at C/C++ first before using it.
@yyyd6559
@yyyd6559 Год назад
It's been 6months and I'm still confused
@vjfperez
@vjfperez 2 года назад
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
@Zgredu666
@Zgredu666 3 года назад
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!
@vertzy821
@vertzy821 3 года назад
Thank you for these videos Lex
@DAMfoxygrampa
@DAMfoxygrampa 3 года назад
This man and Paul Graham have absolutely convinced me to learn lisp
@BLawwat
@BLawwat 3 года назад
I thought he said list and I searched for that. I'm 57--should I be thinking about programming at all?
@youtubesuresuckscock
@youtubesuresuckscock 3 года назад
Lisp blows. Compete waste of time in 2021.
@DAMfoxygrampa
@DAMfoxygrampa 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 3 года назад
@@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 3 года назад
@@youtubesuresuckscock rather...?
@leonlysak4927
@leonlysak4927 3 года назад
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 Год назад
First two lines should be shouted from the mountain tops.
@iamdopeasfcuk
@iamdopeasfcuk Год назад
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.
@AlumniQuad
@AlumniQuad Год назад
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 Год назад
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.
@stulego1
@stulego1 3 года назад
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.
@ssgtblackmamba7991
@ssgtblackmamba7991 Год назад
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 Год назад
How long ago did you start?
@ssgtblackmamba7991
@ssgtblackmamba7991 Год назад
@@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.
@superjarri
@superjarri Год назад
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.
@zzzzzzzzzzzzzzzzzzzzzzzzzzzz__
@zzzzzzzzzzzzzzzzzzzzzzzzzzzz__ 6 месяцев назад
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!
@tomparke2407
@tomparke2407 3 года назад
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.
@Tomsonx232
@Tomsonx232 Год назад
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
@in4moon
@in4moon Год назад
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).
@simpliside
@simpliside Год назад
Assembly is very great language. You get to understand the conversion process to raw machine code. In my study, it was a marvel
@bobdoggy4312
@bobdoggy4312 Год назад
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 Год назад
Good luck Doggy!
@rafaeldericksanchezlockwar4920
@rafaeldericksanchezlockwar4920 2 года назад
"Python is basically lisp but with better syntax" "...blasphemy" xD
@SecretHymns
@SecretHymns Год назад
Staring into the void has been me and still is me. Very good point made by Lex
@jacobjohn378
@jacobjohn378 3 года назад
AHHAHA "Stare into the void with tears slowly rolling down your face". Lex is such a gem.
@Quasidono
@Quasidono 3 года назад
I think dig this more than JRE
@moritzgro2442
@moritzgro2442 3 года назад
Of course, because Java sucks.
@mountainp800
@mountainp800 3 года назад
@worldeconomicforum7210
@worldeconomicforum7210 3 года назад
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 3 года назад
@@worldeconomicforum7210 Lex also talks about DMT?
@ironmagma
@ironmagma 3 года назад
He's the hero we need but don't deserve.
@erichighsmith7299
@erichighsmith7299 3 года назад
I know how to write Hello World!
@digitalhippie2336
@digitalhippie2336 3 года назад
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 3 года назад
@@digitalhippie2336 “the universe is not obligated to make sense” -NDT
@cpzd83
@cpzd83 3 года назад
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 3 года назад
print(“Me too, but not much more than that lol.”)
@johnstamos8258
@johnstamos8258 3 года назад
@@freedomgoddess it’s printf not print in c
@tomsetberg4746
@tomsetberg4746 Год назад
Start from the basics and practice every day. Just like everything else you need to build the muscle memory for what you're doing.
@cybersyndicate1645
@cybersyndicate1645 3 года назад
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.
@meilyn22
@meilyn22 3 года назад
So true bro.
@thomasjones9559
@thomasjones9559 3 года назад
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 3 года назад
2 weeks here...lol I didn't realize how feable minded I was before starting this journey
@thomasjones9559
@thomasjones9559 3 года назад
@@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 2 года назад
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 2 года назад
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 2 года назад
I only got to learn python for 4 months and then I give up lol.
@matthewwoodard9810
@matthewwoodard9810 Год назад
“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.
@marcogranados2477
@marcogranados2477 3 года назад
Love this as a newbie
@madmotorcyclist
@madmotorcyclist Год назад
Lisp is the only language that gives standard language programmers pause and takes some getting used to, due to its code foundation of everything is essentially a list. It only matters how you interpret/evaluate the list and its elements. It's why AI started to get popular back in the 1980s with natural language parsers and planning and scheduling.
@kontranorth6159
@kontranorth6159 Год назад
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 Год назад
I suck at math. Do I have a chance?
@dragospahontu
@dragospahontu Год назад
@@CoolStoryBroWhoCares yes, but your brain needs to be mathematically oriented.
@CoolStoryBroWhoCares
@CoolStoryBroWhoCares Год назад
@@dragospahontu damn
@dragospahontu
@dragospahontu Год назад
@@CoolStoryBroWhoCares give it a shot, it's kinda cool
@aufkeinsten7883
@aufkeinsten7883 Год назад
@@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!
@MsgrTeves
@MsgrTeves 3 года назад
I remember these guys from Udacity's Reinforcement Learning course
@thomaswyrick4648
@thomaswyrick4648 3 года назад
You should check out their Machine Learning Course. It covers mostly Supervised and Unsupervised Learning. It was designed to work with their RL course.
@SaidThoughts
@SaidThoughts 5 месяцев назад
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.
@usienwkdau2jfb28u4b
@usienwkdau2jfb28u4b 5 месяцев назад
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
@lokeshrana7359
@lokeshrana7359 2 года назад
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 Год назад
@@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 Год назад
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 Год назад
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 Год назад
How long does it take to become a frint end web developer learning javascript?
@vibovitold
@vibovitold Год назад
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)
@Jackson_Zheng
@Jackson_Zheng Год назад
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 6 месяцев назад
It’s all ones and zeroes??? ALWAYS HAS BEEN
@FlyingCorkscrew
@FlyingCorkscrew Год назад
Thank you. I needed to hear this
@uscjake868
@uscjake868 Год назад
Python reads and writes how you think. It is so fast and comfortable. For a new beginner: just write out all of the things you want a program to do. KEEP IT BASIC. Then slowly google how to write those statements out: If X is greater than Y, then Z is equal to X plus 2.
@FuzzyDunlopification
@FuzzyDunlopification Год назад
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 Год назад
good comment
@almoszold5011
@almoszold5011 Год назад
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 Год назад
Same situation here; love the language, but man it makes you miss out on SO MUCH.
@clearnandimprove4604
@clearnandimprove4604 3 года назад
I have been learning c # for the past few months. Its going alright I know more then when I Started.
@MV12267
@MV12267 3 года назад
Great for ETL, visual studio has an SSIS template.
@BrokenAbyss
@BrokenAbyss 3 года назад
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 3 года назад
@@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 3 года назад
@@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 3 года назад
@@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.
@sameeruprety8306
@sameeruprety8306 Год назад
Great piece of advice
@TungTo-xp8rv
@TungTo-xp8rv Год назад
I started with html/css then move to JS then React. It's hard to understand some concept like: Thread, Composition, Loop, Dependency... My recommend would be start with some basic fundamental knowledge about OS, Networking (http), Binary logic... then an programming introduction (course or book is ok), OOP, OOAD and design pattern
@FrankPapadakis
@FrankPapadakis Год назад
I didn't go to college for CS, I have an Industrial Engineering degree. I have been teaching myself to program over the last few years now. Was able to change my career to a software developer role last year. It takes time to learn but you can do it. Don't give up!
@alejandror.2630
@alejandror.2630 Год назад
Few years took you to change from carrer? I hope I can get a job in the industry in my first year, It is possible?
@FrankPapadakis
@FrankPapadakis Год назад
@@alejandror.2630 changing careers is a lot different than getting your first entry level job. I waited until I got an offer that I wasn't going to take a pay cut on.
@alejandror.2630
@alejandror.2630 Год назад
@@FrankPapadakis but I think if you get a entry level job you would get to that types of offer much faster
@FrankPapadakis
@FrankPapadakis Год назад
@@alejandror.2630 possibly, I just couldn't afford to take a huge pay cut at the time. I was already making over 100k a year and entry level software dev jobs in my area were around 65k so it would of been tough for me to reduce my income by almost half.
@alejandror.2630
@alejandror.2630 Год назад
@@FrankPapadakis I understand, may I know how many hours daily you studied?
@faismasterx
@faismasterx Год назад
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.
@MrBBOTP
@MrBBOTP 3 года назад
love it & i know nothing about it... thanks you tube & LEX
@co6672
@co6672 Год назад
i have a sufficient experience with Microsoft SQL, working with scripts and queries managing my work database. I've always wanted to get into coding, just been scared I may not be smart enough to understand...
@kindleboje713
@kindleboje713 Год назад
As an IT recruiter, I don’t pretend to know how to write code (though I’m trying to start learning the basics). But I see most of the Fortune 100 using or moving to Java. I’m surprised Java and JavaScript aren’t mentioned here. Would love thoughts from other developers though!
@kwamemyers6689
@kwamemyers6689 Год назад
How do I become a recruiter?
@seniorreact9627
@seniorreact9627 2 года назад
Commenting so the RU-vid algorithm suggest more videos like this for me.
@whatitdo6287
@whatitdo6287 Год назад
Everything you need to know is online or on RU-vid for free. C, Python, Docker, Linux, Excel and so on all you've got to do is take the time to learn it.
@pugix
@pugix 4 месяца назад
My recommendation is, start with a language that has a mature unit testing framework. Right from the get go, writing unit tests to test your own code will give you insight into how it behaves. Python and Java both have great unit test frameworks. When you get into writing larger programs, writing parts of your code so that they are easily unit testable will automatically lead to better composition and decoupling of code.
@Rakesh6720
@Rakesh6720 3 года назад
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 3 года назад
True
@MegaFirefox360
@MegaFirefox360 3 года назад
advice for learning java? how do I even start actually making code
@avi7278
@avi7278 3 года назад
@@MegaFirefox360 my advice is not to ask random people in youtube comments.
@bombardo2489
@bombardo2489 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 ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-S0V20PHPR4M.html
@morlyfe
@morlyfe 3 года назад
@@MegaFirefox360 look up alex lee on youtube thank me later 🤟🏾
@FPSmoto
@FPSmoto Год назад
I wonder if programming were made to be more relatable, such as comparing it to cooking, would be a better way to get people interested in, and help to better understand programming. So explaining a piece of code, such as the rhythm game he was referring to, could be simplified into terms like you need to understand that the code is like a recipe and you have to have all the ingredients, some of which could be main ingredients and others sort of added to spice up the dish. You could look at the main body of functionality in a piece of code as being the entree, or meat of choice, while other objects are seen as side dishes, while cooking techniques are like the condition statements within code.
@SerenityDreaming
@SerenityDreaming Год назад
I thought about this. I thought maybe teaching programming to multilingual individuals would obviously be a good place to start, and from there, while they're learning coding, they could also attempt other analogs for lack of a better word. I'm a pretty decent cook, I have a hard time envisioning the model you described. I do like the idea of a recipe. So differing parts of a cohesive meal, where the supportive code acts as less fundamental parts of the whole in service to the meat. It seems more a template. The variety of the meal might detract from the variance you'd want to highlight within the code. And people have strong opinions about food. Any thought on overcoming that? I could see this being useful later on when memorizing. You could adapt meals you personally like top specific common functions you expected to repeat often. I couldn't form analogous connections between code you hadn't created yet, and full meals you enjoy. Hmm. There does seem to be some element of code or puzzle building. I think you might just have a sophisticated relationship with food. I also thought about translating the concepts using singing or songs and maybe dance routines. Might appeal to more young ladies and girls. Music in general. Or maybe some kind of modular train track set. That of course, leads right into robotics, and I ordered Arduino Sets. They get complex imo. Lot's of blinking lights. It's a struggle to find exercises that aren't simplistic and pointless or needlessly complicated with no proportionate pay off. And even then, if the materials are poor quality, then the project, no matter how mindfully coded, will be subpar and frustrating. Is it extra steps to seek a digital/visual robot that only exists on a modeling matrix, but simulates the live movement of robots, without sacrificing that 3d advantage that makes robotics seem so effective? I know it's kind of exiting the 2d to enter the 3d so I can go back into the 2d. Thanks.
@MichaelPohoreski
@MichaelPohoreski Год назад
Recipes are extremely formulaic using known off-the-shelf ingredients. We _already_ have the analog of functions and libraries. There are numerous problems trying to abstract a program with interchangeable components: 1. Dependency hell, bloated programs, and with slow compile times. 2. You can't treat programming like engineering with interchangeable widgets. A _model of abstraction_ is just that a model. Sometimes you _need_ coupling, most of the time you try to minimize it. Programming is about problem solving. WHAT the problem is will determine HOW you approach it. Your paradigm choice matters. In theory implementation details don't matter, in practice they do. 3. Abstraction costs. Sometimes we need to pay attention to size and speed. We have inheritance flattening and devirtualization because one abstraction model does not fit all. 4. Not everyone should be a programmer. It takes a certain mindset to understand "meta-mathematics" aka Computer Science. Not everyone can understand the intricacies of coding regardless of how it is taught. i.e. If you can't understand assembly language you are an amateur coder. The devil is in the details. Learning to break a program down into smaller steps is _essential_ to write good code. Learning good/proper naming is essential to communication with other programmers. Knowing when to use abstraction and when not too still matters.
@FPSmoto
@FPSmoto Год назад
@@MichaelPohoreski Engineering and Design go hand in hand... Any engineer worth their salt knows how to be good at design. And any good designer needs an affinity for engineering. You can go all in one one or the other but you will be limited by the structure of engineering and by the chaos of design. Balance, above all else.
@MichaelPohoreski
@MichaelPohoreski Год назад
@@FPSmoto They do but unfortunately most UI people are completely clueless at functionality. They are too busy with their dogma of form. And sadly too many engineers are clueless about form and flow.
@ronanlarkin
@ronanlarkin Год назад
I started doing C up as far as pointers and memory allocation for fundamentals then moved to Java to get to grips with object orientation. Also think using HTML and JavaScript as a beginner is really helpful!
@JashSingh-bv5ge
@JashSingh-bv5ge Год назад
html isnt a programming Language , i prefer python bcs , ist easy to understand.
@ronanlarkin
@ronanlarkin Год назад
@@JashSingh-bv5ge You're right! But I'd argue that coupled with JavaScript, building a simple web page with HTML (mark up language!) It's a nice, accessible way to get started and get fast tangible results because you can see what you've created and nothing needs to be compiled. I'd also argue that although python is easy to use, its applications are primarily in some of the more complicated areas such as ML and data analytics. Plus it can be beneficial in the long run to have to do things the hard way in the beginning, but that's just my opinion.
@lorenzocabrini
@lorenzocabrini Год назад
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.
@thebxsavage
@thebxsavage 3 года назад
print(“What’s up Lex!”)
@thehazarika
@thehazarika 3 года назад
I started learning programming before I can read English properly. It took me 8 years to understand memory management and pointers.
@brigittetitte4415
@brigittetitte4415 3 года назад
Wtf, 8 years?
@thehazarika
@thehazarika 3 года назад
@@brigittetitte4415 Yeah, I am dumb.
@brigittetitte4415
@brigittetitte4415 3 года назад
No dont get me wrong, im just wondering how difficult these topics are lol
@thehazarika
@thehazarika 3 года назад
@@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 3 года назад
@@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.
@leialo1267
@leialo1267 5 месяцев назад
"I want to learn programming, what language should I start with?", the answer should almost always be Python. • Python is like trying to learn how to drive automatic. You'll learn how to drive. You'll learn it fast and you'll be able to do it well. • Java is learning to drive a stick shift. Java is the best balance of learning how to program as well as learning how programs work. • C++ is like trying to learn to drive by learning how to manufacture, assemble, and then use a car.
@bennri
@bennri Год назад
Just like learning a natural language, use the tool that's best for your job. I learned programming in 1976 on my dad's Wang computer, and he bought me a TI55 for college. It helped me do my homework. FROM THEN I WAS MOTIVATED and after that I used whatever language was best for the job: Fortran, Assembly, C, Pascal, Perl, Python (and C++ or Java or Objective C when forced). Similarly when I learned Japanese I first learned phrases to get the girls' attention, and later I learned technical terms by reading ASJ papers. 4 hours for the first page, 2 hours for the next page, down to 20 minutes for the last page. Worked great. So if your daughter wants to do a rhythm game, have her learn whatever language is most appropriate for it. I write for iOS and for server-side. Guess which one I use Python for? Ever tried to get Python to work on iOS? Good luck.
Далее
How To Think Like A Programmer
1:00:07
Просмотров 2 млн
Guido van Rossum explains Python programming
20:54
Просмотров 206 тыс.
How I would learn to code (if I could start over)
10:52
The Art of Code - Dylan Beattie
1:00:49
Просмотров 4,7 млн
CS Professor Sounds Alarm on AI and Programmers
12:21
Просмотров 280 тыс.
Что еще за обходная зарядка?
0:30
3D printed Nintendo Switch Game Carousel
0:14
Просмотров 435 тыс.
СЛОМАЛСЯ ПК ЗА 2000$🤬
0:59
Просмотров 2,1 млн