<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Austin Hallock</title>
	
	<link>http://austinhallock.com</link>
	<description>Clay.io co-founder, University of Texas student</description>
	<lastBuildDate>Tue, 23 Apr 2013 13:19:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/ProgrammingLifeAndMore" /><feedburner:info uri="programminglifeandmore" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Analogizing Ethernet and HTML5</title>
		<link>http://feedproxy.google.com/~r/ProgrammingLifeAndMore/~3/KVdrIOw2-OI/</link>
		<comments>http://austinhallock.com/2013/04/23/analogizing-ethernet-and-html5/#comments</comments>
		<pubDate>Tue, 23 Apr 2013 13:19:55 +0000</pubDate>
		<dc:creator>Austin Hallock</dc:creator>
				<category><![CDATA[html5]]></category>

		<guid isPermaLink="false">http://austinhallock.com/?p=569</guid>
		<description><![CDATA[Given the recent news on LinkedIn moving away from HTML5, I thought this post would be worthwhile to write, to counter those who are once again knocking HTML5 for serious mobile development. First off I want to reiterate the fact that both LinkedIn and Facebook still think HTML5 in general, and HTML5 on the mobile web [...]]]></description>
			<content:encoded><![CDATA[<p>Given the recent news on LinkedIn moving away from HTML5, I thought this post would be worthwhile to write, to counter those who are once again knocking HTML5 for serious mobile development. First off I want to reiterate the fact that both LinkedIn and Facebook still think HTML5 in general, and HTML5 on the mobile web both have a bright future, and neither company has completely written it off.</p>
<p>As a student as the University of Texas, I am very fortunate to be able to work closely with Bob Metcalfe, co-inventor of Ethernet, and founder of 3Com. Ethernet celebrates its 40th anniversary this year with a history of obviously great success. Last week Metcalfe was speaking on why Ethernet &#8216;won&#8217;, and he attributes that to the fact that it was an open standard. As he was speaking, I started realizing there are a lot of similarities between the history of both Ethernet and HTML5.</p>
<p><img src="http://austinhallock.com/wp-content/uploads/ethernet51.jpg" alt="" title="ethernet5" width="672" height="301" class="aligncenter size-full wp-image-577" /></p>
<p>First, a bit of a background on Ethernet.</p>
<h2><strong>Ethernet vs. Token Ring</strong></h2>
<p>The main competitor to Ethernet in 80&#8242;s was IBM&#8217;s Token ring. Like Ethernet, Token Ring was a local area network technology.<em><br />
</em></p>
<h3><strong>Standards</strong></h3>
<p>IBM&#8217;s Token Ring was also a standard, but a bad one because IBM was not committed to interoperability (where many different systems can work together). The fact that Token Ring was developed by a PC manufacturer, subsequent manufacturers were less likely to choose a standard controlled by a competitor who wasn&#8217;t focused on making it work in as many environments as possible.</p>
<p>Similar to IBM and Token Ring, Apple controls Objective-C thus Android and others will clearly never support it, and each operating system has their fairly controlling, closed-off App Store. These factors do not bode well for &#8216;native&#8217; apps. The only current ubiquity can be found in HTML5.</p>
<p>Interoperability led to Ethernet&#8217;s overall success, and it makes sense that HTML5&#8242;s open standard equivalent will do the same.</p>
<h3><strong>Performance Improvements</strong></h3>
<p>The Ethernet-HTML5 analogy, though Metcalfe is probably a lot less likely to acknowledge, holds true on the performance end as well &#8211; at least at first. Without question native code performs much better than Javascript, just as Token Ring was technically more ideal than Ethernet in many areas. Ethernet however improved more rapidly by offering more and more bandwidth, while keeping it&#8217;s price much lower than Token Ring. In the mid-80s Ethernet adopted twisted pair ether wiring (like Token Ring) which made Ethernet cheaper, faster, and available in more places.</p>
<p>Javascript engines, especially on mobile, are improving at an incredible rate to the point that they will bring near-native performance. In fact, with LinkedIn&#8217;s move away from HTML5, speed wasn&#8217;t the reason, &#8220;It’s not performance issues, like speed or rendering&#8221;, but rather memory issues (<a href="http://venturebeat.com/2013/04/17/linkedin-mobile-web-breakup/#heFzwW1QcjUf80F1.99">Source</a>).</p>
<p>With the performance aspect no longer as much of an issue, the other benefits (lower cost of not having to fully port apps) will contribute to HTML5&#8242;s success.</p>
<p><strong>History Repeating Itself</strong></p>
<p>Ethernet and HTML5 have a surprising amount of similarities, and if history repeats itself as it often does, HTML5 will succeed over native apps.</p>
<p>The fact of the matter is Microsoft, Apple, Google, Mozilla, Intel, and just about any major tech company strongly supports the idea of HTML5, and that idea is rapidly becoming reality in today&#8217;s native-app driven mobile world.</p>
<img src="http://feeds.feedburner.com/~r/ProgrammingLifeAndMore/~4/KVdrIOw2-OI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://austinhallock.com/2013/04/23/analogizing-ethernet-and-html5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://austinhallock.com/2013/04/23/analogizing-ethernet-and-html5/</feedburner:origLink></item>
		<item>
		<title>The Difficulty in Getting Picked Up by TechCrunch</title>
		<link>http://feedproxy.google.com/~r/ProgrammingLifeAndMore/~3/y9_8LCgDSYQ/</link>
		<comments>http://austinhallock.com/2012/08/27/the-difficulty-in-getting-picked-up-by-techcrunch/#comments</comments>
		<pubDate>Mon, 27 Aug 2012 09:00:29 +0000</pubDate>
		<dc:creator>Austin Hallock</dc:creator>
				<category><![CDATA[clay.io]]></category>

		<guid isPermaLink="false">http://austinhallock.com/?p=547</guid>
		<description><![CDATA[I thought it would be easy&#8230; well, easy considering the material I had going into it &#8211; especially considering the fact that 16-year-old me was able to do it, as well as several other questionable companies. I would woo the writers with the TechCrunch-themed HTML5 game I made. 6 weeks, multiple writers contacted, and 0 [...]]]></description>
			<content:encoded><![CDATA[<p>I thought it would be easy&#8230; well, easy considering the material I had going into it &#8211; especially considering the fact that 16-year-old me was able to do <a title="TechCrunch 16" href="http://techcrunch.com/2008/01/21/some-new-startups-direct-to-video/">it</a>, as well as several other questionable companies. I would woo the writers with the TechCrunch-themed HTML5 game I made. 6 weeks, multiple writers contacted, and 0 posts later, I realize I was very wrong, not just about how &#8216;easy&#8217; it would be, but whether it was necessary to begin with.</p>
<p><a href='http://clay.io' title='HTML5 Games'><img class="alignleft" src="http://clay.io/images/logo.svg" alt="Clay.io - HTML5 games" width="315" height="223" /></a></p>
<p><strong><a title="HTML5 games" href="http://clay.io">Clay.io</a></strong> is my baby, it&#8217;s a company I started back in January with Joe Vennix. Both of us have solid backgrounds considering our age (21) &#8211; our claims to fame: Joe developed Pizza Hut&#8217;s first iOS app, I was one of 4 at IntenseDebate when we were acquired by Automattic. What we&#8217;ve been building is a platform for HTML5 games (with Steam as our inspiration). It&#8217;s part <a title="HTML5 games" href="http://clay.io/store">cross-platform marketplace</a>, part <a title="HTML5 game API" href="http://clay.io/devlanding">API</a> for high scores, achievements, data storage, payments, etc.</p>
<p>Despite the fact that we don&#8217;t have funding, the main reason I thought we would be able to land a post is the TechCrunch-themed HTML5 game I developed. In my email to their tips line (as well as a few emails later to individual writers) I mentioned the game to get their attention, and also let them know they would be able to embed it directly into their article if they were to write one. Here it is embedded below &#8211; the game also works on mobile devices (<a title="TechCrunch Game" href="http://techcrunch.clay.io" target="_blank">link</a>).</p>
<p><iframe style="width: 100%; height: 360px;" src="http://techcrunch.clay.io?embed" width="320" height="240"></iframe></p>
<p>It wasn&#8217;t just the game&#8230; I thought we had a good story. There are three of us working on the company right now and we&#8217;re all University of Texas students. We&#8217;re in a startup accelerator class called <a title="1 Semester Startup" href="http://1semesterstartup.com" target="_blank">1 Semester Startup</a> (yeah, we get credit to work on our company), have great office space provided by the University, and some fantastic mentors. Like I mentioned before, Joe and I also have fairly interesting backgrounds for our age &#8211; though, I suppose now, it&#8217;s not uncommon to see successful companies run by sub-21-year-olds.</p>
<p>If that wasn&#8217;t enough, we actually have a legitimate company in an exciting space with a proven revenue model (which should be the most important aspect, but for a TechCrunch article, I figured the fluff should be first). I know it&#8217;s clear to all of our current members and developers this isn&#8217;t just a hobby for us, and the site/API should reflect that as well. We started in January of this year, and have been able to keep things chugging along while the other student startups around us, and startups in general, have flickered on and off.</p>
<p>However, all of this wasn&#8217;t enough to get noticed, and that&#8217;s fine. <strong>I was completely wrong to think TechCrunch would be pivotal for Clay.io&#8217;s success</strong>. Sure, it&#8217;s a nice boost in traffic and new users for a day or two, and a bit of extra credibility, but by no means is it worth the effort I put into it. It&#8217;s a learning experience for me, and hopefully one for others reading this post.</p>
<p>If you&#8217;ve secured a decent round of funding for your hype-filled startup, then sure, it&#8217;s easy enough to get on TechCrunch&#8230; same goes if you have connections with the writers. Otherwise, tough luck! It&#8217;s not the end of the world. <strong>Continue to build your company and prove them wrong.</strong></p>
<img src="http://feeds.feedburner.com/~r/ProgrammingLifeAndMore/~4/y9_8LCgDSYQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://austinhallock.com/2012/08/27/the-difficulty-in-getting-picked-up-by-techcrunch/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://austinhallock.com/2012/08/27/the-difficulty-in-getting-picked-up-by-techcrunch/</feedburner:origLink></item>
		<item>
		<title>Analysis of signup methods: Why you shouldn’t ignore Google Federated Login</title>
		<link>http://feedproxy.google.com/~r/ProgrammingLifeAndMore/~3/EfDuWH4dXis/</link>
		<comments>http://austinhallock.com/2012/06/03/analysis-of-signup-methods-why-you-shouldnt-ignore-google-federated-login/#comments</comments>
		<pubDate>Sun, 03 Jun 2012 08:53:06 +0000</pubDate>
		<dc:creator>Austin Hallock</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://austinhallock.com/?p=521</guid>
		<description><![CDATA[When we were initially developing Clay.io, we chose to only use Facebook, Twitter, and Email as login options&#8230; leaving out Google Federated Login. Google Login is something I don&#8217;t see anywhere near as much as I do Facebook and Twitter, which is why I assumed it could be a lower priority. It wasn&#8217;t until we [...]]]></description>
			<content:encoded><![CDATA[<p>When we were initially developing <a title="Steam for HTML5" href="http://clay.io">Clay.io</a>, we chose to only use Facebook, Twitter, and Email as login options&#8230; leaving out <a title="Google Federated Login" href="https://developers.google.com/accounts/docs/OpenID" target="_blank">Google Federated Login</a>. Google Login is something I don&#8217;t see anywhere near as much as I do Facebook and Twitter, which is why I assumed it could be a lower priority. It wasn&#8217;t until we implemented it that I realized we were wrong.</p>
<p>I thought it would be helpful if I posted some statistics of the signups we&#8217;re getting per login/signup method.</p>
<p>Here is how the signups break down for our 1,058 users at the time I collected data:</p>
<p><img class="aligncenter" src="http://chart.apis.google.com/chart?chs=500x300&amp;cht=p&amp;chd=t:23.8,11.1,18,47.1&amp;chdl=Facebook|Twitter|Google|Email&amp;chl=Facebook+(252)|Twitter+(117)|Google+(191)|Email+(498)&amp;chma=70,10&amp;chtt=Signups+(1058+users)&amp;chco=3B5998,4099ff,F90101,36C918" alt="" />​</p>
<p>We didn&#8217;t implement Google Federated Login until we were already at 200 users. Below are the stats for our most recent 835 users.</p>
<p><img class="aligncenter" src="http://chart.apis.google.com/chart?chs=500x300&amp;cht=p&amp;chd=t:24.7,10.5,22.3,42.5&amp;chdl=Facebook|Twitter|Google|Email&amp;chl=Facebook+(212)|Twitter+(90)|Google+(191)|Email+(365)&amp;chma=70,10&amp;chtt=Signups+(858+recent+users)&amp;chco=3B5998,4099ff,F90101,36C918" alt="" />​</p>
<p>As percentages: 24.7% Facebook, 10.5% Twitter, 22.3% Google and 42.5% Email.</p>
<p>The main thing I would say to take from this is: <strong>using Google as a third option for login is certainly worthwhile.</strong> If you are hoping to get the most people signing up, I would use all 3 (+email). If you need to cut one out, give the ax to Twitter. Of course, there is still a lot of value in Twitter (for example if you want to look at their followers and find people within your site to recommend).</p>
<p>Implementing Google as a login option was relatively painless.</p>
<p><strong>The most popular option is still email, and there are sites that don&#8217;t allow that as an option&#8230; that&#8217;s not very smart.</strong></p>
<p>I will mention that a lot of our audience has been from Hacker News, Reddit, and other early adopters. For a more broad population, it&#8217;s hard to say how it would be different. Even fewer Twitter users I&#8217;d imagine, and perhaps a lower percentage of Google as well.</p>
<p>Some extra stats:</p>
<p>A graph of activity (basically how much a given user plays the games on Clay.io) per signup method. With such a small sample size, a few really active users can throw this off, so don&#8217;t read to much into it:</p>
<p><img class="aligncenter" src="http://chart.apis.google.com/chart?chxl=1:|Facebook|Twitter|Google|Email&amp;chxt=y,x&amp;chbh=a,0,15&amp;chs=500x300&amp;cht=bvg&amp;chco=F90101,3B5998&amp;chds=0,3,0,25&amp;chd=t:1.82,2.13,1.68,2.05|9.08,16.03,15.9,18.07&amp;chdl=Achievements|Leaderboards&amp;chtt=Activity" alt="" /></p>
<p>Users on <a title="HTML5 game API" href="http://clay.io">Clay.io</a> can &#8216;upgrade&#8217; their account to developer status. It basically just lets us know they&#8217;re interested in our API and the development side of things. Here&#8217;s the same analysis applied to all 143 developer accounts:</p>
<p><img class="aligncenter" src="http://chart.apis.google.com/chart?chs=500x300&amp;cht=p&amp;chd=t:12.6,9.1,17.5,60.1&amp;chdl=Facebook|Twitter|Google|Email&amp;chl=Facebook+(18)|Twitter+(13)|Google+(25)|Email+(87)&amp;chma=70,10&amp;chtt=Developer Signups+(143+users)&amp;chco=3B5998,4099ff,F90101,36C918" alt="" />​</p>
<p>It&#8217;s a small sample size, but it&#8217;s clear the developer types prefer to use email much more than the average user. The percentages are: 12.6% Facebook (half as frequent as the typical user), 9.1% Twitter, 17.5% Google and 60.1% email.</p>
<p>For reference, this is what our signup form looks like. We don&#8217;t put too much emphasis on the &#8216;social&#8217; options, but they are there. In fact, more of our new users come from those 3 options than through email (and we aren&#8217;t asking for a lot of information with the email option).</p>
<p style="text-align: center;"><a href="http://clay.io/?signup" target="_blank"><img class="aligncenter size-full wp-image-527" title="Clay.io signup form" src="http://austinhallock.com/wp-content/uploads/6-3-2012-2-42-46-AM-33aa.png" alt="" width="468" height="459" /></a></p>
<p>It would be interesting to see how these statistics would look on a much larger site&#8230; Any takers on HN?</p>
<img src="http://feeds.feedburner.com/~r/ProgrammingLifeAndMore/~4/EfDuWH4dXis" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://austinhallock.com/2012/06/03/analysis-of-signup-methods-why-you-shouldnt-ignore-google-federated-login/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://austinhallock.com/2012/06/03/analysis-of-signup-methods-why-you-shouldnt-ignore-google-federated-login/</feedburner:origLink></item>
		<item>
		<title>HTML5 – The Best Platform For Rapid Game Development</title>
		<link>http://feedproxy.google.com/~r/ProgrammingLifeAndMore/~3/Ps2XAsOL7OE/</link>
		<comments>http://austinhallock.com/2012/05/19/html5-the-best-platform-for-rapid-game-development/#comments</comments>
		<pubDate>Sat, 19 May 2012 11:11:14 +0000</pubDate>
		<dc:creator>Austin Hallock</dc:creator>
				<category><![CDATA[clay.io]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[WebGL]]></category>
		<category><![CDATA[html5 game development]]></category>
		<category><![CDATA[html5 game development tools]]></category>
		<category><![CDATA[html5 game distribution]]></category>
		<category><![CDATA[html5 games]]></category>

		<guid isPermaLink="false">http://austinhallock.com/?p=464</guid>
		<description><![CDATA[It&#8217;s a bold claim, but I&#8217;m going to make it and back it up with two example games&#8230; HTML5 is *the* best platform for rapid game development available right now. Nick vs Bus I&#8217;m a student at the University of Texas, and two weeks ago, another UT student was hit by a bus (video embedded below, [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s a bold claim, but I&#8217;m going to make it and back it up with two example games&#8230; <strong>HTML5 is *the* best platform for rapid game development available right now.</strong></p>
<h1>Nick vs Bus</h1>
<p>I&#8217;m a student at the University of Texas, and two weeks ago, another UT student was hit by a bus (video embedded below, he made it out without serious injuries). As soon as I saw the video start going <a href="http://http://www.reddit.com/r/videos/comments/t7az9/capital_metro_bus_hit_by_a_nick/" target="_blank">viral</a>, I decided I would make a game for it. <strong>24 hours later, the game was complete and went viral itself. In just a few days, the game had 25,000+ unique visitors</strong>, 1,500+ likes, and articles on sites like <a title="Nick vs Bus game on Kotaku" href="http://kotaku.com/5908072/one-man-getting-hit-by-a-bus-is-another-mans-frogger" target="_blank">Kotaku</a>, <a title="Nick vs bus on news.com.au" href="http://www.news.com.au/technology/gaming/the-first-rule-of-foam-sword-friday-is-dont-get-hit-by-a-bus/story-e6frfrt9-1226348526033" target="_blank">News.com.au</a>, and the <a title="Nick vs Bus Statesman" href="http://www.statesman.com/blogs/content/shared-gen/blogs/austin/digitalsavant/entries/2012/05/14/ut_student_hit.html" target="_blank">Statesman</a>. Here&#8217;s the link to the game: <a title="Nick vs Bus" href="http://nickvsbus.clay.io" target="_blank">Nick vs Bus</a></p>
<p style="text-align: center;"><iframe src="http://www.youtube.com/embed/7o8oJDVfvTM?rel=0&amp;html5=1" frameborder="0" width="560" height="315"></iframe></p>
<p style="text-align: left;">The game makes use of &lt;canvas&gt;, SVG (Scalable Vector Graphics &#8211; which were remarkably easy to implement), and <a title="HTML5 Achievements &amp; High Scores API" href="http://clay.io/docs" target="_blank">Clay.io</a>. It&#8217;s written in CoffeeScript, here&#8217;s the <a href="https://github.com/austinhallock/Nick-vs-Bus">source code</a> (keep in mind it was made in &lt;24 hours). Thanks to HTML5, it&#8217;ll run from your phone&#8217;s browser as well (assuming have a semi-modern smartphone).</p>
<p>Nick vs. Bus wouldn&#8217;t have received anywhere near as much response if I had released it two weeks after the incident, and HTML5 was the perfect language to crank it out in such little time. (Keep in mind when I say HTML5, what I really mean is &lt;canvas&gt; and JavaScript)</p>
<p style="text-align: center;"><a href="http://nickvsbus.clay.io" target="_blank"><img class="aligncenter  wp-image-466" title="Nick vs Bus" src="http://austinhallock.com/wp-content/uploads/5-11-2012-12-55-55-PM-b48d.png" alt="" width="670" height="376" /></a></p>
<p style="text-align: center;"><em><span style="color: #808080;">The graphics aren&#8217;t great, but that&#8217;s not my background (if you&#8217;re curious, I used <a title="Vector Graphics" href="http://www.inkscape.org" target="_blank"><span style="color: #808080;">Inkscape</span></a>)</span></em></p>
<h2 style="text-align: left;">Word Wars</h2>
<p style="text-align: left;">The second game that backs up my claim that &#8220;HTML5 is the best platform for rapid game development&#8221; is a game called <a title="Word Wars" href="http://wordwars.clay.io">Word Wars</a>.</p>
<p style="text-align: left;">Word Wars was initially developed by a couple other students and friends during a 24 hour hackaton at UT. It was called Worldle at first, and had some good reception from <a href="http://news.ycombinator.com/item?id=3750068" target="_blank">Hacker News</a>. One of the developers didn&#8217;t even know JavaScript going into the thing (pretty impressive).</p>
<p style="text-align: left;"><strong>What&#8217;s more impressive about Word Wars in relation to Nick vs Bus is it has a backend + multiplayer (nowjs), all done in less than 24 hours.</strong> This one was done in pure JavaScript rather than CoffeeScript like the first &#8212; it&#8217;s really just a matter of preference, CoffeeScript isn&#8217;t going to drastically reduce your development time.</p>
<p style="text-align: center;"><a href="http://wordwars.clay.io" target="_blank"><img class="aligncenter  wp-image-489" title="Word Wars HTML5" src="http://austinhallock.com/wp-content/uploads/ios.png" alt="" width="670" height="444" /></a></p>
<p style="text-align: center;"><span style="color: #808080;"><em>Again, the game works from mobile devices as well</em></span></p>
<p style="text-align: left;">That&#8217;s two games developed in less than a day, both with a pretty good reception.</p>
<p style="text-align: left;">Bonus: Since it&#8217;s the development time is so little, I even made a game for TechCrunch in an attempt to get noticed for an article. That attempt wasn&#8217;t successful (a couple editors tweeted about it, but no article), but <a href="http://techcrunch.clay.io" target="_blank">here</a> is the game anyways.</p>
<h1>Why HTML5?</h1>
<p>The best candidate to compare HTML5 to for rapidly developing and deploying games like Nick vs Bus and Word Wars is Flash. Java, C++, Unity, iOS and the rest all typically have longer development cycles, not to mention they simply wouldn&#8217;t have spread as quickly since people are forced to download the game (or use the terrible Java applet). Sure, you can create a game fairly quick in those languages if you&#8217;re very familiar with them, but I&#8217;d argue that, given an equal knowledge of all languages, HTML5 would win out on rapid game development. If you&#8217;re hoping to create the next Call of Duty (we definitely need more games like those /sarcasm), go with C++&#8230; WebGL is great but we&#8217;re probably still a couple years away from seeing console-quality games using it.</p>
<h2>Why HTML5 over Flash?</h2>
<h3><strong>Mobile Support</strong></h3>
<p>This is the big one in my eyes. Right now the main benefit of HTML5 is it&#8217;s &#8220;cross-platformness&#8221; by nature. 3,000 of the 25,000 visitors to Nick vs. Bus came from mobile devices. Most of those came from people clicking the link from Facebook&#8217;s app.</p>
<p>Sure, you can get your Flash game on the App Store (when I say App Store, I mean iOS, Android and WP7), but that takes time, and any update you make takes time as well&#8230; With HTML5, you can get your app on the App Store if you&#8217;d like, plus your game can be played straight from the browser.</p>
<p>For the Nick vs. Bus game, mobile support would just now be ready&#8230; two weeks later&#8230; if I had used Flash.</p>
<p>In addition to mobile support, HTML5 paves the way for games to be playable on smart TVs (in the hopefully near future), Windows 8 apps, and perhaps even consoles as Microsoft is very supportive of the new markup.</p>
<h3><strong>No compiling</strong></h3>
<p>Having to wait for a compiler sucks. With JavaScript you don&#8217;t have to. (Yeah, I use CoffeeScript,  a compiled language; however, it&#8217;s very quick to compile and certainly not necessary). That also leaves open possibilities like <a href="http://www.youtube.com/watch?feature=player_detailpage&amp;v=PUv66718DII#t=114s">this</a>.</p>
<h3>Easy Testing</h3>
<p>As per the nature of the web, to test a game on different platforms, you just point your browser at wherever you chose to upload your game. Testing for mobile is the same, and since most browsers and mobile browsers have their own JavaScript console, it&#8217;s fairly easy to find the issue and debug quickly.</p>
<h3>Same language for a backend</h3>
<p>Should your game need a backend (if for example, you want a multiplayer component), you&#8217;re able to use the same language: JavaScript (node.js), which just makes sense. Why write a game in two different languages when you don&#8217;t have to? For one of our games, <a title="Slime Volley" href="http://slime.clay.io" target="_blank">Slime Volley</a> we run a separate instance of each game on the server. In our implementation, we simply share code between the client and server, so there&#8217;s no need to rewrite the mechanics in another language. The game&#8217;s source code can be found <a title="HTML5 game source code" href="https://github.com/claydotio/Slime-Volley" target="_blank">here</a>.</p>
<h3><strong>It&#8217;s not a plugin</strong></h3>
<p>Okay, okay&#8230; pretty much everyone has Flash, but it&#8217;s hard to argue against a standard being better than a plugin. Apple has already taken a stance against Flash. Sure, none of the major players in browsers are going to publicly take a stance against Flash, but I can see HTML5 being favored over something that is completely beyond their control.</p>
<h3><strong>It&#8217;s not controlled by a single corporation</strong></h3>
<p><strong></strong>Adobe does fine work with their products, but in this case Google, Mozilla and Microsoft all competing against each other will be able to continue making something better. Chrome was the first to really make HTML5 games viable with the V8 engine, and now Firefox and even IE are doing their part to push the limits.</p>
<p>Great stuff is being pushed out like the <a href="https://wiki.mozilla.org/GamepadAPI">Gamepad API</a> and <a href="http://dev.w3.org/2006/webapi/WebNotifications/publish/">Notifications API</a>.</p>
<h3>More active development</h3>
<p>Because it is new, more and more developers are building tools for HTML5. New doesn&#8217;t necessarily mean better&#8230; in fact, it means it&#8217;s likely less stable. What it does mean however is there is likely much more active development going on and much less legacy code / excess bulk.</p>
<h3><strong>HTML5 games get more attention</strong></h3>
<p>Honestly, HTML5 games get more attention just for being HTML5 &#8211; deserved or not. It&#8217;s still a buzz-word, and early adopters seem more likely to have a look, opposed to flash games which they&#8217;ve played hundreds, if not thousands, in the past 10+ years.</p>
<h2>HTML5 Weak Spots</h2>
<p>The two biggest criticisms of HTML5 are audio and security. Audio still needs work, I&#8217;m not going to beat around the bush on that. It shouldn&#8217;t be long though&#8230;</p>
<p>As for security, I just wrote an article for DZone about this. It&#8217;s not published yet, but you can have a look at the Google Doc for it <a href="https://docs.google.com/document/d/18D-9N-VtEk5CsYAHJGkDq6l2H-GubAo63Aq3Rb46ThQ/edit" target="_blank">here</a>. Basically, you can make your game secure, you just need a backend that can be done fairly easily with node.js.</p>
<h2>Finishing Words</h2>
<p>I&#8217;ve written a three part series on HTML5 game development tips &#8212; things I&#8217;ve picked up on along the way. <a title="Developing a cross-platform HTML5 game: part 1" href="http://css.dzone.com/articles/developing-cross-platform-0" target="_blank">Part 1</a> is about style &amp; performance tips, <a title="Developing a cross-platform HTML5 game: part 2" href="http://css.dzone.com/articles/developing-cross-platform-1" target="_blank">part 2</a> covers input methods (keyboard, mouse, touch, accelerometer, etc), and <a href="https://docs.google.com/document/d/18D-9N-VtEk5CsYAHJGkDq6l2H-GubAo63Aq3Rb46ThQ/edit" target="_blank">part 3</a> (link to Google Doc since it&#8217;s scheduled to be published on Monday) talks about security tips.</p>
<p>I&#8217;m betting on HTML5 which is why I&#8217;m building what&#8217;s essentially &#8220;Steam for HTML5&#8243;. It&#8217;s called <a title="HTML5 games" href="http://clay.io">Clay.io</a>. You can have a look at more HTML5 games in the <a title="HTML5 game store" href="http://clay.io/store">Clay.io store</a>. For developers, have a look at the <a href='http://clay.io/development-tools'>HTML5 Game Development Tools</a> we offer.</p>
<img src="http://feeds.feedburner.com/~r/ProgrammingLifeAndMore/~4/Ps2XAsOL7OE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://austinhallock.com/2012/05/19/html5-the-best-platform-for-rapid-game-development/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
		<feedburner:origLink>http://austinhallock.com/2012/05/19/html5-the-best-platform-for-rapid-game-development/</feedburner:origLink></item>
		<item>
		<title>Introducing clay.io</title>
		<link>http://feedproxy.google.com/~r/ProgrammingLifeAndMore/~3/3uiAEWFY9sc/</link>
		<comments>http://austinhallock.com/2012/03/15/introducing-clay-io/#comments</comments>
		<pubDate>Thu, 15 Mar 2012 23:13:23 +0000</pubDate>
		<dc:creator>Austin Hallock</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://austinhallock.com/?p=455</guid>
		<description><![CDATA[I&#8217;ve been very busy the past couple of months building a product I&#8217;m really passionate about &#8211; that product is called clay.io. I&#8217;m a big fan of Steam, a platform for PC (and Mac/Linux) games &#8211; it&#8217;s something that really ties together the entire industry and makes it easy to find great games. My vision [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://clay.io"><img class="alignright size-full wp-image-460" title="clay_big" src="http://austinhallock.com/wp-content/uploads/clay_big.png" alt="" width="350" height="350" /></a>I&#8217;ve been very busy the past couple of months building a product I&#8217;m really passionate about &#8211; that product is called <a title="clay.io - HTML5 games" href="http://clay.io" target="_blank">clay.io</a>.</p>
<p>I&#8217;m a big fan of Steam, a platform for PC (and Mac/Linux) games &#8211; it&#8217;s something that really ties together the entire industry and makes it easy to find great games. My vision is to create something along those lines for HTML5 and WebGL games.</p>
<p>Why HTML5 and WebGL? Because they&#8217;re awesome. No, really.</p>
<p>HTML5 games are completely cross-platform, meaning they&#8217;ll work in a browser, phone or tablet. As an example, you can check out the first game Joe and I developed: <a title="Slime Volley" href="http://slime.clay.io" target="_blank">Slime Volley</a>. Slime Volley is a port of a popular game from when I was in high school called Slime Volleyball. We added some cool stuff to it like networked multiplayer &#8211; since it&#8217;s cross platform, that means you can play others who are on desktops from your phone.</p>
<p>Here are a couple other neat HTML5 games: <a title="Onslaught Arena HTML5" href="http://play.lostdecadegames.com/onslaught_arena/" target="_blank">Onslaught! Arena</a>, <a title="Angry Birds HTML5" href="http://chrome.angrybirds.com/" target="_blank">Angry Birds</a>, and <a title="Cut the Rope HTML5" href="http://www.cuttherope.ie/" target="_blank">Cut the Rope</a>.</p>
<p>WebGL allows even more advanced games to be created, using the HTML5 &lt;canvas&gt; element for 3d graphics. To get a sense for what can be done with this, have a look at <a title="My Infatuation with WebGL" href="http://austinhallock.com/2011/12/22/my-infatuation-with-webgl/" target="_blank">this post</a>, <a title="Global Game Jam 2012" href="http://austinhallock.com/2012/01/29/global-game-jam-2012/" target="_blank">this one</a>, or check out <a title="Trigger Rally WebGL" href="http://triggerrally.com/drive?track=preview.json&amp;car=car1.json" target="_blank">this game</a>.</p>
<p>So enough about that, onto more about <a title="clay.io" href="http://clay.io" target="_blank">clay.io</a>. We do a couple things:</p>
<p>The first is we offer <strong>a</strong> <strong>set of tools for developers to easily take care of some of the tedious things involved in game development</strong> (that normally get left out of the end result). Those include payment processing, achievements, leaderboards, screenshots, ratings, multiplayer rooms and a few more. If you&#8217;re interested in any of that, you can check out our <a title="clay.io API documentation" href="http://clay.io/docs" target="_blank">API documentation</a>.</p>
<p>In addition to the developer tools, clay is a <strong>central location for everything HTML5 &amp; WebGL</strong>, so you&#8217;ll be able to find some great games in our store, and create an account that will be associated with all the games you play, achievements you earn, leaderboards you&#8217;re on, etc. <a title="clay.io Signup" href="http://clay.io" target="_blank">Sign up</a> and have a look yourself!</p>
<p>Here&#8217;s a quick demo video:<br />
<iframe src="http://www.youtube.com/embed/vGUjNMPWhkU" frameborder="0" width="680" height="376"></iframe></p>
<p><a title="Joe Vennix's Blog" href="http://joevennix.com" target="_blank">Joe Vennix</a> and I have been working on clay since the start of 2012, devoting a lot of time and effort into it. I hope you like it, and let me know of any feedback you have!</p>
<img src="http://feeds.feedburner.com/~r/ProgrammingLifeAndMore/~4/3uiAEWFY9sc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://austinhallock.com/2012/03/15/introducing-clay-io/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://austinhallock.com/2012/03/15/introducing-clay-io/</feedburner:origLink></item>
		<item>
		<title>My Process as an Entrepreneur</title>
		<link>http://feedproxy.google.com/~r/ProgrammingLifeAndMore/~3/i0HC1XThQq8/</link>
		<comments>http://austinhallock.com/2012/02/18/my-process-as-an-entrepreneur/#comments</comments>
		<pubDate>Sun, 19 Feb 2012 02:37:53 +0000</pubDate>
		<dc:creator>Austin Hallock</dc:creator>
				<category><![CDATA[clay.io]]></category>
		<category><![CDATA[life]]></category>

		<guid isPermaLink="false">http://austinhallock.com/?p=441</guid>
		<description><![CDATA[Hopefully a couple years down the road I can refer back to this post as what was going on in my head while I was helping make clay.io a successful business &#8212; but let&#8217;s not get ahead of ourselves&#8230; I started off writing this post as a set of tips, but realized I&#8217;m not exactly [...]]]></description>
			<content:encoded><![CDATA[<p>Hopefully a couple years down the road I can refer back to this post as what was going on in my head while I was helping make <a title="clay.io" href="http://clay.io" target="_blank">clay.io</a> a successful business &#8212; but let&#8217;s not get ahead of ourselves&#8230;</p>
<p>I started off writing this post as a set of tips, but realized I&#8217;m not exactly in a position to give advice. I&#8217;m still largely unproven. Regardless, here is the approach I am taking each and every day.</p>
<p><strong>Using the resources I&#8217;m given (something called the INTERNET!)</strong><br />
I&#8217;m always trying to extend my knowledge in all areas and I do that mostly through four sites you&#8217;ve probably heard of: <a title="Quora" href="http://www.quora.com/" target="_blank">Quora</a>, <a title="Stack Overflow" href="http://stackoverflow.com/" target="_blank">Stackoverflow</a>, <a title="Twitter!" href="http://twitter.com" target="_blank">Twitter</a> and Google (no, I&#8217;m not going to link to that&#8230;)</p>
<p><strong>Quora</strong> is great for following topics that interest you, seeing what others are asking, and more importantly what smart, capable people are saying in response. I check Quora a few times a day and read any thread I feel might teach me a thing or two. For an idea of what I follow, check out <a title="Quora" href="http://www.quora.com/Austin-Hallock" target="_blank">my profile</a>.</p>
<p><strong>Stackoverflow</strong> is much like Quora in this aspect (questions and answers), but with more of a focus on programming. There are good answers and there are not-so-great answers, with the format it&#8217;s quick and painless to see what is generally accepted as a &#8216;good&#8217; answer. It&#8217;s also beneficial to look at the top questions and read the responses for the languages/paradigms that are relevant to you. For example: <a title="PHP questions" href="http://stackoverflow.com/questions/tagged/php" target="_blank">PHP</a> and <a title="Javascript Questions" href="http://stackoverflow.com/questions/tagged/javascript" target="_blank">JavaScript</a></p>
<p><strong>Twitter</strong> is my new Google Reader. It&#8217;s something much less verbose so I can easily weed out what I don&#8217;t want to read, and save valuable time. If someone I look up to retweets something, I&#8217;ll check it out.</p>
<p>Most programmers will tell you they just google everything &#8211; that&#8217;s a good description for myself as well. I became a competent programmer by first learning how to be a good googler. What I find myself doing more and more is searching &#8220;&lt;problem I&#8217;m having&gt; stackoverflow&#8221; since most of the time it seems someone else has had that problem before.</p>
<p>Programming involves constantly learning new APIs, languages, and techniques and that&#8217;s really hard to do alone without <strong>google</strong> &#8211; even with a book I&#8217;d imagine it would be very time consuming. I&#8217;m finding entrepreneurship is the same way, having to deal with stuff like filing as a company, partnership agreements, stock options and vesting, ideologies for product development (like the lean startup method and MVP). Quora, Google and Stack Overflow make all of this easy.</p>
<p>There&#8217;s also <a title="Reddit" href="http://reddit.com" target="_blank">Reddit</a> (the relevant, productive /r) and <a title="Hacker News" href="http://news.ycombinator.com" target="_blank">Hacker News</a> - though sometimes reading too much can get in the way of productivity.</p>
<p><strong>Doing what it takes to stay motivated</strong><br />
I&#8217;ve been able to accomplish this by choosing something I&#8217;m really passionate about &#8211; video games.</p>
<p>What I&#8217;ve been working on the past few days &#8211; payment processing &#8211; isn&#8217;t the most exciting thing in the world. In fact, I&#8217;m sure most programmers despise it. But what&#8217;s keeping me going is the vision I have for this business.</p>
<p>I&#8217;ve had sites in the past where I really enjoyed the process of building and creating a snazzy product, but that only goes so far if you&#8217;re not truly passionate about the problem your site solves.</p>
<p>A couple other factors that have helped immensely are having <a title="Longhorn Startup Camp" href="http://austinhallock.com/2012/02/04/longhorn-startup-camp/" target="_blank">an office</a> to work in, working on various different aspects of the business, and having someone on the ride with me.</p>
<p><strong>Networking</strong><br />
In the last 4+ years I&#8217;ve been in a few different &#8216;ecosystems&#8217; and gone through ups and downs in terms of how much I network. The most productive periods for me are obviously the ones I did a better job at reaching out and meeting others.</p>
<p>Now that I&#8217;m at the University of Texas &#8211; after a couple months &#8211; I was able to achieve this by getting involved in some startup and hacking events. I can already see the rewards of doing this with <a title="HTML5/WebGL gaming platform" href="http://clay.io" target="_blank">clay.io</a> being formed, and having an awesome environment to work in.</p>
<p><strong>Seeking advice</strong><br />
There is a <em>lot</em> I don&#8217;t know. Because of that, I ask other people with experience. Luckily, it seems like most people are willing to help (which relates to networking to get connected with these people). I am very grateful for everyone who helps me out and I hope one day I can return the favor.</p>
<hr />
<p>So I guess the two main things I&#8217;m doing are <strong>networking</strong> and <strong>always trying to learn</strong> more to put myself in a better position to succeed.</p>
<p>I&#8217;m not strictly focusing on programming. I don&#8217;t want to be just a programmer &#8212; it may but what I&#8217;m best at right now, but I&#8217;m actively trying to improve all those other areas that are necessary. It&#8217;s good to have <a title="Variety" href="http://austinhallock.com/2012/01/15/variety/">variety</a>.</p>
<p>I will give one tip&#8230; be sure to <strong>apply</strong> what you learn. There are people out there who are all talk and no game. If reading Quora and various blogs gets in the way of implementing things, it&#8217;s time to cut back.</p>
<p>P.S. This may be a bit TMI, but for me, in the bath on my phone is a great time to learn (mostly with the Quora app or google). In fact, I&#8217;m writing this post in the bathtub right now&#8230; Another time I find myself doing this is on my bus rides to and from downtown &#8212; anywhere, anytime really.</p>
<img src="http://feeds.feedburner.com/~r/ProgrammingLifeAndMore/~4/i0HC1XThQq8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://austinhallock.com/2012/02/18/my-process-as-an-entrepreneur/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://austinhallock.com/2012/02/18/my-process-as-an-entrepreneur/</feedburner:origLink></item>
		<item>
		<title>Longhorn Startup Camp</title>
		<link>http://feedproxy.google.com/~r/ProgrammingLifeAndMore/~3/4Df80Ptx7iM/</link>
		<comments>http://austinhallock.com/2012/02/04/longhorn-startup-camp/#comments</comments>
		<pubDate>Sat, 04 Feb 2012 21:29:55 +0000</pubDate>
		<dc:creator>Austin Hallock</dc:creator>
				<category><![CDATA[clay.io]]></category>

		<guid isPermaLink="false">http://austinhallock.com/?p=428</guid>
		<description><![CDATA[It&#8217;s a great time to be a University of Texas student as an entrepreneur. While there was a fair amount of help for student startups before this past year, Bob Metcalfe&#8216;s arrival has sparked a lot of new resources. One of those resources is a thing called Longhorn Startup Camp &#8211; office space for student [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s a great time to be a University of Texas student as an entrepreneur. While there was a fair amount of help for student startups before this past year, <a title="Bob Metcalfe" href="http://en.wikipedia.org/wiki/Robert_Metcalfe" target="_blank">Bob Metcalfe</a>&#8216;s arrival has sparked a lot of new resources.</p>
<p>One of those resources is a thing called Longhorn Startup Camp &#8211; office space for student startups.  It&#8217;s something new this semester, so when I heard about it, I made sure <a title="clay.io" href="http://clay.io" target="_blank">clay.io</a> would have some space. The entire top floor of UT&#8217;s administrative building is dedicated to startups. It&#8217;s great being surrounded by other smart, driven students who want to make an impact, and I think this atmosphere will be a huge help.</p>
<p>Here&#8217;s a look at our office before and after we got furniture. Joe&#8217;s side looks a bit more classy than mine, but hey, at least mine was easier to move in&#8230;We might end up getting a couch in there as well. The building was renovated in 2009, so it feels brand new.</p>
<p style="text-align: center;"><a href="http://austinhallock.com/wp-content/uploads/photo-2.jpg"><img class="aligncenter  wp-image-432" title="Pre-furniture" src="http://austinhallock.com/wp-content/uploads/photo-2.jpg" alt="" width="448" height="335" /></a></p>
<p style="text-align: center;"><a href="http://austinhallock.com/wp-content/uploads/photo-3.jpg"><img class="aligncenter  wp-image-429" title="clay.io's office" src="http://austinhallock.com/wp-content/uploads/photo-3-e1328389978754-1024x764.jpg" alt="" width="469" height="349" /></a></p>
<p style="text-align: center;">Here&#8217;s an updated picture with even more furniture&#8230;</p>
<p style="text-align: center;"><a href="http://austinhallock.com/wp-content/uploads/photo-31.jpg"><img class="aligncenter  wp-image-437" title="Updated office" src="http://austinhallock.com/wp-content/uploads/photo-31.jpg" alt="" width="448" height="335" /></a></p>
<p style="text-align: left;">As someone who lives pretty far off campus, it&#8217;s certainly nice having a anchor like this downtown, I&#8217;ll be spending many days and nights working there. Big thanks to Kyle Cox and Bob Metcalfe for getting us hooked up!</p>
<img src="http://feeds.feedburner.com/~r/ProgrammingLifeAndMore/~4/4Df80Ptx7iM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://austinhallock.com/2012/02/04/longhorn-startup-camp/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://austinhallock.com/2012/02/04/longhorn-startup-camp/</feedburner:origLink></item>
		<item>
		<title>Global Game Jam 2012</title>
		<link>http://feedproxy.google.com/~r/ProgrammingLifeAndMore/~3/2Ir4Wp1GwrY/</link>
		<comments>http://austinhallock.com/2012/01/29/global-game-jam-2012/#comments</comments>
		<pubDate>Mon, 30 Jan 2012 01:27:57 +0000</pubDate>
		<dc:creator>Austin Hallock</dc:creator>
				<category><![CDATA[WebGL]]></category>

		<guid isPermaLink="false">http://austinhallock.com/?p=419</guid>
		<description><![CDATA[I woke up Friday morning to learn that there was this thing called Global Game Jam happening at UT this weekend &#8211; it&#8217;s something that sounded right up my alley, so I gave it a shot. Basically you get together, form groups, and develop video games in 48 hours. I chose to fly solo this weekend, [...]]]></description>
			<content:encoded><![CDATA[<p>I woke up Friday morning to learn that there was this thing called <a title="Global Game Jam" href="http://globalgamejam.org/" target="_blank">Global Game Jam</a> happening at UT this weekend &#8211; it&#8217;s something that sounded right up my alley, so I gave it a shot. Basically you get together, form groups, and develop video games in 48 hours. I chose to fly solo this weekend, since most game developers don&#8217;t have a background in JavaScript and I like a challenge.</p>
<p>This was a  good opportunity to make a game for my new project, which now has a name: <a title="HTML5 game platform" href="http://clay.io" target="_blank">clay.io</a>. This game had to be simple because of the time constraint, so I set upon an idea similar to a mini-game from Mario Party. The premise is, you, and 1-3 others are on a platform, and have to duke it out until one person comes out on top. Of course, I added my own flare to the game as well.</p>
<p>The game uses <a title="WebGL &lt;canvas&gt;" href="http://austinhallock.com/2011/12/22/my-infatuation-with-webgl/" target="_blank">WebGL</a>, to render 3d graphics right from the browser without plugins, and a combination of <a title="node.js" href="http://nodejs.org" target="_blank">node.js</a> and <a title="socket.io" href="http://socket.io" target="_blank">socket.io</a> for the multiplayer networking. To help make WebGL a bit less painful, I used <a title="GLGE" href="http://www.glge.org/" target="_blank">GLGE</a>. For the 3d-modeling (if you can even call it that&#8230;) I used <a title="sketchup" href="http://sketchup.google.com/" target="_blank">sketchup</a>. That&#8217;s definitely the weak point of this game: the art. All of this was done in less than 48 hours by someone who doesn&#8217;t consider himself a game developer. I&#8217;m surprised more people aren&#8217;t hopping on board with WebGL yet.</p>
<p>Here&#8217;s a quick demo video &#8211; I&#8217;m happy with the results so far:<br />
<iframe src="http://www.screenr.com/embed/NWis" frameborder="0" width="650" height="396"></iframe></p>
<p>You&#8217;ll see I just have two Chrome windows open, showing the multiplayer support. It&#8217;s kind of lame watching me fiddle with it by myself, it&#8217;s much better when actually playing <img src='http://austinhallock.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Packets between the server and client are being emitted 10 times per second, much less than the typical 20-30 per second &#8211; <a title="Interpolation" href="http://en.wikipedia.org/wiki/Interpolation" target="_blank">interpolation </a>takes care of everything in between.  The player can be controlled with either the mouse or keyboard, and the goal of the game is to survive the longest.</p>
<p>There are 3 abilities to help you survive. One is &#8216;stomp&#8217;, where if you jump in the air and hit the &#8220;C&#8221; key above you opponent, it will smash them and they won&#8217;t be able to move for 1 second. The second is &#8220;Push back&#8221; &#8211; which is something you can use to prevent an opposing player from getting too close to you, or to try and push them off the edge. The final ability is just &#8220;Attack&#8221; &#8211; if you get behind another player and press &#8220;R&#8221;, it will damage them. 5 hits and they die.</p>
<p>As you&#8217;ll also see, parts of the platform are constantly rising and falling, with a short warning shake beforehand. This adds another dynamic as you have to make sure you don&#8217;t fall off.</p>
<p>I was able to get the game to a playable state, with all the features I&#8217;d initially written down. However, it&#8217;s still not at the point where I want to release it. There&#8217;s a bit more polishing to do before that &#8211; but once it&#8217;s ready I&#8217;ll have it released within clay.io. Right now it&#8217;s just 2 players max, but I programmed it with more in mind so it&#8217;ll likely be 3 or 4 players in 1 game at a time (it&#8217;s more interesting that way).</p>
<p>That&#8217;s all for now &#8211; I&#8217;m running on 90 minutes of sleep in the past 31 hours so it&#8217;s time to relax, watch the Pro Bowl and get a good night&#8217;s sleep.</p>
<img src="http://feeds.feedburner.com/~r/ProgrammingLifeAndMore/~4/2Ir4Wp1GwrY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://austinhallock.com/2012/01/29/global-game-jam-2012/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://austinhallock.com/2012/01/29/global-game-jam-2012/</feedburner:origLink></item>
		<item>
		<title>Variety</title>
		<link>http://feedproxy.google.com/~r/ProgrammingLifeAndMore/~3/RQSzu1yf48o/</link>
		<comments>http://austinhallock.com/2012/01/15/variety/#comments</comments>
		<pubDate>Sun, 15 Jan 2012 09:44:18 +0000</pubDate>
		<dc:creator>Austin Hallock</dc:creator>
				<category><![CDATA[life]]></category>

		<guid isPermaLink="false">http://austinhallock.com/?p=409</guid>
		<description><![CDATA[Burnout is always a tough thing to deal with, and I&#8217;ve definitely suffered from it in the past. By no means have I solved the issue for myself &#8211; I&#8217;m still constantly trying new ways to prevent it &#8211; but one that has certainly helped is having a variety of things to do. As a [...]]]></description>
			<content:encoded><![CDATA[<p>Burnout is always a tough thing to deal with, and I&#8217;ve definitely suffered from it in the past. By no means have I solved the issue for myself &#8211; I&#8217;m still constantly trying new ways to prevent it &#8211; but one that has certainly helped is <strong>having a variety of things to do</strong>.</p>
<p>As a programmer, this mostly involves switching between languages, languages that differ quite a bit. I&#8217;ll go anywhere from a few hours to a few weeks working on one language, say, PHP, then if I get tired of that, I have plenty of options. With the current project I&#8217;m working on, I&#8217;ve been switching from PHP to <a title="node.js" href="http://nodejs.org/" target="_blank">node.js</a> to frontend javascript (<a title="CoffeeScript" href="http://coffeescript.org/" target="_blank">coffeescript </a>to be more specific) to CSS. All are very different in how they are programmed, making each new switch something that helps prevent complete burnout for me. One day I can work on some hard-core backend, getting all the backbone structure in place, and the next I can get more arsty and play around with some HTML and CSS. It&#8217;s good to have options. Of course, some days you&#8217;re going to be forced to work with one specific area of programming, but having rotated through them throughout the process, you&#8217;ll likely not be as tired of it.</p>
<p>If you&#8217;re someone who specializes in one programming language and have issues with burnout, I suggest trying to pickup something new. That doesn&#8217;t mean learn Java if you&#8217;re a C++ programmer &#8211; both are backend &#8211; try something on the opposite end of the spectrum like some HTML and CSS. If you&#8217;re strictly a frontend developer, try familiarizing yourself with Bash-Scripting to make tools that will speed up your development process.</p>
<p>It&#8217;s not just varying programming languages that helps; some days I&#8217;ll just sit back and read/learn about technical stuff (whether it be programming languages, unix, databases, etc) which I still find productive. Others I will focus more on the entrepreneurial side of things and work on planning out the company&#8217;s future, taking in advice, or reaching out to others. Lately I&#8217;ve spent a good chunk of time reading questions and answers from successful entrepreneurs on <a title="Quora" href="http://www.quora.com/" target="_blank">Quora</a>. One more option of productivity that I&#8217;ve been using lately, is writing my thoughts on this blog, which I enjoy.</p>
<p>I know many of my readers aren&#8217;t programmers, but I&#8217;d argue this applies to everything in life that one can be burnt out on. A little bit of variance and changing things up can go a long way. For example, my girlfriend and I were having salmon and shrimp 4 or 5 days a week when we started the <a href="http://en.wikipedia.org/wiki/Paleolithic_diet">Paleo</a> diet. The result of this was after a few weeks we started to despise fish and subsequently haven&#8217;t had it in over a month. Had we just been eaten it once or twice a week, I&#8217;m sure that would still be a meal in our repertoire. Routines can be good, but with certain things routines need to be switched up every so often to stay fresh and prevent burnout.</p>
<img src="http://feeds.feedburner.com/~r/ProgrammingLifeAndMore/~4/RQSzu1yf48o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://austinhallock.com/2012/01/15/variety/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://austinhallock.com/2012/01/15/variety/</feedburner:origLink></item>
		<item>
		<title>CSS3 Box Sizing</title>
		<link>http://feedproxy.google.com/~r/ProgrammingLifeAndMore/~3/QtkUzZTLACk/</link>
		<comments>http://austinhallock.com/2012/01/08/css3-box-sizing/#comments</comments>
		<pubDate>Mon, 09 Jan 2012 02:55:47 +0000</pubDate>
		<dc:creator>Austin Hallock</dc:creator>
				<category><![CDATA[css]]></category>

		<guid isPermaLink="false">http://austinhallock.com/?p=390</guid>
		<description><![CDATA[CSS3 let&#8217;s you do a lot of cool stuff, most of which add graphical enhancements like gradients and rounded corners, all of which are great. Lately however, I think my favorite new property is box-sizing. There are two modes: content-box and border-box. content-box is default, and will calculate the true width for an element as [...]]]></description>
			<content:encoded><![CDATA[<p>CSS3 let&#8217;s you do a lot of cool stuff, most of which add graphical enhancements like <a title="CSS3 Gradients" href="http://css-gradient.com" target="_blank">gradients</a> and <a title="Border Radius" href="http://border-radius.com" target="_blank">rounded corners</a>, all of which are great. Lately however, I think my favorite new property is <code>box-sizing</code>.</p>
<p>There are two modes: <code>content-box</code> and <code>border-box</code>. <code>content-box</code> is default, and will calculate the true width for an element as width+padding+border. So if you have a child &lt;div&gt; with 100% width and 10px of padding, it will extend outside the parent &lt;div&gt;. Here&#8217;s an example of <code>content-box</code>:</p>
<div style="background: #000; width: 300px; margin-bottom: 10px;">
<div style="background: rgba( 255, 0, 0, 0.5 ); width: 100%; padding: 10px; height: 100px;"></div>
</div>
<p>The parent&lt;div&gt; has a black background and the child has a red background with 50% opacity (<a title="RGBA" href="http://css-tricks.com/rgba-browser-support/" target="_blank">rgba</a> is another awesome new tool to use with css)</p>
<p>With <code>border-box</code>, the padding and border are included in the width of the element. So an element with width: 300px; and padding: 10px; will still have a width of 300px, rather than 320px. Here&#8217;s the example from above using <code>border-box</code>:</p>
<div style="background: #000; width: 300px; margin-bottom: 10px;">
<div style="background: rgba( 255, 0, 0, 0.5 ); width: 100%; padding: 10px; height: 100px; box-sizing: border-box;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;-ms-box-sizing: border-box;-o-box-sizing: border-box;"></div>
</div>
<p>This allows for more fluid specification of widths in a lot of instances. Say you need a textarea with width: 100%, you can add padding to it and not have to worry about it extending to be wider than what you really want. Before, I always had to set a fixed width, which obviously isn&#8217;t ideal when developing a site you want to work in a variety of resolutions and devices (mobile).</p>
<p>The <code>box-sizing</code> property doesn&#8217;t work in IE 7, but you can get around that with <a title="IE7.js" href="http://code.google.com/p/ie7-js/" target="_blank">this</a>.</p>
<p>Here&#8217;s how you implement it:</p>
<pre class="brush: css; title: ; notranslate">
box-sizing: border-box;
/* Firefox */
-moz-box-sizing: border-box;
/* Webkit */
-webkit-box-sizing: border-box;
/* IE */
-ms-box-sizing: border-box;
/* Opera */
-o-box-sizing: border-box;
</pre>
<p>Hope this helps you out like it has helped me!</p>
<img src="http://feeds.feedburner.com/~r/ProgrammingLifeAndMore/~4/QtkUzZTLACk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://austinhallock.com/2012/01/08/css3-box-sizing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://austinhallock.com/2012/01/08/css3-box-sizing/</feedburner:origLink></item>
	</channel>
</rss>
