http://codepen.io/timestep/pen/rxarPM?editors=101#0
This course is to help the student become a proficient web developer. We will be building an app, opposed to a traditional instructor driven course. There are many online resources available to learn the basics of programming and Javascript(ie. codecademy.com, codeschool.com). However, skills to develop applications are not easily taught in these courses, and might require guidance. This course aims to fill that gap.
The course aims to provide the student with insight into front end and back end web development.
It will provide them with a modern web development tool set and skills used professionally at the company and by a typical web developer.
In the student's day to day profession, it should provide them knowledge about the difficulties and challenges and unique obstacles a web developer encounters, as well as knowledge about how a modern web app is developed.
By the end of this course, students will
- Be able to Develop a fully functional front end web application in Javascript using the web framework Angular.js
- Understand the Difference Between Back end and Front End JS
- Be fluent in Javascript
- Understand the concept of the DOM
- Understand MVC
- Understand Node.js
- Understand the concept of WebSockets
- Understand Events
- Understand Basic Data Structures
- Understand Database Modeling
The course will run bi weekly.
Attendance is optional however coming every week will be the most beneficial.
It will be driven by the students, with the instructor providing guidance to help achieve their goals. Missing gaps in knowledge will be provided by the instructor.
The student's have already a working knowledge of what programming is, how the Internet works, how to navigate a website.
This is a very loose outline. It might take a bit longer than this to achieve the final goal.
Schedule | Topic | Description |
---|---|---|
Week 1 | Introduction to the App and Starting Steps | Will introduce the idea and motivation of the course. Will introduce the app, the Tic Tac Toe game and how to implement Will discuss the effects of Real Time and what we would want the Back End to do.Will begin to Implement the Tic Tac Toe game. Discussion of Native Javascript. Displaying the Button of the X in JS Capturing the Button Event of the X Begin to store the events |
Week 2 | Adding Business Logic of the Application | Representing the UI in a modifiable Data format. Being able to play with the data representation of the UI. Changing the data format based on User Input. Adding the second player via an alternating system. |
Week 3 | Introducing Player 2 | Integrating a second player into the game Setting up a score board |
Week 4 | Converting the Front End App Into Angular | Converting the Front end Application into an Angular Application |
Week 5 | Setting up the node server | Designing the Real Time system Will achieve the effect of two different users in two different browsers playing the game |
Week 6 | Creating a Database to store users | Keeping track of users with a leader board |
Week 7 | Integrating the front end with the back end | |
Week X | To Be Determined. |
We will be creating an web application that is capable of allowing two users to play the traditional Tic Tac Toe game on the same browser, AND on different computers via browser.
The game will operate in real time, with moves being captured immediately.
The game will also identify the state of the game at all times, and will declare win conditions upon completion.
The game will also allow any individual to join the game as an identified user and join a game of another user.
The game will allow a user to start, reset or end a game, with the consent of the other user.
There will also be a leader board keeping track of users who have won the game the most.
The game will be deployed to a publicly accessible url.