I’ve Changed My Thinking On Self-Taught Development (...a bit)

  Рет қаралды 51,876

Travis Media

Travis Media

Күн бұрын

Пікірлер: 316
@FightFestAnime
@FightFestAnime 11 ай бұрын
I'm self-taught as well. 15 years professionally now. No clue if I'm doing it right though, but I guess I am, clients are happy.
9 ай бұрын
I am self-taught since I was 9y. BASIC on C64 sister computer (plus4) then ASM (BASIC was sooo slow :), then C on Amiga and DOS, Stroustrup v1 C++, Eiffel, Erlang, Obj-C in NeXTSTEP, C#,JS,TS,Rust etc.. it is an awesome ride , so many projects :)
@ivandardi
@ivandardi 11 ай бұрын
I did the opposite. I started with C, C++, then learned Python, did a whole bunch of Python while I was learning Rust, and now I use Python and Rust interchangeably depending on what I'm doing. Still, data structures and computer architecture are the absolute basis of knowledge when it comes to programming.
@codecaine
@codecaine 10 ай бұрын
I once had a friend who constantly hopped between different programming languages, never really mastering any. He often shared grand plans about undertaking a major project, but within a week, he'd shift his focus to learning a new language. I pointed out to him that, despite the years that have passed, he hadn't really created anything substantial. I suggested that if he had dedicated himself to excelling in just one language, he would have made far more progress than he did learning the varied syntaxes of multiple languages.
@SianaGearz
@SianaGearz 9 ай бұрын
Progress as you see it is overrated. I'm sure your friend learned a lot. Honestly when do you ever need to do everything start to finish? Most work is in filling out the gaps left by others and fixing bugs left by others :P
@tigana
@tigana 5 ай бұрын
I’m at this exact point in my career. Glad to know I’m on the right path. I’ve learning C right now to learn more about pointers etc. I’m fine with switching to Rust to get the same result. Want to learn more about computer hardware as well
@jonesherbert
@jonesherbert 11 ай бұрын
I'm self taught. I started with the big blue C Primer book. I was working nights so during the day when I couldn't sleep I worked my way through the exercises. I think that's the key, just do programming exercises in a low level language till you internalize how it all works.
@archermorgan
@archermorgan 10 ай бұрын
I'm now retired after 44 years of software development. I was lucky in that it was never a job for me, but a hobby that paid me a salary. I discovered your KZbin channel on Rust/Slint and my inspiration gear kicked in again, so thank you! Your lesson here to self taught developers is a great one. Of course, even if we learned something in college to be able to get that job, this career is always self-taught, and I'm wagering it will be that way forever. The languages I have learned were made much easier because I learned much lower level languages first. Assembler taught me how Cobol worked, C taught me how VB worked, etc., etc. Another lesson I learned in college and found very valuable throughout my career is knowledge of the data you are processing. Poor data structure design will be reflected in your code, even if your code is pristine. For example, writing software to process an over-normalized database is a nightmare. Thank you again for the inspiration, I'm now a fan!
@TravisMedia
@TravisMedia 10 ай бұрын
Thank YOU for sharing this!
@sanjaypoonaisingh4835
@sanjaypoonaisingh4835 9 ай бұрын
Your comment about understanding your data just clicked for me. I'm just starting to learn software development/engineering and I wrote a simple script which operated correctly but because the input data file was structured oddly it caused the output to act weird.
@ziebplew
@ziebplew 11 ай бұрын
As a Junior Dev with a CS degree, one thing I've begun to appreciate is tutorials. I think structured tutorials are actually pretty underrated. I spend a lot of my time reading documentation on the job and applying what I read but, ultimately, I learn things haphazardly in the process. Having someone start from square one and walk you through a framework, or what have you, is so valuable in being able to piece together a bunch of half digested ideas you might have gained from just reading the docs and doing trial and error in an IDE.
@tauraik
@tauraik 11 ай бұрын
thank you Travis, this is really valuable. I've been debating weather or not to learn a lower level language and now I think its the only way to really grow as a self taught developer its going to be tough but I'm sure so worth it at the end.
@kevinle9953
@kevinle9953 11 ай бұрын
i highly advocate going lower. i started my journey by coding in python and js, and after learning some java fundamentals (which helped me learn typescript/es6 classes), i feel life my base is so much stronger.
@yogeshhhhhh
@yogeshhhhhh 11 ай бұрын
I second this
@majahanson311
@majahanson311 11 ай бұрын
I agree, but I also suggest trying to go higher-level too. So many Java programmers would benefit from learning Scala, and same for C# devs learning F#. You end up bringing more concisely expressive approaches back with you to your primary languages
@SirusStarTV
@SirusStarTV 11 ай бұрын
When getting lower than *c/c++* e.g choosing *assembly* you would understand *c* even better. When the compiler constructs the function for yourself you don't really understand what those "calling conventions" like "__stdcall" really mean.
@platin2148
@platin2148 11 ай бұрын
I started with js on ie 8 i think, i never liked it to be honest, i then wanted todo game programming so i learned how to use im opengl. That i did in conjunction with learning C style C++ (handemade hero), i then moved for some months up several layers doung web development with back then raw javascript, then i wanted to see how other frameworks in that field are so looked into angular and preact/react and then i moved back to C++ developing a software for a ofen/heating circuit and now i moved one level deeper to develop systems with a custom RTOS fully in C, and even that wasn’t enough to statisfy my curiosity i learned app development for ios platforms on the side, and in the mid of this path when working with js i also learned Verilog to program Fpga‘s that was a lot of fun. My current goal is getting into PCB and hardware development on the side of my main job working on automotive rtos systems. Today’s code is still very much hmh style code and that is really nice to work with.
@platin2148
@platin2148 11 ай бұрын
Learning how code looks and works on the processor level is really amazing today. Compiler Explorer is one the tools people should take a look at.
@letstalkdev
@letstalkdev 11 ай бұрын
I heard someone say this at some point: Software engineers should understand at least two levels of abstraction above and below them. I keep repeating it because it is so true!
@TravisMedia
@TravisMedia 11 ай бұрын
I like it!
@platin2148
@platin2148 11 ай бұрын
I‘d probably say go by what leads you down the tree. There are things that seem to be rock bottom but there are layers benefit just harder to break in. Like if you work already at instruction level (asm from whatever platform) the step beneath is hardware design while i would probably start with discrete logic and then move to software based hardware design fpga‘s.. I did the mistake of doing the opposite and that left me blank on the analog side.
@imededdinenezzar6344
@imededdinenezzar6344 5 күн бұрын
I've been learning bits and pieces about comptuer sciecne concepts when I can for about ~7 years now, not that I'm a programmer, I just like to know how things work, it's just amazing how it shows you new ways of thinking and structure your thought process. now that I'm seriously considering software development as a carear, I'm just learning the details of how to apply those concepts to write code (and I'm only fluent in C, lol) I couldn't agree more.
@spaaaaace8952
@spaaaaace8952 11 ай бұрын
Thank you for affirming my thoughts. I recently graduated from a front-end BootCamp after getting into data analysis. What I realized is that I feel lost and stupid not knowing what's going on under the hood. Whenever I tell someone -- veteran or beginner -- that I want to learn a low-level language, they say that I don't, and that learning about data structures and algorithms is enough. While I plan to do that, I still can't be convinced that learning the basics from the ground up aren't essential, in every discipline, not just coding. After this video, I made up my mind to learn Rust instead of C++ or GoLang, for now. Not sure if I should learn Typescript first, though.
@benjiro1858
@benjiro1858 11 ай бұрын
you should learn whatever gets you where you want to be in 1-5 years. And be comfortable with the level of abstraction that you enjoy the most. Engineers are writing code everyday knowing only just enough above and below their chosen level of abstraction. It depends on what you're satisfied with. You don't necessarily need to know how V8 works to shipping fully functioning web products, but you could learn C++ and read their source code. Wants, needs, and curiosity are better drivers than fear.
@vagneralves3892
@vagneralves3892 11 ай бұрын
I really enjoyed your DevOps content, It would be nice to see more concepts about operations / infrastructure ( cloud) and system administration.
@TravisMedia
@TravisMedia 11 ай бұрын
Thank you for the suggestions. I'm planning more DevOps videos for 2024.
@vagneralves3892
@vagneralves3892 11 ай бұрын
@@TravisMedia I'll be waiting for it! thanks
@dameanvil
@dameanvil 9 ай бұрын
00:00 🛠 Learning Rust introduces the concept of ownership, fundamental for memory management. 02:41 💡 Starting with abstracted languages like JavaScript or Python is common but may lead to knowledge gaps later. 04:18 📚 Supplement learning with computer science concepts like memory management and data structures. 05:27 🖥 Consider learning a lower-level language like C or Rust to understand deeper concepts and improve problem-solving skills. 06:34 📆 Plan for 2024 includes regular videos covering essential concepts for self-taught developers.
@shawn14isme
@shawn14isme 11 ай бұрын
Im starting my programming journey with CS50 and raw C programming. Im on week 4. I feel like i couldn't imagine a language that abstracts away simple thinfs like strings and pointers. I cant wait to start messing with JS and python later in the class.
@TravisMedia
@TravisMedia 11 ай бұрын
I think you'll find the route you've chosen rewarding when you get to JS/Python.
@shawn14isme
@shawn14isme 11 ай бұрын
@TravisMedia hopefully! Im having some trouble deciding what direction i want to go after CS50. I really love game development. But web dev sounds way more viable and lucrative
@jesustarsia6994
@jesustarsia6994 11 ай бұрын
​@@shawn14isme i told myself that a few years ago and here i am... not learning web because i dont want to(i know basic html and css + js) and neither making my games in unity because i'm stucked in my desicion...
@SirusStarTV
@SirusStarTV 11 ай бұрын
@@shawn14isme many programmers don't really know what to do with their knowledge. There's not much ideas to implement, even if you have the idea there could be no motivation to progress the project. Getting money is more motivating for people to continue programming, sometimes you can't rely on yourself for getting motivation.
@TheExtremeCube
@TheExtremeCube 11 ай бұрын
In Java for an example, everything except primitives is a pointer. Which if you think about it is kinda stupid and unnecessary. It is nice to explicitly know if your type is passed by value or by reference (pointer). Abstracting this away makes things in some way simpler but in some ways also more complicated, because now in Java you can accidentally modify an object passed to a function without thinking. And this concept of passing by value vs by reference is obscured to new developers starting from java for an example. As far as memory management goes I feel like C++ RAII is also better than garbage collection. I feel like some language that allows the low level control, manual memory management and wide set of features of C++ but with a more modern build system, package manager and with reflection, maybe even extention functions, and something like Kotlins scope changing functions, and less verbose syntax would probably be my ideal.
@hannahd79
@hannahd79 10 ай бұрын
I’m just beginning my self taught journey and have been learning C as my first language to understand the fundamentals - this is the motivation I needed to continue doing what I’m doing!
@TravisMedia
@TravisMedia 10 ай бұрын
You can't go wrong with that...
@ChrisPirillo147
@ChrisPirillo147 11 ай бұрын
Thank you so very much for the invaluable insights. Exactly what I needed to hear at the perfect time. I was thinking I should get myself familiar with the low level concepts. Started with a high level, abstract programming language and now I need to pick up C++ or Java to dive into lower level implementation details.
@Nerdy_Aomeba
@Nerdy_Aomeba 11 ай бұрын
Wow amazing video! This is a great video idea to release and super helpful for people too.
@Strawberry_Htet
@Strawberry_Htet 11 ай бұрын
As a learner that started with cs50, I'm pretty proud of this. This makes me pretty easy to understand things.
@TravisMedia
@TravisMedia 11 ай бұрын
How was cs50? Was it beneficial for you? Do you recommend it?
@Viral757_
@Viral757_ 11 ай бұрын
@@TravisMedia Absolutely ☘☘ kzbin.info/www/bejne/bp6keoeZg9lqZ5I
@davidbolu2404
@davidbolu2404 11 ай бұрын
I had similar thoughts when I started learning programming. Surely it's not as easy as watching tutorials? If it was, devs won't be paid so much. So I felt I should challenge myself. After python I went to C#. I was a blast. I still use it today and it has made me learn a lot about concepts I won't have touched if i stayed with python only. Now when I write python, I even use type hints lol. I also got to know that there was ALOT i didn't know, there still is. But I'm glad, sort of. Thank you. I think going even lower with a language like rust will be helpful as well. I use C# more than python these days for backend stuff.
@TravisMedia
@TravisMedia 11 ай бұрын
Thats awesome. I think we have a very similar story. I landed a job a few years ago at a C#/.NET shop. That was my first exposure to a "lower" language and it's one of my favorites to this day.
@lee4547
@lee4547 11 ай бұрын
C# sharp is a high level language. Garbage collection is abstracted out. You rarely work with pointers unless you're working with unmanaged C++ code. I think I coded a bit mask a handful of times using C#. You have to go lower. Another thing is you need to learn math. All of these programming concepts are math. Functional programming is really functional math. Graph theory is used often when dealing with hierarchy's N levels deep.
@TravisMedia
@TravisMedia 11 ай бұрын
@lee4547 It is, but it's much lower than where many self-taught devs start and stay at. A JavaScript developer will gain much insight by taking a short course and building a few things with C# ("a list and array isnt the same?")
@lee4547
@lee4547 11 ай бұрын
I think with today's hardware you don't have to worry too much about the overhead of a generic list in C#. Why even use an array and deal with the resizing? You don't have that choice if you go with C. You need to learn how to resize dynamically, so the array is reusable after it's declared. Then they can learn how convenient a generic list is or even just a Generic in general for that matter and why a framework is necessary. I think understanding the math first and working your way up is probably the best way to learn IMO. It's not sexy but a formula is succulent and expresses clearly how it works. Code is verbose. You have great content btw! good job! @@TravisMedia
@TravisMedia
@TravisMedia 11 ай бұрын
Thats good stuff. Love these convos that help people move forward!
@CruciformCoding
@CruciformCoding 11 ай бұрын
Excellent and relatable video. I had been mostly self-taught when I got my first real web dev job. After a couple of years I began learning Go. It made me a better dev in all the other languages I was using. I did end up getting a bachelor’s degree a few years later, but I really appreciate lower-level languages now… like you said, TS > JS. 😂
@TravisMedia
@TravisMedia 11 ай бұрын
Go is another good one!
@fern-cx3bf
@fern-cx3bf 11 ай бұрын
Hello friend, i noticed that your comment is pretty recent, so i’d like your perspective on my situation. I’m in HS right now and in 8 months i plan on going to a community college for a SWE degree. The course is 40 months and overall it costs of 40’000 pesos ( around 2000 dollars ). It’s very very cheap to get and i get 8 months cut off than the average 4 year course. Do you think it’s worth it? I know it’s not necessary to have a degree in my field but would the degree be a good rate of investment?
@maxfrischdev
@maxfrischdev 11 ай бұрын
@fern-cx3bf In my humble opinion, if it does not put you into BIG debt, like it does in the US.. Yes. We have to keep in mind that "you don't need a degree to get a job anymore!🎉🕺🏼💃🏼" ..gets views.. Many companies, big and small, still prefer people who went through a structured university curriculum, learned CompSci basics AND(!) showed that they can learn and finish something! Don't take that fact too lightly! If you can afford it without going into detrimental debt, I would recommend to still get a degree in either Computer Science, or Software Engineering! It does much more for you than "..It doesn't hurt" Make friends(maybe rather learning-friends, nerdy-friends, "lets make some computer business-friends", than just the party-friends 😂), nurture those contacts(they might be very useful long-term friends and even maybe one day work somewhere and can recommend you for a job, if you are looking!) And.. try to really learn and use what you study in class, don't just panic- prepare for the exams 2 days before 😅 Try to do internships in what ever company in what ever at least somewhat IT/Programming related role, it will help you A TON later when applying for jobs! Thank me in 3 years and 4 months! 😊 (Yes, I wish I could tell younger Me some of those things... 😅)
@maxfrischdev
@maxfrischdev 11 ай бұрын
​@@fern-cx3bf.
@Fifciuu
@Fifciuu 11 ай бұрын
Very valuable video. I am somewhere in place you described. I've already grasped some more low level concepts, playing with Golang, sometimes with algorithms and data structs (e.g. recently I had week with binary trees). It doesn't necessarily have direct impact on my frontend developer carrier. However, I think it has implicit impact, I have feeling like I grew as a developer, generally.
@shafialanower3820
@shafialanower3820 11 ай бұрын
I am learning c# right and I have had a way more pleasant experience in learning and understanding stuff than when I started python during my college days
@ChaosArtist
@ChaosArtist 11 ай бұрын
I started coing in Python, then I started using JavaScript more for my job. I'm a self-directed learner also. Thanks for this this video. Learning a lower level langauge like Rust makes sense and I have found myself dabbling in it the past few months. I plan on dedicating more time to it.
@harleyspeedthrust4013
@harleyspeedthrust4013 5 ай бұрын
Very good advice, but it's still important to learn C and even some C++ IMO, but probably after Rust. Rust is not quite as low level as these two, so you'll learn some more about how computers work under the hood. You'll also learn WHY Rust is the way it is, and it's important here to learn Rust first because you'll translate good memory managements habits from Rust into good habits in C and C++. You'll also see how easy it is to mess up with C and even with C++ which will give you a better appreciation for Rust
@brianm6965
@brianm6965 11 ай бұрын
If you can learn C++ everything else in every other language makes a lot more sense. Writing asynchronous code in C++ means I have a deeper understanding of async/await in C# or JavaScript.
@theintjengineer
@theintjengineer 11 ай бұрын
Precisely. I started and stuck with C++ and every other language was just a matter of syntax. I was able to pick up TypeScript, Rust, Python, and C# quite easily. It would have been the same with Java, if I had wanted to. Had I come from any other languages, I would have had a harder time, especially with Rust. Had I started with Rust, it would have been almost as complex as C++. But after you spend your fair amount struggling with C++😂, then you're good, bro. You can pick up everything else.
@devon9374
@devon9374 11 ай бұрын
❤❤❤​@@theintjengineer
@TheMrblaster2012
@TheMrblaster2012 10 ай бұрын
I am learning javascript, should I switch then'
@jsonkody
@jsonkody 9 ай бұрын
​@@TheMrblaster2012 No! Keep learning, stay focused and stop finding ways to totaly destroy your progress (like jumping to new thing every week without learning anything). Its not so much important what the first language is AS it is important to make it from start to end.
@TheMrblaster2012
@TheMrblaster2012 8 ай бұрын
@@jsonkody thanks I'll keep it in mind
@vitalyl1327
@vitalyl1327 11 ай бұрын
Even C# developers must understand in depth the difference between the stack and the heap. Less so with JVM, but still important.
@TheExtremeCube
@TheExtremeCube 11 ай бұрын
I am self thought and for the last year I have been working on a game engine + game in C++ and it is the best decision I have ever made in my programming journey. I have found practical applications for that stuff that interviewers like to ask that I considered unimportant before like time complexity and data structures. I have actually come to enjoy CS fundamentals now.
@grimjim8463
@grimjim8463 10 ай бұрын
Taught myself web dev and changed careers (JS/React), this year I'll be attempting to move into data analysis and focusing on Python. I'll also be picking up Rust, no rush, I'll be doing it slowly on the side just for fun to help expand my knowledge.
@hellshulk
@hellshulk 10 ай бұрын
I knew it when I was just 19 years old. But still I walked away from pointers towards Java. It the best language being platform independent.
@ldandco
@ldandco 11 ай бұрын
Excellent video. The value of a Software Engineering degree is untangible My first language was Logo (the turtle) during the 80s. Then I continued with Basic, Turbo Pascal, then C and Borland C++.
@PhrontDoor
@PhrontDoor 11 ай бұрын
They are great first languages. I, too, advocate for the possibility of python being a first language. But something like C/C++, even Pascal are gonna be one eventual (soon, near the beginning) necessity. And that's for no other reason than it exposes you to precisely those kinds of things as memory handling/management, semaphores, messages, interrupts, and a genuine manner by which to code your own data-structures such that you can see what is going on.
@platin2148
@platin2148 11 ай бұрын
I think the first language should be something strongly typed to not get to frustrated if you can’t figure out why something gives you wrong answers.
@utubes720
@utubes720 11 ай бұрын
I learned C, C++, and Assembly language in college, and fell in love with programming - No "web page" interactive widget feedback needed. I am so glad I did it that way. It's crazy to me how so many self-taught developers only know JavaScript or Python and have no idea how anything really works under the hood. And knowing other languages gives you an appreciation for why so many consider JS web development ecosystem a hot mess.
@extremrams
@extremrams 11 ай бұрын
Fantastic video - looks like we took similar paths. it was exactly the heap/stack part in the rust book that inspired me to start my journey to fill the holes i always avoided :)
@TravisMedia
@TravisMedia 11 ай бұрын
Interesting!
@kirara2249
@kirara2249 11 ай бұрын
my first programming language is Python, after learning this programming language, I just feel like I'm typing some english word, not programming. So I switch to C, and it like a new world, everything now have sense, I know the meaning of what am I doing, it's great experience. Even though everyone said that you don't need to learn much language, but I want to try other language some day.
@MaxTheFireCat
@MaxTheFireCat 11 ай бұрын
To add to your point, it was only when I learnt about tcp/ip, the osi model, networking and HTTP more in depth that many javascript concepts clicked for me
@TravisMedia
@TravisMedia 11 ай бұрын
💯
@alexaneals8194
@alexaneals8194 11 ай бұрын
I started as a hobby programmer with BASIC then C and then Assembly. Learning the lower level languages like Assembly can help you, but I would also recommend that you learn the basic data structures and algorithms. For example knowing about Binary Search Trees can help you understand why database indexes can be expensive (the trees need to be re-balanced for the inserts and updates and that can be costly).
@thisbridgehascables
@thisbridgehascables 11 ай бұрын
I’m self taught and can basically look at something and kinda dissect it down to its parts , then build off of it to learn. Yet, there’s concepts on the lower levels I bet would just allow me to see what I’m not seeing, or understand why things are the way they are.
@krailamohammedislam6822
@krailamohammedislam6822 11 ай бұрын
Amazing video, looking forward to see your future concept videos
@imflyingoverclouds
@imflyingoverclouds 11 ай бұрын
Waiting your concept videos!
@donjindra
@donjindra 11 ай бұрын
I've been programming for 45 years. I've always been most interested in the nuts and bolts of these systems. For my first 20 years 90% of my programming was in assembler. So I came at this in the opposite direction that you did. I took computer science classes in college but anyone in this business should know that if you're in it for the long-haul you are always mostly self-taught. Almost everything I learned in a formal setting in college is now obsolete. I'm glad to see that you realize that understanding what goes on under the hood is very important. Btw, I hate Rust. I see no advantage to it. I predict it will quietly disappear.
@electrictrojan6719
@electrictrojan6719 11 ай бұрын
I'm curious to know more? Please tell :)
@conradmbugua9098
@conradmbugua9098 11 ай бұрын
That's what they said (quietly disappear)about js and php but they're still going strong
@johndoe-uo8nn
@johndoe-uo8nn 11 ай бұрын
but Russinovich (sic!) says the opposite. what is your contrarguments?
@donjindra
@donjindra 11 ай бұрын
@@johndoe-uo8nn I'll list a few. 1) Rust is almost unreadable. This is a problem especially today when most programmers seem to believe code documents itself. 2a) Hidden garbage collection in an embedded system is almost never needed and 2b) is not even appropriate for most limited resource machines. It's best to know exactly how much RAM is in use. This may not be as big a factor in a virtually unlimited resource machine, but I'd rather use Python there than Rust any day. 3) Rust is designed for idiot programmers who are prone to making amateurish mistakes. It's basically the nanny state in the computer language environment. 4) Rust tries to keep a good programmer from doing what he wants to do. He wastes time trying to work around that. Time is better spent elsewhere. 5) The way Rust allows (practically forces) you to use and reuse the same variable name is insane. It's easily abused. It adds to #1 above. (I'm not a fan of c++ polymorphism either.)
@steveoc64
@steveoc64 11 ай бұрын
I’m only 42 years in programming now, and 100% agree about rust fading away to irrelevance. It’s all been tried before and failed miserably, for similar reasons. It will join a long list of “seemed like a great idea at the time” concepts that died out from an overdose of wishful thinking, whilst ignoring its obvious downsides. Good riddance
@fabricehategekimana5350
@fabricehategekimana5350 11 ай бұрын
Thank you for this informative video ! I have to admit that I struggle with design patterns in general
@jamesbell8148
@jamesbell8148 11 ай бұрын
10/10 content you really are helping on a massive scale thanks so much
@maxfrischdev
@maxfrischdev 11 ай бұрын
THIS! Great and very important Video Travis! Well packed and hopefully not too scary but rather motivating to "go deeper" for the newbies of us, who start(ed) out with a loosely dynamically typed high level language! 🤘🏻🤘🏻💪🏻🤓
@LG-bb5zq
@LG-bb5zq 11 ай бұрын
C is very fun to learn imo. I learnt it as a first language and it has served as a very good basis for learning other languages. It forces you to understand the way memory works, and how a program is really running under the hood. The issue with C is that memory leaks and bugs are very easy to write, because of the manual nature of C's memory management system. Looking forward to trying Rust!
@etherweb6796
@etherweb6796 11 ай бұрын
C is better. (Imo, ofc) - Rust is a syntactic nightmare that can be avoided by following proper programming practices in C. The only thing Rust has that I wish C did is slightly better metaprogramming - but even so, it is worth not having it to not having to deal with Rust's attempt to make c++ style coding "safe"
@platin2148
@platin2148 11 ай бұрын
It seems like a lot of people don’t think beyond std today so they write stuff that still uses arrays without length, pointers instead of slices and didn’t get that most people have a set of different life time memory allocators. I suggest taking a look at handmade hero it shows and teaches a lot of things.
@carloseduard317
@carloseduard317 11 ай бұрын
Amazing Travis. I'm self-taught...I like to learn from books and videos. But in the futureI intend to pursue a degree.
@lwa.dev74
@lwa.dev74 11 ай бұрын
I found d this rief talk/discussion very informative... do you have e a bootcamp course Travis? I hope one day that this exists on your platform your content is always too the point and I appreciate your realistic incites and views as it keeps me grounded as as a self taught learner and enthusiast
@Shogoeu
@Shogoeu 11 ай бұрын
A lot of people bad-talk University Computer Science education, but you learn things there that help you if you want to be more than a code monkey.
@Eric-le8on
@Eric-le8on 11 ай бұрын
That little blurb, right there, that got a 👍, thank you for being a creator!
@aloSolo
@aloSolo 10 ай бұрын
Thank you this definitely helps, bc even though i see how javascript makes things work, and i see why people say it works, i wanted the why’s. Thanks looking forward for your videos.
@L8rCloud
@L8rCloud 11 ай бұрын
My first self taught language was C++ and that was accompanied with heaps and stacks. It was very frustrating Then I did a course in program design and algorithms (using Basic) Then Lingo Scripting for CD ROM Then Java JavaScript, HTML, CSS (When JavaScript was horrible) ActionScript 2 (when Flash finally became useful) ActionScript 3, asynchronous (Flex) JavaScript (When flash died) C# (Xamarin for hybrid mobile) Now I’m doing embedded Systems (IoT) …..understanding how computers actually functioned (stacks and heaps) and then algorithms and design forced me to become a better programmer Being self taught (and being abstract in my thinking) allowed me to get ahead of programmers with diplomas who had drilled into them what was ‘possible’ and what ‘wasn’t’
@johannes.sbw-media
@johannes.sbw-media 2 ай бұрын
At uni I build my own language parser and compiler. That is where I learned so much. There is one downside though. As one kind of knows on an inimate level what goes on underneath makes very tempting to do optimizing where it doesn't make sense. The number of SO questions asking whether foreach() is faster than for() are a result of just this.
@ocxigin9220
@ocxigin9220 9 ай бұрын
This is what am currently doing. Thanks for sharing ❤
@0xglitchbyte
@0xglitchbyte 11 ай бұрын
Fantastic video Travis! The problem many self-taught devs face when we start learning what we don't know while not knowing what we don't know. It's a difficult paradox to trudge through, but going learning compsci fundamentals and going lower in abstraction layers will get us there.
@conradmbugua9098
@conradmbugua9098 11 ай бұрын
I think hackathons and tech meetups are great places to meet mentors or learn how the industries work
@TravisMedia
@TravisMedia 11 ай бұрын
Thanks for the Tweet inspiration and talking point. Looking forward to the content you're current planning...
@shneor.e
@shneor.e 11 ай бұрын
Yes, do videos on lower level stuff, really excited for that
@WinstonCodesOn
@WinstonCodesOn 9 ай бұрын
Yes, to some degree understanding all the mechanics of what the computer is doing in memory management helps - but you don't need a CS degree to learn that. You can pick up any of these topics yourself. I did it by picking up the right books (well... we don't use books now - use websites and KZbin).
@techlifejournal
@techlifejournal 11 ай бұрын
4:54 What you said is 100% right but unfortunately, I come from a tier 3 college (India) and I learned most of the stuff from KZbin and the internet. I recently watched a Netflix show called The Playlist (a web series based on Spotify like how they tackle their problems and are well-established as a music streaming company) where the core dev modified the network protocol to make Spotify fast. After seeing this I have realized I know nothing, though we studied the OSI model at college I think learning things by doing is the most appropriate way, we don't find the time when we do a job but on weekends I do want to learn stuff, and scale up. Can you please provide me a road map to improve?
@tnetroP
@tnetroP 11 ай бұрын
I picked up 6502 Assembler at 12 years old (Commodore 64) and C at 18 years old (Amiga 500). If I hadn't done that then I wouldn't have built a career in IT. I look around me and I'm amazed at how most of my colleagues don't understand how computers work at a very basic level.
@EfosaMichael
@EfosaMichael 11 ай бұрын
This here is the holy grail... thank you for sharing.
@korg47237
@korg47237 11 ай бұрын
Interesting, I've self-taught Python the past few years and I haven't realized you allocated memory in lower languages still, I thought that was a thing of the past. Maybe it's time for me to finally pick up Rust
@TravisMedia
@TravisMedia 11 ай бұрын
In Rust you don't have to manually allocate/deallocate memory, it has a unique approach that still will require you to get your hands dirty and know the concepts.
@korg47237
@korg47237 11 ай бұрын
@@TravisMedia Right poorly worded from me haha, exactly for those points I want to get into that. Thanks!
@platin2148
@platin2148 11 ай бұрын
Probably better to get into C++ to really get the gist..
@roz1
@roz1 11 ай бұрын
You have to know the base of CS to understand what's going on.... C ,C++ will make u so much better that u will start understanding more abstracted languages like python
@TheMrblaster2012
@TheMrblaster2012 10 ай бұрын
I am doomed then because I have been learning JS for a while so I'd have to switch to one those languages to get a better understanding of CS :c?
@TrusePkay
@TrusePkay 11 ай бұрын
I learned C/C++, but C# and F# remains my favourite languages. They are very sophisticated and really introduced me to the world of coding. But I found a future in data science, and so I had to settle for the boring language we call Python
@Imbalancement
@Imbalancement 11 ай бұрын
Great content! How do you suggest going about filling the wholes with concepts? Videos or books? Also which concepts do you believe are the best to learn to improve one’s coding skills?
@gavincoulson3900
@gavincoulson3900 11 ай бұрын
Looking forward to the 2024 videos!
@aminjafarlou8919
@aminjafarlou8919 10 ай бұрын
Thanks for this amazing video. Where can we find these videos about concepts for self-thought developers?
@psygirl0111
@psygirl0111 10 ай бұрын
I am trying to be a self taught programmer, but I am failing. I have been trying to learn Java (at my friend's suggestion since Java is still pretty much used in IT) without any success. I was looking to get a job as a QA Engineer, so I thought I should step up my game. The main reason I keep failing over and over is because there are so many tutorials and videos on YT and everybody has a different style of explaining. Before you know it I am going down this infinite rabbit hole of youtube tutorials and learning platforms. At some poing I even dropped Java and started learning Python, because some tutorial told me that it's going to help me be a better QA Engineer one day... I've mastered neither of these two languages. After a year and a half I lost all motivation to learn anything at all.
@OlaftheSavage
@OlaftheSavage 11 ай бұрын
I started off self-taught then got an AS and BS. What I will say about college is that it forces you to learn boring things that you wouldn't otherwise and may be necessary (although they do it as slowly and expensively as possible). That's why I recommend self-paced schools like WGU, as it's the best of both worlds.
@le.secchic
@le.secchic 11 ай бұрын
WGU Baby!!!!!
@harrisbuild
@harrisbuild 11 ай бұрын
wow looking forward to those low-level stuff as well!
@acp28
@acp28 11 ай бұрын
This video was eye opener. Thanks. Keep making such stuff.
@ricoblake
@ricoblake 10 ай бұрын
Your videos are fantastic. You explain things very well. I've just become interested in development and I'm looking to go in the direction of Udemy courses. Your videos I believe will be helpful because they're preparing me for a journey that I have no idea about currently. The information you're providing is advising of how to go about it while ensuring that potential gaps are filled throughout the process which I think is soooo valuable. Thank You for taking the time to provide this info. Great quality as well.
@wombozombo
@wombozombo 11 ай бұрын
I got a course off of udemy on data structures and I've been enjoying it. Not at all boring to me 🤓
@burigolucas
@burigolucas 11 ай бұрын
Good content. I am a self-taught myself and noticed these holes long ago. Definitely recommend taking the time to learn the concepts. I would suggest you creating a curated list of must-read books for people in this situation. You have big reach with your followers, why not use that to create such a list for everyone? Videos are great, but books are the best to get deep in the concepts.
@TravisMedia
@TravisMedia 11 ай бұрын
I think that's a good idea.
@omercakmak3099
@omercakmak3099 11 ай бұрын
that would be great actually
@platin2148
@platin2148 11 ай бұрын
Sadly there are a lot of books out there that will teach stuff that is better to put in the trash bin. Especially a lot of graphics books leave a lot out to then let people create trash systems that are very bad designed.
@Bhavishya_est
@Bhavishya_est 11 ай бұрын
The thing which you said in the video which is supplement with concepts this thing is being taught in Indian colleges where from we are 2nd year we are forced to learn Data Structures and Algorithm heavily
@professorfoozle
@professorfoozle 11 ай бұрын
No one ever talks about learning another low-level very fast language (as fast as C++): D. D (lang.) is super fast. But, not as fast as the forgotten language: Common Lisp. Common Lisp has been tested to be much faster than C++. As a matter of fact, Common Lisp has been tested to be the fastest language out of 88 tested languages for performance-1st place: Common Lisp; 2nd place: C++; and third place: D. Common Lisp can be used efficiently for AI development. And, Common Lisp is the only customizable language that I know of. But, it's never taught in schools. The same thing with D. D is more user-friendly, and quicker to learn than C++ and C. But I don't know why D is not replacing C++ in the large-scale software world. And D lang. is much faster than Rust, according to these benchmarks.
@big-anvil
@big-anvil 11 ай бұрын
Benchmarks are misleading. It’s difficult to test what language performs better in every situation. A 2ms difference is not significant at all. Also Lisp is a functional language. In my view functional languages are fun to learn for a bit, but they can’t seriously replace C++. That’s a funny joke lol.
@andreas_tech
@andreas_tech 11 ай бұрын
Hi, looking forward!
@xybersurfer
@xybersurfer 11 ай бұрын
learning Rust to get a deeper understanding seems like good advice. only problem is that the Rust compiler is much more pedantic than C and C++, so next to learning about things like pointers, you would also have to learn other concepts at the same time like the borrow checker. it doesn't have to be a problem though, but it's something to consider. also, i don't agree calling languages "higher", for lacking static typing. this is usually a bad thing
@platin2148
@platin2148 11 ай бұрын
They are considered highe in the level of how abstract they are. Using types and pointers makes it lower not in the sense of understanding but in the ability todo stuff.
@xybersurfer
@xybersurfer 11 ай бұрын
@@platin2148 if you look at TypeScript or C#, then those have static type checking and lack pointers. but that doesn't mean that JavaScript is higher level, than those just because it lacks static type checking. static type checking is a separate issue
@platin2148
@platin2148 11 ай бұрын
@@xybersurfer "A programming language is considered high-level if it is closer to a human language like English and low-level if it is closer to binary"
@xybersurfer
@xybersurfer 11 ай бұрын
@@platin2148 ok. but, what does that have to do with static type checking?
@sehmusakbas
@sehmusakbas 10 ай бұрын
hey man this video earned you a new subscriber!
@pluderr3947
@pluderr3947 11 ай бұрын
Hey Travis, I am going through this exactly! I went from first learning SQL to Python to HTML and CSS. Then when I got to Java this week, nothing clicked! Especially Spring and Spring boot. I felt like before I was a sponge, being able to soak all of this knowledge and thought programming wasn't THAT hard but now since facing Java and it's frameworks, I now feel like a sponge with holes all over. Definitely demoralizing but at the same time, I have to remind myself that it's only been a week since learning Java and I need to slow down. I guess learning all of those markup languages and high level languages like Python in less than a month really made me think I can learn everything else the same way. A good reality check for sure!
@benjiro1858
@benjiro1858 11 ай бұрын
Based on your learning track so far, these are low barrier-to-entry items but likely you've only skimmed the surface. Focusing on common concepts can help tie things together. Web frameworks tend to have similarities, it'll help lower the barrier for spring if you've spent time with flask or django. You're right about slowing down, or more-so slow down in order to speed up. You're probably trying to learn too much in parallel (syntax, logic, web framework concepts, spring-specific nuances, etc). If you're comfortable with Python, it may help to learn the concepts there first before going back to Java. By then your questions would be more like "how does springboot do XYZ? What does spring do better or worst than django/flask?".
@blackaccel
@blackaccel 11 ай бұрын
Hey Travis, you helped me land my first job in tech with your advice "If it's not now then when... Be bold" I'm 33 years old and I'm doing good now after five years of struggle. Today I celebrate a month since I got in. From the bottom of my heart, thank you.
@TravisMedia
@TravisMedia 11 ай бұрын
That’s awesome, congrats!!
@jamestoney24
@jamestoney24 11 ай бұрын
Good job🎉 I'm trying to learn by myself but it's hard as I have adhd , what language did you start first and how did you learn
@davidhelman3045
@davidhelman3045 11 ай бұрын
Newer developers need to know various data-structures and when/why to use them. I have seen many newer coders use a list/vector ect for everything when really the better thing would be to use a hasmap, or a b-tree. Even things like a linked list vs a queue vs a stack are really important to understand and the tradeoffs between them.
@conradmbugua9098
@conradmbugua9098 11 ай бұрын
Aren't queues and stacks implemented using linked lists?
@HusnyAhm
@HusnyAhm 11 ай бұрын
This is some solid advice. I feel it
@Sheblah1
@Sheblah1 11 ай бұрын
I like to take the knowledge gained from learning machine learning principles in python and then creating small applications in visual basic 6 to test my knowledge and to prove to myself that I truly know what I think I know. If that makes sense.
@ttrev007
@ttrev007 11 ай бұрын
I am just starting out, my plan so far is to first take CS50P Python then CS50x. The idea of taking CS50x first seemed to much with it introducing multiple languages so i though learning python first would be an easier start. I think i was right. just learning python is plenty enough to start with. I look forward to your videos.
@TravisMedia
@TravisMedia 11 ай бұрын
Sounds like a great plan.
@PrimoTX
@PrimoTX 10 ай бұрын
I've started the self taught route and I'm doing CS50x and really taking the time to fully learn C programming, before moving on I am cross referencing and doing the free courses on Codeacademy for the topics CS50x is covering. My plan is to do that through and continue with CS50W and then CS50P. I plan on cross referencing the JS from CS50W with codeacademy/Udemy. Would this be a pretty good approach or should I take the time to learn C++ or C# maybe even RUST before JS?
@lee4547
@lee4547 11 ай бұрын
You need real life experience with reference pointers and values in a large scale systems to understand from a practical perspective why it's important to know these things. Programming without a garbage collector is completely different then these high level languages that abstract everything out and lower the bar for entry level devs. I guess that's the point though.
@cattelia
@cattelia 9 ай бұрын
I really appreciate this video. Thank you.
@etherweb6796
@etherweb6796 11 ай бұрын
I think it is different for different people. I tried C++ early on and didn't click, but JS did - now I don't really feel uncomfortable reading any programming language. I would have liked to learn C a bit earlier - there is a lot of FUD put out about C, but it is really a great language. I also find that some of the data structures etc are things you already will know intuitively after programming for awhile - for example Arrays in JS, despite being wrapped in a bunch of syntactic sugar, work much the same way as in C (you can even solve problems the same way as you do in C in JS )
@ukaszferenc5249
@ukaszferenc5249 11 ай бұрын
Funny enough I have similar story. Started with Python and I felt like monkey re-keying what i see on the screen. Couldn't get why I am doing it. After doing CS50 + computer science crash course (10 min videos on YT) it all clicked on fundamental level. And now I am tinkering with Rust just for fun.
@vagneralves3892
@vagneralves3892 11 ай бұрын
C# seems to be a fantastic language!
@henrik3098
@henrik3098 11 ай бұрын
it is bro
@mylotundinho
@mylotundinho 11 ай бұрын
Its one of the very best. It's popular yet underrated.
@platin2148
@platin2148 11 ай бұрын
Yeah lots of concepts to a kitchen sink level. Extremely abstract.
@hdjfjd8
@hdjfjd8 11 ай бұрын
One suggestion would be to make a roadmap style video covering the concepts that one should be aware of . Also I have a question , will learning Java help in covering the same concepts as C,C#,C++ or Rust ?
@TravisMedia
@TravisMedia 11 ай бұрын
Wish I could comment on Java but its a language I really have not used much. But it would be similar to C# and would be beneficial for sure.
@SirusStarTV
@SirusStarTV 11 ай бұрын
It's object oriented language so it would cover same concepts, of course there could be differences.
@platin2148
@platin2148 11 ай бұрын
Probably C++ as an option if you want a lot more mixed bag that gives a lot in both directions. Getting into java would remove some steps to the eve higher level languages like JS. I dunno how useful it is downwards to be honest as there using not just objects as typical.
@HarshColby
@HarshColby 11 ай бұрын
I don't know if learning C first would have turned you away from programming. I learned FORTRAN first, then a multitude of assembler languages. I loved the low level stuff.
@platin2148
@platin2148 11 ай бұрын
It’s amazing what is possible if you know memory layout and how instructions work and what a abi is. Recently found a amazing way todo better formating by implementing a va_arg with size instead of type.
@darasvlogs
@darasvlogs 8 ай бұрын
Hi Travis - I am 38yrs plus now & planning to switch career to IT. I checked your earlier video where you explained your life journey & it really inspiring & motivates me alot. I have 11 years on non IT job. But now decided to enter into IT field. I have been watching lots of similar content video. I don't know what to start and where to head to. I am thinking to learn python basics then do a course in data science & AI. Could you recommend me a roadmap please. Thanks in Advance! I am from India
@zohahs5276
@zohahs5276 11 ай бұрын
Nice one please do a learning path for ML and AI like a road map path you did before.
@CLeovison
@CLeovison 6 ай бұрын
Hi Travis, what do you think about go lang? Even though it was not really a low level language since it was a garbage collected do you think it was worth to learn? I was really interested with it
@bayercs2k
@bayercs2k 4 ай бұрын
self taught, and I started in Z-80 assembly and C. I learned data structures and algorithms before I started. not all self taught start at high level.
@pietro5856
@pietro5856 11 ай бұрын
For self taught I think cs50 is a must , because you learn C and how memory works!!
@TravisMedia
@TravisMedia 11 ай бұрын
Yes! Just watching those lectures alone I think would be of benefit.
@sharondvir5355
@sharondvir5355 10 ай бұрын
Hey Travis, excellent valuable content. One request, please cover Multithreading in Python. 🙏🏿
@NowOrNever523
@NowOrNever523 10 ай бұрын
Self taught programmer since 2021, still continueing to grill on JS and react.. 😮. What long journey?
@SquaredIndex
@SquaredIndex 10 ай бұрын
I started with JS and have just started learning Go. Does that fit would you’re talking about here? It uses structs and pointers etc
Why Self-Taught Developers SHOULD Get Certified
13:06
Travis Media
Рет қаралды 89 М.
A Crucial Habit I NEVER Considered As A Developer
7:53
Travis Media
Рет қаралды 13 М.
The Ultimate Sausage Prank! Watch Their Reactions 😂🌭 #Unexpected
00:17
La La Life Shorts
Рет қаралды 8 МЛН
Hoodie gets wicked makeover! 😲
00:47
Justin Flom
Рет қаралды 131 МЛН
The Singing Challenge #joker #Harriet Quinn
00:35
佐助与鸣人
Рет қаралды 41 МЛН
DONT use Neovim!! (in these scenarios)
8:56
typecraft
Рет қаралды 31 М.
Why do developers hate Rust?
8:20
Let's Get Rusty
Рет қаралды 141 М.
Why 95% of Self-Taught Programmers Fail (Honest Advice)
12:16
Andy Sterkowitz
Рет қаралды 410 М.
AI WIll Make Us ALL Dumb!...Unless
9:46
Travis Media
Рет қаралды 11 М.
Self-Taught Programmers... We need to talk.
7:37
Kenny Gunderman
Рет қаралды 25 М.
CS Professor Sounds Alarm on AI and Programmers
12:21
Travis Media
Рет қаралды 292 М.
Programming Is NOT Enough | Add these 7 skills…
13:19
Travis Media
Рет қаралды 420 М.
Every Programming Language Ever Explained in 15 Minutes
15:29
Flash Bytes
Рет қаралды 355 М.
Hitting RESET on your coding career...
12:04
Travis Media
Рет қаралды 21 М.
The Ultimate Sausage Prank! Watch Their Reactions 😂🌭 #Unexpected
00:17
La La Life Shorts
Рет қаралды 8 МЛН