Welcome back! So about a week ago I went off on a journey to learn a new programming language using an app on my phone. First off, i’m using the term “learn” loosely, I am by no means an expert on this new language which was Swift 4, but I have taken tons of programming courses / program every single day pretty much so I can kind of understand how proficient I am with a new language, and although I believe I learned a lot, I don’t think i’m ready to get handed a job using Swift ☺️. However, for a free app on the App store / Google Play Store, i’m surprised how great the experience was.
Starting off, the specific app that I used was called Solo Learn, it’s free in the App Stores but there is a pro version to sign up for, I didn’t sign up for the pro version and only used the free version. Now, i’m going to try not to praise or complain about this specific app, rather than talk about the experience about the actual learning process on your phone. First off, one of my favorite things about this was the convenience of the courses available, many apps on the App store are available in this same format, and just having the ability to quickly learn a few more things about a language is super awesome. If there was a bit of downtime you could essentially pick up your phone and just code a bit, I found this to be one of the most valuable things about learning from your phone.
On top of that, almost all of the apps that I found were pretty much focused on beginners, so if you’re just starting off your programming journey, you can just download an app and understand the core basics of any language you want! In my example I was learning Swift which is the language built for iOS app development, I pretty much new nothing about Swift, so it was extremely easy for me to follow through their guides and even code a bit of syntax on my phone which felt extremely awesome. There were quizzes, sample code, and tons of other examples within these apps that really allowed me to understand this language pretty quickly. Now, am I an expert at Swift now? Absolutely not, not even close, HOWEVER, do I feel more comfortable about this specific language? Absolutely! Also, I didn’t have to download an IDE + the fact I only used this app whenever I was bored really made it seem like a seamless learning experience. But, not everything was perfect.
There are just a few complaints I had with the learning experience when using your phone, I don’t want to bash the app itself too much since I really do believe most of these apps offer a lot of value for free. First off, throughout the majority of my experience, I was mostly filling in the blanks of certain blocks of code, I wasn’t really coding anything in the beginning, later on you do get onto more coding intensive sessions, but I just knew that if I was following a book on my PC I would probably be able to pick up more at the “same time spent” that I was spending on my phone. This is a big “what if”, but from a “value to time” ratio I would have probably learned more that way. On top of this, compiling the code is completely done within the apps, there aren’t really many IDE’s for your phone that can compile all languages / packages (there are some apps available but there is quite a bit of limitation compared to PC’s), so you’re quite limited on your device when you want to move outside of the app. Also I found that troubleshooting the code I had written was quite hard on my phone, there were also some bug issues where I would search up how to do something, go back into the app and it would restart, deleting all of the code I had just written (could be a ram / software issue).
To be honest, I think learning a programming on your language is an extremely awesome way to start programming. You can learn so much in so little time with barely any startup cost. Normally, you would need to buy / sign up for a course, install all the software to get started for your specific language + your IDE, but on your phone you can just download an app and get started. In my case, since I didn’t know Swift it really helped me understand the basics of this language, and even though I don’t feel comfortable coding a huge project with Swift, I definitely feel more confident in taking a more thorough course on this language. I will say though, as I mention in all of my other articles: coding side projects is the best way to pickup any language. Being able to code out your own projects (whether big or small) using the languages you just learned can help you develop your ability to code in that language at a much faster pace, but as I mentioned, it’s kind of hard to do that on your phone, that’s why I think for beginners using your phone to code is an awesome way to start up, but at some point you should transition over to a PC to develop out your skillset even more.