DEV Community

Cover image for Learning JS on Android
Henrique Ramos
Henrique Ramos

Posted on

Learning JS on Android

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.
Screenshot of Acode editor on a Tablet and a smartphone

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).

Screenshot of the Termux app


In case you haven't met yet: Terminal, user. User, terminal.

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.

Screenshots of the GitHub App

Not gonna lie, the light mode burns my eyes.

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.

A wireless INTL keyboard with a wireless mouse below it

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.

Discussion (3)

Collapse
andrewbaisden profile image
Andrew Baisden

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.

Collapse
hnrq profile image
Henrique Ramos Author • Edited on

Acode could be it, but it's not there yet imo. Maybe we'll see VSCode for Android one day!

Collapse
andrewbaisden profile image
Andrew Baisden

That would be a dream!