Skip to content

Commit bd30d61

Browse files
committed
Merge branch 'hanjiexi-overhaul'
2 parents 6b5358a + 1175161 commit bd30d61

File tree

12 files changed

+787
-1065
lines changed

12 files changed

+787
-1065
lines changed

CHANGELOG.md

Lines changed: 98 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,104 @@
11
# Change Log
22

33
All notable changes to this project will be documented in this file.
4-
This project adheres to [Semantic Versioning](http://semver.org/).
4+
This project adheres *in spirit* to [Semantic Versioning](http://semver.org/):
5+
- "MAJOR" updates correspond to changing the topics studied within a subject
6+
- "MINOR" updates correspond to changing courses without changing the topics
7+
- "PATCH" updates correspond to aesthetic and non-essential additions/removals or changing order of classes for better progression
8+
9+
## [7.1.0] 2017-04-10
10+
### Updated
11+
- Reverted reformat of programming languages course
12+
13+
### Added
14+
- Reliable Distributed Algorithms courses
15+
- New Introduction to CS course
16+
17+
## [7.0.2] 2017-03-30
18+
### Updated
19+
- Moved optional online learning courses to extras/courses in a new section
20+
- Moved alternate computer architecture course to extras/courses
21+
22+
### Added
23+
- Scala specialization under Advanced applications
24+
25+
### Removed
26+
- Removed all but one choice for required readings to make the curriculum simpler
27+
28+
## [7.0.1] 2017-03-11
29+
### Updated
30+
- Fixed link to Bradfield's DIY computer science page
31+
32+
### Added
33+
- Note under Calculus One with links to errata and course progression recommendations
34+
- Optional courses under extras:
35+
- Strang's course on linear algebra
36+
- Berkeley's Structure and Interpretation of Computer Programs
37+
- Optional readings under extras:
38+
- Van Roy's advanced programming book
39+
- P&H's computer architecture book
40+
- Skiena's algorithms book
41+
- Strang's linear algebra book
42+
- Database Management Systems book
43+
- Tarr's book on creating your own Domain-specific language
44+
- Readings from various authors on distributed systems
45+
46+
## [7.0] 2017-03-09
47+
Complete overhaul of program structure
48+
49+
### Updated
50+
- Clarified contributor guidelines and moved them to separated file
51+
- Switched from many subjects to just four subjects with many topics
52+
- Consolidated free-books.md and paid-books.md into readings.md
53+
- Consolidated free-courses.md and paid-courses.md into courses.md
54+
- Replace old "How to Code" with new "How to Code" (Software Development MicroMasters)
55+
- Replace Princeton Algorithms (moved to [alternative courses](#extras/courses.md)) with Stanford Algorithms
56+
57+
### Added
58+
- Indicate prerequisites for all courses
59+
- Requirements: subject/topic requirements and project requirements
60+
- Required readings on Haskell, Prolog, Operating Systems
61+
- Courses: Dan Grossman's Programming Languages
62+
- Courses: From Nand to Tetris
63+
- Elective course: Intro to Parallel Programming
64+
- Elective course: LAFF: Programming for Correctness
65+
- Elective course: Introduction to Mathematical Thinking
66+
- Elective courses: Electricity and Magnetism
67+
- Elective courses: MIT's Computation Structures
68+
- Elective course: Multivariable Calculus
69+
- Elective course: ops-class.org
70+
- Elective course: Automata Theory
71+
- Elective course: Introduction to Logic
72+
- Elective course: Computational Geometry
73+
- Elective course: Formal Concept Analysis
74+
- Elective course: Game Theory
75+
- Elective specializations:
76+
- Robotics
77+
- Data Minig
78+
- Big Data
79+
- Internet of Things
80+
- Cloud Computing
81+
- Full Stack Web Development
82+
- Data Science
83+
- Pro specializations:
84+
- Mastering Software Development in R
85+
- Artificial Intelligence Engineer
86+
- Machine Learning Engineer
87+
- Cybersecurity
88+
- Android Developer
89+
90+
### Removed
91+
- Removed many dead links and obsolete courses
92+
- Removed per-course project requirement
93+
- Course: Object-Oriented Programming in Java
94+
- Course: Funtional Programming in Scala
95+
- Course: Computer Architecture (but left as a footnote)
96+
- Course: Intro to Theoretical Computer Science
97+
- Course: Software Processes and Agile Practices
98+
- Course: Operating Systems & System Programming
99+
- Course: Introduction to Cyber Security
100+
- Course: Parallel Computer Architecture and Programming
101+
- Course: UX Design for Mobile Developers
5102

6103
## [6.0] 2016-10-09
7104
### Updated

CONTRIBUTING.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Contributor guidelines
2+
3+
This project primarily uses GitHub for collaboration, however not all discussions are appropriate for GitHub.
4+
Please follow these guidelines:
5+
1. If you need help with the *academic* content of a course or are having general technical difficulties, please do not use GitHub for this.
6+
The best place to ask these types of questions is on the [subreddit](https://www.reddit.com/r/opensourcesociety/).
7+
2. If you have general problems with the program not specific to any course, such as preferring textbook-style learning over MOOCs,
8+
the subreddit is recommended as there people may be able to give you suggested alternatives.
9+
3. If you have *specific* and *substantive* criticisms of the curriculum, i.e. problems related to the progression/content of courses it would be appropriate to [open an issue](https://help.github.com/articles/creating-an-issue/) and give us your suggestions.
10+
4. If you have *non-substantive* updates to make to the curriculum, such as a course's URL having been moved, spelling/syntax errors, etc., please send a [pull request](https://help.github.com/articles/using-pull-requests/) to fix any mistakes that you have found.
11+
5. If you want to customize the curriculum for yourself, do of course [fork this project](https://help.github.com/articles/fork-a-repo/).
12+
6. If you want to suggest a new resource, send a pull request adding such resource to the [extras](https://github.com/open-source-society/computer-science/tree/master/extras) section.

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
The MIT License (MIT)
22

3-
Copyright (c) 2015 Open Source Society
3+
Copyright (c) 2017 Open Source Society
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

0 commit comments

Comments
 (0)