Sign up now to get free exclusive access to reports, research and invitation only events.
From full-blown IDEs to essential resource utilities, these Android apps bring powerful programming features to phones and tablets
10 Android apps developers will love
When it comes to tablet apps, iPad vs. Android comparisons spark spirited debate. In terms of apps for developers, Android tablet apps are more often free -- and more often less polished. That said, there are plenty of apps that developers will find handy when working on their Android tablets.
While Android takes a lot of flack for "fragmentation," in many ways it is now less fragmented than iOS from the viewpoint of a developer. It's straightforward to create a single Android app that will work properly on a large range of devices, measured in OS level, CPU power, available memory, and device size. On iOS, developers often find themselves writing separate iPhone and iPad apps to optimize both.
Algoid -- programming language
Algoid is, in Hollywood terms, Logo meets Android, complete with Turtle graphics. Don't be put off by the fractured English of the write-up in the Play store: Algoid is a for-real IDE with an interpreter, debugger, and scope explorer, as well as an editor with autocompletion and syntax highlighting. Algoid is primarily for educational use, but it isn't restricted to kids by any means. I can see it getting used in many educational programming settings, both formal and informal. The author has also released a desktop Java version of Algoid, and a Raspberry Pi version, although I haven't tested either of them.
AndroidScript programming IDE
AndroidScript currently includes about 25 demo programs. Some actually work; a few perform fairly well.
The app includes some documentation. If nothing else, read the section on Layouts so that you aren't completely lost.
The author considers this version beta software. With a little more development, AndroidScript might well become a good learning tool for aspiring programmers.
Dalvik Explorer is a little utility that can tell you the characteristics of your Android device. It tells you what Java system properties, environment variables, java.nio.charset.Charsets, java.util.Locales, and java.util.TimeZones are available to your app on a specific device. Run this app on the device in question to find out.
It is also useful for debugging problems users in other territories are experiencing.
Developer Tools allows an Android developer to see the resource qualifiers that are being used on his or her device, the system features that are available, and details about the display and its sizes. It also provides links to other utilities that were useful, at least at one time; some of them still are useful (for example, Dalvik Explorer), but others, such as Manifest Viewer, don't work properly on the latest Android builds.
DrawExpress is a gesture-recognition diagramming application that lets you draw diagrams and flowcharts, including use case, sequence, class, state, ER, data flow, and network diagrams. Beyond UML and network diagrams, you can diagram business processes and mind maps, including flowcharts, organization charts, process flow diagrams, feature lists, decision trees, and visual notes. By "gesture recognition," the DrawExpress people mean that the UI recognizes your sketched objects instead of making you pick them from menus.
A free DrawExpress Lite version lets you decide whether DrawExpress is right for you before paying for the full version. If it could import and export Visio objects and diagrams, it would be even more useful. I recommend using a stylus with this app.
DroidDia allows you to draw flow charts, org charts, Venn diagrams, mind maps, and other diagrams. The user interface is based on picking objects from a gallery and dragging them into place. You can create a new object by long-pressing on a blank screen area and select an existing object by long-pressing on the object. DroidDia supports using JPEG and PNG bitmaps as the basis for objects in addition to using simple geometric shapes, and it supports creating custom image libraries. You can download a library of Cisco components in PNG form from the DroidDia.com website, converted from Cisco's EPS files.
Frink Programming Language
Frink is a practical calculating tool and programming language designed to make physical calculations simple, by tracking units of measure through all calculations, and allowing you to mix units of measure transparently. It also contains a large data file of physical quantities, freeing you from having to look them up. The free Android Frink app is a full port of Frink with added support for Android-specific functionality, such as drawing graphics (see slide), using sensors, reading the GPS, and performing text-to-speech and speech recognition. You can also run Frink on your computer, as long as you have Java installed and allow self-signed Java to run. You can use Frink as a simple units converter or a full-blown programming environment.
Pocket Cloud lets you run applications and access files on remote Windows or Mac computers from anywhere. I use it from my Nexus 7 tablet and my iPad, to connect to my Windows box and my iMac. The Pro version supports VMware, connections to multiple computers, and advanced RDP features.
What differentiates Pocket Cloud from many Android RDP/ VNC apps is that it can get through firewalls if an agent is running on the remote computer, and perform autodiscovery of your computers by logging into PocketCloud with your Google credentials. It works well over Wi-Fi and over 4G. I've made connections over 3G, but performance wasn't good enough for extended use.
Programmer's Calculator Free
Programmer's Calculator Free is one of about a dozen similar apps in the Play store that do binary, octal, and hex conversions and calculations along with logical operations. It seems like a programmer's calculator is everyone's first Android app, and frankly none of them is especially compelling, but all of them do the job. On the other hand, when you need something like this, it's really handy to be able to do it on your tablet instead of trying to find the actual programmer's calculator you have lying around in a desk drawer, gathering dust.
The paid version of this app costs $1 and adds the ability to change themes.
Wifi Analyzer gives you a quick look at the Wi-Fi networks active near your location, showing you their channel assignment and strengths. It can sometimes help you optimize your channel assignment to avoid congested channels, although some wireless access points have to use certain channels for their high-speed modes.
There are dozens of apps like this in the Play store. This particular one has been around for a long time, is free, and has ads that don't usually get in the way of its operation. I keep it installed on my phone and my Android tablet, so I'll have it when I need it, although I only need it once every few months.