title
The Programming Language Guide

description
This is NOT another annoying top 10 programming language video. We will talk about how programming languages work including low-level & high-level, compiled, interpreted, etc. We will also talk about some of the popular languages and what they are good for. 👇 Website & Courses: https://traversymedia.com 💖 Show Support Patreon: https://www.patreon.com/traversymedia PayPal: https://paypal.me/traversymedia 👇 Follow Me On Social Media: Twitter: https://twitter.com/traversymedia Instagram: https://www.instagram.com/traversymedia Linkedin: https://www.linkedin.com/in/bradtraversy 💻 Programing Language Crash Courses: Rust - https://www.youtube.com/watch?v=zF34dRivLOw C# - https://www.youtube.com/watch?v=GcFJjpMFJvI Go - https://www.youtube.com/watch?v=SqrbIlUwR0U& Python - https://www.youtube.com/watch?v=JJmcL1N2KQs JavaScript - https://www.youtube.com/watch?v=hdI2bqOjy3c Kotlin - https://www.youtube.com/watch?v=5flXf8nuq60&t=1s PHP - https://www.youtube.com/watch?v=oJbfyzaA2QA&list=PLillGF-Rfqbap2IB6ZS4BBBcYPagAjpjn Ruby (Ruby on Rails) - https://www.youtube.com/watch?v=B3Fbujmgo60 Timestamps: 0:00 - Intro 1:02 - Low-Level vs High Level 1:43 - Machine Language 2:28 - Assembly Language 3:24 - General Purpose Languages 3:52 - C Language 4:47 - Compiled vs Interpreted 6:30 - C++ 7:26 - Rust 8:46 - High Level, Interpreted Languages 9:23 - Java 10:50 - Statically Typed vs Dynamic 12:03 - Kotlin 12:58 - C# 14:40 - Go 16:00 - Python 17:20 - Ruby 18:54 - JavaScript 20:58 - PHP 22:37 - Swift 23:35 - Outro

detail
{'title': 'The Programming Language Guide', 'heatmap': [{'end': 165.012, 'start': 144.038, 'weight': 0.716}, {'end': 234.42, 'start': 219.903, 'weight': 0.712}, {'end': 411.714, 'start': 380.707, 'weight': 1}, {'end': 589.784, 'start': 566.762, 'weight': 0.789}, {'end': 672.881, 'start': 644.465, 'weight': 0.898}, {'end': 735.181, 'start': 712.868, 'weight': 0.878}, {'end': 793.898, 'start': 771.821, 'weight': 0.795}, {'end': 1047.479, 'start': 1022.872, 'weight': 0.816}], 'summary': 'Covers a crash course in modern programming languages, including their uses and differences, highlights c, c++, rust, java, kotlin, c#, go, python, ruby, javascript, php, and swift, emphasizing their applications and strengths in various domains and platforms.', 'chapters': [{'end': 57.226, 'segs': [{'end': 36.932, 'src': 'embed', 'start': 13.079, 'weight': 0, 'content': [{'end': 31.149, 'text': "So what I wanted to do in this video was was basically a crash course of programming languages and just go through a lot of the modern languages and talk about what they're good for you know how they work and also look at things like low level versus high level and what that means.", 'start': 13.079, 'duration': 18.07}, {'end': 36.932, 'text': 'talk about compiled versus interpreted languages, statically typed versus dynamically typed.', 'start': 31.149, 'duration': 5.783}], 'summary': 'Crash course on modern programming languages: low vs high level, compiled vs interpreted, static vs dynamic typing.', 'duration': 23.853, 'max_score': 13.079, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc13079.jpg'}], 'start': 0.329, 'title': 'Crash course in programming languages', 'summary': 'Discusses a crash course of modern programming languages, covering their uses, low level versus high level, compiled versus interpreted languages, and statically typed versus dynamically typed, aiming to help beginners and those looking to learn additional languages.', 'chapters': [{'end': 57.226, 'start': 0.329, 'title': 'Crash course in programming languages', 'summary': 'Discusses a crash course of modern programming languages, covering their uses, low level versus high level, compiled versus interpreted languages, and statically typed versus dynamically typed, aiming to help beginners and those looking to learn additional languages.', 'duration': 56.897, 'highlights': ['The chapter covers a crash course of modern programming languages, discussing their uses, low level versus high level, compiled versus interpreted languages, and statically typed versus dynamically typed, providing insights for beginners and those aiming to learn additional languages.', 'The video provides valuable information for beginners and individuals looking to learn a second or third programming language, offering insights on modern programming languages, their functionalities, and differences such as low level versus high level, compiled versus interpreted languages, and statically typed versus dynamically typed.']}], 'duration': 56.897, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc329.jpg', 'highlights': ['The chapter covers a crash course of modern programming languages, discussing their uses, low level versus high level, compiled versus interpreted languages, and statically typed versus dynamically typed, providing insights for beginners and those aiming to learn additional languages.', 'The video provides valuable information for beginners and individuals looking to learn a second or third programming language, offering insights on modern programming languages, their functionalities, and differences such as low level versus high level, compiled versus interpreted languages, and statically typed versus dynamically typed.']}, {'end': 389.816, 'segs': [{'end': 97.549, 'src': 'embed', 'start': 63.513, 'weight': 3, 'content': [{'end': 63.953, 'text': 'All right, guys.', 'start': 63.513, 'duration': 0.44}, {'end': 70.377, 'text': 'so before we get into specific programming languages, we should first talk about low level versus high level.', 'start': 63.953, 'duration': 6.424}, {'end': 71.337, 'text': 'And when I say level,', 'start': 70.457, 'duration': 0.88}, {'end': 78.941, 'text': "I'm really talking about the comparison between the language or the code that we write and the machine and what the machine understands,", 'start': 71.337, 'duration': 7.604}, {'end': 85.405, 'text': "because your computer doesn't directly understand JavaScript or C, Sharp or Java or anything like that.", 'start': 78.941, 'duration': 6.464}, {'end': 89.107, 'text': 'It has to be compiled into something that the CPU understands.', 'start': 85.745, 'duration': 3.362}, {'end': 97.549, 'text': "So when I say levels, I'm basically talking about how close to the hardware the language is and how much abstraction there is between them.", 'start': 89.787, 'duration': 7.762}], 'summary': 'Discussion on low level vs high level programming languages and their proximity to hardware.', 'duration': 34.036, 'max_score': 63.513, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc63513.jpg'}, {'end': 135.291, 'src': 'embed', 'start': 108.712, 'weight': 1, 'content': [{'end': 114.714, 'text': 'which consists of instructions that are used to control the machine, CPU or central processing unit.', 'start': 108.712, 'duration': 6.002}, {'end': 122, 'text': "and these instructions are strictly numeric and they're in the form of zeros and ones, which is called binary.", 'start': 115.274, 'duration': 6.726}, {'end': 127.864, 'text': "Machine code can also be represented as hexadecimal, so it's easier for humans to read.", 'start': 122.4, 'duration': 5.464}, {'end': 135.291, 'text': "but ultimately machines only process zeros and ones because it represents an electrical state that's either on or off.", 'start': 127.864, 'duration': 7.427}], 'summary': 'Machine instructions are numeric, represented in binary or hexadecimal, and processed as electrical states of on or off.', 'duration': 26.579, 'max_score': 108.712, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc108712.jpg'}, {'end': 170.134, 'src': 'heatmap', 'start': 144.038, 'weight': 0.716, 'content': [{'end': 148.041, 'text': "And I don't think there's many companies hiring senior machine code developers.", 'start': 144.038, 'duration': 4.003}, {'end': 148.982, 'text': 'All right.', 'start': 148.741, 'duration': 0.241}, {'end': 156.568, 'text': 'So the next level we have up from that, I should see the next language we have is called assembly language or ASM or just assembly.', 'start': 149.042, 'duration': 7.526}, {'end': 165.012, 'text': 'And assembly uses numbers, symbols, and abbreviations as opposed to just ones and zeros like binary machine code.', 'start': 157.228, 'duration': 7.784}, {'end': 170.134, 'text': "And assembly code isn't actually compiled like some of the higher level languages.", 'start': 165.632, 'duration': 4.502}], 'summary': 'Limited demand for senior machine code developers; assembly uses symbols and numbers instead of binary.', 'duration': 26.096, 'max_score': 144.038, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc144038.jpg'}, {'end': 247.996, 'src': 'heatmap', 'start': 219.903, 'weight': 0.712, 'content': [{'end': 225.405, 'text': "However that's when you're comparing it to the whole chart to machine language assembly language and so on.", 'start': 219.903, 'duration': 5.502}, {'end': 231.827, 'text': "These languages are lower than something like Python or Java or Ruby which we'll talk about later.", 'start': 225.785, 'duration': 6.042}, {'end': 234.42, 'text': "So let's take a look at C.", 'start': 232.458, 'duration': 1.962}, {'end': 237.184, 'text': 'C is the lowest level general purpose language.', 'start': 234.42, 'duration': 2.764}, {'end': 240.227, 'text': 'The only thing lower than C is assembly and machine code.', 'start': 237.224, 'duration': 3.003}, {'end': 247.996, 'text': 'And C was created in the early 70s by Dennis Ritchie and was actually derived from another language called B.', 'start': 240.848, 'duration': 7.148}], 'summary': 'C is the lowest general purpose language, created in the early 70s by dennis ritchie.', 'duration': 28.093, 'max_score': 219.903, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc219903.jpg'}, {'end': 264.409, 'src': 'embed', 'start': 234.42, 'weight': 0, 'content': [{'end': 237.184, 'text': 'C is the lowest level general purpose language.', 'start': 234.42, 'duration': 2.764}, {'end': 240.227, 'text': 'The only thing lower than C is assembly and machine code.', 'start': 237.224, 'duration': 3.003}, {'end': 247.996, 'text': 'And C was created in the early 70s by Dennis Ritchie and was actually derived from another language called B.', 'start': 240.848, 'duration': 7.148}, {'end': 252.38, 'text': 'And C was used in the development of the Unix operating system.', 'start': 248.937, 'duration': 3.443}, {'end': 259.665, 'text': "It's a procedural language as opposed to an object oriented one, and it's lower level than many other languages.", 'start': 252.74, 'duration': 6.925}, {'end': 264.409, 'text': 'So you do have to manage some hardware resources such as memory allocation.', 'start': 259.766, 'duration': 4.643}], 'summary': 'C is a low-level procedural language, created in the 70s, used in unix, and requires managing hardware resources.', 'duration': 29.989, 'max_score': 234.42, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc234420.jpg'}, {'end': 359.209, 'src': 'embed', 'start': 330.77, 'weight': 2, 'content': [{'end': 336.614, 'text': "There's more abstraction to it, and a program called an interpreter reads and executes the code,", 'start': 330.77, 'duration': 5.844}, {'end': 342.838, 'text': 'and some languages like python and ruby are first compiled into some sort of bytecode,', 'start': 336.614, 'duration': 6.224}, {'end': 349.323, 'text': 'which are binary instructions that are executed by a virtual machine such as the python virtual machine.', 'start': 342.838, 'duration': 6.485}, {'end': 359.209, 'text': "technically they do have a compile step, but they're not being compiled directly to machine code like with with a lower level language like c,", 'start': 349.323, 'duration': 9.886}], 'summary': 'Languages like python and ruby are first compiled into bytecode, executed by a virtual machine.', 'duration': 28.439, 'max_score': 330.77, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc330770.jpg'}], 'start': 63.513, 'title': 'Programming language levels', 'summary': "Discusses low level vs high level programming languages, machine code abstraction, and introduces assembly language, c, compiled and interpreted languages, emphasizing c's usage, history, and power.", 'chapters': [{'end': 148.982, 'start': 63.513, 'title': 'Programming levels and abstraction', 'summary': 'Explains the concept of low level versus high level programming languages, highlighting the difference in abstraction levels and the transition from machine code to higher level languages, emphasizing the use of zeros and ones in machine code.', 'duration': 85.469, 'highlights': ['The concept of low level versus high level programming languages is discussed, emphasizing the difference in abstraction levels and the relationship between the code written and what the machine understands.', 'Machine language or machine code, which consists of instructions used to control the CPU, is highlighted as the absolute lowest level of code, represented in zeros and ones (binary) or hexadecimal for human readability.', 'The transition from machine code to higher level languages is mentioned, noting that programmers no longer write machine code due to its tedious and error-prone nature.']}, {'end': 389.816, 'start': 149.042, 'title': 'Programming language levels', 'summary': "Introduces programming language levels, starting from assembly language, then discussing general purpose languages such as c, and explains the difference between compiled and interpreted languages, highlighting c's usage, history, and power.", 'duration': 240.774, 'highlights': ['C is the lowest level general purpose language, created in the early 70s by Dennis Ritchie, and used in the development of the Unix operating system. C is the lowest level general purpose language, created in the early 70s by Dennis Ritchie, and used in the development of the Unix operating system.', 'C is very powerful, used for things like operating systems, the Windows kernel, building compilers for other languages, drivers, database systems, and many other powerful programs. C is very powerful, used for things like operating systems, the Windows kernel, building compilers for other languages, drivers, database systems, and many other powerful programs.', 'A compiled language like C requires a piece of software called a compiler to compile the code down to instructions that the machine understands, making the compiled program not human readable. A compiled language like C requires a piece of software called a compiler to compile the code down to instructions that the machine understands, making the compiled program not human readable.', 'Interpreted languages like Python and Ruby are first compiled into binary instructions that are executed by a virtual machine, making interpreted languages typically easier to work with and allowing faster code writing. Interpreted languages like Python and Ruby are first compiled into binary instructions that are executed by a virtual machine, making interpreted languages typically easier to work with and allowing faster code writing.']}], 'duration': 326.303, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc63513.jpg', 'highlights': ['C is the lowest level general purpose language, created in the early 70s by Dennis Ritchie, and used in the development of the Unix operating system.', 'Machine language or machine code, which consists of instructions used to control the CPU, is highlighted as the absolute lowest level of code, represented in zeros and ones (binary) or hexadecimal for human readability.', 'Interpreted languages like Python and Ruby are first compiled into binary instructions that are executed by a virtual machine, making interpreted languages typically easier to work with and allowing faster code writing.', 'The concept of low level versus high level programming languages is discussed, emphasizing the difference in abstraction levels and the relationship between the code written and what the machine understands.']}, {'end': 776.943, 'segs': [{'end': 437.3, 'src': 'embed', 'start': 390.256, 'weight': 0, 'content': [{'end': 396.521, 'text': "So the next language we're going to look at is C++, which is another lower level language that was created in the 80s.", 'start': 390.256, 'duration': 6.265}, {'end': 404.168, 'text': "And it's actually a superset of C, meaning that it is essentially C, but it has a bunch of extra tools.", 'start': 397.062, 'duration': 7.106}, {'end': 411.714, 'text': 'So C++ is actually object oriented, which is a coding paradigm based on the concepts of objects.', 'start': 404.308, 'duration': 7.406}, {'end': 419.036, 'text': "And, like I was talking about in the last slide, both C and C++, there's no what's called garbage collection,", 'start': 412.294, 'duration': 6.742}, {'end': 423.637, 'text': 'which means that you have to manually allocate and free memory within your code.', 'start': 419.036, 'duration': 4.601}, {'end': 427.318, 'text': 'So C++ is an incredibly powerful language.', 'start': 424.237, 'duration': 3.081}, {'end': 432.379, 'text': "It's used to build things like AAA gaming titles, operating systems.", 'start': 427.358, 'duration': 5.021}, {'end': 437.3, 'text': "It's used in VR, robotics, scientific computing, and stuff like that.", 'start': 432.459, 'duration': 4.841}], 'summary': 'C++ is a powerful language from the 80s, used in aaa gaming titles, operating systems, vr, robotics, and scientific computing.', 'duration': 47.044, 'max_score': 390.256, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc390256.jpg'}, {'end': 507.638, 'src': 'embed', 'start': 462.085, 'weight': 2, 'content': [{'end': 469.147, 'text': 'so that there is no garbage collection, but There is protection built in, more so than something like C or C++.', 'start': 462.085, 'duration': 7.062}, {'end': 476.43, 'text': 'And Rust can be used for game engines, operating systems, browser components, VR, and much more.', 'start': 469.727, 'duration': 6.703}, {'end': 482.272, 'text': 'And it can be used to create web servers and used in the back end for web development.', 'start': 476.71, 'duration': 5.562}, {'end': 485.654, 'text': 'You can create APIs and microservices with Rust.', 'start': 482.673, 'duration': 2.981}, {'end': 490.636, 'text': 'It has some frameworks like Rocket, which will help you build web applications.', 'start': 485.954, 'duration': 4.682}, {'end': 497.204, 'text': 'and one area that i think rust is, is thriving in and will continue to to thrive in is web assembly.', 'start': 491.076, 'duration': 6.128}, {'end': 505.275, 'text': 'so web assembly is a new type of bytecode that can be run in modern browsers, and it provides very high performance within the browser,', 'start': 497.204, 'duration': 8.071}, {'end': 507.638, 'text': 'much higher than than what javascript can give us.', 'start': 505.275, 'duration': 2.363}], 'summary': 'Rust offers built-in protection, used for game engines, web servers, and web assembly, providing high browser performance.', 'duration': 45.553, 'max_score': 462.085, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc462085.jpg'}, {'end': 596.166, 'src': 'heatmap', 'start': 566.762, 'weight': 0.789, 'content': [{'end': 571.707, 'text': 'So Java is a high level class based object oriented programming language.', 'start': 566.762, 'duration': 4.945}, {'end': 577.073, 'text': 'Everything you create in Java is essentially an object or part of an object.', 'start': 572.148, 'duration': 4.925}, {'end': 584.842, 'text': 'And objects are defined by classes that have variables which are also called properties and functions also called methods.', 'start': 577.634, 'duration': 7.208}, {'end': 589.784, 'text': "So Java is a what's called a write once run anywhere language,", 'start': 585.382, 'duration': 4.402}, {'end': 596.166, 'text': 'meaning that compiled Java code can run on all platforms that support Java without the need to recompile.', 'start': 589.784, 'duration': 6.382}], 'summary': 'Java is a high-level object-oriented language with write once run anywhere capability.', 'duration': 29.404, 'max_score': 566.762, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc566762.jpg'}, {'end': 677.925, 'src': 'heatmap', 'start': 623.012, 'weight': 4, 'content': [{'end': 625.415, 'text': "It's also used for web servers and APIs.", 'start': 623.012, 'duration': 2.403}, {'end': 628.719, 'text': "It's used for mobile app development, specifically Android apps.", 'start': 625.495, 'duration': 3.224}, {'end': 632.2, 'text': 'Google uses Java for many of its products.', 'start': 629.219, 'duration': 2.981}, {'end': 640.724, 'text': 'Minecraft was created with Java and companies like Spotify, LinkedIn, Amazon all use it in one form or another.', 'start': 632.38, 'duration': 8.344}, {'end': 644.105, 'text': 'Java is also statically typed.', 'start': 641.944, 'duration': 2.161}, {'end': 649.427, 'text': 'So this is something else that I wanted to talk a little bit about before moving forward.', 'start': 644.465, 'duration': 4.962}, {'end': 657.07, 'text': "so every general purpose language that we've talked about up up to this point is statically typed,", 'start': 650.726, 'duration': 6.344}, {'end': 667.838, 'text': 'and what that means is that the type checking is performed at at compile time and we have to explicitly define types for our data within our code.', 'start': 657.07, 'duration': 10.768}, {'end': 672.881, 'text': 'so for our variables and our function returns, if something is a string,', 'start': 667.838, 'duration': 5.043}, {'end': 677.925, 'text': "we need to define it as a string and it can't change into a boolean or some other type.", 'start': 672.881, 'duration': 5.044}], 'summary': 'Java is used for web servers, apis, mobile app development, and by companies like google, spotify, linkedin, and amazon. it is also statically typed.', 'duration': 54.913, 'max_score': 623.012, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc623012.jpg'}, {'end': 699.32, 'src': 'embed', 'start': 672.881, 'weight': 6, 'content': [{'end': 677.925, 'text': "we need to define it as a string and it can't change into a boolean or some other type.", 'start': 672.881, 'duration': 5.044}, {'end': 688.272, 'text': "now, dynamic languages such as javascript and python, which we'll get to soon, do not require us to define types explicitly,", 'start': 678.445, 'duration': 9.827}, {'end': 694.637, 'text': 'as type checking is done at runtime, so it basically assumes the type automatically or dynamically.', 'start': 688.272, 'duration': 6.365}, {'end': 699.32, 'text': "As far as which is better, there's trade-offs with dynamic languages.", 'start': 695.557, 'duration': 3.763}], 'summary': 'Dynamic languages like javascript and python do not require explicit type definition, allowing for automatic or dynamic type assumption at runtime.', 'duration': 26.439, 'max_score': 672.881, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc672881.jpg'}, {'end': 751.111, 'src': 'heatmap', 'start': 712.868, 'weight': 5, 'content': [{'end': 719.933, 'text': 'And I know that I have a lot of JavaScript developers as viewers, and you can just think of JavaScript versus TypeScript,', 'start': 712.868, 'duration': 7.065}, {'end': 723.355, 'text': 'because TypeScript is JavaScript with static typing.', 'start': 719.933, 'duration': 3.422}, {'end': 735.181, 'text': "All right, so I wanted to mention Kotlin right after Java because it also uses the Java Virtual Machine, the JVM, and it's also used for Android apps.", 'start': 724.574, 'duration': 10.607}, {'end': 739.444, 'text': 'In fact, most modern native Android apps are built with Kotlin.', 'start': 735.221, 'duration': 4.223}, {'end': 749.391, 'text': "If you're looking to learn Kotlin or Java, I'd probably suggest Kotlin because of its popularity, and most people say that it's easier.", 'start': 740.144, 'duration': 9.247}, {'end': 751.111, 'text': 'easier than java.', 'start': 750.111, 'duration': 1}], 'summary': 'Kotlin, popular for android apps, is easier and widely used compared to java for development.', 'duration': 26.537, 'max_score': 712.868, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc712868.jpg'}], 'start': 390.256, 'title': 'Modern programming languages', 'summary': "Introduces c++ as a powerful and versatile language used in various applications, discusses rust's capabilities including high performance and potential applications, and highlights high-level languages like java and kotlin, comparing their features and popularity in the industry.", 'chapters': [{'end': 437.3, 'start': 390.256, 'title': 'C++: a powerful and versatile language', 'summary': 'Introduces c++, a superset of c, which is an object-oriented language used in various applications such as aaa gaming titles, operating systems, vr, robotics, and scientific computing, without automatic garbage collection.', 'duration': 47.044, 'highlights': ['C++ is a superset of C and is object-oriented, providing additional tools and features, making it incredibly powerful.', 'C++ is used in various applications such as AAA gaming titles, operating systems, VR, robotics, and scientific computing.', 'C++ does not have automatic garbage collection, requiring manual memory allocation and deallocation within the code.']}, {'end': 526.873, 'start': 438.3, 'title': 'Rust language capabilities', 'summary': 'Discusses the capabilities of rust language, highlighting its high performance, memory protection, application in various domains like game engines, web development, and web assembly, offering higher performance than javascript, and its potential for future applications in gaming and video tools within the browser.', 'duration': 88.573, 'highlights': ['Rust offers higher level capabilities, memory protection, and high performance, making it suitable for game engines, operating systems, browser components, VR, web servers, web development, APIs, and microservices.', 'Web assembly, supported by Rust, provides very high performance within the browser, surpassing JavaScript, and is expected to have significant applications in the future for gaming and video tools within the browser.', 'Rust is thriving in web assembly and can be compiled into WebAssembly, making it a valuable language for individuals interested in web assembly and its potential future applications.', 'Rust language offers protection against memory allocation mistakes, making it more secure than languages like C or C++.']}, {'end': 776.943, 'start': 526.893, 'title': 'High level languages: java and kotlin', 'summary': 'Discusses high-level languages like java and kotlin, highlighting their features and popularity in the industry, with java being widely used in enterprise applications and kotlin being favored for android app development. it also explains the concept of statically typed languages and compares them to dynamic languages like javascript and python.', 'duration': 250.05, 'highlights': ['Java is widely used in enterprise applications and for Android app development, with companies like Spotify, LinkedIn, and Amazon utilizing it. Java is used for a variety of purposes, including graphical desktop applications, enterprise applications, web servers, APIs, and mobile app development. It is also specifically used for Android app development, with major companies like Spotify, LinkedIn, and Amazon relying on it.', 'Kotlin, which also uses the Java Virtual Machine (JVM), is popular for Android app development and is considered easier to learn than Java. Kotlin, leveraging the Java Virtual Machine (JVM), is widely used for Android app development, with modern native Android apps being primarily built with Kotlin. It is often considered easier to learn than Java and can be used for web servers, data science, and more.', 'The concept of statically typed languages is explained, highlighting the trade-offs between statically typed and dynamic languages like JavaScript and Python. The distinction between statically typed languages, like Java and Kotlin, and dynamic languages such as JavaScript and Python is discussed, emphasizing the trade-offs involved. Statically typed languages require explicit type definitions for variables and function returns, leading to less code but potentially more robust applications.']}], 'duration': 386.687, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc390256.jpg', 'highlights': ['C++ is a superset of C and is object-oriented, providing additional tools and features, making it incredibly powerful.', 'C++ is used in various applications such as AAA gaming titles, operating systems, VR, robotics, and scientific computing.', 'Rust offers higher level capabilities, memory protection, and high performance, making it suitable for game engines, operating systems, browser components, VR, web servers, web development, APIs, and microservices.', 'Web assembly, supported by Rust, provides very high performance within the browser, surpassing JavaScript, and is expected to have significant applications in the future for gaming and video tools within the browser.', 'Java is widely used in enterprise applications and for Android app development, with companies like Spotify, LinkedIn, and Amazon utilizing it.', 'Kotlin, which also uses the Java Virtual Machine (JVM), is popular for Android app development and is considered easier to learn than Java.', 'The concept of statically typed languages is explained, highlighting the trade-offs between statically typed and dynamic languages like JavaScript and Python.']}, {'end': 1134.928, 'segs': [{'end': 803.341, 'src': 'embed', 'start': 777.711, 'weight': 0, 'content': [{'end': 782.753, 'text': "So next we're going to look at C sharp, which is another compiled and statically typed language.", 'start': 777.711, 'duration': 5.042}, {'end': 788.396, 'text': 'And unlike C and C++, it is fully managed in terms of garbage collection.', 'start': 783.093, 'duration': 5.303}, {'end': 793.898, 'text': 'I know all the different C languages can be confusing, but C sharp is higher level than the others.', 'start': 788.716, 'duration': 5.182}, {'end': 797.219, 'text': 'It is object-oriented, much like Java.', 'start': 794.458, 'duration': 2.761}, {'end': 802.62, 'text': 'In fact, a lot of the syntax is or looks similar to Java, in my opinion.', 'start': 797.299, 'duration': 5.321}, {'end': 803.341, 'text': "I've used both.", 'start': 802.66, 'duration': 0.681}], 'summary': 'C# is a compiled, managed, object-oriented language, resembling java, perceived as higher-level than c and c++.', 'duration': 25.63, 'max_score': 777.711, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc777711.jpg'}, {'end': 878.877, 'src': 'embed', 'start': 829.428, 'weight': 1, 'content': [{'end': 834.209, 'text': 'And C sharp also uses the CLR or common language runtime environment.', 'start': 829.428, 'duration': 4.781}, {'end': 835.669, 'text': 'So it is compiled.', 'start': 834.589, 'duration': 1.08}, {'end': 838.19, 'text': "There's just a little more abstraction to the process.", 'start': 835.689, 'duration': 2.501}, {'end': 842.511, 'text': 'C sharp is used for desktop applications, especially Windows apps.', 'start': 838.67, 'duration': 3.841}, {'end': 848.715, 'text': "microsoft did create c sharp and dot net, so they're great tools for building on windows.", 'start': 842.851, 'duration': 5.864}, {'end': 851.457, 'text': 'c sharp is also used for web development.', 'start': 848.715, 'duration': 2.742}, {'end': 855.16, 'text': 'you have the asp.net mvc framework.', 'start': 851.457, 'duration': 3.703}, {'end': 861.304, 'text': 'it can also be used for gaming, along with unity and mobile apps, along with xamarin.', 'start': 855.16, 'duration': 6.144}, {'end': 866.888, 'text': 'I think C Sharp and NET is an excellent choice for a tech stack for many different purposes.', 'start': 861.664, 'duration': 5.224}, {'end': 878.877, 'text': "Microsoft's Visual Studio IDE is used to build C Sharp apps, but C Sharp is also one of the languages that it was built with, including VB.NET.", 'start': 867.328, 'duration': 11.549}], 'summary': "C sharp is compiled, used for desktop, web, gaming, and mobile apps, and a key part of microsoft's tech stack.", 'duration': 49.449, 'max_score': 829.428, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc829428.jpg'}, {'end': 966.457, 'src': 'embed', 'start': 943.705, 'weight': 3, 'content': [{'end': 952.453, 'text': "As far as examples of what it's used for, you have backend APIs and microservices, distributed network services, and cloud native development.", 'start': 943.705, 'duration': 8.748}, {'end': 958.88, 'text': 'Some companies that use Go are obviously Google, Uber, Dropbox, and many more.', 'start': 952.874, 'duration': 6.006}, {'end': 966.457, 'text': "All right, so next we're going to get into Python, which is extremely popular right now and is very diverse in its uses.", 'start': 960.114, 'duration': 6.343}], 'summary': 'Go is used for backend apis, microservices, and cloud native development. python is diverse and popular.', 'duration': 22.752, 'max_score': 943.705, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc943705.jpg'}, {'end': 1014.285, 'src': 'embed', 'start': 987.526, 'weight': 4, 'content': [{'end': 994.371, 'text': "It's amazing when it comes to machine learning and AI, as well as data science, automation, and web development.", 'start': 987.526, 'duration': 6.845}, {'end': 1000.935, 'text': 'As far as web development, which is kind of my area, Python has some really great frameworks.', 'start': 994.751, 'duration': 6.184}, {'end': 1010.702, 'text': "Django and Flask, I think, are two of my top, I'd say probably my top five to seven, somewhere in that range, especially Django.", 'start': 1001.216, 'duration': 9.486}, {'end': 1014.285, 'text': "Django's probably in my top three frameworks of all time.", 'start': 1010.742, 'duration': 3.543}], 'summary': "Python's django and flask are top frameworks for web development.", 'duration': 26.759, 'max_score': 987.526, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc987526.jpg'}, {'end': 1054.304, 'src': 'heatmap', 'start': 1022.872, 'weight': 0.816, 'content': [{'end': 1027.376, 'text': "we don't use curly braces and we don't use semicolons for termination.", 'start': 1022.872, 'duration': 4.504}, {'end': 1033.04, 'text': 'instead we use indentation, so it looks more like plain english than than many other languages.', 'start': 1027.376, 'duration': 5.664}, {'end': 1039.527, 'text': 'some companies that use python are nasa intel, ibm, spotify and and many other massive companies.', 'start': 1033.04, 'duration': 6.487}, {'end': 1047.479, 'text': "OK, so Ruby is a highly portable, dynamically typed language that's used for many purposes.", 'start': 1041.314, 'duration': 6.165}, {'end': 1054.304, 'text': "It's an interpreted languages, but like Python, it's first compiled to bytecode and then interpreted by a virtual machine.", 'start': 1047.638, 'duration': 6.666}], 'summary': 'Python is used by nasa, intel, ibm, spotify. ruby is portable and interpreted.', 'duration': 31.432, 'max_score': 1022.872, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc1022872.jpg'}, {'end': 1123.605, 'src': 'embed', 'start': 1091.753, 'weight': 5, 'content': [{'end': 1096.699, 'text': 'So Ruby is used for building desktop applications, automation tools and web development.', 'start': 1091.753, 'duration': 4.946}, {'end': 1101.604, 'text': "Usually, when we talk about Ruby and web development, we're talking about Ruby on Rails,", 'start': 1097.24, 'duration': 4.364}, {'end': 1108.392, 'text': 'which is a popular framework that I personally love and worked with for a little over a year,', 'start': 1101.604, 'duration': 6.788}, {'end': 1115.758, 'text': "and it's a very opinionated framework and offers a ton of tools, which makes it great for rapid development.", 'start': 1108.392, 'duration': 7.366}, {'end': 1123.605, 'text': 'so you can basically scaffold up a crud application that uses a database in in literally a minute or two.', 'start': 1115.758, 'duration': 7.847}], 'summary': 'Ruby is used for desktop apps, automation, and web dev. ruby on rails offers rapid development, with a crud app set up in just a minute or two.', 'duration': 31.852, 'max_score': 1091.753, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc1091753.jpg'}], 'start': 777.711, 'title': 'Programming languages overview and comparison', 'summary': 'Provides an overview of c sharp, a language commonly used for desktop applications, web development, gaming, and mobile apps on windows platform. it also compares go, python, and ruby, highlighting their specific strengths and popular applications.', 'chapters': [{'end': 878.877, 'start': 777.711, 'title': 'C sharp overview', 'summary': 'Provides an overview of c sharp, a compiled and statically typed language, managed in terms of garbage collection, commonly used for desktop applications, web development, gaming, and mobile apps, especially on windows platform.', 'duration': 101.166, 'highlights': ['C sharp is a compiled and statically typed language, fully managed in terms of garbage collection, and is higher level than C and C++, and object-oriented like Java.', 'C sharp uses the .NET framework for development and can also use Visual Basic language as well as F-sharp, and is commonly used for desktop applications, especially Windows apps, web development, gaming, and mobile apps.', "Microsoft's Visual Studio IDE is used to build C Sharp apps, and it is also one of the languages that it was built with, including VB.NET."]}, {'end': 1134.928, 'start': 880.33, 'title': 'Comparison of go, python, and ruby', 'summary': "Compares go, python, and ruby, highlighting go's speed, scalability, and robust standard library, python's popularity in machine learning, ai, and web development, and ruby's focus on being easy to read and write and its use in web development with ruby on rails.", 'duration': 254.598, 'highlights': ["Go is known for being very fast and scalable with a robust standard library, used for backend APIs, microservices, distributed network services, and cloud native development, and is used by companies like Google, Uber, and Dropbox. Go's speed and scalability, robust standard library, usage in backend APIs, microservices, distributed network services, and cloud native development, companies using Go like Google, Uber, and Dropbox.", "Python is preferred for machine learning, AI, data science, automation, and web development, with popular frameworks like Django and Flask, and is used by companies such as NASA, Intel, IBM, and Spotify. Python's popularity in machine learning, AI, data science, automation, and web development, usage of frameworks like Django and Flask, companies using Python like NASA, Intel, IBM, and Spotify.", "Ruby is used for building desktop applications, automation tools, and web development, particularly with the Ruby on Rails framework, and is known for its readability and ease of use, and is used by companies like Twitter, Dribble, and Groupon. Ruby's usage in building desktop applications, automation tools, and web development with Ruby on Rails, focus on readability and ease of use, companies using Ruby like Twitter, Dribble, and Groupon."]}], 'duration': 357.217, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc777711.jpg', 'highlights': ['C sharp is a compiled and statically typed language, fully managed in terms of garbage collection, and is higher level than C and C++, and object-oriented like Java.', 'C sharp uses the .NET framework for development and can also use Visual Basic language as well as F-sharp, and is commonly used for desktop applications, especially Windows apps, web development, gaming, and mobile apps.', "Microsoft's Visual Studio IDE is used to build C Sharp apps, and it is also one of the languages that it was built with, including VB.NET.", 'Go is known for being very fast and scalable with a robust standard library, used for backend APIs, microservices, distributed network services, and cloud native development, and is used by companies like Google, Uber, and Dropbox.', 'Python is preferred for machine learning, AI, data science, automation, and web development, with popular frameworks like Django and Flask, and is used by companies such as NASA, Intel, IBM, and Spotify.', 'Ruby is used for building desktop applications, automation tools, and web development, particularly with the Ruby on Rails framework, and is known for its readability and ease of use, and is used by companies like Twitter, Dribble, and Groupon.']}, {'end': 1463.835, 'segs': [{'end': 1200.397, 'src': 'embed', 'start': 1172.967, 'weight': 1, 'content': [{'end': 1179.329, 'text': 'and then, in addition to that, we have node.js, which allows us to run javascript on the server and use it just like we would.', 'start': 1172.967, 'duration': 6.362}, {'end': 1185.21, 'text': 'any of these other back-end languages, and many full stack developers, including myself,', 'start': 1179.329, 'duration': 5.881}, {'end': 1193.932, 'text': 'prefer node.js over other back-end solutions because they like to have the same language on the back end as they do on the front end.', 'start': 1185.21, 'duration': 8.722}, {'end': 1200.397, 'text': "Node.js is also extremely fast and well, at least for a lot of different tasks, it's very fast.", 'start': 1194.312, 'duration': 6.085}], 'summary': 'Node.js enables running javascript on the server, preferred by many developers for its speed and unified language.', 'duration': 27.43, 'max_score': 1172.967, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc1172967.jpg'}, {'end': 1257.308, 'src': 'embed', 'start': 1217.489, 'weight': 0, 'content': [{'end': 1223.852, 'text': 'So front end JavaScript is used by just about every company that that does anything in the browser.', 'start': 1217.489, 'duration': 6.363}, {'end': 1231.295, 'text': 'And Node.js or back end JavaScript is used by companies like NASA, PayPal, Medium and Netflix.', 'start': 1224.292, 'duration': 7.003}, {'end': 1237.678, 'text': 'We also have technologies like React Native that lets us use JavaScript to build mobile applications.', 'start': 1231.916, 'duration': 5.762}, {'end': 1245.002, 'text': 'And then we have Electron, as well as some other frameworks that allow us to use JavaScript to build desktop applications.', 'start': 1237.899, 'duration': 7.103}, {'end': 1252.345, 'text': 'In fact, VS Code is built with JavaScript as well as some other popular desktop apps such as Postman and Slack.', 'start': 1245.482, 'duration': 6.863}, {'end': 1257.308, 'text': 'So JavaScript is absolutely everywhere, which is another reason that I love it.', 'start': 1252.425, 'duration': 4.883}], 'summary': 'Javascript is widely used in front end, back end, mobile, and desktop applications, including by companies like nasa, paypal, medium, and netflix.', 'duration': 39.819, 'max_score': 1217.489, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc1217489.jpg'}, {'end': 1307.934, 'src': 'embed', 'start': 1279.438, 'weight': 4, 'content': [{'end': 1289.341, 'text': "And what's really cool about PHP and makes it very practical for web developers is that you can embed PHP directly with HTML.", 'start': 1279.438, 'duration': 9.903}, {'end': 1295.964, 'text': 'And that makes it easy to add functionality to websites without having to call external files.', 'start': 1290.022, 'duration': 5.942}, {'end': 1301.528, 'text': 'So PHP can be used as a procedural language or as an object-oriented language.', 'start': 1296.644, 'duration': 4.884}, {'end': 1304.691, 'text': 'The syntax can sometimes be pretty messy.', 'start': 1301.849, 'duration': 2.842}, {'end': 1307.934, 'text': 'I think that it gets a lot of flack for that.', 'start': 1305.112, 'duration': 2.822}], 'summary': 'Php allows direct embedding with html, enabling easy website functionality addition without external files. can be used procedurally or as an object-oriented language, despite messy syntax.', 'duration': 28.496, 'max_score': 1279.438, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc1279438.jpg'}, {'end': 1398.446, 'src': 'embed', 'start': 1374.272, 'weight': 5, 'content': [{'end': 1382.017, 'text': 'iPhone applications used to be created mostly with a language called Objective C, but most are built with Swift these days.', 'start': 1374.272, 'duration': 7.745}, {'end': 1389.521, 'text': 'And I believe Apple has stated that Swift is about 2.5 times faster than Objective C.', 'start': 1382.437, 'duration': 7.084}, {'end': 1398.446, 'text': "So if you're looking or thinking of going into native iOS apps or Mac OS, Swift is one of your main choices.", 'start': 1389.521, 'duration': 8.925}], 'summary': 'Swift, 2.5x faster than objective c, is a popular choice for ios and mac os app development.', 'duration': 24.174, 'max_score': 1374.272, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc1374272.jpg'}], 'start': 1135.048, 'title': 'Programming languages comparison', 'summary': "Discusses the versatility and ubiquity of javascript, its uses in front-end development, server-side with node.js, in mobile app development with react native, and desktop app development with electron. it also compares php and swift, noting php's practicality for web development, its use in popular frameworks like laravel and tools like wordpress, and its popularity in the freelancing community, while highlighting swift's speed and use in ios and macos app development, with apple stating it is about 2.5 times faster than objective c.", 'chapters': [{'end': 1257.308, 'start': 1135.048, 'title': "Javascript's versatility and ubiquity", 'summary': 'Discusses the versatility and ubiquity of javascript, highlighting its use in front-end development, server-side with node.js, in mobile app development with react native, and desktop app development with electron.', 'duration': 122.26, 'highlights': ["JavaScript is used for front-end development by almost every company working in the browser, and for back-end development, it's used by companies like NASA, PayPal, Medium, and Netflix, showcasing its widespread adoption and versatility.", 'Node.js allows for running JavaScript on the server, providing full-stack developers with the ability to use the same language on both the front and back end, leading to a preference for Node.js among many developers.', 'Technologies like React Native enable the use of JavaScript for building mobile applications, expanding its reach into the mobile development space.', "JavaScript's usage extends to building desktop applications, as seen in popular apps like VS Code, Postman, and Slack, highlighting its versatility beyond just web development."]}, {'end': 1463.835, 'start': 1258.203, 'title': 'Php and swift: a comparison', 'summary': "Compares php and swift, noting php's practicality for web development, its use in popular frameworks like laravel and tools like wordpress, and its popularity in the freelancing community, while highlighting swift's speed and use in ios and macos app development, with apple stating it is about 2.5 times faster than objective c.", 'duration': 205.632, 'highlights': ['PHP is practical for web developers due to its direct embedding with HTML, making it easy to add functionality to websites without external files, and its use in popular frameworks like Laravel and tools like WordPress, making it great for making things fast and popular in the freelancing community as well as small businesses.', 'Swift is used to develop applications for iOS, iPadOS, macOS, and other Apple devices, and is noted for its speed, being about 2.5 times faster than Objective C, and is used by companies like Uber, Robinhood, and Lyft in their tech stacks.', 'Swift is first compiled into something called Swift Intermediate Language and then into machine code, and is relatively easy to learn, and it is stated by Apple to be about 2.5 times faster than Objective C.']}], 'duration': 328.787, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/2lVDktWK-pc/pics/2lVDktWK-pc1135048.jpg', 'highlights': ["JavaScript is used for front-end development by almost every company working in the browser, and for back-end development, it's used by companies like NASA, PayPal, Medium, and Netflix, showcasing its widespread adoption and versatility.", 'Node.js allows for running JavaScript on the server, providing full-stack developers with the ability to use the same language on both the front and back end, leading to a preference for Node.js among many developers.', 'Technologies like React Native enable the use of JavaScript for building mobile applications, expanding its reach into the mobile development space.', "JavaScript's usage extends to building desktop applications, as seen in popular apps like VS Code, Postman, and Slack, highlighting its versatility beyond just web development.", 'PHP is practical for web developers due to its direct embedding with HTML, making it easy to add functionality to websites without external files, and its use in popular frameworks like Laravel and tools like WordPress, making it great for making things fast and popular in the freelancing community as well as small businesses.', 'Swift is used to develop applications for iOS, iPadOS, macOS, and other Apple devices, and is noted for its speed, being about 2.5 times faster than Objective C, and is used by companies like Uber, Robinhood, and Lyft in their tech stacks.', 'Swift is first compiled into something called Swift Intermediate Language and then into machine code, and is relatively easy to learn, and it is stated by Apple to be about 2.5 times faster than Objective C.']}], 'highlights': ['Rust offers higher level capabilities, memory protection, and high performance, suitable for game engines, operating systems, browser components, VR, web servers, web development, APIs, and microservices.', 'C++ is a superset of C and is object-oriented, providing additional tools and features, making it incredibly powerful.', 'C sharp is a compiled and statically typed language, fully managed in terms of garbage collection, and is higher level than C and C++, and object-oriented like Java.', "JavaScript is used for front-end development by almost every company working in the browser, and for back-end development, it's used by companies like NASA, PayPal, Medium, and Netflix, showcasing its widespread adoption and versatility.", 'Python is preferred for machine learning, AI, data science, automation, and web development, with popular frameworks like Django and Flask, and is used by companies such as NASA, Intel, IBM, and Spotify.']}