{"id":222,"date":"2014-11-06T13:40:56","date_gmt":"2014-11-06T18:40:56","guid":{"rendered":"http:\/\/defiancegamestudio.com\/?p=222"},"modified":"2014-11-06T13:41:15","modified_gmt":"2014-11-06T18:41:15","slug":"making-soup-making-games-setting-realistic-deadlines","status":"publish","type":"post","link":"http:\/\/defiancegamestudio.com\/index.php\/making-soup-making-games-setting-realistic-deadlines\/","title":{"rendered":"Making Soup, Making Games &#038; Setting Realistic Deadlines"},"content":{"rendered":"<p>Jan. 23, 2015.\u00a0 This is my goal. My deadline. And I&#8217;m going to miss it.<\/p>\n<p>Let me explain.\u00a0 As I write this article, I am also making soup.\u00a0 Trust me, it all comes together at the end.<\/p>\n<p><strong>Part I: Software Estimation 101<\/strong><\/p>\n<p>I&#8217;ve been working on\u00a0<em>Archmage Rises<\/em>\u00a0full time for three months and part time about 5 months before that.\u00a0 In round numbers, I\u2019m about 1,000 hours in.<\/p>\n<p>You see, I have been working without a specific deadline because of a little thing I know from business software called the \u201cCone of Uncertainty\u201d:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/lostechies.com\/jimmybogard\/files\/2012\/10\/image.png\" alt=\"\" width=\"346\" height=\"223\" \/><!--more--><\/p>\n<p>In business software, the customer shares an idea (or \u201cneed\u201d)\u2014and 10 out of 10 times, the next sentence is: &#8220;When will you be done, and how much will it cost?&#8221;<\/p>\n<p>Looking at the cone diagram, when is this estimate most accurate?\u00a0 When you are done!\u00a0 You know exactly how long it takes and how much it will actually cost when you finish the project.\u00a0 When do they want the estimate? At the beginning\u2014when accuracy is nil!\u00a0 For this reason, I didn&#8217;t set a deadline; anything I said would be wrong and misleading to all involved.<\/p>\n<p>Even when my wife repeatedly asked me.<\/p>\n<p>Even when the head of Alienware called me and asked, \u201cWhen will it ship?\u201d<\/p>\n<p>I focused on moving forward in the cone so I\u00a0<em>could<\/em>\u00a0be in a position to estimate a deadline with reasonable accuracy. In fact, I have built two prototypes which prove the concept and test certain mechanics.\u00a0 Then I moved into the core features of the game.<\/p>\n<p>Making a game is like building a sports car from a kit.<br \/>\n\u2026 but with no instructions<br \/>\n\u2026 and many parts you have to build yourself (!)<\/p>\n<p>I have spent the past months making critical pieces.\u00a0 As each is complete, I put it aside for final assembly at a later time.\u00a0 To any outside observer, it looks nothing like a car\u2014just a bunch of random parts lying on the floor.\u00a0 Heck! To ME, it looks like a bunch of random parts on the floor.\u00a0 How will this ever be a road worthy car?<\/p>\n<p>Oh, hold on.\u00a0 Gotta check the soup.<br \/>\nOkay, we&#8217;re good.<\/p>\n<p>This week I finished a critical feature of my story editor\/reader, and suddenly the heavens parted and I could see how all the pieces fit together!\u00a0 Now I&#8217;m in a place where I can estimate a deadline.<\/p>\n<p>But before I get into that, I need to clarify\u00a0<em>what<\/em>\u00a0deadline I&#8217;m talking about.<\/p>\n<p><strong>Vertical Slice, M.V.P. &amp; Scrum<\/strong><\/p>\n<p>Making my first game (<em>Catch the Monkey<\/em>), I learned a lot of things developers should\u00a0<em>never<\/em>\u00a0do.\u00a0 In my research after that project, I learned how game-making is unique and different from business software (business software has to work correctly.\u00a0 Games have to work correctly\u00a0<em>and<\/em>\u00a0be fun) and requires a different approach.<\/p>\n<p>Getting to basics, a vertical slice is a short,\u00a0<em>complete<\/em>\u00a0experience of the game.\u00a0 Imagine you are making<em>Super Mario Bros<\/em>.\u00a0 You build the very first level (World 1-1) with complete mechanics, power ups, art, music, sound effects, and juice (polish).\u00a0 If this isn&#8217;t fun, if the mechanics don&#8217;t work, then you are wasting your time building the rest of the game.<\/p>\n<p>The book\u00a0<em>Lean Startup<\/em>\u00a0has also greatly influenced my thinking on game development.\u00a0 In it, the author argues to fail quickly, pivot, and then move in a better direction.\u00a0 The mechanism to fail quickly is to build the Minimum Valuable Product (MVP).\u00a0 Think of web services like HootSuite, Salesforce, or Amazon.\u00a0 Rather than build the &#8220;whole experience,&#8221; you build the absolute bare minimum that can function so that you can test it out on real customers and see if there is any traction to this business idea.\u00a0 I see the Vertical Slice and MVP as interchangeable labels to the same idea.<\/p>\n<div><iframe loading=\"lazy\" src=\"http:\/\/www.youtube.com\/embed\/XU0llRltyFM?wmode=transparent&amp;jqoemcache=7WThZ\" frameborder=\"0\" scrolling=\"no\" width=\"425\" height=\"349\"><\/iframe><\/div>\n<p align=\"center\"><em>A fantastic summary of Scrum.<\/em><\/p>\n<p>Finally, Scrum is the iterative incremental software development methodology I think works best for games (I&#8217;m quite familiar with the many alternatives).\u00a0 Work is estimated in User Stories and (in the pure form) estimated in Story Points.\u00a0 By abstracting the estimates, the cone of uncertainty is built in.\u00a0 I like that.\u00a0 It also says when you build something, you build it complete and always leave the game able to run.\u00a0 Meaning, you don&#8217;t\u00a0<em>mostly\u00a0<\/em>get a feature working and then move on to another task; you make it 100% rock solid: built, tested, bug fixed.\u00a0 You do this because it eliminates\u00a0<em>Technical<\/em>\u00a0<em>Debt<\/em>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/www.defiancegamestudio.com\/images\/blog\/debt.jpg\" alt=\"\" width=\"600\" height=\"408\" \/><\/p>\n<p>What&#8217;s technical debt?\u00a0 Well like\u00a0<em>real<\/em>\u00a0debt, it is something you have to pay later.\u00a0 So if the story engine has several bugs in it but I leave them to fix &#8220;later,&#8221; that is technical debt I have to pay at some point.\u00a0 People who get things to 90% and then move on to the next feature create\u00a0<em>tons<\/em>\u00a0of technical debt in the project.\u00a0 This seriously undermines the ability to complete the project because the amount of technical debt is completely unknown and likely to hamper forward progress.\u00a0 I have experienced this personally on my projects.\u00a0 I have heard this is a key contributor to &#8220;crunch&#8221; in the game industry.<\/p>\n<p>Hold on: Gotta go put onions and peppers in the soup now.<\/p>\n<p>A second and very important reason to never accrue technical debt is it completely undermines your ability to\u00a0<em>estimate<\/em>.<\/p>\n<p>Let&#8217;s say you are making the\u00a0<em>Super Mario Bros.<\/em>\u00a0World 1-1 vertical slice.\u00a0 Putting aside knowing if you game is fun or not, the real value of completing the slice is the ability to effectively estimate the total effort and cost of the project (with reasonable accuracy).\u00a0 So let&#8217;s say World 1-1 took 100 hours to complete across the programmer, designer, and artist with a cost of $1,000.\u00a0 Well, if the game design called for 30 levels, you have a fact-based approach to accurate estimating: It will take 3,000 hours and $30,000.\u00a0 But the reverse is also helpful.\u00a0 Let&#8217;s say you only have $20,000.\u00a0 Well right off the bat you know you can only make 20 levels.\u00a0 See how handy this is?!?<\/p>\n<p>Still, you can throw it all out the window when you allow technical debt.<\/p>\n<p>Let me illustrate:<\/p>\n<p>Let&#8217;s say the artist didn&#8217;t do complete work. Some corners were cut and treated as &#8220;just a prototype,&#8221; so only 80% effort was expended.\u00a0 Let&#8217;s say the programmer left some bugs and hardcoded a section just to work for the slice.\u00a0 Call it a 75% effort of the real total.\u00a0 Well, now your estimates will be way off.\u00a0 The more iterations (levels) and scale (employees) you multiply by your vertical slice cost, the worse off you are.\u00a0 This is a sure-fire way to doom your project.<\/p>\n<p><strong>So when will you be done?<\/strong><\/p>\n<p>So bringing this back to\u00a0<em>Archmage Rises<\/em>, I now have built enough of the core features to be able to estimate the rest of the work to complete the MVP vertical slice.\u00a0 It is crucial that I get the slice right and know my effort\/costs so that I can see what it will take to finish the whole game.<\/p>\n<p>I set up the seven remaining sprints into my handy dandy SCRUM tool Axosoft, and this is what I got:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/www.defiancegamestudio.com\/images\/blog\/never.jpg\" alt=\"\" width=\"600\" height=\"451\" \/><\/p>\n<p>That wasn&#8217;t very encouraging. \ud83d\ude42\u00a0 One of the reasons is because as I have ideas, or interact with fans on Facebook or the forums, I write user stories in Axosoft so I don&#8217;t forget them.\u00a0 This means the number of user stories has grown since I began tracking the project in August.\u00a0 It&#8217;s been growing faster than I have been completing them.\u00a0 So the software is telling the truth:\u00a0<em>Based on your past performance, you will never finish this project<\/em>.<\/p>\n<p>I went in and moved all the &#8220;ideas&#8221; out of the actual scheduled sprints with concrete work tasks, and this is what I got:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/www.defiancegamestudio.com\/images\/blog\/better.jpg\" alt=\"\" width=\"600\" height=\"445\" \/><\/p>\n<p>January 23, 2015<\/p>\n<p>This is when the vertical slice is estimated to be complete.\u00a0 I am just about to tell you why it&#8217;s still wrong, but first I have to add cream and milk to the soup.\u00a0 Ok!\u00a0 Now that it&#8217;s happily simmering away, I can get to the second part.<\/p>\n<p><strong>Part II: Scheduling the Indie Life<\/strong><\/p>\n<p>I am 38 and have been married to a beautiful woman for 15 years.\u00a0 Over these years, my wife has heard ad nauseam that I want to make video games.\u00a0 When she married me, I was making pretty good coin leading software projects for large e-commerce companies in Toronto.\u00a0 I then went off on my own.\u00a0 We had some very lean years as I built up my mobile software business.<\/p>\n<p>We can&#8217;t naturally have kids, so we made a \u201cFrankenbaby\u201d in a lab.\u00a0 My wife gave birth to our daughter Claire.\u00a0 That was two years ago.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/www.ivfvictoryphilippines.com\/wp-content\/uploads\/2012\/09\/Test_Tube_Baby2.jpg\" alt=\"\" width=\"240\" height=\"240\" \/><\/p>\n<p>My wife is a professional and also works.\u00a0 We make roughly the same income.\u00a0 So around February of this year, I went to her and said, &#8220;This\u00a0<em>Archmage<\/em>\u00a0thing might have legs, and I&#8217;d like to quit my job and work on it full time.&#8221;\u00a0 My plan was to live off her\u2014a 50% drop in household income.\u00a0 Oh and on top of that, I&#8217;d also like to spend thousands upon thousands of dollars on art, music, tools, &#8212; and any games that catch my fancy on Steam.<\/p>\n<p>It was a sweetheart offer, don&#8217;t you think?<\/p>\n<p>I don&#8217;t know what it is like to be the recipient of an amazing opportunity like this, but I think her choking and gasping for air kind of said it all. \ud83d\ude42<\/p>\n<p>After thought and prayer, she said, &#8220;I want you to pursue your dream. I want you to build\u00a0<em>Archmage Rises<\/em>.&#8221;<\/p>\n<p>Now I write this because I have three game devs in my immediate circle\u2014each of which are currently working from home and living off their spouse&#8217;s income.\u00a0 Developers have written me asking how they can talk with their spouse about this kind of major life transition.<\/p>\n<p><strong>Lesson 1: Get \u201cBuy In,\u201d not Agreement<\/strong><\/p>\n<p>A friend\u2019s wife doesn&#8217;t really want him to make video games.\u00a0 She loves\u00a0<em>him<\/em>, so when they had that air-gasping indie game sit down conversation she said, &#8220;Okay&#8221;\u2014but she&#8217;s really not on board.\u00a0 How do you think it will go when he needs some money for the game?<br \/>\nOr when he&#8217;s working hard on it and she feels neglected?<br \/>\nOr when he originally said the game will take X months but now says it will take X * 2 months to complete?<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/positivepsychologymelbourne.com.au\/images\/pp42_marriage_conflict.jpg\" alt=\"\" width=\"250\" height=\"201\" \/><\/p>\n<p>Yep! Fights.<\/p>\n<p>See, by not &#8220;fighting it out&#8221; initially, by one side just caving, what really happened was that one of them said, &#8220;I&#8217;d rather fight about this later than now.&#8221;\u00a0 Well, later is going to come.\u00a0 Over and over again.\u00a0 Until the core issue is resolved.<\/p>\n<p>I and my friend believe marriage is committed partnership for life.\u00a0 We&#8217;re in it through thick and thin, no matter how stupid or crazy it gets.\u00a0 It&#8217;s not roommates sharing an Internet bill; this is life\u00a0<em>together<\/em>.<\/p>\n<p>So they both have to be on the same page, because the marriage is more important than any game.\u00a0 Things break down and go horribly wrong when the game\/dream is put before the marriage.\u00a0 This means if she is really against it deep down, he has to be willing to walk away from the game.\u00a0 And he is, for her.<\/p>\n<p>One thing I got right off the bat is my wife is 100% partnered with me in\u00a0<em>Archmage Rises<\/em>.\u00a0 Whether it succeeds or fails, there are no fights or &#8220;I told you so&#8221;s along the way.<\/p>\n<p><strong>Lesson 2: Do Your Part<\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/funtimeshad.com\/wp-content\/uploads\/2012\/08\/Helping-Each-Other.jpg\" alt=\"\" width=\"512\" height=\"384\" \/><\/p>\n<p>So why am I making soup?\u00a0 Because my wife is out there working, and I\u2019m at home. Understandably so, I have taken on more of the domestic duties.\u00a0 That&#8217;s how I show her I love her and appreciate her support.\u00a0 I didn&#8217;t &#8220;sell&#8221; domestic duties in order to get her buy-in; it is a natural response.\u00a0 So with me working downstairs, I can make soup for dinner tonight, load and unload the dishwasher, watch Claire, and generally reduce the household burden on her as she takes on the bread-winning role.<\/p>\n<p>If I shirk household duties and focus solely on the game (and the game flops!), boy oh boy is there hell to pay.<\/p>\n<p>Gotta check that soup.\u00a0 Yep, we&#8217;re good.<\/p>\n<p><strong>Lesson 3: Do What You Say<\/strong><\/p>\n<p>Claire is two.\u00a0 She loves to play ball with me.\u00a0 It&#8217;s a weird game with a red nerf soccer ball where the rules keep changing from catching, to kicking, to avoiding the ball.\u00a0 It&#8217;s basically Calvin ball. \ud83d\ude42<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/www.defiancegamestudio.com\/images\/blog\/redball.jpg\" alt=\"\" width=\"600\" height=\"460\" \/><\/p>\n<p>She will come running up to my desk, pull my hand off the mouse, and say, &#8220;Play ball?!&#8221;\u00a0 Sometimes I&#8217;m right in the middle of tracking down a bug, but at other times I&#8217;m not that intensely involved in the task.\u00a0 The solution is to either play ball right now (I&#8217;ve timed it with a stop watch; it only holds her interest for about seven minutes), or promise her to play it later.\u00a0 Either way, I&#8217;m playing ball with Claire.<\/p>\n<p>And this is important, because to be a crappy dad and have a great game just doesn&#8217;t look like success to me. To be a great dad with a crappy game?\u00a0 Ya, I&#8217;m more than pleased with that.<\/p>\n<p>Now Claire being two, she doesn&#8217;t have a real grasp of time.\u00a0 She wants to go for a walk &#8220;outside&#8221; at midnight, and she wants to see the moon in the middle of the afternoon.\u00a0 So when I promise to play ball with her &#8220;later,&#8221; there is close to a 0% chance of her remembering or even knowing when later is.\u00a0 But who is responsible in this scenario for remembering my promise?\u00a0 Me.\u00a0 So when I am able, say in between bugs or end of the work day, I&#8217;ll go find her and we&#8217;ll play ball.\u00a0 She may be too young to notice I&#8217;m keeping my promises, but when she does begin to notice I won&#8217;t have to change my behavior.\u00a0 She&#8217;ll know dad is trustworthy.<\/p>\n<p><strong>Lesson 4: Keep the Family in the Loop like a Board of Directors<\/strong><\/p>\n<p>If my family truly is partnered with me in making this game, then I have to understand what it is like from their perspective:<\/p>\n<ol>\n<li>They can&#8217;t see it<\/li>\n<li>They can&#8217;t play it<\/li>\n<li>They can&#8217;t help with it<\/li>\n<li>They don&#8217;t know how games are even made<\/li>\n<li>They have no idea if what I am making is good, bad, or both<\/li>\n<\/ol>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/www.lccdnet.org\/wp-content\/uploads\/2011\/01\/Board-table.jpg\" alt=\"\" width=\"400\" height=\"300\" \/><\/p>\n<p>They are totally in the dark.\u00a0 Now what is a common reaction to the unknown?\u00a0 Fear.\u00a0 We generally fear what we do not understand.\u00a0 So I need to understand that my wife secretly fears what I&#8217;m working on won&#8217;t be successful, that I&#8217;m wasting my time.\u00a0 She has no way to judge this unless I tell her.<\/p>\n<p>So I keep her up to date with the ebb and flow of what is going on.\u00a0 Good or bad.\u00a0 And because I tell her the bad, she can trust me when I tell her the good.<\/p>\n<p>A major turning point was the recent partnership with Alienware.\u00a0 My wife can&#8217;t evaluate my game design, but if a huge company like Alienware thinks what I&#8217;m doing is good, that third party perspective goes a long way with her.\u00a0 She has moved from cautious to confident.<\/p>\n<p>The Alienware thing was a miracle out of the blue, but that doesn&#8217;t mean you can&#8217;t get a third party perspective on your game (a journalist?) and share it with your significant other.<\/p>\n<p><strong>Lesson 5: Life happens. Put It in the Schedule.<\/strong><\/p>\n<p>I&#8217;ve been scheduling software developers for 20 years.\u00a0 I no longer program in HTML3, but I still make schedules\u2014even if it is just for me.<\/p>\n<p>Customers (or publishers) want their projects on the date you set.\u00a0 Well, actually, they want it sooner\u2014but let&#8217;s assume you&#8217;ve won that battle and set a reasonable date.<\/p>\n<p>If there is one thing I have learned in scheduling large team projects, it is that unknown life things happen.\u00a0 The only way to handle that is to put\u00a0<em>something<\/em>\u00a0in the schedule for it.\u00a0 At my mobile company, we use a rule of 5.5-hour days.\u00a0 That means a 40-hour-a-week employee does 27.5 hours a week of active project time; the rest is lunch, doctor appointments, meetings, phone calls with the wife, renewing their mortgage, etc.\u00a0 Over a 7-8 month project, there is enough buffer built in there to handle the unexpected kid sick, sudden funeral, etc.<\/p>\n<p>Also, plug in statutory holidays, one sick day a month, and any vacation time.\u00a0 You&#8217;ll never regret including it; you&#8217;ll always regret\u00a0<em>not<\/em>\u00a0including it.<\/p>\n<p>That&#8217;s great for work, but it doesn&#8217;t work for the indie at home.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/www.martinrichards.se\/uploads\/3\/6\/4\/5\/3645087\/1176429_orig.jpg\" alt=\"\" width=\"600\" height=\"420\" \/><\/p>\n<p>To really dig into the reasons why would be another article, so I&#8217;ll just jump to the conclusion:<\/p>\n<ol>\n<li>Some days, you get stuck making soup. \ud83d\ude42<\/li>\n<li>Being at home and dealing with kids ranges from playing ball (short) to trips to the emergency room (long)<\/li>\n<li>Being at home makes you the &#8220;go to&#8221; family member for whatever crops up.\u00a0 &#8220;Oh, we need someone to be home for the furnace guy to do maintenance.&#8221;\u00a0 Guess who writes blogs and just lost an hour of his day watching the furnace guy?<\/li>\n<li>There are many,\u00a0<em>many<\/em>\u00a0hats to wear when you\u2019re an indie.\u00a0 From art direction for contract artists to keeping everyone organized, there is a constant stream of stuff outside your core discipline you&#8217;ll just have to do to keep the game moving forward.<\/li>\n<li>Social media marketing may be free, but writing articles and responding to forum and Facebook posts takes a lot of time.\u00a0 More importantly, it takes a lot of\u00a0<em>energy<\/em>.<\/li>\n<\/ol>\n<p>After three months, I have not been able to come up with a good rule of thumb for how much programming work I can get done in a week.\u00a0 I&#8217;ve been tracking it quite precisely for the last three weeks, and it has varied widely.\u00a0 My goal is to hit six hours of programming in an 8-12 hour day.<\/p>\n<p><strong>Putting This All Together<\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"http:\/\/estrangedfamilies.files.wordpress.com\/2011\/11\/jigsaw.jpg?w=640\" alt=\"\" width=\"400\" height=\"300\" \/><\/p>\n<p>Oh, man! This butternut squash soup is AMAZING!\u00a0 I&#8217;m not much of a soup guy, and this is only my second attempt at it\u2014but this is hands-down the best soup I&#8217;ve ever had at home or in a restaurant!\u00a0 See the endnotes for the recipe\u2014because you aren&#8217;t truly indie unless you are making a game while making soup!<\/p>\n<p>So in order to try and hit my January 23rd deadline, I need to get more programming done.\u00a0 One way to achieve this is to stop writing weekly dev blogs and switch to a monthly format.\u00a0 It&#8217;s ironic that writing less blogs makes it\u00a0<em>look<\/em>\u00a0like less progress is being made, but it&#8217;s the exact opposite!\u00a0 I hope to gain back 10 hours a week by moving to a monthly format.<\/p>\n<p>I&#8217;ll still keep updating the Facebook page regularly.\u00a0 Because, well, it&#8217;s addictive. \ud83d\ude42<\/p>\n<p>So along the lines of Life Happens, it is about to happen to me.\u00a0 Again.<\/p>\n<p>We were so impressed with Child 1.0 we decided to make another.\u00a0 Baby Avery is scheduled to come by C-section one week from today.<\/p>\n<p>How does this affect my January 23rd deadline?\u00a0 Well, a lot.<br \/>\nWill baby be healthy?<br \/>\nWill mom have complications?<br \/>\nHow will a newborn disrupt the disposition or sleeping schedule of a two-year-old?<\/p>\n<p>These are all things I just don&#8217;t know.\u00a0 I&#8217;m at the front end of the cone of uncertainty again. \ud83d\ude42<\/p>\n<p>SDG<\/p>\n<p><strong>Links:<\/strong><\/p>\n<p><a href=\"http:\/\/www.amazon.com\/Agile-Development-Addison-Wesley-Signature-Series\/dp\/0321618521\">Agile Game Development with Scrum<\/a>\u00a0\u2013 great book on hows and whys of Scrum for game dev.\u00a0 Only about the first half is applicable to small indies.<\/p>\n<p><a href=\"http:\/\/www.axosoft.com\/\">Axosoft SCRUM tool<\/a>\u00a0\u2013 Free for single developers; contact support to get a free account (it&#8217;s not advertised)<\/p>\n<p>You can follow the game I&#8217;m working on,\u00a0<a href=\"http:\/\/archmagerises.com\/\"><em>Archmage Rises<\/em><\/a>, by joining the\u00a0<a href=\"http:\/\/archmagerises.com\/\">newsletter<\/a>\u00a0and\u00a0<a href=\"https:\/\/www.facebook.com\/archmagerises\">Facebook page<\/a>.<\/p>\n<p>You can tweet me\u00a0<a href=\"https:\/\/twitter.com\/LordYabo\">@LordYabo<\/a><\/p>\n<p><strong>Recipes:<\/strong><\/p>\n<p><strong>Indie Game Developer&#8217;s Butternut Squash Soup<\/strong><\/p>\n<p>(about 50 minutes; approximately 130 calories per 250ml\/cup serving)<\/p>\n<p align=\"center\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.defiancegamestudio.com\/images\/blog\/soup.jpg\" alt=\"\" width=\"300\" height=\"246\" \/><\/p>\n<p align=\"center\"><em>Dammit Jim I&#8217;m a programmer not a food photographer!<\/em><\/p>\n<p>I created this recipe as part of a challenge to my wife that I could make a better squash soup than the one she ordered in the restaurant.\u00a0 She agrees, this is better!\u00a0 It is my mashup of three recipes I found on the internet.<\/p>\n<ul>\n<li>2 butternut squash (about 3.5 pounds), seeded and quartered<\/li>\n<li>4 cups chicken or vegetable broth<\/li>\n<li>1 tablespoon minced fresh ginger (about 50g)<\/li>\n<li>1\/4 teaspoon nutmeg<\/li>\n<li>1 yellow onion diced<\/li>\n<li>Half a red pepper diced (or whole if you like more kick to your soup)<\/li>\n<li>1 tablespoon kosher salt<\/li>\n<li>1 teaspoon black pepper<\/li>\n<li>1\/3 cup honey<\/li>\n<li>1 cup whipping cream<\/li>\n<li>1 cup milk<\/li>\n<\/ul>\n<p>Peel squash, seed, and cut into small cubes.\u00a0 Put in a large pot with broth on a low boil for about 30 minutes.<\/p>\n<p>Add red pepper, onion, honey, ginger, nutmeg, salt, pepper. Place over medium heat and bring to a simmer for approximately 6 minutes. Using a stick blender, puree the mixture until smooth. Stir in whipping cream and milk.\u00a0 Simmer 5 more minutes.<\/p>\n<p>Serve with a dollop of sour cream in the middle and sprinkling of sour dough croutons.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Jan. 23, 2015.\u00a0 This is my goal. My deadline. And I&#8217;m going to miss it. Let me explain.\u00a0 As I write this article, I am also making soup.\u00a0 Trust me, it all comes together at the end. Part I: Software Estimation 101 I&#8217;ve been working on\u00a0Archmage Rises\u00a0full time for three months and part time about [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_s2mail":"yes","footnotes":""},"categories":[3],"tags":[],"class_list":["post-222","post","type-post","status-publish","format-standard","hentry","category-news"],"_links":{"self":[{"href":"http:\/\/defiancegamestudio.com\/index.php\/wp-json\/wp\/v2\/posts\/222","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/defiancegamestudio.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/defiancegamestudio.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/defiancegamestudio.com\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/defiancegamestudio.com\/index.php\/wp-json\/wp\/v2\/comments?post=222"}],"version-history":[{"count":0,"href":"http:\/\/defiancegamestudio.com\/index.php\/wp-json\/wp\/v2\/posts\/222\/revisions"}],"wp:attachment":[{"href":"http:\/\/defiancegamestudio.com\/index.php\/wp-json\/wp\/v2\/media?parent=222"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/defiancegamestudio.com\/index.php\/wp-json\/wp\/v2\/categories?post=222"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/defiancegamestudio.com\/index.php\/wp-json\/wp\/v2\/tags?post=222"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}