GithubHelp home page GithubHelp logo

cb50's Introduction

code banner

WELCOME TO CODE CAMP!

Contents

Summary

Class meets Thursdays 12-1 in the CastleBranch Brewery and Sundays 1-4 at New Hanover Northeast Library in Watkins Room

Welcome to the our Git repository. A repository is a place where project files and data about those files are stored.

This repository - or repo - is the home of our curriculum. By the time you've worked through it all you will...

  • be familiar with the Linux bash command line

  • have experience writing collaborative code projects with Git

  • be comfortable reading and writing C, PHP, HTML, CSS, Javascript and SQL

  • have coded your own command line and full stack web applications

  • understand common architectures and programming design patterns

  • be ready to design and create your own new applications from scratch

No prior experience is necessary, just sticktoitiveness.

This course is built around and on Harvard's CS50. By the end of this class you will have completed that entire course, and much more. If you want, you can register for it on EdX (either for credit or not) to access their extra video content and forums. I'll make sure you have all the materials you need right here though, that's strictly optional.

We'll have a lot of important class discussion and notices in our Slack channel. Please do sign up there ASAP and be sure you're getting notifications when needed. They have a nice app, which is also optional, but nice.

Class Expectations

If you meet the below expectations, in this course you will go from zero programming experience to designing and coding your own desktop and web applications from the ground up. It is easy to defeat yourself by getting behind or working infrequently. Learning to program is learning a new language. Like any other language, frequent practice is the key to success. You can keep on top of it and you can succeed! You will need to set aside time at least twice a week to keep your knowledge fresh though. Coming to class regularly will help you keep on top of this a great deal - if you want to succeed you should come to as many classes as you can - at least once a week. Talk to Tristan if you have a scheduling conflict or any other questions. I'm doing this for the fun of seeing you succeed, and am always happy to help.

  • Work through the list of assignment below, in order.

  • Where a video lecture is listed, watch it outside of class.

  • Set aside 5 out of class hours per week for completing problem sets and lectures.

  • Come to class with a laptop and headphones.

  • Learning to program is hard! You will feel dumb. You will struggle. The single key to success is leaving your ego at the door. Be patient. Take a step back or ask for help when you need it. Don't beat yourself up when you struggle. Be nice to you and you will succeed.

Class Structure

Thursday 12-1

  • 25m : Concept review and discussion, quizzes

  • 15m : Setup for current week problem set if needed

  • 20m : Homework review, play with each other’s projects, q & a

Sunday 3:30-5

  • Lab : work through problem set, watch lecture shorts and get help - may go later as needed

Class Calendar

R 5/24 - Introduction, course registration, expectations

S 5/28 – NO CLASS- Memorial Day Weekend

Week 0

HW - CS50 Lecture 0

R 6/1 - Scratch setup, GitHub setup, the command line

HW - Puzzle Pieces, Cowsay

S 6/4 - Scratch

Week 1

HW - CS50 Lecture 1

R 6/8 - functions & syntax: main, printf, get_int

HW - Git Motivated

S 6/11 - Hello.c

Week 2

R 6/15 - variables, data types, assignments and evaluation

HW - Git Stylish

S 6/18 - Water.c

Week 3

HW - Echo.c, Scream.c

R 6/22 - loops and conditions, breaking problems into little parts: change/compile/run

S 6/25 - Grid.c, Numgrid.c

Week 4

HW - Takes2.c, Steps.c

R 6/29 - visualizing and formatting loop output

S 7/2 - Choose either Mario.c easier, or harder

Week 5

R - loop anatomy review, interpreting error messages, arrays, iteration and indices

S - S_p_l_i_t.c, esreveR.c

Week 6

R -

S - Pin tests

Week 7

HW - Git Artistic

R - data types review, return types

S - Choosy.c, Strint.c

Week 8

R - mod math, chaining boolean expressions, functions: round, floor

S - Greedy.c and/or Credit.c

Week 9

HW - CS50 Lecture 2

R - writing your own functions (implement strlen)

S - Initials.c, easier or harder

Week 10

R - command line arguments, debugging

S - Caesar.c

Week 11

R - solving tiny problems - vigenere set up

S - Vigenere.c

Week 12

HW - CS50 Lecture 3

R - GUI persistence in console - make a dungeon-less crawler

S - Fifteen.c - init & draw

Week 13

HW - finish init & draw

R -

S - Fifteen.c - won & move

Week 14

HW - finish won & move

R - fifteen discussion, bug hunt and victory lap

S - no class

Week 15

R - Complexity and sorting algorithms

S - Find.c easier or harder

Week 15

schedule in progress from here down, take with a grain of salt

Lecture 4

Problem Set 4

Set 4, part 1, Whodunit

Set 4, part 2, Resize: less comfy, more comfy

R 7/15 - P Set 3 Game of 15 Demo, P Set 4 File i/o, Image manipulation and Stegonography discussion

S 7/18 - P Set 4 Whodunit & Resize Lab

No Tristan this week - will arrange sub

No Lecture

Set 4, part 3, Recover

R 7/20 - P Set 4 Whodunit & Resize demo, P set 4 Recover discussion

S 7/23 - P Set 4 Recover Lab

Lecture 5

Problem Set 5

R 7/27 - P Set 4 Recover Demo, Data Structures and Complexity discussion

S 7/30 - P Set 5 Speller Lab

Lecture 6

Problem Set 6

R 8/3 - P Set 5 Speller Demo, P Set 6 Web Server discussion

HW - find and present on an RFC or a layer of the OSI Model

S 8/6 - P Set 6 Web Server Lab

Lecture 7

Problem Set 7

R 8/10 - Present HW research

S 8/13 - Stock Trading Web App, Databases & SQL Lab

No Lecture

R 8/17 - PHP-FIG & PSR standards

HW - read up on assigned PSR topic

S 8/20 - Discuss PSR, wrap up Stock Trading Apps - Tristan out, will try to find sub

Lecture 8

Problem Set 8

R 8/24 - Demo Stock Trading Apps, Intro Mashup Google Maps Integration

S 8/27 -

R 8/31 - JavaScript, DOM & AJAX

S 9/3

Problem Set 9 - public data project

R 9/7 - Machine Learning, Neural Nets, p/np, Data Visualization, Kaggle

S 9/10

R 9/14

S 9/17

Final Project

R 9/21 - Diagramming in BPMN, Use Cases, Acceptance Criteria, brainstorm, form teams

S 9/24

R 9/21 - Laravel Framework, Composer & dependencies, Local environments, Artisan

S 9/24

Week 18

R 9/28

S 9/31

Week 19

Demo final project models & work complete

cb50's People

Contributors

tepease avatar breathekorea avatar ljabs89 avatar 28411ej avatar laurellouise avatar ccthoma avatar jkad1iaidjdj avatar stevenpowell avatar elizabethferrell avatar

Stargazers

 avatar  avatar

Watchers

Impetus avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.