Collaboration and Exploration

Hi, I’m Martin, co-founder and technical director here at Funomena! Every month a Funomenaut volunteers to speak at lunch on a topic of his or her choosing, and so far we’ve learned about a variety of interesting subjects, from hallucinations to the genius of Jackie Chan. For my talk I presented some thoughts on collaboration, which I am adapting here to share with you.

One of our core values is that everyone’s time is valuable. The experience of playing our games should be a worthwhile way for players to spend their time. The experience of developing our games should also be worthwhile! It can initially feel overwhelming, you start out with a seemingly infinite possibility space of all the games you could make. The game you want to make exists somewhere in those possibilities, but you’re not sure exactly where, or how to get to it. You’re stumbling around, sometimes making false starts, sometimes doubling back, and occasionally heading in the right direction.

If you are measuring your progress only against your final destination, you can often feel like you are wasting your time. However, most of that time spent stumbling around is a necessary part of the process. Part of the challenge of game development is maintaining cohesion between different realities. Even as a solo developer there can be a disconnect between the target you want to be heading toward, the target you think you are heading toward, and the direction you are actually going. When you are working on a team several new realities get added: the direction you say you are going, the direction other people hear from you, and the direction other people think you should be going instead.

You need a lot of communication to keep everyone on the same page. When developing experimental gameplay, it is hard to communicate the experience of the game through words because you don’t have many common reference points for people to relate to. Ultimately the best way to communicate is through the game itself. Our prototyping phases tend to be longer than our production phases. Most of the work done during our development is for the purpose of communicating with the rest of the team about what the game could be. Even though this work may not make it into the final game, it is still a valuable use of development time.

Game development requires patience, but narrowing down an abstract idea into something concrete and playable ultimately is rewarding, and you gain an appreciation for the nature of exploration. The medium is still young, and maybe in the future the vocabulary will be more defined, but I’m excited to have the chance to stumble around right now!

permalink →

Low Level Thinking, High Level Programming

A few years ago, Vanity Fair called the 2000s “The Lost Decade” for Microsoft. Most of the reason for that name was financials and business decisions, but at the C++ and Beyond conference in 2011, Herb Sutter invoked Vanity Fair’s expression to talk about the decisions that Microsoft had made going all-in on the .NET framework and largely stepping away from native code . He said it was important to be focused again on low level programming, despite the fact that people coming up in the web and the .NET era thought mainly of abstraction. Herb claimed that native code was still relevant even for application level developers.
For people familiar with working in restricted resource environments not much has changed- but on the web and in a lot of application development, abstraction and patterns have been king. In games, there have been developers cramming as much as they can into as few registers as possible for a long time. This is partially because that’s what was necessary, and partially because that freed up thinking and resources to deal with bigger more important problems. It’s a kind of sokoban puzzle played by programmers hoping to squeeze just a few more milliseconds out of whatever it is they are making, or an exercise in minimalism where each piece has great importance.
Now we’re in an era where games as a medium allow us to tell many diverse stories. We’re not just making efficient machines any more, we are making art. That’s incredible, and the democratization of tools has meant that so many more voices can contribute to what we play. In the process however, it’s easy to forget how knowledge of the craft can facilitate creativity. Games are at a point where we are lucky to have diverse audiences and still be able to try new things, building upon the work of many before us. It’s natural to look for higher level abstractions. It is empowering! But, as developers we should still remember the lessons of “The Lost Decade”.
Emil Persson spoke at GDC in 2013 about the nature of high level shading languages and how as we get further from the hardware, it’s easy to forget about what is actually happening under the hood. Falling into, “the compiler will handle it” or “resources are plentiful” means when things change at a lower level, we may not question what the implications are and instead convert knowledge into mysticism. The beauty of where we are at is that we can use the benefits of high level tools better if we still take the time to know the how and why that things work the way they do.
There will always be places for high and low level languages but no matter what type of tools you use, it will always be important to understand why and how things happen. The great thing about this is that it doesn’t take very long to test. Trying out the different collections, iterators, operations or tools to see what is really happening and what each thing is good or bad at means that you will always know the right tool for the job. Be inquisitive and critical, then focus on what matters. Use low level understanding to be optimal and be able to focus on high level problems.
Jon, Lead Engineer


permalink →


Lovely indie friends Andreas and Cory have put together a beautiful logo campaign to help you express your love of games, in all their forms, and all the people who make them.


Please encourage friends, family and colleagues to join the campaign and show <3 for all the things games have been, are and have yet to be!

permalink →

Video Games Mature

WNYC put out a radio piece this morning about how gaming demographics are changing, and how that’s going to change the games we play. Our CEO Robin talked about Luna, and what we’re trying to build at Funomena:

” The response from game designers is fascinating. From dealing with a family member’s cancer to managing depression, new games are exploring real-world phenomena like emotional loss, existential doubt, and a simple quest for beauty. They cultivate deeper connections between players, and even among players and their families. 

“Our fundamental feeling is that as the audience of game players grows up, there’s a huge opportunity to make things that grow with us,” says Robin Hunicke the cofounder and CEO of Funomena, a game studio in San Francisco.””

You can listen to it here! 




permalink →

The Indie Game Revolution

Hey, Seattle-area Funomenauts: the EMP & Wild Rumpus are hosting a party to celebrate the opening of it’s newest exhibit “Indie Game Revolution”.


If you go, you can see Keita’s crazy Tenya Wanya Teens game, and see a video interview with me about the importance of independent, artistic games. There will be *lots* of other great indie games on display, which means there will also be cool people there, too! Get your tickets here!

permalink →