What Self-Taught Developers NEVER Learn

  Рет қаралды 164,217

Tech With Tim

Tech With Tim

Күн бұрын

Пікірлер: 603
@TechWithTim
@TechWithTim 3 жыл бұрын
Hey everyone. I think a lot of people took this video the wrong way and that’s totally my fault. I don’t mean to say ALL self taught developers never learn these topics, they are simply the things I know personally I hadn’t considered learning until attending university and that In my experience a lot of devs that haven’t been in a traditional school system don’t learn. I’m sure many self taught developers do learn these topics and are far better at them than I am! I also wanted to clarify that not everything on this list is necessary to learn (as I stated many times in the video). This videos objective was to introduce some topics some self taught devs may not have considered learning so that they can have a kind of road map or idea of topics they might want to look at next. Apologize if it came off the wrong way 👍
@atharvbindal2058
@atharvbindal2058 3 жыл бұрын
no worries
@gedwistle1974
@gedwistle1974 3 жыл бұрын
The title literally says NEVER in all caps. Does youtube not allow creators to change titles?
@armoniembezabih2058
@armoniembezabih2058 3 жыл бұрын
As someone who is in college and also who is a self taught..i think you are right i mean most self taught didn't consider learning them so it is a great thing you just tells us this things to consider..thank you
@ellisbelfer1340
@ellisbelfer1340 3 жыл бұрын
The title is very arrogant. There are a lot of people with degrees other that computer science that work in this industry. i have 35 course hours of mathematics and electrical engineering. Including calculus and linear algebra. I think system administrator know a little about operating systems. I studied Introduction to Algorithms by Thomas H. Corman and Tanenbaum's Modern Operating Systems and audited a Mathematics for Computer Science from MIT. I have been in industry for over 25 years and currently work as a Devops Engineer. The only never is never stop learning.
@renegaed
@renegaed 3 жыл бұрын
You should consider changing the title if you feel you have misrepresented something.
@LordOfNihil
@LordOfNihil 3 жыл бұрын
as a self taught coder ive also taught myself a lot of maths in the process. if you can teach yourself to code you can teach yourself other advanced concepts. i also taught myself electronics so i know the computer all the way down to the transistor level.
@cybrdelic
@cybrdelic 3 жыл бұрын
Same been learning more maths than some grads by the end of high school by self teaching. Self taught means you can learn anything. I dont understand the "credentials giving you secret knowledge"argument.
@LordOfNihil
@LordOfNihil 3 жыл бұрын
@@cybrdelic credentials get you in the door. its really just proof that you signed your life away into student loans so your potential employer can have leverage over you. they don't care if you are good at what you do or not. they can train you on what you need to know to do your job.
@cybrdelic
@cybrdelic 3 жыл бұрын
@@LordOfNihil i got in the door without it
@sharan9993
@sharan9993 3 жыл бұрын
I am learning the same stuff u learnt now but it takes a lot of time. I enjoy learning all this stuff but want to know how long it may take before i get a job. Say i started from scratch how long would it take to learn the basics and job relevant skills?
@generationalpha1126
@generationalpha1126 3 жыл бұрын
With no degree and 30 projects on your portfolio... you are a hot cake... But if you want to pay a wholesome load of casg to some college who use the same resource online to teach you.
@CyrilSz
@CyrilSz 3 жыл бұрын
Rename the title to : What Self-Taught Developers should also learn, because you could learn all this stuff online too.
@sakibhasan7857
@sakibhasan7857 3 жыл бұрын
Right
@NourAhmed-go5jo
@NourAhmed-go5jo 3 жыл бұрын
Not as click baity
@jacksonsingleton
@jacksonsingleton 3 жыл бұрын
I would say this is a fairly inaccurate title as well. A lot of this knowledge is great, and it's also widely available. There's not really a need to learn any of this, outside of just pure enjoyment.
@hnbr
@hnbr 3 жыл бұрын
It's not interesting as it is now
@ultralooter
@ultralooter 3 жыл бұрын
Even though it's clickbait, I think the title is fine as most self taught developers won't take time to learn this anyway.
@darrelmasterson5850
@darrelmasterson5850 3 жыл бұрын
I have a math degree, I recently learned about a little inefficiency at my company and after a couple months of just thinking about it, I realized it was a giant constrained optimization problem that could be modeled with linear algebra. I was and still am awful at python but in my excitement to solve this problem I managed to pull it together and write a program to generate the matrix and constrains (both the values and dimensions will change day by day so it needed to be algorithmically generated)... it worked and now I am trying to learn python as fast as possible to move that whole system into python and hoping more problems pop up that can be solved by a quick optimization.
@Mark-kt5mh
@Mark-kt5mh 3 жыл бұрын
You have unlocked mankind’s greatest and most powerful tool. Keep at it! Generalization is the best part of mathematics.
@khodis2002
@khodis2002 3 жыл бұрын
But why in those programs python is mostly used? It's not even close to be a fast runtime language.
@charlesselrachski34
@charlesselrachski34 3 жыл бұрын
@@khodis2002 he still ridin a tricyle bro
@khodis2002
@khodis2002 3 жыл бұрын
@@mistatank1231 if these math libraries are C code wrappers, then that makes sense. But I've heard that Numpy works slower due to the large method call, when the C library optimizes the whole thing.
@LunaticEdit
@LunaticEdit 3 жыл бұрын
@@khodis2002 As someone who knows a ton of languages from 6502 assembler, C, pascal, all the way through to golang, I can safely say that language speed, while important, is not the only factor when writing code. It's a balance between speed of language and speed/TCO of development. Python is pretty easy to read and understand, and quick to throw scripts together.
@MFNJairah
@MFNJairah 3 жыл бұрын
This is what I really need. Coz I been literally studying all free courses on KZbin just to fulfill what I think I'm lacking.
@dillonaumiller
@dillonaumiller 3 жыл бұрын
Most of the self-taught devs that I know do learn these things. They're usually the ones that are constantly learning, and never happy with not knowing something.
@RichardKovacs
@RichardKovacs 3 жыл бұрын
I'm one of them. I have learnt 13 languages. Earned money with 6 of them. I have lots of experience with the 5 major cloud technologies. Became a linux and containarization expert. I develop distributed systems as a devops engineer who has real world knowledge/experience on both operational, developer and automation side. I'm working on open source projects, so anyone could check. And lastly english is not my native so i spent lots of time to learn english to be able to learn computer science.
@78anurag
@78anurag 3 жыл бұрын
Me too
@re43p3raod3
@re43p3raod3 3 жыл бұрын
literally me in a nutshell XD
@DanEllis
@DanEllis 3 жыл бұрын
Quite right. I came up in the culture of British home computing in the 80s, and I knew of so many talented developers who learned a lot of this stuff before they even reached university age.
@MyDutchproductions
@MyDutchproductions 3 жыл бұрын
Yea your comment makes sense. People that WANT to learn this will always go above and beyond. Even reading books. Most programmers in schools will never do this, thinking the internet is always superior.
@stephendouglas684
@stephendouglas684 3 жыл бұрын
This video is very relevant. Knowing what to focus on in CS can trip you up learning on your own. Being an older learner /relearner, OOP was a very difficult concept, but after a very long struggle I got it. Also USE what you're learning, as you're learning it- best lesson I've learned. And watch Tech with Tim!
@DoctorMandible
@DoctorMandible 3 жыл бұрын
Linear algebra is very useful for coders who do data analysis.
@banddy1376
@banddy1376 3 жыл бұрын
Yes there is awesome books
@tryfonmichalopoulos5656
@tryfonmichalopoulos5656 3 жыл бұрын
""" ver useful """ is actually an understatement of how much it's needed
@NivAwesome
@NivAwesome 3 жыл бұрын
For coders who aren't data analysts it can be a waste of time at the start.
@LazieKat
@LazieKat 3 жыл бұрын
Also for low level graphics, most math used in rendering is related to linear algebra
@tmartin9482
@tmartin9482 3 жыл бұрын
​@@NivAwesome It is also important in scientific applications and other simulations. Btw., most computer graphics is also based on it. Stop omitting something just because you don't know the application. That's ignorant.
@mayankgarg5323
@mayankgarg5323 3 жыл бұрын
In India, Calculus is taught in schools, grades 11 and 12. So when a student joins University/College, s/he already had a glimpse of what exactly is Calculus.
@koenlefever
@koenlefever 3 жыл бұрын
The same goes for most European countries: derivatives and integrals are being taught in the last two years of high school, as well as permutations, combinations, matrices and determinants. University calculus starts with line/surface/volume/contour integrals and differential equations. The difference is very visible when using American textbooks for first-year university physics: the US books (e.g. Ohanian's Physics) only contains Maxwell's equations in global (integral) form, while Europeans professors are teaching the local form (differential, i.e. nabla notation) immediately. And I learned about logic gates in primary school (back in the 1970s) and basic set theory (on a Venn diagram board game where we had to put images of faces on the correct position, e.g. a face with curly hair and blue eyes in the intersection of the curly and blue sets) even before that in kindergarten.
@itsmayank-08
@itsmayank-08 3 жыл бұрын
@@koenlefever Actually, most of Indian ways of teaching is derived from the Europeans (specifically English People)
@doomshot7324
@doomshot7324 3 жыл бұрын
@@koenlefever We learn it in the last 3 months in high school but in a very competitive way in my country
@superscatboy
@superscatboy 3 жыл бұрын
In the UK, calculus and discrete maths are part of A-level maths, so they're not necessarily something computer science students have learned. In practice though I don't recall ever meeting a computer science student that didn't have an A-level in maths.
@DepakKumar08
@DepakKumar08 3 жыл бұрын
@mayank Garg the problem in Indian education is we are not taught how to apply it practically.
@wasimraja2980
@wasimraja2980 3 жыл бұрын
Software Engineering is a vast field. Not everyone needs to learn everything. Just learn it when required.
@programaths
@programaths 3 жыл бұрын
Partially right. You need to know what is available to you so you are able to gauge if it's worth to investigate it more. You would never consider hooking an FPGA to your server for heavy processing (e.g. cryptographic hashes), because you don't know it's a possibility. As an SE, your job is not to reply to some request, but help your client/employer do the right thing. That may even means no programming at all. (Changing processes) So, no need to learn in-depth, but surely required to learn as much as possible. Where it's nuanced is that you can do it in an intelligent way. If you know Angular, Dagger is not be be learn as it's basically the same principles at play. If you know a C family language, C, C# or Java shouldn't be that complicated etc. But if you totally ignore one aspect, then you'll never learn it when required, unless it's part of some specifications you got. It's why in the academic track I got, we did a grand tour. I even programmed robots you find in pharmaceutical companies. Did also some German assembly, designed an build pcbs for interfacing, analyses a library processes etc. Stuff I would have not done on my own and that gives me an edge. In one of my job, my interview was cut with "Ok, you are hired". I asked how they came to it and they replied that I was the only one who pulled some UML and asked the right questions. They asked me to make a small program which was an ETL and before digging into the code, I did a small design. The created only one class to have the "feel" of it, then called them to discuss the solution before churning through code. In the end, though, there is ample room for self taught people. They can do basic algorithms, which are 90% of the jobs (mine is a bad example as I mainly works with trees transformations). Then you need only one guy who know how to tie everything together and being efficient while keeping it readable and maintainable. That's also that guy who can tell what is worth learning. Still, there is a huge plus-value to have some IT culture.
@skilz8098
@skilz8098 3 жыл бұрын
I'm 100% self taught when it comes to computers from the transistor to python! I can somewhat agree with that statement for a basic coder or programmer... But as for an actual Engineer, I kind of beg to differ. Let's pick on C/C++ languages with the modern C/C++ compilers... any major brand will do Clang, GCC, MSVC, or even Intel... and take a simple little program that goes through a loop from 1 to 100 performs division on some values and prints the results. Do this with optimizations off, then do it with optimizations on. I'm more familiar with the MSVC compiler and I'm more familiar with the x86 architectures however I do have some knowledge of GCCs compiler and the 6502 and Risc-V architectures. Not too familiar with MIPS or or ARM. However, when you compile your C/C++ under Clang there is an intermediate file usually object files that your C/C++ code is translated into before the linkage or linker stage. Clang translates to LLVM before that gets translated to actual Assembly - Machine Code. Now if you can examine the actual LLVM code without and with optimizations then compare the two assemblies... you'll see that some of that division is replaced with bit-shifts as opposed to actual division and others are replaced with something that looks esoteric (magic numbers) and bit banging. This is what your compiler does under the hood. It tries to make the best attempts of optimizing your code to use the least and or fastest segments within your hardware. If it can use registers before going out to main memory it will do so. If it can replace division with shifting or even multiplication it will do so... Knowing what's going on under the hood of your compiler, assembler and even within your CPU as well as the rest of the system gives you the necessary tools to be a better Engineer. To be a developer it may not be necessary... just rely on the tools and take them for granted. But if you're the one who's designing the hardware or device drivers, or writing processor intensive code on limited resources then you better know how to minimize cache line misses! How to avoid memory leaks! And so on... Not even knowing your compiler is enough... knowing how your compiler, operating system its kernel and HAL work with and manipulate your assembler and disassembler is vital information even if you are programming in Java, JavaScript and or Python it can help. As it helps to design better algorithms. Such as learning how to minimize branch predictions, how to organize your data to easily stay within the cache blocks... knowing when or when not to use dynamic memory or the heap versus the stack... knowing when to use pointer and pointer arithmetic... and to squeeze a few more clock cycles out, knowing how and when to bit-bang! There are coders, there are programmers and then there are Engineers. And you don't necessarily have to have a "college" education to be an Engineer!
@collinsa8909
@collinsa8909 3 жыл бұрын
@@skilz8098 you are so right. I've argued with so many people over this. I've dared to say that one could teach himself UpTo PhD level without entering a classroom , if the learning materials can convey the knowledge, and the field doesn't require complex lab setup e.g like it is in the physical sciences. It's about understanding and the mind is the seat of it and doesn't require middle men to unlock insight from knowledge. Unfortunately, modern society equates attainment of understanding with credentials- credentialism. They're arguments for this culture e.g for protection of clients and the public but the truth is much broader in scope of what's possible
@programaths
@programaths 3 жыл бұрын
@@collinsa8909 Lol, I never looked at diploma and certificates when I interviewed. Just ran though the protocol. Still, I do not recall any self taught doing good...neither those who did put forward their credentials. It's mostly those who thought they didn't do that good who passed. Self taught have issues you'll rarely find int those who go though "professional school" (So, not university, but alike where you learn to "do".). Mind that university usually means not actionable. They get the theory, but the practice is not there yet.
@skilz8098
@skilz8098 3 жыл бұрын
@@wasimraja2980 Exactly, that's why I said I partially agree as it is coming from a different perspective. Not once have I had a curriculum credited base class towards either computer science, software and or electronic/hardware engineering. Yet over the past 20 years I have acquired the knowledge of my own volition. The only difference for me is that I want to know all that is involved... even down to the theory of quantum mechanics at the atomic level of the actual electronic components that makes up your circuitry! Why? I like computers and technology but more than that I like Physics! Now, I'm not really a Physicist but I enjoy it especially when it applies to Engineering.
@karlfimm
@karlfimm 3 жыл бұрын
Speaking for myself (self-taught programmer over the last 45 years) I can't imagine being unaware of any of this. You can find textbooks on pretty much all of this material in any good library.
@fraglynx3504
@fraglynx3504 3 жыл бұрын
I think software design patterns is one of the subjects that needs to be included here. Once I had this subject in university I worked on a project and actually got an opportunity to tryout the things that I had learnt in the subject.
@Kuk0san
@Kuk0san 3 жыл бұрын
I think they're great to learn about, but personally I've just stumbled upon the "correct" way to design a system many times and didn't even know I could find the conceptual design described in some book. Point being, they can be learned rather quickly through practice, so do not fall under the category of "never learned" but I'd agree that they're great to read about so you're at least aware of what you didn't know as a self-taught dev.
@gandalfthegrey2777
@gandalfthegrey2777 Жыл бұрын
Systems design is something that usually comes with experience, most companies don't ask that for jr. Roles, it's more of a staff or principal engineer thing. But definitely should do at least at basic level before and interview
@piotralex5
@piotralex5 3 жыл бұрын
linear algebra has a lot to do with physics, shaders, graphics and even encryption (see AES-GCM) calculus of course is about physics What I can honestly say that the most important thing I learned at the university is team work, clean code, etc. That gives you a huge advantage as a junior to transition quickly to mid
@ahmedbilal5500
@ahmedbilal5500 3 жыл бұрын
2 courses I was taught in university not mentioned here (which were pain in the ass back then) but are helpful now were "Theory of automata" and "Compiler construction". Interesting stuff, Knowing how compiler works do make you a better programmer
@Hobbitstomper
@Hobbitstomper 3 жыл бұрын
Being a self-taught developer with 15+ years of experience, to this very day I feel that in some areas I have much more knowledge than "academic" developers who have the same years of experience, yet in other areas, "academic" developers learn certain things in their first year, that I still haven't learned properly to this day or struggle to understand, which feels very intimidating to me. Especially these algorithm test challenges you get during interview questions is something I never learned properly and I struggle with them.
@punkgrl325
@punkgrl325 3 жыл бұрын
It’s kind of interesting that I had to learn Discrete Mathematics for my linguistics degree, especially when it came to set theory, set builder notation, and proofs using propositional logic. Also learned boolean algebra for my semantics courses.
@armoniembezabih2058
@armoniembezabih2058 3 жыл бұрын
there is a lot more in discrete mathematics like counting and probability, recurrence relations and generating functions, graphs and trees and their application like in scheduling, pigeon hole principle bla bla
@gommito
@gommito 3 жыл бұрын
It really depends on what you're doing. When we are talking about graphics programming (especially 3d) then things like vectors and matrices are pretty much entry level to that field.
@collinsa8909
@collinsa8909 3 жыл бұрын
Self taught devs don't need those things. Learning to them is on a need to know basis. That said , any avid learner would explore topics outside of his sphere to have a feel for the scope of his discipline. I did, issue is, most of the theoretical education suffer from ultra poor tuition - most books are unnecessarily convoluted beyond the complexity of the subject in question itself. Then, most lessons fail to show rekevance to the learner , making the material doubly unattractive and useless to the autodidact
@Daniel_Zhu_a6f
@Daniel_Zhu_a6f 3 жыл бұрын
i strongly disagree. theoretical principles help people know what they are doing. theory is unavoidable many applications: if you work with images or sounds, you have to understand mathematical analysis and linear algebra, if you work with text (or other sequences) you need to know a bit of graphs and discrete math, if you work with web, you need basic knowledge about threading. And if you program, you must know about functional programming style, otherwise your code will probably be disastrous (mine definitely was).
@collinsa8909
@collinsa8909 3 жыл бұрын
@@Daniel_Zhu_a6f I partially get your point but you don't get mine. Schools teach you lots of theory, hoping you'll hav an arsenal to tackle your field with. This is what I call knowledge warehousing. You may use some and never use others. So y fill your mind with do much junk. On the other hand, with lots of practice and trial and error, which is what self teaching will expose you too, you'd develop a logical mindset. Then with some theory, not much, you'd know how to design systems. Then with other projects out of your range, you can research and learn to tackle. E.g if I'm to design sound systems, or graphics, I'd research and learn until I know enough to get the job done. Same with ai/machine learning. Robotics. I'd be qualified through the rigorous training of building systems via trial n error of self taught programming. E.g I work with texts, sequences and have never used graph theory. I do use lots of lists,sets etc. I've never used discrete maths explicitly, though I do programming. Overtime from experience I've discovered some patterns with boolean operations/algebra. Ive read up on discrete maths a bit but found it dry, irrelevant and redundant. Yeah, I filled out truth tables and all ad neaseum and wrote some math proofs but it never came in useful when tackling a programming problem at all. When writing a calculator etc I don't stop to think of computing boolean operations on a truth table! When writing an arithmetic parser, I don't start thinking of automata theory! I write the parser it works I'm done. At the end I've done automatically theory without knowing it in theory. This won't fly for all cases but many times it will. Self taughts approach problems differently. E.g when trying to solve some numerical problem, u noticed that java had no way of computing exponentials with non integer , floating point, arguments and i badly needed thus functionality, so I began researching ways to achieve my goal which led me to looking for ready made solutions that could help- found no free one and trying to understand the math behind fast exponential computation. Basically- learning as I needed to
@prafulpatel4411
@prafulpatel4411 3 жыл бұрын
Idea for your future tutorial videos: Pick an important subject taught in universities and make them accessible for self taught Devs through series of tutorial videos
@pablovicentico
@pablovicentico 3 жыл бұрын
I think the tittle should be “what they don’t teach you on a 20 hours online course” as after 5 years of working as a software developer you need to know most of the subjects mentioned here. Perhaps the math part is not super necessary unless you’re doing 3D engines -in that case Linear Algebra becomes vital or other math if you’re writing software for digital signal processing, compression or cryptography.
@soniablanche5672
@soniablanche5672 3 жыл бұрын
Operating System is probably my favorite class because it's the most useful non-programming class for a programmer.
@N7492
@N7492 3 жыл бұрын
I've been programming for 40 years, and much of my expertise was self taught. The topics that you cover are ALL things I've had to learn, and lots more, e.g. systems administration, large Hadoop style systems, networking, security... If you're to be successful as a programmer, you need to keep up with whatever's popular, which means you'll be continually reeducating yourself. The good news is that for many topics, one only needs to learn the jargon, as the new topic will closely resemble something you already know. "The rarely change what we do in computing, but the change what they call it" -- Attributed to Grace Hopper.
@Theaveragenerd2000
@Theaveragenerd2000 3 жыл бұрын
As an electrical engineer, the first language I learnt to program in was assembly. It did help with my understanding of what the actual hardware was up to when the computer was writing machine code etc.
@ipodtouch470
@ipodtouch470 Жыл бұрын
Assembly was my third project that I learned. It’s what finally helped me understand the concept of recursion.
@cbaxtermusic
@cbaxtermusic 3 жыл бұрын
This is an awesome video man. I work for a FANG company and I'm a self-taught programmer. My start in tech was as a network engineer and transitioned to a developer. I was fortunate to find a mentor that told me some of the things you mentioned that I need to learn. after learning about data structures, paradigms, and architecture, I felt languages like python are a bad first language for folks. When I learned Golang, that's what really force me to learn more about these very concepts you're talking about. this is super applicable to the folks reading, I didn't go to a computer science school and have a few friends that haven't I'm usually giving similar advice of things to become better devs. Great video.
@AlligatorAli
@AlligatorAli 3 жыл бұрын
Can I learn web development and mobile app development on my own ? How long should I give to myself ?
@AlligatorAli
@AlligatorAli 3 жыл бұрын
Can I get a good job with it ? What are the subjects for a high paying job ?
@AlligatorAli
@AlligatorAli 3 жыл бұрын
I have a mechanical engineering degree.
@39kelevra
@39kelevra 3 жыл бұрын
What I remember from my college level math classes: Calc 2 was a weed-out class at my school as most students were coming in with college credit from high school and Linear Algebra wasn't difficult, just tedious from not being able to show multiple steps in a transformation.
@discretelycontinuous2059
@discretelycontinuous2059 3 жыл бұрын
I think that linear algebra requires a new way if thinking about things (different to what you would have been exposed to in school).
@petersmythe6462
@petersmythe6462 3 жыл бұрын
"Java is object-oriented" Me when I'm in Java "hippity hoppity your variables are now my property." 🤣
@skilz8098
@skilz8098 3 жыл бұрын
C++ Here's your public working papers the rest is Private Property!
@re43p3raod3
@re43p3raod3 3 жыл бұрын
@@skilz8098 Rust, Here is you, you are the user your are now my fuck puppet so everything is private
@robinsonchukwu7295
@robinsonchukwu7295 3 жыл бұрын
😅😅 inheritance... I get it
@jeffjustjeff2891
@jeffjustjeff2891 3 жыл бұрын
Man when I saw the title I thought to myself "ugh this is probably gonna be one of those clickbaity titles where he'll tell us to learn how to write comments or something stupid" but man you actually delivered an amazing video. I'm always trying to improve myself but I have a lot of trouble understanding a lot of what people mean when I read documentation or articles, and there seems to be just a massive influx of "developers" posting videos on youtube that all seem to copy each other posting the exact same stuff and it's difficult sorting through everything that I already know. thanks.
@aliceosako792
@aliceosako792 3 жыл бұрын
One which I think even most college students never learn, unless they've taken a course on compiler design, is Finite State Automata. This is a shame, because they are remarkably useful in the design of several types of programs, ranging from search engines to TCP/IP stacks. Similarly with parsing, which again is mostly associated with compiler development but is useful in any number of other areas. Relational theory is another topic which you generally only get with a specialized course, which is often at the graduate level. Lambda calculus is rarely taught at all these days, which is something of a shame. As for operating system design, for self-taught programmers there is the OSDev forum and wiki, though there are several caveats about the accuracy and datedness of the latter and the vitriolic tone of the former.
@letslearnify6512
@letslearnify6512 3 жыл бұрын
I am a university student and our curriculum do have theory of computation as a subject which goes deep enough to understand finite state machines including non deterministic. Course also cover regular language, and also it’s applications in compiler design ….. including parsing.
@nothjg
@nothjg 3 жыл бұрын
Never is too harsh word it truly depends on the person. I'm self taught developer except maths I learned all others my journey was year long though the thing I did was always ask why and how then search internet on those.
@shikharjain6357
@shikharjain6357 3 жыл бұрын
It was a clickbait. Chill
@shamblonaut
@shamblonaut 3 жыл бұрын
The video production quality is getting better and better. Good work, Tim!
@huhuboss8274
@huhuboss8274 3 жыл бұрын
What most self-taught developers never learn is automata theory, computational complexity theory and computability theory
@jarretc110
@jarretc110 3 жыл бұрын
r/iamverysmart material.
@MT-uk7xd
@MT-uk7xd 3 жыл бұрын
What does that even mean
@fackarov9412
@fackarov9412 3 жыл бұрын
useful if you want to make a computer with potatoes
@ryanqubadli6925
@ryanqubadli6925 3 жыл бұрын
@@jdeep7 compiler engineering
@RADOS_A51
@RADOS_A51 3 жыл бұрын
The real question is how much you make each year :D
@delnarlt
@delnarlt 3 жыл бұрын
Thank you for this video. Found it very insightful. Most of the items you covered, I have run into at one point or another as a self-taught developer (been developing in one form or another since about 1982). My concern has always been that developers aren't learning the "low" level computing concepts (like CPU architecture and Operating systems), and now I can see why. I've bookmarked this video as I'm going to make it a point to learn more stuff based on what you've outlined.
@arjuntt2604
@arjuntt2604 3 жыл бұрын
You are just wrong
@JoseLaruta
@JoseLaruta 3 жыл бұрын
digital systems and computer architecture is so fun, it definitely changes the way you see the world.
@chamsabressitoure521
@chamsabressitoure521 3 жыл бұрын
You made good points here Tim. I'm also a self taught developer and have sometimes difficulties to write software with good and simple design. And my understanding with software paradigms, computer architecture in general and also mathematics in general are quite decent. Every self-taught developer should keep this points in mind. The ability to code and make software work is not the only skill that makes a good developer or engineer should have. But if you are self taught in the fist place, it should not be a problem to learn all the other concepts too.
@aammssaamm
@aammssaamm 3 жыл бұрын
It's just take quite a bit of time, which you cannot afford, otherwise you would have gotten a proper education at the first place. Catching pieces here and there will not give you a big picture which any development should start with. Lack of skills in solving problems in general way gives an impression that programming is easy, cause you never actually program, but keep hardcoding and repeating yourself.
@sprototles
@sprototles 3 жыл бұрын
integrals and derivates can be super useful when you wanna play with physics !!!
@norc
@norc 3 жыл бұрын
OS was great. I think its one of the most relevant topics, especially when it comes to real world relevance. Not only do you have a better understanding of how and why a lot of things work or don't work with operating systems, filesystems and concurrency, it e.g. also helped me to understand asyncio better, and it makes reading documentation easier as you know the basic terminology. Would do it again immediately
@SosasRoomProductions
@SosasRoomProductions 3 жыл бұрын
No DSP? That math is pretty interesting and intense, and has a lot of stuff to learn for programmers, especially those ever touching signals (audio, video, etc)
@Mark73
@Mark73 3 жыл бұрын
I'm sort of self taught. I learned C and C++ in college, along with some higher math, Calculus and Linear Algebra (I don't remember much but I remember enough of the concepts to know what to google). Now I'm mainly a C# dev. I'm completely self taught in SQL and front end, though.
@samueldiker
@samueldiker 3 жыл бұрын
As a self taught Developer (and self taught with english language too, sorry) I think your video is very useful for many of us because it gives ways to improve. A self taught learner chooses what to learn and from who. The knowledge of the others remains important. I've seen many of the topics you listed because I've a long history as a programmer (beginning in 1981, assembler, many many books, and often using languages where I manage the memory, threads, ...). Sadly not enough time for all the math stuff. Thank you
@johnbennett1465
@johnbennett1465 3 жыл бұрын
This covers many useful computer related topics. Having a basic understanding of all the "tools" helps you choose a good approach when facing a new problem. You can always brush up on how to use the technique, but if you don't know it exists, you will never think to use it. What most programs overlook is domain specific skills. For example writing an accounting program. Knowing the GUI and SQL interfaces is necessary but not enough. You also need to need to understand accounting well enough to understand the needs and requests of the users. Almost all retail sales systems SUCK because the programmers didn't understand how the systems are used.
@LunaticEdit
@LunaticEdit 3 жыл бұрын
Do we get bonus points if we _did_ learn this as a self taught developer? Math is super important if you want to do any kind of game development. Low level hardware knowledge is invaluable when you need to write high throughput highly optimized code in a big datacenter environment, and I consider it a big separator between an average programmer and a great one -- it's very obvious when someone does or does not know this stuff.
@digitalconsciousness
@digitalconsciousness 3 жыл бұрын
Yes, I am sad he did not mention DOD which utilizes knowledge of the cache. I'm self taught and I guess I'm learning that, which according to this video, isn't even taught to university students.
@lyricsmaker-poplyricsmaker1183
@lyricsmaker-poplyricsmaker1183 3 жыл бұрын
Really good video, you keep making better content every day (Congrats on doing that) I have been a subscriber since you started the first pygame series and I have seen almost every single one of your videos and I just thought that I should leave a comment to say how much I love ans support what you do, and that without you I probably would not have started programming! Keep doing what you do, youre great and not far from reaching the 1 million subs ;).
@laryeparkins
@laryeparkins 3 жыл бұрын
Great video. I was a self-taught programmer with a degree in Physics, was terrible at advanced math. After 25 years of systems engineering with a little "programming on the bare metal" machine code, I went back to school, got a degree in Software Engineering--my first impression was, "I've spent 25 years in a different profession with the same name." After graduating with a master's degree, I proceeded to self-teach myself the rest of computer science by getting a job teaching the upper-division undergraduate courses (none of which I took in school myself), all of which made me a much better programmer and able to solve difficult problems easily. FSMs, functional programming, and "Big O" are the most helpful concepts. Still coding and learning 56 years after grinding out my first program in new employee orientation at Univac.
@jacksontriffon5064
@jacksontriffon5064 3 жыл бұрын
I love how everyone watching your videos is a self-taught developer and completely disgrees with this video
@ultralooter
@ultralooter 3 жыл бұрын
I would say a lot of what a CS degree teaches you isn't directly applicable, but it allows you to understand topics at a deeper level and so will be able to solve more complex and fundamental problems.
@markdatton1348
@markdatton1348 3 жыл бұрын
For a university class, I learned a language called Haskell, which sounds a bit similar to OCaml, no loops, and super strong typing. It wouldn't let you even compile/run the program without every part of the program running being typed out beforehand. Our final project was to use a parsing library and implement our own programming language from scratch, using Haskell, and it really taught me a lot about how to construct a programming language, as well as forming a plan and format before starting to code.
@TheRealGigachad1848
@TheRealGigachad1848 3 жыл бұрын
Maybe should've included Computation Theory and Formal Languages.
@paaabl0.
@paaabl0. 3 жыл бұрын
Calculus, algebra, these are the foundations of engineering, especially software and computer science. Can't imagine professional software developer without good math background. Sure, you can build a bridge without the math - as long as it is an amateur endeavor in your backyard.
@MaciekGrudi
@MaciekGrudi 3 жыл бұрын
I know that's a clickbait title, but saying that if you don't go to uni you won't learn this material is a bit of a stretch. Now you have access to all books and online resources you would ever need to learn all this topics. It's only the matter of your own internal curiosity to dive deeper in some more theoretical topics.
@RameenFallschirmjager
@RameenFallschirmjager 3 жыл бұрын
If I was allowed to subscribe to only one channel on KZbin, I would choose this! Hands down the most knowledgeable and thorough youtuber considering computer technology. You're doing a great job Tim, keep it up!
@TechWithTim
@TechWithTim 3 жыл бұрын
I really appreciate rhat! Thanks :)
@programaths
@programaths 3 жыл бұрын
In one company I worked, they didn't know how to migrate databases, because they were not indexing and indexing them would take days (at least). At some point I passed by, discussed and the issue popped. So, I replied that it is easily solved with dichotomic search. It took me 5 minutes to solve an issue they were wrapping their head around. When asked how I came with that so fast I replied that it is literally something you learn in the first quarter of the first year at university. So my solution came straight from the book. (of course, I had to recall it) Same with my current boos to whom I can swiftly answer, just because I learned the material. As a stupid example, if we need to do some intensive process, I'll see if it is possible to hand off the problem to an FPGA. Self taught programmer do not even know that it exists and can't design hardware at all. Before the academic track, I was a self taught programmer and I was already good. Learning made me even better in the sense I have more horizons.
@leninalopez2912
@leninalopez2912 3 жыл бұрын
This is encouraging to a point. I'm not a developer... but been teaching programming to myself since, I don't know, 12 years old? And just now I'm really seriously considering to get into development as a job. And the thing is... despite the fact that I had formal education in computing, I have a working knowledge of every single course/topic you mentioned... and acquired just out of pure curiosity and affinity towards formalism and the systematicism on these subjects ... (and to a certain extent... out of a little disdain/contempt towards the 'hacky/grokky' way of doing things...)
@DerMaikNichJa
@DerMaikNichJa 3 жыл бұрын
If you really dive into what you are doing the more you also want to understand what's going on under the hood. If you are serious about your journey you can learn everything. University courses are one way, but the point is to have advanced peers or a teacher as in order to learn effectively we all need different perspectives...
@biruk1059
@biruk1059 3 жыл бұрын
To add to this, some of the topics that were left are:- 1. Real time and embedded systems 2. Advanced computing networks 3. Software quality and testing 4. Distributed system 5. Introduction to robotics and industrial automation 6. Compiler design 7. VLSI design 8. Mobile computing and applications 9. Software design and Architecture 10. Software requirements 11. System programming
@marvellousruni8475
@marvellousruni8475 3 жыл бұрын
As a first class Nigerian student of mathematics and computer science, this is so relatable. What people get wrong abt Computer science is that it is first, a SCIENCE itself... You can't just wake up someday and say you wanna be a computer scientist or a programmer without understanding the core principles of computing... My advice to self taught developers is that they should try and go to the university to backup their already acquired knowledge of programming.
@EmmaKAlexandra
@EmmaKAlexandra 3 жыл бұрын
I’m a sr engineer at my company and I do interviews for all kinds of skill levels. I ask about programming paradigms in every interview. We work in JavaScript and I find it spans across multiple paradigms, and most modern languages are multi-paradigm. Knowledge of that is important & if someone talks about only OOP, it’s a bit of a red flag
@lancedychua6505
@lancedychua6505 3 жыл бұрын
As a self taught python and c++ and c# programmer, it took me experience to fully grasp OOP.
@EidosX_
@EidosX_ 3 жыл бұрын
Tbf I am a college student, but I consider myself self-taught since I skip almost every class and only study for the exams. I knew everything you mentioned from the internet. Not all self taught developers are uninterested in these topics. For instance I'm very passionate about different paradigms even though we haven't tackled this subject yet in college (and I don't think we will since they're OOP fanatics lmao)
@cs-oi4im
@cs-oi4im 3 жыл бұрын
Did you learn these courses from internet while being enrolled in a university program or from your teachers in uni ?
@arjuntt2604
@arjuntt2604 3 жыл бұрын
You can't say whatever you feel, Most of these are useful in one way or another. --respect
@w3techie
@w3techie Жыл бұрын
I have two degrees in IT. One is in web development. The other in system admin. I also taught myself how to develop and program software among many other things. The difference is a formal education presents you the information. Self-education forces you to think things through yourself. There are advantages and disadvantages to both, but your point is correct. When you teach yourself, it is you deciding what you don't know when it is impossible for you to know what that is. It is you looking outside but you are on the inside. In a classroom, you can see inside yourself through others, and that is how you can see yourself from the outside. You also get a holistic view that is already for you to learn, but in self-education you have to put together the pieces to make the picture whole. Though I do not think I learned nearly as much in school as I did on my own, I think school created the right frame of mind and made the path clear for me. Also, it is common knowledge in school that you are only getting started there and won't learn everything. The notion you will learn everything comes from your recruiter. The professor/instructor will be the first to say you are not going to learn everything there. In school you learn how to be a pro, not all of what a pro can know. That takes time to achieve. I agree with all your points, and with the need to know advanced math particularly. That is because of how much easier it is to be clever in your code. Every programmer should know how to create advanced algorithms instead of mere mathematical operations.
@ronaldboulder308
@ronaldboulder308 3 жыл бұрын
I agree on most points except linear algebra - which does come in handy when writing graphics applications. Another few points I'd like to ammend are: (1) human perceptive psychology (2) languages (in general) (3) computers and their effects on society (4) IT specific law (5) economics (6) software design patterns.
@BrandonJacobson
@BrandonJacobson 3 жыл бұрын
As a self taught programmer, I can say that this is all true. Your channel inspired me to create my own Python channel. Thanks for all you do!
@unclerojelio6320
@unclerojelio6320 3 жыл бұрын
The compilers course was really fun. Highly recommended.
@pokepe12
@pokepe12 3 жыл бұрын
I transferred universities when going into second year, and now I'm taking Logic Design again just so I can take Principles of Compilation in the 3rd year. By far the course I'm most looking forward to, really hope they don't cancel it.
@darkfoxfurre
@darkfoxfurre 3 жыл бұрын
This is just my two cents but- If you're considering whether or not you should finish a degree in Computer Science, then there's nothing wrong with choosing another major. However, if you're debating whether or not to finish college at all, I'd recommend at least getting a Bachelor's degree. You seem bright enough that you could probably learn the topics on your own anyways, but having a bachelor's degree will help you in job interviews later on down the line. Two years might seem like a long time to finish your degree, but you could think of it as just accumulating tools for your toolchest of knowledge for whatever it is you plan to do later on. However- If you've got a strong sense that there's something more important; like a good business opportunity or something in life that you want even more than a degree, there's nothing wrong with jumping on that opportunity. Just keep in mind that finishing a degree later on is much harder than delaying your plans for two years. Whichever path you choose, there will be a trade off.
@jxggxr_dxv
@jxggxr_dxv 3 жыл бұрын
Fun fact... I was studying these advanced math topics in the last 2 years of high school... the amazing Eastern European system, where you get a ton of garbage to study too early, while in western countries they study such things in 1st-2nd year of uni. I had a friend who went to uni to the UK (CS degree) and the 1st year, when it came to math, he didn't have to study anything because he already knew the topics.
@codevev
@codevev 3 жыл бұрын
I feel you about maybe or maybe not going back to school. I completed an associate's degree while I was already working as a software developer and was thinking about getting a bachelor's but the requirements are just too dumb. Why do I need to know anthropology for a computer science degree?! Obviously the courses you listed here are probably beneficial in some shape or form (except calculus, I took calculus II and still haven't used it and likely forgot everything about it at this point). But having a degree serves as a pass where your application may not be thrown away if you don't have one.
@mking1982098
@mking1982098 Жыл бұрын
linear algebra can be useful when working with some applications of arrays, but I can definitely see why they wouldn't be used too much. It is a lot more important when it comes to understanding the underlying math behind statistics and forecasting - the data science side of "programming".
@igordc16
@igordc16 3 жыл бұрын
Thanks for the video as always Tim, don't mind those people who are pissed about the video's title.
@user-qk7up8hp2t
@user-qk7up8hp2t 2 жыл бұрын
I'm going to say Big-Oh notation and what it means. This is best illustrated by searching a sorted list for a number (linear time) vs doing a binary search on a sorted list (log time). Most of the hardware today is powerful enough to make this a moot point for home projects; however, this becomes super important at big corporations with dbs containing millions of rows.
@UltimatePoliceClips
@UltimatePoliceClips 3 жыл бұрын
Great insight in this video, thanks Tim. For someone on the self-taught route without a CS / Math degree, from what I have read, watched and experienced, having practical knowledge of Advanced Math is only really beneficial if you're working inn Artificial Intelligence, Machine Learning, Augmented / Virtual reality spaces. But, I could very well be wrong! I'm documenting my self-taught journey on my channel with the hopes of landing a role before the end of 2022. Happy New Year!
@madezra64
@madezra64 3 жыл бұрын
Haven't watched Tim in a long time. This is a great video and it's super cool to see how much he's grown. Like literally, he looks older! But still sounds like the same Tim :D
@reda29100
@reda29100 3 жыл бұрын
I'm not a CS major but very interested in programming. I on 4:27 regardimg combinations and permutations, I don't know what CS take in discrete math but I did take combs in probability. I had a problem where I have n number of players that I needed to shuffle through to build a team, with each having a sum score S. I think 3 being attrackers, 2 defence or something and 6 on wings and a goalkeeper. The goal was to maximize the team skills score given I meed filling the team with the aforementioned, inaccurate arrangement. The issue is, at nCr(30,11), i.e., 30 candidates, the number of needed calculations start to plumber up. I don't say I needed computations but at that point, thinking of pc as an infinite processing power without realizing its limited capabilities, is very... throwing any algorithm hoping any would suffice is an absolute nightmare. At that point I realized how crucial algorithms are in large data processing, or even extremely small but with exponential growth like this very tiny example that takes seconds, 5 minutes with 38, two hours with just 42! So it's not the knowledge per se but the understanding of how algorithms scale when using combs is my point. At last, not all problems require this thinking. If you're doing a game or a gui-like where all it does is take data, arrange it, decrease health and compare it with enemy, straight, simple processing, make the gui and recieve input, then this is totally unnecessary to learn about. I just mentioned it as I found a situation where automation is used in problem solving. P.S.: I calculated the nCr as if all players are arranged separately, and not the 3 attackers are just 1 permutation. My numbers are way off but you get the point; numbers scale drastically very early on.
@YT-User1013
@YT-User1013 3 жыл бұрын
@2:46, had you completed your CS degree you would have learned through your Eng101 course that "anyways" is not a word. I do not mean this in a mean way, just saying. I have a computer science/information systems degree and there are so many little things a degree does do for you and some are not relative to computing, some indirectly related to computing and others are directly related to computing (ex: Classes that I learned in C++).
@adtc
@adtc 3 жыл бұрын
You are quite right, the OS fundamental courses I did in university came in quite handy when working with large Java projects where multi-threading and thread synchronisation presented major problems to solve.
@trejohnson7677
@trejohnson7677 3 жыл бұрын
These are literally the first things I learned/continue to sharpen
@solomontaiwoabbaly
@solomontaiwoabbaly 3 жыл бұрын
I'm gonna be like you someday🥺(13 year old)
@baruchkata
@baruchkata 3 жыл бұрын
I code since 8yo. Now I'm glad to reach 40yo earning money for making the same as a little boy.
@fermienrico
@fermienrico 3 жыл бұрын
Me too Thanks for this...
@christobothma368
@christobothma368 3 жыл бұрын
I started when I was 17, and it pains me knowing that Tim is a year younger than me and can code circles around me, one handed. Keep going kid.
@rfpcs1
@rfpcs1 3 жыл бұрын
I took a class in Set theory back in 68 , didn't know what I could do with it back then but today it is really helpful in Blender.
@hiedtchannel
@hiedtchannel 3 жыл бұрын
Totally agree. Without these knowledge, a self-learner can only be a coder, never a programmer.
@kmac499
@kmac499 3 жыл бұрын
Very good points and I will be looking up some of those subjects. But I would argue you should consider a video what Comp-Sci grads dont learn.. Practicality vs Theory Are we building the right thing User\ Customer relations etc.. When to stop Build or Buy
@LeighHart
@LeighHart 3 жыл бұрын
Title of the video did its job - no apology needed, the KZbin algorithm encourages click baity titles so we learn to live with it. See Veritasium’s video on the subject if you need convincing.
@cloudsquall88
@cloudsquall88 3 жыл бұрын
Honestly the Operating Systems class might be the most important. So many things are built upon those concepts, and it is really difficult to get your head around the reason why many of the things you are using work like they do, without knowing how a kernel works.
@scottfeinstein2422
@scottfeinstein2422 3 жыл бұрын
I agree that discrete math is quite important as it's also the basis for an algorithm analysis course (typically a junior level class that may be combined with data structures). In programming, making the code functionally correct is only half the battle. For example, one should never use bubble sort as it's highly inefficient - this course will tell you why. It will then allow you to perform similar analysis on your own algorithms.
@Ragnarok540
@Ragnarok540 3 жыл бұрын
Add software design patterns, software architecture, requirements engineering, and clean coding to the list.
@user-qk7up8hp2t
@user-qk7up8hp2t 2 жыл бұрын
As a Junior, I took a class in Linear Algebra in 1984 because it sounded easy. It ended up being the only C I got in 4 years and I still have no idea what Linear Algebra is.
@pokepe12
@pokepe12 3 жыл бұрын
Even though I'm doing CS right now I still got something out of this video, thanks a lot tim.
@flyte9844
@flyte9844 3 жыл бұрын
hey ! bought algo expert this week and i love it ! i see it like a 90$ video game with 160 level .. im grinding it 😎 lots of fun
@petersmythe6462
@petersmythe6462 3 жыл бұрын
My opinion on calc? I don't necessarily use it terribly often, but when I do, it's an absolute lifesaver. I once made a little flight sim with a variable timestep in MS Excel and eventually I switched it to storing acceleration and tracking jerk. Absolutely no way I could have made it work with only knowledge of trig and below. Calc can also be useful for things like easy definite or indefinite integrals of some shape, or for easy derivatives, which is pretty nice for things like terrain generation code.
@moutonguerrier
@moutonguerrier 3 жыл бұрын
OS course was one of the nicest course I took where we worked with C, Programming Concepts was great too and we worked with Haskell, Lisp, Prolog, Rust, C
@arielespindola1759
@arielespindola1759 3 жыл бұрын
I’m a self-taught developer with an EE degree and I do know math and proofs plus electronics/hardware in more depth than pure CS. So saying “self-taught devs will never know… x” is ambiguous. People have different backgrounds, that’s what makes them unique. Man you touched egos here…
@techwithbak
@techwithbak 3 жыл бұрын
We love you tim thanks for your advices. Don't sleep, make creativity
@ALaModePi
@ALaModePi 3 жыл бұрын
My programming history is likely proof of your premise. I have a computer science degree with a minor in mathematics. I'd learned quite a bit about hardware before even starting the degree so that's one contrary point. As you mentioned, algebra and linear algebra form a good basis for basic coding regardless of language and application. In addition, logic helps a great deal in walking through code. In my case, set theory was also vital for cryptographic applications. Operating systems was important in better understanding APIs, multi-tasking, and threading. Data Structures was vital to OOP and machine language and assembler were vital for embedded applications. I can't even begin to think how I would have done without them. These are just a few examples. Over my life I've learned slightly under 100 different languages. Some, like Fortran, COBOL, and LISP I hardly ever think about any more, but others allow me to pick up newer languages more quickly by seeing the similarities and differences in syntax. Now, programming is a hobby for me. But I can still hit the ground running when I encounter something like YAML (used in Home Assistant home automation) or LUA (used in an application for programming smart watch faces among other things).
@samuelmontypython8381
@samuelmontypython8381 3 жыл бұрын
I’m a little biased on this one. I’m a 4th year CS student myself and if I hadn’t been self-learning in my free time, I’d be in a bad place. At least in my particular experience, I’ve got a vast list of things I found out I needed to learn over the years just by trying to create something and getting stuck and then researching the latest technologies to tackle an issue. My projects are also personal and have utility (not compilers, parsers, tic tac toe, etc) so I definitely have more focus when I’m into it. My background definitely helped me a lot too. I was an electronics repair technician (for anything with basic circuitry, modem cards, power amplifiers etc) for 6 years reading individual bits of information with special machines and schematics before going into CS. I already had a pretty good idea of computer architecture so I can’t say self-taught development from ZERO is going to get you there but after almost graduating with my CS degree, I realize it was a year of nonsense, a year of (maybe or maybe not) relatable mathematics depending on intended dev field, and a year of programming knowledge that I could have gotten for free online. I saved all the high level courses for last and those are the only ones I can say are worth it in a formal CS program (algorithms, data structures, architecture, security, concurrency, etc)
@theZ3r0CooL
@theZ3r0CooL 3 жыл бұрын
I didn’t start off in compsci at uni. But I was self taught before switching to it. Luckily I had already placed out of the calculus requirement 😄. In my experience though, uni never taught me a ton about hardware.. but I couldn’t help but find out for myself how it all worked. It’s really amazing and makes it lower level languages like C make more sense. Also helps you pick the best RAM for custom PC builds if you’re into that. In the end it’s all magic though and a cpu is just a flat rock we tricked into holding lightning.
@Yutaro-Yoshii
@Yutaro-Yoshii 3 жыл бұрын
I went in thinking "Ha! I know bash!" but I was treated with a whole bunch of goodies i know nothing of. Great video! Made my day.
@RobertTempleton64
@RobertTempleton64 3 жыл бұрын
Maybe it's different today, but as I learned to program, I started in BASIC and Assembly with a good idea of the underlying requirements (hardware, OS/Kernel, software). Luckily, I had a mentor who was university taught so I was taught about computer architecture, discreet mathematics, Boolean Algebra, gates and so on from the go. As others have noted, Linear Algebra is extremely useful for data, dealing with sets, and computer graphics. Calculus plays little part in my design and implementation - maybe if there is a need to create an algorithm based on it (which is an entire other area to learn).
@ShunyValdez
@ShunyValdez 3 жыл бұрын
One of the things I've learned only after going to university is how to pronounce boolean. There was no KZbin back then and all my self teaching were from books.
@nedaltrebor8553
@nedaltrebor8553 3 жыл бұрын
How did your mind pronounce it by default? Bowlion? Etc?
@ShunyValdez
@ShunyValdez 3 жыл бұрын
Boo-lean. Should have been boo-le-an.
@nedaltrebor8553
@nedaltrebor8553 3 жыл бұрын
@@ShunyValdez ahh so like scary ghost Boo micropause lean back
@u_u2322
@u_u2322 3 жыл бұрын
why am I feeling so good that I know all these (except Operating Systems) even though I'm a self thought. Where did I learn all this 😅?
@wojtekburzynski654
@wojtekburzynski654 3 жыл бұрын
The thing about CS is that depending on your field different courses will be valuable. Computer architecture, operating systems, JavaEE, Web development, Routing in computer networks... The list goes on. Sure, you probably wont learn latest and greatest frameworks and technologies, but at you will have all your bases covered.
@fadamitanolatomiwas.miguel6626
@fadamitanolatomiwas.miguel6626 3 жыл бұрын
Programming paradigm will be the topic I will have to learn
10 Years of Coding: What I Wish I Knew Before I Started
12:03
Tech With Tim
Рет қаралды 188 М.
My Software Engineering Journey & Salaries ($$$)
11:50
Tech With Tim
Рет қаралды 106 М.
She made herself an ear of corn from his marmalade candies🌽🌽🌽
00:38
Valja & Maxim Family
Рет қаралды 18 МЛН
Une nouvelle voiture pour Noël 🥹
00:28
Nicocapone
Рет қаралды 9 МЛН
Enceinte et en Bazard: Les Chroniques du Nettoyage ! 🚽✨
00:21
Two More French
Рет қаралды 42 МЛН
Tiny Voxel Engine
0:48
capslpop
Рет қаралды 113
I Failed as a Self-Taught Software Engineer and Bootcamp Grad
15:29
CalculusCoder
Рет қаралды 158 М.
5 Signs of an Inexperienced Self-Taught Developer (and how to fix)
8:40
What To Learn After Python?
10:24
Tech With Tim
Рет қаралды 86 М.
How I Taught Myself Guitar; What NOT To Do
16:08
Rhett Shull
Рет қаралды 2,3 МЛН
Monty Python Communist Quiz sketch
3:18
alpergaga
Рет қаралды 18 МЛН
FizzBuzz: One Simple Interview Question
7:18
Tom Scott
Рет қаралды 3,5 МЛН
25 Terms All Programmers NEED To Know!
10:21
Tech With Tim
Рет қаралды 66 М.
She made herself an ear of corn from his marmalade candies🌽🌽🌽
00:38
Valja & Maxim Family
Рет қаралды 18 МЛН