Many developers dreamt of turning their iPad into a full-fledged development machine. It’s the promise of freedom to work on the go and not being chained to a primary machine that’s too heavy to carry along. No doubt, coding on iPad has also been a facet of Nitrous.IO’s vision. Pete, our CTO, had always wanted to develop on his iPad before Bluetooth keyboards were even sold on the market.
While the iPad itself is still in its infancy as a dev machine, it is a viable option when coupled with cloud IDE platforms like Nitrous.IO. In a way, we have fast-forwarded into the future as our cloud IDE transforms iPads (and Chromebooks, for that matter) into powerful software development tools. This translates into workspace accessibility, as you can work across devices while using the same, consistent development environment, maintained in the cloud.
Benefits of Coding on iPad
Be that as it may, do note that Nitrous.IO’s support for iPad is still experimental i.e. things might still break. However, it is more than sufficient for small edits and bug fixes. Here are some of the benefits we find coding on iPad provides –
iPad is the ideal contingency plan while on vacation/on-the-go. Whenever you need to travel light or happen to be on the move, you can just take your iPad with you instead of a clunky laptop. The need to code on the fly can switch from non-existent to that of utmost immediacy in a matter of seconds whenever a complication arises. Make a quick code edit/bug fix regardless of where you are, without having to cut short your vacation plans.
No complicated setup required, just code from your browser for free. There are several paid iOS apps out there that allow coding on iPad. But with Nitrous.IO, no installation is required, just code off a box within your browser itself.
Consistent development environments regardless of your primary machine’s OS. Whether you are a Windows/Mac/Linux user, you can set up similar development environments in the cloud, without worrying about wrestling with different environments across devices.
Alright, that’s enough self-plugging. Here comes the trade-offs.
You can only use Editors with Console support in Nitrous.IO for iPad. This means that Nitrous.IO’s built-in File Directory and Editor won’t be available in iPad mode. But if Vim, Emacs and Nano happen to be your tools of choice, you’re in luck.
iPad’s native keyboard eats up much of your screen’s real estate. This can be an annoying hindrance especially if you code for longer lengths of time. That being said, it can be gotten used to if you’re just making a quick bug fix/code edit. A quick get-around is purchasing a Bluetooth keyboard or using the native virtual keyboard in split-pane mode. For your convenience, we built a Softkey panel with shortcuts for tab, ctrl, alt, esc and directional keys, which don’t appear on the virtual keyboard.
All things considered, if you think you can’t live with these shortcomings, there are great choices out there such as Textastic, Diet Coda, iOS Vim + Firebug Lite. Check out our tutorial post on using Diet Coda with Nitrous.IO. However, these options might be costly and take time to install and set up.
So, yes, it’s not perfect, but it’s pretty great if you’re looking for a simple, fast and free solution to coding on iPad. Sign up for a free account and follow our iPad tutorial to experience the benefits of developing on iPad for yourself. Share with us your experiences, we’ll send you some swag (hoodie & stickers) if your story happens to be published on our blog!
Now the question is, whose iPad are you going to filch if you didn’t even bring that on vacation? And if you have children or teenagers, try not to start a family drama.
Pair Programming, an element of Extreme Programming, remains a controversial Agile Development practice that developers tend to love or loathe. Experiences vary drastically upon the various combinations of developer proficiency, personality and habits. For the uninitiated, pair programming can be described as something akin to continuous code review - the overarching theme is that an extra pair of eyes ensures improved software quality and fewer defects.
Pair programming isn't all pixie dust and fairy tales however. The additional set of eyes comes with an opportunity cost since developers spend on average 15% more time during the initial development phase. This additional time sink is likely due to differences in developer proficiencies and general working styles.
Incredible benefits, when done right
Although pair programming might not be the perfect solution for every team, the rewards are tremendous once you’ve found the right programming partner. The benefits of pair programming are numerous: A clean, well designed code base that facilitates maintainability, improved developer awareness of the code base, less time fixing bugs, as well as improved learning & communication. San Francisco’s Pivotal Labs and Toronto’s Xtreme Labs are successful examples of companies who have adopted and benefited from the pair programming methodology.
Collaborate in real-time using Nitrous.IO
Whether pair programming works for you or not, here’s how you can utilize Nitrous.IO to better your collaboration experience. Our real-time collaborative editor allows you and your colleagues to pair program in the cloud from anywhere. To pair program on Nitrous.IO, create a free account to begin if you haven’t got one. Next, simply follow the steps in this tutorial to kick start your pair programming experience.
You might have heard of the Hour of Code movement recently - it’s a one-hour introduction to computer science targeted at demystifying code and showing that anybody can learn programming. It has gained tremendous traction since its launch and has already attracted 97 million participants. The organization behind the movement, Code.org, won the support of politicians (President Obama), major tech companies (Apple, Google), educators and students, signifying their commitment to the vision of inspiring students to learn coding.
But what happens after an Hour of introduction to programming? How are students going to continue their coding education? Educators need to continually feed students’ interest and excitement around learning to code.
Typically, the introduction to coding begins with setting up the developer environment on the student’s local machine. This isn’t as simple as you’d think and many novice students find it a bewildering and confusing process, ending up doubting their own abilities just because of failure to get the environmental variables correct, needless to say this process is fraught with frustration and they lose excitement before they even are able to write their first line of code. The typical “learn to code process”, where educators and student have to get through the painful setup process, is built to fail.
Cloud-based software development
This is exactly how cloud-based web IDEs like Nitrous.IO help promote continuous learning. Nitrous.IO obviates the need to setup local development environments, leading to immense time savings that can be better spent on teaching and learning coding. Working with a cloud-based IDE allows students to start coding immediately within a web browser in the classroom, and then continue where they left off at home by signing into the same development box from their home computer.
Teachers are able to log into the students’ boxes from time to time to troubleshoot or make necessary edits to facilitate the students’ learning progress. Remote coding lessons are even made possible with our collaboration feature. Students can preview their app in the cloud instead of localhost and share their work with friends and families using a simple url link of the preview site - a little something to take home from the lesson.
To get started, simply create a free account - Nitrous.IO offers free accounts with basic functionality, you can upgrade your plan anytime along the way if you find that you need more speed and a faster box with additional features. Follow the steps in this tutorial once you have your account set up.
Nitrous.IO is the fastest and easiest way to setup and start working on a new web application. Our recent Meteor template launch is yet another example of our commitment to providing developers the latest versions of the hottest frameworks.
After creating a box with one of our public templates, developers often install additional services on top. Common installations include databases like MySQL, Postgres, or MongoDB. We make these services easy to install and configure with our Autoparts package manager. Some users will also customize their dotfiles to get their perfect development workflow in place.
With snapshots, you can set your own custom starting point for new boxes. If you're a consultant, this means you can start each new project with a clean environment pre-configured just the way you like it. If you teach a class, you can start with a master template and duplicate it for each of your students. And finally, if you're a fast growing startup making changes to the Dev stack regularly, you can keep your team happy and ship faster by capturing and sharing an entire Development Environment with the whole team at the click of a button.
If you're a large team or class who needs more boxes than the current plans allow please reach out to
Congratulations to the Meteor team for reaching 1.0! It has been exciting to witness the amazing progress their team has made on the framework. We've supported many thousands of Meteor developers on Nitrous.IO and are only seeing those numbers skyrocket as Meteor approached its 1.0 release.
To celebrate the 1.0 milestone we've added a custom Meteor template to our box creation page. When creating a new box you will see an option to select a Meteor template.
Simply select the Meteor template to create a development environment with Meteor 1.0 installed. Take a look at Meteor's new guide to build your first Meteor app using 1.0.
If you want to try out a sample application, you can start hacking on Discover Meteor's
Microscope application by clicking the Hack button below.
We launched Hack on Nitrous.IO in April and were surprised by the groundswell of support and adoption from various partners and open source projects. Almost 3000 individual repos were cloned over 6000 times using an embedded hack button in the project repo on GitHub or the Bookmarklet.
So without further ado, here are the most popular projects that Nitrous.IO users cloned over the last six months:
It has been incredibly exciting to watch the evolution of the tools developers use to deploy software on the internet over the last few years. We now live in a world where instead of planning, procuring, and installing complex physical infrastructure we can create a configuration file and spin up a new datacenter anywhere in the world in minutes.
Instead of complicated change controls and release management we can now create builds, deploy them, and roll them back with simple API calls. With the continued rise of containerization and projects like Docker we're seeing common primitives emerge for building great architectures.
It has never been a better time to be a developer.
That being said, an area where we haven't seen much improvement is in the development process itself. Getting a new laptop or adding a new member to your team is still often a painful process involving (at best) some carefully maintained bootstrap scripts.
With the ease of creating production environments we should be able to develop in one as well. The work we do building our development environments should be reusable when we go to production. You can try to achieve this today with a VPS or a virtual machine but the reality is that these solutions have a painfully high amount of friction.
The Nitrous.IO team is working hard to make the development experience great and I am excited to announce that I am joining them in that mission.
If you're interested in helping us, please check out our jobs page.
We have some big announcements coming up next month, so stay tuned!
David spent 5+ years at Heroku as a software architect and head of the Developer Experience (DX) team. He worked on many of Heroku's developer-facing tools, including the API, command line client (CLI), foreman, toolbelt, and others.