The type of programming languages you need to know depends heavily on what you are doing with them and what task you're trying to complete. So in this video I focused on the different types of languages to hopefully give you an idea of the value in learning different programming paradigms. Once you've learned the paradigms picking up new languages is simple and you can learn them as you need to!
Each language I learned had a specific purpose and use case: -C# for backend, games, AR/VR -Javascript for frontend stuff -Golang because it's cool -Python for quick scripts like spamming my friends on discord
I'm a (very) old programmer and now I teach programming. I like your way of expressing the differences between types of languages, it was very concise. The first language I learned was Fortran and professionally the first language I used was Assembler. In my degree program, I use C/C++ as the base language with the most emphasis for my students partly for the reasons you listed, and some others such as flexibility and the ability to explore areas that require more low level involvement. I have even my IT oriented students and developer oriented students learn Java for the exposure to some of the differences and ensure they have good opportunities for employment, not to mention the exposure to GUI programming. We have been using JavaScript in our Web Programming Languages course (among others). SQL is required of everyone for their data base requirement. So that more or less covers declarative and scripting. We are adding Python as a way of introducing programming languages concepts and, of course, for it's use in Data Science fields. In our Theory class we use Lisp & Prolog - students write very simple programs in them - so they see other approaches. We do require some work in parallel programming (C++ & Java) because of the concepts and as greater use will be made of super computers, that's how much of the speed is gained. So I agree with your choices, they are ones we have been using and my students are successful in their careers.
What I learnt is that if you have a strong hold on logic building and computational thinking and you really know how things work rather than just syntax, than programming language is just a tool...
I think c# would be a good option. The thing I like about c# is it has the best testing tools, you can make just about anything in c#(games in unity, backend by asp.net core, mobile apps by Xamarin, Frontend by blazor, desktop application by WPF, machine learning in ml.net). And It's quite fast. In benchmarks, it performs better than java. My top 3 languages would be c++, c# and Python.
Here’s a Data Point Job: jr. Embedded Software Engineer Languages I use: C - Bread and Honey Language C++11 - good for higher level design. Mainly use it as “C with classes” and more standard libraries. Python - Mainly as a scripting or glue language. Nothing super complex Make/bash/etc - Good system tools and for being the “glue”. Basically a learn as you needed scenario Verilog/VHDL - Not really a “pure” programming language persay but has similarities. Good to know in my position even if I don’t write it much. Languages I want to learn: Java - Why not, plus good to know Go - System Sofrware team uses it so understanding would be good Rust - Has high potential for future mainstream use in the embedded world More Python - I need to understand more in depth to really take advantage of pythons benefits Modern C++ - Most uses of c++ I see don’t really take advantage of the vision and the direction the language is going. I’ve mainly learned it as C with Classes but with each iteration since C++11 they are really moving away from that.
I cannot explain my gratitude to you. I'm a freshman in high school rn, and you've helped me with your videos since I started programming. You're channel has everything I ever wanted to learn. Thank you. Literally nobody's more informative than you.
You should learn what is beneficial for you. Learn and master 2-4 languages only rather than jumping and learning multiple languages just make your resume look great. You will never be happy doing that, and programming was meant to give developers happiness!!
Big fan Tim... I learnt programming only by watching your videos... they are so good and i am learning more and more languages as now i am in love with programming... all thanks to you bud😄😄
I consider myself an amateur hobby programmer, however, I earned some money selling my programs. I also consider my level of programming in all my known languages intermediate or below that. I've learned first Basic (C64), then QBasic, after that Turbo Pascal. When I reached 14 I've learned Free Pascal, then Delphi. When I was 18, I've learned Visual Basic. When I was 27, I've learned C# and XAML, and also some SQL. After that, I have started to learn Python thanks to your videos. For some reason, I really want to learn Fortran, I can't tell why. I can't write a decent program in any of those languages, I just love them. I usually write industry applications to help me during my work, and some of them could be sold. But I work in a completely different industry, I just have a passion to code. I plan to use Python for an autonomous toy car which learns to drive using ultrasonic and machine learning.
Learn C and learn various assembly languages and everything else will be super easy. Myself, HP67, UCSD-pSystem, MODULA-2,, Delphi, C, C++, MS macro assembly, also 6502 and 68000, Java, JavaScript , FPC/Lazarus, Python, SQL etc. Once you get the logic down it is not hard.
Nice overview Clojure is an easier way to learn pure functional programming. It works in a JVM and is easier to start with. Like other functional langages it works well with data manipulation and data science. IMHO it takes more than 2 hours to fully understand the functional programming mindset. As long as your program is more than 20 lines, you are probably wrong :-) Scala is also a great way to learn functional programming as well as a bunch of other langages concepts. There is a great Coursera specialisation covering Scala as a functional langage. Prolog is pretty old, however practicing prolog is useful for a lot of nowadays rule based engines. For instances drools or rete use a similar system to express business rules. Declarative automation tools (make, ant, chef, terraform) implement tasks dependencies as rules and requires the same mind shift than prolog.
I recommend adding a scripting language to your belt for automation and administration of your systems. Examples are bash (very popular), zsh (better bash), PowerShell (especially if you use a Windows machine + it integrates with the .NET framework)
Our High School Syllabus decided to do this very weird thing that kinda syncs with your recommendation: We started off with one semester of understanding problem solving and then coding in python and excel (the very simplistic one), but they decided to teach us python by having us make projects in turtle. After this, they went on to simply teaching us python fundamentals, after which they taught us basic informatics in python, the whole thing lasting a year and a half. Following this, they decided to to spend a year and a half on Java, JavaFX and Android app development. After this long period, they went back to python for a year where they (are to) teach us data analytics and AI. Following this, they (are to) teach us Data Structures in Java for another half year and then teach us SQL for half a year and then computer security for the last half a year. They way they go about is so surprisingly gruesome that ppl just dropped the module until from 180 only 30 were left.
this is my first time watching you i wanted to learn python and asked my big brother who knows python and he recommended you after a few days i will start your python beginner tutorial great video btw i am pretty sure you use pycharm while i use visual studio is it ok
Hey tim, in your latest desk setup video your keyboard was very different from the one in this video ( with rgb and all), which one is it? And probably make a review??
If you were in Windows: which minimalistic C programming configuration would you suggest ? I mean, which Editor, Compiler, Linker, Debugger...etc . The idea is avoiding IDE in order to learn better. Thanks
Many of my friends also ask me the same question and I always tell them them you need none... if you can communicate in English you can do all the programming in the world this is the beauty of programming community, they are fully welcome to new people even though many are antisocial, and they are always happy to help you as long as you can communicate the problem easily, this is why programmers find it hard to leave programming, cus the community is just so beautiful.
Would you consider making a video on... Which data structures we should be using while handling certain types of data? Like sometimes Dictionaries are more efficient than Lists and maybe sometimes Tuples are while handling certain types of Data...So if you could make video on this it would be nice.. Thanks Tim 😁
If you don't use JavaScript you may find yourself in the future having to at least learn a little of this. I think any developer should touch JavaScript (even if just learning a little bit of it). I'm going for Python, JavaScript and C++. But probably something like: high (eg. Py, Js, etc), 'kinda high and kinda low' (eg. Java, C# etc.) and 'low' (eg. C, C++, going lower is probably too old), I'm not a pro but as I see it (in other words-my opinion) you should go for one from each section starting from High (because it's easier and you won't have to be stressed all time, then you go slowly lower) if you're to learn about 3 languages. Again, this is all just how I see it, some people will disagree, so I suggest researching more as well
What's your thought about Scala? Functional cum Object Oriented. Very popular with Big Data Engineers. Best thing is, it runs on JVM, so can inter-operate with Java seamlessly.
My hiring manager, who hired me for a position using a language I don’t even know, said as soon as you know atleast two being introduced to one that your unfamiliar with you’ll still be able to read the programs
I use Python for making my Algorithm or Flowchart and Then Use it in Java for my School Projects and I use C# because I love game development in Unity😁. I try to master only this three but I know HTML and QBASIC a little.
One dynamic language and one static language is enough for web development. I wonder if "techwithtim" coupon code can stack with current Black Friday sale of AlgoExpert.
Hey tim after python I was looking to get into golang recently, Didn't really see any mention of the language here. Wanted to know your thoughts on the language like is it worth pursuing,etc
C# and c++ are the most used programming languages in game Dev so you definitely need to learn them if you take that path. Also Java and C# are used a lot in enterprise level applications
@@migueldomingos4570 Yes, that is true. For real jobs and work one need to learn these languages. They are mainstream. But for hobby projects I find more interesting the languages I wrote above.
I would say though at least in their first year of learn self development new developers should focus on one programming language/one framework or similar. I see to many new people trying to learn everything in their first year and not being able to get good at any.
The type of programming languages you need to know depends heavily on what you are doing with them and what task you're trying to complete. So in this video I focused on the different types of languages to hopefully give you an idea of the value in learning different programming paradigms. Once you've learned the paradigms picking up new languages is simple and you can learn them as you need to!
Is dart a good programming language?
U changed that gaming chair
I sell mine that gaming chair was hurting my back so bad
@@sanjayrajasreeraja3456 sure, but it is at it's best usecase is cross plataform apps with flutter
@@migueldomingos4570 ikr but talking abt potential it is great because it is being supported by Google right?
Hey tim can you make a video on how to type fast while coding?
Each language I learned had a specific purpose and use case:
-C# for backend, games, AR/VR
-Javascript for frontend stuff
-Golang because it's cool
-Python for quick scripts like spamming my friends on discord
Bro, I just enjoy watching your videos. You are like the Netflix for programmers.
Wow, thanks!
Answer: All you need.
Agreed!
@@TechWithTim I don't deserve this heart, sir :(
Or all the company needs 😂😂😂
Basically, yes.
I'm a (very) old programmer and now I teach programming. I like your way of expressing the differences between types of languages, it was very concise. The first language I learned was Fortran and professionally the first language I used was Assembler. In my degree program, I use C/C++ as the base language with the most emphasis for my students partly for the reasons you listed, and some others such as flexibility and the ability to explore areas that require more low level involvement. I have even my IT oriented students and developer oriented students learn Java for the exposure to some of the differences and ensure they have good opportunities for employment, not to mention the exposure to GUI programming. We have been using JavaScript in our Web Programming Languages course (among others). SQL is required of everyone for their data base requirement. So that more or less covers declarative and scripting. We are adding Python as a way of introducing programming languages concepts and, of course, for it's use in Data Science fields. In our Theory class we use Lisp & Prolog - students write very simple programs in them - so they see other approaches. We do require some work in parallel programming (C++ & Java) because of the concepts and as greater use will be made of super computers, that's how much of the speed is gained. So I agree with your choices, they are ones we have been using and my students are successful in their careers.
What I learnt is that if you have a strong hold on logic building and computational thinking and you really know how things work rather than just syntax, than programming language is just a tool...
I think c# would be a good option. The thing I like about c# is it has the best testing tools, you can make just about anything in c#(games in unity, backend by asp.net core, mobile apps by Xamarin, Frontend by blazor, desktop application by WPF, machine learning in ml.net). And It's quite fast. In benchmarks, it performs better than java. My top 3 languages would be c++, c# and Python.
True dat, eventually add C to it
Yeah C# is good for all you mentioned but it is very bad in mobile app development
Damn I currently know how to program with Cpp and Python, maybe gonna learn html and JavaScript and C# next ¯\_(ツ)_/¯
Here’s a Data Point
Job: jr. Embedded Software Engineer
Languages I use:
C - Bread and Honey Language
C++11 - good for higher level design. Mainly use it as “C with classes” and more standard libraries.
Python - Mainly as a scripting or glue language. Nothing super complex
Make/bash/etc - Good system tools and for being the “glue”. Basically a learn as you needed scenario
Verilog/VHDL - Not really a “pure” programming language persay but has similarities. Good to know in my position even if I don’t write it much.
Languages I want to learn:
Java - Why not, plus good to know
Go - System Sofrware team uses it so understanding would be good
Rust - Has high potential for future mainstream use in the embedded world
More Python - I need to understand more in depth to really take advantage of pythons benefits
Modern C++ - Most uses of c++ I see don’t really take advantage of the vision and the direction the language is going. I’ve mainly learned it as C with Classes but with each iteration since C++11 they are really moving away from that.
I cannot explain my gratitude to you. I'm a freshman in high school rn, and you've helped me with your videos since I started programming. You're channel has everything I ever wanted to learn. Thank you. Literally nobody's more informative than you.
I've been thinking about this for a while
And now you've uploaded this video
Thank you so much
You should learn what is beneficial for you. Learn and master 2-4 languages only rather than jumping and learning multiple languages just make your resume look great. You will never be happy doing that, and programming was meant to give developers happiness!!
I Am 10 Years Old And I Learned 13 Programming Languages
@@ahmedthegreat3973 wow! where do you work ? Is it necessary to know that many languages to be in the race ?
Exactly. Be a master of a few rather than jumping around each language and mastering none.
@@cpwithsundar No Its Not Necessary. But Its Great To Know More Than One Language I Recommend 3 Till 6. What Do You Mean By Where I Work?
@@cpwithsundar I Work In My House On My Computer
Thanks for the video!
You are the only person I suggest to people who asks me which programming RUclipsr should I watch.
When you hit like even before the video starts
Big up tim 💪
MVP
I was reluctant to give the video a like because the number of likes is 666
Big fan Tim... I learnt programming only by watching your videos... they are so good and i am learning more and more languages as now i am in love with programming... all thanks to you bud😄😄
Thank you so much Tim, thanks to you i have a clear goal now, i'm starting with Python, then Java and then C++, i can finally start studying
I have been looking for a video like this. Thank you tim!😊👍
Thanks for the advice Tim! Really appreciate it
I consider myself an amateur hobby programmer, however, I earned some money selling my programs. I also consider my level of programming in all my known languages intermediate or below that. I've learned first Basic (C64), then QBasic, after that Turbo Pascal. When I reached 14 I've learned Free Pascal, then Delphi. When I was 18, I've learned Visual Basic. When I was 27, I've learned C# and XAML, and also some SQL. After that, I have started to learn Python thanks to your videos. For some reason, I really want to learn Fortran, I can't tell why. I can't write a decent program in any of those languages, I just love them. I usually write industry applications to help me during my work, and some of them could be sold. But I work in a completely different industry, I just have a passion to code. I plan to use Python for an autonomous toy car which learns to drive using ultrasonic and machine learning.
Just start a project & learn the code that is needed for it
Thanks for this excellent video!
One! C++ or C, can do it all 😊
Technically assembly, but as much as I live hacking in assembly, I do have other things to do😊
Learn C and learn various assembly languages and everything else will be super easy. Myself, HP67, UCSD-pSystem, MODULA-2,, Delphi, C, C++, MS macro assembly, also 6502 and 68000, Java, JavaScript , FPC/Lazarus, Python, SQL etc. Once you get the logic down it is not hard.
Tim is the best programming youtuber
and you're the best subscriber ;)
Just learn what you need to know. I use Python for AI and c#/c++ for game development.
I'm so glad I found this channel!
How many programming languages do you need to know?
*YES*
Nice new monitor bg tim!
Thanks!
Nice overview
Clojure is an easier way to learn pure functional programming. It works in a JVM and is easier to start with. Like other functional langages it works well with data manipulation and data science. IMHO it takes more than 2 hours to fully understand the functional programming mindset. As long as your program is more than 20 lines, you are probably wrong :-)
Scala is also a great way to learn functional programming as well as a bunch of other langages concepts. There is a great Coursera specialisation covering Scala as a functional langage.
Prolog is pretty old, however practicing prolog is useful for a lot of nowadays rule based engines. For instances drools or rete use a similar system to express business rules. Declarative automation tools (make, ant, chef, terraform) implement tasks dependencies as rules and requires the same mind shift than prolog.
I recommend adding a scripting language to your belt for automation and administration of your systems. Examples are bash (very popular), zsh (better bash), PowerShell (especially if you use a Windows machine + it integrates with the .NET framework)
very thanks for your video helping
Our High School Syllabus decided to do this very weird thing that kinda syncs with your recommendation:
We started off with one semester of understanding problem solving and then coding in python and excel (the very simplistic one), but they decided to teach us python by having us make projects in turtle. After this, they went on to simply teaching us python fundamentals, after which they taught us basic informatics in python, the whole thing lasting a year and a half. Following this, they decided to to spend a year and a half on Java, JavaFX and Android app development. After this long period, they went back to python for a year where they (are to) teach us data analytics and AI. Following this, they (are to) teach us Data Structures in Java for another half year and then teach us SQL for half a year and then computer security for the last half a year. They way they go about is so surprisingly gruesome that ppl just dropped the module until from 180 only 30 were left.
this is my first time watching you i wanted to learn python and asked my big brother who knows python and he recommended you after a few days i will start your python beginner tutorial great video btw i am pretty sure you use pycharm while i use visual studio is it ok
as long as you know what you are doing, it doesn't matter even if you use notepad lol (don't tho)
tim's computer walpaper looks sick !!
Hey tim, in your latest desk setup video your keyboard was very different from the one in this video ( with rgb and all), which one is it? And probably make a review??
Great content, I only see a great future for you Tim, thanks again
Good! The languages that I'm learning so far are the ones that you're recommending in this video (except for Python, which I plan to learn next)...
Thank you, Tim! 🔥💯
Informative, 😊
If you were in Windows: which minimalistic C programming configuration would you suggest ? I mean, which Editor, Compiler, Linker, Debugger...etc . The idea is avoiding IDE in order to learn better. Thanks
Many of my friends also ask me the same question and I always tell them them you need none... if you can communicate in English you can do all the programming in the world this is the beauty of programming community, they are fully welcome to new people even though many are antisocial, and they are always happy to help you as long as you can communicate the problem easily, this is why programmers find it hard to leave programming, cus the community is just so beautiful.
use reddit pages like /r learnpython to ask questions usually , stackoverflow is kinda bad place for asking
I just wanted to know this and you have uploaded video 😀
Thank you @Tech With Tim
You're so cool man i m watching you from morocco north africa.
I want to thank you for all ur amazing advice
You have a good point of view of C, dealing with Linux is much easier when you understand C, Linux is very related whit C.
really hit us with that linus tech tip segue
I want Tim to have a smile on his face!
Seeing him from last 1year , he don't smile .
@@harshkashyap9787 haha no man he does 😂😂😂😂
Hes the second davie 504
@@sharonvictoria8417 I need BASS!
He is a programmer... What do you think?
What mic do you use? The audio quality is good
Check description! But thanks :)
I really like your every video. Every video is very very good
Amazing explanation
What do you think about Xamarin Forms?
All needed for project.
Love ur vids ❤️
Thanks, Tim. I'm a Filipino fan.
I am not first
I am not last
But when Tim uploads video
I click fast
Nice vid!
Tim make video on how to get into competetive programming which language should we use. Etc..
Make video on it all about competitive programming
Would you consider making a video on... Which data structures we should be using while handling certain types of data? Like sometimes Dictionaries are more efficient than Lists and maybe sometimes Tuples are while handling certain types of Data...So if you could make video on this it would be nice.. Thanks Tim 😁
If you don't use JavaScript you may find yourself in the future having to at least learn a little of this. I think any developer should touch JavaScript (even if just learning a little bit of it).
I'm going for Python, JavaScript and C++. But probably something like: high (eg. Py, Js, etc), 'kinda high and kinda low' (eg. Java, C# etc.) and 'low' (eg. C, C++, going lower is probably too old), I'm not a pro but as I see it (in other words-my opinion) you should go for one from each section starting from High (because it's easier and you won't have to be stressed all time, then you go slowly lower) if you're to learn about 3 languages. Again, this is all just how I see it, some people will disagree, so I suggest researching more as well
You are my programming inspiration 💗💗
I'm gonna learn Python,c# and c++
What's your thought about Scala?
Functional cum Object Oriented.
Very popular with Big Data Engineers.
Best thing is, it runs on JVM, so can inter-operate with Java seamlessly.
Love from INDIA❤️❤️
My hiring manager, who hired me for a position using a language I don’t even know, said as soon as you know atleast two being introduced to one that your unfamiliar with you’ll still be able to read the programs
Any chance you can make a video on how to read python docs and/or other module docs. I get so lost trying to get those things.
good video, as always
"oR yOu jUSt wANTEd tO hEaR mORE oF mY vOiCe"
Make a video on roadmap of full stack engineer which are the technologies you should learn as a full stack engineer
Is Golang worth learning?
LOl nick is an instructor at Algoexpert.
you missed assembler
Nice ;D
I use Python for making my Algorithm or Flowchart and Then Use it in Java for my School Projects and I use C# because I love game development in Unity😁.
I try to master only this three but I know HTML and QBASIC a little.
Please conduct a QNA sessions TIM💖
Btw my fav youtuber and inspiration
Good idea! Maybe one for 500k?
Yes really need a Q&A session! ❤
@@TechWithTim yay!
@@TechWithTim My God TIM replied I'm so blessed today May be becoz 2mrw is my birthday
This made my day😘❤💖
Cool 😎
Thanks YOU for every thing which you do?i have question why i need react with django and django it's enough to be high levels in web .
React is front end, Django is backend.
What do you think about GoLang as a potential future of programming ?
Nice video to talk about tim, young children need to here this
One dynamic language and one static language is enough for web development.
I wonder if "techwithtim" coupon code can stack with current Black Friday sale of AlgoExpert.
Tim has a new chair !!!!!
Hey tim after python I was looking to get into golang recently, Didn't really see any mention of the language here. Wanted to know your thoughts on the language like is it worth pursuing,etc
Tim made a playlist for Golang.
@@rakshitpuri4192 yes I have been following that. I wanted to know the background of the language as he explained in the video about other languages.
Why does declarative programming sound like machine learning
What's the difference between algoexpert and codeforces
I Am 10 Years Old And I Learned 13 Programming Languages
Tim can you do a tutorial on how to create our own modus for python using C..
Only two Python and Go
I studied c first now learning java, i know html and css
@@DSCuber-28-01-2019 did i said it is program language? 🤔
Bash or Rust?
Would you consider C# .Net to be the same sort of strongly typed language as Java?
Yep!
To learn: Dynamic: Ruby, Python, Julia - Static: D, Go, Rust, Nim, V, OCaml (But I would not learn C, C++, C# and Java)
C# and c++ are the most used programming languages in game Dev so you definitely need to learn them if you take that path. Also Java and C# are used a lot in enterprise level applications
@@migueldomingos4570 Yes, that is true. For real jobs and work one need to learn these languages. They are mainstream. But for hobby projects I find more interesting the languages I wrote above.
*Many languages but only one God !......ie. (Conditionals)* 😊👍
Learn CLISP , the most fun I have ever had in learning it....
How many?
Learn all of 'em
Those who disliked are the ones who learned way too many languages and mess up.
I wish Haskell was on the list of functional langs tho :( Haskell is pretty awesome
You forgot our favorite programming language. Assembly 8086
I would say though at least in their first year of learn self development new developers should focus on one programming language/one framework or similar. I see to many new people trying to learn everything in their first year and not being able to get good at any.
The person who inspired me to learn python. Thanks a lot for being here for us Tim.❤🔥
Nice...
What can I say? Gotta catch em all