It's not hard to see why to so many users, smartphones are the ideal computers. You can communicate through them, browse the internet, play games on them and to top it all off, they slip right into your pocket. Oddly though, they aren’t popularly used for one of the oldest functions existing in some manner in all computers, something that is only growing more popular today: programming.

Despite phones and other handheld devices getting yearly improvements in power, they’re still largely considered to be not very programmer-friendly. Development for smartphones and portable game systems often requires expensive licenses, dev kits and sometimes special permission from the company that produces the device. Luckily, there exists a whole new wave of devices and applications that exist purely to make coding and developing more accessible and portable.

Applications for Portable Systems

Take for example SmileBASIC, an application for Nintendo’s 3DS line of handhelds. As described by its official website, SmileBASIC allows users to create programs that make use of the device’s many features, such as its 3D display, touch interface and internal gyro-sensor. It uses a custom version of the Beginner’s All-Purpose Symbolic Instruction Code (BASIC), a long-used programming language designed to be straightforward and easy to learn.

The benefit of building off of a pre-existing language is that many might know it already, and others have years’ worth of documentation — in books and online — with which to teach themselves. Games and other programs made with this application can easily be distributed in the form of codes

Within the mobile space, the app Hopscotch was recently made available on iOS through Apple’s App Store. Some might not find it to be programming in its most pure form, but its drag-and-drop interface allows for easy development and publishing of games and applications on iPhones. The app is specifically focused on helping aspiring coders hone their art. In a similar manner to SmileBASIC, the developers have strived to make Hopscotch approachable; creating a YouTube channel with instructional videos and tutorials to guide users.

Programming Devices

New devices like the CHIP and the Raspberry Pi Zero fit in the palm of your hand and can be plugged into smartphone-sized enclosures with screens and monitors to form fully functional computers. The developers of CHIP claim on their KickStarter page that the device has the specs and the flexibility to work with any project that needs “a processor, a way to exchange data, and a way to power everything.” It also can be plugged into the back of the PocketCHIP, a separate handheld instrument with a built-in keyboard and touchscreen monitor, to use on the go. 

The Pi Zero is one of the newest members of the Raspberry Pi computer family. Like the CHIP, it is essentially a fully functional computer, and owners may build or buy their own compact enclosures with a monitor and keyboard like the PocketCHIP for them.

Like its contemporaries, the credit card-sized Arduboy is also made with user-developed content in mind. The Arduboy, as the name suggests, is built on the popular Arduino microcontrollers. While not  actually computers themselves, these micro-controllers are programmable and often used in electronics projects and in the classroom. Users are also encouraged to plug their Arduboys into a computer and program their own games.

About the size of a Nintendo DS, there is also the upcoming Dragonbox Pyra — a fully functional Linux-based laptop, made to be friendly for users with both little and extensive knowledge of computers. What sets it apart is its power and collection of ports not available on many other devices of similar size.

Potential Uses & Implications

These devices, like those that they were derived from, exist so that hobbyists can create whatever they want, just as easily as they have the ability to code it — only now it’s both more portable and more affordable.

The aforementioned Dragonbox Pyra for instance, looks to be used for Homebrew (the development of games, typically for older consoles and computers, without official hardware or permission) and emulation.

One of the most popular uses of these tiny computers is emulating older video games. Since CHIP uses the popular operating system Linux, there is already a large number of emulators available for download. The convenient RetroPie can be downloaded for free to any Raspberry Pi and currently supports emulation of over forty consoles, home computers and handhelds as well as arcade games.

The PocketCHIP also comes with a free copy of Pico-8. As put by its creators, Lexaloffle Games, the console enables the “making, sharing and playing tiny games and other computer programs.” It is a game engine with strict limitations and a friendly interface that encourages creative programming. Users can access and contribute to a growing library of open source games and programs in Pico-8’s online database.

All of these new devices and apps wouldn’t exist if there wasn’t a demand. They all owe their creation to either crowdfunding or the growing interest in computer science, if not both; many see such technology as increasingly valuable contributions to the community of hobbyists and developers that exists worldwide. With a growing number of increasingly more accessible and user-friendly options, the prospect of an aspiring coder entering an ever-growing field like computing seems increasingly doable.