C# on edX - A Programmer's Review
Written by Nikos Vaggalis   
Friday, 29 May 2015
Article Index
C# on edX - A Programmer's Review
Peer Review

Surviving Peer Review 

Speaking of assignment grading, or Peer Review as it’s called, proved to be a most controversial feature ,a blessing and a curse.

Needles to say, it’s impossible for the staff to grade the work of that many students, hence a swarm like approach is utilized; each student grading another student’s work, coming full circle!

So after submitting your finished assignment and before getting a grade for it, the underlying engine presents you with 2 or 3 randomly chosen assignments which you have to grade according to a given set of guidelines.

The blessing part is that you get to see how other people solved the same problem and learn by observing their work, while getting to play instructor makes you think harder trying to spot the bug or trying to understand the way the grader thinks, suggesting solutions or making educated corrections, subsequently unlocking another bag of skills. 

The cursing part refers to the poor grading resulting from the peer not comprehending the code he attempts to grade, therefore inefficiently grading based on poor criteria; or not being interested in the whole process, therefore awarding just any grade to get it over with, which is not constructive; or just being mean and not giving a grade not based on guidelines but based on the mood of the moment!

What saves the day is that at any given time there are multiple random peers grading your work, with the system keeping the highest grades of them all.



A weak point of that system though, is that when you paste your code into the form for submission, the code loses its formatting making it harder for the reviewer to understand its structure, unless he’s willing to paste it back into Visual Studio himself. This adds another obstacle to obtaining a fair grade.

Yet another is that it’s all too easy to forget copying and pasting parts of the code, for example forgetting to submit the Class code which reside in different files from the Main code, resulting in the code not compiling at the other end and thus ending up with a penalty.

Issues like that could be easily eliminated if the system allowed for the uploading of whole solutions, which would gather all dependencies in one place.

Of course, the assignments have deadlines to be met, usually two assignments per week. Soon enough this scheme collapsed due to a variery of reasons such as the disparity in time zones and general confusion as to wghat was expected when. Therefore it was decided to drop the individual deadlines and make all the assignments expire one day before the end of the course.

Personally, I think this was an improvement as it lifted weight off people attending the course having full time jobs and/or families, who were finding strict deadlines very hard to meet.

Discussion Forums

The Peer review already implied that the course is strongly influenced by the community, but there are also the Discussion forums where students hang out asking any sort of questions about the material, the deadlines, the study’s structure or for help with their assignments. The staff is listening in too, and it’s not that infrequent that they reply on a variety of topics raised.



Personal Progress

The degree of difficulty of assignments varied a lot; some being highly involved and others being dead easy (for example the LINQ one required a mere replacement of 2 lines of code) or the same code being repeated, although enriched, in subsequent assignments.

To keep track of it all, there’s help in the form of the Progress section where you can get an overview of the work you’ve completed, and the grades thus far achieved.



Who should attend this course?

Summing up, I would recommend this course to the following categories of programmers:

  • For programmers familiar with C# but in need of a refresher or in need of getting up to date with the latest language developments. For example, migrating from the Event based pattern to using await and async.

  • Those coming from another language wanting to check how C# does it.

  • Anybody who is self taught in C# wanting to know more about its structure, flow and organization.

  • For people familiar with C# but ready to step up the level from beginner to intermediate


I would not recommend it to beginners in either C# or  programming in general because you have to have a good grasp of the underlying concepts, something not facilitated by its fast paced nature and wide array of topics covered

I found that it was a quality course in terms of its structure and comprehensive range of subjects. In terms of balance it was neither too deep nor too superficial and the rich variety of media helps in solidifying comprehension. There were no major setbacks apart from minor annoyances which I’m certain the staff will improve in future re-runs. 

At the end, many asked ‘what’s next, where to go next? looking for further guidance. The answer was to keep an eye on the forthcoming Microsoft courses on edX, including Building Cloud Apps with Microsoft Azure which starts on June 2, and on the Microsoft Virtual Academy. For instance, a course starting shortly after tackles the Microsoft Azure cloud platform where you can further advance your C# skills

To get an overview and form an expectation of the course, I would suggest dipping into this the Office Hours video, posted on YouTube, where Instructor Gerry O'Brien answers questions submitted by the students and discusses the pace and flow of the course. He also explains why the official solutions to the assignments are not handed over. (One reason is that the course will re-run; for the other one you’ve got to watch the video).



Although the start of the video covers housekeeping issues for the course that is now over, later it goes on to discussing programming issues how to go about solving problems and has intrinsic educational value.


Finally, to provide a full answer to the original questions set at the beginning of this review, I would answer Yes on all three occasions; just make sure you catch a re-run - whenever that is....

The second presentation starts on June 2, 2015 so follow the link to Programming with C#  to enrol.




Related Articles

Microsoft Courses On edX

Geekuni Dancer Web Development Course 

Microsoft Developer Certifications Demystified


To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, FacebookGoogle+ or Linkedin,  or sign up for our weekly newsletter.



raspberry pi books



or email your comment to: comments@i-programmer.info



Last Updated ( Sunday, 24 April 2016 )