One of the toughest challenges when learning to code is running into a bug that seems unfixable. It’s almost unavoidable that sometimes when you’re writing code, you will need to seek outside advice.
Often times, the problem will be solved by a deeper understanding of the programming language you are using and its limits. In this case, those experienced in said language are usually the best resource for understanding details that are often skipped over in lessons.
Aside from this issue, it’s also good to ask questions about the best way to solve programming problems and to learn more than one way of doing things from coding pros. Most times, experienced programmers know the fastest and cleanest way to accomplish a task.
SoloLearn, despite its name, is all about learning together, and getting the help you need from the pros. The app is as much a series of courses as it is a social network, allowing communication with other users on every lesson.
SoloLearn was created to be a unique app. It was released in 2013, yet it currently has over 35,000,000 users, and this matters because SoloLearn is a uniquely social experience. SoloLearn shines with competitions and a helpful community that makes coding feel like a community experience.
SoloLearn is a free coding app available on the iOS App Store, the Google Play Store, and desktop via a browser. Because this is an app review, we will focus on the mobile app instead of the desktop version.
SoloLearn uses a learn-quiz-practice format for its teaching method, with content laid out in a linear style. Each lesson is bite-sized, taking only a few minutes—especially the first few lessons.
While this is an effective way to teach programming, SoloLearn courses feel much like traditional lessons, using much of the confusing jargon found in books. The app includes a glossary of terms for each lesson, but I stumbled upon many undefined terms that beginners may struggle with if this app is their first contact with programming.
One of SoloLearn’s best course innovations is the addition of a Reddit-like comment area under every lesson page. Here, learners and professionals are given the platform to interact with each other. Each question can be answered by many people, complete with an upvote and downvote feature.
While this seems useful, it does have some drawbacks. For instance, there does not appear to be any search function. Combined with the nearly 700 comments shown on some pages, it would be very difficult to see if any particular question has been answered if it is nowhere near the top of the page.
Much of these comments seem unmoderated as well, and many of the 700-odd comments and questions appear to be unrelated to the topic of discussion.
Keeping it interesting
Beyond lessons, SoloLearn also features challenges and competitions to keep coding skills sharp and a forum for discussing code with members. The app also has an XP (experience) point system, where completing challenges and lessons awards users with XP points that contribute to levels. Higher-level coders get to show off their XP level with digital certificates after completing lessons.
In addition, while all of the first few lessons in a course are created by SoloLearn teachers, hundreds of others are created by SoloLearn users that expand on any given language or topic. Seeing as different users have different teaching styles, jumping between lessons can be both interesting and frustrating.
Since users are able to create content for SoloLearn, the amount of content available is staggering. After completing a course on any topic, users can browse advanced courses using the same language. While the quality of this content may vary, it’s nice to have an app with content that doesn’t seem to end. It allows users to keep learning about more advanced topics, often presented by professionals in the field.
Additionally, a wide number of topics are available, from specific languages to frameworks to design fundamentals. It’s clear that getting through just the premade content would take a considerable amount of time. The app comes stock with lessons on 13 different languages, not to mention the lessons on fundamentals, frameworks, and community content for all of the above.
Even after all of that is finished, the app has real-life coding challenges (provided by both the app and the community) and games that allow users to test their skills before or after completing courses.
SoloLearn’s presents one of the least intuitive interfaces this reviewer has experienced. Without much aid, new users are dropped into an interface with no clear first step. Many of the design choices throughout the use of lessons and the forum are unintuitive, and the reviewer was often frustrated while using the app.
While the interface becomes easier to use over time, the initial impression is difficult to shake. At times the app does give directions on how to use its features, but they seemed to pop up later than they should. I came across many of these tooltips while taking a second lesson, after learning how to maneuver the app the hard way.
In addition, many of the features in this app are not obvious, which adds to the cons. Understanding the comment section, how XP works, and using the feed was a challenge, and it seemed like new features would pop up almost by accident. Having a simple tutorial at the start of the app would have improved the experience immensely.
When it comes to functionality, SoloLearn has a few good qualities and a few bad ones. Let’s start with the good.
Another powerful feature is the ability to export code written in SoloLearn. While many coding apps are used for learning only, SoloLearn felt like a free mobile coding editor as well. In a dedicated area, completed code users can post sophisticated and functional programs like music players and complete UI’s.
Additional features include integration with Facebook and Google, a recording tool that allows users to record a video of themselves as they code, and a leaderboard with both regional and global rankings.
At no point did the app crash or have any severe bugs during the reviewer’s time with it, which is always a good sign.
One of the most outstanding problems with the app was its load times. Starting a new course took minutes for the reviewer, with no visible progress bar. This only happens when starting a new course, so assumedly the wait comes from downloading the course onto the device. While this is only a nuisance, having a bar to know how long the course might take to download would make sense.
Also—as mentioned before—many features are difficult to understand or find, and some essential features (like search in lesson comments) are nowhere to be found. The tooltips designed to explain features seem to trigger at random, and rarely when helpful.
Finally, the cost. SoloLearn is advertised as a free app for learning code. While there is no price to download the app, SoloLearn doesn’t wait long to mention money. Before even accessing the main content, the app immediately presents an advertisement for their ‘Pro’ plan, which costs $6.99 a month or $47.99 a year (at the time of review). A free trial of the Pro plan is available with an auto-renewal subscription.
Without the Pro subscription, box ads can be found in almost every lesson and timed interstitial ads (the ones that cover the screen and require a five-second countdown) are often triggered after completing modules. Moreover, many of the Code Coach challenges are unavailable to non-Pro users.
While normal users may still find fresh free content daily on SoloLearn, dealing with the constant ads and losing out on paid content makes SoloLearn seem less appealing to users who aren’t looking to spend money.
While a bit complicated to use, SoloLearn can be a useful learning tool. The free 24/7 peer support found in the forum and comments is handy, and the volume of content available is amazing. However, that content is wrapped in an app with an obtuse user interface and near-constant ads.
Aside from this, much of the content is targeted at those with some programming basics. While it is possible to learn to code as a beginner with SoloLearn, the app seems to be a better resource for those familiar with coding fundamentals. In this regard, the app is perfect for picking up a new programming language, learning a framework, or just brushing up and completing a few coding challenges.
Yes, the app offers a Pro plan as an in-app purchase (IAP). This takes the form of a subscription plan which auto-renews. However, besides this, there are no other purchases or microtransactions in the SoloLearn app.
XP points are awarded for completing lessons and winning challenges. For the challenges, SoloLearn uses a modified Elo system to determine how much XP is gained or lost. This means that the XP you gain or lose when playing in a challenge is affected by the difference in XP between you and your opponent.
The reviewer recommends starting with one of the stock lessons. If you are new to code, the HTML course is likely the best place to start, though all of the language courses (for the most part) start with the assumption that the learner doesn’t know much about programming languages.