├── .assets
├── abstract_workflow_v1.0.svg
├── git_workflow.gif
└── workflow_steps_v1.0.svg
├── LICENSE
├── README.md
├── SQL_and_relational_databases.md
├── cli.md
├── code_review.md
├── computer_science.md
├── data_driven_research.md
├── data_science.md
├── edx.md
├── git_and_github.md
├── group_norms.md
├── mitx.600.2
├── Graph Problem.md
├── Inferential Statistic.md
├── Knapsack Problem.md
└── Stochastic Thinking.md
├── object_oriented_programming.md
├── open_source.md
├── pair_programming.md
├── python.md
├── retrospectives.md
├── tech_foundations.md
└── vscode.md
/.assets/abstract_workflow_v1.0.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/.assets/git_workflow.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/MIT-Emerging-Talent/ET6-Suggested-Study/2c569686887e4f7d7758a8c217bc7dd7aac878f4/.assets/git_workflow.gif
--------------------------------------------------------------------------------
/.assets/workflow_steps_v1.0.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2024 MIT Emerging Talent
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Suggested Study
2 |
3 | A collection of helpful links to support you through Emerging Talent. Do you
4 | know something we're missing, send a Pull Request! All languages are welcome.
5 |
6 | ## Learning in Public
7 |
8 | - [Learn in Public (swyx)](https://www.swyx.io/learn-in-public): A blog post
9 | explaining what it means to Learn in Public, and why this is a good idea.
10 | Highly recommended! - _English, 한국어, 日本語, Español, 中文, Português,
11 | Deutsch, Français, فارسی, हिंदी._
12 | - [Learning Gears (swyx)](https://www.swyx.io/learning-gears): A blog post
13 | explaining how to get started Learning in Public with 3 "gears". - _English,
14 | Português_
15 | - [Pick up What They Put Down (swyx)](https://www.swyx.io/puwtpd): A blog post
16 | describing one strategy for Learning in Public - _English, Português_
17 | - [Why Do I Create Free Data Science and Machine Learning Educational Content - For Revenge (Pablo Caceres)](https://pabloinsente.github.io/why-ds-content):
18 | A motivating article about the barriers to learning programming or data
19 | science and what you can do about it.
20 |
21 | ## Being a Developer
22 |
23 | - [Be reasonable with yourself](http://norvig.com/21-days.html) - Programming
24 | takes work, then more work, followed by a lot of practice.
25 | - [What is programming?](https://shawnr.gitbooks.io/practical-introduction-to-javascript/content/what-is-programming/)
26 | - Be bad at something, it's
27 | [good for you](https://www.ted.com/talks/eduardo_briceno_how_to_get_better_at_the_things_you_care_about).
28 | - Study [smarter](https://youtu.be/Xt5qpbiqw2g?t=297), not harder!
29 | - [Tips to the beginner developer](https://www.codementor.io/learn-programming/tips-on-becoming-a-software-engineer).
30 | - [What do programmers do?](https://www.youtube.com/watch?v=g4a7_HH9Wbg)
31 | - [Key to being a developer](https://medium.com/@rhamedy/key-habits-and-things-i-wish-i-knew-earlier-as-a-developer-43c9466a0407)
32 | - [Top 8 Developer Habits](https://www.youtube.com/watch?v=DwQ7psiU23I&index=1&list=PL0zVEGEvSaeGY3RMjGo4CgMPN42_U9Glu)
33 | - [peternixey](http://peternixey.com/post/83510597580/how-to-be-a-great-software-developer) -
34 | long, but worth every word.
35 | - [comparing yourself to others](https://medium.freecodecamp.org/a-better-way-to-compare-yourself-43cf37616570)
36 | - [Effective learning](https://github.com/DeNepo/learning)
37 | - [Write Code Every Day](https://johnresig.com/blog/write-code-every-day/)
38 | - [Weekly Review Day](https://www.youtube.com/watch?v=PlTrxpNaZI8)
39 | - [How I Became a Better Programmer](https://archive.jlongster.com/How-I-Became-Better-Programmer)
40 | - [Building Software Together](https://buildtogether.tech/) A student's guide to
41 | being a compassionate programmer - The technical parts are more advanced than
42 | what you're learning now, but all the rest is gold.
43 |
44 | ## Markdown
45 |
46 | - [Markdown Tutorial (gjtorikian)](https://www.markdowntutorial.com): If you
47 | have ten minutes, you can learn Markdown! In each lesson, you’ll be given an
48 | introduction to a single Markdown concept. Then, you’ll be asked to complete
49 | several exercises with that new knowledge.
50 | - _English, Spanish, French, Korean, Japanese, Dutch, Simplified Chinese,
51 | Traditional Chinese_
52 | - [Markdown Guide (Matt Cone)](https://www.markdownguide.org/): The Markdown
53 | Guide is a free and open-source reference guide that explains how to use
54 | Markdown, the simple and easy-to-use markup language you can use to format
55 | virtually any document.
56 | - [Commonmark Tutorial](https://commonmark.org/help/tutorial/): Each lesson
57 | introduces a single Markdown concept with an example. When you see a red
58 | pulsing circle in the example, select to examine it for details. After
59 | studying the example, try a few practice exercises with your new knowledge.
60 | - [Markdown Crash Course (Brad Traversy)](https://www.youtube.com/watch?v=HUBNt18RFbo):
61 | In this video we will discuss what Markdown is, what it is used for and we
62 | will jump into VSCode and learn the entire syntax in around 10 minutes. We
63 | will also push to a Github repo to see what it looks like there.
64 | - [Introduction to Markdown in Visual Studio Code _with Markdown worksheet!_ (James Q Quick)](https://www.youtube.com/watch?v=pTCROLZLhDM):
65 | In this video, we will walk through the basics of Markdown such as creating
66 | headers, lists, tables, etc. We will use Visual Studio Code (VSCode) which
67 | allows us to see a live preview of our Markdown as we type in code.
68 | - [A list of all the MarkdownLint errors and how to fix them](https://github.com/markdownlint/markdownlint/blob/main/docs/RULES.md)
69 |
70 | ## READMEs
71 |
72 | - Writing Good READMEs
73 | - [readme.so](https://readme.so/)
74 | - [makeareadme.com](https://www.makeareadme.com/)
75 | - [bulldogjob](https://bulldogjob.com/news/449-how-to-write-a-good-readme-for-your-github-project)
76 | - [meakaakka](https://medium.com/@meakaakka/a-beginners-guide-to-writing-a-kickass-readme-7ac01da88ab3)
77 | - [freecodecamp](https://www.freecodecamp.org/news/how-to-write-a-good-readme-file/)
78 | - [awesome README templates](https://github.com/elangosundar/awesome-README-templates)
79 | - README Driven Development
80 | - [deterministic.space](https://deterministic.space/readme-driven-development.html)
81 | - [tom preston werner](https://tom.preston-werner.com/2010/08/23/readme-driven-development.html)
82 |
83 | ## Missing Semester
84 |
85 | > _Chinese (Simplified), Chinese (Traditional), Japanese, Korean, Portuguese,
86 | > Russian, Serbian, Spanish, Turkish, Vietnamese, Arabic, Italian, Persian,
87 | > German_
88 |
89 | The Missing Semester of Your CS Education (Anish, Jon and Jose):
90 |
91 | - [Course site](https://missing.csail.mit.edu/)
92 | - [YouTubre playlist](https://www.youtube.com/playlist?list=PLyzOVJj3bHQuloKGG59rS43e29ro7I57J)
93 |
94 | We’ll teach you how to master the command-line, use a powerful text editor, use
95 | fancy features of version control systems, and much more!
96 |
97 | - Shell Tools and Scripting
98 | - Vim Editor
99 | - Data Wrangling
100 | - Command-line Environment
101 | - CLI
102 | - Version Control (Git)
103 | - Debugging and Profiling
104 | - Metaprogramming
105 | - Security and Cryptography
106 | - Keyboard remappin
107 | - Daemons
108 | - FUSE
109 | - Backups
110 | - APIs
111 | - Common command-line flags/patterns
112 | - Window managers
113 | - VPNs
114 | - Markdown
115 | - Hammerspoon (desktop automation on macOS)
116 | - Booting + Live USBs
117 | - Docker
118 | - Vagrant
119 | - VMs
120 | - Cloud
121 | - OpenStack
122 | - Notebook programming
123 | - GitHub
124 |
125 |
--------------------------------------------------------------------------------
/SQL_and_relational_databases.md:
--------------------------------------------------------------------------------
1 | # SQL and Relational Databases
2 |
3 | - [HYF study book](https://hackyourfuture.github.io/study/#/databases/README)
4 |
--------------------------------------------------------------------------------
/cli.md:
--------------------------------------------------------------------------------
1 | # Command Line interface
2 |
3 | - [relative vs. absolute paths](https://www.youtube.com/watch?v=ephId3mYu9o)
4 | - [The Coding Train](https://www.youtube.com/watch?v=FnkkzgYuXUM&list=PLRqwX-V7Uu6Zu_uqEA6NqhLzKLACwU74X&index=3)
5 | - [Matt's Lectures and Tutorials](https://www.youtube.com/watch?v=mUXVBMhr7Xg)
6 | - [Jesse Showalter](https://www.youtube.com/watch?v=5XgBd6rjuDQ)
7 | - [Enough to be Dangerous](https://www.learnenough.com/command-line-tutorial)
8 | - CLI games:
9 | - [bashcrawl](https://gitlab.com/slackermedia/bashcrawl/) - clone & play
10 | - [Terminus](https://web.mit.edu/mprat/Public/web/Terminus/Web/main.html) -
11 | online
12 | - [iTerm](https://sr6033.github.io/lterm/) - online
13 | - [A huge cheat sheet](https://gist.github.com/LeCoupa/122b12050f5fb267e75f)
14 |
--------------------------------------------------------------------------------
/code_review.md:
--------------------------------------------------------------------------------
1 | # Code Review
2 |
3 | - What? Why? [Wikipedia](https://en.wikipedia.org/wiki/Code_review), [Alex](https://dzone.com/articles/what-is-code-review-and-why-do-you-need-it)
4 | - [How to do code reviews like a human](https://www.youtube.com/watch?v=0t4_MfHgb_A)
5 | - [The science of code reviews](https://www.youtube.com/watch?v=EyL7mqwpZhk)
6 | - [Code review on GitHub](https://www.youtube.com/watch?v=HW0RPaJqm4g)
7 | - [An example code review](https://www.youtube.com/watch?v=cix7wQSsN7U)
8 | - [all-about-code-review](https://github.com/mgreiler/all-about-code-review)
9 | - [How to review someone else's code](https://www.youtube.com/watch?v=0t4_MfHgb_A)
10 | - [Python Code Review: Unplugged](https://www.youtube.com/playlist?list=PLP8GkvaIxJP2kFnZE14YKDNtzw9gTB0lK)
11 | - [All About Code Review](https://github.com/mgreiler/all-about-code-review)
12 | - [Pair Programming vs. Code Review](https://blog.codinghorror.com/pair-programming-vs-code-reviews/)
13 |
14 | - [Building Software Together](https://buildtogether.tech/) _a student's guide
15 | to being a compassionate programmer_ - The technical parts are more advanced
16 | than what you're learning now, but all the rest is gold.
17 |
18 | ## Code Review on GitHub
19 |
20 | - [Adding collaborators to a repository](https://www.youtube.com/watch?v=p49LRx3hYI8)
21 | - [about code reviews](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-request-reviews)
22 | - [requesting a code review](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/requesting-a-pull-request-review)
23 | - [prevent pushing to `main`](https://stackoverflow.com/a/57685576)
24 | - [Git Workflow for 2](https://github.com/hackyourfuturebelgium/git-workflow-workshop-for-two)
25 | - [Pull Requests](https://www.youtube.com/watch?v=2M16faxEQsg)
26 | - [Git & GitHub for Poets](https://www.youtube.com/watch?v=BCQHnlnPusY&list=PLRqwX-V7Uu6ZF9C0YMKuns9sLDzK6zoiV)
27 | - The Net Ninja:
28 | [11](https://www.youtube.com/watch?v=MnUd31TvBoU&list=PL4cUxeGkcC9goXbgTDQ0n_4TBzOO0ocPR&index=11)
29 | - linking PRs to Issues:
30 | [reference 1](https://help.github.com/en/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue),
31 | [reference 2](https://help.github.com/articles/autolinked-references-and-urls/)
32 | - [closing Issues using keywords](https://help.github.com/en/enterprise/2.16/user/github/managing-your-work-on-github/closing-issues-using-keywords)
33 |
--------------------------------------------------------------------------------
/computer_science.md:
--------------------------------------------------------------------------------
1 | # Computer Science
2 |
3 | - How to Think Like a Computer Scientist:
4 | [text book](https://openbookproject.net/thinkcs/python/english3e/index.html),
5 | [python notebooks](https://github.com/rambasnet/Python-Fundamentals/blob/main/README.md)
6 | - [Big O Notation](https://www.youtube.com/playlist?list=PL7g1jYj15RUPVZDU9C276SZvlJjf4hzqV&si=HThvpQHUbGCJj0Me): A youtube playlist by Kantan Coding
7 |
8 | ## Data Structures and Algorithms
9 |
10 | - [Sorting Algorithms visualized with dance and sound](https://www.youtube.com/playlist?list=PLC79D6CCBB2C7ED13): A youtube playlist that is exactly what it says it is.
11 | - [BoraXAlgo](https://www.youtube.com/@boraxalgo/featured): YouTube channel with short, clear visual explanations of different algorithms
12 | - [Data Structures And Algorithms In Python (codebasics)](https://www.youtube.com/playlist?list=PLeo1K3hjS3uu_n_a__MI_KktGTLYopZ12):
13 | YouTube tutorial with great visuals and narrated code-alongs.
14 | - [Introduction To Data Structures | Python Tutorials (Amulya's Academy)](https://www.youtube.com/watch?v=Gg2lj65aNCo&list=PLzgPDYo_3xukPJdH6hVQ6Iic7KiJuoA-l&index=6):
15 | Many short YouTube Data Structure toturials with narrated code-along, use
16 | cases, and more than one solution to challenges.
17 | - [Data Structures in Python (ThinkX Academy)](https://www.youtube.com/playlist?list=PL5-M_tYf311Ynzvi1LurjWUJ5yVo_sm-e):
18 | YouTube tutorial focusing on Graph data structures and algorithms. Narrated
19 | code-alongs and whiteboard explanations.
20 | - [Data Structures & Algorithms (CS Dojo)](https://www.youtube.com/playlist?list=PLBZBJbE_rGRV8D7XZ08LK6z-4zPoWzu5H):
21 | Introduction to Data Structures and Algorithms using Python and Java. Very
22 | good visuals, whiteboarding and explanations. Code samples available.
23 | - Algorithms and Time Complexity [Abdel Bari](https://youtube.com/playlist?list=PLDN4rrl48XKpZkf03iYFl-O29szjTrs_O)
24 | A concise playlist with clear examples, making complex concepts in algorithms and time complexity easier to understand.
25 | - [Statistics for Data Science (StatQuest with Josh Starmer)](https://youtu.be/MXaJ7sa7q-8?si=m-7rwrK08Afewznq):
26 | A YouTube playlist by StatQuest with Josh Starmer. Covers core statistics concepts in a simple, visual, and highly engaging way—ideal for beginners and those who struggle with traditional math-heavy resources.
27 |
28 |
29 |
30 | ## Algorithm Visualization Tools
31 |
32 | - [Visualgo](https://visualgo.net/en): Visualise data structures and algorithms
33 | through animation - _English, Indonesian, Chinese_
34 | - [Algorithm Visualizer](https://algorithm-visualizer.org/): Visualising data
35 | structures and algorithms through animation. Code is written in JavaScript
36 | - [PathFinding.js](https://qiao.github.io/PathFinding.js/visual/): Visualize
37 | different path-finding algorithms.
38 | - [Recursion Visualiser . Com](https://www.recursionvisualizer.com/): Visualize
39 | the recursive tree traversal for any python function.
40 | - [Recursion . Vercel . App](https://recursion.vercel.app/): Visualize the
41 | recursive tree traversal for any python, javascript or golang function. Option
42 | to visualize recursion tree with memoization.
43 | - [Recursion Visualiser (Python package)](https://pypi.org/project/recursion-visualiser/):
44 | Generate local images & gifs to visualise your recursive algorithms offline.
45 |
--------------------------------------------------------------------------------
/data_driven_research.md:
--------------------------------------------------------------------------------
1 | # Data-Driven Research
2 |
3 | - [The Art of Data Science (Roger D. Peng and Elizabeth Matsui)](https://bookdown.org/rdpeng/artofdatascience/) ([PDF version](https://ia801802.us.archive.org/11/items/datascienceebooks/artofdatascience.pdf)):
4 | What we have set out to do in this book is to write down the process of data
5 | analysis. What we describe is not a specific “formula” for data
6 | analysis—something like “apply this method and then run that test”— but rather
7 | is a general process that can be applied in a variety of situations.
8 |
9 | ## Research Questions
10 |
11 |
12 | Getting Started in Data Analysis: Topic Selection and Crafting of a Research Question (GESDA)
13 |
14 | Independent research projects start with the selection of a topic and the crafting of a feasible research question. This video maps the initial steps to help those who are trying to write a term paper, junior paper, senior thesis or a dissertation for the first time and do not know where to start or what to do. We will talk about first steps, about academic research databases, about citation manager software, about the importance of finding papers in peer-reviewed journals and the need to keep the research as simple as possible.
15 |
16 |
17 |
18 | How do you develop and refine your data analysis research questions and hypotheses?
19 |
20 | Data analysis is the process of transforming raw data into meaningful insights that can inform decision-making, problem-solving, or knowledge discovery. However, before you can dive into the data, you need to have a clear and focused research question and hypothesis that guide your analysis. In this article, you will learn how to develop and refine your data analysis research questions and hypotheses using some best practices and standards.
21 |
22 |
23 |
24 | How to Write a Research Question in 2024: Types, Steps, and Examples (Imed Bouchrika)
25 |
26 | A detailed step-by-step walk-through for choosing a domain, topic and question. After this article your research questions will be FINER ;)
27 |
28 |
29 |
30 | How to Write a Good Research Question (w/ Examples) (Wordvice KH)
31 |
32 | An article explaining different categories of research question, and plenty of examples. Also covers the difference between quantitative and qualitative research questions.
33 |
34 |
35 |
36 | Writing Strong Research Questions | Criteria & Examples (Shona McCombes)
37 |
38 | A helpful article for evaluating and categorizing your research questions while you develop them.
39 |
40 |
41 |
42 | How to Develop a STRONG Research Question | Scribbr
43 |
44 | A good research question is essential to guide your research paper, project, or thesis. It pinpoints exactly what you want to find out and gives your work a clear focus and purpose. In this video, we will go through how to develop a strong research question in 5 steps, and a checklist to make sure your research question is strong enough to be a solid foundation for your paper!
45 |
46 |
47 |
48 | Chapter 3 Stating and Refining the Question (The Art of Data Science)
49 |
50 | An outstanding chapter about data science research questions, including how to translate a research question into a data question.
51 |
52 |
53 |
54 | Dataset or Research Question: Which comes first? (Jaladh Singhal)
55 |
56 | The difference between these two approaches — choosing a research question first and then finding dataset(s) vs choosing a dataset first and then asking question(s) — may not seem very perplexing at first. It's even common to overlook this if your experience with data analysis (until now) is limited to only practicing analysis techniques on data, like cleaning, pre-processing, modeling, visualizing, etc.
57 |
58 |
59 |
60 | PEERS Webinar: Developing a Research Question and Aligning Data (ICPSR)
61 |
62 | The PEERS "Developing a Research Question and Aligning Data" virtual workshop will focus on what the components of good research questions and how to align and discover data to answer them. This webinar will feature the following researchers: John A. Williams III (Texas A&M University) and Sonyia Richardson (University of North Carolina at Charlotte). Moderator: Amber Bryant (PEERS, ICPSR) During this webinar, we will: -Briefly describe the components and elements of a "good" research question -Practice and learn about "ideation generation" -Learn how to discover and align data to answer complex questions
63 |
64 |
65 |
66 | Research Question vs Hypothesis: how to convert research questions into hypotheses (Science Grad School Coach)
67 |
68 | Learn the difference between research questions and hypotheses, and how to convert a research question into a hypothesis.
69 |
70 |
71 |
72 | How to Write a Research Problem Statement (Dissertation by Design)
73 |
74 | Learn how to write a research problem statement. In this video, Dr. Jessica Parker helps you gain clarity about both what a research problem is and is not. Find out why writing an early version of your problem statement is important. Learn to identify and understand the function of the three components of a well-written problem statement. Start to embrace the problem-posing mentality as you transform into an expert on the research problem you plan to address. (Context, Knowledge Gap, Significance)
75 |
76 |
77 |
78 | Research Questions, Hypothesis, and Variables. (Ron Wallace)
79 |
80 | This lesson discusses the relationships of research questions, hypothesis, and variables in a research study proposal.
81 | Dependant and independant variables are still relevant in data science, keep your eyes out for natural experiments!
82 |
83 |
--------------------------------------------------------------------------------
/data_science.md:
--------------------------------------------------------------------------------
1 | # Data Science
2 |
3 | - [Data Science Cheat Sheets (Favio André Vásquez)](https://github.com/FavioVazquez/ds-cheatsheets):
4 | Cheat Sheets, Python, Data Science, Big Data, Business Science, Data
5 | Visualization, Deep Learning, General, Machine Learning, Math Calculus, R, SQL
6 | - [The Art of Data Science (Roger D. Peng and Elizabeth Matsui)](https://bookdown.org/rdpeng/artofdatascience/) ([PDF version](https://ia801802.us.archive.org/11/items/datascienceebooks/artofdatascience.pdf)):
7 | What we have set out to do in this book is to write down the process of data
8 | analysis. What we describe is not a specific “formula” for data
9 | analysis—something like “apply this method and then run that test”— but rather
10 | is a general process that can be applied in a variety of situations.
11 |
12 | ## VSCode for Data Science
13 |
14 | - Python Notebooks in VSCode:
15 | - [documentation](https://code.visualstudio.com/docs/datascience/jupyter-notebooks):
16 | The official documentation for using Python notebooks in VSCode.
17 | - [video guide](https://www.youtube.com/watch?v=h1sAzPojKMg): The official
18 | video guide for setting up Python notebooks in VSCode
19 | - [Setup for Data Science (ArjanCodes)](https://www.youtube.com/watch?v=fj2tuTIcUys):
20 | Configuring and setting up VSCode for Data Science. Python, Notebooks,
21 | debugging, ...
22 | - [How to Debug Jupyter Notebooks (sL4)](https://www.youtube.com/watch?v=vGXTNR7BgBI):
23 | A quick guide for developing and debugging Python Notebooks in VSCode.
24 | - [Jupyter Notebooks in VS Code Extension NEW in 2022 - Tutorial Introducing Kernels, Markdown, & Cells (Kris Jordan)](https://www.youtube.com/watch?v=HJgX1WWC26A)
25 | - [How to Set up VS Code for Data Science & AI (Dave Eddelaar)](https://www.youtube.com/watch?v=zulGMYg0v6U):
26 | A guide for setting up and using VSCode+extensions for developing and
27 | debugging Python, Notebooks and pandas.
28 | - []
29 |
30 | ## Python Notebooks
31 |
32 | - [IPython Or Jupyter? (DataCamp)](https://www.datacamp.com/blog/ipython-or-jupyter):
33 | The history of Python notebooks, and the similarities/differences between
34 | Jupyter and IPython.
35 |
36 | ## Pandas
37 |
38 | - [Pandas Tutor (Philipe Guo)](https://pandastutor.com/): Pandas Tutor lets you
39 | write Python pandas code in your browser and see how it transforms your data
40 | step-by-step.
41 | - [Pandas Cookbook (Julia Evans)](https://github.com/jvns/pandas-cookbook)
42 | - [Pandas in Black and White (Jacob Deppen)](https://deppen8.github.io/pandas-bw/) (flashcards and cheat sheets)
43 |
44 | ## SQL
45 |
46 | - [SQLTeaching (rhc2014)](https://www.sqlteaching.com/): Interacative, online
47 | SQL tutorial with in-browser database sandbox. uses SQLite.
48 | - [SQL Murder Mystery (Knight Lab)](https://mystery.knightlab.com): Interactive,
49 | online in-browser SQL game to practice investigating and querying a database.
50 | Uses SQLite
51 | - [SQL Bolt](https://sqlbolt.com/): Interactive, online in-browser SQL tutorial
52 | with examples and exercises.
53 | - [SQL Study Buddy (Yoshi Malaise)](https://sql-studybuddy.netlify.app/#/home):
54 | Interactive, online in-browser SQL tutorial with examples and exercises. also
55 | covers Data Description Language (DDL) and Data Manipulation Language (DML)
56 | - [Unit 3: Intro to SQL: Querying and managing data (Khan Academy)](https://www.khanacademy.org/computing/computer-programming/sql):
57 | Interactive, online in-browser SQL tutorial with videos and exercises.
58 |
59 | ## Machine Learning
60 |
61 | - [Understanding Deep Learning (Simon J.D. Prince)](https://udlbook.github.io/udlbook/):
62 | A textbook from MIT covering Deep Learning. Includes exercises, slides and
63 | Python notebooks.
64 |
--------------------------------------------------------------------------------
/edx.md:
--------------------------------------------------------------------------------
1 | # edX
2 |
3 | - [ET edXtras](https://github.com/mit-emerging-talent/edxtras) - a repository with supplemental examples and exercises for 6001 & 6002
4 |
5 | ## 6.00.1x
6 |
7 | - [MIT 6.100L Introduction to CS and Programming using Python](https://ocw.mit.edu/courses/6-100l-introduction-to-cs-and-programming-using-python-fall-2022)
8 | - [6.0001 Introduction to Computer Science and Programming in Python](https://ocw.mit.edu/courses/6-0001-introduction-to-computer-science-and-programming-in-python-fall-2016)
9 | - [Thomas Ballatore's PSet Walkthroughs](https://www.youtube.com/playlist?list=PL4e66Kzl1JCFPVBa7gBzWJF_FDF3KBf-2)
10 | - [MIT 6.00.1x Coding Sessions (LAFCADIO)](https://www.youtube.com/playlist?list=PL34adnmo_npBrAH1Mcyeq8Y-Q1osVnduj)
11 | - [@xIntroductiontoComputerScience](https://www.youtube.com/@xIntroductiontoComputerScience)
12 |
13 | ## 6.00.2x
14 |
15 | ## Understanding the World Through Data
16 |
--------------------------------------------------------------------------------
/git_and_github.md:
--------------------------------------------------------------------------------
1 | # Git and GitHub
2 |
3 | The more time you spend studying Git and GitHub before the classes starts, the
4 | easier it will be to focus on the fun stuff.
5 |
6 |
7 |
8 | An overview and a big picture of Git and GitHub workflow.
9 |
10 |
11 |
12 |
13 | 
14 | [Abstract Workflow Flowchart Source](https://viewer.diagrams.net/?tags=%7B%7D&highlight=0000ff&edit=_blank&layers=1&nav=1&title=HYF%20abstract%20workflow%20v1.0.drawio#R5VtZV9s6EP41Oad9CMd7yCNJgKQXKA20tH2TbcV2sS1XlknSX1%2FJlhfFzkY2LuVwSDTa7Jn5Po1GoqX2g9k1BpF7i2zotxTJnrXUQUtRlI5q0A8mmWcSWdb1TOJgz%2BayUvDg%2FYFcKHFp4tkwFhoShHziRaLQQmEILSLIAMZoKjabIF%2BcNQIOrAkeLODXpU%2BeTdxMeq50SvkQeo6bzywb3awmAHlj%2FiaxC2w0rYjUy5baxwiR7Bsyf7EXUCQfmFSLabus50VCXIQzySMIIGaym9uv44fhaDDK2gx%2FXLXHMEJZK5cQpp%2BLlnJFfx2PuIl5ZqGAFobAev6BEnyVkATDHvQdLwnKMZ6gGXsENg3j0p5z2nOS9jwzYSpmHW88C4Yx73Q7esyl4TO0R2HTWNPp9MxP672QP5gX0j8E%2BEGC3dizvWL0z9gBofcHEA%2FxscR3oE2K17gasOIdU0TaN%2Fexp9H8yb95Nq4%2FfYl%2Fg6%2B9%2Fx7vvrVLKwSzPvR9NmNapF%2B4NYTa1aMVnoJhSNbNms9UG3puvxgjU3aV259PFyMtMj8N73kX6QX4Caw6RkzmuZ9ilIQ2ZIPILbU3dakNHyJgsdophSaVuSTweXVMMHqGfeSnXhWikDbrTTzfXxDxaSEmcLYAhzUvKVdUew1RAAme0358lLacw5vTgsqL0xJinVzmVuBlnHMh4LB2irGVqvW4WptV3Hsh3wa68VMew6H38Kg%2BjId%2FcusJKjZ8Om3PpF8ckmojE0xQSATlG78TlFe045TCqJtLshHNsm68fslAFld6taE6SX%2FqfccwQBSe%2BbPhUh4hClzEVLFY9%2BHaI8PE%2FJjXUAVlU4uPU3ZY05CKK0rZxRGrPkdfWpK6XW1Qc1Bac66YqmEU823mfw2uu9wlO7Lgked1j5S1Bo88mEMqSx1yO7fZg58Wxr5BdGGkPVY6GyNm2qaPgighEH9c6V41cNVcbq%2FuJUn9%2FhGdSNe7J%2FYiuVPTILRpgMOLCNPIwkEh8C9Laa%2FUsURLZZsbhCKu2V%2BQkDmP1kBCkKh3qlY8%2F876n%2Bl58QcfLi0MZkJpzksZ7PM4S9naUjF1PYu%2F5uzz99vQuJ%2FfdxPTSD7dSr97X%2FKFlADsQLJCbVrWjqlqpd0x9GlY8iLGins3orqOCtZDXFsC8QCwsGtb6Enbhhh1bn%2B9kTeHoyxpazldakCjdjA0nq%2BKMhrMaCJsQ9zmVH%2BRdsUf2u2q%2FGNG8xtbHFLfpw2SyAaEWpPtVJgPSD4jd19g9J2eaHFiDGPkv8BsrzbxPYvEB5srAnHshQ6by4XWc9y84pySGAVaLFnyCMS4ivDWEqO%2BITHmC6J0JhU74jzW58WNuZOPfo%2B8lOzyJmgyiemzLmKyeIjXw1R7H3zLg53T8a3ebQh%2Fjkq43QZLHh%2F1B0evviF6z99UWKMfDmb0EwQMIXx5AaHlFrJX7jf%2BJyDUNDG10ghC%2BZggNFYFPXtOrYzuHi%2FHd5ePu2QwYGhfsMxxq8iD2SB2iz1nxd6ic%2Bxq47WwrFhQbzBgLnvtwsodqCP6T21vmrER71TNZC6Mo3fXDJTRVW2gfa3iclNK7x2S%2F%2FmG5J9j%2Fo2w%2F%2FKt0M7sD2z736F3%2BdT0Li9PTzRvajc1Y4gOsleUTGA9O6nhq82xY36g2mwpVAtS9UvzDjN%2FnDgCYfMD7WOWFfvYbOJtlrXDc92vJIjyKfjSWZx6HmUbK2%2Ba4JOVN0WGctMJ357Y0EJB4JF%2FhhA19eSEqJ0Ce8ty7kXdqVJLOdTWY3LT5NKOAa7W1QWPUaUjB6bK4cAeJbG7xXnuewO%2FqjSk%2BI8L%2FuW73X1kNcRt8%2F24buvlUdM2qfHN%2FOWYtFYU3kjGXN406aZuyGrcpaUzSe2o4pK248b%2B8Blz%2BZ%2FI5R39AFPTxJXqmAeYjefnTSvX2wl1jnm9YBXUq5Sw6hrCoQMdWRfPY2Tllam8xYGKnPL%2BI6ZGfR3wAkRtTY2S9HmqB3Xl4hmgmKR2sSC%2Fg2XDXRfQm%2By6b9XBge857KormwVS%2BukxyvAs4F%2FwisCz7QxLkL4jMNPxmItHzASpUfReSx80uvhKZNfvevKb1XySVvXy8pIjX73bEXkrB9Cu%2FiyuiorYfy%2Br2yq4HiZeZ9O%2F0%2Bh88Ty4MTrf0%2FpFi%2BVV%2Bszw5X8kqJd%2FAQ%3D%3D)
15 |
16 |
17 |
18 |
19 | Git & GitHub workflows gif (click here)
20 |
21 |
22 | 
23 |
24 |
25 |
26 |
27 | Detailed workflow flowchart image (click here)
28 |
29 |
30 |
31 |
32 | 
33 | [Detailed workflow flowchart source](https://viewer.diagrams.net/?tags=%7B%7D&highlight=0000ff&edit=_blank&layers=1&nav=1&title=HYF%20Workflow%20Steps%20v1.0.drawio#R7V1rd%2BI2E%2F41nNN%2BgOO74WNCNhvaJJtN0jeb%2FdJjQIAbX1jbbJL%2B%2BleyLWxL8g3kC9n2tA0IWbaleZ4ZzYykgTy13z57xnZz4y6BNZCE5dtAvhhIkiwIAvyDSt6jEmkylqOStWcuozIxKXgw%2FwVxYXzhemcugZ%2BpGLiuFZjbbOHCdRywCDJlhue5r9lqK9fK3nVrrAFV8LAwLLr0yVwGm6h0LOlJ%2BRUw1xt8Z1GbRL%2FMjcXL2nN3Tnw%2Fx3VA9Itt4Gbid%2FQ3xtJ9TRXJnwby1HPdIPrkzv9BryYJljGH%2FRvWi6482wUb14tKHg0beKjs%2Buav%2B4er2cUsqvPFWxuO%2Ba8RmK4T1byCj%2Fbs7rzLXbDz4EMJ58Bamzt7IF1eoK%2B3YOtG116bC%2BD4cVfczB5xqfMClrO4tU0QoLE4g1fDf19fX0dW%2BLvpjBYuatN04P8Cw7J33sY3l2ZYEbVz9Xw5fAJz3wwAq6kNfMx3%2BJir8DFHc5C58B49JOOqtRlsdvP41tk33b8magNL39Ps%2Fcm6ftE%2B%2F%2FHV%2F2H8df7n4%2B3%2Fhsko2G9TYFmo6fAr%2FBCPRubX4tb2MuQBJyi7K74T1fT47udyKOsz53E4v5jcXK7Xf9zElwg%2FDWsH0oLhB%2B9YgkMZBKgRYSCfv25gbz9sjQX69RWCFpZtAhtJlQg%2F%2BoHnvoCpa4VSFcqsfL4yLYsoim8LvAC8EUApeUkx1bWfgWuDwHuH1%2BFWtPiNYr4YjjGDvCboE2Vca5OGnjqJS40Y8%2Bt981J6AOOeZfeyqj2eP%2BvBt2vPfJ89bsBu%2BPA8lMp7GSwhbcRfXQ%2Bicu06hvUpKT3PjkNS59p1t3Hv%2FwOC4D3mQGMXuNmxqdPB8Nmg2C9AwUvFnRUY3hoEBfXi9tALpkaaHkEPWJBjfmZ5k%2FtQ0AL%2F8Hh2%2F0iNRyTImLIlQso3xhbVs9%2FWSG2NVpb7utgYXjDyYXcEf4s5QKk3AhQ6cqVeVvSs1KsqQ%2BoFhtBrTYm82oWEgzcz%2BJb6%2FIyaGqnxt4u3uOXwyzv%2B4sDX%2FZb%2BkroKfU0uC7%2Fh6zijCdsmZWhSeoUmLKkJmi7AykSGimAMkC2iWQFSAK4ThDaWFRsb2o8dMk5gJ8qrlRBaeUmRtkZ%2FfdsI74%2FbgM8XNRP9vPXcuQVsSsoq6ac0rFGjWCyFpgCqiiRANQZAJQZAx00BVP8PoLUAqlQEqNYrgCoUQL9sgYPu5ByJT9P3dyAfny5q%2F7MZXO3mx2M0a1UO0LxwMlEuGtSoutA7wIoi1ZFtIBajT6yHPox0oQbSD0fs7Lskb%2Fx3YfFdB%2BDvH4s%2Fln%2F%2FGIrjqhaqwBuz8aV3rhkCC4ucOCakShEJaYmeNb6OEJj9g1SSIWaXyBQddCFTnJlZo4eZ%2BfJSr5hZo4bibLkMvVPofxtErRHFIsdERLFzD7PrMcT9aAZwGCX41MIF8BeeuQ09O2HBNXIQ%2BdHnG9MCPvoprnznuchx4ecQ%2Fimy%2FESYVGF5tUWWl2i5uHU%2FOvEjOUqN%2B3QaSi5DIva%2FhFZ79OiiRljxtTxJVaZmlT0dVRkmFr%2BhMNoLF5bA%2BKGO1jQaIdmyMBmp2WaiF6d0Dd2YRMKE0ViO4koawxXd1coHxyq3q%2FNvN9vh1ezt5XE6fHkSv18ba8ZklKDJBECYE9EPQz%2BUI8iygqht3yKmJDjzGVSmvRZnUQmsntOoKp5F1YRzL4EmybWBpioYnYdCi6sAF75%2FSoJn%2Ft4a8MKoirCwoEaGrVxSkudtXHu%2B86s66UtUryBMp02qXpUwhSVdGakirX1ZXsuJ3JT27cQePkRlHopn3pCVqurGnjku6ZDM1ApN3QzaeNrdazPA8I3cJoaNcBm2h%2B423HnWvjRztzYs7Ybhrssk3LXJSB7TcJfbdKlItHvslExt3liu6uLEyQt9wTI9ijPHD6LwgbO1%2BcI4bFAw8Q0%2BDEIVjLIyhLbq9JTGnQIyhcHnDATzjeXUmF1exrPVdp2hzMmReprYlmiP5cOrGSw2sacsVpfO3N8eiWvbCPOMbMMPUBpUDq6FuWc46O4NWAYbsHhxd%2BhjtWc5PY7RJgTHKBLD36brLRKMTM%2B5umCcUubITPXFhpijkBHKqWPSL%2BrQGSNbDlJBYIN06gEjwIkNDniluIDCJ0kREczxRcQMICoeOoYNyEnAsTjPk6328S%2BRaRASdlOm8c9KzmsO%2F91a%2FJwMjOxQLsHK2IVS1Qf6mFSkD7lfiYL4uTnRR8ZqiX0MR7BIylhoiEeKRS3DL6n03kT01p6xNEHSRpz42wXpSFnSEZlGR6ukQwf5umChPNYghj4W6ZPO3sLkUs5Caq9YCD83LxZC6cnoOZ1leKm9tUCQOD0Dw3%2FhNN2oTh%2B9JQpZHeHobHdM0UmaZnHcvYgaDgpJCiO9thWUxCCzMUqlAe6o6jvhb8GwA%2FIKme4v4mzFkmj8mecZ76lqW1TBz7%2BRSmZBisQSI6K%2BrAhF9eGH6Am4Rk2xj5JBkXPMXrdfUrQ2z%2BU0NHDX0Rq5NBwMy1yjxWoLKE8ASv454hRzYVhn8Q%2B2uVxGyAO%2B%2Ba8xj5PJ5fO4g2Hj6vlAvaABlJvQQstwIT8wVlLFKxrjpxmklwbmxMglkUj04JOMMhQ1QiqyLTQXUFf64dypa2e1mXNRndz65d1RaMMoTNLpHNGHjmKxAHOBt8YHzkpb8MWyycn4vTCR0TuD%2F61Mx%2FRjHxwxvU4ZwijFppotXDnz5gStYtLYkGSmVcyKCoqCki9cx6G%2FH4nsFYl9P8y8ubuqa02ResXdMl%2FX2oWbQjIB1am7RHj%2BuoOMH6A3nCLHGa0nPh5uNQK3ObPZVqP5Ci9C%2FzipvAem%2FtRlnkPm522aoZihyqmsah5h2u7BQZ4jLZ%2FxJAspUZlkm2g3CZ7dP%2FRsuOP1IzUdv5V9T52sBakup9zzaNoXJYmrmj7zYkezV7Bs2IIvZzrrVIVDbgVr5t5h5Xq2weEewPNcz%2F9vkhAxI5HNL6ojhq0hy4w5gkgtJeJnbmjdEl%2B92P6h0bh2kgoLlXEHziO2htb1Eg2ds%2BaNG2WyEsoP55hL822AY3Mx3%2Fyy0TmdXDA0ZkTxWbMZtanZDG74FO2qXHrZW1WHBPt500vVzEOlJXoRJTyTwM6wccv8wjenMd5xIOSXFVruP4jzk%2FzAWEcmEhxLo2ZukhG2mk1LQq23mpTUG94SBV1F8e0Kvhi9zY0GtG7Zqy1%2FRyvsxdxuhGEbMet1tuCC%2BTSlHrpyz5uS43l7CMB2zzC77TJKp%2Ba7lGKx88Lhq5hW2QcPYPcpugojjlAk0jV8b7KKG8dmmxbLe4%2F9HnzDE5GSXbi2HWpHG%2Fg%2B2jO6Zr4vvnxoU7o1afEX06yyWCnE0dR6An329WbtzX68vz0Hwe395O71%2BRtzE5L2SYUzQagyTRDMt%2Be%2BkdpxEzRWlPhwIN%2FtwpyByFxebAxnXRBKYsN4GzbRBDLFPiFT1rLAVPHcvbPIo0Y7ZvLShU57%2Fn5URm6bkRStaka%2BdshmP5PJcVbGO%2FOC5mwOrTfbvh1gjvLxePct1FdZQNWaAiqMBGHSeytYY1kyvKN%2FiX60gbcO9arrrCwTbTN5WpG16hmlbSldWdJYQThskGaCcM3tctrNOQA5hCTWIqRmdCxvlmKY5p2G4DTSRS5o2SYadpFrfI3%2BB9f6mSyQS9jpl43DaRIRYp0w4nCtLuHX%2BAZFPt1eVB3dRg6JqRuoq7X8uimpEGVtnBELnXXuUqsn0OB1mk3sB%2Fv05f7Py%2BsvT7DOw%2BOnu4eqAgN7MxgUpJDnH5hV3b5gyVRWo1ZZsaJS1jWUKcvwfawq8Zlz9XVajZg%2Fkc4Bx5Rh0YgMqVKa8u%2FJ3doz9XwGeQN9uA1S5PUr9Q5KvC2Qo0aylB5qaY34WJUcIri7P6ZtWD9znEpvTY%2BGt%2BtX1QpuRaVNb7%2FSp9lNmbsl%2FHYHPBO%2BO1IhDVEE%2B%2BCRyt6%2BpvOmccbqOGuvjCVCRvidxFLEhXwTeZKthSDhJOeGlAYnyCNBUieC0JXPfB9aHADQJ4agc13hn1l0MtSHpyPSOmHSkdoQHTFRlq%2FS5uTgH20CV8vSQP%2FQ194D2w0ALVroTF7fDFzUFeRvv0Xa7%2FfKQl2e%2BpG%2FEUTC0XmztLTopqz1tNxREjmW5rLG3tyB01pdibSXWfHwpjQk%2BxCug3iOFhwOkrof7msXzpvgFYXiho59hnWmrr3dQXX5e6GAUfAqdVkfJWCNpyxqvZMjvon12d34iO12j96Rj2ive0XYeiKOwtCETfkEmeLCSuFq31LnbEQz0uGZ9ca8TeijhoL2zv5F5n62sF93hHT4vsAPIuH2QxuX%2Fz7e292HOhdAFPT9Cr1CeEujhtLX2XZFPxLtepBnzjjllN1jLZ1yOtHljLRoAtEEvwBgUX%2FknRgg5KWIN7SXfzZXt2B73g%2FDGGOpgjUwbnUS0g03tH6sTyHuy11vnW3AXfjcKSDfxElCpMEOmaQtZNvsR%2Fgw4CV97EzwTloFbz%2F2%2BurJRtadHXbNVvaqJmXEZahK0n4RRt2DZknFARuTqcYaPiFdoknHTSUARUdyF509xOmQbnfpRtfsbKdNemnYZy6KAjmbyDl0e9wmxbAyiH4FiimCQPmEgvtW%2BWxa0MekwODhqX2StUzunE011TS9cFhfm%2BfnvnWrEkWPU3CZQer6CwV6tPqlEDvlerz%2BmltBxPss9mJ1QeH7p3DwZIaXzUJRDY%2BpoPbmDbemyCTkRvr4%2BMOw8%2BN3aX3ZmFaUKctnrNE6kRVLFmUpf1iPUooSK5p8OrPoHnjmMOLKNSl3j32O%2FhPIAx2UCWFTHa5KqaYaVqUi7eg7wFRn6Nu56y2BN4zt9bPwFt5vw2G6%2FHemBi5V5Yc0XW%2FiMEOJgneeu%2FaA7zczg%2BiYK0VZIPfTGUraeITdzG2sMWbDvXTlyYfbtbhuBuIBi0v7aZVVdZUmVpkoyMpxVtk%2BvkLaChUDLDSHi%2Fq4pKl2dzQu7OvaKUQ5qZJh%2BuIgN1XbfveBtRpksinNQzIae0GWMt7EN2FKbYSXyJUxpa5T3jd%2BZEkn9IQLr4g%2BbmSFVXO9rRK9rYuMvKmmVkGx%2B5l1OtbpuLZaylkvStEuVwZaW9Y71iA44RjvIlCb%2BCUydZlsiZ%2FtfnX%2B7WY7vJq9vTxOhy9P4vdrYz08bI3uYkFS%2BofxlnHcdaPeIvcWdtcoBA2%2FQxUTU2siC%2FIhplbd4xFFAYfM8aJXqfh8RIk4QIKoP8icj9jKZjSFY8Mp2Xbm7w2p6IBZxqISfBTtsoltP%2FItsaOTbRszJUhPjaoqrN08BJ2ZddeU1Safdiy%2B0xVwVfeDrU14WQ4SVfEQ7mPYCNhOPdraUOXDrA3GSaJq9plEmWipOVLkfBJ3vqsyZ9FBMx5MIVXHW89%2FE6KVfPhPb92c98BYIgxchke93IOfJngdtObt7K%2FakNWsR6fVnRfZuKGNiRPbebGW1ujahi7UPXUOTdvvCdYfPUIub6yvR1pQE3wXqh25sDsiRuDVPvDyFLlPnJAmc4vcx3Rz9CytrGYEvR9nKzCdAhJj1zvmCLSUoqaRC2ZlUqaqkhzpIoAkX%2B2QSV6uOTox57%2FleieUv68oWW07VDDjtbEWlylRdARiFj5OeOUxA7g1F8ibtNvmy5PhHHkPPDXLuYXhQyHYLyN%2FQTUNNK5JAgYS%2B1h3w9J%2FwCKI5laGs9fsG2ChRmw0jAEwbBuJPSV8%2Fdg7rjHtDdU1mRiuaSyPF3Od6X4TuBrSC796LhrshD5RGPHGXQJU4%2F8%3D)
34 |
35 |
36 |
37 | ---
38 |
39 | ## Git
40 |
41 | - Learn to visualize what happens inside of Git with:
42 | - [learngitbranching](https://learngitbranching.js.org/) +
43 | [a Video Guide](https://www.youtube.com/watch?v=dG0ke9vILQM)
44 | - [git-school](https://git-school.github.io/visualizing-git/)
45 | - [ohmygit](https://ohmygit.org/) - a git game
46 | - [Git and GitHub for Poets](https://www.youtube.com/playlist?list=PLRqwX-V7Uu6ZF9C0YMKuns9sLDzK6zoiV)
47 | (also talks about GitHub)
48 | - [merge-a-matic](https://github.com/lpmi-13/merge-a-matic)
49 | - [Git Katas](https://github.com/eficode-academy/git-katas)
50 | - [git-it](https://github.com/jlord/git-it-electron/)
51 | - [Understand how to use Atomic Commits](https://curiousprogrammer.io/blog/how-to-craft-your-changes-into-small-atomic-commits-using-git)
52 | - [Understand how to use Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/)
53 | - [rebasic](https://github.com/lpmi-13/rebasic)
54 | - [Pro Git](https://open.umn.edu/opentextbooks/textbooks/1360): great open textbook
55 |
56 | ## SSH Connection to GitHub
57 |
58 | - [GitHub's documentation](https://docs.github.com/en/authentication/connecting-to-github-with-ssh)
59 | - [A helpful guide video](https://www.youtube.com/watch?v=8X4u9sca3Io)
60 | - [A long but thorough explanation (starting at step 2.3)](https://www.theodinproject.com/paths/foundations/courses/foundations/lessons/setting-up-git)
61 |
62 | ## GitHub
63 |
64 | - [lab.github.com/githubtraining](https://lab.github.com/githubtraining/paths/)
65 | - [first day on github](https://lab.github.com/githubtraining/first-day-on-github)
66 | - [first week on github](https://lab.github.com/githubtraining/first-week-on-github)
67 | - [prepare to use github](https://lab.github.com/githubtraining/prepare-to-use-github)
68 | - [Getting Started with GitHub](https://help.github.com/en/github/getting-started-with-github)
69 | - [Creating a GitHub Repository](https://www.youtube.com/watch?v=WfhRyz3Wf4o)
70 | - [Creating a local repo and push](https://www.youtube.com/watch?v=vbQ2bYHxxEA)
71 | - [GitHub & VSCode](https://www.youtube.com/watch?v=ZDo0Qht5D6w)
72 | - [the git & the hub](https://www.howtogeek.com/180167/htg-explains-what-is-github-and-what-do-geeks-use-it-for/)
73 | - [The Net Ninja](https://www.youtube.com/watch?v=QV0kVNvkMxc&list=PL4cUxeGkcC9goXbgTDQ0n_4TBzOO0ocPR&index=8)
74 | - [RogerDudler Git Guide](http://rogerdudler.github.com/git-guide)
75 | - [GitHub CheatSheet](https://github.com/tiimgreen/github-cheat-sheet)
76 | - [Mastering Issues](https://guides.github.com/features/issues/)
77 | - [GitHub for Collaboration](https://mozilla.github.io/open-leadership-training-series/articles/github-for-collaboration/)
78 | - [How to Update a Fork in Github](https://rick.cogley.info/post/update-your-forked-repository-directly-on-github/)
79 |
80 | ## GitHub & Collaboration
81 |
82 | - [A guide and diagrams for ET](https://github.com/DeNepo/planning-and-collaborating/blob/main/11-development.md)
83 | - [Adding collaborators to a repository](https://www.youtube.com/watch?v=p49LRx3hYI8)
84 | - [about code reviews](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-request-reviews)
85 | - [requesting a code review](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/requesting-a-pull-request-review)
86 | - [prevent pushing to `main`](https://stackoverflow.com/a/57685576)
87 | - [Git Workflow for 2](https://github.com/hackyourfuturebelgium/git-workflow-workshop-for-two)
88 | - [Pull Requests](https://www.youtube.com/watch?v=2M16faxEQsg)
89 | - [Git & GitHub for Poets](https://www.youtube.com/watch?v=BCQHnlnPusY&list=PLRqwX-V7Uu6ZF9C0YMKuns9sLDzK6zoiV)
90 | - The Net Ninja:
91 | [11](https://www.youtube.com/watch?v=MnUd31TvBoU&list=PL4cUxeGkcC9goXbgTDQ0n_4TBzOO0ocPR&index=11)
92 | - linking PRs to Issues:
93 | [reference 1](https://help.github.com/en/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue),
94 | [reference 2](https://help.github.com/articles/autolinked-references-and-urls/)
95 | - [closing Issues using keywords](https://help.github.com/en/enterprise/2.16/user/github/managing-your-work-on-github/closing-issues-using-keywords)
96 |
--------------------------------------------------------------------------------
/group_norms.md:
--------------------------------------------------------------------------------
1 |
2 | # Group Norms
3 |
4 | - [What is Culture?](https://whatisculture.org/) - This site is designed to help you improve your understanding of culture and the impact it has on the way people think, behave, and interact.
5 | - [How can you establish group norms and expectations for a more inclusive team?](https://www.linkedin.com/advice/3/how-can-you-establish-group-norms-expectations#co-create-your-group-norms-and-expectations) - Group norms and expectations are the shared rules and standards that guide the behavior and interactions of a team. They can help create a more inclusive, collaborative, and productive team culture, especially when working with diverse and remote members. However, establishing group norms and expectations is not a one-time event. It requires ongoing communication, feedback, and adaptation. Here are some tips on how to do it effectively.
6 | - [On setting group norms](https://publichealth.berkeley.edu/wp-content/uploads/2020/01/On_Setting_Group_Norms.pdf) - Every group develops its own customs, habits and expectations for how things will be done. These patterns and expectations, or group norms as they’re sometimes called, influence the ways team members communicate with each other.
7 | - [Tips to create group norms for high-performance teams, with examples from 7 Asana managers](https://asana.com/resources/group-norms-examples) - Group norms are usually implied rather than defined, so you may have never thought of them before. By intentionally creating group norms, you can empower team collaboration, increase efficiency, and maximize effectiveness.
8 | Examples
9 | - [Injunctive Norms: Definition And 10 Examples](https://helpfulprofessor.com/injunctive-norms/)
10 | - [Seven Norms of Collaboration: A Supporting Toolkit](https://arbss.org/wp-content/uploads/2020/10/Toolkit-for-Establishing-Norms-for-Team-Members-1.pdf)
11 | - [Your 9-Step Guide for Smooth Remote Team Communication](https://relevant.software/blog/strategies-to-ensure-effective-communication-for-remote-teams/#2_Creating_an_Online_Office_Culture) - This isn’t just another guide to remote team communication; it’s your roadmap to making the world seem a little smaller and your remote development team a little tighter.
12 | - [The Differences between Dialogue and Debate](https://capstone.unst.pdx.edu/sites/default/files/Dialogue%20and%20Debate_0.pdf) - A short and wonderful PDF describing practical differences between debate & dialogue. It also suggests behaviors that support dialogue, and related competencies.
13 |
--------------------------------------------------------------------------------
/mitx.600.2/Graph Problem.md:
--------------------------------------------------------------------------------
1 | # Resource List: Graphs, DFS, BFS, Stack & Queue
2 |
3 | ---
4 |
5 | ## Resources for Understanding Graphs, DFS, BFS, Stack & Queue
6 | *Based on Lecture 3 of the course — selected for diverse backgrounds and learning styles.*
7 |
8 | ---
9 |
10 | ## Topics Covered from Lecture 3
11 | - What is a Graph? (nodes, edges, directed vs. undirected, weighted vs. unweighted)
12 | - Graph Representations (adjacency list and matrix)
13 | - Python implementation of Node, Edge, Digraph, and Graph classes
14 | - DFS (Depth-First Search) and BFS (Breadth-First Search)
15 | - Stacks and Queues
16 | - Finding the shortest path (unweighted and weighted)
17 |
18 | ---
19 |
20 | ### 🔹 1. Graphs, Nodes, and Edges
21 |
22 | 🔗 [**VisuAlgo – Graph Traversal (DFS & BFS)**](https://visualgo.net/en/dfsbfs)
23 | **Best for:** Visual learners who want to *see how graph algorithms work step by step*
24 | **Why it’s great:** Offers animations with adjustable speed for DFS and BFS traversal
25 | **Platform:** VisuAlgo.net
26 |
27 | 🔗 [**Khan Academy – Intro to Graphs**](https://www.khanacademy.org/computing/computer-science/algorithms/graph-representation)
28 | **Best for:** Students completely new to graphs who prefer *structured lessons with quizzes*
29 | **Why it’s great:** Builds understanding of how graphs are structured and used
30 |
31 |
32 | ---
33 |
34 | ### 🔹 2. DFS & BFS Algorithms
35 |
36 | 🔗 [**DFS in Python – GeeksforGeeks**](https://www.geeksforgeeks.org/depth-first-search-or-dfs-for-a-graph/)
37 | 🔗 [**BFS in Python – GeeksforGeeks**](https://www.geeksforgeeks.org/breadth-first-search-or-bfs-for-a-graph/)
38 | **Best for:** Learners ready to *implement DFS/BFS in Python and explore variations*
39 | **Why it’s great:** Code-heavy tutorials with diagrams and test cases
40 |
41 |
42 | 🔗 [**MIT OpenCourseWare – Intro to Algorithms (6.006)**](https://ocw.mit.edu/courses/6-006-introduction-to-algorithms-fall-2011/)
43 | **Best for:** Students ready to *go deeper into algorithms and graph theory*
44 | **Why it’s great:** World-class lectures, slides, and problems from MIT
45 |
46 |
47 | ---
48 |
49 | ### 🔹 3. Stack and Queue Concepts
50 |
51 | 🔗 [**Stack – Programiz DSA Guide**](https://www.programiz.com/dsa/stack)
52 | **Best for:** Learners who need a clear, written guide with *examples and diagrams*
53 | **Why it’s great:** Covers both stack and queue in a simple and clean format
54 |
55 |
56 | 🔗 [**USF Algorithm Visualizer – Stack & Queue**](https://www.cs.usfca.edu/~galles/visualization/Algorithms.html)
57 | **Best for:** Students who want to *interactively explore how data structures behave*
58 | **Why it’s great:** Click on “Stack” or “Queue” and test operations visually
59 |
60 |
61 | ---
62 | HAPPY LEARNING :)
63 |
--------------------------------------------------------------------------------
/mitx.600.2/Inferential Statistic.md:
--------------------------------------------------------------------------------
1 | # 📊 Lecture 7 Resources: Inferential Statistics & Data Distributions
2 |
3 | This page provides supplemental resources for Lecture 7 of **MITx 6.00.2x**: *Introduction to Computational Thinking and Data Science*. Topics include **inferential statistics**, **variation in data**, and **common data distributions** with an emphasis on **visual understanding**.
4 |
5 | ---
6 |
7 | ## 📘 Core Topics: Inferential Statistics & Variation in Data
8 |
9 | ### 1. Inferential Statistics
10 |
11 | - [Descriptive statistics and inferential statistics](https://datatab.net/tutorial/descriptive-inferential-statistics)
12 |
13 | - [HarvardX – Statistics and R](https://www.edx.org/learn/r-programming/harvard-university-statistics-and-r)
14 |
15 | ### 2. Variation in Data
16 | - [LibreTexts – Measures of Variation](https://math.libretexts.org/Courses/Fullerton_College/Math_100%3A_Liberal_Arts_Math_(Claassen_and_Ikeda)/08%3A_Describing_Data/8.04%3A_Measures_of_Variation_and_Location)
17 | - [Khan Academy – Variance & Standard Deviation](https://www.khanacademy.org/math/statistics-probability/summarizing-quantitative-data/variance-standard-deviation-population/v/range-variance-and-standard-deviation-as-measures-of-dispersion)
18 |
19 | ---
20 |
21 | ## 💻 Python & Simulation Tools
22 |
23 | - [SciPy `stats` Module](https://docs.scipy.org/doc/scipy/tutorial/stats.html)
24 | - [Real Python – Python Statistics Fundamentals](https://realpython.com/python-statistics/)
25 | - [Python `random` Module Docs](https://docs.python.org/3/library/random.html)
26 |
27 | ---
28 |
29 | ## 📊 Understanding Common Data Distributions (Visual Focus)
30 |
31 | Explore the most common types of data distributions—how they look and where they're used.
32 |
33 | ### 🔹 Normal Distribution
34 | - [Scribbr – Normal Distribution Explained](https://www.scribbr.com/statistics/normal-distribution/)
35 |
36 | ### 🔹 Uniform Distribution
37 | - [Cuemath – Uniform Distribution](https://www.cuemath.com/uniform-distribution-formula/)
38 |
39 | ### 🔹 Exponential Distribution
40 | - [Statology – Exponential Distribution](https://www.statology.org/exponential-distribution/)
41 |
42 | ---
43 |
44 | ## 🎥 Recommended YouTube Videos (Visual Explanation)
45 |
46 | - [Data Distribution Types Visually Explained](https://www.youtube.com/watch?v=V3Qxj2C7rP0&list=PLsmRQcJN_xK7GHNOEX6aVllckki3qypBl&index=4)
47 | - [Confidence Intervals](https://www.youtube.com/watch?v=QlU07-imSYQ&list=PLsmRQcJN_xK7GHNOEX6aVllckki3qypBl&index=6)
48 |
49 | ---
50 |
51 | ## ✅ Tip for Students
52 | While inferential statistics might feel abstract at first, these visual and interactive resources help make the concepts more intuitive. Try running small sampling simulations using Python to observe variation in practice.
53 |
54 |
--------------------------------------------------------------------------------
/mitx.600.2/Knapsack Problem.md:
--------------------------------------------------------------------------------
1 | # Knapsack Problem –
2 |
3 | ## What is the Knapsack Problem?
4 |
5 | The **0/1 Knapsack Problem** is a classic computational problem where you're given a set of items, each with a value and a weight. The goal is to choose a combination of items such that:
6 |
7 | - The **total weight does not exceed** a specified limit, and
8 | - The **total value is as high as possible**.
9 |
10 | ---
11 |
12 | ## What is an Optimization Problem?
13 |
14 | An **optimization problem** involves selecting the **best solution** from a set of possible options under a set of **constraints**. These problems are common in fields like **logistics, finance, engineering, and computer science**.
15 |
16 | ---
17 |
18 | ## GeeksforGeeks – 0/1 Knapsack Problem (Dynamic Programming)
19 |
20 | 🔗 [https://www.geeksforgeeks.org/0-1-knapsack-problem-dp-10/](https://www.geeksforgeeks.org/0-1-knapsack-problem-dp-10/)
21 |
22 | **Description:**
23 | Clear explanation of brute force, recursion, memoization, and dynamic programming approaches to solve the 0/1 knapsack problem. Includes code examples in Python and C++.
24 |
25 | **Best For:**
26 | Beginners and intermediate learners looking for implementation details.
27 |
28 | ---
29 |
30 | ## MIT OpenCourseWare – Lecture 21: Dynamic Programming III – Knapsack, Edit Distance & Parenthesization
31 |
32 | 🔗 [MIT OCW – Lecture 21: DP III – Parenthesization, Edit Distance, Knapsack](https://ocw.mit.edu/courses/6-006-introduction-to-algorithms-fall-2011/resources/lecture-21-dp-iii-parenthesization-edit-distance-knapsack/?utm_source=chatgpt.com)
33 |
34 | **Description:**
35 | Part of MIT's 6.006 Introduction to Algorithms course. This lecture discusses the **Knapsack problem** in the context of **dynamic programming**, along with related problems like **edit distance** and **parenthesization**.
36 |
37 | **Best For:**
38 | Students who are comfortable with recursion and want to see how dynamic programming solves optimization problems like knapsack. Also useful for understanding how brute force evolves into memoization-based solutions.
39 |
40 |
41 | **Description:**
42 | Part of MIT's 6.006 Algorithms course. Covers the knapsack problem in the context of dynamic programming and sequence alignment.
43 |
44 | **Best For:**
45 | Advanced students or those interested in algorithmic theory and formal learning from MIT.
46 |
47 | ---
48 |
49 | ## InterviewBit – 0/1 Knapsack Problem
50 |
51 | 🔗 [https://www.interviewbit.com/blog/0-1-knapsack-problem/](https://www.interviewbit.com/blog/0-1-knapsack-problem/)
52 |
53 | **Description:**
54 | Practical and interview-focused explanation of the 0/1 knapsack problem, complete with code, diagrams, and use cases.
55 |
56 | **Best For:**
57 | Students preparing for technical interviews or applying concepts in real-world scenarios.
58 |
59 | ---
60 |
61 | ## W3Schools – Knapsack Problem (Reference)
62 |
63 | 🔗 [https://www.w3schools.com/dsa/dsa_ref_knapsack.php](https://www.w3schools.com/dsa/dsa_ref_knapsack.php)
64 |
65 | **Description:**
66 | Beginner-friendly explanation of the 0/1 knapsack problem with a simple layout and example-driven approach.
67 |
68 | **Best For:**
69 | New learners looking for a gentle introduction and quick examples.
70 |
71 | ---
72 | ## YouTube – Knapsack Problem Explained Visually
73 |
74 | 🔗 [https://www.youtube.com/watch?v=nLmhmB6NzcM](https://www.youtube.com/watch?v=nLmhmB6NzcM)
75 |
76 | **Description:**
77 | This video provides an intuitive and engaging explanation of the idea behind the knapsack problem — perfect for building conceptual understanding before diving into the code. It uses visual storytelling and relatable examples to explain **why** the knapsack problem matters and how it works.
78 |
79 | **Best For:**
80 | Visual learners and beginners.
81 | **Highly Recommended** as an introduction before exploring formal algorithms.
82 |
83 | ---
84 | HAPPY LEARNING :)
85 |
--------------------------------------------------------------------------------
/mitx.600.2/Stochastic Thinking.md:
--------------------------------------------------------------------------------
1 | # 📘 Suggested Study: Stochastic Thinking, Probability & Data Visualization
2 |
3 | This reference guide supports your learning from **Lecture 5 (Stochastic Thinking & Random Walks)** and **Lecture 13 (Data Visualization with Pylab)**. The resources are curated to help you understand both the **theory and practice** behind:
4 |
5 | - Probability calculations (with/without replacement)
6 | - Dice and card simulations
7 | - Sample space analysis
8 | - Python simulations
9 | - Stochastic Thinking
10 | - Data visualization with Pylab (matplotlib)
11 |
12 | ---
13 |
14 | ## ✅ Suggested References for This Week's Topics
15 | **Focus:** Stochastic Thinking • Probability • Simulation Models • Data Visualization
16 |
17 | ---
18 |
19 | ### 🎲 1. Understanding Stochastic Processes & Probability
20 |
21 | #### 📘 Conceptual & Foundational Reading
22 |
23 | - 🔗 [**Khan Academy – Probability and Statistics**](https://www.khanacademy.org/math/statistics-probability/probability-library)
24 | *Beginner-friendly explanations of probability, independence, and simulations.*
25 |
26 | - - 🔗 [**MIT 6.0002 – Stochastic Thinking (YouTube Lecture)**](https://www.youtube.com/playlist?list=PLUl4u3cNGP619EG1wp0kT-7rDE_Az5TNd)
27 | *Lecture 4 in this playlist covers random processes, independence, and simulations.*
28 |
29 |
30 | - 🔗 [**Wikipedia – Independence (Probability Theory)**](https://en.wikipedia.org/wiki/Independence_(probability_theory))
31 | *Clear formal definitions with examples. Useful for those with some math background.*
32 |
33 | ---
34 |
35 | ### 🧪 2. Simulation Models in Python
36 |
37 | #### 👩💻 Interactive Coding Practice
38 |
39 | - 🔗 [**Python `random` module docs**](https://docs.python.org/3/library/random.html)
40 | *Official guide for generating random values in Python.*
41 |
42 | - 🔗 [**Real Python – Simulating Dice Rolls with Python**](https://realpython.com/python-random/#simulating-a-dice-roll)
43 | *Step-by-step tutorials for writing stochastic code like `rollDie()` and simulating outcomes.*
44 |
45 |
46 | - 🔗 [**Probability Simulation Notebook by Peter Norvig**](https://github.com/norvig/pytudes/blob/main/ipynb/ProbabilitySimulation.ipynb)
47 | *Comprehensive notebook covering various probability simulations and concepts.*
48 |
49 | **Best for:** Advance lerners in Probabilty and Python
50 |
51 |
52 | ---
53 |
54 | ### 📊 3. Visualizing Data with Pylab / Matplotlib
55 |
56 | #### 🔍 Visual Tools & Tutorials
57 |
58 | - 🔗 [**VisuAlgo – Plotting & Data Visualization**](https://visualgo.net/en)
59 | *(Note: more for algorithms, but includes visual data flow — great for intuition.)*
60 |
61 | - 🔗 [**Matplotlib PyPlot Tutorial**](https://matplotlib.org/stable/tutorials/introductory/pyplot.html)
62 | *Official documentation — introduces how to create labeled plots, overlays, subplots, legends, etc.*
63 |
64 | - 🔗 [**W3Schools – Python Plotting with Matplotlib**](https://www.w3schools.com/python/matplotlib_intro.asp)
65 | *Beginner-friendly visual guide to plotting with simple examples.*
66 |
67 | ---
68 |
69 | ### 💼 4. Real-World Applications of Simulation
70 |
71 | - 🔗 [**Brownian Motion & Random Walks Visualizer (Desmos)**](https://www.desmos.com/calculator/kzixbjyqie)
72 | *(An interactive Desmos calculator that visualizes Brownian motion and random walks, aiding in the understanding of stochastic processes.)*
73 |
74 | ---
75 |
76 | Feel free to explore based on your preferred learning style — and let me know if you'd like more support or clarification!
77 | HAPPY LEARNING :)
78 |
--------------------------------------------------------------------------------
/object_oriented_programming.md:
--------------------------------------------------------------------------------
1 | # Object Oriented Programming
2 |
3 | - [Shikha-code36/Object-Oriented-Programming-OOPs-Python](https://github.com/Shikha-code36/Object-Oriented-Programming-OOPs-Python): A repository with good examples for _predictive stepping_
4 | - [Corey Schafer, OOP](https://www.youtube.com/playlist?list=PL-osiE80TeTsqhIuOqKhwlXsIBIdSeYtc): A youtube playlist introducing Classes and OOP in Python.
5 |
--------------------------------------------------------------------------------
/open_source.md:
--------------------------------------------------------------------------------
1 | # Open Source
2 |
3 | ## What is Open Source Software?
4 |
5 | - [Mozilla](https://www.youtube.com/watch?v=7c0IrsDsNaw)
6 | - [Brian Daigle](https://www.youtube.com/watch?v=1ehpgbb3XD0) codes of conduct
7 | and github walk-through:
8 | - [Explained with Legos](https://www.youtube.com/watch?v=a8fHgx9mE5U)
9 | - [And with recipes](https://www.youtube.com/watch?v=9ShgYrBkTRs)
10 | - [Open Source vs. Closed Source](https://www.youtube.com/watch?v=2q91vTvc7YE)
11 | - [Free/Libre vs. Open Source](https://www.youtube.com/watch?v=Ag1AKIl_2GM)
12 | (think "free speech", not "free food")
13 |
14 | To learn more about all things Open, check out the
15 | [Open Knowledge Foundation](https://okfn.org) and
16 | [Open Knowledge Belgium](https://openknowledge.be).
17 |
18 | ## Open Source Licenses
19 |
20 | The license attached to an Open Source project is not just a detail! Check out
21 | these links to learn more about the many licenses available:
22 |
23 | - [opensource.org](https://opensource.org/licenses)
24 | - [choosealicense.com](https://choosealicense.com)
25 | - [techsoup](https://www.techsoup.org/support/articles-and-how-tos/making-sense-of-software-licensing)
26 | - [infoworld](https://www.infoworld.com/article/2839560/sticking-a-license-on-everything.html)
27 | - copyleft: [what is this?](https://www.youtube.com/watch?v=6Xky8HTqaZo),
28 | [copyleft.org](https://copyleft.org)
29 | - :) [ErikMcClure/bad-licenses](https://github.com/ErikMcClure/bad-licenses)
30 |
31 | ## Codes of Conduct
32 |
33 | The Code of Conduct in an Open Source project describes how contributors should
34 | treat each other. Open Source projects are about sharing and welcoming:
35 |
36 | - [Contributor Covenant](https://www.contributor-covenant.org)
37 | - [opensource.guide](https://opensource.guide/code-of-conduct/)
38 | - [opensourcedesign.net](https://opensourcedesign.net/code-of-conduct/)
39 |
40 | ## Contributor Guidelines
41 |
42 | Contributor Guidelines are important to standardize coding practices and
43 | workflows for an Open Source project. You could think of it as describing how
44 | the code should be treated:
45 |
46 | - [mozillascience](https://mozillascience.github.io/working-open-workshop/contributing/)
47 | - [docs.github.com](https://docs.github.com/en/github/building-a-strong-community/setting-guidelines-for-repository-contributors)
48 | - Templates
49 | - [briandk](https://gist.github.com/briandk/3d2e8b3ec8daf5a27a62)
50 | - [opensource.com](https://opensource.com/life/16/3/contributor-guidelines-template-and-tips)
51 | - Examples
52 | - [opensource.guide](https://github.com/github/opensource.guide/blob/main/CONTRIBUTING.md)
53 | - [github/docs](https://github.com/github/docs/blob/main/CONTRIBUTING.md)
54 | - [microsoft/vscode](https://github.com/microsoft/vscode/blob/main/CONTRIBUTING.md)
55 | - [atom/atom](https://github.com/atom/atom/blob/master/CONTRIBUTING.md)
56 | - [voxmedia](https://github.com/voxmedia/open-source-contribution-guidelines)
57 |
58 | ## How to Contribute
59 |
60 | - [opensource.guide](https://opensource.guide)
61 | - [freecodecamp](https://github.com/FreeCodeCamp/how-to-contribute-to-open-source)
62 | - [contribution-guide.org](https://www.contribution-guide.org)
63 | - [redhat](https://www.redhat.com/en/resources/open-source-participation-guidelines-overview)
64 | - [better-programming](https://medium.com/better-programming/4-effortless-steps-for-contributing-to-open-source-projects-35000599367b)
65 | - Small contributions matter!
66 | - [Why the GitHub metric monoculture?](https://medium.com/@leskis/why-the-github-metric-monoculture-d179a2f1d130)
67 | - [pybot](https://github.com/lpmi-13/pypobot)
68 |
69 | and finally ...
70 |
71 | - [Contribute to this Project!](https://github.com/Syknapse/Contribute-To-This-Project)
72 |
--------------------------------------------------------------------------------
/pair_programming.md:
--------------------------------------------------------------------------------
1 | # Pair Programming
2 |
3 | - [Pair Programming Anti Patterns](https://www.youtube.com/watch?v=McZ131y0OYU)
4 | - [Pair Programming Best-Practices](https://www.youtube.com/watch?v=E4cg5mmvpwo)
5 | - [Tuple's Pair Programming Guide](https://tuple.app/pair-programming-guide/)
6 | - [Pair Programming Roles](https://gist.github.com/healeycodes/5acc53131957f6a96a281c89890c7706)
7 | - [Pair Programming vs. Code Review](https://blog.codinghorror.com/pair-programming-vs-code-reviews/)
8 |
--------------------------------------------------------------------------------
/python.md:
--------------------------------------------------------------------------------
1 | # Python
2 |
3 | - [Python Setup (Luke Barousse)](https://www.youtube.com/playlist?list=PL_CkpxkuPiT9udgCeqZpS4HKF6uIzra3r):
4 | This tutorial focuses on the basics you need to know to get started in running
5 | Python on your computer for data science! For this tutorial we cover the
6 | basics on what you need to know and what you need to install.
7 | - [r/learnpthon wiki](https://www.reddit.com/r/learnpython/wiki/index/) - a
8 | collection of resources for learning all things Python.
9 | - [Python Tutor](https://pythontutor.com/visualize.html#mode=edit): a tool for visualizing program memory
10 |
11 | ## Trace Tables
12 |
13 | - [An online trace table](https://www.101computing.net/trace-table/)
14 | - [Python Exercise 1 Trace Tables (John Philip Jones)](https://www.youtube.com/watch?v=pVeSya6nYuQ):
15 | A clear and complete explanation of how and why to use trace tables.
16 | - [Trace tables tutorial GCSE Computer Science (Computer Science Tutorials)](https://www.youtube.com/watch?v=UbANyxE7pGE):
17 | Detailed step through with a `while` loop.
18 | - [2.1 Trace tables (Craig'n'Dave)](https://www.youtube.com/watch?v=SCjfhbwY3KM):
19 | Detailed step through with a `for-in` loop.
20 | - Boura's Page -
21 | [intro](https://www.bouraspage.com/repository/algorithmic-thinking/what-is-a-trace-table#google_vignette),
22 | [variables example](https://www.bouraspage.com/repository/algorithmic-thinking/exercise-creating-a-trace-table),
23 | [conditional example](https://www.bouraspage.com/repository/algorithmic-thinking/exercise-trace-tables-and-single-alternative-decision-structures):
24 | Completed code + trace tables to study.
25 |
26 | ## Program Visualization Tools
27 |
28 | - [Python Tutor](https://pythontutor.com/visualize.html#mode=edit): A website with _statement-level_ stepping for short Python programs and clear memory visualizations.
29 | - [Thonny IDE](https://thonny.org): A downloadable programming environment with _expression-level_ stepping, memory visualization and debugging tools.
30 | - [Futurecoder IDE](https://futurecoder.io/course/#ide): A website with 3 ways to visualize your program execution: _[Snoop](https://pypi.org/project/snoop/), [Python Tutor](https://pythontutor.com/visualize.html#mode=edit) and [Birdseye](https://pypi.org/project/birdseye/)_
31 | - [The `trace` Module](https://docs.python.org/3/library/trace.html): A built-in python module for creating traces of your program's execution.
32 | - `$ python -m trace -t path/to/file.py`
33 | - `$ python -m trace -c path/to/file.py`
34 | - [The VSCode Debugger](https://code.visualstudio.com/docs/python/debugging)
35 |
36 | ## Errors
37 |
38 | - [Syntax vs. Semantics in Programming Languages (Udacity)](https://www.youtube.com/watch?v=vP-mn62EF0o)
39 | - [Syntax, Runtime and Logical Errors in Python (Learn Learn Scratch Tutorials)](https://www.youtube.com/watch?v=ToPP5UGgJUM)
40 | - [Syntax, Runtime and Semantic Errors (Omar Shaaban)](https://www.youtube.com/watch?v=bN0oGYD3z60) - _"Semantic errors" in this video are what we call Bugs_
41 | - [Python Error Types (Homawccc)](https://www.youtube.com/watch?v=Kf6dvup_6Mo)
42 |
43 | ## Tutorials and Courses
44 |
45 | - [Programming 24](https://programming-24.mooc.fi): Introduction to programming Python from the University of Helsinki.
46 | - [Automate the Boring Stuff](https://automatetheboringstuff.com): A pleasant introduction to Python with plenty of examples and exercises.
47 | - By the same author - [Cracking Codes with Python](https://inventwithpython.com/cracking/): Practice Python by studying codes, cyphers and encryption.
48 | - [Computational Core: Introduction to Python (KSU)](https://textbooks.cs.ksu.edu/intro-python/): A great course with live exercises, program visualization (_Python Tutor_) and worked examples.
49 | - [Python for Everybody](https://www.py4e.com): This web site is building a set
50 | of free materials, lectures, book and assignments to help students learn how
51 | to program in Python.
52 | - [John Philip Jones](https://www.youtube.com/@johnphilipjones)
53 | - [Python Basics](https://www.youtube.com/playlist?list=PL6lxxT7IdTxHSpoenjm2Iue9y04ewdvGn):
54 | A good video series and resources for learning Python.
55 | - [Exercises on Syntax Errors](https://www.youtube.com/playlist?list=PL6lxxT7IdTxGEHq3favz7SXHbPr86bLM9):
56 | Helpful visuals and explanations to understand a variety of Python syntax
57 | errors.
58 | - Programming with Mosh:
59 | - [Python for Beginners - Learn Coding with Python in 1 Hour](https://www.youtube.com/watch?v=kqtD5dpn9C8)
60 | - [Python Full Course for Beginners](https://www.youtube.com/watch?v=_uQrJ0TkZlc):
61 | 6 hours, 14 minutes and 6 seconds of clear explanations and practice.
62 | - [Complete Python Masterclass in Arabic (Code with Noor)](https://www.youtube.com/playlist?list=PLaOfjyVFnPmW1sycl5qH3PH_vymkguOq8):
63 | Introduction to Python basics. - _Arabic_
64 | - [Future Coder (Alex Hall)](https://futurecoder.io): A great interactive,
65 | project-based Python tutorial with build-in assessments and hints. - _English,
66 | French, Tamil_
67 | - [Pynative](https://pynative.com): This site has a tutorial, exercises,
68 | quizzes, online editor, and more.
69 | - [Programiz](https://www.programiz.com/python-programming): Interactive online
70 | Python tutorial.
71 | - [LearnPython](https://www.learnpython.org/): An interactive online tutorial.
72 | - [coddy.tech](https://coddy.tech): An interactive online tutorial, mobile-friendly.
73 | - [Introduction to Scripting in Python Specialization](https://www.coursera.org/specializations/introduction-scripting-in-python): This specialization is intended for beginners who would like to master essential programming skills.
74 | - [Python Full Course 2024 (Bro Code)](https://www.youtube.com/watch?v=ix9cRaBkVe0) - _12 hours?!_
75 |
76 | ## References
77 |
78 | - [The official Python documentation](https://docs.python.org/3/) - _Spanish,
79 | French, English, Japanese, Korean, Brazilian Portuguese, Turkish, Simplified
80 | Chines, Traditional Chinese_
81 | - [30 days of Python](https://github.com/Asabeneh/30-Days-Of-Python) - A good
82 | Python reference and cheat sheet for offline review.
83 |
--------------------------------------------------------------------------------
/retrospectives.md:
--------------------------------------------------------------------------------
1 | # Retrospectives
2 |
3 | - [Retrospective Academy](https://www.retrium.com/ultimate-guide-to-agile-retrospectives/intro)
4 | - [Do's and don't's](https://www.inloox.com/company/blog/articles/do-s-and-don-ts-how-to-conduct-effective-retrospectives/)
5 | - [3 tips](https://echometerapp.com/en/retrospective-action-items-tips-examples/)
6 | - [Remote Retrospectives](https://www.atlassian.com/blog/teamwork/run-retrospective-distributed-team-fun)
7 |
--------------------------------------------------------------------------------
/tech_foundations.md:
--------------------------------------------------------------------------------
1 | # Tech Foundations
2 |
3 | ## What is the Internet?
4 |
5 | - [In 5 minutes](https://www.youtube.com/watch?v=7_LPdttKXPc)
6 | - [Foundations of the Web](https://shawnr.gitbooks.io/foundations-of-the-web/)
7 | - [The Odin Project's intro](https://www.theodinproject.com/courses/web-development-101/lessons/how-does-the-web-work)
8 | - [Time-Lapse Maps of the Internet](https://www.vox.com/a/internet-maps)
9 | - [internet for webdevs](https://www.youtube.com/watch?v=e4S8zfLdLgQ) \(and
10 | there's a part two\)
11 | - What happens when you google something?
12 | [article](https://github.com/alex/what-happens-when),
13 | [video](https://www.youtube.com/watch?v=dh406O2v_1c)
14 |
15 | ## Typing Games
16 |
17 | - [shortcutfoo.com](https://www.shortcutfoo.com/)
18 | - [speedcoder.net](https://www.speedcoder.net/lessons/)
19 | - [speedtyper.dev](https://www.speedtyper.dev/)
20 | - [typing.io](https://typing.io/)
21 | - [how-to-type.com](https://www.how-to-type.com/typing-practice/programming/)
22 | - [thepracticetest.com](https://thepracticetest.com/typing/practice/programming-symbols/)
23 | - [mltype](https://github.com/jankrepl/mltype)
24 | - [Typer](https://berkerol.github.io/typer/)
25 |
--------------------------------------------------------------------------------
/vscode.md:
--------------------------------------------------------------------------------
1 | # Visual Studio Code
2 |
3 | ## Tutorials
4 |
5 | - [IHateTomatoes](https://www.youtube.com/playlist?list=PLkEZWD8wbltm8T3mS7SMCpT6WlnyIP50T)
6 | - [Tech with Tim](https://www.youtube.com/watch?v=ORrELERGIHs)
7 | - [Microsoft](https://code.visualstudio.com/docs/introvideos/basics)
8 | - [Academind](https://www.youtube.com/watch?v=VqCgcpAypFQ)
9 |
10 | ## VSCode Online
11 |
12 | [GitHub CodeSpaces](https://github.com/features/codespaces) allows you open any
13 | GitHub repository in an online VSCode instance. This is useful if you don't have
14 | VSCode installed, or need to code quickly on another computer. But it has some
15 | limitations: the free tier has time limits, it requires a good internet
16 | connection, you cannot customize it the way you can if you download VSCode.
17 |
18 | [VSCode.dev](https://vscode.dev) provides a free, zero-install Microsoft Visual Studio Code experience running entirely in your browser, allowing you to quickly and safely browse source code repositories and make lightweight code changes -> [the docs](https://code.visualstudio.com/docs/editor/vscode-web).
19 |
20 | ## Writing Markdown in VSCode
21 |
22 | - [Traversy](https://www.youtube.com/watch?v=HUBNt18RFbo)
23 | - [James Q Quick](https://www.youtube.com/watch?v=pTCROLZLhDM)
24 |
25 | ## Developing Python in VSCode
26 |
27 | VSC is the text editor you will use to write code at Emerging. And it's way more
28 | than just a text editor! Take a look through these links to start learning all
29 | you can do with VSC. You don't need to understand everything right away, there
30 | will be more than enough time to practice:
31 |
32 | - [academind VSC tutorial](https://www.youtube.com/watch?v=VqCgcpAypFQ)
33 | - [shortcuts cheatsheet](https://vscode-shortcuts.com/)
34 | - [The Coding Train](https://www.youtube.com/watch?v=yJw0SyKO9IU)
35 | - VSC Intro from VSC
36 | - [tutorial step-through](https://code.visualstudio.com/docs/introvideos/basics)
37 | - [get started](https://code.visualstudio.com/docs/getstarted/introvideos)
38 | - Are you using Windows?
39 | - [Windows Subsystem for Linux](https://docs.microsoft.com/en-us/windows/wsl/install-win10)
40 | - [WSL with VSCode](https://docs.microsoft.com/en-us/windows/wsl/tutorials/wsl-vscode)
41 | - [nvm command not found](https://dev.to/duhbhavesh/nvm-command-not-found-1ho)
42 | - [Guide for installing extensions in VSCode.](https://code.visualstudio.com/learn/get-started/extensions)
43 | - [ArjanCodes](https://www.youtube.com/watch?v=fj2tuTIcUys)
44 |
45 | Some tutorial series covering how to use the Python debugger in VSCode. These
46 | tutorials are not in a special order, look around and find the one that works
47 | best for you:
48 |
49 | - [Boris Paskhaver](https://www.youtube.com/playlist?list=PLQzZ4krxwT9Yay3kz8ly4wXiYJHzMtsWi)
50 | - [Ghost Together](https://www.youtube.com/watch?v=oCcTiRGPogQ)
51 | - [Tech with Tim](https://www.youtube.com/watch?v=7qZBwhSlfOo)
52 | - [The examples in this repo](https://denepo.js.org/watch/?url=https://raw.githubusercontent.com/MIT-Emerging-Talent/debugging/main/0_stepping_through/guide.mp4)
53 |
--------------------------------------------------------------------------------