Welcome to Phase 1! In this phase, you'll learn the fundamentals of JavaScript and how to create a single-page application. By the end of the phase, you will be able to:
- Understand the fundamentals of JavaScript as a language, including functions and scope
- Use data type and structures to solve problems in JavaScript
- Identify and resolve bugs in code
- Manipulate web pages using the DOM
- Use asynchronous JavaScript to retrieve data
Use the schedule below to make sure you're working through the material at the right pace. The lessons marked with a ⭐️ are milestones that are useful to check your understanding of the material you've learned. If you feel you're falling behind, make sure to communicate with your instructor.
In the first three weeks, you'll learn the fundamentals of programming through JavaScript, focusing on writing functions and working with arrays and objects. There are a good amount of lessons to complete, but many of these review the same concepts you explored in Software Engineering Prep.
Total Assignments: (64)
- Welcome to Phase 1 (2)
- JavaScript Fundamentals (11)
- ⭐️ JavaScript Fundamentals Quiz
- Functions in JavaScript (10)
- ⭐️ Functions in JavaScript Quiz
- Scope (6)
- ⭐️ Scope Quiz
- Working with Data Structures in JavaScript (13)
- ⭐️ Working with Objects in JavaScript Quiz
- Video Series: Array Iteration (7)
- Array Iteration (12)
- ⭐️ Working with Arrays in JavaScript Quiz
- JavaScript Advanced Syntax (3)
After learning how to use JavaScript as a language, you'll get to put it to practical use by using JavaScript to create interactive webpages. This week introduces the "three pillars" of JavaScript that let you build a single-page application: DOM Manipulation (modifying the structure of the page in JS), Event Handling (writing JS to respond to user events, like clicking or typing on the page), and Network Communication (using JS to access data from a remote data source, like a web API).
Total Assignments: (40)
- Introducing Flatiron's Three Pillars of JavaScript (2)
- JavaScript and the DOM (11)
- ⭐️ JavaScript and The DOM Quiz
- JavaScript Events (10)
- ⭐️ JavaScript Events Quiz
- Communicating with the Server (17)
- ⭐️ Communicating with the Server Quiz
Next up, you'll finish learning about the "three pillars" of JavaScript. You'll explore some more advanced concepts like context, object orientation, and inheritance that will give you tools to write more expressive programs and understand the language at a deeper level. You'll also start prepping for your first project by working on some smaller practice exercises to get practice working common features of on single-page applications.
Total Assignments: (28 plus optionals)
- Combining the Three Pillars (2)
- Applying Your Learning (4)
- ⭐️ GitHub Search App
- (Optional) Additional Practice: JavaScript (6)
- Algorithmic Problem Solving (10)
- ⭐️ Algorithmic Problem Solving Quiz
- Context in JavaScript (7)
- ⭐️ Context in JavaScript Quiz
- (Optional) Object-Oriented JavaScript (15)
- (Optional) JavaScript Inheritance (7)
- (Optional) Additional Practice: HTML Forms and Modern Elements (8)
Project time! You'll be building a JavaScript project using all the tools you've learned since starting this phase. The project is your chance to solidify your understanding of the material, and to get creative and expand your horizons.
Details for the project can be found in the Phase 1 Project module.