Hiring decisions are often the hardest ones a software company has to make. A pressure-filled 45-minute interview is often an insufficient assessment of a candidate’s true potential. The hiring process is further encumbered by the pervasive usage of whiteboard interviews for technical assessments. While the whiteboard is excellent for determining candidates’ knowledge on software architecture, it is limited when it comes to assessing their practical ability to write clean and elegant code.
Developers write code on the keyboard, yet they are more often than not denied this during interviews and forced into using the whiteboard - a very different medium from the one they code in. This interview format hasn’t been changed for years -- popular books like ‘Cracking the Coding Interview’ even emphasize to candidates the importance of practising writing code on a whiteboard or on paper. Put in such a foreign environment, there’s often a disparity between candidates’ performance using a whiteboard as compared to a familiar development environment.
Assess your Candidate's Coding Ability in Realtime
Nitrous.IO + tmux makes it possible for candidates to stick to tools they are most comfortable with - a terminal shell and IDE editor. This will result in a more accurate representation of a candidate’s true potential. Typically used for pair programming, Nitrous.IO in Collab Mode extends to interviews since interviewers can upload coding problems and view how the candidates solve them in realtime - Google-Docs style. Terminals can be shared using a tmux session that can be re-attached to and continued where they left off. Code written can be compiled, tested and subsequently saved for review by the relevant team a candidate is hoping to join. Instead of working through hypothetical situations, interviewers can see first-hand the exact workflow and problem-solving process candidates adopt when writing and executing real code.
Discuss Architecture using the Whiteboard
So, should interviewers continue to adopt the whiteboard method? Certainly, there ought to be a reason why leading tech companies have been using it for years. A valuable benefit is that a whiteboard is handy for candidates to conjure diagrams and data structures to simulate the thinking that goes behind it. Software architecture and principles can be better explained on a whiteboard than with a keyboard.
Best of Both
Ideally, interviewers should optimize their hiring process with these two complementary tools that assess different capabilities of a candidate. It makes perfect sense to discuss architecture using a whiteboard instead of a keyboard. At the same time, collaborative IDEs like Nitrous.IO can plug the gap where a whiteboard interview falls short by enabling the actual writing and testing of code.
For starters, hiring managers can begin by using Nitrous.IO’s collaborative editor as a form of live programming screening on top of phone screening. This helps them to decide which candidates to bring in for an in-person whiteboard/coding interview (saving costs), or even base their hiring decisions off that remote coding interview. What sets us apart from products dedicated entirely for coding interviews is our full-fledged web development environment that hobbyists and professionals alike use in their everyday development. Besides, you can already perform unlimited coding interviews with just a free plan on Nitrous.IO.
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: