https://github.com/mixelpixel/cs7
An archive of daily lectures and fun!
https://github.com/mixelpixel/cs7
Last synced: 7 months ago
JSON representation
An archive of daily lectures and fun!
- Host: GitHub
- URL: https://github.com/mixelpixel/cs7
- Owner: mixelpixel
- Created: 2018-01-31T02:03:24.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-04-10T03:12:28.000Z (about 8 years ago)
- Last Synced: 2024-12-28T18:55:33.894Z (over 1 year ago)
- Size: 165 KB
- Stars: 6
- Watchers: 5
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
CS7: DAY by DAY
!EASTER EGGS: Click on the ▶︎ black ▶︎ triangles ▶︎ to reveal EASTER EGGS!
# Overview
## [CS7 on Piazza](https://piazza.com/class/jc6vhnh8mdl5pw)
### [LS Syllabus Training Kit](http://ls-training-kit.netlify.com/cs-master)
##### [LS CSA Syllabus on GitHub](https://github.com/LambdaSchool/LambdaCSA-Syllabus)
Google Calendar Week Example
- The CS7 Calendar is available on Google Calendars per invite.

Lambda School Sprint Structure
- [Lambda School Sprint Structure](https://docs.google.com/spreadsheets/d/1m83sq7Td5jpJ0XQUTwN7dJKhBHvIUppyHGIQ58pVQl4/edit?usp=sharing)

***
## Day by day, week by week, month by month, we learn!
Month 1: January, 2018
Prior to my starting mid-Week 3
##### THIS LIST IS JUST AN EDUCATED GUESS RIGHT NOW
### Pre-Coursework
- https://github.com/LambdaSchool/Precourse (PR review???)
- https://github.com/LambdaSchool/Pre-Course-Git-Fu - Is this still issued to students?
***
### Week 1: Jan. 8 - 12
### JavaScript I - IV
- https://github.com/LambdaSchool/JavaScript-I-Mini
- https://github.com/LambdaSchool/JavaScript-I
- https://github.com/LambdaSchool/JavaScript-II-Mini
- https://github.com/LambdaSchool/JavaScript-II
- https://github.com/LambdaSchool/Sprint-Challenge--JavaScript
***
### Week 2: Jan. 16 - 19 (1/15: MLK Jr.)
### Data Structures
- https://github.com/LambdaSchool/Data-Structures-I
- https://github.com/LambdaSchool/LS-Data-Structures-I-Solution (PR review???)
- https://github.com/LambdaSchool/Data-Structures-II
- https://github.com/LambdaSchool/LS-Data-Structures-II-Solution (PR review???)
- https://github.com/LambdaSchool/Sprint-Challenge--Data-Structures
***
#### Code Challenges 1 through 10
1. [reverseString](https://piazza.com/class/jc6vhnh8mdl5pw?cid=10)
2. longestString
3. [reverseCase](https://piazza.com/class/jc6vhnh8mdl5pw?cid=14)
4. [reverseNumber](https://piazza.com/class/jc6vhnh8mdl5pw?cid=20)
5. [moneyFormat](https://piazza.com/class/jc6vhnh8mdl5pw?cid=24)
6. [stringToCamelCase](https://piazza.com/class/jc6vhnh8mdl5pw?cid=28)
7. evenOccurences
8. [romanNumerals](https://piazza.com/class/jc6vhnh8mdl5pw?cid=33)
9. [stringCompression](https://piazza.com/class/jc6vhnh8mdl5pw?cid=34)
10. collatzSequence
***
# Week 03: Jan. 22 - 26
## HTML/CSS and DOM Manipulation w/Ivan Mora
- https://github.com/LambdaSchool/HTML-CSS-mini
- https://github.com/LambdaSchool/LS-Web-Intro-I (???)
- https://github.com/LambdaSchool/DOM-JavaScript-mini
- https://github.com/LambdaSchool/DOM-JavaScript-mini-Solution (PR review???)
- https://github.com/LambdaSchool/Sprint-Challenge-DOM-Javascript
### Day 10: Mon, Jan. 22
#### [Code Challenge 8: Roman Numerals](https://youtu.be/Q5T0Spd69uA)
***
### Day 11: Tue, Jan. 23
#### [Code Challenge 9: String Compression](https://youtu.be/5B-3pOd7b2E)
***
### Day 12: Wed, Jan. 24
#### [Code Challenge 10: Collatz Sequence](NO_VIDEO_RECORDED)
#### [Introduction to DOM and manipulation with Vanilla JS - Lecture](https://youtu.be/X8Q1yD1wjig) w/Ivan Mora
#### [Introduction to DOM and manipulation with Vanilla JS - Q&A](https://youtu.be/iuzkSVRJEss) w/Ivan Mora
***
### Day 13: Thu, Jan. 25
#### [Code Challenge 11: Consecutive Strings](https://youtu.be/Ft_nfW8GKiQ) w/Patrick Kennedy
#### [Introduction to DOM and manipulation with Vanilla JS - Q&A 2](https://youtu.be/qpI5z1DAiuY) w/Ivan Mora
#### [Introduction to DOM and manipulation with Vanilla JS - Q&A 3](https://youtu.be/7qi6vrzgyNE) w/Ivan Mora
***
### Day 14: Fri, Jan. 26
#### [Sprint Challenge](https://github.com/LambdaSchool/Sprint-Challenge-DOM-Javascript): DOM & Javascript
#### [Introduction to DOM and manipulation with Vanilla JS - Solution 1](VIDEO_RECORDED_NOT_POSTED) w/Ivan Mora
#### [Introduction to DOM and manipulation with Vanilla JS - Solution 2(Refactor)](https://youtu.be/LgFy3zAXK_o) w/Ivan Mora
### Sat, Jan. 27
#### [CS7 - Introduction to DOM and manipulation with Vanilla JS - Optional Review](https://youtu.be/xZfB890FWMw)
***
# Week 04: Jan. 29 - Feb. 2
## Responsive Design and CSS Pre-Processors w/Josh Knell
- https://github.com/lambdaschool/preprocessing-one
- https://github.com/LambdaSchool/Preprocessing-2
- https://github.com/LambdaSchool/responsive-web-design
- https://github.com/LambdaSchool/Sprint-Challenge--Responsive-Less
- https://codepen.io/joshlambda/pen/xYwoYe?editors=1100
##### Posted in Slack, Sunday prior: https://lambdaschoolstudents.slack.com/archives/C8ZM4HHD3/p1517169440000109
Setting up for LESS
> *Q: Why LESS and not SASS or another preprocessor?*
>
> A: Learning one will be almost identical to the other but SASS compiles on Ruby and to install Ruby for PC and MAC would have been an unwanted side effect for teaching. You will find that the time spent in LESS will prepare you for any pre processor.
>
> *Q: I have node installed, but when I try to install LESS or run any commands I get an error: *
```bash
npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
```
> A: This is because of where your files for the node modules on your computer are stored. The quick fix is to simply run "sudo" in front of your commands to override the permission error.
>
> Example:
```bash
$ sudo npm install -g less
```
> This command, known as "super user do" will grant the correct permissions after you enter a password.
>
> For a more permanent fix, you can follow this guide on the npm website:
>
> https://docs.npmjs.com/getting-started/fixing-npm-permissions
>
> *Q: The pre course video talks about using jet brains IDE to further optimize my LESS build but I don't have that IDE. What gives?*
>
> A: Don't worry about the IDE. That was just a helpful tip and trick. We will be going over every detail in our guided demo. Just get LESS installed and attempt to write a few lines of LESS so you're familiar with it. Don't stress!
##### Day 1 - Preprocessors Intro
- Required: https://htmlmag.com/article/an-introduction-to-css-preprocessors-sass-less-stylus
- Documentation: http://lesscss.org/3.x/
- Install video (my version will be coming soon): https://www.youtube.com/watch?v=YQYJUeokqOY
##### Day 2 - Preprocessors Advanced
- *Read this first:* https://www.sitepoint.com/a-comprehensive-introduction-to-less-mixins/
- *After you have a decent handle on them, go try them out on your own!*
- Here are some examples to get your started:
- https://css-tricks.com/snippets/css/useful-css3-less-mixins/
- I looked for a *super short and succinct* video on LESS and this is a great review in practice:
- https://www.youtube.com/watch?v=EU1sUpPGIb4
##### Day 3 - Responsive Web Design Intro
- Reading and watching for tomorrow's Responsive Web Design (RWD) Intro
- Responsive web design tutorial - really well done: https://www.youtube.com/watch?v=BIz02qY5BRA
- W3 Schools! Seriously, good intro here :wink: https://www.w3schools.com/css/css_rwd_intro.asp
- Optional reading (recommended if you really like design): https://www.smashingmagazine.com/2017/11/comprehensive-guide-web-design/
##### Day 4 - Responsive Web Design Advanced
- Get familiar with em, rem, and px! https://engageinteractive.co.uk/blog/em-vs-rem-vs-px
- Optional extended reading on units: https://benfrain.com/just-use-pixels/ (edited)
- Percent based Layouts: https://youtu.be/epa5QFFpGHI
- Exercise 1: https://codepen.io/bigknell/pen/eVNoVp?editors=1100
- Exercise 2: https://codepen.io/bigknell/pen/qxdgYJ?editors=1100
- ALSO:
- https://www.smashingmagazine.com/2017/11/comprehensive-guide-web-design/
- https://developer.mozilla.org/en-US/docs/Web/CSS/flex-basis
- http://jonibologna.com/flexbox-cheatsheet/
- Bootstrap example: https://codepen.io/bigknell/pen/QQbzjz?editors=1010
***
### Day 15: Mon, Jan. 29
#### [Code Challenge 12: Sum of Digits](https://youtu.be/udMpY37k7ng) w/Patrick Kennedy
#### [CSS Preprocessor Intro](https://youtu.be/YlYTye2UOzg) w/Josh Knell
#### [CSS Preprocessor Intro Q&A](https://youtu.be/5uffIhKvPUo) w/Josh Knell
***
### Day 16: Tue, Jan. 30
#### [Code Challenge 13: Common Elements](https://youtu.be/somn1VHvFCc) w/Satish Vattikuti
#### [CSS Preprocessor 2](https://youtu.be/GwIEh4R8AUY) w/Josh Knell
#### [CSS Preprocessor 2 Q&A](https://youtu.be/shXMYNQtg48) w/Josh Knell
***
### Day 17: Wed, Jan. 31
#### [Code Challenge 14: Bubble Sort](https://youtu.be/mHSBT-yVAx0) w/Satish Vattikuti
#### [Responsive Web Design: Guided Demo](https://youtu.be/jnI2m_9YQio) w/Josh Knell
#### [Responsive Web Design: Q&A](https://youtu.be/Q8lftdFxLTg) w/Josh Knell
***
### Day 18: Thu, Feb. 1
#### [Code Challenge 15: Sort Strings](https://youtu.be/kNyaYGp2enY) w/Satish Vattikuti
#### [Responsive Web Design - Percent Based Layout](https://youtu.be/epa5QFFpGHI) w/Josh Knell
#### [Responsive Web Design II: Guided Demo](https://youtu.be/XDO7yc7aAFc) w/Josh Knell
#### [Responsive Web Design II: Q&A](https://youtu.be/29colSG9nxg) w/Josh Knell
***
### Day 19: Fri, Feb. 2
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/Sprint-Challenge--Responsive-Less): Responsive LESS
#### [Brown Bag: CS2 Capstone Demo](https://youtu.be/ArzxiheN1_c) w/CS2
#### [Responsive Web & LESS Sprint Challenge Solution](https://youtu.be/lTx5muhNJRg) w/Josh Knell
#### [Intro to Slack command: `/question`](https://youtu.be/sFWZ5dGQebI) w/Patrick Kennedy
***
Month 2: February, 2018
# Week 05: Mon. Feb 5 - 9
## React 1 w/Luis Hernandez
- [React I Pre-Class Video](https://youtu.be/Ty9DTVIaATY) w/Sean Chen 46 min
- https://reactjs.org/docs/thinking-in-react.html
### Assignments
- https://github.com/LambdaSchool/React-I-Mini-Sprint
- https://github.com/LambdaSchool/React-I
- https://github.com/LambdaSchool/React-II
- https://github.com/LambdaSchool/Sprint-Challenge---React
### Day 20: Mon, Feb. 5
#### [Code Challenge 16: To Binary String](https://youtu.be/zxdU1Fsctko) w/Patrick Kennedy
- solution: https://piazza.com/class/jc6vhnh8mdl5pw?cid=67
#### [Guided Demo Part 1 - First steps with React and create-react-app](https://youtu.be/7JCUqSMlh_U) w/Luis Hernandez
#### [Git windows installation adding Unix tools to Command Prompt](https://youtu.be/WydxMKxsrWk) w/Luis Hernandez
#### [Q and A, class components and introduction to state](https://youtu.be/9Gt5M2tacoM) w/Luis Hernandez
***
### Day 21: Tue, Feb. 6
#### [Code Challenge 17: Prime List](https://youtu.be/S-rgjmPfyD4) w/Satish Vattikuti
#### [Guided Demo Part 2 - Add and Remove examples](https://youtu.be/5NCAA5rZlws) w/Luis Hernandez
#### [Q and A Part 2 - review of core concepts and relative path navigation](https://youtu.be/cJ9aKBC0NNg) w/Luis Hernandez
***
### Day 22: Wed, Feb. 7
#### [Code Challenge 18: Days Between](https://youtu.be/5UY-9sEf-UY) w/Manisha Lal
#### [Guided Demo Part 3 - Styling React Components](https://youtu.be/ZxP6WMnJx_U) w/Luis Hernandez
#### [How to create a GitHub repository and connect it to an application built with create-react-app](https://youtu.be/-S6QuT-rJSU) w/Luis Hernandez
#### [Q and A Part 3](https://youtu.be/UpCKoUL7Mk8) w/Luis Hernandez
***
### Day 23: Thu, Feb. 8
#### [Code Challenge 19: Expanded Numbers](https://youtu.be/tAXkD5pZOE4) w/Tyge Johnson
#### [Guided Demo Part 4 - PropTypes, defaultProps and Lifecyle hooks](https://youtu.be/SoCpqurJZHQ) w/Luis Hernandez
#### [Q and A Part 4 - Review from Scratch](https://youtu.be/5HXrNoYRfyA) w/Luis Hernandez
***
### Day 24: Fri, Feb. 9
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/Sprint-Challenge---React): React
#### [Brown Bag](https://youtu.be/Dc5aZB28nfY) w/Adam Nash: Personal Finance for Engineers
- https://www.slideshare.net/adamnash/personal-finance-for-engineers-lambda-school-2018/
#### [Sprint Challenge Review](https://youtu.be/LlcSC9Oax9I) w/Luis Hernandez
***
# Week 06: Feb. 12 - 16
## React 2 w/Luis Hernandez
- Pre-Class Video: https://youtu.be/ENNS0YeCLA0
- https://codeburst.io/javascript-promises-explained-with-simple-real-life-analogies-dd6908092138
### Assignments
- https://github.com/LambdaSchool/HTTP-Mini-Sprint
- https://github.com/LambdaSchool/HTTP-AJAX
- https://github.com/LambdaSchool/Client-Side-Routing
- https://github.com/LambdaSchool/Sprint-Challenge-Routing-Axios
### Day 25: Mon, Feb. 12
#### [Code Challenge 20: Rock, Paper, Scissors](https://youtu.be/usMuIvnTRfs) w/Patrick Kennedy
#### [Guided Demo - Introduction to HTTP Ajax and Promises](https://youtu.be/puxkuf1zw1A) w/Luis Hernandez
#### [Q&A](https://youtu.be/G6AS65DEhYo) w/Satish, Wesley and Patrick
***
### Day 26: Tue, Feb. 13
#### [Code Challenge 21: Merged Objects](https://youtu.be/HNNgEO4eoa4) w/Satish Vattikuti
#### [Guided Demo Part 2 - Implementing Post and Pair Programming Demo](https://youtu.be/jblkjTbeHyk) w/Luis Hernandez
#### [Q&A - Implementing Delete and Lifting State Up](https://youtu.be/lqF115-61LI) w/Luis Hernandez
***
### Day 27: Wed, Feb. 14
#### [Code Challenge 22: Is Twin Prime?](https://youtu.be/OFaiYw3epy0) w/Manisha Lal
#### [Guided Demo - Introduction to React Router](https://youtu.be/LJ9B57ZKXcM) w/Luis Hernandez
#### [LECTURE](https://youtu.be/k2nOAYnT2rI) w/Luis Hernandez
***
### Day 28: Thu, Feb. 15
#### [Code Challenge 23: Insertion Sort](https://youtu.be/KAIWkriM0WI) w/Tyge Johnson
#### [Q&A - React Router](https://youtu.be/k2nOAYnT2rI) w/Luis Hernandez
***
### Day 29: Fri, Feb. 16
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/Sprint-Challenge-Routing-Axios.git): Routing Axios
#### [Brown Bag](https://youtu.be/MeQZby2OMTM) w/Sean Chen: Parallel Algorithm Design
#### [Sprint Challenge Review](https://youtu.be/XweeO6kmB7c) w/Luis Hernandez: React Router and AJAX Update/Put
***
change
# Week 07: Feb. 19 - 23
## Redux w/Ivan Mora & Sean Chen
- Pre Class video: https://youtu.be/Ozx4FH4iKWc
## Assignments
- https://github.com/LambdaSchool/Redux-I-Mini
- https://github.com/LambdaSchool/Redux
- https://github.com/LambdaSchool/Redux-II
- https://github.com/LambdaSchool/Sprint-Challenge--Redux
## Redux-II prep
- [Pre class videos](https://youtu.be/DJ8fR0mZM44) PLEASE watch this video in this Tutorial Series. And then watch #6
- [Async Actions in Redux](https://youtu.be/Td-2D-_7Y2E)
- [Some delightful docs!](https://redux.js.org/docs/advanced/AsyncActions.html)
### Mon, Feb. 19 PRESIDENT'S DAY
***
### Day 30: Tue, Feb. 20
#### [Code Challenge 24: Operators](https://youtu.be/tgNSVfND0CQ) w/Patrick Kennedy
#### [Introduction to Redux I - Immutability](https://youtu.be/sUjIMl75yUE) w/Ivan Mora
#### [Redux I - Q&A](https://youtu.be/LyqMglL0nyY) w/Ivan Mora
***
### Day 31: Wed, Feb. 21
#### [Code Challenge 25: Equal Sides](https://youtu.be/ssfwNPDiLCs) w/Satish Vattihuti
#### [Redux I mini - Solution](https://youtu.be/JN5JKj_fFz4) w/Ivan Mora
#### [GitHub "Collaboration" & Pair Programming](https://youtu.be/iDhvng6KsSo) w/Tai Chulikavit, Boomer & Patrick Kennedy
#### [Redux I - Q&A](https://youtu.be/ucZYQ0mmOcg) w/TAs
***
### Day 32: Thu, Feb. 22
#### [Code Challenge 26: Check Matching Leaves](https://youtu.be/saBBuZ4-50M) w/Manisha Lal
#### [Redux I Solution Lecture & Redux II Lecture](https://youtu.be/M5qQgJoxug0) w/Sean Chen
#### [Redux-II Q&A 1](https://youtu.be/dNBtg6vBctc) w/Sean Chen
***
### Day 33: Fri, Feb. 23
#### [Code Challenge 27: Markdown Tables](https://youtu.be/NiXv54vJW4s) w/Patrick Kennedy
#### [Redux II Solution Lecture](https://youtu.be/TD02_nz_-hg) w/Sean Chen
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/Sprint-Challenge--Redux): Redux
***
# Week 08 Feb.26 - Mar. 2
## Front-End Project w/Josh Knell
## Assignments
- http://ls-training-kit.netlify.com/cs-master/sprints/recvfiumbzbczllxc
- https://github.com/LambdaSchool/front-end-project-week
## Prep
- [Intro to Agile and Trello](https://youtu.be/A6kyihY54yA)
- Pomodoror technique: https://francescocirillo.com/pages/pomodoro-technique
### Day 34: Mon, Feb. 26
#### [Code Challenge 28: Quick Sort](https://youtu.be/ne0xjxqKkb4) w/Matt Jackson
#### [Front End Project Week - Guided Instruction](https://youtu.be/KBhd7OJxft8) w/Josh Knell
***
### Day 35: Tue, Feb. 27
#### [Git Commits and Pep Talk](https://youtu.be/Ocw2rCdFyYA) w/Josh Knell
***
### Day 36: Wed, Feb. 28
#### [Pomodoro - Tomato... time tracking!](https://youtu.be/dRXZGpp8pfw) w/Josh Knell
***
### Day 37: Thu, Mar. 1
#### [Weekly Scrum Agile](https://youtu.be/t3AKql4r06Q) w/Josh Knell
***
### Day 38: Fri, Mar. 2
#### [CS7 Front-End Project Demo](https://youtu.be/1EvA8UNZrys) w/TAs
***
Month 3: March, 2018
# Week 09: Mar. 5 - 9
## Node w/Ivan Mora
- Karthik Intro Video: [CS1 Node.js and Express](https://youtu.be/K1RkG_irE9I)
### Installation
- https://www.getpostman.com/
## Assignments
- https://github.com/LambdaSchool/Node-Express
- https://github.com/LambdaSchool/node-express-mini
- https://github.com/LambdaSchool/node-express-mini-finished (solution)
- https://github.com/LambdaSchool/Node-Express-Lab
- https://github.com/LambdaSchool/node-express-lab-finished (solution)
### Day 39: Mon, Mar. 5
#### [Code Challenge 29: Merge Sort](https://youtu.be/X69jOWMwQRE) w/Dylan Scheidt
#### [Node - Introduction Lecture](https://youtu.be/wABYcE37ylM) w/Ivan Mora
#### [Node - Introduction Q&A](https://youtu.be/l5OkhMw0PQ0) w/TAs
***
### Day 40: Tue, Mar. 6
#### [Code Challenge 30: Breadth First Search](https://youtu.be/uUWO_uCJ2fU) w/Satish Vatikuti
#### [Node - Express I - Mini Solution](https://youtu.be/BxjoDZwvJ3w) w/Ivan Mora
#### [Node Express I Q&A (partial)](https://youtu.be/RPfcJDRGWfM) w/TAs
***
### Day 41: Wed, Mar. 7
#### [Code Challenge 31: Queue Stack](https://piazza.com/class/jc6vhnh8mdl5pw?cid=104) w/Matthew Jackson
#### [Third Party APIs - Intro Lecture and assignment](https://youtu.be/22C-eD8k2r4) w/Ivan Mora
#### [Third Party APIs - Intro Q&A](https://youtu.be/s__5AHQhfbI) w/TAs
***
### Day 42: Thu, Mar. 8
#### [Code Challenge 32: Largest Contiguous Sum](https://youtu.be/ox2M5tFzxlQ) w/Tyge Johnson
#### [Node-Express-Gmaps - Day I Lab Solution Lecture](https://youtu.be/GNSxs8yJuyo) w/Ivan Mora
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/TAs
***
### Day 43: Fri, Mar. 9
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/Sprint-Challenge-Node-Express): Node
#### [Sprint Challenge Review](VIDEO_RECORDED_NOT_POSTED) w/Ivan Mora
***
# Week 10: Mar. 12 - 16
## MongoDB w/Luis Hernandez
- Pre-Class video: https://youtu.be/mc26S-0FeSA
### Installation
1. MongoDB Installation Docs - follow the instructions to install the Community Edition for your platform
- https://docs.mongodb.com/manual/installation/
- https://www.mongodb.com/download-center?jmp=tutorials#community
- NOTE: Windows users - do not select "Compass" as a part of th installer per: https://www.youtube.com/watch?v=l8Ij6hVQsBk&feature=youtu.be
2. Robo 3T - Graphical User Interface tool for MongoDB
- https://robomongo.org/
3. MongoDB Compass - Graphical User Interface tool created by the developers of MongoDB, install the Community Edition.
- https://www.mongodb.com/download-center?jmp=tutorials#compass
4. MongooseJS - MongoDB Object Document Mapper for Node.js
- http://mongoosejs.com/
4. MongooseJS documentation on Queries
- http://mongoosejs.com/docs/queries.html
5. MongoDB documentation on Queries
- https://docs.mongodb.com/manual/tutorial/query-documents/
## Assignments
- https://github.com/LambdaSchool/mongo-I-mini
- https://github.com/LambdaSchool/Mongo-I
- https://github.com/LambdaSchool/Mongo-II
- https://github.com/LambdaSchool/Mongo-III
- https://github.com/LambdaSchool/mongo-iv
- https://github.com/LambdaSchool/Sprint-Challenge-Mongo
### Day 44: Mon, Mar. 12
#### [Code Challenge 33: Reverse Linked List](https://youtu.be/EunGvk_IqH8) w/Matt Jackson
#### [Guided Demo 1](https://youtu.be/Y4pjOf0nJDk) w/Luis Hernandez
#### [Windows Install Troubleshooting](https://www.youtube.com/watch?v=l8Ij6hVQsBk&feature=youtu.be) w/Luis Hernandez
***
### Day 45: Tue, Mar. 13
#### [Code Challenge 34: Binary Array Sort In Linear Time](https://youtu.be/smNx21DpQ5k) w/SPEAKER
#### [Guided Demo 2](https://youtu.be/jiz-G89kAyA) w/Luis Hernandez
***
### Day 46: Wed, Mar. 14
#### [Code Challenge 35: Linked List Cycle](https://youtu.be/n-HiU89hcpQ) w/SPEAKER
#### [Guided Demo 3 - Relationships](https://youtu.be/8T8qZcfmNBE) w/Luis Hernandez
***
### Day 47: Thu, Mar. 15
#### [Code Challenge 36: Balanced Brackets](https://youtu.be/nmWAY4KERS4) w/SPEAKER
#### [Guided Demo 4 - Importing data, linking and queries](https://youtu.be/gBKOTB7m3SE) w/Luis Hernandez
#### [Review and Q&A](https://youtu.be/sXbYe4bVxyQ) w/Luis Hernandez
***
### Day 48: Fri, Mar. 16
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/Sprint-Challenge-Mongo): Mongo
#### [Sprint Challenge Review](https://youtu.be/jK-8Da0snX0) w/Luis Hernandez
***
# Week 11: Mar. 19 - 23
## Client Authentication w/Ryan Hamblin
- Pre-Class video: https://youtu.be/lcTNZXJVwd4
## Assignments
- https://github.com/LambdaSchool/Auth-Mini
- https://github.com/LambdaSchool/Auth
- [Client Authentication Prep Video](https://youtu.be/sqf1bh7kD3I)
- https://github.com/LambdaSchool/Client-Auth-Mini
- https://github.com/LambdaSchool/Client-Auth
- https://github.com/LambdaSchool/Sprint-Challenge-Authentication
### Day 49: Mon, Mar. 19
#### [Code Challenge 37: Get All Product Except At Index](https://youtu.be/_8Uvw6Wia58) w/Patrick Kennedy
#### [Authentication with BCrypt Middleware and Sessions](https://youtu.be/lLwGQTSzt_U) w/Ryan Hamblin
#### [Auth-Mini Solution + QA](https://youtu.be/IRwhcd5UWAE) w/Ryan Hamblin
***
### Day 50: Tue, Mar. 20
#### [Code Challenge 38: Largest Difference](https://youtu.be/AtAuzJp9FAw) w/Matthew Jackson
#### [Auth/pre hooks and methods and RegEx 'lite'](https://youtu.be/iClhXBmImJk) w/Ryan Hamblin
***
### Day 51: Wed, Mar. 21
#### [Code Challenge 39: Armstrong Numbers](https://youtu.be/jjXB2xq0aTk) w/Tyge Johnson
#### [Cors](https://youtu.be/FFTD_3mvtQw) w/Ryan Hamblin
#### [Discusson And Demo on HOC](https://youtu.be/JDW9zU_cBeY) w/Ryan Hamblin
***
### Day 52: Thu, Mar. 22
#### [Code Challenge 40: Route Between Nodes](https://youtu.be/miLWjn4YKUc) w/Manisha Lal
#### [Client Auth w/ Sessions SOLUTION](https://youtu.be/S4Hj_veQtvY) w/Ryan Hamblin
#### [JSON Web Tokens](https://youtu.be/IyXq3PCDp0E) w/Ryan Hamblin
***
### Day 53: Fri, Mar. 23
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/Sprint-Challenge-Authentication): Authentication
#### [Auth - Sprint Challenge Solution](https://youtu.be/CQY323nLpB0) w/Ryan Hamblin
#### [Brown Bag](https://youtu.be/lTx725g3pcU) w/Ryan Hamblin: Imposter Syndrome
***
# Week 12: Mar. 26 - 30
## Testing w/Sean Chen
- Pre-Class video: https://youtu.be/UdIvNJA2PwI
http://chaijs.com/
https://mochajs.org/
https://devhints.io/sinon-chai
https://github.com/LambdaSchool/Testing
## Assignments
- https://tk.lambdaschool.com/cs-master/sprints/recxv0jwyeyd6y2jq
- https://github.com/LambdaSchool/Testing
- https://github.com/LambdaSchool/React-Testing
- https://github.com/LambdaSchool/Server-Testing-Mini
- https://github.com/LambdaSchool/Server-Testing
- https://github.com/LambdaSchool/Sprint-Challenge--Testing
### Day 54: Mon, Mar. 26
#### [Code Challenge 41: Sum And Product](https://youtu.be/UIP9yyRVt0Y) w/Matt Jackson
#### [Client-Side Testing Lecture](https://youtu.be/2yZFyrU1wuI) w/Sean Chen
#### [Client-Side Testing Q&A](https://youtu.be/zditPPnmYiY) w/Sean Chen
***
### Day 55: Tue, Mar. 27
#### [Code Challenge 42: Chained Functions](https://youtu.be/XfQLrJ45BiI) w/Tyge Johnson
#### [React Testing Lecture](https://youtu.be/e7y7qkw4GOs) w/Sean Chen
***
### Day 56: Wed, Mar. 28
#### [Code Challenge 43: Stack Machine](https://youtu.be/bP1LnK8NfIQ) w/Satish Vatikuti
#### [Server Testing Lecture](https://youtu.be/QAia-lp_Y_M) w/Sean Chen
#### [Server Testing Q&A on before() and after()](https://youtu.be/KxQdIcCTRV0) w/Sean Chen
- Server testing mini code: https://gist.github.com/seanchen1991/f2431535c3a42af3919e5b21ee4fa11c
***
### Day 57: Thu, Mar. 29
#### [Code Challenge 44: Prime Reduction](https://youtu.be/0pkZuE2YNCc) w/Manisha Lal
#### [Server-Testing Solution Lecture](https://youtu.be/0pkZuE2YNCc) w/Sean Chen
- Link to solution repository: https://github.com/ryanhca/testing-a-server
***
### Day 58: Fri, Mar. 30
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/Sprint-Challenge--Testing): Testing
#### [Brown Bag](https://youtu.be/pCUFx_v9f8g) w/Leon Bates: Refactoring .then, async, & await
#### [Sprint Challenge -- Testing Solution Lecture](https://youtu.be/JoIuYivEzhU) w/Sean Chen
***
Month 4: April, 2018
# Week 13: Apr. 2 - 6
## Project Week - Back End Project w/Sean Chen
- https://tk.lambdaschool.com/cs-master/sprints/recwkcwui91eg1s8q
- https://tk.lambdaschool.com/cs-master/modules/reclxlvbkj28kntn8
## Assignments
- https://github.com/LambdaSchool/back-end-project-week
### Day 59: Mon, Apr. 02
#### [Backend Project Week Kickoff](https://youtu.be/vAkybgGB7Vk) w/Sean Chen
***
### Day 60: Tue, Apr. 03
#### [Backend Week instructor Session 1: How to Think about Code Challenges](https://youtu.be/Yp1YT00NWP4) w/Sean Chen
#### [Basic MongoDB Schema and Express Server](https://youtu.be/Oj-uU6A9U1M) w/Patrick Kennedy
***
### Day 61: Wed, Apr. 04
#### [Backend Project Week Instructor Session 2](https://youtu.be/k7ccA6ZGbVQ) w/Sean Chen
#### [Brown Bag](https://youtu.be/YEHgj5fDxm8) w/Leon Bates: Refactoring .then, async, & await
***
### Day 62: Thu, Apr. 05
#### [Backend Project Week Instructor Session 3](https://youtu.be/TTKSesIBR1s) w/Sean Chen
***
### Day 63: Fri, Apr. 06
#### [CS7 Back End Project Demo](https://youtu.be/cQ0p7FEXp-s) w/Sean Chen
***
# Week 14: Apr. 9 - 13
## Computer Architecture w/Beej Jorgensen
- Beej's introduction: https://lambdaschoolstudents.slack.com/archives/G8QF444TG/p1523057832000187
- Precourse viddy: https://www.youtube.com/watch?v=osLzed5ExFs&feature=youtu.be
- Precourse viddy: https://www.youtube.com/watch?v=NwimiPFMzp4&feature=youtu.be
- Overview: https://tk.lambdaschool.com/cs-master/sprints/recndtno1v8odbbpb
- Mon/Tue: https://tk.lambdaschool.com/cs-master/modules/recsujbrrfgbfucrx
- Wed/Thu: https://tk.lambdaschool.com/cs-master/modules/recvqukzz23ntj20g
## Assignments
- https://github.com/LambdaSchool/Computer-Architecture-One
- https://github.com/LambdaSchool/Sprint-Challenge--Computer-Architecture
### Day 64: Mon, MON. 9
#### [Code Challenge ##: Deep Equality](https://youtu.be/Vuri3CVyf48) w/Patrick Kennedy
#### [Computer Architecture #1](https://youtu.be/vmry2rXp60c) w/Beej Jorgensen
***
### Day 65: Tue, MON. 10
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/Tyge Johnson
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/Beej Jorgensen
***
### Day 66: Wed, MON. 11
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/Matt Jackson
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/Beej Jorgensen
***
### Day 67: Thu, MON. 12
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/TBD
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/Beej Jorgensen
***
### Day 68: Fri, MON. 13
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/NEW_SPRINT_CHALLENGE): NEW_SPRINT_CHALLENGE
#### [Brown Bag](LINK) w/SPEAKER: TOPIC <---- Eileen Introduction to C Pointers
#### [Sprint Challenge Review](VIDEO_RECORDED_NOT_POSTED) w/Beej Jorgensen
***
# Week 15: Apr. 16 - 20
## Intro to C and Operating Systems w/INSTRUCTOR
- Pre-Class video:
## Assignments
- GitHub Repositories
### Day ##: Mon, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Tue, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Wed, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Thu, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Fri, MON. ##
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/NEW_SPRINT_CHALLENGE): NEW_SPRINT_CHALLENGE
#### [Brown Bag](LINK) w/SPEAKER: TOPIC
#### [Sprint Challenge Review](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
# Week 16: Apr. 23 - 27
## Processes, System Calls, and Scheduling w/INSTRUCTOR
- Pre-Class video:
## Assignments
- GitHub Repositories
### Day ##: Mon, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Tue, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Wed, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Thu, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Fri, MON. ##
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/NEW_SPRINT_CHALLENGE): NEW_SPRINT_CHALLENGE
#### [Brown Bag](LINK) w/SPEAKER: TOPIC
#### [Sprint Challenge Review](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
Month 5: May, 2018
# Week 17: Apr. 30 - May 4
## Theory of Computation/Algorithms w/INSTRUCTOR
- Pre-Class video:
## Assignments
- GitHub Repositories
### Day ##: Mon, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Tue, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Wed, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Thu, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Fri, MON. ##
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/NEW_SPRINT_CHALLENGE): NEW_SPRINT_CHALLENGE
#### [Brown Bag](LINK) w/SPEAKER: TOPIC
#### [Sprint Challenge Review](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
# Week 18: May. 7 - 11
## Graphs w/INSTRUCTOR
- Pre-Class video:
## Assignments
- GitHub Repositories
### Day ##: Mon, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Tue, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Wed, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Thu, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Fri, MON. ##
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/NEW_SPRINT_CHALLENGE): NEW_SPRINT_CHALLENGE
#### [Brown Bag](LINK) w/SPEAKER: TOPIC
#### [Sprint Challenge Review](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
# Week 19: May. 14 - 18
## Security/Cellular Automata/Capstone Prep w/INSTRUCTOR
- Pre-Class video:
## Assignments
- GitHub Repositories
### Day ##: Mon, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Tue, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Wed, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Thu, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Fri, MON. ##
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/NEW_SPRINT_CHALLENGE): NEW_SPRINT_CHALLENGE
#### [Brown Bag](LINK) w/SPEAKER: TOPIC
#### [Sprint Challenge Review](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
# Week 20: May. 21 - 25
## Python/Django I w/INSTRUCTOR
- Pre-Class video:
## Assignments
- GitHub Repositories
### Day ##: Mon, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Tue, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Wed, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Thu, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Fri, MON. ##
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/NEW_SPRINT_CHALLENGE): NEW_SPRINT_CHALLENGE
#### [Brown Bag](LINK) w/SPEAKER: TOPIC
#### [Sprint Challenge Review](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
Month 6: June, 2018
# Week 21: May. 29 - Jun. 1
## Python/Django II/Career Development w/INSTRUCTOR
- Pre-Class video:
## Assignments
- GitHub Repositories
### Day ##: Mon, MON. ##
#### Memorial Day
***
### Day ##: Tue, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Wed, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Thu, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Fri, MON. ##
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/NEW_SPRINT_CHALLENGE): NEW_SPRINT_CHALLENGE
#### [Brown Bag](LINK) w/SPEAKER: TOPIC
#### [Sprint Challenge Review](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
# Week 22: Jun. 4 - 8
## Python/Django III/Career Development w/INSTRUCTOR
- Pre-Class video:
## Assignments
- GitHub Repositories
### Day ##: Mon, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Tue, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Wed, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Thu, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Fri, MON. ##
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/NEW_SPRINT_CHALLENGE): NEW_SPRINT_CHALLENGE
#### [Brown Bag](LINK) w/SPEAKER: TOPIC
#### [Sprint Challenge Review](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
# Week 23: Jun. 11 - 15
## Capstone (Progress Demo 1)/Career Development w/INSTRUCTOR
- Pre-Class video:
## Assignments
- GitHub Repositories
### Day ##: Mon, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Tue, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Wed, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Thu, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Fri, MON. ##
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/NEW_SPRINT_CHALLENGE): NEW_SPRINT_CHALLENGE
#### [Brown Bag](LINK) w/SPEAKER: TOPIC
#### [Sprint Challenge Review](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
# Week 24: Jun. 18 - 22
## Capstone (Progress Demo 2)/Career Development w/INSTRUCTOR
- Pre-Class video:
## Assignments
- GitHub Repositories
### Day ##: Mon, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Tue, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Wed, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Thu, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Fri, MON. ##
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/NEW_SPRINT_CHALLENGE): NEW_SPRINT_CHALLENGE
#### [Brown Bag](LINK) w/SPEAKER: TOPIC
#### [Sprint Challenge Review](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
Month 7: July, 2018
# Week 25: MON. 25 - 29
## Capstone (Brown Bag)/Career Development w/INSTRUCTOR
- Pre-Class video:
## Assignments
- GitHub Repositories
### Day ##: Mon, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Tue, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Wed, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Thu, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Fri, MON. ##
#### [Sprint Challenge Repository on GitHub](https://github.com/LambdaSchool/NEW_SPRINT_CHALLENGE): NEW_SPRINT_CHALLENGE
#### [Brown Bag](LINK) w/SPEAKER: TOPIC
#### [Sprint Challenge Review](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
# Week 26: Jul. 2 - 6
## HACKATHON #2
## Assignments
- GitHub Repositories
### Day ##: Mon, MON. ##
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Tue, MON. ##
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Wed, MON. ##
#### [Hackathon 2: Presentations](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Thu, MON. ## - BREAK
***
### Day ##: Fri, MON. ## - BREAK
***
# Week 27: Jul. 9 - 13
## Capstone(Final/Public Demo)/Career Development w/INSTRUCTOR
- Pre-Class video:
## Assignments
- GitHub Repositories
### Day ##: Mon, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Tue, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Wed, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Thu, MON. ##
#### [Code Challenge ##: CODE_CHALLENGE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
#### [LECTURE](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
### Day ##: Fri, MON. ##
#### [Final Hoorah!](LINK) w/SPEAKER: TOPIC
#### [Publc Demo](VIDEO_RECORDED_NOT_POSTED) w/SPEAKER
***
Code Challenges
Consecutive Strings Solution

- https://piazza.com/class/jc6vhnh8mdl5pw?cid=40
```js
/*
You are given an array of strings called arr and an integer k.
Your task is to return the longest string consisting of k consecutive
strings from the array.
n being the length of the string array, if n = 0 or k > n or k <= 0 return "".
*/
function longestConsecutive(arr, k) {
// n being the length of the string array, if n = 0 or k > n or k <= 0 return "".
// n = arr.length
if (arr.length === 0 || arr.length < k || k <= 0) return '';
// return the longest string consisting of k consecutive strings from the array.
return arr
.map((value, index) => (
arr.slice(index, index + k).join('')
))
.reduce((longest, current) => (current.length > longest.length) ? current : longest);
}
// TEST SUITE - swEEt!
// console.log(longestConsecutive([], 1), "empty string") // <--- '' - arr.length === 0
// console.log(longestConsecutive(["one"], 2), "empty string") // <--- '' - arr.length < k
// console.log(longestConsecutive(['something'], -1), "empty string") // <--- '' - k <= 0
// const array = ['1', '22', '333', '55555', '4444', 'xx', '666666', 'ggg', 'q', 'kk'];
// console.log(array.length); // <--- 10
// console.log(array.slice(3, 6)); // <--- [ '55555', '4444', 'xx' ]
// console.log(array.join('')); // <--- 122333555554444xx666666gggqkk
// console.log(array.map((value, index) => (array.slice(index, index + 2).join('')))); // <--- ugly
// console.log(array.reduce((longest, current) => current.length > longest.length ? current : longest)); // <--- six sixes
// console.log(longestConsecutive(["zone", "abigail", "theta", "form", "libe", "zas"], 2)) // <--- "abigailtheta"
// console.log(longestConsecutive(["zone", "abigail", "theta", "antidisestablishmentarianism", "form", "libe", "zas"], 3)) // <--- abi theta anti
// console.log(longestConsecutive(["zone", "abigail", "theta", "antidisestablishmentarianism", "capybara", "form", "libe", "zas"], 3)) // <--- theta anti capy
/*
RESOURCES: google search "MDN {method name}", W3 schools, Free Code Camp
ARRAY METHODS
SLICE: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice
JOIN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/join
MAP: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map
REDUCE: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce
ALSO GOOD: https://medium.freecodecamp.org/reduce-f47a7da511a9
*/
```
#### Truth Table: Inclusive Or
- If ANY one of the variables evaluates to `true`, then the entire proposition evaluates to `true`.
- There are three terms: `phi`, `psi` & `fry`.
- Each term has two possible states: `true` or `false`.
- The total number of _possible_ combination of three terms which each have two possible states is...?
- Number of ***states*** (either true or false) raised to the power of the number of ***terms*** (phi, psi & fry), i.e. 23, or (2 \* 2 \* 2), a.k.a. *eight*:
| # | phi | psi | fry | "phi inclusive_or psi inclusive_or fry" |
|:---|:---:|:---:|:---:|:---:|
| 1) | T | T | T | True |
| 2) | T | T | F | True |
| 3) | T | F | T | True |
| 4) | T | F | F | True |
| 5) | F | T | T | True |
| 6) | F | T | F | True |
| 7) | F | F | T | True |
| 8) | F | F | F | False |
#### Exclusive Or (with only two terms)
- Just a quick explanation of the difference between exclusive and inclusive or logic.
- An _exclusive_ "or" operator evaluates to true when ONLY one of the terms (operands) is true.
- i.e. "I will have either a cheese burger, or pizza, but _not both_"
| Φ | Ψ | "Φ exclusive_or Ψ" |
|:---:|:---:|:---:|
| T | T | False |
| T | F | True |
| F | T | True |
| F | F | False |
Sum Of Digits Solutions
```js
/*
* Sum Of Digits
* Write a function called sumOfDigits that given a positive integer, returns the sum of its digits.
* Assume all numbers will be positive.
*
* Input: 23 >>>function>>> Output: 5
* Input: 496 >>>function>>> Output: 19
*/
// SOLUTION 1 - everyone loves for loops!
function sumOfDigits (num) {
const integerStrings = ('' + num).split(''); // does the same thing as the next line
// const integerStrings = String(num).split(''); // I find this reads better
console.log(typeof(integerStrings)) // <--- 'object' (JA arrays are objects - Everything Is Objects!!!)
const len = integerStrings.length;
console.log(integerStrings); // <--- should return an array of strings
// declaring variables to be used in the for loop
let i = 0,
sum = 0;
// For-Loop Love!
for (i; i < len; i++) {
sum += Number(integerStrings[i]); // <--- turns the strings into type: integers
console.log(sum); // <--- sum of adding up all ints in the array of ints
}
return sum;
}
// SOLUTION 2 - using map() and reduce()
function sumOfDigits (num) {
const stringIntegers = String(num).split('');
console.log(`strInts.len: ${stringIntegers.length} & the strInts ${stringIntegers} are: ${typeof(stringIntegers[0])}`);
const integers = stringIntegers.map(num => Number(num));
console.log(`integers: ${integers} are: ${typeof(integers[0])}`);
const sum = integers.reduce((sum, n) => sum + n, 0);
return sum;
}
// CS1 MODEL SOLUTION - w/dot chaining
function sumOfDigits(num) {
const digits = (String(num)).split('')
.map(num => parseInt(num))
.reduce((sum, n) => sum + n);
return digits;
}
// MODEL SOLUTION - just return it!
function sumOfDigits(num) {
return (String(num)).split('')
.map(num => parseInt(num))
.reduce((sum, n) => sum + n);
}
/* eslint no-console: 0 */
// TEST SUITE
const x = 12345;
console.log(sumOfDigits(x)); // ~~~> 15
console.log(sumOfDigits(23)); // ~~~> 5
console.log(sumOfDigits(496)); // ~~~> 19
console.log(typeof(sumOfDigits(496))); // ~~~> number
console.log(typeof(Number(x))); // <--- number
console.log(typeof(String(x))); // <--- string
console.log(typeof(parseInt(x))); // <--- number
console.log(String(x).split('')); // <--- [ '1', '2', '3', '4', '5' ]
```
To Binary Strings
```js
/*
Given a positive (or 0) number, return a string of 1's and 0's representing it's binary value:
toBinaryString(6) should return "110" (no leading 0).
Use of the native method number.toString(2); is disallowed.
*/
// A console.log() heavy solution
function toBinaryString(number) {
let r = '';
while (number > 0) {
console.log(`number starts: ${number}`);
const bit = (Math.floor(number % 2) !== 0) ? '1' : '0';
console.log(`bit : ${bit}`);
r = bit + r;
console.log(`the return is: ${r} <--- it's GROWING`);
number = Math.floor(number / 2);
console.log(`number is now: ${number}\n`);
}
console.log('COUNTING IN BINARY IS SO MUCH FUN!!!!!');
return r;
}
// // Satish
// function toBinaryString(number) {
// if (number === 0) return 0;
// let res = '';
// while (number > 0) {
// res = (number % 2) + res;
// number = Math.floor(number / 2);
// }
// return res;
// }
// // Repli.it Model Solution
// function toBinaryString(number) {
// let r = '';
// while(number > 0) {
// r = number % 2 + r; // r is number remainder 0 or 1 in string
// number >>= 1; // number >>= 1; what does that mean
// }
// return r || "0";
// }
// TEST SUITE
// console.log(toBinaryString(0)); // <--- 0
// console.log(toBinaryString(1)); // <--- 1
// console.log(toBinaryString(2)); // <--- 10
// console.log(toBinaryString(3)); // <--- 11
// console.log(toBinaryString(4)); // <--- 100
// console.log(toBinaryString(5)); // <--- 101
// console.log(toBinaryString(6)); // <--- 110
// console.log(toBinaryString(7)); // <--- 111
// console.log(toBinaryString(8)); // <--- 1000
// console.log(toBinaryString(9)); // <--- 1001
// console.log(toBinaryString(10)); // <--- 1010
// console.log(toBinaryString(11)); // <--- 1011
// console.log(toBinaryString(12)); // <--- 1100
console.log(toBinaryString(13)); // <--- 1101
// console.log(toBinaryString(14)); // <--- 1110
// console.log(toBinaryString(15)); // <--- 1111
// console.log(toBinaryString(16)); // <--- 10000
```