In the year 2021 everyone carries around some sort of mobile device with them. Chances are you always have on of these with you: phone, tablet or laptop.
According to IDC , Android has over 80% of the mobile market share. In this article we will look at the tools we can use to code applications directly on our phones, tablets or Chromebooks.
A lot of people assume that coding is a right reserved to doing on a laptop. While there are obvious benefits to using a laptop for coding like screen size, power and better IDE support. It is not impossible to code on a phone and actually sometimes it can be better.
Coding on a mobile device such as a phone or tablet can be done anywhere and at any time. There is a much smaller barrier to entry as most tools are currently free and work on more devices. Some IDEs require powerful laptop machines just to run at optimal performance.
Many people in today’s society end up having a single device especially in the developing world, and that device is usually a mobile phone. I am hoping that this article will help people use what they already have to achieve and create something that they want to.
All of the tools in this article work on Chromebooks too so can be used on laptops as well.
We will firstly look at database software. There are actually a lot of good database management clients. The simplest one is called SQL Client which provides users with the ability to connect to a MySQL, Microsoft SQL Server and PostgreSQL database. You run queries and view results directly on your phone. This application is not just useful for development purposes but also to run queries on the go.
Another application to consider is “DB Client — Database Client For MySql & SQL Server”. It has a lot more features however no PostgreSQL option.
Termux is probably the most versatile application in the Google Play Store. It is essentially the Linux command line on your Android device. You can install many packages that you are comfortable using on your Linux machine such as Vim. Tie this in together with your SQL client you can install a MySQL DB locally on to your phone using Termux and directly query results from it on your phone. Termux on its own could be your IDE, Server and DB server if you want it to be due to its flexibility. The only thing you need to watch out for is that not all Linux packages will work. This is because not all packages can run on an arm processor.
Web Server Software
With KSWEB you can run your own local Apache Web Server directly on your phone. The very interesting part is that if you pay for the Pro version you can even have a Public IP address that can be accessed from any other device. So in theory you can create a PHP website on your phone. Deploy it there and host it from your phone. I probably would not recommend using your phone as a Server to host your live website due to the fact that your site will go down anytime you lose connection. However, in theory you can do it and if you can guarantee your phone having a constant internet connection, it can even be an option for you to do.
Independent Development Environments
Independent Development Environments or otherwise knows as IDEs are key tools for writing code and easily read the code you have written. Some of my personal favourites are Acode which is more of a text editor for most languages. However, it has built in project creation for TypeScript framework projects such as Angular and Vue. It also has a build in Git integration with GitHub. FTP integration and a console to help build and run your projects. Overall the IDE is great for doing coding especially for front end development.
AIDE is an Android and Java IDE. This application is quite amazing as it has built in Android project templates that are Android Studios compatible. You can also run and compile your applications directly onto your devices. It has Dropbox and Git integration. You can even debug your application with a watch window. I have personally created applications using just this IDE and directly published them to the Google Play Store, all from my phone. It is regularly updated with the latest Android Libraries and the application has so many options for developing Android Applications.
I hope the above information has helped you start or continue your development career using just your phone. You can do everything from just your phone and, more and more having multiple devices is becoming less of a requirement to be a developer. Please use the above applications I suggested as a starting point, there are many more very good applications out there and if you need a particular tool, chances are that there is something already out there. If there is not, then you probably found a good first project for yourself to create the tool that you and probably many more are trying to find on their device.