In this blog post I compare the Udacity and the Coursera platform using one example, an Azure Machine Learning degree.
Both platforms have the concept of putting courses together in a bigger context and therefore a more important certificate.
It is called “Nanodegree” at Udacity, and “Professional Certificate” at Coursera.
In this special case a third certification comes into place: Microsoft Certified: Azure Data Scientist Associate. The required exam has the number DP-100.
Actually the Coursera certificate is very much oriented to prepare for the Microsoft exam. The Udacity certificate is not so strictly following the necessary skill list from Microsoft, but still Udacity writes “This Nanodegree program will also help prepare students for Microsoft’s Exam DP-100: Designing and Implementing a Data Science Solution on Azure.”
Importance / Relevance of the certification
In this special case my view is, that the Microsoft certification is more important than the other ones. It can be seen as “the original”, since the topic is about Microsoft Azure. It will look different, when a vendor independent certification is to be achieved. Then it is important to check who the partner of the learning platform for a degree is. Typically these are companies or universities.
There are Coursera courses that you can do in hours, and some will take months. Make sure that make clear in your cv that you did a “Professional Certificate” or “Nanodegree” and not just a single course. Specify the number of months it took (and make sure that it is similar to what the courses say it should take).
Building blocks of the courses
The Coursera certificate is made up by 5 courses, each of which should take between 3 and 6 weeks:
- Create Machine Learning Models in Microsoft Azure
- Microsoft Azure Machine Learning for Data Scientists
- Build and Operate Machine Learning Solutions with Azure
- Perform data science with Azure Databricks
- Prepare for DP-100: Data Science on Microsoft Azure Exam
The Udacity certificate is a little bit shorter. There are two learning parts with each 4-6 lessons (weeks) and a project at the end of each part, followed by a capstone project
- Using Azure Machine Learning (learning part including project)
- Machine Learning Operations (learning part including project)
- Capstone Project
Coursera Course 1 and 2 can be seen as introductions, Udacity assumes that you already have a little experience or get the introduction elsewhere.
Coursera Course 3 and 4 are the main topics, as Udacity 2 and 3.
Coursera Course 5 is very special, since it contains Microsoft approved test questions for the Microsoft exam. They are very helpful for the exam and Udacity doesn’t have an equivalent. You could use an official Microsoft exam practice test (www.mindhub.com) as an alternative.
Udacity User Interface
Udacity provides a clearly layout user interface for the nanodegree. It is separated into to levels. The first level allows to select the part and shows the lessons with the level of completion.
You dive into a lesson and see the next struktural level: the so called concepts. There is no technical separation into something like written content, video, exercise and so on. It is all mixed. The description of a “concept” helps by naming a concept “exercise”, however, this naming is not done strictly. As the result, you can’t quickly check, which exercises exist and whether you have done them.
Coursera User Interface
The coursera certificate consists of separate courses that have no real connection with each other, besides from a simple status info which of the courses you already have done and which the current one is.
WIthin one course, there are also two levels of structuring. Looks similar to Udacity but here it is actually rather useless.
While Udacity uses the following levels: parts->lesson, then lesson->concept->content, Coursera’s structure is always: week on the left and then either description on the main area or the content.
When you jump into a week, you get the content. The weeks are still on the left, but now with their descriptions. As a result, the content that was shown in the screeenshot above could also be included in the following screenshot on the left.
Actually, the user interface was changed some days before I write this blog entry. When I did the certification and now during preparation of the blog post, the top level user interface from the screenshot above showed much more information. In this state it was useful. Now it is not so useful any more.
Coursera has one advantage over Udacity: the content types are technically separated into reading, video, quiz and practive quiz. This helps to overview your achievement. However, the old user interface made much more use of this potential.
Lab and Training Material
Udacity provides a lab which is based on virtual machines that are integrated into the learning content. In this virtual machine an account for Azure is provisioned, and, depending on the content in the respective section, some resources are predefined. I had some troubles with the lab, for example when one should create a Machine Learning Workspace, and the permissions where not sufficient to do this. Probably at the time where the lab was built, the permissions were sufficient, but in the meantime Microsoft added more prerequisites into ths process of creating the workspace that changed the necessary permissions. Secondly, the Udacity lab is limited in time, so you can’t work as long as you need.
Coursera does a different approach: they link to Microsoft learn, where Microsoft provides training material and also a virtual lab environment. The materials are good, but this is Microsoft’s credit, not Cousera’s.
Udacity provides their own training scripts / code in github. They encourage the usage of Github (or should I say enforce) by making it mandatory to upload final projects to Github. This was a little bit annoying in the beginning, but it is consequent, given the enormous relevance of Github today.
This goes farer: with Udacity the learner also needs to do a screencast for the project submissions. I didn’t like the fact to make a research which (free) software exist for that and how it works.
Both platforms provide forums where you can adress questions. At Udacity, they are separated into “Mentor Help” and “Peer Chat”. As the name says, Mentor help addresses the question directly to someone from the Udacity team who helps quickly. I was not happy with some of the answers, and very happy with others. The mentors also survey the project submissions you have to do. It is obviously done by going through a very detailed checklist with predefined text blocks that explain what to do if you don’t meet a requirement. But at least there is a human being looking at your stuff. You can re-submit when there were problems with you submissions and you solved them.
Coursera has a different approach. The don’t have a separation in into mentors and peers, so you just put your question into a forum and might get an answer from someone from Coursera or from a learner. This doesn’t have to be a bad thing, there are good learners …
In the Coursera course I’m looking at, there are no project submissions. I know from other Coursera courses that there is the concept of peer assessments. So also checking / grading is done by learners, not mentors.
As the result, Coursera is better for purely prepare for the Microsoft DP-100 exam. However, due to the strong link to the Microsoft Learn platform, it is the question how much value Coursera adds to Microsoft. The special exam questions are definitely an added value, they are not provided freely by Microsoft.
Udacity is more about learning for the real life. Especially for the Microsoft exam preparation it is a little bit outdated, since the exam skills changed in 2021 and Udacity didn’t change their program accordingly.
The User interfaces have pros and cons. I don’t think that there is a clear winner or that the differences should be relevant for choosing one or the other platform.
Laboratory is a big and complicated thing. Both platforms are not doing very well. My personal suggestion is, not to use these laboratories at all. If you want to lean a complex on premises software, you need a lab where this software is installed. But here we are talking about Azure. You can create an Azure account and get 200 USD starter credits. That is enough for the content of this course. You are independent of the learning platforms or lab providers, and you can keep your work (which is lost if you are using a lab which is closing at some point in time).
Appendix: Book “Azure Data Scientist Associate Certification Guide”
This article is abount online courses. So a book doesn’t really fit into it. However, it can complement the courses. Or maybe you come to the conclusion that you don’t need online courses and rather stick to the book?
Advertisement: Link to Amazon: https://amzn.to/3c3wEj9
The book has 415 pages with the following content:
Section 1: Starting your cloud-based data science journey
- Chapter 1: An Overview of Modern Data Science
- Chapter 2: Deploying Azure Machine Learning Workspace Resources
- Chapter 3: Azure Machine Learning Studio Components
- Chapter 4: Configuring the Workspace
Section 2: No code data science experimentation
- Chapter 5: Letting the Machines Do the Model Training
- Chapter 6: Visual Model Training and Publishing
Section 3: Advanced data science tooling and capabilities
- Chapter 7: The AzureML Python SDK
- Chapter 8: Experimenting with Python Code
- Chapter 9: Optimizing the ML Model
- Chapter 10: Understanding Model Results
- Chapter 11: Working with Pipelines
- Chapter 12: Operationalizing Models with Code
I liked the book and used it typically after watching a video regarding a topic. Reading seems to highlight more details – but this might different from individual to individual. Here a some examples of information which I marked with post-it-notes:
- naming conventions by the Azure Cloud Adoption Framework (https://docs.microsoft.com/en-us/azure/cloud-adoption-framework/)
- hints for the Azure Command Line Interface (page 46)
And several tables like:
For better readability:
|< All from regression>|
Advertisement: Link to Amazon: https://amzn.to/3c3wEj9
Appendix: List of Coursera content by course
Course 1: Create Machine Learning Models in Microsoft Azure
- Explore data and create models to predict numeric values
- Train and evaluate classification and clustering models
- Train and evaluate deep learning models
Course 2: Microsoft Azure Machine Learning for Data Scientists
- Use Automated Machine Learning in Azure Machine Learning
- Create a Regression Model with Azure Machine Learning Designer
- Create a Classification Model with Azure AI
- Create a Clustering Model with Azure AI
Course 3: Build and Operate Machine Learning Solutions with Azure
- Use the Azure Machine Learning SDK to train a model
- Work with Data and Compute in Azure Machine Learning
- Orchestrate pipelines and deploy real-time machine learning services with Azure Machine Learning
- Deploy batch inference pipelines and tune hyperparameters with Azure Machine Learning
- Select models and protect sensitive data
- Monitor machine learning deployments
Course 4: Perform data science with Azure Databricks
- Introduction to Azure Databricks
- Working with data in Azure Databricks
- Processing data in Azure Databricks
- Get started with Databricks and machine learning
- Manage machine learning lifecycles and fine tune models
- Train a distributed neural network and serve models with Azure Machine Learning
Course 5: Prepare for DP-100: Data Science on Microsoft Azure Exam
- Prepare for the DP-100: Designing and implementing a Data Science Solution on Azure Exam
- Exam preparation – Course 1
- Exam preparation – Course 2
- Exam preparation – Course 3
- Exam preparation – Course 4
- Final Practice Exam
Appendix: List of Udacity content by part
Part 2: Using Azure Machine Learning
- Introduction to Azure ML
- Workspaces and the AzureML Studio
- Datastores and Datasets
- Training Models in Azure ML
- The Azure ML SDK
- Automated ML and Hyperparameter Tuning
- Optimizing an ML Pipeline in Azure
Part 3: Machine Learning Operations
- Introduction to Azure ML
- Deploy a Model
- Consume Endpoints
- Pipeline Automation
- Operationalizing Machine Learning
(Part 1 is pure welcome-intro, Part 4 is the capstone)
Appendix: Github Repositories
- Udacity Project of part 2 “Using Azure Machine Learning”:
GitHub – udacity/nd00333_AZMLND_Optimizing_a_Pipeline_in_Azure-Starter_Files
- Udacity Project of part 3″Machine Learning Operations”:
GitHub – udacity/nd00333_AZMLND_C2
- Udacity Template for Capstone:
GitHub – udacity/nd00333-capstone
- Microsoft Learn / Machine Learning Basis (fitting to Coursera courses 1 and 2:
GitHub – MicrosoftDocs/ml-basics: Exercise notebooks for Machine Learning modules on Microsoft Learn
- Microsoft Learn / Files for DP090 (Databricks, also part of DP-100):
GitHub – MicrosoftLearning/dp-090-databricks-ml
- Microsoft Learn / Files for DP100 (main repository for the Azure ML certification):
GitHub – MicrosoftLearning/mslearn-dp100: Lab files for Azure Machine Learning exercises
- Companion Files of Book “Azure Data Scientist Associate Certification Guide”:
GitHub – PacktPublishing/Azure-Data-Scientist-Associate-Certification-Guide: Microsoft Certified: Azure Data Scientist Associate Certification Guide, published by Packt