May 3, 2010
I attended Startup Weekend Bay Area this past weekend at PayPal’s headquarters. It was an awesome experience and very exhausting. Here are ten things that I found noteworthy with the experience of developing an idea within 48 hours of the pitch. They are in no particular order.
Everyone has an idea
There were some 51 pitches of ideas on Friday night. If there wasn’t a long line of people waiting to pitch, there may have been more. Many of the ideas overlapped.
Pick the idea that you are most passionate about
If you aren’t into the idea, you won’t last the weekend with the team. Things get hairy and you have to be motivated to see this thing through.
Some people are strong minded
Being open to new ideas and the knowledge of the group is important. Being set on something is only going to make the whole experience more than frustrating for you and the team. Speak your mind but roll with it if the majority does.
Use each person’s talent to the maximum
Ask each person what their strongest talent related to the project is. Put each person to work on something they know how to do and get stuff done.
Some stuff has to wait
Prioritize what’s important for the first version of the product. Tackling too much stuff at once is going to distract the team. Get the core stuff done and if there is any time left, progressively add more to the core. It’s called a “minimum viable product.” Write down the ideas so you can refer to them later.
It’s gonna change
The product/idea will change a number of times throughout the weekend. Pages that seemed like a good idea initially may be scrapped because they just don’t fit. This is called iterating.
Choose one platform
One team had multiple different platforms all pieced together. This is a great case study for using multiple platforms, but the team had to focus on integration rather than the idea.
You will step on toes
Someone in the team will step on someone else’s toes. Acknowledge it, apologize, and let it pass. Being under pressure of 48 hours is going to increase emotional levels and it most likely wasn’t meant to be a personal attack.
Get some sleep
A fresh mind is wonderful when tackling a bug or problem. If you can’t think clearly, you’re not going to enjoy it.
Have fun
While developing a product is great, having fun is what counts. Making new friends that you can connect with after the weekend is valuable. You can (and should) continue to work on the project with your team into the future.
Would I do this again. Definitely. Being able to quickly adapt to different personalities and viewpoints was a great experience. Making new friends and having fun was all I could ask for.
2 Comments »
April 28, 2010
Keeping up with social games like Farmville and Social City can be difficult if you have a life. These appointment-type games require you to plan how long you will be away from the game for. If you miscalculate, your crop or factory may expire and you lose the progress you’ve made. Fortunately you are given a number of different timed products that range from a few minutes to a few days. If you know you won’t be able to play until you get home from work, you can schedule a crop or the factory to be ready in nine or ten hours.
Social City recently released an iPhone app that extends the game on Facebook to your phone. After linking the two using your Facebook credentials, you can manage your factories and residences on either platform. Throughout the day when you’re on the go you can receive a notification the factory contract is complete and you can quickly clean and start a new contract. There’s no need to bring your laptop along and provides a minimal distraction.
Currently the app is limited to collecting new residents and starting new factory contracts. But if you’re looking to get more resources, like money or population, this is a great option. The iPhone doesn’t support Flash which most of these games use. Using your phone to play these games is nearly impossible.
While Mafia Wars has been on both the iPhone and Facebook for some time, there is no link between the two platforms. This makes advancing difficult across platforms as you’re playing two different games that have no connection to each other.
As a developer, this dual platform is both easy and difficult. Because the iPhone doesn’t support Flash, the game has to be recoded into Objective-C. It also has to be reformatted to fit within the screen resolution and style of the iPhone that users have come to expect. It can be easy since most games call a web service that can be used by both platforms at the same time. This allows sharing some resources across the different platforms.
Hopefully we will soon see more of these cross-platform games that allow players to play for even longer.
No Comments »
April 23, 2010
Social networks have allowed the average user to create a ton of messages to people they know and don’t know. On Twitter, any 140 character message you can think of can be broadcasted to a few to hundreds and millions of people. On Facebook, every time you level up in a game like Farmville, you can broadcast your acheivement to your friends. This can engage the people you know, but can also overload many of your closest and most interested friends.
When developing games like Farmville, developers have had to constantly adjust the dynamics between users. Some players will broadcast every acheivement to their friends, with no regard to how many messages they actually send out. They will invite every user they know plus some, even if they don’t play the game.
Allowing these different means of communication and marketing is great for the developer. They don’t have to spend massive amounts of money on marketing and gaining the trust of new users. Having a friend who plays a game validates that the app is trustworthy and is worthy of a look. This is a very valuable connection that most games take advantage of.
Social games also have a method to post your achievements to your news stream. Players are enticed to post an entry to show off how well they are progressing through the game. This is similiar to showing off trophies and can help create competition to see who is better at the game.
While these techniques can be advantageous in the short-term, it can become a disadvantage as time goes on. If I don’t play a game or have lost interest after playing once, I may consider these streams full of trash. Filtering is the least of possible actions I may take. Therefore it is important that developers provide a method of giving users options to find users who actually engage in the applications you’re posting about, limiting the audience to those who are actually interested in the notifications. If I play a game, I will be more interested in reading notifications in such games.
For those more restrained players, posting their achievements can be viewed as a nuisance to their friends. They won’t post each notification because their friends aren’t known to respond positively. For these players, popping up a box every couple of minutes will only annoy the player and lead to a poor game experience. Having an option to post to just those friends who actually engage in a game could entice these restrained players to post more notifications.
Finding the right balance among your players is critical to keeping your game positive in the minds of everyone, players or not. Not finding the right amount can cause many more problems.
No Comments »
April 21, 2010
Earlier today Facebook announced the Open graph, a way to expand the connections between everything and everything on the web. It sounds a lot like a semantic web. By categorizing data on websites based on different types of objects with data, collecting, organizing, and analyzing the content is made much simpler for automated systems. As the API process made retrieving and using information much easier to do, Open graph goes further enabling everyone to participate.
If you’re a developer who writes object-oriented code, this is like heaven. Having all this data organized into objects makes handling such information so much easier. In the old days, developers had to write code to retrieve and parse webpages, often bloated, unorganized and containing invalid HTML. Parsing was often broken when the webpage was updated with minor changes.
Then came APIs that allowed a limited set of methods to return certain data in organized formats such as XML and JSON. This is a decent solution for the most part. APIs are often accompanied by documentation that specifies what data is returned. It is usually agreed upon that such API methods won’t be deprecated or changed drastically that would break applications. The only problem is that you have to build the interface to interact with the API. And when you reference other services, each usually has different quirks to pay attention to.
Open graph uses a very basic protocol which has been around for a long time. Meta tags within the webpage and basic URLs provide the data that is desired. Being able to pull data from the HTML meta tags allows any developer the opportunity to grab the data quickly. It also allows any creator of a webpage to include this information easily and with very little knowledge or investment. No need for an API or platform. It’s as easy as titling the webpage!
I particularly like that Facebook has simple URLs to retrieve data in the JSON format. If needed, I just have to authenticate with OAuth and I have access to the data I need. No need to read complex documentation and send parameters. A basic URL like http://graph.facebook.com/username will get some data. And they support POST, and DELETE HTTP headers that allow for adding or deleting objects to the social graph.
No Comments »
April 7, 2010
People have always enjoyed customizing and personalizing everything they touch. They want things to work how they think things should work. They want things to be visually appealing. Some people are so obsessive that they will continuously tweak something over and over until it’s perfect, and then repeat the process again. Games like Farmville and Petville, just two of many social games, cater to this obsession.
In Farmville, you can choose a number of different crops, decorations and animals to add to your farm. While some of these items are strategic in progressing through the game, it is interesting to look at what users actually add and where they place each item. Do they have a nice little patch of land for a cow? Do they organize all their strawberry crops together, having each type of crop in separate sections? A user could randomly choose a square on their farm to place an item, or decide that everything should start from the top left and progress down and to the bottom right corner of their farm.
In Petville, there are so many items in the store that you can purchase to decorate each room in the house. Depending on your taste (and the available cash), it can be the cheap dinner table, or the more expensive dinner table. Why do users sit for hours tweaking a virtual environment? Is it because the game is so slow that users don’t have much to do except decorate for the majority of the game time?
Being able to customize the enviornment is very psychological. If you customize something, there is a personal attachment to it. What use to be a standard look is now something you have made more appealing. If you like how the room your pet lives in looks, you’ll stay longer. And if you see a piece of furniture in the store, but can’t afford it, you’ll work for the extra coins or even hand over real money to buy it.
Customizing the experience allows the user to make a personal connection and want to continue using and customizing it as their taste changes. If done right, a user may spend many hours moving things around and never get any work done.
No Comments »
Next Page »