1 00:00:06,630 --> 00:00:07,830 - Hello and welcome 2 00:00:07,830 --> 00:00:10,260 to the Rust Programming Essentials Course. 3 00:00:10,260 --> 00:00:11,490 I'm Andy Olsen, 4 00:00:11,490 --> 00:00:13,740 and I'll be your instructor for our detailed journey 5 00:00:13,740 --> 00:00:15,690 through the wonderful world of Rust. 6 00:00:15,690 --> 00:00:17,010 Rust is one of the most powerful 7 00:00:17,010 --> 00:00:19,830 and interesting programming languages I've ever encountered. 8 00:00:19,830 --> 00:00:22,920 It combines the efficiency, speed, and low level power 9 00:00:22,920 --> 00:00:26,190 of C and C++, but the benefits of high level languages 10 00:00:26,190 --> 00:00:28,173 such as Java, Python, and C# 11 00:00:29,010 --> 00:00:31,620 and you can use it to implement all kinds of solutions, 12 00:00:31,620 --> 00:00:34,800 including embedded systems, web applications, 13 00:00:34,800 --> 00:00:38,104 large scale data analytics, and much more besides. 14 00:00:38,104 --> 00:00:41,790 This course teaches you the essentials for learning Rust, 15 00:00:41,790 --> 00:00:43,800 so you can quickly get started. 16 00:00:43,800 --> 00:00:47,400 We'll begin by learning Rust Programming Essentials, 17 00:00:47,400 --> 00:00:48,240 and then jump into 18 00:00:48,240 --> 00:00:51,003 how Rust manages object ownership and borrowing. 19 00:00:51,840 --> 00:00:54,450 After that, we'll take look at how to organize the code 20 00:00:54,450 --> 00:00:57,120 into functions and structures, and then we'll explore 21 00:00:57,120 --> 00:00:59,040 some advanced Rust programming concepts 22 00:00:59,040 --> 00:01:02,040 like generics and log threading. 23 00:01:02,040 --> 00:01:03,390 We'll wrap things up with a couple 24 00:01:03,390 --> 00:01:05,250 of real world hands-on projects 25 00:01:05,250 --> 00:01:07,890 so you can get busy programming for yourself. 26 00:01:07,890 --> 00:01:09,150 The first project will show 27 00:01:09,150 --> 00:01:12,210 how to implement a CSV file parser, 28 00:01:12,210 --> 00:01:13,650 and the second project will show how 29 00:01:13,650 --> 00:01:16,963 to access a relational database, which is quite fun. 30 00:01:16,963 --> 00:01:18,930 These projects were designed 31 00:01:18,930 --> 00:01:20,730 so you can learn the skills needed 32 00:01:20,730 --> 00:01:23,613 to start using Rust effectively and efficiently. 33 00:01:24,780 --> 00:01:26,190 So before we dive in, 34 00:01:26,190 --> 00:01:29,040 let me say a quick few quick words about myself. 35 00:01:29,040 --> 00:01:31,410 I'm a freelance developer and instructor. 36 00:01:31,410 --> 00:01:33,540 I live in Swansea in Wales, 37 00:01:33,540 --> 00:01:36,660 and I've been working in it since 1986. 38 00:01:36,660 --> 00:01:38,730 I can't quite believe it myself to be honest. 39 00:01:38,730 --> 00:01:41,610 I started programming in C and C++, 40 00:01:41,610 --> 00:01:44,040 and I've moved into other languages over the years. 41 00:01:44,040 --> 00:01:49,040 Java, C, Python, JavaScript, TypeScript, and of course Rust. 42 00:01:49,320 --> 00:01:51,750 When I was learning Rust myself, 43 00:01:51,750 --> 00:01:55,050 it didn't really behave the way I was expecting. 44 00:01:55,050 --> 00:01:58,043 There were several occasions where I was genuinely surprised 45 00:01:58,043 --> 00:02:00,330 about how it worked in Rust, 46 00:02:00,330 --> 00:02:04,500 and I began to realize just how much safer it made my code. 47 00:02:04,500 --> 00:02:07,230 It also made me a bit anxious about all that code 48 00:02:07,230 --> 00:02:10,500 I've been writing in C++ over the last 30 years. 49 00:02:10,500 --> 00:02:12,630 Anyway, I hope you enjoy the video series 50 00:02:12,630 --> 00:02:15,093 and I hope you also go to love Rust like I have.