SEI SG
Welcome
Welcome to General Assembly's Software Engineering Immersive - Singapore Edition! This repo is the primary resource used throughout the course, save it to your favourites and refer to it often!
Instructional Team
Name | Title |
---|---|
Simon Lau | Instructional Lead |
Faith Yee | Instructional Associate |
Kerin Ong | Campus Operations Lead |
Low Peck Hoon | Career Coach |
Important Policies
Class Policies
Below, you will find Class Policies and Requirements as laid out in Orientation and conveyed by the Instructional Team. We compile them here for your reference and review.
Code of Conduct
- Foster a productive classroom environment.
- Treat others with respect and dignity.
- Remember that everyone is coming at this with a different background.
- Professionalism in all methods of communication, both in-person and online.
- Slack is an extension of our on-campus community. We ask that you remain courteous, respectful, and professional while engaging on Slack
- Zero tolerance for plagiarism and cheating.
Deliverable Submission Requirements
- Deliverables must be submitted following the Guidelines
- Students must meet deliverable requirements for the submission to be marked as "Complete".
- Deliverables are always due the following class day at the beginning of class, unless otherwise stated.
- There is a grace period for re-submission or late submission. All re-submits/late submits are due the Monday following the week of assignment.
- Deliverables assigned on Fridays do not have a re-submit or late submit grace period.
- Deliverables submitted after the grace period will not be graded or accepted and will be marked as "Incomplete".
Graduation Requirements
- Meet Project Requirements.
- Satisfactorily complete and present a project for each of the 4 units.
- Submit and complete a minimum of 80% of deliverables (labs, homework, etc.).
- Adhere to attendance policy.
- Students are allowed 2 absences over the entire course.
- 3 tardies or early departures equals 1 absence.
- Tardy policy includes Outcomes participation.
A Note on Plagiarism
- Plagiarism is a serious offence and grounds for immediate withdrawal.
- You are encouraged to ask others, including students, instructors, and sites like Stack Overflow for help. However, it is not acceptable to copy another persons code and submit it as your own. More importantly, it is detrimental to your own learning and growth.
- Small snippets of code that solve small problems taken from sites like Stack Overflow are generally an exception to this rule. If you aren't sure, it is your responsibility to ask your instructor. To be on the safe side, we ask that you credit the person/resource you got the code from in a comment, and let an instructor take a look at it.
Observed Holidays
The following dates are observed Holidays for this immersive. There will be no class days on or within any of the date ranges listed below. If you have any questions regarding Holidays, or have a special circumstance, please don't hesitate to reach out to your instructional team.
Holiday | Dates |
---|---|
Good Friday | 29 March 2024 Friday |
Hari Raya Puasa | 10 April 2024 Wednesday |
Labour Day | 1 May 2024 Wednesday |
Vesak Day | 22 May 2024 Wednesday |
Schedules
Unit 1 - JavaScript
Mon - 18 Mar | Tue | Wed | Thu | Fri | |
---|---|---|---|---|---|
morning | course intro, CLI, git & github | control flow 📹, arrays 📹 | objects 📹 | dom intro 📹 | browser game 📹 |
afternoon | js intro & data types 📹, template literals 📹 | functions 📹, scope 📹 | intro to html 📹, intro to css 📹 | dom events 📹 | |
homework | command line practice | arrays lab | objects lab | dom menu lab 1 and 2 | tic-tac-toe weekend |
Mon - 25 Mar | Tue | Wed | Thu | Fri | |
---|---|---|---|---|---|
morning | arrow functions 📹, callbacks 📹 | array integrator methods 📹 | css flexbox / grid 📹 | project 1 planning | Good Friday |
afternoon | classes 📹 | this 📹 | responsive design 📹 | ||
homework | classes lab | array iterator methods lab | flexbox froggy |
Mon - 1 Apr | Tue | Wed | Thu | Fri | |
---|---|---|---|---|---|
intro to testing | project 1 | project 1 | p1 soft launch | project 1 |
Unit 2 - React.js (frontend)
Mon - 8 Apr | Tue | Wed | Thu | Fri | |
---|---|---|---|---|---|
Morning | p1 presentation | intro to react and components 📹 | Hari Raya Puasa | state 📹 | react handing input and events 📹 |
Afternoon | react jsx and props 📹 | lifting state | |||
Homework | react devskills lab 1 and 2 | react devskills lab 3 | react devskills lab 4 | ||
Computer Science | big-o notation | recursion |
Mon - 15 Apr | Tue | Wed | Thu | Fri | |
---|---|---|---|---|---|
morning | promises | react router | react setup, read | react delete, show | Context, Reducer |
afternoon | consuming api 📹 | react create | react update, airtable | custom hooks | |
homework | consuming-apis-lab | react tic-tac-toe | ga stock exchange 1 | ga stock exchange 2 | |
Computer Science | intro to sorts | basic sorts |
Mon - 22 Apr | Tue | Wed | Thu | Fri | |
---|---|---|---|---|---|
react testing | project 2 planning | project 2 | project 2 | p2 soft launch |
Unit 3 - MongoDB & Express (backend)
Mon - 29 Apr | Tue | Wed | Thu | Fri | |
---|---|---|---|---|---|
morning | project 2 | p2 presentation | Labour Day | intro to fullstack 📹 | express routers & controllers 📹🛠️ |
afternoon | intro to express 📹🛠️ | express middleware 📹🛠️ | |||
homework | intro express lab | dev skills lab 1 | |||
Computer Science | divide and conquer sorting | search algorithms |
Mon - 6 May | Tue | Wed | Thu | Fri | |
---|---|---|---|---|---|
morning | atlas 📹, mongodb intro 📹 | mongoose embedding 📹🛠️ | mern stack 📹 | mern infrastructure part 2 📹 | mern infrastructure part 4 📹 |
afternoon | mongoose intro 📹🛠️ | mongoose referencing 📹🛠️ | mern infrastructure part 1 📹 | mern infrastructure part 3 📹 | mern infrastructure part 5 📹 |
homework | mongoose flights lab 1 | mongoose flights lab 2 and 3 | react calendar | react movies part 1 and 2 | react movies part 3 |
Computer Science | intro to data structures | linked lists | stacks and queues |
Mon - 13 May | Tue | Wed | Thu | Fri | |
---|---|---|---|---|---|
morning | mern infrastructure part 6 📹 | mern shopping cart part 1 📹 | project 3 planning | project 3 | project 3 |
afternoon | mern infrastructure part 7 📹 | mern shopping cart part 2 📹 | |||
homework |
Mon - 20 May | Tue | Wed | Thu | Fri | |
---|---|---|---|---|---|
morning | p3 soft launch | project 3 | Vesak Day | p3 presentation | Intro to python 📹 |
afternoon | python control flow 📹 | ||||
homework | control flow lab |
Unit 4 - Python and Backend
Mon - 27 May | Tue | Wed | Thu | Fri | |
---|---|---|---|---|---|
morning | python container 📹 | python functions 📹 | sql 📹 | django setup and routing | django rest framework |
afternoon | python classes 📹 | relational data modelling 📹 | django models and migrations | deployment | |
homework | containers lab | python functions lab | carmen sandiego lab | ||
Computer Science | graphs |
Mon - 3 Jun | Tue | Wed | Thu | Fri | |
---|---|---|---|---|---|
morning | django jwt | project 4 planning | project 4 | project 4 | p4 soft launch |
afternoon | django react | ||||
homework | |||||
Computer Science | design patterns | distribution sorts | sets |
Mon - 10 Jun | Tue | Wed | Thu | |
---|---|---|---|---|
project 4 | project 4 | project 4 | p4 presentation & graduation |
Course Daily Schedule
Time | Activity |
---|---|
09:30 - 10:00 | JS Challenge |
10:00 - 11:30 | Main Topic |
11:30 - 01:30 | Lunch |
01:30 - 05:00 | Other Topic / Lab |
05:00 - 05:30 | Summary |
2+ hours | Homework |
Projects
Name | Project 1 | Project 2 | Project 3 | Project 4 |
---|
Licensing
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 legal@ga.co.