#VetsWhoCode Syllabus

Our curriculum is designed using the Agile Methodology with four-day sprints dedicated to the subject. We do it in this manner based on the practice of how veterans "Train How You Fight" in the military, so they should train how they would work in a real software company. The primary language we will focus on is JavaScript, due to its popularity in the job market, ease of transition between Computer Science topics and real world application, and the scope of industries we can introduce our veterans to, all while keeping language proficiency at the forefront of the program. This way we can introduce Data Visualization, Data Science, Cyber Security, and Internet of Things(IoT) to our veterans, while continuing to have our troops grow in the area of JavaScript.

During this week we focus on ensuring that our troops have the needed technologies set up and to gain exposure to our tools.
This is when we start diving in on the basics, ensuring that you are comfortable in the terminal, and using version control, while teaching how the web works.
Here we start learning CSS with the focus on learning web design.
Here we focus on more advanced concepts such as Grid Layout as well as working with Foundation and Bootstrap.
This week we will start to learn the history and basics of Javascript and learn how to use it alone as well as in web design.
We continue our training in Javascript while also learning fundamentals in Computer Science. Recursion, Big O Notation, Sorting, Data Structures and Functional Programming.
Here we continue to build Computer Science skills with javascript. Binary Trees and Breadth-First Search are just a few of the things we will dive into.
More JavaScript and even more math as we enter the world of Canvas, D3.js, WebGL
Entering the world of Node.js and writing Javascript on the server
Continuing to build with Node and learning Test Driven Development
Start down the path or React, ES6 and Mongo DB
Continuing to develop in React
Start resume preparations as well as how to indentify potential job opportunities
Starting the process of mock interviews and learning how to hack the technical interview.