From beff2ad363c2f9f6e9811a1235ca356f20ef3263 Mon Sep 17 00:00:00 2001 From: Psycho_Coder Date: Mon, 10 Oct 2016 12:13:30 +0530 Subject: [PATCH 1/7] A few fixes/organized to the courses playlist --- README.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 2e6a941..8cbc5a1 100644 --- a/README.md +++ b/README.md @@ -1651,7 +1651,7 @@ Sit back and enjoy. "netflix and skill" :P - [ ] [Computer Science 70, 001 - Spring 2015 - Discrete Mathematics and Probability Theory](https://www.youtube.com/playlist?list=PL-XXv-cvA_iD8wQm8U0gG_Z1uHjImKXFy) -- [ ] [Discrete Mathematics (19 videos)](https://www.youtube.com/playlist?list=PL3o9D4Dl2FJ9q0_gtFXPh_H4POI5dK0yG) +- [ ] [Discrete Mathematics by Shai Simonson (19 videos)](https://www.youtube.com/playlist?list=PL3o9D4Dl2FJ9q0_gtFXPh_H4POI5dK0yG) - [ ] CSE373 - Analysis of Algorithms (25 videos) - [Skiena lectures from Algorithm Design Manual](https://www.youtube.com/watch?v=ZFjhkohHdAA&list=PLOtl7M3yp-DV69F32zdK7YJcNXpTunF2b&index=1) @@ -1686,13 +1686,14 @@ Sit back and enjoy. "netflix and skill" :P - [ ] [MIT 6.854: Advanced Algorithms, Spring 2016 (24 videos)](https://www.youtube.com/playlist?list=PL6ogFv-ieghdoGKGg2Bik3Gl1glBTEu8c) +- [ ] [HARVARD COMPSCI 224: Advanced Algorithms (25 videos)](https://www.youtube.com/playlist?list=PL2SOU6wwxB0uP4rJgf5ayhHWgw7akUWSf) + - [ ] [MIT 6.858 Computer Systems Security, Fall 2014](https://www.youtube.com/watch?v=GqmQg-cszw4&index=1&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) -- [ ] Stanford: Programming Paradigms (17 videos) - - [Course on C and C++](https://www.youtube.com/watch?v=jTSvthW34GU&list=PLC0B8B318B7394B6F&nohtml5=False) - -- [ ] [Introduction to Cryptography](https://www.youtube.com/watch?v=2aHkqB2-46k&feature=youtu.be) - - [more in series (not in order)](https://www.youtube.com/channel/UC1usFRN4LCMcfIV7UjHNuQg) +- [ ] [Stanford: Programming Paradigms (17 videos)](https://www.youtube.com/view_play_list?p=9D558D49CA734A02) + +- [ ] [Introduction to Cryptography by Christof Paar](https://www.youtube.com/playlist?list=PL6N5qY2nvvJE8X75VkXglSrVhLv1tVcfy) + - [Course Website along with Slides and Problem Sets](http://www.crypto-textbook.com/) - [ ] [Mining Massive Datasets - Stanford University (94 videos)](https://www.youtube.com/playlist?list=PLLssT5z_DsK9JDLcT8T62VtzwyW9LNepV) From d5e94b5a46a369edb60a995fc43e397685f103ef Mon Sep 17 00:00:00 2001 From: Psycho_Coder Date: Mon, 10 Oct 2016 12:22:25 +0530 Subject: [PATCH 2/7] Minor fix on video counts --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8cbc5a1..b8ab62e 100644 --- a/README.md +++ b/README.md @@ -1690,7 +1690,7 @@ Sit back and enjoy. "netflix and skill" :P - [ ] [MIT 6.858 Computer Systems Security, Fall 2014](https://www.youtube.com/watch?v=GqmQg-cszw4&index=1&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) -- [ ] [Stanford: Programming Paradigms (17 videos)](https://www.youtube.com/view_play_list?p=9D558D49CA734A02) +- [ ] [Stanford: Programming Paradigms (27 videos)](https://www.youtube.com/view_play_list?p=9D558D49CA734A02) - [ ] [Introduction to Cryptography by Christof Paar](https://www.youtube.com/playlist?list=PL6N5qY2nvvJE8X75VkXglSrVhLv1tVcfy) - [Course Website along with Slides and Problem Sets](http://www.crypto-textbook.com/) From 79c494e2997716421ef79126fb8e40a7a56f7d4c Mon Sep 17 00:00:00 2001 From: John Washam Date: Mon, 10 Oct 2016 09:41:13 -0700 Subject: [PATCH 3/7] Added Machine Learning books and links. --- README.md | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index b8ab62e..77037b9 100644 --- a/README.md +++ b/README.md @@ -1582,16 +1582,20 @@ You're never really done. - [ ] [Tensorflow Tutorials](https://www.tensorflow.org/versions/r0.11/tutorials/index.html) - [ ] [Practical Guide to implementing Neural Networks in Python](using Theano)])http://www.analyticsvidhya.com/blog/2016/04/neural-networks-python-theano/) - Courses: - - [ ] [Great starter course: Machine Learning](https://www.coursera.org/learn/machine-learning) + - [Great starter course: Machine Learning](https://www.coursera.org/learn/machine-learning) - [videos only](https://www.youtube.com/playlist?list=PLZ9qNFMHZ-A4rycgrgOYma6zxF4BZGGPW) - see videos 12-18 for a review of linear algebra (14 and 15 are duplicates) - - [ ] [Neural Networks for Machine Learning](https://www.coursera.org/learn/neural-networks) - - [ ] [Google's Deep Learning Nanodegree](https://www.udacity.com/course/deep-learning--ud730) - - [ ] [Google/Kaggle Machine Learning Engineer Nanodegree](https://www.udacity.com/course/machine-learning-engineer-nanodegree-by-google--nd009) - - [ ] [Self-Driving Car Engineer Nanodegree](https://www.udacity.com/drive) - - [ ] [Metis Online Course ($99 for 2 months)](http://www.thisismetis.com/explore-data-science) + - [Neural Networks for Machine Learning](https://www.coursera.org/learn/neural-networks) + - [Google's Deep Learning Nanodegree](https://www.udacity.com/course/deep-learning--ud730) + - [Google/Kaggle Machine Learning Engineer Nanodegree](https://www.udacity.com/course/machine-learning-engineer-nanodegree-by-google--nd009) + - [Self-Driving Car Engineer Nanodegree](https://www.udacity.com/drive) + - [Metis Online Course ($99 for 2 months)](http://www.thisismetis.com/explore-data-science) - Resources: - - Great book: Data Science from Scratch: First Principles with Python: https://www.amazon.com/Data-Science-Scratch-Principles-Python/dp/149190142X + - Books: + - [Python Machine Learning](https://www.amazon.com/Python-Machine-Learning-Sebastian-Raschka/dp/1783555130/) + - [Data Science from Scratch: First Principles with Python](https://www.amazon.com/Data-Science-Scratch-Principles-Python/dp/149190142X) + - [Introduction to Machine Learning with Python](https://www.amazon.com/Introduction-Machine-Learning-Python-Scientists/dp/1449369413/) + - [Machine Learning for Software Engineers](https://github.com/ZuzooVn/machine-learning-for-software-engineers) - Data School: http://www.dataschool.io/ - ### Go From 2de6712194fb2c9645bd09d04fd5d4419fc2b0c3 Mon Sep 17 00:00:00 2001 From: John Washam Date: Mon, 10 Oct 2016 11:23:34 -0700 Subject: [PATCH 4/7] Slightly rearranged coding practice section. --- README.md | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index 77037b9..6cd56b2 100644 --- a/README.md +++ b/README.md @@ -63,6 +63,7 @@ sometimes word-for-word in Google's coaching notes. - [Implement system routines](#implement-system-routines) - [String searching & manipulations](#string-searching--manipulations) - [Final Review](#final-review) +- [Coding Question Practice](#coding-question-practice) - [Books](#books) - [Coding exercises/challenges](#coding-exerciseschallenges) - [Once you're closer to the interview](#once-youre-closer-to-the-interview) @@ -1182,6 +1183,18 @@ You'll get more graph practice in Skiena's book (see Books section below) and th - [ ] Merge Sort: https://www.youtube.com/watch?v=GCae1WNvnZM +## Coding Question Practice + +- [ ] [Great intro (copied from System Design section): Algorithm design:](http://www.hiredintech.com/algorithm-design/) +- [ ] [How to Find a Solution](https://www.topcoder.com/community/data-science/data-science-tutorials/how-to-find-a-solution/) +- [ ] [How to Dissect a Topcoder Problem Statement](https://www.topcoder.com/community/data-science/data-science-tutorials/how-to-dissect-a-topcoder-problem-statement/) +- [ ] [Mathematics for Topcoders](https://www.topcoder.com/community/data-science/data-science-tutorials/mathematics-for-topcoders/) +- [ ] [Dynamic Programming – From Novice to Advanced](https://www.topcoder.com/community/data-science/data-science-tutorials/dynamic-programming-from-novice-to-advanced/) + +- [MIT Interview Materials](https://courses.csail.mit.edu/iap/interview/materials.php) + +- [Exercises for getting better at a given language](http://exercism.io/languages) + ## Books ### Mentioned in Google Coaching @@ -1218,6 +1231,10 @@ You'll get more graph practice in Skiena's book (see Books section below) and th - [ ] [The Unix Programming Environment](http://product.half.ebay.com/The-UNIX-Programming-Environment-by-Brian-W-Kernighan-and-Rob-Pike-1983-Other/54385&tg=info) + + These two were very recommended. + + - [ ] [Programming Pearls](http://www.amazon.com/Programming-Pearls-2nd-Jon-Bentley/dp/0201657880) - [ ] [Algorithms and Programming: Problems and Solutions](http://www.amazon.com/Algorithms-Programming-Solutions-Alexander-Shen/dp/0817638474) @@ -1236,20 +1253,6 @@ You'll get more graph practice in Skiena's book (see Books section below) and th Once you've learned your brains out, put those brains to work. Take coding challenges every day, as many as you can. -Programming Question Prep: - -- [ ] [Great intro (copied from System Design section): Algorithm design:](http://www.hiredintech.com/algorithm-design/) -- [ ] [How to Find a Solution](https://www.topcoder.com/community/data-science/data-science-tutorials/how-to-find-a-solution/) -- [ ] [How to Dissect a Topcoder Problem Statement](https://www.topcoder.com/community/data-science/data-science-tutorials/how-to-dissect-a-topcoder-problem-statement/) -- [ ] [Mathematics for Topcoders](https://www.topcoder.com/community/data-science/data-science-tutorials/mathematics-for-topcoders/) -- [ ] [Dynamic Programming – From Novice to Advanced](https://www.topcoder.com/community/data-science/data-science-tutorials/dynamic-programming-from-novice-to-advanced/) - -- [MIT Interview Materials](https://courses.csail.mit.edu/iap/interview/materials.php) - -- [Exercises for getting better at a given language](http://exercism.io/languages) - -Programming: - - [LeetCode](https://leetcode.com/) - [TopCoder](https://www.topcoder.com/) - [Project Euler (math-focused)](https://projecteuler.net/index.php?section=problems) From abe7a9df9942c89c30e498d50f149e25e171e560 Mon Sep 17 00:00:00 2001 From: John Washam Date: Mon, 10 Oct 2016 11:34:57 -0700 Subject: [PATCH 5/7] Updated non-working MIT interview materials link with same from the Wayback Machine. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6cd56b2..359991e 100644 --- a/README.md +++ b/README.md @@ -1191,7 +1191,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th - [ ] [Mathematics for Topcoders](https://www.topcoder.com/community/data-science/data-science-tutorials/mathematics-for-topcoders/) - [ ] [Dynamic Programming – From Novice to Advanced](https://www.topcoder.com/community/data-science/data-science-tutorials/dynamic-programming-from-novice-to-advanced/) -- [MIT Interview Materials](https://courses.csail.mit.edu/iap/interview/materials.php) +- [MIT Interview Materials](https://web.archive.org/web/20160906124824/http://courses.csail.mit.edu/iap/interview/materials.php) - [Exercises for getting better at a given language](http://exercism.io/languages) From 15db7eada6b1297777cd26ca5a63e33984ecdb78 Mon Sep 17 00:00:00 2001 From: John Washam Date: Mon, 10 Oct 2016 16:22:19 -0700 Subject: [PATCH 6/7] Added a minor note. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 359991e..24d421d 100644 --- a/README.md +++ b/README.md @@ -319,7 +319,7 @@ You can see my code here: You don't need to memorize the guts of every algorithm. -Write code on a whiteboard, not a computer. Test with some sample inputs. Then test it out on a computer. +Write code on a whiteboard or paper, not a computer. Test with some sample inputs. Then test it out on a computer. ## Prerequisite Knowledge From 071d21471d78a198f0ae5c3bede6bfdb51a0ac8e Mon Sep 17 00:00:00 2001 From: John Washam Date: Mon, 10 Oct 2016 17:11:45 -0700 Subject: [PATCH 7/7] Moved some Topcoder items down. --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 24d421d..48c5531 100644 --- a/README.md +++ b/README.md @@ -1186,8 +1186,6 @@ You'll get more graph practice in Skiena's book (see Books section below) and th ## Coding Question Practice - [ ] [Great intro (copied from System Design section): Algorithm design:](http://www.hiredintech.com/algorithm-design/) -- [ ] [How to Find a Solution](https://www.topcoder.com/community/data-science/data-science-tutorials/how-to-find-a-solution/) -- [ ] [How to Dissect a Topcoder Problem Statement](https://www.topcoder.com/community/data-science/data-science-tutorials/how-to-dissect-a-topcoder-problem-statement/) - [ ] [Mathematics for Topcoders](https://www.topcoder.com/community/data-science/data-science-tutorials/mathematics-for-topcoders/) - [ ] [Dynamic Programming – From Novice to Advanced](https://www.topcoder.com/community/data-science/data-science-tutorials/dynamic-programming-from-novice-to-advanced/) @@ -1253,6 +1251,9 @@ You'll get more graph practice in Skiena's book (see Books section below) and th Once you've learned your brains out, put those brains to work. Take coding challenges every day, as many as you can. +- [ ] [How to Find a Solution](https://www.topcoder.com/community/data-science/data-science-tutorials/how-to-find-a-solution/) +- [ ] [How to Dissect a Topcoder Problem Statement](https://www.topcoder.com/community/data-science/data-science-tutorials/how-to-dissect-a-topcoder-problem-statement/) + - [LeetCode](https://leetcode.com/) - [TopCoder](https://www.topcoder.com/) - [Project Euler (math-focused)](https://projecteuler.net/index.php?section=problems)