Computer science study plan.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

63 lines
2.2 KiB

## The Plan
### Tracks
We are following two tracks:
* Software Engineering Track
* Machine Learning Track
Software engineering track:
* Paper and pencil working out algorithms (physical 3-ring binder)
* Wiki: distilled, polished notes [https://charlesreid1.com/wiki/CS](https://charlesreid1.com/wiki/CS)
* Git: software engineering topics [TODO list](/TODOSoftwareEngineering.md)
* Git: code practice
* [https://git.charlesreid1.com/cs/java](https://git.charlesreid1.com/cs/java)
* [https://git.charlesreid1.com/cs/python](https://git.charlesreid1.com/cs/python)
* [https://git.charlesreid1.com/cs/c](https://git.charlesreid1.com/cs/c)
* Flashcards
Machine learning track:
* Paper and pencil notes working out algorithms etc (physical 3-ring binder)
* Wiki: distilled, polished notes and learninga [https://charlesreid1.com/wiki/ML](https://charlesreid1.com/wiki/ML)
* Summary of major concepts
* Answers/examples worked out more clearly
* Fast notes, for studying, not presentation, so snap photos and upload
* Git: to-do list for topics [TODO list](/TODOMachineLearning.md)
* Git: code practice
* [https://git.charlesreid1.com/cs/machine-learning](https://git.charlesreid1.com/cs/machine-learning)
* [https://git.charlesreid1.com/cs/java](https://git.charlesreid1.com/cs/java)
* [https://git.charlesreid1.com/cs/python](https://git.charlesreid1.com/cs/python)
* [https://git.charlesreid1.com/cs/c](https://git.charlesreid1.com/cs/c)
* Flashcards
Resources:
* Principal textbook used is Alpaydin book, Intro to Machine Learning
### Daily Plan
Each day:
- Pick one subject from the list.
- Watch videos on the topic.
- Implement the concept in Java or Python.
- Optionally, implement in C (and/or in C++, with or without the stdlib).
- Write tests to ensure code is correct.
- Create flashcards
After one week:
- Revisit and review
Long term strategy:
- Practice coding until you are sick of it.
- Add flashcards
- Work within limited constraints (think interviews).
- Know the built-in types.
Code:
- [Java](https://git.charlesreid1.com/cs/java)
- [Python](https://git.charlesreid1.com/cs/python)
- [C](https://git.charlesreid1.com/cs/c)
- [C++](https://git.charlesreid1.com/cs/cpp)