More and more classes are focusing on teaching real-world skills, however few of them are very successful at it. But, the Coursera class Startup Engineering did just that.
It had its drawbacks, such as the under-emphasis on lecture videos, but it was able to focus on the key goal, which was getting every student to wireframe their web app idea. Most students did not deviate from the generic templates that Balaji set up, but we still got our feet wet by pulling, pushing, and deploying. It glazed over many of the programming details, yet slowed down to focus on key ideas and best practices. This course is a MUST for any technical or non-technical individuals who want to have any relevance in today’s day and age.
My own app project, AppLoquent, did not deviate from the generic template either, but some like StartupHub demonstrated a fair amount of effort. A list of nearly all the app projects is available at http://startupmooc.org, which was used for the final competition in the class.
Throughout the class, we got to develop a deep real-world understanding of the following technologies:
What was the most important thing I learned? For me, it was properly using GitHub and setting up development, staging, and production environments. But of course, all the other things I learned will come in handy as well.
As of 2013, whenever you have a question, you Google it.
Likewise when you have a question about a MOOC you may be taking, it is often just as useful to Google it as it is to check the discussion forums. However, many people like to post their answers, and specifically, their results from MOOC projects for the public to see. And by doing so, the posters make it easier for new students to find the answers just by searching.
Therefore, if it’s not the first time the class is being hosted though, chances are pretty good that a student can find an exact post or file with the answers. And I’ve now found this to be true with a number of the classes I’ve taken; just search “coursera” or “edx” on GitHub. Specifically, I stumbled upon the following answers while I was seeking help on the internet (SPOILER ALERT: Links lead to answers!):
- Stanford’s Introduction to Databases – Programming solutions can be found by searching the question on Stack Overflow
- 10gen’s MongoDB for DBAs – The entire final is available on someone else’s blog (although not completely in English)
- Johns Hopkins Computing for Data Analysis on Coursera – Projects with details of how analysis can be done are everywhere on GitHub
I am not helping the situation either, as one of my next posts will be a collection of final projects from the Winter/Spring “semester” I recently finished. However, I just can’t resist the temptation of putting my results out on the internet to be roasted by all those who roam the web. Although, I still haven’t decided whether it is morally right or wrong to share the information knowing that it may be used inappropriately.
Regardless, hopefully no one will plagiarize my work, although not much of it is worth plagiarizing anyways. But, I also post it in hopes that it might help some people avoid the same stumbling blocks I found, or maybe give them direction when they reach a mental impasse.
I’m sure there isn’t a “catch-all” solution, but I hope someone can answer me this, how can we collaborate through sharing and still prevent cheating?