Welcome to GA Seattle! This is the notes repository for our Software Engineering Immersive (formerly known as Web Development Immersive). You can view the content in a more searchable/friendly format on Gitbook!
This is totally optional. If you choose to do this, please update every 3-6 months to get any additions/updates changes we make to the local Seattle curriculum!
- Fork this repository
- Clone your fork to your development machine
- Setup a remote for your fork
- On your terminal, run
git remote add upstream [email protected]:WDI-SEA/notes.git
- On your terminal, run
- Install the Gitbook CLI tool by running
npm install -g gitbook-cli
- Preview the Gitbook by running
gitbook serve
- On your terminal, run:
git fetch upstream master
(get the changes from us)git merge upstream/master
(add those changes to your local machine's clone)git push origin master
(updates your fork on github)
- All contributions can be done via pull requests
- Recommended process:
- Make changes in your forked repository (use a separate branch)
- Create a pull request and be sure to be very explicit about the changes you've made
- Ask someone on the SEI team to look at your pull request
Notes below are organized by topic, but they are unordered. This is because we may at any point swap new material in or switch the order of the units.
Something to know is that some of the lessons here are more historical and haven't been used in at least a couple cohorts or years.
Unit | Tech | Weeks | Topics |
---|---|---|---|
Front-End Web Development | HTML/CSS/JS | 1 - 3 | Version control, HTML/CSS, Javascript, Programming fundamentals, DOM manipulation, HTTP, 3rd party APIs/async JS |
Full-Stack w/ Templates | Node/Express/PostgreSQL | 4 - 6 | Local auth, RESTful routing, ORMs, EJS, node, Express, 3 tier web applications, Relational data modeling, CI/CD |
Front-End Framework | React/MongoDB (MERN) | 7 - 9 | JWT Token Auth, MongoDB, React, Hooks, SPAs |
Full-Stack Web Development | Python | 10 - 12 | Data Structures & Algorithms, Whiteboarding, Python fundamentals, OOP, (optional Django or Flask) |
Connected classroom (SEA and DTLA) used Python/Django as unit 2 instead of unit 4. Also removed much of unit 4 computer science topics.
Unit | Tech | Weeks | Topics |
---|---|---|---|
Front-End Web Development | HTML/CSS/JS | 1 - 3 | Version control, DOM manipulation, jQuery, AJAX, fundamentals |
Full-Stack Web Development | Python/Django | 4 - 6 | Data Structures & Algorithms, Whiteboarding, Python fundamentals |
Second Language Full-Stack Development | Node/Express/PostgreSQL | 7 - 9 | Local auth, RESTful routing, ORMs |
Front-End Framework | React/Redux/Mongo (MERN) | 10 - 12 | JWT Token Auth, MongoDB |
Local market demand and the fact that Angular and Ruby content was not up to date led us to the conclusion we should switch from Angular to React, and from Ruby to Python.
Unit | Tech | Weeks | Topics |
---|---|---|---|
Front-End Web Development | HTML/CSS/JS | 1 - 3 | Version control, DOM manipulation, jQuery, AJAX, fundamentals |
Full-Stack Web Development | Node/Express/PostgreSQL | 4 - 6 | Local auth, RESTful routing, ORMs |
Front-End Framework | React/Redux/Mongo (MERN) | 7 - 9 | JWT Token Auth, MongoDB |
Second Language + Interview Prep | Python/Django | 10 - 12 | Data Structures & Algorithms, Whiteboarding, Python fundamentals |
We began the transition from Angular to React. Some cohorts in this period may have learned either or both.
Additionally, much of the original Python material (locally) was developed at this time.
Unit | Tech | Weeks | Topics |
---|---|---|---|
Front-End Web Development | HTML/CSS/JS | 1 - 3 | Version control, DOM manipulation, jQuery, AJAX, fundamentals |
Full-Stack Web Development | Node/Express/PostgreSQL | 4 - 6 | Local auth, RESTful routing, ORMs |
Front-End Framework | AngularJS (MEAN) | 7 - 9 | JWT Token Auth, MongoDB |
Second Language | Ruby/Rails | 10 - 12 | oAuth |
Projects and Additional Topics |
---|
Tic Tac Toe |
Project 1 |
Code Review |
Projects and Additional Topics |
---|
Project 2 |
oAuth |
Realtime with Socket.io |
Geocoding/Maps |
Image Uploads with Cloudinary |
Post Project 2 |
Code Review |
Projects and Additional Topics |
---|
Front End Hackathon |
Project 3 |
Group Collaboration |
oAuth |
Mailers |
Image Uploads with Cloudinary |
Static Site Generators (Jekyll) |
JS/jQuery Review |
Topic | Assignments |
---|---|
Intro to Python | Intro to Python |
Python Exercises | Python Exercises |
Python Challenges | Python Challenges |
Arrays and For Loops | Convert JS to PY |
File Processing | Renobet |
Python Unit Tests | Python Unit Tests |
Python Class Examples | Python Class Examples |
Recursion | Python Recursion |
Binary Search | Python Binary Search |
Linked Lists | Python Linked Lists |
Binary Trees | Python Recursion |
Graphs | Python Graph |
Sorting | Python Sorting Algorithms |
Topic | Assignments |
---|---|
Recursion/Problem Solving | Array Challenge |
Binary Search Algorithm Complexity | Auto Guess |
Stacks and Queues | Bracket Matching |
Linked Lists | Singly Linked List Linked List Methods |
Bucket Sort | Bucket Sort: Sorting Papers |
Bubble Sort | |
Merge Sort | |
Quick Sort | |
Sorting Wrapup | |
Hashmaps | |
Trees and Other Topics | N/A |
- All content is licensed under a CC-BY-NC-SA 4.0 license.
- All software code is licensed under GNU GPLv3. For commercial use or alternative licensing, please contact [email protected].