Computer-science: any difference between (Software Development) and (Computer Science Essentials for Software Development) on edx

Created on 25 Apr 2017  路  3Comments  路  Source: ossu/computer-science

I want to ask is there any difference between Software Development
https://www.edx.org/micromasters/software-development
and the new one Computer Science Essentials for Software Development
https://www.edx.org/professional-certificate/computer-science-essentials-software
or you maybe add it to curriculum

Most helpful comment

They have similarities, but they're quite different.

The Software Development series is just that -- it's about software development, and it teaches a method of systematic program design using three different programming languages (Racket, Java, and TypeScript), with increasing complexity from beginning to end. The first two courses teach functional programming, the second two object-oriented, and the third two you can choose any paradigm you wish, so the series overall is relatively unopinionated.

Computer Science Essentials for Software Development looks like a shallow alternative to our entire Core CS curriculum. But instead of spending months learning each major subject as you do in our curriculum, this series only has you spend a few weeks on each one. There's no way it can teach all that material to sufficient depth in such a short time!

Additionally, the exclusive use of Java and object-oriented programming is problematic in that series, as although it's true that Java is currently the most popular language in the world, to be truly educated in computer science you can't limit yourself to whatever language and paradigm happens to be popular right here and now. Our curriculum, on the other hand, strives to balance the needs of a proper education with the needs of finding a good job. Consequently, we have selected courses that teach a variety of languages and paradigms that will benefit the student for their whole lifetime.

You might instead look at this new series as an alternative to the 'Introduction to CS' course, but the problem with this is that the third course in the series has prerequisites that the series itself is unable to fulfill (discrete math and probability). This is a strange design choice, as you would have to stop taking the series halfway through and go study some advanced math before coming back to it. It's too advanced for an introduction and too shallow for in-depth study.

All 3 comments

They have similarities, but they're quite different.

The Software Development series is just that -- it's about software development, and it teaches a method of systematic program design using three different programming languages (Racket, Java, and TypeScript), with increasing complexity from beginning to end. The first two courses teach functional programming, the second two object-oriented, and the third two you can choose any paradigm you wish, so the series overall is relatively unopinionated.

Computer Science Essentials for Software Development looks like a shallow alternative to our entire Core CS curriculum. But instead of spending months learning each major subject as you do in our curriculum, this series only has you spend a few weeks on each one. There's no way it can teach all that material to sufficient depth in such a short time!

Additionally, the exclusive use of Java and object-oriented programming is problematic in that series, as although it's true that Java is currently the most popular language in the world, to be truly educated in computer science you can't limit yourself to whatever language and paradigm happens to be popular right here and now. Our curriculum, on the other hand, strives to balance the needs of a proper education with the needs of finding a good job. Consequently, we have selected courses that teach a variety of languages and paradigms that will benefit the student for their whole lifetime.

You might instead look at this new series as an alternative to the 'Introduction to CS' course, but the problem with this is that the third course in the series has prerequisites that the series itself is unable to fulfill (discrete math and probability). This is a strange design choice, as you would have to stop taking the series halfway through and go study some advanced math before coming back to it. It's too advanced for an introduction and too shallow for in-depth study.

So can we take software development before cs50 and mit Python course
And if there is any social media to contact with you

@ahmedvip2008 you can use our Gitter channel

Was this page helpful?
0 / 5 - 0 ratings

Related issues

spamegg1 picture spamegg1  路  4Comments

alwongg picture alwongg  路  4Comments

lixsee picture lixsee  路  3Comments

mattoy77 picture mattoy77  路  4Comments

Selhar picture Selhar  路  3Comments