One of the themes of “The Great Forgetting,” my essay in the new Atlantic, is the spread of de-skilling into the professional work force. Through the nineteenth and twentieth centuries, the mechanization of industry led to the de-skilling of many manual trades, turning craftsmen into machine operators. As software automates intellectual labor, there are signs that a similar trend is influencing white collar workers, from accountants to lawyers.
Software writers themselves don’t seem immune from the new de-skilling wave. The longtime Google programmer Vivek Haldar, responding to my essay on his personal blog, writes of the danger of de-skilling inherent in modern integrated development environments (IDEs) like Eclipse and Visual Studio. IDEs automate many routine coding tasks, and as they’ve grown more sophisticated they’ve taken on higher-level tasks like restructuring, or “refactoring,” code:
Modern IDEs are getting “helpful” enough that at times I feel like an IDE operator rather than a programmer. They have support for advanced refactoring. Linters can now tell you about design issues and code smells. The behavior all these tools encourage is not “think deeply about your code and write it carefully”, but “just write a crappy first draft of your code, and then the tools will tell you not just what’s wrong with it, but also how to make it better.”
Haldar is not dismissing the benefits of IDEs, which, he argues, can lead to “a cleaner codebase” as well as greater productivity. His comments point to the essential tension that has always characterized technological de-skilling: the very real benefits of labor-saving technology come at the cost of a loss of human talent. The hard challenge is knowing where to draw the line—or just realizing that there is a line to be drawn.
Photo by Nathan Bergey.