You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert

3
3
4
-
### Open Source Society University
5
-
6
-
:mortar_board:**Path to a free self-taught graduation in Computer Science!**
4
+
<h3align="center">Open Source Society University</h3>
5
+
<palign="center">
6
+
Path to a free self-taught graduation in Computer Science!
7
+
</p>
7
8
8
9
## Contents
9
10
@@ -19,11 +20,9 @@
19
20
20
21
## About
21
22
22
-
This is a **solid path** for those of you who want to complete a Computer Science course on your own time, **for free**, with courses from the **best universities** in the World.
23
-
24
-
In the future, more categories and/or courses will be added to this list or a more advanced/specialized list.
23
+
This is a **solid path** for those of you who want to complete a **Computer Science** course on your own time, **for free**, with courses from the **best universities** in the World.
25
24
26
-
Initially, we will also give preference to MOOC (Massive Open Online Course) type of courses because those courses were created with our style of learning in mind.
25
+
In our curriculum, we gave preference to MOOC (Massive Open Online Course) type of courses because those courses were created with our style of learning in mind.
27
26
28
27
## Becoming an OSS student
29
28
@@ -63,37 +62,54 @@ That is why we are using this strategy.
63
62
64
63
## Curriculum
65
64
66
-
-[Introduction](#introduction)
65
+
-[Introduction to Computer Science](#introduction-to-computer-science)
-[Natural Language Processing](#natural-language-processing)
84
92
-[Big Data](#big-data)
85
93
-[Data Mining](#data-mining)
86
94
-[Internet of Things](#internet-of-things)
95
+
-[Specializations](#specializations)
87
96
88
97
---
89
98
90
-
### Introduction
99
+
### Introduction to Computer Science
91
100
92
101
Courses | Duration | Effort
93
102
:-- | :--: | :--:
94
103
[Introduction to Computer Science](https://www.edx.org/course/introduction-computer-science-harvardx-cs50x#!)| 12 weeks | 10-20 hours/week
95
104
[Introduction to Computer Science and Programming Using Python](https://www.edx.org/course/introduction-computer-science-mitx-6-00-1x-5#!)| 9 weeks | 15 hours/week
96
105
[Introduction to Computational Thinking and Data Science](https://www.edx.org/course/introduction-computational-thinking-data-mitx-6-00-2x-2#!)| 10 weeks | 15 hours/week
106
+
[From Nand to Tetris](https://www.coursera.org/course/nand2tetris1) | 7 weeks | 5-10 hours/week
107
+
108
+
### Math (Mathematical Thinking)
109
+
110
+
Courses | Duration | Effort
111
+
:-- | :--: | :--:
112
+
[Effective Thinking Through Mathematics](https://www.edx.org/course/effective-thinking-through-mathematics-utaustinx-ut-9-01x) | 9 weeks | 5 hours/week
97
113
98
114
### Program Design
99
115
@@ -103,6 +119,12 @@ Courses | Duration | Effort
103
119
[Systematic Program Design- Part 2: Arbitrary Sized Data](https://www.edx.org/course/systematic-program-design-part-2-ubcx-spd2x)| 5 weeks | 8-12 hours/week
104
120
[Systematic Program Design- Part 3: Abstraction, Search and Graphs](https://www.edx.org/course/systematic-program-design-part-3-ubcx-spd3x)| 5 weeks | 8-12 hours/week
105
121
122
+
### Math (Discrete Math)
123
+
124
+
Courses | Duration | Effort
125
+
:-- | :--: | :--:
126
+
[Mathematics for Computer Science](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-042j-mathematics-for-computer-science-fall-2010/index.htm)| - | -
127
+
106
128
### Algorithms
107
129
108
130
Courses | Duration | Effort
@@ -115,10 +137,9 @@ Courses | Duration | Effort
115
137
116
138
Courses | Duration | Effort
117
139
:-- | :--: | :--:
118
-
[Introduction to Functional Programming](https://www.edx.org/course/introduction-functional-programming-delftx-fp101x-0#ct-read-review-widget)| 7 weeks | 4-6 hours/week
[Effective Thinking Through Mathematics](https://www.edx.org/course/effective-thinking-through-mathematics-utaustinx-ut-9-01x)| 9 weeks | 5 hours/week
135
-
[Applications of Linear Algebra Part 1](https://www.edx.org/course/applications-linear-algebra-part-1-davidsonx-d003x-1#ct-read-review-widget)| 5 weeks | 12-18 hours/week
136
-
[Applications of Linear Algebra Part 2](https://www.edx.org/course/applications-linear-algebra-part-2-davidsonx-d003x-2)| 4 weeks | 12-18 hours/week
137
-
[Linear and Discrete Optimization](https://www.coursera.org/course/linearopt)| 7 weeks | 3-6 hours/week
[Engineering Software as a Service (SaaS), Part 1](https://www.edx.org/course/engineering-software-service-saas-part-1-uc-berkeleyx-cs169-1x)| 9 weeks | 12 hours/week
153
177
[Engineering Software as a Service (Saas), Part 2](https://www.edx.org/course/engineering-software-service-saas-part-2-uc-berkeleyx-cs169-2x)| 8 weeks | 12 hours/week
154
178
[Software Processes and Agile Practices](https://www.coursera.org/learn/software-processes-and-agile-practices)| 4 weeks | 6-8 hours/week
[Introduction to Probability - The Science of Uncertainty](https://www.edx.org/course/introduction-probability-science-mitx-6-041x-0)| 16 weeks | 12 hours/week
@@ -257,27 +329,23 @@ You must focus on your **habit**, and **forget** about goals. Try to invest 1 ~
257
329
258
330
> See more about "Commit to a process, not a goal" [here](http://jamesclear.com/goals-systems).
259
331
260
-
### How can I track/show my progress?
332
+
### Project Based
261
333
262
-
To **track** your progress, you should update the profile that you created and add the courses that you began or ended.
334
+
Here in **OSS University**, you do **not** need to take exams, because we are focused on **real projects**!
263
335
264
-
To **show**your progress, you should create a repository on GitHub to put all of the files that you created for each course.
336
+
In order to show for everyone that you **successfully**finished a course, you should create a **"startup project"**.
265
337
266
-
You can create one repository per course, or just one repository that will contain all of the files for each course. The first option is our preferred approach.
338
+
> "What does it mean?"
267
339
268
-
**ps**: You should share **only**files that you are **allowed**to!**Do NOT disrespect the code of conduct**that you signed in the beginning of some courses.
340
+
After finish a course, you should think about a **real problem** that you can solve using the acquired knowledge in the course. You don't need to create a big project, but you must create something to **validate**and**consolidate** your knowledge, and also to show to the world that you are capable to create something useful with the concepts that you learned.
269
341
270
-
[Be creative](#be-creative)in order to show your progress! :smile:
342
+
The projects of all students will be listed in [this](projects.md) file. Submit your project's informations in that file after you conclude it.
271
343
272
-
### Cooperative work
344
+
**You can create this project alone or with other students!**
273
345
274
-
**We love cooperative work**! But is quite difficult to manage a large base of students with specific projects. Use our channels to communicate with other fellows to combine and create new projects.
346
+
> Some project suggestions [here](https://github.com/karan/Projects)and [here](https://github.com/ericdouglas/app-specs).
275
347
276
-
### Which programming languages should I use?
277
-
278
-
My friend, here is the best part of liberty! You can use **any** language that you want to complete the courses.
279
-
280
-
The **important** thing for each course is to **internalize** the **core concepts** and to be able to use them with whatever tool (programming language) that you wish.
348
+
And you should also...
281
349
282
350
### Be creative!
283
351
@@ -291,7 +359,22 @@ Here are some tips about how you can do that:
291
359
292
360
-**Articles**: create blog posts to synthesize/summarize what you learned.
293
361
-**GitHub repository**: keep your course's files organized in a GH repository, so in that way other students can use it to study with your annotations.
294
-
-**Real projects**: you can try to develop at least **one real project** for each course that you enroll. It doesn't need to be a big project, just a **small one** to **validate** and **consolidate** your knowledge. Some project suggestions [here](https://github.com/karan/Projects) and [here](https://github.com/ericdouglas/app-specs).
362
+
363
+
### Cooperative work
364
+
365
+
**We love cooperative work**! Use our [channels](#community) to communicate with other fellows to combine and create new projects!
366
+
367
+
### Which programming languages should I use?
368
+
369
+
My friend, here is the best part of liberty! You can use **any** language that you want to complete the courses.
370
+
371
+
The **important** thing for each course is to **internalize** the **core concepts** and to be able to use them with whatever tool (programming language) that you wish.
372
+
373
+
### Content Policy
374
+
375
+
You must share **only** files that you are **allowed** to! **Do NOT disrespect the code of conduct** that you signed in the beginning of some courses.
376
+
377
+
[Be creative](#be-creative) in order to show your progress! :smile:
295
378
296
379
### Stay tuned
297
380
@@ -309,6 +392,18 @@ The **only things** that you need to know are how to use **Git** and **GitHub**.
309
392
310
393
**ps**: You don't need to do all of the courses. Just pick one and learn the basics because you will learn more on the go!
311
394
395
+
## Change Log
396
+
397
+
**Curriculum Version**: `1.0.0`
398
+
399
+
To show **respect** to all of our students, we will keep a [CHANGELOG](CHANGELOG.md) file that contains all the alterations that our curriculum may suffer.
400
+
401
+
Now we have a **stable** version of the curriculum, which won't change anymore, only in exceptional cases (outdated courses, broken links, etc).
402
+
403
+
Our students can **trust** in this curriculum because it has been **carefully planned** and covers **all** the **core topics** that a conventional Computer Science course covers.
404
+
405
+
We also include modern topics, making this course one of the **best options** for those who want to become a Computer Scientist and/or a Software Engineer.
406
+
312
407
## How to collaborate
313
408
314
409
You can [open an issue](https://help.github.com/articles/creating-an-issue/) and give us your suggestions as to how we can improve this guide, or what we can do to improve the learning experience.
@@ -319,6 +414,8 @@ Let's do it together! =)
319
414
320
415
## Community
321
416
417
+
Subscribe to [/r/opensourcesociety](https://www.reddit.com/r/opensourcesociety/)!
418
+
322
419
Join us in our [group](https://groups.google.com/forum/#!forum/open-source-society-university)!
323
420
324
421
You can also interact through [GitHub issues](https://github.com/open-source-society/computer-science-and-engineering/issues).
@@ -327,15 +424,16 @@ We also have a chat room! [ profile!
329
426
330
-
> **ps**: A forum is an ideal way to interact with other students as we do not lose important discussions, which usually occur in communication via chat apps. **Please use our forum for important discussions**.
427
+
> **ps**: A forum is an ideal way to interact with other students as we do not lose important discussions, which usually occur in communication via chat apps. **Please use our subreddit/group for important discussions**.
331
428
332
429
## Next Goals
333
430
334
-
-[Adding our university page at Linkedin](https://help.linkedin.com/app/answers/detail/a_id/40128/~/adding-a-new-university-page), so that way we will be able to add **OSS University** in our Linkedin profile.
431
+
-[Add our University page at Linkedin](https://help.linkedin.com/app/answers/detail/a_id/40128/~/adding-a-new-university-page), so in that way we will be able to add **OSS University** in our Linkedin profile.
335
432
336
433
## References
337
434
338
435
-[Google - Guide for Technical Development](https://www.google.com/about/careers/students/guide-to-technical-development.html)
339
436
-[Coursera](https://www.coursera.org/)
340
437
-[edX](https://www.edx.org)
341
438
-[MIT Open Courseware](http://ocw.mit.edu/courses/#electrical-engineering-and-computer-science)
439
+
-[Obtaining a Thorough CS Background Online](http://spin.atomicobject.com/2015/05/15/obtaining-thorough-cs-background-online/)
0 commit comments