As a career path, software development couldn't be hotter. Programming languages are proliferating and the U.S. Department of Labor's Bureau of Labor Statistics projects that demand for developers will grow at rate of 17 percent from 2014 to 2024 -- much faster than the 7 percent average for all occupations.
Here's what they had to say about education opportunities, languages to master, and what makes a great programmer today.
While the debate over the value of a computer science degree rages on, these programming leaders emphasize the importance of a well-rounded education, with plenty of time spent studying subjects beyond the console.
"The biggest challenges in life do not have technical fixes," Eich says, "so it's important to study history, literature, art, and other kinds of human knowledge than anything to do with computers."
Hickey agrees, placing programming into a broader perspective.
"Programming is a very new endeavor in the historical scheme of things," he says. "One shouldn't presume that we understand how best to pursue it."
Instead, Hickey suggests pursuing other educational interests to help understand the kinds of problems programming can solve.
"The best programmers are those that can understand, communicate about, and solve problems in the domains they are in," he says. "Software is just a tool for that."
Johnson agrees that would-be programmers should investigate subjects outside the CS lab and mathematics department to help round out their education because, ultimately, "programming is about people rather than math."
Even when it comes to pursuing CS as a degree, Johnson is "torn."
"Mostly one uses things learned on the job," Johnson says. "There's a real value in a good CS education, but I've seen a lot of great programmers who had different backgrounds."
Van Rossum agrees. "You have people who come with an English degree and they go to a Django Girls workshop, and from then on they are Web developers," he says. "You also have people who go through the traditional four years of college with a major in computer science."
Of course, theory does have its place, Johnson says, even in the real world.
"Yesterday I used some compiler theory that I learned as a CS student, and it helped me get a neat, robust solution to the problem I had," he says. "But that doesn't happen very often."
Sign up for Computerworld eNewsletters.