Summer '22 Week 3


Video Script

Hello, and welcome to the week three announcements video for CIS 526 and CC 515 in summer 2022. So this week you should be working on milestone two it is due tonight. So make sure you get that turned in and submitted. As before. I’ll work on getting that graded and I’ll talk about that in just a second. This week, you’ll be working on the week three lessons, those are all due on Friday. And then next Monday, you will be turning in milestone three.

So once again, this week, I’ll be doing some milestone grading. Hopefully everybody saw their grades for Milestone One, including the comments in GitHub. That’s pretty much how we’ll be doing things throughout the semester, I usually will try and leave code comments and GitHub for anything that I see that you can work on improving there, the actual grading comments will be left in co do. And then in Canvas, you shouldn’t see a link that you can click to go to the grading feedback in co do to see any grading there. If you have any comments or questions on the grading, please let me know. And if there’s anything you want me to know, or want me to look at, in particular, you can use the comments on the submissions in Canvas, or you can put those in the notes somewhere in GitHub, and I should be able to see those. Please be patient with me as we do the milestone grading the first couple of milestones should go pretty quickly. Later, milestones are much more involved. And it may take me a few days to get through grading all of them. But I will try and get them graded within a few days after they’re due. So you’ll have enough time to work on them for the next week’s milestone.

So this week, we’re going into week three, we’re going to start talking about web servers in node.js, you will be looking at the request response cycle in node. So you’ll see a request coming in and then you’ll be building the response to get sent back out. We’ll learn how to serve files and serve media, we’ll talk a little bit about streaming media and things like that. And you’ll also have a quick crash course in regular expressions, which are really important to parse some of the things that we get with the request that comes in via node. So in milestone three, what we’re going to do is take our existing project that we’ve been working on the last two milestones, which is just a static HTML file. And we’ll be pivoting that so that we’re serving the static files from node. So instead of using the built in web server and co do, we’re going to actually build our own web server and node to serve those static files, your server should handle MIME types correctly, it should give the correct content length, it should also give 404 errors if we try and access something that is not present in that static folder. And then beyond that, it should basically handle everything from milestone one. And twos will need to correctly serve HTML, CSS and JavaScript files as well as that box-locations.json, so that all of that works correctly, you’ll also be adding the favicons into this project. So you’ll have those icons that show up in your browser. But basically milestone three, when it’s done, it should look and work exactly like what Milestone Two does, except this time it’s being served from node. Thankfully, if you go through the tutorials and get everything working there, most of milestone three is just pulling those parts out of the tutorials, getting them integrated into this project and rebuilding that from scratch here. So a lot of it is just copy pasting stuff and adapting it a little bit from the tutorials earlier in the week. It shouldn’t be that terribly difficult. But you may have to do some debugging if you’re not really careful about how you bring it into your content.

So that’s really all I got for today. Otherwise, you can keep in touch. We’re having great discussions on Discord. So you can always ask questions and get feedback there. You can join me for tea time office hours, which are Tuesdays at 330 and Fridays at 1030. You can schedule a one on one office hours with me using my Calendly link that’s in the bottom of all my emails and my email signature. You can also send me an email anytime you have questions. I’m happy to help. We’ve got lots of ways that you can get help in this class. And of course, if you discuss in this court and you help some of your fellow classmates, you can get some of those Helping Hand bonus points. So other than that your focus this week is building a web server that hopefully won’t crash ever. You’ve got to be able to handle all those errors, handle 404 errors get that content served up correctly. And if you do that you should be in good place to work on the next few milestones, which will really start ramping up the complexity of our web server in Node.js. So best of luck this week. I look forward to seeing all your milestones and I will talk to you again next week.