O'Reilly logo

Making Software by Greg Wilson, Andy Oram

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Strengths and Weaknesses of Novice Software Developers

Our observations revealed that novice software developers demonstrate a wide variety of abilities as well as deficiencies. Among their strengths are:

  • Programming

  • Reading and writing specifications

  • Debugging (persistence and hypothesis generation)

Weaknesses include:

  • Communications

  • Cognition

  • Orientation (engaging with a large code base and preexisting software team)

Strengths

From our observations, we could see that novice software developers were very well prepared by their universities for programming, design, and debugging. They were capable of using IDEs to code, command-line tools to analyze files, and online documentation to learn about unfamiliar APIs. They tried not just to complete their tasks, but to understand why the code change was the right one to make. Several of them practiced copy-paste coding, either from documentation or from other sections of their team’s codebase. When debugging, all of the novices demonstrated prolific hypothesis generation (e.g., see the previous section Task Sample) and persistence in trying all possibilities before contemplating giving up if nothing worked. Most took these incremental failures to solve problems in stride, and though complaints about unfamiliar and undocumented tools pervaded their self-commentary, they seldom reported this to others.

One subject had to review design specifications for two software features. This led to frequent discussions with the head of the team, leading to ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required