Check out a free preview of the full Complete Intro to Computer Science course

The "Introduction" Lesson is part of the full, Complete Intro to Computer Science course featured in this preview video. Here's what you'd learn in this lesson:

Brian Holt introduces the course by providing a brief overview of the course website, diving into some personal history with computer science, and discussing some reasons someone would want to learn computer science. The main goal of this course is to provide students with methods of structured thinking and logic.


Transcript from the "Introduction" Lesson

>> Welcome to the complete intro to computer science data structure and algorithms. So the first thing you'll see here on my screen is I had this nice little course website. This is all of my notes, so literally, you can see here I have two computers, one of them I just have this website off and I'm just kind of going through point by point.

So this is something that you can keep after you're done with the course and refer back to you can share it with your friends. One of the really nice things in front of masters allows me to do is to open source all the course material. So if there's spelling mistakes, please go in and fix them, these courses get better as people help, and it's all open source on Git Hub.

Okay, so let's kind of just orient you a little bit with this site. Here you can see we have various different sections here. Most of these are pretty self-contained so if you go do trees and you want to do that, you don't necessarily have to take binary search first, which is a nice feature that the only thing I'll say is that the trees and applying tree algorithms, as you might guess, are kind of based on each other, everything else is pretty self-contained.

You can see here that these are links so if I click into one of these Here in the top right, you'll see that the name of the section and the name of the lesson that we're on. So if I'm in the middle of the lesson, you can kind of see which part of the website I'm on, so you can hop back into wherever I am cool.

Cool, so let's talk a little bit about why you might wanna take this course. You might want to take this course because you're interested in computer science and you wanna be a better programmer, that's kind of where I started learning about these sorts of things. These things are also very useful for interviews because big tech companies love to ask these kind of questions, for reasons unknown to me, because most of them don't necessarily apply on your day to day but they think it's a measure of intelligence which I would very vehement say that it's not a measure of intelligence.

But in any case, it is the way it is, so I'm gonna help you cheat at those interviews by knowing all of the things, is that cheating by just knowing the thing? I guess, no, kind of, anyway, don't care, I want you to pass all of your interviews and get paid lots of somebody that's my goal here.

Okay, here you'll see I have these like blue boxes on here, these are just like points of emphasis, so whenever you see a blue box, be sure to pay attention to those on the site. The first one here is just kind of giving you permission to feel like this is hard.

[LAUGH] We're about to go learn a lot of kind of like, concepts require a lot of brainpower to just process through, which is exhausting. So expecting you to do all of these, right in a row is very, very difficult. And I'm gonna say for those of you that are watching this later and recorded, just give yourself space to do it, right?

Take this over a couple of days, walk away from the computer, think about it Come back, there's a reason why the colleges spread this out over like two years, it's because it's kind of hard to do this all at once. So just be aware you have this just like tidal wave of knowledge coming your way, and if it feels like you're drowning you might be a little bit and that's okay.

Right, like that's kind of how this is supposed to work. But at the same time, it's just really good to be exposed to these things and kind of let them sink in overtime. Like maybe take this class a couple of times and you'll get a little bit more each time.

But in any case, the number one thing here I'm saying is do not get down on yourself, right? That's really easy to do when these things seem really hard and it feels like everyone else is getting it and Brian is breezing through this, why is this so hard for me?

Don't go to that place, there's nothing useful there for you. Just be okay, having a hard time, that's really what I wanna get here is like it's okay to feel like this is hard. But by the way, I have to like look these up every single time that I use them.

I don't just have this like tucked away in the back of my head, I prepared for this course and spent a bunch of time doing this, so I don't even have this all in my head all the ones. All right, that's enough of that. So who's this course for?

Hopefully, this course is for you that's who I wrote it for. [LAUGH] There is a base level expectation that you know JavaScript. In that I'm not going to be teaching your JavaScript today, hopefully, you are okay with JavaScript. If you don't know JavaScript, front of masters has a lot of great and even free resources.

I link to down here to the boot camp, which I taught with along with Jen Kramer and that's totally free for everybody, definitely share that with your friends as well, and that'll get you up to speed where you could probably take this class. I'm not gonna be doing any sort of advanced JavaScript stuff, I even took most of the functional programming stuff out of this class, so it's actually fairly straightforward.

Or I hope it's straightforward, that's what I designed it to be that you can be the judge of that. Okay, who's this lovely bastard on the screen? That's me. [LAUGH] My name is Brian, I work at Microsoft, I live in Seattle at the moment, I've lived there for, I don't know, four or five years now.

I did attend college, I did go to a university where I learned computer science, I actually ended up dropping out of college. But I had taken three years of computer science so I did take these classes in college. But I really was always kind of annoyed that I felt that people felt like that this knowledge of computer science is locked up in these $50,000 degrees a semester.

Those kind of things and that this was inaccessible to them because in reality, most of these concepts, as you'll see, I can teach you in a couple of hours, and you'll just know them and you'll have them for the rest of your life and you didn't need a four-year degree to get it.

The other thing I wanna make sure, I'm not disparaging computer science degrees either, they are useful and for people that have them, high five, I wish I had one. [LAUGH] So that's also useful as well but I wanna make sure that we're not safekeeping either way, we're not making people that have CSVS to that, but we also wanna bring people that don't have CS degrees with us, right, and share all this knowledge.

So, that's why I wrote this course because I really wanted to make sure that you didn't feel like that knowledge was locked behind some dollar figure. So, yeah, as I started working at larger and larger companies, thee funny thing is I used to think that these concepts were totally worthless, right?

I learned all these things in a vacuum and I thought like why would my ever gonna need to know how to do 17 different ways of sorting numbers. It turns out after working at Netflix and Reddit and LinkedIn and Microsoft and all these big companies, these actually do get used, and they are useful to know.

But more than anything, it's actually like the mindset of trading-off, what am I gonna do this thing and I'm going to sacrifice this other thing. That sort of mindset is really what computer science is to me, it's just a science of making trade-offs. I'm gonna use in the word trade-off today, I don't know if you've ever watched me in front and happy hour, if we had a key word today, and it was trade-off we'd all be drunk by the end of the class.

If not, you can go listen front and happy hour that joke will make more sense of do. All right, yeah, I wanna help you learn methodologies of structured thinking that's kind of like my goal here today. What else? When I'm not teaching here for a Masters when I'm not working, I like to exercise, I hopped on my peloton too much, I really like the scotches, I like very happy beer.

I have an amazing wife Nikki, I like getting my ass kicked Dota and Overwatch, as most of the Frontend Masters team can attest to. And of traveling as well, I haven't done that in a little while but that's also something I have loved to do. I have an adorable dog I put a picture of Luna in literally every course that I teach, so there she is.

Here's I just dropped some links to my favorite charities in here. These are the ones that I support, there's certainly awesome. So if you're interested in finding some cool charity support, there's a couple on there as well. As always special things to Frontend Masters, really appreciate them giving me the opportunity to get up here to share this knowledge with you.

Yeah, it's, they're awesome people to work with, thanks for the Masters. As always, I put my socials on here, you can find me on Twitter, LinkedIn, GitHub, and peloton. I do have open DMS on both of them, I am terrible at answering them, so just be aware, feel free to send them I might not respond cuz I get a lot of them.

Learn Straight from the Experts Who Shape the Modern Web

  • In-depth Courses
  • Industry Leading Experts
  • Learning Paths
  • Live Interactive Workshops
Get Unlimited Access Now