This course has been updated! We now recommend you take the Full Stack for Front-End Engineers, v3 course.
Transcript from the "Introduction" Lesson
[00:00:00]
>> Jem Young: We're doing Full Stack for Front-End V2. It's been a couple of years since V1. And you're probably wondering, what has changed on the server? Not much, that's what's great about the server. The server won't let you down. The server doesn't change. I have a server still running from ten years ago.
[00:00:16] I update it, but that's it. I don't do anything else to it. I bet we can't say the same thing about your front-end app. Not true at all. I'm not bashing front-end, obviously, cuz I do front-end as well. But I'm saying full stack, it's where it's at. My name is Jem Young.
[00:00:32] I am a senior software engineer at Netflix.
>> Jem Young: My wife is the creative one. So she edited this photo. That was my Halloween costume for last year that I didn't get to wear. I'm hoping I get to wear it this year. We'll see, we'll see. One of the things I also do is I'm on a podcast called Front End Happy Hour.
[00:00:52] We've been doing it several years now. I do it with, he was my manager, now he's just another guy at Netflix. Still a manager, I just have a different manager. And we have drinks and we talk about front end stuff, and mainly this, but for shorter periods of time and with more alcohol.
[00:01:11] So it's pretty entertaining.
>> Jem Young: If you wanna see the slides today and kind of keep up, it's at jemyoung.com/fsfe. That's full stack front-end. Last time I did front-end full stack and it got really confusing, cuz even I mixed it up, but full stack front-end, you should be at the right place.
[00:01:33] If the slides are not black, you're on the old slides somehow. I don't know how you got there. Today we're gonna cover a few parts. And day one we're gonna cover full sack, in quotes. We're gonna cover the command line, order shells, how the Internet works, one of my favorite questions.
[00:01:50] And then we're gonna cover VIM. We're gonna take breaks from time to time just because, well, we're gonna learn a lot of new information and we're gonna load up on that. And I don't wanna overload anybody, so we'll take breaks from time to time. And if we're going too far or you need to catch up, just say, hey, Jem, I need a break.
[00:02:07] And we'll take five, that's okay.
>> Jem Young: What is full stack? Anybody, anybody, anybody in the room, you could just tell me what full stack is? What's a full stack engineer?
>> Jem Young: No one at all. Some of you said you're a full stack engineers, so, yes?
>> Speaker 2: Well, everything from the client all the way up to the server-
[00:02:30]
>> Jem Young: Yeah.
>> Speaker 2: The data stores.
>> Jem Young: Yeah,
>> Jem Young: I like that. The thing about full stack is it's very contentious. There are people that are like it's not possibly a full stack engineer. That's not even a real thing. Obviously I disagree. And mostly I disagree with Bryan Holt, who is my friend and rival, bitter, bitter rival.
[00:02:50] [LAUGH] He says this is a full stack developer. And honestly, I agree with him. I think it is almost impossible to be good at every part of the stack. You can be good at the front-end, you can be good at probably some of the back-end. You might be good at databases.
[00:03:04] You might be good at security. You might be good at performance tuning. You might be amazing at 3D animations, but it's really, really, really, really, really hard to be amazing at all of them. There's very few people in the world that are. So if there's parts you don't quite understand, you're like that's cool but I don't really wanna dive into it too much, that's okay.
[00:03:24] That's the way it should be. Find the area that you're passionate about and then kind of dig into that and become an expert at that end.
>> Jem Young: But when we say, what is full stack, a lot of frontend engineers, especially, they're like, well, there's a frontend, there's a backend somewhere.
[00:03:43] And then it works together somehow, I don't know. Someone just made an API and I call it. I've never really given it a lot of thought about how that works. Or maybe you do a lot of backend work, and you're saying, well, I make these APIs and then the frontend calls it somehow and it gets built, and it comes together.
[00:04:01] I don't know, it just comes together somehow. And this is where I was a few years ago. I just thought, well, I don't need to worry about that because I'll never touch it. And that's not quite true. At some point in your career, you're gonna have to work on the backend.
[00:04:14] Or you're gonna have to work in the terminal. Or you're gonna have to work figure out how to SSH into something and look at a database. You're gonna have to learn all these things. And that's what this class is for.
>> Jem Young: And why is full stack such a hard definition?
[00:04:28] Well, because frontend is hard enough to define. So frontend, it could be a car. Cars have UIs. Some of them are written in JavaScript. It can be a TV. Browsers, obviously. There's desktop apps, mobile devices. There's appliances like refrigerators and things like that. And I'm just skimming the surface of what it means to be a frontend engineer.
[00:04:49] And a lot of times people say, yeah, frontend is hard, but interviewing for frontend is even harder. And it is, and why? Because of all this. Literally, frontend covers so many different use cases, which would be frontend, that it's really hard to nail down exactly what a definition is.
[00:05:07] And don't fret, the backend is just as complicated too. You say, I work on the backend. What does that mean? You could be building APIs. You might be a data scientist. You might do security. You might do cyber liability. You might be some sort of database engineer, database admin.
[00:05:24] Or you might just work on the platform. Or you could do embedded software. Or you can do a lot of things that are considered backend. But again, it doesn't really have a hard definition, but we like to say frontend and backend just to help differentiate people. So, again, we're gonna learn a lot of new things today.
[00:05:43] If something doesn't quite click with you or doesn't stick, don't worry, we're covering so much stuff today.
>> Jem Young: So again, what is full stack at the end of the day? I liked your definition, which is someone who can build an application from start to finish. Pretty simple, pretty straightforward.
[00:06:02] It's someone that if I say I wanna make the next Netflix, I wanna make the next Facebook, that person, I can give it to you, and then will start and you'll finish. You'll come from this crazy idea to all the way to the finish line. That means the server, the database.
[00:06:20] All these things between, security. If that sounds daunting, it's because it is. [LAUGH] It's really, really, really difficult to be good at all these things. But today we're gonna learn all the skills needed to just understand exactly what's happening.