What do a programmer, a graphics designer, and a marketing expert all have in common?
… Not a whole lot, and trying to get all three to finalize a plan together really makes you wish there was a punchline to the joke.
This summer, I’m working as a programming intern at Learning Games Network, a nonprofit studio that aims to provide games and toolkits for ushering in a new digital age of playful learning. There are several programming interns here, all of us spending our time on different things. Many interns are working on fixing and adding features to a few games that are under construction, but my role has been slightly more complex. Rather than being a carpenter, I’ve been serving more as a highly knowledgeable explorer.
I have been spending my time assisting in branching some of the studio’s ongoing projects into new territory. I’ve been relying equally on my skills as a programmer and on my ability to quickly learn new things and explain them to other people, who may or may not have any technical experience. Instead of being given well-defined instructions to add some set of features to a game, I’ve been sent on exploratory hunts to discover what is possible and set hypothetical ideas on course for reality.
Many of my tasks have involved adding third-party features to the studio’s games.“How can we add Facebook features to this game?” “Can we turn our project into an Edmodo app so teachers can use it in their classroom?” My job is to answer and fulfill questions like these in several steps: find out what’s technically possible, describe these finding to the rest of the studio, help lead discussions to come up with concrete ideas and goals, and then actually implement these ideas.
This job is harder than it seems, especially when most of your programming experience has been in the context of class assignments. In the classroom, you’re given projects that are meant to test what you already learned, rather than send you on an excursion to find out what’s possible. Further, you don’t usually have to form a meaningful discussion out of describing the technical details of your project with people who aren’t programmers. When your academic experience of programming is one of being the carpenter that sits behind the scenes and quietly builds projects to predefined specifications, suddenly being given the command of an entire ship and being asked to lead an expedition to a new place is both exciting and daunting. While being a carpenter alone already requires a high level of skill and precision, trying to fulfill that role while also juggling several others adds a new level of complexity to an already difficult job.
Part-time craftsman. Part-time diplomat. Full-time explorer. Sometimes being a programmer truly means being a jack of all trades.