Techno Blender
Digitally Yours.

Don’t Be Afraid to Go Beyond Online Coding Courses | by Matt Chapman | May, 2023

0 72


Image by Alex Radelich on Unsplash

I started my first online coding course in 2019.

I still haven’t finished it.

The course was one which promised to teach you Python through building real-world apps. I loved the course, but it wasn’t particularly focused on Data Science use cases of Python, and before long I’d ditched it.

According to a 2019 study by researchers at MIT [1], I’m not the only one who’s got a habit of giving up on online courses— they often have dropout rates reaching up to 96%. My friends, if you’re in the 4% that DON’T drop out, please introduce yourself. Who are you people?

Nevertheless and in spite of my personal lack of grit, I’ve gotta-lotta-love for online coding courses. I’ve taken (and enjoyed!) many lessons on sites like CodeAcademy and Udemy, and I regularly recommend their courses to aspiring Data Scientists.

But here’s the thing.

Like all forms of learning, they have their limitations. If you’re not aware of these, then you’re at high risk of missing out on things that are vital to building a successful career in Data Science. My aim in this article is to highlight these limitations so that you don’t have unrealistic expectations about what these sites can do for your career.

I’ll start by talking about the good aspects of online coding courses, then discuss some of the limitations and end by discussing how you can avoid their pitfalls while still getting the most out of them.

From the moment you land on CodeAcademy.com, it takes approximately 41 seconds to create an account, enrol in a free course and start coding. I know because I just timed myself.

In 2023, that might not sound particularly noteworthy. After all, we’re the iGeneration — we take it for granted that you’re rock-and-rolling after just a few clicks.

But when you consider the historical context of Data Science education, that’s staggering. Before these sites came along, the main way to learn “Data Science” was through reading big books with scary names like The Elements of Statistical Learning and Pattern Recognition and Machine Learning. Even the Slytherins among us have to admit that it’s pretty impressive how far we’ve come since those days.

Why does speed matter? Well, at risk of stating the obvious, if you’re someone who wants to learn how to code, chances are that you actually want to learn how to code, not install packages and get stuck on your command line. The fact that sites like CodeAcademy make it so easy to jump right in without the setup faff is a wonderful thing.

On top of this, these sites offer fantastic guided learning pathways. In my experience as someone who only recently made a career transition into Data Science, this was massively helpful. Why? Because one of the hardest things about learning to code is knowing where to begin. Which language(s) should you choose? In which order should you learn the various functions and methods? What kinds of problems should you solve?

Online coding courses take the guesswork out of this. By laying out a clear guided pathway, they show you the things you’ll need to learn and give you rough estimates for how long it’ll take to get there. I love this because it makes the goals really tangible. The fact that CodeAcademy offers Career Pathways (in addition to Skills Pathways) makes this even more true: aiming to complete the “Data Scientist: NLP Specialist” pathway feels much more achievable than some nebulous goal like “learn Python so I can do Data Science with words.”

By this point, you’d be forgiven for thinking: what’s not to love? Online courses seem great! These strengths aside, however, there are significant limitations which you need to be aware of.

Image by Olav Ahrens Røtne on Unsplash

The speed and structure of these sites mean that they’re great at teaching you how to code — to write syntax and understand new programming languages. But Python does not equal Data Science. Nor does SQL, or R, or any other individual language.

Python does not equal Data Science

Data Science can’t be reduced to a bunch of coding languages; it’s much more than that. It’s a discipline that uses the scientific method to tackle problems with a hypothesis-driven approach. It’s not just about solving abstract coding puzzles like Fizzbuzz or the travelling salesman.

Don’t get me wrong: I’ve got nothing against those kinds of challenges. Solving quick puzzles is a great way to build your coding skills and practice solving out-of-domain problems, which is a fantastic skill. But these puzzles bear little resemblence to the types of problems you’ll likely encounter in your day-to-day life as a Data Scientist. In industry, you often need to start at the root cause: you take a business problem, translate it into falsifiable hypotheses or machine learning use cases and make a plan for how to tackle it with a Data Scientific approach. Being able to do this well is a vital skill, but sadly it’s one that’s difficult to teach through MOOCs or standardised coding courses.

Many courses offer browser-based interactive development environments (IDEs) which don’t require you to install any software.

However, while these Browser-based IDEs are great from a speed and accessibility perspective, they come with their fair share of drawbacks. The biggest risk is that you can end up completing an online course without actually knowing how to run code outside of a specific platform. You learn the syntax, but don’t know how to execute code “in the wild” when solving real-world problems.

Image by Lucas Sankey on Unsplash

We’ve all been there: you’ve been stuck on a HackerRank challenge for hours and are completely run out of ideas. In the back of your mind, you know that it would take about 5 seconds to Google the exact question and find some code to copy and paste. The temptation to give in is overwhelming.

The problem is the same on many of these standardised online courses: if you get stuck, you can just use Google to find the answers to your questions. The fact that so many people take these courses means that someone has probably asked the exact same question before and received a perfect response outlining exactly what you need to do. This makes it incredibly easy to cheat and get through online courses without actually learning the underlying theories and frameworks.

Of course, there’s nothing wrong with “cheating” as a Data Scientist — it’s called StackOverflow! (That is, if we define cheating as looking for helpful hints from other people’s code). But typically with sites like StackOverflow, you can’t apply others’ code directly to your problem; you have to figure out how to adapt it to suit your specific problem. You don’t copy-and-paste; you copy-adapt-and-paste. Because you can often find the exact answers to the questions in online courses, you don’t always learn this copy-adapt-paste technique. You only learn how to copy and paste.

Humans are notoriously awful at retaining new information: on average, we forget 90% of new information within a month of learning it [2]. As the Forgetting Curve coined by Ebbinghaus in 1880 famously shows [3], for information to properly sink in, you need to re-learn it again and again.

Image by author, based on Ebbinghaus’s classic forgetting curve

Apps like Duolingo understand this very well: you are repeatedly shown the same information with slight perturbations that help you learn the underlying concepts. In many online coding courses, however, the course moves on very quickly and you don’t always have the chance to revisit concepts you learned previously.

In my experience, this makes it difficult to retain all the information I learn, and I often find myself struggling to remember even basic new syntax which I haven’t had chance to put into practice via the online course.

My overall thoughts towards online coding courses are summarised in the following picture.

Image by Neil Thomas on Unsplash

Online Data Science courses can be a fantastic resource which help you grow quickly, but, as I’ve tried to show in this article, they’ve also got their limitations. As you develop further and look to transition into real-world roles, you’ll need to find ways of growing without their support.

So, how do we address these limitations? Here’s my two cents:

  1. Learn problem-solving frameworks as well as coding languages. To be a successful Data Scientist, you’ll need to learn how to translate business problems into concrete machine learning use cases and testable hypotheses. I talk about my own approach to this in ‘How to Find Unique Data Science Project Ideas’.
  2. Don’t just take coding courses; take courses that teach you the support tools needed to run code in the real-world (e.g., GitHub, Jupyter notebooks, VS Code). Knowing how to code is essential for getting a job as a Data Scientist. But to run code in the real world, you’ll need to have a grasp of tools like GitHub, Jupyter, and cloud tools like AWS and Google Cloud Platform. Luckily, these tools have a low skill ceiling: it doesn’t take long to grasp the basics, and you can easily self-teach via free courses on YouTube.
  3. Try and apply what you learn on your own, outside of the course’s browser-based IDE. If you only do projects as part of online coding courses’ curricula, you’ll struggle to differentiate yourself and stand out from other applicants when you’re going for future jobs. In my experience, creating an online portfolio is an incredibly useful way to apply your new skills and showcase them to employers. My advice would be to take what you’ve learned in online courses and apply those skills to personal projects, outside of the courses’ in-built IDEs.

If you’d like to get unlimited access to all of my stories (and the rest of Medium.com), you can sign up via my referral link for $5 per month. It adds no extra cost to you vs. signing up via the general signup page, and helps to support my writing as I get a small commission. If you can’t afford this (I’d completely understand!), it would mean a lot if you followed me. Thanks for reading!

[1] The MOOC Pivot

[2] Considerations when designing educational experiences

[3] Ebbinghaus H (1880) Urmanuskript “Ueber das Gedächtniß”. Passau: Passavia Universitätsverlag.


Image by Alex Radelich on Unsplash

I started my first online coding course in 2019.

I still haven’t finished it.

The course was one which promised to teach you Python through building real-world apps. I loved the course, but it wasn’t particularly focused on Data Science use cases of Python, and before long I’d ditched it.

According to a 2019 study by researchers at MIT [1], I’m not the only one who’s got a habit of giving up on online courses— they often have dropout rates reaching up to 96%. My friends, if you’re in the 4% that DON’T drop out, please introduce yourself. Who are you people?

Nevertheless and in spite of my personal lack of grit, I’ve gotta-lotta-love for online coding courses. I’ve taken (and enjoyed!) many lessons on sites like CodeAcademy and Udemy, and I regularly recommend their courses to aspiring Data Scientists.

But here’s the thing.

Like all forms of learning, they have their limitations. If you’re not aware of these, then you’re at high risk of missing out on things that are vital to building a successful career in Data Science. My aim in this article is to highlight these limitations so that you don’t have unrealistic expectations about what these sites can do for your career.

I’ll start by talking about the good aspects of online coding courses, then discuss some of the limitations and end by discussing how you can avoid their pitfalls while still getting the most out of them.

From the moment you land on CodeAcademy.com, it takes approximately 41 seconds to create an account, enrol in a free course and start coding. I know because I just timed myself.

In 2023, that might not sound particularly noteworthy. After all, we’re the iGeneration — we take it for granted that you’re rock-and-rolling after just a few clicks.

But when you consider the historical context of Data Science education, that’s staggering. Before these sites came along, the main way to learn “Data Science” was through reading big books with scary names like The Elements of Statistical Learning and Pattern Recognition and Machine Learning. Even the Slytherins among us have to admit that it’s pretty impressive how far we’ve come since those days.

Why does speed matter? Well, at risk of stating the obvious, if you’re someone who wants to learn how to code, chances are that you actually want to learn how to code, not install packages and get stuck on your command line. The fact that sites like CodeAcademy make it so easy to jump right in without the setup faff is a wonderful thing.

On top of this, these sites offer fantastic guided learning pathways. In my experience as someone who only recently made a career transition into Data Science, this was massively helpful. Why? Because one of the hardest things about learning to code is knowing where to begin. Which language(s) should you choose? In which order should you learn the various functions and methods? What kinds of problems should you solve?

Online coding courses take the guesswork out of this. By laying out a clear guided pathway, they show you the things you’ll need to learn and give you rough estimates for how long it’ll take to get there. I love this because it makes the goals really tangible. The fact that CodeAcademy offers Career Pathways (in addition to Skills Pathways) makes this even more true: aiming to complete the “Data Scientist: NLP Specialist” pathway feels much more achievable than some nebulous goal like “learn Python so I can do Data Science with words.”

By this point, you’d be forgiven for thinking: what’s not to love? Online courses seem great! These strengths aside, however, there are significant limitations which you need to be aware of.

Image by Olav Ahrens Røtne on Unsplash

The speed and structure of these sites mean that they’re great at teaching you how to code — to write syntax and understand new programming languages. But Python does not equal Data Science. Nor does SQL, or R, or any other individual language.

Python does not equal Data Science

Data Science can’t be reduced to a bunch of coding languages; it’s much more than that. It’s a discipline that uses the scientific method to tackle problems with a hypothesis-driven approach. It’s not just about solving abstract coding puzzles like Fizzbuzz or the travelling salesman.

Don’t get me wrong: I’ve got nothing against those kinds of challenges. Solving quick puzzles is a great way to build your coding skills and practice solving out-of-domain problems, which is a fantastic skill. But these puzzles bear little resemblence to the types of problems you’ll likely encounter in your day-to-day life as a Data Scientist. In industry, you often need to start at the root cause: you take a business problem, translate it into falsifiable hypotheses or machine learning use cases and make a plan for how to tackle it with a Data Scientific approach. Being able to do this well is a vital skill, but sadly it’s one that’s difficult to teach through MOOCs or standardised coding courses.

Many courses offer browser-based interactive development environments (IDEs) which don’t require you to install any software.

However, while these Browser-based IDEs are great from a speed and accessibility perspective, they come with their fair share of drawbacks. The biggest risk is that you can end up completing an online course without actually knowing how to run code outside of a specific platform. You learn the syntax, but don’t know how to execute code “in the wild” when solving real-world problems.

Image by Lucas Sankey on Unsplash

We’ve all been there: you’ve been stuck on a HackerRank challenge for hours and are completely run out of ideas. In the back of your mind, you know that it would take about 5 seconds to Google the exact question and find some code to copy and paste. The temptation to give in is overwhelming.

The problem is the same on many of these standardised online courses: if you get stuck, you can just use Google to find the answers to your questions. The fact that so many people take these courses means that someone has probably asked the exact same question before and received a perfect response outlining exactly what you need to do. This makes it incredibly easy to cheat and get through online courses without actually learning the underlying theories and frameworks.

Of course, there’s nothing wrong with “cheating” as a Data Scientist — it’s called StackOverflow! (That is, if we define cheating as looking for helpful hints from other people’s code). But typically with sites like StackOverflow, you can’t apply others’ code directly to your problem; you have to figure out how to adapt it to suit your specific problem. You don’t copy-and-paste; you copy-adapt-and-paste. Because you can often find the exact answers to the questions in online courses, you don’t always learn this copy-adapt-paste technique. You only learn how to copy and paste.

Humans are notoriously awful at retaining new information: on average, we forget 90% of new information within a month of learning it [2]. As the Forgetting Curve coined by Ebbinghaus in 1880 famously shows [3], for information to properly sink in, you need to re-learn it again and again.

Image by author, based on Ebbinghaus’s classic forgetting curve

Apps like Duolingo understand this very well: you are repeatedly shown the same information with slight perturbations that help you learn the underlying concepts. In many online coding courses, however, the course moves on very quickly and you don’t always have the chance to revisit concepts you learned previously.

In my experience, this makes it difficult to retain all the information I learn, and I often find myself struggling to remember even basic new syntax which I haven’t had chance to put into practice via the online course.

My overall thoughts towards online coding courses are summarised in the following picture.

Image by Neil Thomas on Unsplash

Online Data Science courses can be a fantastic resource which help you grow quickly, but, as I’ve tried to show in this article, they’ve also got their limitations. As you develop further and look to transition into real-world roles, you’ll need to find ways of growing without their support.

So, how do we address these limitations? Here’s my two cents:

  1. Learn problem-solving frameworks as well as coding languages. To be a successful Data Scientist, you’ll need to learn how to translate business problems into concrete machine learning use cases and testable hypotheses. I talk about my own approach to this in ‘How to Find Unique Data Science Project Ideas’.
  2. Don’t just take coding courses; take courses that teach you the support tools needed to run code in the real-world (e.g., GitHub, Jupyter notebooks, VS Code). Knowing how to code is essential for getting a job as a Data Scientist. But to run code in the real world, you’ll need to have a grasp of tools like GitHub, Jupyter, and cloud tools like AWS and Google Cloud Platform. Luckily, these tools have a low skill ceiling: it doesn’t take long to grasp the basics, and you can easily self-teach via free courses on YouTube.
  3. Try and apply what you learn on your own, outside of the course’s browser-based IDE. If you only do projects as part of online coding courses’ curricula, you’ll struggle to differentiate yourself and stand out from other applicants when you’re going for future jobs. In my experience, creating an online portfolio is an incredibly useful way to apply your new skills and showcase them to employers. My advice would be to take what you’ve learned in online courses and apply those skills to personal projects, outside of the courses’ in-built IDEs.

If you’d like to get unlimited access to all of my stories (and the rest of Medium.com), you can sign up via my referral link for $5 per month. It adds no extra cost to you vs. signing up via the general signup page, and helps to support my writing as I get a small commission. If you can’t afford this (I’d completely understand!), it would mean a lot if you followed me. Thanks for reading!

[1] The MOOC Pivot

[2] Considerations when designing educational experiences

[3] Ebbinghaus H (1880) Urmanuskript “Ueber das Gedächtniß”. Passau: Passavia Universitätsverlag.

FOLLOW US ON GOOGLE NEWS

Read original article here

Denial of responsibility! Techno Blender is an automatic aggregator of the all world’s media. In each content, the hyperlink to the primary source is specified. All trademarks belong to their rightful owners, all materials to their authors. If you are the owner of the content and do not want us to publish your materials, please contact us by email – [email protected]. The content will be deleted within 24 hours.
Leave a comment