hey guys welcome to rock the gbm's Scala at Lightspeed mini-course in which in just a couple of hours I will give you all the tools that you need to get started with this amazing programming language my name is Daniel and I am a software engineer and the lead instructor for Rock the JVM I've taught more than 20,000 engineers at this point the top of which work at the some of the best companies in the world the specialties that I teach here at Rock the JVM include skull and functional programming alka Apache spark and some other technologies and here at Rock the JVM we have hundreds of hours of free and premium content related to a range of technologies so if you want to go to rock the JVM com2 check them out and if you want to reach out to me you can hit me up at daniel at ROC the JVM comm with any suggestions for videos or online courses or even corporate training for your company so you probably know a bit about Scala but let me give you some highlights it's based on the java virtual machine which makes it compatible with all the libraries ever written in the java ecosystem scala is super expressive and powerful with a blend of object orientation and functional programming and I hope you will see that throughout the rest of this video series but the thing that I wanted to tell you is that the demand for Scala engineers has absolutely ballooned in recent years and software development companies cannot fill their Scala positions fast enough and that means the Scala developers are actually paid some of the highest salaries in the industry in my experience I regularly see Scala engineers paid 20% 50% or even double the amount of their Java equivalent positions so if you know Scala you're in for a treat and this course will get you started with these Scala programming language so in just a couple of hours I'm going to give you the tools that you need to read understand and work with Scala in almost any scenario so in just the time that it takes for you to watch an average movie you will learn this amazing programming language but this has some requirements so first I will ask that you have some programming experience already because I'm not going to focus on the apps of fundamentals I will make some occasional references to other programming languages such as C++ or Java or JavaScript or Python or the more popular programming languages in existence the goal there is to have you guys relate to some of the concepts that you may have seen before in other languages at the same time I will ask for your undivided attention for the duration of this mini series because the information in this mini course is absolutely jam-packed it's very condensed and I'm attempting to condense a 300 page book in just a couple of hours so I'm going to ask for your focus and commitment in this course now you can find this video series at Rock the JVM comm as well as a free online course where you can also download the videos for offline view if you want to get back to you one of these videos or you want to use the code that we read in the video series as some kind of a cheat sheet when you're working with Scala day-to-day so I hope you like this course and get some massive value out of it alright so let's get started with the initial files that we are going to use for the duration of this video series so first the first thing that I will ask you to do is download a good development environment on your computer so forth Scala I recommend IntelliJ IDEA with the Scala plugin already installed so for that if you don't have IntelliJ IDEA with this call plugin go to their home website at JetBrains comm and click on this IntelliJ based IDE I see that jetbrains have changed their UI so click on IntelliJ IDEA and click on download over here and then find the Community Edition and download that to your computer so click this black button over here which will download a wizard for your platform whatever you have windows linux or mac now double click on that wizard after you downloads and the setup should be really really straightforward and at the first launch IntelliJ IDEA will ask you if you want to install any plugins for the development environment and Scala is one of those featured plugins which I recommend you check and install for this video series so if you don't have IntelliJ IDEA and you want to take some time to install it feel free to pause the video and install it now alright now the second thing that I'm going to ask you to do is go to this link github.com ford slash Rock the jvm github.com forward slash rock the jvm is the place where we store the code that we write throughout our entire online course offering so click on the scholar at Lightspeed mini-course and what you will find will be the repository which will contain the code that we will write in this video series now I assume that you being programmers you probably know how to use git so click on this bright green button and clone this repository to your computer after you do that go ahead and run this command git checkout start which will restore this repository at the state that it was in before we start writing any code in this video series if you don't know how to use git go to this releases tab over here on the top of the page and then scroll down to the start tag and click this zip link which will download the code at the beginning of the video series in a zip format so you can unzip that file and open the resulting folder in IntelliJ IDEA so if you want to take some time to download the repository and load it in IntelliJ feel free to pause the video now before we continue now after you're done and you load the project into IntelliJ the project should look something like this there are lots of files and folders in this project but the only thing that you need to care is this source folder where we will write our actual code so we have source main Scala and a package which is nothing but a folder called comm dot rata JVM this is standard practice in working with jvm languages if you've worked with Java this should be already familiar to you and here I already created a playground application where we have the standard hello world kind of application I'm going to describe what every single thing in this application does throughout the video series but just to make sure that everything is set up correctly just right-click and run this so right click and run wait a couple of seconds for the compiler to run and you should see I love Scala here in the console I love Scala in particular is a statement that I hope will prove true by the end of this mini course now for some pea the application might not run and might crash with an exception that cannot find class comdata JVM dot playground if this is your case go to file and then project structure and under here at global libraries we have Scala SDK which at the moment of this recording is 2.13 I want you to click the minus or the delete' or backspace' just to remove it and then add it back so click plus and then click the Scala SDK and then pick a version that was already installed with your IntelliJ installation I have two 13 so I'm going to click OK so I'm basically adding it back click ok with this pop-up that appears and then click apply and ok once again and this time when you right click and run it should probably work so I've solved this problem for a couple of my students here at walk the JVM and this was the usual problem alright so if you setup this correctly then you should see I love Scala in the console and you are ready for the next video so join me and let's start to write some actual Scala code [Music] [Applause] [Music]