This document is an overview of the University of Birmingham and Trilogy/2U Full-Stack Coding Bootcamp: a 24-week intensive bootcamp program that I was enrolled on between November 2021 and June 2022. I have created this document as an easy reference point to link to in my projects, and it is intended to provide:
- Information on the structure of the program
- Overview of the topics covered on the course
- Index of the projects built while on the program
I hope this is useful for anyone who wants to know what was covered on the course!
This is a work in progress - adding to it as I go back and polish my projects, review concepts etc. - 15/08/2023
- About the Course
- Course Structure
- Modules In Depth
- Module 1: Front-End Development (HTML, CSS, JavaScript)
- Module 2: Back-End Development (Node, Express, SQL)
- Module 3: React (MongoDB/NoSQL, GraphQL)
- Contact
- Notes
There are so many bootcamp programs, and they leave graduates with varying levels of capabilities, skill sets and technology stacks. I am pleased with the program I chose and I think these are the things that make the program unique:
- 24-week program with 10+ contact hours, and 20+ additional independent study hours each week: this program was work/study intensive - with assignments and independent learning tasks often taking over the prescribed time; although it was advertised as part-time, it amounted to almost a year of full-time study.
- Building a project every week for assessed homework assignments: every week we learned a new skill, added technology to our stack or added a whole new development concept to our knowledge base - then were immediately asked to build a real world scenario project that applied the skills we had just learned - meaning this program gave us particularly strong hands on experience.
- In person, instructor-led teaching from industry professionals: all of our sessions were led by a classroom teacher with extensive industry knowledge (our teacher had led developer teams at MasterCard and Just Eat) and a second classroom based support tutor; we also had weekly 1-on-1 support sessions with an additional online tutor and 24/hour access to a live support chat, who could review our code as we needed.
- End of module group projects in a mock agile style: each module / eight week block of the course was assessed by a two week project, that we were asked to treat as an agile sprint, to develope a full-stack application. These projects were required to use Git for version control, and we were asked to present each project to a mixed technical and non-technical background audience.
The course was broken down into three modules / blocks, each eight weeks in length - six weeks of tutor-led learning and weekly homework assignments, then two weeks applying those skills to a big full-stack group project. This table outlines each of the blocks / modules:
Topic | Basics + Front-End (Weeks 1-8) |
Back-End: RESTful APIs and Relational Databases (SQL) (Weeks 9-16) |
Advanced Full-Stack: React, NoSQL, and GraphQL (Weeks 17-24) |
---|---|---|---|
Main Concepts |
|
|
|
Favourite Projects | Password Generator, Come Rain or Shine | Team Profile Builder, e-Commerce Back-End | Hit the Bucket, Social Network API |
Final Project | Where Are We? | Weight a Minute | Rat World! |
Unit 1: Front-End Development |
---|
Topic | Stack + Concepts Covered | Projects | Notes |
---|---|---|---|
HTML + CSS | HTML, CSS, Git. Box model, positioning, selectors. Semantic HTML and accessibilty testing. | Horiseon, Cat Complaints, Charli XCX Fanpage | These are my earliest projects: scroll down to see better examples/something more complicated! |
Advanced CSS | Responsive design. Media queries, flexbox, grid. CSS variables; complex selectors (pseudo-classes, pseudo-elements); typography. Wireframing. CSS resets. | Original Portfolio, CSS Cheat Sheet | Rebuilding from scratch |
JavaScript Fundamentals | Variables and primitive types. Comparisons and conditionals; arrays, loops, iteration; functions; objects; methods; scope. Console logging. | Password Generator, Rock, Paper, Scissors, Consult the Forest Witch | Tried to make a new front-end for the password generator and made a mess of it! Will tidy when I have time. |
Web APIs | The window object. Traversing the DOM, DOM manipulation. Timers, event listeners, data attributes. Keyboard events, event bubbling, preventing default. Local storage. | JavaScript Quiz, Word Guess, To Do List | Needs a bit of CSS love |
Third-Party APIs | jQuery and jQuery UI. Bootstrap. Google fonts. Moment.js. | Work Day Scheduler, Project Tracker | |
Server-side APIs | RESTful APIs. Fetch API. Promises. Parsing JSON. HTTP requests. | Come Rain or Shine, Congress Search Engine | Also needs CSS love! |
Final Project | Where Are We? |
Unit 2: Back-End Development and RESTful APIs with SQL |
---|
Topic | Stack + Concepts Covered | Projects | Notes |
---|---|---|---|
Node.js | Node, Node Package Manager (npm): fs for reading/writing the file system; inquirer for command-line applications; process arguments. ES6+ JavaScript: modularization; arrow functions; template literals; let/const; functional loops; for/off; rest and spread; object destructuring. | Quick and Read ME, Portfolio Generator | Read me needs updating, portfolio generator needs making from scratch |
Object-Oriented Programming | Object-Oriented Programming with JavaScript; Constructors, Prototypes, Polymorphism, Classes, Subclasses, Multiple Classes; Async JavaScript: Promises, Promise All; Test-Driven Development: Core Concepts, Passing Simple Tests; Organising Tests; Mocks | Team Profile Builder, Guessing Game | READMEs need updating, guessing game needs finishing! |
Express.js | Express; RESTful APIs; HTTP requests; CRUD (Create, Read, Update, Delete) operations; routing HTML pages and API functions; the Fetch API; middleware; uuids; diagnostics reporting; wildcard/404 pages; data persistance; modular routing; body parsing; JSON | Note Worthy, Routing Mini-Project | Need rehosting as Heroku free membership gone! |
SQL | Employee Tracker, Movie Review Database | Employee tracker needs better write up, movie database needs building (but think I'll do it soon) | |
Object-Relational Mapping | E-Commerce Back-End, Travel Planner | E-Commerce is one of my better projects - but want to add a personal flair to it! | |
Model-View Controller and Authorisation | Tech Blog, Crowdfunding App | ||
Final Project | Weight a Minute...! |
Unit 3: NoSQL, React, and Complex Full-Stack Applications |
---|
Topic | Stack + Concepts Covered | Projects | Notes |
---|---|---|---|
Computer Science for JavaScript | Global execution context; Stacks and Queues; Higher-Order Functions; Callback Queues; Closures; Factory Functions and Constructors; Linear and Binary Searches; Recursion | There wasn't a project for this week, but we had to write a regex tutorial | |
MongoDB, Mongoose and NoSQL | Mongo: Compass and Atlas; Create, Read, Update, Delete (CRUD); Embedded Documents and Subdocuments; Models/Schemas; Mongoose (Object Data Modelling); Mongoose CRUD; Instance Methods; Aggregate functions; Virtuals | Social Network API, Student Statistics Back-End | |
PWAs, SPAs and Webpack | Lighthouse; Webpack Bundle, Loader, Plugin; Client-Server; Service Workers; Caching Images | ||
React Fundamentals | Creating a React app; Components; Props; State; Event Handling and Forms; JSX Expressions; Conditional Rendering; React Styling; React Testing Library; the useEffect Hook and Fetching Data | React Portfolio, Hit the Bucket | |
Full-Stack React (MERN + GraphQL) | GraphQL with Apollo Server: Queries, Resolvers, Mutations, Arguments; MERN Setup; React Hooks: useQuery, useMutation; React Router; Apollo Cache; JSON Web Tokens (JWT): Signing and Decoding | Book Search Engine Tech / Dog Match-Up App |
Need to redeploy these projects: were deployed on Heroku free tier. |
Advanced React (State Management + Redux) | State Management. Providers, Consumers, Reducers, Actions. React Hook: Use Reducer. Stripe. | Redux Store, Context API refactor | |
Final Project | Rat World! |
You can contact me at djbowen95@gmail.com.
These notes are just for my use - stuff I might edit into / add to the document at some point. Ignore please! - 15/08/2023
I'm gonna bring this up the document at some point I think.
My goal is this document will have:
- A general summary of the bootcamp
- Tables that outline the three modules / blocks of the course
- Outline of the key projects
- Links to gists explaining some of the things I learned that aren't demonstrated in the projects too, or blog posts explaining how exactly I did a particular thing
Its also just a really useful resource for me - this is my go to sheet for reminding myself which projects demonstrate what skills - helps me visualise where I might have gaps, or work out what I might want to go over.
I will put a link to the university website summary here.
This coding bootcamp was a intensive 24-week program: an in-person program with 10 contact hours with an industry professional tutor; an additional commitment to 20 hours of independent learning; a weekly assessed assignment
, with 10 in-person contact hours with two industry professional tutors, and an additional 20-hour per week minimum commitment to
Placeholder. This is a public gist because I want to link to it in other docs I am writing. In this file I'm going to:
- Give an overview of what the course was
- Outline the course structure
- Link to everything I built on the course, and from the course materials graduating
- Put some thoughts on what I experienced more generally
The tables below are an overview of the course - each row in the table represents a week of the course.