One of these days I saw a tweet about how hard it is to learn programming when you don't have a computer. Believe it or not, that's a reality for a lot of people around the globe. Whether because of price or ease of use, cellphones are much more common than PCs and Laptops. Taking Brazil as an example, a smartphone can be found in 99.5% of the households that have access to the internet, while a computer can only be found in 45.1%.
When talking about programming, the overwhelming majority of tools are computer-only. Hence, not having a workstation becomes a hurdle for those who want to dip their toes into IT. In this text, I'll suggest some tools to facilitate JavaScript and some other common IT tools using a cellphone.
Acode
Acode is an Android Code Editor. It has autocomplete and syntax highlighting for HTML, CSS and JS that works surprisingly well. Also, it allows to run HTML files within a tap and this makes it way easier to preview recent changes.
Codepen
When starting to learn JS, having an out-of-the-box functional IDE will come in handy. For newbies, setting up a Code Editor can be really hard. That's where Codepen comes into play: Not only it allows you to play around with JavaScript in the console, but it also has HTML and CSS editors, plus a result tab with live reload (Changes on code are instantly seen on the results, you don't have to refresh the whole page).
Termux
After kicking-off a programmer journey, one may want to start learning how to use a terminal. Termux is an Android terminal and Linux environment that allows installing a bunch of command-line softwares.
Being used to a Unix terminal is a useful skill in every IT specialization, but it's especially required for those who want to work with DevOps or IT infrastructure. In the latter case, Termux will be useful even when having a workstation (saying that as someone who hosts a Veloren server and constantly needs to SSH into the machine for updates and health-checks).
Git
When it comes to Version Control System, Git is the most popular tool around. It allows developers to organize their work and also collaborate in a same project in parallel. On PC, Code Editors usually automate Git commands, but on Android having a terminal, like termux, and learning how to use git commands like commit
, push
, pull
and checkout
will be necessary.
GitHub
If Git is the #1 Version Control System, GitHub is the #1 cloud service for Git. It allows code issues reporting, code-reviewing and, most importantly, it will keeps the repository on the cloud if your cellphone suddenly explodes. Microsoft has been doing a great job on the GitHub app: It has most of the features available on GitHub desktop. Edit files, submit, approve and comment on pull requests, everything from your smartphone.
Keyboards
Doing things in a touchscreen is way harder for me than typing and browsing around a computer. However, I've noticed that my younger brother is a proficient phone gamer, while I can't even hit a standing target when playing Free Fire.
Since I live in Brazil, I usually buy things on AliExpress. They sell a bunch of cheap bluetooth keyboards (Around 8 dollars). It could still be pricey for those who get a minimum wage in developing countries. It's not a must, but an accessory worth investing in, since it really speed things up.
The Bottom-line
Nowadays, mobile-first mentality brought much more development tools to Android devices. The tools and apps available today, such as the ones shown above, should be enough for someone who wants to learn JS. However, once you start digging deep into programming and some other complex topics (Let's say you get a taste for DevOps, for example), you'll likely be much better with a Desktop/Laptop.
Top comments (3)
Coding on a mobile phone it can be done seen it before. I think it would be fun to have a code editor in your pocket that you could use anytime.
Acode could be it, but it's not there yet imo. Maybe we'll see VSCode for Android one day!
That would be a dream!