Forgot password
Enter the email address you used when you joined and we'll send you instructions to reset your password.
If you used Apple or Google to create your account, this process will create a password for your existing account.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Reset password instructions sent. If you have an account with us, you will receive an email within a few minutes.
Something went wrong. Try again or contact support if the problem persists.

How FarmVille Was Written In Five Weeks

This article is over 14 years old and may contain outdated information
image

Not many of the millions of FarmVille players know that their beloved agriculture simulator was made in just five weeks.

At GDC 2010, Amitt Mahajan, the lead developer of FarmVille, gave a presentation on how his team at Zynga was able to create such a blockbuster casual game so quickly. Mahajan explained that his overall design philosophy was to bring the developers into the design process and to create a cloud-based scaling system using off-the-shelf development products. Also important: sleep.

FarmVille got off the ground very fast. Amitt Mahajan was brought on to Zynga in order to exploit that demand that they saw for social games. “We wanted to build something very quickly. When we first started the game, we decided to go for an eight week launch plan, from conception to launch. That actually ended up being five weeks after we saw how quickly we were developing,” said Mahajan.

Mahanjan began by asking what it is that slows down traditional game development. “As someone who is new to a codebase, the lack of knowledge prevents me from being able to produce at my capacity. There’s a knowledge barrier before we can start producing,” Mahajan said. He combats that by bringing the developer directly into the design process.

“We decided that design doesn’t really own all,” Mahajan said. “Normally in traditional game design, the designer creates specs, which are then passed over a ‘wall’ to developers who are then required to implement those specs. Why not give developers just as much ownership of the feature as the designer?

“So we team up designers and developers fairly early on in the process. A designer would come up with an idea and then immediately after that they’ll be teamed up with a developer and together they’ll work on creating features.”

As a result, the developers feel like they own more of the game and are more willing to devote time and resources to making that feature great. The example that Mahajan gave from FarmVille was the green bar that appears whenever a user plants a tree or harvests a field. “That was never specced, and it was implemented by a developer because they thought it would make the feature better.

While that definitely sped up the development process, Mahajan laid out how the technical development decisions allowed the team to create an infrastructure that would grow with FarmVille‘s popularity. The fairly complex backend of FarmVille exists almost exclusively on the cloud and has scalability protocols built-in with multiple redundancies to ensure that no user data is lost “due to a single point of failure.”

“You’re probably looking at all of this and wondering, ‘How did we write all of this code in five weeks?'” Mahajan asked the audience of developers. “We actually didn’t. The only thing we wrote was the [piece that translated user input to the web servers.] Everything else is off-the-shelf components. So the only thing that you really need to concentrate on is developing your game.”

Lastly, the most important thing that Zynga learned when making FarmVille was sleep. “We were really really tired by the end of building FarmVille. We decided though that we were going to get it out, that we were going to launch it on Saturday. It turns out that’s a really bad idea,” Mahajan said amidst chuckles from the crowd. As with any launch, there were problems and the team had to spend several weeks at full capacity trying to clean up those problems while they were already spent.

Because of this, it’s now standard operating procedure at Zynga to be code complete on a game on Thursday or Friday and then rest the team over the weekend. “With the team ready to rock on Monday, then we’ll go ahead and launch the game,” Mahajan said.

Recommended Videos

The Escapist is supported by our audience. When you purchase through links on our site, we may earn a small affiliate commission.Ā Learn more about our Affiliate Policy