Nathaniel Herman
Product Website
URL Screenshot of
Fun, load/save now supportedvia Dropbox, wraps around
Requires Internet connection to run code
CodeToGo has long been regarded as something of a 'novelty' mobile compiler for iOS devices mainly thanks to an inability to load or save code snippets. All that has changed with the latest version which enables the import and export of files using Dropbox, as well as the current code for whatever given language you are working in being automatically saved for you. What you end up with, for just a couple of bucks, is a handy mobile compiler and debugging tool which wraps around the service (so requires an Internet connection to run your code) and enables you to have a bit of fun in 50 different programming languages on your iPhone or iPad.

CodeToGo is, essentially, an API wrapper around the online compiler and debugger that enables you to use it to compile and run code in around 50 different programming languages on your iPhone or iPad. It has been around for a while but has always been somewhat tarnished with the 'toy' label courtesy of a total inability to load or save code snippets, requiring you to type them in manually. Actually that wasn't quite the case either, although many thought it to be, as you could always use the site to email the code snippets. However, this latest app update pretty much resolves the load/save issue by adding the ability to import and export files using Dropbox to the existing functionality which automatically saves the current code you are working on for any given language. You can now also save and load different files for each language. The Dropbox solution works well in practise, simply touch "Save" whilst editing and then go for the pretty obvious "Save to Dropbox" option. To load then, as I'm sure you have worked out by now, you do the same thing but use the "Load from Dropbox" option instead. It's a much neater solution than importing and exporting files by syncing to iTunes from your computer using the file sharing option. Just as describes itself as 'more than a pastebin' so the same is true of CodeToGo. You can write your code and run it, right there from your iOS device without hassle. Each of the 50-odd supported languages come complete with some very basic (no pun intended) example 'Hello World' code so you can get off to a flying start. You do need an active Internet connection to be able to run the code you write using CodeToGo as it has to connect to the site Linux servers which do all the hard work before sending the results back. There isn't, as far as I am aware, any workaround when it comes to running code on an iPhone or iPad. It's not a huge problem as you can load, write and save your code without that connection, and then wait until you get connected to run it.

In practise, CodeToGo is easier to use and ultimately more productive courtesy of the greater screen estate it and you have to play with. Not that it's useless on the iPhone, but usage is somewhat restricted by the small screen area. The extra, and totally customisable, row of commonly used keys that have been added to the default keyboard is a nice touch. As is the support for supplying input ahead of time by using the "Input (stdin)" tab to set user input.

All in all you wouldn't expect to be using this app for anything vaguely mission critical, it's a $2.99 app after all. However, CodeToGo remains a pretty good code scratchpad for when you are on the move and programming students in particular will find that CodeToGo provides a 'quick and dirty' environment in which to get the feel of a variety of languages right there in your pocket.

The full list of programming languages (together with input codes) supported by CodeToGo is as follows:Ada (.adb) Assembly (gcc - .s; nasm - .asm) AWK (.awk) Bash (.sh) bc (.bc) bf (.bf) C (.c) C99 Strict (.c) C# (C Sharp - .cs) C++ (.cpp) C++0x (.cpp) CLIPS (.cli) Clojure (.clj) COBOL (.cob) COBOL 85 (.85.cob) Common Lisp (.lisp) D (.d) Erlang (.hrl) F# (.fs) Factor (.factor) Forth (.4th) Fortran (.f) Go (.go) Groovy (.groovy) Haskell (.hs) Icon (.icn) Intercal (.i) Java (.java) JavaScript (.js) Lua (.lua) Nemerle (.n) Nice (.nice) Nimrod (.nim) Ocaml (.ml) Oz (.oz) Pascal (.pas) Perl (Perl - .pl; Perl6 - PHP (.php) Pike (.pike) Prolog (GNU -; SWI - Python (Python - .py, Python3 - R (.r) Ruby (.ruby) Scala (.scala) Scheme (.scm) Smalltalk (.st) SQL (SQLite - .sql) Tcl (.tcl) Unlambda (.unl) Visual Basic .NET (.vb)

Edited by happygeek: n/a

Attachments codetogo001.jpg 75.63 KB codetogo005.jpg 82.51 KB codetogo006.jpg 44.89 KB DW_rating_7_150px.png 17.3 KB

As Editorial Director and Managing Analyst with IT Security Thing I am putting more than two decades of consulting experience into providing opinionated insight regarding the security threat landscape for IT security professionals. As an Editorial Fellow with Dennis Publishing, I bring more than two decades of writing experience across the technology industry into publications such as Alphr, IT Pro and (in good old fashioned print) PC Pro. I also write for SC Magazine UK and Infosecurity, as well as The Times and Sunday Times newspapers. Along the way I have been honoured with a Technology Journalist of the Year award, and three Information Security Journalist of the Year awards. Most humbling, though, was the Enigma Award for 'lifetime contribution to IT security journalism' bestowed on me in 2011.

5 Years
Discussion Span
Last Post by Anton_4
Be sure to adhere to our posting rules.