In the science and technology sectors, a common question that is asked of job applicants or company employees is “Do you know how to program?”. Despite the apparent simplicity of this question, it glosses over an equally important question: “Do you know what to program?”.

Knowing how to program and what to program are two distinct skills, although individuals can possess both. A classical expectation of someone who knows how to program is their ability to write code efficiently and understand the syntax and structure of programming languages. This is generally an easy skill to demonstrate and assess, such as through past projects, testing, or certifications.

CAPTCHA

But knowing what to program is a much more subtle skill that is equally or more valuable, and yet harder to demonstrate and assess. I have interacted with several excellent “programmers” who had limited interest and/or experience with programming languages. But they understood how to break down a complex problem into a modularized form, and they could explain the logical steps that should be undertaken to obtain a solution by writing a sketch algorithm in pseudo-code.

This strikes at the heart of what “programming” really is – it is about conceptualizing and modularizing a problem into a tractable form that is amiable for investigation or solution. Once the steps have been outlined, then the discussion can begin about how to program, such as which programming language to use and how to optimally structure the code for efficiency, flexibility, and usability.

Artificial intelligence will change the emphasis from knowing “how” to program to instead knowing “what” to program. This shift will empower those with domain expertise as well as strong core research skills.

In summary, knowing what to program leverages domain expertise as well as strong core research skills and cannot be simply assessed based on an individual’s passion for any given programming language or their familiarity with programming syntax. With the boom in artificial intelligence coupled with skill shortages, employers will need to discover the “what-to-program programmers” hiding in the rough, who may be presently unaware of their value.