All Projects → HackYourFuture-CPH → Curriculum

HackYourFuture-CPH / Curriculum

Overview of the different modules and learning goals of the program.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Curriculum

Curriculum
Dive into our 7-month web development program covering HTML, CSS, Javascript, Node, and React!
Stars: ✭ 453 (+1032.5%)
Mutual labels:  cli, mongodb, expressjs, curriculum, backend, frontend
Bug Tracker Pern Ts
Bug Tracking app with project members support. Made with PERN stack + TypeScript.
Stars: ✭ 79 (+97.5%)
Mutual labels:  expressjs, backend, frontend
Spring Boot Mongodb Angular Todo App
A Sample App built using Spring Boot, Angular and MongoDB
Stars: ✭ 84 (+110%)
Mutual labels:  mongodb, backend, frontend
Node Javascript Ecommerce
Build ECommece Like Amazona Using Vanilla JS
Stars: ✭ 57 (+42.5%)
Mutual labels:  mongodb, backend, frontend
Mern Authentication
MERN stack authentication boilerplate: password reset, email verification, server sessions, redux, hooks and docker for dev and prod.
Stars: ✭ 129 (+222.5%)
Mutual labels:  mongodb, backend, frontend
Gindex V4
A Vue Js Based G Index with Improved Dark Mode, Search and Video Player
Stars: ✭ 143 (+257.5%)
Mutual labels:  mongodb, backend, frontend
Bookmarks.dev
Bookmarks and Code Snippets Manager for Developers & Co
Stars: ✭ 218 (+445%)
Mutual labels:  mongodb, expressjs, frontend
Manage Fastapi
🚀 CLI tool for FastAPI. Generating new FastAPI projects & boilerplates made easy.
Stars: ✭ 163 (+307.5%)
Mutual labels:  cli, mongodb, databases
Cli
✨ A powerful CLI for the Create Go App project. Create a new production-ready project with backend, frontend and deploy automation by running one CLI command!
Stars: ✭ 292 (+630%)
Mutual labels:  cli, backend, frontend
Project mern memories
This is a code repository for the corresponding video tutorial. Using React, Node.js, Express & MongoDB you'll learn how to build a Full Stack MERN Application - from start to finish. The App is called "Memories" and it is a simple social media app that allows users to post interesting events that happened in their lives.
Stars: ✭ 747 (+1767.5%)
Mutual labels:  mongodb, expressjs
Template Sailsjs Vue
Two independent projects (BackEnd and FrontEnd) working as one. A Sails application.
Stars: ✭ 16 (-60%)
Mutual labels:  backend, frontend
Mean Angular5 Passport Authentication
Securing MEAN Stack (Angular 5) Web Application using Passport Authentication
Stars: ✭ 24 (-40%)
Mutual labels:  mongodb, expressjs
Migrate
Database migrations. CLI and Golang library.
Stars: ✭ 7,712 (+19180%)
Mutual labels:  mongodb, databases
Mern Course Bootcamp
Complete Free Coding Bootcamp with the MERN Stack
Stars: ✭ 730 (+1725%)
Mutual labels:  mongodb, frontend
Mongodb Backup Cli
mongodb-backup cli for Nodejs
Stars: ✭ 17 (-57.5%)
Mutual labels:  cli, mongodb
Repractise
RePractise
Stars: ✭ 695 (+1637.5%)
Mutual labels:  backend, frontend
Placementmnit
Official Placement Portal : MNIT Jaipur
Stars: ✭ 29 (-27.5%)
Mutual labels:  mongodb, students
Blaze
⚡ File sharing progressive web app built using WebTorrent and WebSockets
Stars: ✭ 991 (+2377.5%)
Mutual labels:  backend, frontend
Mevn Cli
Light speed setup for MEVN(Mongo Express Vue Node) Apps
Stars: ✭ 696 (+1640%)
Mutual labels:  cli, mongodb
Awesome Javascript Interviews
Popular JavaScript / React / Node / Mongo stack Interview questions and their answers. Many of them, I faced in actual interviews and ultimately got my first full-stack Dev job :)
Stars: ✭ 939 (+2247.5%)
Mutual labels:  mongodb, expressjs

HackYourFuture Curriculum Denmark 🇩🇰

Here you can find an overview of the HackYourFuture program and a short listing of the contents and deliverables/learning goals of the different modules. The headers of the different modules link to the actual repositories that are used by teachers to post assignments/reading materials etc. Be aware that some of the modules make use of more than one repository.

Are you a new volunteer? Take a look here for some practical tips on how to get started!

Are you a new student? Then check out here for some extra info about how our program works and what it requires.

In any case, take a look at what we see as our core values at HackYourFuture and read the Code Of Conduct before you join our community ❤️

When do we teach?

Class on Sunday

Class is every Sunday from 12.00 to approximately 16/16.30.

What do we teach?

Curriculum graphic + project

HTML/CSS + CLI

The command line (cli, shell) is the interface between you (the user) and the operating system which interprets your commands and allows the computer to respond to your command. In this module two half day sessions are spent to get students familiar with the command line.

HTML is the standard markup language for creating Web pages. CSS is a language that describes the style of an HTML document. This module will introduce the basic concepts of HTML5 and CSS. We spend time getting you familiar with your text editor and handy developer tools. After this we will focus on responsive web development. Making responsive websites is an important part of front-end programming. You will learn how to make your websites responsive by using media queries using a “mobile first” approach. Last but not least we will spend time practicing some soft skills that we think are important for becoming a good developer. These include: give and receive feedback to your fellow students, presenting and explaining your work.

Module goals

  • Basic understanding of HTML5 and CSS (DOM, semantic elements)
  • Know how to organize your files
  • Know your way around your text editor
  • Feel comfortable working with the console
  • Properly indent your code
  • Properly naming classes, id's
  • Responsive mobile first development
  • Know "good" and "bad" practices when it comes to HTML
  • Get an understanding of what good resources are on the web
  • Give receive/feedback from/on fellow students
  • Presenting and explaining your work to others

JavaScript1 + GIT

In this repo you can find a very nice overview of some of the fundamental javaScript concepts

Module goals

JavaScript:

  • What is JavaScript and what can you use it for
  • Basic Data Types
    • Strings
    • Numbers
    • Array
  • Values
  • Operators
  • Variables
  • Naming conventions
  • Loops (for and while)
  • Functions
  • Closures
  • Scopes
  • Advanced Data types
    • Objects
  • String and Array Manipulations
  • Basic DOM manipulations
  • Code commenting

CLI:

  • To know the terminal/bash/command line for UNIX based systems.
  • Navigate the file system without using a UI explorer.
  • Copy, rename and move files with terminal commands.
  • Learn output redirection, piping on the terminal.
  • Write basic shell scripts to ease the programming life.

JavaScript2 + GIT

Module goals

JavaScript:

  • JSON
  • Code debugging using the browser
  • Functions + JSON/Arrays
  • Code flow (order of execution)
  • (Capturing user input)
  • Structuring code files
  • Events
  • Callbacks and Promises
  • XHTTP Requests
  • API calls
  • Async VS Sync
  • Polling

Git:

  • Have an understanding of problems for developers working together on software
  • Have an understanding of the need for version control software
  • Have an understanding of what GIT is and what problem it solves.
  • Understand what a commit is and how it represents a certain unit of work
  • Know how to create a new repository using clone and init
  • Know how to add / remove files to that new repository
  • Know how to commit and push files in that new repository.
  • Have an understanding of branches and how they can be used.
  • Know what a remote is and know how to retrieve remote information from git: git remote [show] [-v] [-vv]
  • Know what the difference between the three types of branches are: : local, local tracking, remote tracking.
  • Know how to navigate between branches and what git commands to use for them.
  • Have an understanding of what HEAD means.

JavaScript3 + GIT

Module goals

JavaScript:

  • (re)writing data structures (in JSON)
  • Map, reduce filter Reading Week 7 Homework Week 7
  • Closures
  • Promises
  • Test Driven Development

GIT

  • Git Workflow

Database

What is a database? A place to store “things”. Could be as simple as a phone book (physical) or as complex as storing all the inventory for Amazon.com. Why use databases? Easier than having data all over the place. Puts the problem of collecting, storing, sorting and searching data in a single place. There are two primary types of database systems - relational and NoSQL. Relational databases have tables that relate to one another and can be “joined” ACID vs BASE

Module goals By the end of this module, students should have a familiarity with and basic understanding of the following:

  • Entities
  • The relational model
  • The Structured Query Language (SQL)
  • The construction of a database system
  • MySQL as an example of a relational database system
  • Non-relational data and NoSQL
  • MongoDB as an example of a NoSQL database

NODE.js

Node.js is a server-side platform built on Google Chrome's JavaScript Engine (V8 Engine).For almost any web application, it is essential to have a backend. The backend is a place where we, the developers, can store our data, communicate with users and let the users communicate with us, do smart things like calculations, data processing etc.

There are many languages for this. We might've heard of Java, C, C++, Go, Python, Ruby, PHP and the list goes on.

There are two reasons why we at HYF choose Node.JS over others:

  1. You already know JavaScript, so it's easier to get started than other languages
  2. Node.js is great for making web APIs because it is asynchronous by nature and thus allows for high input/output. By this we mean that it allows many users to make very light requests at the same time.

What will we learn?

  • What is Node.js?
  • Using Node Package Manager (NPM)
  • Using require to include modules
  • Using http to handle http requests and respond
  • Using fs to read from and write to files.
  • Using process to read arguments from the CLI
  • Using express to make a RESTful API

React

Module goals

By the end of this module, students should have a familiarity with and basic understanding of the following:

  • React Components
  • State and Lifecycle
  • Forms and Managing State
  • API Integration
  • SPA and routing using React Router
  • Redux

Individual Project

Module goals

By the end of this module, students should have able to use all the acumulated knowlegde and skills and deploy on Heroku the Meal Sharing App that should be developed using React on the Frontend, NodeJS and KnexJS for the Backend and MySQL for Databases.

Final Project

In this module students work together in a team on a predefined project. The goal of this module is to combine all your acquired skills from the last modules into a project, often in collaboration with a real-world organisation and real-world challenge to solve. In this project, scoping, requirement analysis and project management are core themes while building your first full-stack project! 💪

Module goals

  • Working on a full-stack skeleton (provided by us), using different technologies you’ve been exposed to during the HackYourFuture program.
  • Fill the gaps that you have left in the previous modules. Did you miss an Node assignment? Make sure to pick up an extra issue there.
  • Show that you can work and function in a team.
  • Get familiar working with Scrum.

After this module we offer (technical)interview and cv training for those who are interested. The goal of these sessions are to:

  • Get your CV and LinkedIn ready for when you are starting to go to interviews.
  • Get an understanding of how (technical) interviews go in the Danish job market.

The HackYourFuture curriculum is subject to CC BY NC SA copyright. This means you can freely use our materials, but just make sure to give us credit for it and don't use it commercially, as it is the intellectual property of our volunteers :)

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].