Developers should learn economics and cultural anthropology on top of technical skills, according to Stack Overflow CEO Joel Spolsky.
“Developers should learn ethnography and how to study people. Increasingly software intermediates between people. All of the software getting created today is a social thing,” Spolsky tells Techworld.
“You can’t use Snapchat unless you have friends on there. So as a developer you should learn how people use software and watch them in context,” he adds.
Are you a developer looking for a new job? Browse Techworld Jobs here.
In terms of programming languages, Spolsky had the following advice: “Python is growing in importance. We’re increasingly seeing programmers use modern trendy languages, but I think they should learn older ones like C which give them a better understanding of the machine.”
Spolsky’s main tip for developers was to predict outcomes before embarking on a specific route.
“Don’t do something until you have a theory for what’s going to happen. Instead of trying things at random, say ‘I think when this happens, this will happen’. That way everything is a learning experience. If you aren’t explicit about goals, when you fail you don’t learn why,” he says.
Spolsky also has a piece of advice to help improve productivity: instead of completing all your tasks by the end of the day, do the very beginning of tomorrow’s project before you finish working.
“It might be writing an essay or an email, but either way if you have an outline it’s so easy and forces you through that step, versus staring at a blank page,” he says.
Spolsky set up the developer community Stack Overflow and invented project management tool Trello, so his views carry huge weight within the field of software development.
Although he does relatively little programming these days, Spolsky has been writing codes using Glitch, a website which provides a social programming environment to help you build a service, for example a game, online tool or bot.
“What we’re trying to do is bring people not traditionally coders into field of coding by making it a much nicer and gentler start. It’s complementary to Stack Overflow, where hardcore developers fix hard problems. Glitch is a fun thing where you design games,” he says.
Spolsky’s real interest is technology that helps fix simple, everyday problems. “The big ideas always have unintended consequences, which make me afraid what’ll come out of them,” he says.
The main technologies he wants to see more widely available are machine learning to restore old, lower-quality pictures to perfect sharpness and something that will prevent you from having to type in “17 different passwords to access different services”.
During our interview Spolsky also reveals he is a supporter of Universal Basic Income (an unconditional financial benefit received by all citizens) as a way to negate the impact of automation.
“In the history of jobs being automated away, we tend to find better, higher level use of people’s talents. It’s no coincidence we’re at the peak of the world’s best TV ever recently. We don’t need that many people to sew clothes anymore. The trouble is that does lead to inequalities, and we need to figure out how to address this as society as a whole,” he says.
“I’m a fan of the concept of a universal income. If we can cheaply automate much of the production of food, housing and so on, why not distribute the proceeds equally?” Spolsy adds.