Open Source CS Degree - Introduction And Overview (Part 1)

in #utopian-io6 years ago

Repository

https://github.com/ossu/computer-science

Introduction

Here is something you don't see every day. A completely open source and free CS (Computer Science degree). This is a genius idea because it takes the best of the internet (access to information) and turns it into something valuable, with shape, form, path, and after-path!

The internet has given us the great power of information. You can learn almost anything, from a new language, to literally rocket science. But we use those great powers to see memes (nothing wrong with it). From that idea, of wasted potential, the OSSU, Open Source Society University, was born.

What is OSSU and how the computer science degree works

OSSU is a "virtual" and collaborative university. The first, and apparently only so far, course from them is a computer science degree. On their GitHub page they present you with a huge amount of information of what path to follow, depending on your prior knowledge.

The course is a curated collection of classes from other sources. Imagine a repository that compiles the relatively "best" tutorials on YouTube and Medium, so that it forms a path similar, nearly identical, to the path of a real traditional CS course. That is what it is. A repository with a compilation of curated classes from third party sources. There are 86 contributors and the last update on the course was 5 days ago (an update on the license), so, it seems like they are working hard on making the path as close as possible to a traditional university's one.

The flow of the course is self-passed. The "university" will point you a path, and you are free to take the classes at your own rhythm. The content is from third-party providers, but everything is free. OSSU just compiles content from third parties, so you can follow a path that is similar, or identical, to the one a realm computer science student would follow.

Well, actually, not everything is free. I have started studying on this "university", and I can see that most of those "third party" class providers charge you to take assignments. So, you can take any class for free, but you would have to pay if you want someone to review your work and give you assignments to help you practice.

But, that is not a huge problem, OSSU thought about it, and they have on their university a page dedicated to assignments, so you can practice what you have learned.

Doing assignments

As said before, most of the third party classes have assignments that can only be reviewed if you pay for it. But that is not an issue, the open source degree has it's own page of assignments, and there is another repository full of projects that you can do to test your skills and see where you can improve.

Captura de Tela 20190127 às 21.20.00.png

Of course, this might not be very suitable for professional procrastinators. the assignments are not mandatory (just like everything else on the course), so you can skip any or all of them if you desire to do so.

But here is my personal tips: Do the assignment, and do well.

You will regret not doing so, because when you don't do the projects/tasks/assignments, you think you have learned what was taught, just to discover, later, that you didn't. Don't waste your time and don't fool yourself. Get some work done.

Does it have the same value as a real CS degree?

Well, to answer if it has the same value as a real computer science degree, I would have to know the definition of value. I have studied Software Engineering at a university, I am now taking another degree in Computer Science in another university, but I have also started taking OSSU's CS classes (RIP free time). I can confirm that the path seems pretty much on par with any reputable university.

And that is expected, with over 80 contributors and frequent updates. The path they have designed does not seem very different from what I saw/am seeing in traditional universities.

However, of course, on the real world work market, your employer would have to care enough while looking at your CV to search for "what is an open source CS degree". I am taking the course, but I have accepted that, for the job market, I will add nearly to no value to my CV by saying "well, I took this open source CS degree online".

But, outside of the employment market, I can see a real and high value for two kinds of people:

  • People that can't afford a paid CS degree but want to learn
  • People that are taking a CS degree but need extra resources to study

In the first case, if you already have a job, or don't, and want to be a computer scientist this course will fit you. You just need to keep in mind that, as said above, this course will not have the same value as a traditional course to land you a job. But, it is a great starting point! After finishing the course you will be capable of deciding which area of computer science you want to specialize, and from there take more courses online, let us say, in front end design. After you specialize in that, you can get started building your portfolio, and eventually get a job, not because of the degree, but because of the portfolio. Also, if your goal is not to get a job, but to be an entrepreneur, and build something, this will allow you to do that by giving a computer scientist knowledge!

The second case, and I can relate to it, is, you are taking a computer science (or engineering or software engineering or anything), but can't find good quality content to study more. I know how it feels when you feel like the content the university gives you is not enough. Maybe you can do the assignments and exams and tests from your traditional university, but you don't feel like you are "mastering it". So far, I think this course is a great supplementary resource and will surely help me on my new degree.

Also, related to this last case, if you are already graduated from a traditional CS course, you might feel that you "forgot" some basic stuff, and that may hurt you when you have to do something advanced but you can't because you lack the basics. This is a great supplementary course for those people too.

Captura de Tela 20190127 às 21.04.54.png

They offer, on their page, instructions on how can you keep track of your progress. Of course, you don't have to do, as they say, this is an open source course, you can clone the course and design your own path, skip what you think is unnecessary, etc.

The power of open source

Captura de Tela 20190127 às 21.12.57.png

So, this course does not have the market "worth" of a traditional course. But it pays off for having the advantages of every open source project:

It is updated constantly!

If you take a traditional CS course, you are stuck with that path. Chances are the course will change little while you take it.

As new technologies arrive, new content appears, and better classes are found by the curators, the course will just get better with time. Anyone can submit an issue, fork and improve the course. The said "power of the people" is what makes open source software great. Open source software evolves fast, and usually, bugs are also fixed fast.

The same logic above applies to this course. As long as new flaws or better content is found, the course will keep being updated.

On my software engineering degree, the course was "updated" a few times, but I couldn't take the "updated" classes because I have already gone through them. In this open source project, when the course is updated, I can go back and, whenever I want or can, take the new classes and update my knowledge myself.

What the path offer

Other than being updated constantly by a team of passionate contributors, the project gives you instructions on how to do things, even tips on how to get a job after you finish the degree.

Captura de Tela 20190127 às 21.32.15.png

Traditionally, people that learned from the computer, or without touch with a teacher in the real world, were called "self-taught", but that term is deprecated, as today on the internet you don't need to "teach yourself". At first, we had tutorials, that taught us things without we need to learn ourselves by trial and error. Then a few projects gave us a few paths, such as "what technologies to learn to be a front-end developer". But this is the next level. You don't need anymore to search yourself for content. This open-source course gives you what you have to do, the pace suggested, how to do, and everything in between and after.

For example, when you finish all the courses that, with that knowledge, you can already consider yourself a computer scientist, the course still gives you a path of "what to do next", like a "post-degree" and tips to get a job:
Captura de Tela 20190127 às 21.35.43.png

Open Source CS degree is awesome

Captura de Tela 20190127 às 21.31.27.png

Captura de Tela 20190127 às 21.28.24.png

There is a curated list on Github of "awesome" open source/free projects and programs.

This open-source computer science degree is listed on the awesome list, under the tab "Computer Science", as "Open Source Society University".

So, the course might not be recognized by an employer, but the open source community has already recognized the course as something "awesome" for the community. Something that adds value and empowers people.

I encourage you to, at least, go to the project page and read what do they have to offer. A real computer science is expensive, and you would lose nothing by giving a try. Also, if you get started with the course, but didn't like, you can give up (please, don't) and say you are "a computer science dropout, like Bill Gates, Steve Jobs or Mark Zuckerberg", without the spent money to be a traditional dropout! What a time to be alive!

Resources

Open source CS degree:
https://github.com/ossu/computer-science

Awesome list:
https://github.com/sindresorhus/awesome

Degree assignments:
https://github.com/ossu/computer-science/blob/dev/PROJECTS.md

Extra assignments:
https://github.com/karan/Projects

Beneficiaries

This post has as beneficiaries

using the SteemPeak beneficiary tool

Captura de Tela 20190122 às 16.07.11.png

Sort:  

Hello, @igormuba!

Thank you for another amazing blog post. This is such a wonderful and useful prioject, and I am happy you decided to share a few words about OSSU.

Your post is informative and well-illustrated with relevant graphic content. I like all the information provided, and I appreciate the fact that you took the time to share your personal knowledge and views. However, the project repository contains no code, and therefore it's not valid.

If you want to contribute content that is relevant to Utopian, please read our guidelines. I would also recommend reading our weekly Top Of Utopian posts to get an idea of the kind of content we particularly like.

I look forward to seeing awesome relevant content from you in the future.

Due to ineligibility, your contribution has not been evaluated.


Need help? Write a ticket on https://support.utopian.io/.
Chat with us on Discord.
[utopian-moderator]

Thanks for the information. I think I will continue with the series outside of Utopian as it is not valid.

Posted using Partiko Android

Congratulations @igormuba! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You received more than 10000 upvotes. Your next target is to reach 15000 upvotes.

Click here to view your Board
If you no longer want to receive notifications, reply to this comment with the word STOP

Support SteemitBoard's project! Vote for its witness and get one more award!

Congratulations! Your post has been selected as a daily Steemit truffle! It is listed on rank 22 of all contributions awarded today. You can find the TOP DAILY TRUFFLE PICKS HERE.

I upvoted your contribution because to my mind your post is at least 5 SBD worth and should receive 84 votes. It's now up to the lovely Steemit community to make this come true.

I am TrufflePig, an Artificial Intelligence Bot that helps minnows and content curators using Machine Learning. If you are curious how I select content, you can find an explanation here!

Have a nice day and sincerely yours,
trufflepig
TrufflePig