Onboarding New Developers: Enforcing Standards Through Tutorials

Onboarding New Developers: Enforcing Standards Through Tutorials

kjljlk

Getting a new developer up to speed is one of those 80/20 tasks: there is an easy 80% that goes quickly, and a hard 20% that takes longer. The easy part is the big picture: what tools the team uses, where the source is, what the build process involves.

The hard part is in the details. Coding standards. Preferred practices. How to deal with the inevitable idiosyncratic aspects of any software development process that has been running for more than week.

The usual onboarding practice is to run a new developer through the big picture, point them at a collection of documentation, connect the with a mentor, and let them muddle through the details from there.

This is a lengthy process, and learning from documentation is often not the best way to go about it even when the docs are up to date. My own practice has been to encourage new developers to update the docs as they learn from them, so as they discover inconsistencies and obsolete sections they can keep the words in line with reality.

Modern software development tools like Komodo IDE offer a better way of doing all of this. Komodo IDE has had the ability to enforce coding standards for a long time, and that’s already a big step in the right direction, as new developers in an organization will get continuous feedback on preferred practices.

Well-thought-out, uniformly enforced coding standards make it impossible to tell who wrote what code without looking at the commit logs. This uniformity makes it much easier to reason about a large code-base. The human brain can only keep five to ten things in focus at once, and every time a developer has to remember something trivial like the difference between get_foo() and putFoo() something else is pushed out of their attention.

Using Tutorials For New Developers

The ideal onboarding tool is a set of tutorials built into the development environment, and our 10.1 release of Komodo IDE provides development teams with the ability to have exactly that. Tutorials can access any aspect of Komodo IDE’s workflow, and they let dev teams create a collection of HowTos that will ease the integration of new developers.

Tutorials are living, active, documentation that give a developer who is new to the team an immediate, hands-on experience with the tools they will be using. Tutorials can be referred to immediately from within the day-to-day development environment, and they can be continuously enhanced and maintained to reflect actual team practices. And unlike static documentation, tutorials necessarily follow the “show, don’t tell” rule of good communication.

I believe that documentation ought to be as close to the stuff being documented as possible. It increases relevance and eases the unavoidable maintenance tasks. Putting development process documentation into tutorials that are run right in the IDE is the best way to do this, and helps take care of the last 20% of developer on-boarding that can otherwise require a great deal of downstream effort.


You can try out the new Tutorial Tool in Komodo IDE–download the 21-day trial. Learn how to use the new Tutorial tool to create your own team (or other) training: http://docs.komodoide.com/Manual/Tutorial-Tool.

Tom Radcliffe

Tom Radcliffe

Tom Radcliffe has over 20 years experience in software development, data science, machine learning, and management in both academia and industry. He is a professional engineer (PEO and APEGBC) and holds a PhD in physics from Queen's University at Kingston. Tom brings a passion for quantitative, data-driven processes to ActiveState. He is deeply committed to the ideas of Bayesian probability theory, and assigns a high Bayesian plausibility to the idea that putting the best software tools in the hands of the most creative and capable people will make the world a better place.