# Welcome to IMT 549 - Intro to Web Development

Welcome to Beginning Web Development! This is an entirely online course that will teach you the basics of client-side web development. This is a true beginner's course: it assumes no prior programming experience, and the difficulty level is set for those who have never done any kind of programming before.

# Teaching team

# Nick DeNardis, Instructor

I have been creating websites since 2001 and am currently the Director of Digital Communications at Wayne State University. I have a Bachelor's degree in Computer Science and Master's in Library and Information Science from Wayne State University. I started developing websites for my friends to be able to share photos and informational sites for local K-12 teacher unions. This was before there were CSS frameworks, Wordpress and other systems we take for granted now. I've written my own content management systems that is still maintained today to manage all public facing content at Wayne State. We are setup like a Web agency within the university and have grown to a team of fourteen and maintain both the backend and frontend of almost all the public websites at the university.

In addition to my day job, I also organize a number of local tech meetups, mainly Refresh Detroit and Laravel Detroit. I routinely speak at higher education Web conferences. I am the technical director for TEDxDetroit and one of the organizes of the American Marketing Association Higher Education conference.

# Ilesha Garg, Reader/Grader

Ilesha Garg is a first year graduate student pursuing Masters in Information Management at the iSchool. She worked as a Software Experience for 2 years at Chase. She is passionate about the intersection of product and technology.

# Course structure

The course is divided into ten modules, one per week. We start by learning how to manage files using the git version control system and GitHub, the collaborative cloud repository service. Then we learn how to encode information into HTML, how to add some style to those pages, how to make them responsive to the device, and how to leverage existing CSS frameworks. After the first half of the course, you will have developed the skills necessary to build attractive, engaging, and responsive web sites.

During the second half of the course, you will learn how to use JavaScript to build interactive web applications. After learning the basics of the JavaScript language, you'll discover how to dynamically modify your web pages in response to user interactions. You'll also learn how to create HTML content from data, and fetch that data dynamically from a web service.

The last week of the course lets you apply all of the skills you've learned to a project of your own choosing. This could be a personal portfolio site, or a website for an organization you volunteer with, or a new tool you've been wanting to build. This project may be done individually, or in teams.

For each of these modules, you will read a few tutorials, occasionally watch a demonstration video, and complete a challenge. The challenge allows you to practice and demonstrate the skills you learned in the tutorials, while building and publishing a web site or application you could include in your portfolio.

# Interaction and communication

This is an entirely online course. All the work will be done asynchronously, but both Ilesha and I will be available to answer questions and help you when you get stuck. As noted in the Communication section of the Canvas course website, you should post any questions in Slack so others can see the answer (you're probably not the only person with that question). If you'd like to ask something more personal, feel free to send an email or private message instead.

We will work to answer questions promptly, but please remember we have other responsibilities in addition to this course, so we may not be able to answer you immediately.

If you want to have a synchronous live chat, we can do that via Zoom or some other video conferencing tool. Send a chat message or email to schedule a time to chat.

# Course rules

Please review the Course Rules section on the Canvas course. You are responsible for reading and abiding by those rules. No excuses.

# Get started!

That's all you need to know to get started. Get your machine ready for web development by installing the tools listed on the Getting Setup Tutorial, and then go through the Managing Your Files Tutorial to learn the basics of git and GitHub. Your first challenge is due on Monday, April 6 by 8:30 p.m. PDT.