Android Programming – September 18, 2023

Overview:

Over time, I’ve been making steady progress on my Android app project. As I’ve mentioned earlier, my main goal has been to create a portfolio that I can proudly showcase to potential future employers. Thanks to Kotlin’s resemblance to Java, I’ve been having a great time developing my first mobile app in Kotlin, with a LAMP server serving as the backend. Since today is a national holiday, I had some extra time to work on creating a fragment that enables users to input their expenses into the server while interacting with the PHP-based API. After a few days of wrestling with bugs, I finally managed to successfully insert the data. That was one of the few triumphs I’ve experienced in the last few weeks.

LAMP – Linux, Apache, MySQL, PHP:

Because this app’s backend relies on a LAMP server, my Linux skills have proven to be quite valuable, especially when it comes to debugging. Through online research and asking the right questions to ChatGPT and Bard, I had to determine the location where PHP logs are stored.

Of course, in addition to using Kotlin as the app’s primary language, I also handled the API development in PHP. This was probably one of the rare opportunities where I got to create an entire backend server and REST API from scratch on my own. From what I can tell, compared to Kotlin (and perhaps Java), working on the PHP part wasn’t all that challenging. I already had some basic PHP API code that I had written a couple of years ago, so all I had to do was make a few adjustments to certain components and tailor it to this project.

SQL skills are an essential requirement for any software developer, and they remain valuable throughout your career. As is often the case with my projects, I consistently use MySQL, and this app is no different. The beauty of SQL programming is its timeless nature, and I genuinely enjoy delving into this fascinating database language.

Beyond:

So, ultimately, my goal with this app is to showcase not only my fundamental Kotlin skills but also my proficiency in Linux. As mentioned earlier, this app’s entire backend systems are hosted on a Linux server, specifically Ubuntu Server 22.04. What I’m currently considering is allowing users to generate bash scripts on the backend server that can interact with the SQL database. For instance, it might generate SQL queries from the database and transform them into CSV files. Alternatively, on a different occasion, it could sort retrieved data based on users’ specified criteria.

Leave a Reply