Author: Matt

  • Launching Stuff

    A friend an I are on an ambitious schedule to release a lot of new games into the App Store this year.

    Last night I submitted my first game of the year for review to Apple.  It’s the first game I’ve released under the Halotis brand in 7 months.  Invader Crush should be on the App Store in a week or two

    IMG_0548

    The strategy is to follow this launch up quickly with a few more simple games.  The next game is going to be a classic Flappy Bird game with doodle style graphics.  I’m hoping to have it finished and submitted this weekend.

    IMG_0547

     

     

  • Yeoman for Modern Web Design

    While I’ve been delving into Django and Ruby on Rails for the last few years the world of Node.js has been maturing.

    The set of command line tools that have developed around the Node.js platform has evolved tremendously.  They have escaped beyond the confines of Node.js Apps.

    Yeoman brings together an app starting templating engine (yo), Grunt – a framework for command line tools, and Bower for dependancy management.

    The biggest thing I have gotten from working with Yeoman is the exposure to new tools and new ways of thinking about web development.  SASS + Compass, with HTML processing.  you can tie together Jekyll for static page templating, and use bower to pull down javascript libraries without having to scour the internet for the latest versions.

    Yeoman brings together all the nice things we are used to in the python and ruby world.  It’s kind of interesting to work with management dependancy for javascript libraries.

  • Lessons From Flappy Bird’s Success

    Much has been said in recent weeks about the conundrum that is Flappy Bird and how it could have possibly become the #1 Free app on the App Store.

    First off I think it’s great to see a small independent developer is still able to have some success on the App Store.  It has become increasingly difficult to compete with the big game companies that are pumping a lot of money and development time into creating games.  For a while it seemed to be unlikely that independent game designers had a chance to be found at all; that the top charts were being gamed or bought.

    One interesting comparison I haven’t seen any one talk about yet is the difference between a poorly monetized #1 Free App (Flappy bird) and a Top Grossing app. Flappy Bird was reportedly earning $50,000/day in advertising revenue.  Clash of Clans is reportedly generating $5,000,000/day. Interesting that even with the massive surprise success of Flappy Bird it’s still generating merely 1% of the revenue of Clash of Clans. What insight could be gleaned from that? possibly the poor performance of banner ads vs. IAPs, the value of engagement, or importance of session length?

    To me, the reason for Flappy Birds success hinges on two factors:

    1. Comically entertaining and difficult – In my first attempt I was dead in literally 0.1 seconds.  I believe the initial response to this for most people is “WTF!? I have to show my friends this so we can laugh at it”. It’s the same urge people have to share funny things they find.. how could you NOT post this to Facebook if you found it at Walmart:
      most_unfortunate_food_names_06
    2. Rating and Reviews – The game has very few things you can do. Play, share and rate are the only buttons you can press.  I believe that once the word of mouth virility spread (due to point #1) the game’s design lead to unusually high number of similar WTF app reviews.  Due to Apple’s weighing of reviews and ratings into the search, Flappy Bird started to snowball up the charts. Eventually part of the game was to write a funnier review and for a while it was seeing 100’s of reviews posted per hour.

    If there are lessons to learn from Flappy Bird they would be the importance of having something worthy of sharing, and a call to action asking for users to rate your app. Flappy Bird proves that with a bit of luck, these two factors can create a tipping point which is enough to reach #1 in the App Store.

  • Game Designing

    My current side project is a match 3 game like Candy Crush Saga.  They are super addictive games that work great on mobile because they are so nice and casual to play.

    Problem is the competition on these types of games is stiff. Differentiating my game from the crowd is difficult. Originality adds a level of risk, but a complete clone needs to be more refined, and better advertised to stand up against the competition.

    When you start creating games you think about them differently. Originally my game was supposed to be endless – you could match 3 until you ran out of moves to make. What I found was that it dragged the game on and got boring. If you ended your game and had to start over it felt like you didn’t accomplish anything.

    So at the moment I’m working on adding components to the game that up the fun factor. Things that make the game more sessionable with a shorter game loop and better progression feedback.  There are so many psychological triggers in creating a good game.  I think that’s what is the most enjoyable part to work on.

  • Meditation

    Many years ago when I was younger I had a clarity of thought and an ability to focus for a very long time without distraction.  These days it is very difficult to avoid getting distracted. The ability to focus on a singular thing for long enough to really dig into it is a real skill of the mind that I’d like to work on getting back.

    Meditation is the practice that enables you to train your mind. For the past couple of weeks I have been finding time in the day to do some meditation.  Generally I work myself through a self-hypnosis routine of focusing on relaxing every muscle in the body individually. Everyone’s experience with this is probably very different but the interesting thing for me is just how difficult it is to focus for even 1 minute without my mind going off on a tangent thought.

    With practice it is possible to maintain focus for an hour or more.

    One of the interesting things discussed by productivity analysis of software developers is just how disruptive a momentary interruption can be. Stopping coding to check email for 10 seconds will cause 15 minutes of lost time in the day. When you lose the ability to concentrate it is your mind that is interrupting itself.  It becomes extremely difficult to be productive.

     

  • Meditation For Programmers

    Programmers have one of the most intensive intellectual jobs.  It requires great focus and concentration to write software productively.

    If you measure the productivity of a programmer you might be surprised at the range. At the bottom there are software developers that actually create negative productivity; every line of code they write is one that someone else will have to re-write. At the top end is the so called ’10x’ programmers who can single handedly churn out multiple hundreds of lines of code per day.

    Average programmers experience ’10x’ performance occasionally as being in ‘the zone’.  When in the zone, time zips by, you find yourself knowing all the code you need to write and are limited only by your typing speed.

    Getting to this 10x level of performance consistently requires a lot of prerequisites to be met. You need to be proficient with your programming language syntax, you need to know the libraries you’re using and you need a base of understanding of computers and your problem set so as to avoid the need to refer to Google to answer “how to” questions.

    If you find yourself asking things like “How do I write a foreach loop in this language?”  or “What’s the API for doing an HTTP request?” or “How do I add authentication to this?” then you need to step back and do some more learning.

    Getting past this first bar to productivity is pretty clear: buy a book, read it.

    There is a second bar to productivity that is not so obvious how to improve on. Truly difficult problems require intense focus for long periods. External distractions can be mitigated with ease. Turn off your email client, silence your phone, put on headphones.

    Internal distraction something that I haven’t heard many discuss. Mental focus is a skill of the mind.  Meditation is a practice for training the mind. By practicing meditation you can  extend your ability to focus without interruption and gain a deeper perspective on the problems at hand.

    When you are able to think about  a problem for only 5 minutes at a time before your mind wanders or you get distracted then you can only gain a shallow understanding of the problem. With an hour of single minded focus you can get very deep into the rabbit hole.

    Training your mind for this level of focus can take a long time.

    Start your meditation by eliminating external distractions. Find at least 15 minutes in the day to focus inward. Start by thinking about your toes individually making sure each of them is completely relaxed before focusing on the arch of your foot, then the ankle and so on until you get to thinking about all the muscles in your face and head. Do not move during this exercise – even to scratch an itch.

    By giving yourself a routine like this to practice it’s easier to identify when and how often your mind wanders to other thoughts. When you do find yourself de-railed just bring your self back and continue relaxing where you left off.

    When you can maintain 100% focus on relaxing yourself through toes to head then you are ready to start pondering the problems at hand.

    Over time work yourself up to an hour of focused thought.

    Not only is the time you spend in deep thought productive at forming ideas and solving difficult problems, but you’ll find that your ability to focus when working  also greatly improves as well. You’ll find yourself in “the zone” more often and for longer.

    To those who have never tried to meditate I challenge you to try this relaxation thought exercise just to see how difficult it is to keep your mind from wandering or finding yourself focused on an itch you can’t scratch.  It’s not easy.

  • Candy Crush Game Analysis

    Candy_Crush_Saga_-_KingCandy Crush Saga from King has been dominating the top grossing charts for a very long time now.  The game mechanic itself is not new or particularly innovative and is of similar type as Bejewelled that was originally released in 2001 – long before the iPhone was invented.  What is it that differentiates CCS from the pack and keeps it at the top of the charts?

    CCS was originally released as a Facebook game, and was later re-written for mobile.  Much of the virility aspects is a result of this heritage.  It is and was a key aspect of the games distribution and marketing.  I’ll come back to the social integration later in this post.

    Art and Design

    The first thing you might notice is that the game has a very unique and recognizable art style. This branding helps it stand out in the clutter of a Facebook news feed.  The game’s UI is consistent, with smooth simple animations.  The theme of the game is attractive to a wide audience of casual players.

    The UX for the menus and dialogs are designed to reduce confusion. In most cases there are very few decisions to be made.  For instance the start view contains 2 obvious buttons: “Play”, and “Connect with Facebook”.  Settings and extras are hidden to reduce clutter and focus the player on the actions King would most like you to take. (The Facebook button disappears once signed in)

    IMG_0502

    The design of the levels map clearly shows progress in a way that is more difficult to visualize in a flattened list of levels. The integration of Facebook friends into the map is particularly interesting (I’ll discuss this more later).

    IMG_0497

    For the match 3 game itself there are no obvious issues.  One thing I might change is to encourage the use of power-ups to help players learn to use them.  The colors provide good contrast needed for this type of visual search game. The various goals, power-ups, special blocks, and levels keep the game challenging, and interesting through the 400+ levels.

    IMG_0505

     

    One nice touch is the consistent use of a squeeze animation on all buttons. This helps keep the UI feeling alive and helps indicate things you can touch. It’s simple, consistent and goes a long way to improve the look and usability of the game.

    Gameplay

    The game has fairly short segmented levels.  Players can play for 5 minutes at a time conveniently.  However, a level on it’s own is not the core game loop…

    The core of the game is based around hearts.  You lose a heart when you fail to pass a level, once you run out of hearts you are presented with with options to get more.  This is one of the places where King has pay walled the game.  You have the choice of waiting for free hearts, collaborating with friends for hearts, or purchasing some.

    I’m sure there are some key metrics that King is collecting to help optimize the levels. For each level they have a couple of levers to pull that can change the difficulty.  After a level has been designed it can get a number of moves and thresholds for points needed to get the stars.  On the backend these numbers can be tweaked to meet certain goals. The vast majority of levels would be tuned to say an average number of attempts before winning. Some levels on the other hand could be tuned to higher difficulty in order to encourage IAPs or to drive online discussions about tips and techniques to win. Still other levels may be artificially easy, for some positive feedback.

    Being able to tune the difficulty easily gives King a way to provide just the right amount of challenge to players, which in turn keeps the game enjoyable.

    With 400+ levels CCS needs a lot of variety to keep players interested. With most game updates they’ve managed to include some new pieces, power-ups, behaviours and goals to keep you learning and challenge you to think of new techniques to deal with the new levels.  Constant investment in the game has helped extend it’s life and keep it popular.

    Monetization

    You don’t get to the top of the top grossing list without nailing the monetization.  One of the things you might have noticed is lack of an in game currency.  Unlike what is popular in many other games on the App Store right now. CCS does not have IAPs for currency with large price points.  Instead they present many opportunities in the game to make smaller $0.99 impulse purchases. This integration is rather ingenious in that there is no “store” in the game you have to go to to make a purchase.  The IAPs are seamlessly integrated into the flow of the game and priced where they can be quick impulse purchases.  On the other hand having a store and currency would add friction to the buying process – go to the store, decide on an amount of currency to buy, then find the place to buy hearts and make another purchase there.

    iaps

    CCS used to have ads in the game for additional revenue but removed them. This move places more focus on staying in the game (and running out of hearts) rather than getting distracted to go download something else.

    There was also a small “Yeti Store” in the game for a while that sold some high priced non-consumable power-ups.  This seems to have been removed.  It’s likely that these permanent power-ups either made the game too easy or the revenue from these paying players would be higher with just the consumable power-ups being the only option.

    There are many opportunities to buy things in the game. Before starting a level you get a chance to purchase power-ups, if you fail the level you get a chance to buy a few more turns to keep going, if you run out of hearts you get a chance to buy more hearts. When you finish a block of levels there is a paywall to wait or pay to unlock the next block of levels.  All of these purchases are inexpensive impulse buys.  This model of integrating the IAPs at the point where they are needed in the game, and otherwise hiding them is obviously working very well.

    As you can tell King is not afraid of making significant changes to the monetization as they measure and experiment.

    Social Integration

    Being initially a game on the Facebook platform pushed King to deeply integrate the social aspects of the game. They have managed to execute well on both cooperative and competitive levels, as well as providing deep social proof and tools for virility.

    IMG_0518

    The game changes dramatically once you connect your Facebook account. Suddenly all the friends in your social graph appear on the level map. At a glance you can see how many of your friends have played the game, and how far into the game they’ve gotten. It’s some powerful social proof of just how many other people you know play the game, and implies some competition for you to catch up to your friends.

    For competitive incentive the top scores amongst your friends are presented before playing every level.  The implied competition hopefully gets you play longer to beat their scores (and loose some hearts in the effort). Seeing photos of your friends baked into the game is kind a cool way to personalize the experience.

    IMG_0504

    They have a system for gifting and requesting hearts. This appeals to the players looking for a more casual, cooperative approach.  It’s also ties into their somewhat subversive way of blasting facebook with messages.  Each message that goes out is yet another opportunity to get players back into the game.

    Marketing

    Most games at the top of the top grossing list have taken to a strategy of fortifying their position through massive and aggressive advertising. With a massively profitable game like Candy Crush they have a huge budget to purchase traffic on ad networks. Persistent ads attract new players and remind existing players that the game is still installed. By spending a significant portion of game revenue on advertising they continue to buy their position at the top of the charts.

    Refinement

    Keeping a game at the top requires constant attention. King has been consistently adding new levels to the game with new power-ups, goals, and obstacles.  They now have over 400 levels.

    The UIs seem to have been getting simpler over time.  Monetization has been simplified to focus solely on IAP consumable items, ads have been removed, non-consumables have been removed. Small consumable IAPs seem to be working extremely well.

    Re-Skinning

    King is not sitting idle on just one game.  They’ve discovered a formula that works and are busy replicating it. Pet Rescue Saga is essentially the same game with different graphics. This is an easy way to re-use the code, attract a different audience of players and build a network of similar games that you can cross promote while keeping things in the family.

    Key Lessons

    If there are key lessons to be learned from an analysis of Candy Crush they are:

    • unique and original gameplay is not required for success
    • very simple UIs help make the game accessible to a wide audience
    • tightly integrated consumable IAPs can generate more revenue than ads or non-consumables
    • continuing iteration on the same game is critical to keeping it relevant
    • making social part of the game add genuine cooperation and competition
    • being able to easily fine tune the difficulty makes easy to get the balance just right
  • Creating Feedback Loops

    A feedback loop for success is anything that looks at your past or current state and if you have fallen off the tracks does something to get you back on them.

    That’s kind of vague. So here are some examples of feedback loops:

    • For a weight lifter – keeping a log of past lifts encourages them to lift more, and work harder if they see loss of strength over time.
    • For this blog a nag email goes out after a week of not writing, that email encourages me to write, which stops the emails
    • The Jerry Seinfield calendar which encourages you to do something every day.
    • A regular financial audit – helps to identify areas that need focus hopefully before they become a problem.
    • An annual performance review helps employees develop strategies to improve.

    If you have a goal then having an effective feedback loop can help you reach it.

    The start of the year is a good time to do a review of your feedback loops (a feedback loop for feedback loops) to decide if any of them are ineffective and can be dropped, or if new ones are needed to match your goals. For a business it helps to be systematic.

    If the goal is to 10x your business in 2014 then to start with you would create a strategy that would achieve it (concrete things to do). For each of those concrete steps in the strategy you would evaluate each major pillar of your business to see if any feedback loops would be appropriate – Financial, HR, Sales, Marketing, Product development.  Is there anything you could measure? A good feedback loop will help identify when you need to make adjustments to strategy earlier.

    The worst feedback loop for a goal is to just put it in your calendar – “Dec 31 2014: review business to see if it’s 10x”.  A day or week after setting that goal, you’ll forget about it, get derailed, and be surprised at the end of the year when you get the calendar alert. You can do better.

    If part of your strategy to 10x your business is to re-design your website, then an effective feedback loop is one that actually forces you to do the work. Perhaps an alert on the website’s github repository to ensure there is active development on it every day. or a kanban board to organize the work and visualize progress. If you want an effective website and not just a different one, adding A/B testing and doing a weekly review of conversion rates is a great way to keep focused on continual improvement.

    The most effective feedback loops will DEMAND that you do the work to execute your strategy, and will MEASURE the effectiveness of the strategy to achieve your goals.

     

  • Buying Code

    As a developer I have strong opinions about what makes good software and there is a desire to rewrite code that I find from other people so that it is ‘better’. This makes it difficult  to justify purchasing code.  I could just write something similar/better myself.  Yet, buying code is probably the cheapest most effective way to get ahead.

    Software takes time to write. If I could sustain 500 lines of code per day, a 5000 line app would be 2 full-time weeks of effort.  That’s thousands of dollars worth of my time.

    I recently purchased roughly that much code. A 5000 line iOS game and it only cost about $200! That’s a massive savings over the time it would take to write myself. It puts me 2 weeks ahead in my development time.

    It’s easy to see the value in leveraging open source software, but even paying for code can sometimes provide a massive discount over custom crafted code.

  • Top Grossing Apps Has Stabilized – Keeping you out

    I like to keep an eye on the top grossing apps in the app store.  They are the ones killing it, and rolling in much of the money players spend, they are the games that I look to for ideas to model in my own apps.

    The big games have it mostly figured out, and now, it seems they have cemented their positions at the top. Ever since SuperCell launched Clash of Clans and Hayday roughly 6 months ago the top grossing list has been remarkably stable.  What’s going on here that allows these same games to dominate the store for so long despite the legions of developers worldwide releasing lots of new games?

    I believe that there are several things these top apps do that effectively creates an impenetrable wall that keeps these games at the top and pushes others down.

    First,  all the games at the top are addictive and have game mechanics that continually bring players back to the game.  The resource management games are obvious examples of this, but the hearts in Candy Crush are doing the same thing. Hook a notification to something that will keep a player regularly opening the game multiple times per day is key. The time consuming nature of these games naturally leaves players with less time to look for and try new games and it gives players more time to spend money with the top games.

    Monetization in these apps is perfected.  In order to be on the top grossing you need to out monetize the competition.  Considerable effort has gone into these games to ensure that people are motivated to spend money often.

    These first two things any developer with time can reverse engineer and add to their own games. These are just the first level to getting to the top grossing list – having a game with the ability to make money.

    What keeps the top guys at the top is:

    A critical mass of players that is both hooked to the game, and are referring new players. For new games that don’t have critical mass this is extremely difficult to get.

    Constant paid promotion is also creates a barrier. The top games are tying up a huge percentage of the advertising inventory. Due to their high revenue per user, and reduced acquisition costs that come from free referrals (due to players referring new players, or being visible on the App Store) these games have massive ad budgets that push cost per click higher than most new games can afford spending.

    Create a community around the game. The top games all have attracted a community of loyal players. The community deepens the level of engagement, and reduces costs associated with support. The best players also help direct new features in the game and identify areas for improvement.

    These last 3 points are not possible for a new game to create or afford.  To get to the top then is extremely difficult and requires an unconventional or lateral attack.

    Looking at the most recent addition to the top list gives a hint at how one might crack the top.  Puzzles and Dragons is a hit breakout game that was initially released to just the Japanese market. Starting with a smaller market allowed them to take time to perfect the monetization, test and scale their backend infrastructure, and focus their advertising dollars on market they could afford to buy into.  Restricting the release also had the effect of creating anticipation for the game, that made new releases much more impactful.

    Unfortunately it is no longer possible to launch a new game to the market with a chance of making  money from it without a sophisticated marketing strategy.  For the indie developer, riches on the app store are just an illusion – a dream with not much better odds than winning the lottery.