When it comes to learning software development online, there is a huge variety of learning platforms out there. And during the 2020 lockdowns, an effective online learning experience is especially important. One of the most basic decisions that online learners face is choosing between video lectures or text-based instruction.
There is a notable difference between these approaches, and studies show that they trigger different parts of the brain. So, if the content does not differ between a video or a text-based course, how do we know what is best for learning software development online?
Today, we are going to break down this conversation and explore the best approach for learning how to code online.
Today, we will discuss:
- What does a developer need from a learning platform?
- Video lectures: pros and cons
- Text-based learning: pros and cons
- Picking a platform that’s right for you
The debate over video vs. text-based learning is not new. There are many voices that argue for one or the other. Strangely, studies show that there is little statistical difference in memorization between the two approaches.
So, does that mean that there is no difference between text-based or video lecture learning? No!
Studies like these fail to address the actual needs of a developer who is learning online. Just because there is little difference in stats doesn't mean the the approaches are equally effective for someone learning computer science online.
The conversation has to start with the developer's needs. Online learning is not a one-size-fits-all experience. Subject matter plays the largest role in determining the most effective learning experience. Different subjects have different outcomes.
So, what are the needs of online learners in the tech space? Which method best accommodates those needs? Let’s assess them before comparing video and text in depth.
The efficiency of an online learning method (text or video) comes down to the outcome of the subject matter at hand. If the goal is simply rote memorization, the means to that end goal will be different than, say, building a software program.
We know that developers want practical competency. Developers learning online are trying to reproduce certain outcomes within their own circumstances by building projects, designing software, and debugging.
This means that hands-on practice is essential to the success of an online learner in the software space. In other words, developers need a learning experience that allows you to learn the content and immediately put that content into practice.
In fact, a meta-study that looked at 57 different studies on learning found that hands-on learners performed 20% better than students who learned with only an auditory lecture. Hands-on practice is essential.
Learning how to code includes more than just memorization. You need a mix of theory, visuals, metaphor, language translation, and practical application. When you learn how to code, you need to understand things at various levels, like:
- How a piece of code will manifest in the real-world
- How a piece of code is understood by a computer
- How a piece of code can be written in other programming languages
- How theory makes a piece code possible
Learning software development needs to trigger multiple parts of the brain. This means that mixed media is necessary to accommodate all of these different facets. Otherwise, a lesson won't be useful or applicable. A developer needs visuals and metaphors for complex theory, interactive examples to see how the code interacts with itself, and more.
As I mentioned before, the outcome of learning software development is to reproduce results in different contexts. You learn the theory of, say, a linked list, and then apply that to different data sets. Same results, different situations.
This means that developers need real-world examples to solidify their knowledge and determine when/why to apply certain skills. Using only one example teaches you only one potential application.
The best software development instruction offers multiple examples of increasing complexity that demonstrate how to reproduce the outcomes and when to apply that knowledge in other circumstances.
Studies show that the most successful learning experiences are those where the learner has control over the pace. People understand things at different rates and for different reasons. Developers especially need to learn at their own pace.
Most developers begin an online learning course with different experience levels. Some developers learning Python, for example, are completely new to programming, while others already know Java or C++. So, the learning pace of those learners will differ, even if they cover the same topic.
Control over content is essential to a successful online learning experience for developers. This means a learning environment that allows for continuous learning at their own pace. A developer must be able to identify specific, personally relevant moments of content and control their interaction with it.
Summary of developer needs:
- Hands-on practice
- Multiple, real-world examples
- Mixed media experience
- Control over pace and content
Many online learners opt for video-based learning because it's similar to the traditional lecture format used in university. A single video course translates to 30 to 40+ hours of video instruction. A learner listens to the instructor explain concepts, usually accompanied by a code editor on the screen.
When it comes to video instruction, it may seem attractive and superior. After all, we are used to watching content passively. But is it really better? Let’s look at the pros and cons of video-based instruction.
- Video learning is visually more stimulating than text
- Benefits visual learners
- Video learning can feel less monotonous
- Reduces heavy reading load
- Easy to explain a specific product or processes
- Utilizes mixed media
- Learn how to articulate coding ideas (good for interviews)
- Watching a video takes less energy
- Language may be less of a barrier to comprehension
- Learner has less control over the content
- An instructor cannot highlight importance or relevance (important concepts get lost in the video alongside less important topics)
- No hands-on practice built into the structure
- Readers cannot highlight important ideas
- Video learning is linked with passive learning and skimming
- Learners cannot troubleshoot technical problems
- Learners must skim through a video to find answers to questions
- Watching a video requires less cognitive function
If we take these pros and cons and hold them against the needs of developers that we discussed earlier, we see that video learning doesn’t meet most those needs. Yes, it offers a mixed media experience and the ability to explain specific use cases very easily.
But a learner has little to no control over the content and pace. Most learners struggle to write code while watching a video. Frequent pausing and rewinding can be frustrating and slow. This means that a learner has less little opportunity for hands-on practice. You could open up your IDE and follow along, but there’s no support for code errors or troubleshooting.
Overall, you get far less practical experience and learn only one person’s approach to an example.
Since video learning meets only a few of the requirements for effective online learning in the software space, it is not the best choice for a developer. Not to mention, 40+ hours of skimming through a video can be a grueling, depersonalized experience.
Video-based learning can be an excellent supplement to other forms of eLearning. Those who benefit from visual learning can utilize videos for specific use cases or high-level theory.
So, when it comes down the goals of software development education, it seems that video lectures fall short.
Other online learning platforms use with text-based instruction. This experience is similar to reading a textbook, but many text-based courses include widgets and coding environments. The time commitment of a single text course depends on the learner's pace. A learner reads the text, highlights passages, and applies the learning with whatever code widget is provided.
So, does text-based learning fair any better than video lectures? Let’s take a look at the pros and cons of text-based online learning for developers.
- Easier to translate text into other languages
- Easier to understand for non-native English speakers
- Hands-on practice is made easier with widgets or explanations
- Requires more cognitive function, such as thinking, reasoning, and making connections
- Text-based learning linked to improved memorization
- Text-based learning offers tons of control over pace, timing, and content
- Learners can easily highlight or reread relevant information
- Not ideal for auditory learners
- Poor grammar or writing can hinder learning
- Slower readers may struggle to get through a course
- Explaining technical content can be too verbose or high level
- Does not guarantee active learning or a set time commitment
- Mixed media experience varies depending on the platform
- Requires more active engagement
If we take these pros and cons and hold them against the needs of developers that we discussed earlier, we see that text-based learning meets most of these needs. A text-based eLearning experience is better for hands-on practice, multiple examples, mixed media (provided that the platform uses mixed media), and control over both content and pace.
Overall, you get more real-world practice, specialized control over how you learn, and the a personalized your learning experience without scrubbing or rewinding.
The biggest advantage of text-based learning is that developers of different skill levels can learn from the same course. It offers the flexibility to skip material you already know or dive deeply into new concepts. Text-based instruction is also key for triggering micro-level learning activities, like:
- Using a table of contents
- Referring to an index
- Highlighting a passage
The caveat to text-based learning, however, is quality. If the writing style of the text-based course is poor, the learning experience too will be poor. Similarly, if the text-based course does not utilize multiple forms of media, it will not be as effective.
So, when it comes down the goals of software development education, it seems that text-based instruction is the best option.
At the end of the day, your personal needs and comfortability should dictate your learning tools. No platform can offer the perfect way to learn programming for everyone. Similarly, learning efficiency is also about learner engagement. Both video and text can be passive learning. The key here is to pick a platform that encourages you to engage actively.
Pick a learning tool that:
- Engages you actively
- Meets your personal needs
- Gives you control over pace
- Feels comfortable and familiar
- Is designed for developers
We concluded that text-instruction is the best approach for most developers, due to control, content delivery, and access to real-world examples. But this doesn't mean that video isn't still a useful tool.
If prefer video, just be sure to find ways to apply your learning practically. You'll be far more successful if you spend more time practicing and less time listening to lectures. Video-based instruction can be useful for the following use cases:
- Demonstrating a product use
- For less technical concepts
- A supplement for visual learners
Educative is proud to offer text-based instruction, mixed media, and tons of hands-on practice. Our embedded coding widget makes it possible to learn complex theory, best practices, and fun activities all on your browser.