EdX.org -- DEV204x -- Programming with C# (free or paid certificate)


I am writing to review the EdX.org course DEV204x – Programming with C# …

First, let me say, that at the time I began taking this, I had completed my Front-End Development Certificate through freeCodeCamp.com. Upon finishing that, I attempted to learn React through the facebook.github tutorials however, I struggled early and, for personal/career reasons, chose to begin looking for Back-End training.

So, why then, did I choose C# and Visual Studio over the freeCodeCamp Back-End curriculum which focused on Node.js, Express.js, and MongoDB? Basically, I work in Geospatial Information Systems and am looking to be a developer in that field. In that field, a lot of data and applications are done on legacy systems that were built within the .Net framework or, interact with the .Net framework (SQL server).

I had a conversation with a young Back-End developer, probably in his mid-to-late twenties who–after looking at the fCC curriculum–said that the fCC curriculum uses a lot of technologies which are newer and utilized more by development shops and startups. C# and the .Net framework would be employed by more Fortune 500 companies and government clients. It was an interesting conversation and I do intend to return to complete the fCC Back-End and Data Visualization certificates.

Moving on, I am in module 3 of 12 and, I can tell you, that it is a pretty decent course. I’m hit some frustrating points however, I believe that is due to my comfort and familiarity with fCC and this, just being something different, has me a bit rattled early. It is frustrating also, to return to “Hello World” material after completing the Simon Game.

What I find most surprising though, is that within the writing and videos, there are these snippets of information that seem to piece together concepts and ideas I had come across in fCC that never really clicked or, they simplify something with a definition that just resonates across languages.

Case in point: In a video on Methods and Exception Handling, a definition for methods is given which turned on a light bulb for me, it may not prove too exceptional for you, but I’m sure something else will.

It is in cases like this that I feel I am getting the most out of this course beyond learning the (relatively minor) nuances in syntax and structure of C# versus say, JavaScript.

Beyond that, the exposure to Visual Studio and the powers and problems which come along with that have been very frustrating, and I can say, beneficial. It’s not like learning to drive a new car, it’s like driving a car versus a submarine. You’ll learn, just keep in mind it is waaaaaaaay more complicated and you can’t actually see where you’re going.

Well, thank you very much for reading this far. If you get a chance please drop me a line here or on gitter. I am @DanielMW34.


P.S. “Methods are fundamental to object oriented programming. They allow us to encapsulate behavior and functionality with the Objects we create. In C#, we can create our own methods, we can call those methods-passing in information that the method needs to perform its functions. And, we can return data from those methods as well.”

1 Like

Sounds good.

What do you think of this information? http://gisgeography.com/free-gis-programming-tutorials/

Thanks for leaving this excellent and detailed review. I wish we had more reviews of this caliber!

How would you rate this on a scale of 1 - 5 stars? Can you leave a star rating?

Also, if you take any other edX courses, you should also review these. Many campers are wondering what courses they should take :slight_smile:

1 Like

I will rate it with stars as I progress further along in the curriculum. Right now I feel it would be too early to provide a rating.

The first half of the article up to “Build Sophisticated Webmaps using Leaflet, OpenLayers and More” is something that can be done through freeCodeCamp or, for the Python, ESRI courses. I did every ESRI course on Python that cost less than $1000 (the TOTAL cost of all these courses was probably around $192) and I feel more than competent with Python.

From “Build Sophisticated Webmaps using Leaflet, OpenLayers and More” and moving forward, I would recommend the trainings they list. The Databases – SQL and UML is probably soon to be on my resume. I would also recommend Stanford Online Computer Science 101–amazing course, used to be part of fCC curriculum–as well as the Stanford course on introduction to databases. DO NOT (and this is for me also) Pass the Opportunity to learn R-spatial. The course on object-oriented programming with JavaScript may be valuable for the things you learn ABOUT code, kind of like what I learned about methods and wrote about in my post.

Question: Are you a GIS “person/professional”? If so we should talk… ASAP :slight_smile:

@DanielMW34 I will have to disagree a little. I work in the US Federal Gov’t as a Full Stack ASP.Net Web Developer. Yes, there are a lot internal systems that use the Java, C# and .Net framework. However, I see a shift towards other languages like PHP, Ruby, Ruby on Rails, Node.js, Express.js, React.js, MongoDB, and PostgreSQL.

I see the U.S. Digital Service and GSA 18F Team have been pushing more development of Internet and Intranet web applications usinng the previous mentioned languages.

I will say the concepts of OOP is similar to all OOP languages. In the end, you need to select the best appropriate language and framework based the project requirements.

There is a package for Node that allows you to run .Net CLR DLLs within a Node project.

  1. Integrating Node.js with a C# DLL (dzone.com)
  2. Integrating Node.js with a C# DLL (juristr.com)
  3. Edge.js run Node.js and .Net in-process, a software play in two acts.

I took this class and thought it was excellent. I was a programmer in the 80’s and early 90s and recently decided to try to get back into programming. I had had alot of experience with c++ in those early coding days and I thought it would be a good way to get some programming experience. I was lucky to have my husband who is a principal developer at Microsoft to help me when things got difficult, but I tried to rely on his help as little as possible, and I was able to do most of the work without to much assistance from him. I feel the information is well presented and the homework assignments are in-depth enough to challenge the student to really understand the language. I would definitely give this class 5 stars.