<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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/"
	>

<channel>
	<title>DriftLogic &#187; Web</title>
	<atom:link href="http://driftlogic.net/category/web/feed" rel="self" type="application/rss+xml" />
	<link>http://driftlogic.net</link>
	<description>Web development, random thoughts, associated geekery</description>
	<lastBuildDate>Sat, 13 Feb 2010 17:44:33 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>What&#8217;s really wrong with MySpace</title>
		<link>http://driftlogic.net/13/02/2010/whats-really-wrong-with-myspace.html</link>
		<comments>http://driftlogic.net/13/02/2010/whats-really-wrong-with-myspace.html#comments</comments>
		<pubDate>Sat, 13 Feb 2010 17:44:33 +0000</pubDate>
		<dc:creator>Scott</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[myspace]]></category>
		<category><![CDATA[social]]></category>
		<category><![CDATA[stupid]]></category>

		<guid isPermaLink="false">http://driftlogic.net/?p=43</guid>
		<description><![CDATA[For the last year or so, the majority of my professional life has revolved around writing applications for social networks, Facebook in particular. In fact, it seems that most application developers forget that other networks actually exist. Allot of this has to do with publishers getting blinded by the &#8216;FarmVille&#8217; effect of commanding a userbase [...]]]></description>
			<content:encoded><![CDATA[<p>For the last year or so, the majority of my professional life has revolved around writing applications for social networks, Facebook in particular. In fact, it seems that most application developers forget that other networks actually exist. Allot of this has to do with publishers getting blinded by the &#8216;FarmVille&#8217; effect of commanding a userbase greater than the population of France. Despite this, with the rapid reforms Facebook is making to the platform, smart shops are starting to adopt the idea of casting a wide net to catch more fish.</p>
<p>That&#8217;s where social networks like MySpace, hi5, and orkut come into play. While Facebook might be the largest social network and the most used in North America, MySpace still retains a loyal set of users. Networks like hi5 and orkut maintain strong regional networks, with others like Vkontakte commanding small, but extremely engaged regional users.</p>
<p>Facebook is effectively a &#8216;me too&#8217; developer arena, with an aggressive and unfriendly referee in Facebook Corporate. Most of the spamish tools used by Zynga and Playfish to grow their networks during the last redesign renaissance are gone now. Wall posts? Gone. Stream Posts with lots of images and spammy links? Gone. Notifications? On the way out baby. Facebook is attempting to detatch themselves from developers that helped increased the retention of their platforms by reducing branding and making it difficult for new developers to grow their audiences. With the introduction of Facebook payments, the writing is on the wall for companies like offerpal and trialpay as well.</p>
<p>So, what&#8217;s a developer to do? Social networks arn&#8217;t going away, and there&#8217;s still money to be made developing for other platforms that are looking to lure developers of A-list apps away from Facebook. MySpace is trying to do exactly that with a revamped API and a development contest aimed at giving developers something else to playwith on the platform. To be honest, there are some fairly interesting ideas in the streaming apis, borrowed from what Twitter is up to lately with its streaming API. It&#8217;s a huge waste of time and money, tho. The MySpace API&#8217;s are poorly documented and don&#8217;t really focus around what developers need to pull from the network on a regular basis (Friends, Userdata, Viral Channels). What&#8217;s worse, all of the MySpace API interactions are governed by what must be the worst authentication system ever imagined in Google&#8217;s OAuth for Opensocial.</p>
<p>Just <a title="Noooooooooo...." href="http://code.google.com/apis/accounts/images/OAuthDiagram.png">look</a> at the work flow for this beast of an authentication system. Wanna get some information from the user? You need ten steps to make that happen. Five full request / response cycles to make anything happen if the user isn&#8217;t authenticated. MySpace will let you skip one of those cycles if you&#8217;re making the request from an already authenticated user within one of their application pages, but you&#8217;re still going to walk through the overly complicated process of authentication to do almost anything. You could use the MySpace SDK for most platforms, and they do a great job of abstracting away all of this OAuth complexity, but as a developer, I should be able to look at the calls and understand how they work immediately.</p>
<p>Developers should be somewhat afraid of things that are black box implementations of anything, and while the MySpace SDK isn&#8217;t exactly black box, it isn&#8217;t intuitive either. It takes a real time investment to understand any call made to the api that involves OAuth. What&#8217;s worse is that it&#8217;s needless complexity. Twitter&#8217;s API uses tried and true authentication headers to prove identity. Easy, understood, you know what&#8217;s going on immediately and should something break, how you can roll up your sleeves to see what&#8217;s wrong.</p>
<p>Most developers who work on the MySpace platform won&#8217;t take the time to understand it because of the massive bloat attached to it. It&#8217;s too far gone now for any proper change with the MySpace API, not because it can&#8217;t be changed, but because there is no culture in place to change it.</p>
<p>Want developers to work and create for your platform? Get out of your own way.</p>
]]></content:encoded>
			<wfw:commentRss>http://driftlogic.net/13/02/2010/whats-really-wrong-with-myspace.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Play OSX Package</title>
		<link>http://driftlogic.net/25/10/2009/play-osx-package.html</link>
		<comments>http://driftlogic.net/25/10/2009/play-osx-package.html#comments</comments>
		<pubDate>Sun, 25 Oct 2009 16:26:50 +0000</pubDate>
		<dc:creator>Scott</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://driftlogic.net/?p=39</guid>
		<description><![CDATA[With work keeping me rather busy lately, I haven&#8217;t had the chance to write up a (readable) new post. But over the last little I&#8217;ve been looking for a lightweight web development framework for Java that breaks out of the Servlet mold when I discovered Play!. Play is lightweight, set up for rapid development, and [...]]]></description>
			<content:encoded><![CDATA[<p>With work keeping me rather busy lately, I haven&#8217;t had the chance to write up a (readable) new post. But over the last little I&#8217;ve been looking for a lightweight web development framework for Java that breaks out of the Servlet mold when I discovered <a href="http://www.playframework.org">Play!</a>. Play is lightweight, set up for rapid development, and maintains an efficient railsy feel with all the maturity of the JVM thrown in.</p>
<p>The guys involved with Play! released 1.0 earlier this month, so I bundled up a OSX installer to place the commands in convenient places for mac users.</p>
<p>Check it out here:</p>
<p><a href="http://driftlogic.net/play_framework">http://driftlogic.net/play_framework</a></p>
]]></content:encoded>
			<wfw:commentRss>http://driftlogic.net/25/10/2009/play-osx-package.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Keep It Simple</title>
		<link>http://driftlogic.net/11/09/2009/keep-it-simple.html</link>
		<comments>http://driftlogic.net/11/09/2009/keep-it-simple.html#comments</comments>
		<pubDate>Sat, 12 Sep 2009 01:16:49 +0000</pubDate>
		<dc:creator>Scott</dc:creator>
				<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://driftlogic.net/?p=28</guid>
		<description><![CDATA[If anything the last few years of &#8216;Web 2.0&#8242; have taught us is that users appreciate simple sites even more than designers. This lesson even held true in the pre-web 2.0 era, tho it required somewhat of a cultural development shift to get there.
Google was the first really &#8217;successful&#8217; company to adopt the simple site [...]]]></description>
			<content:encoded><![CDATA[<p>If anything the last few years of &#8216;Web 2.0&#8242; have taught us is that users appreciate simple sites even more than designers. This lesson even held true in the pre-web 2.0 era, tho it required somewhat of a cultural development shift to get there.</p>
<p>Google was the first really &#8217;successful&#8217; company to adopt the simple site approach. Yahoo was the big dog on the block with it&#8217;s dramatically complex presentations and homepage, exposing all of the information about the nuts and bolts of the machine along with the attempt to force feed users associated content at the search box and home page.</p>
<p>Intentional or not, Google figured out the one cardinal rule of web development. Users visit sites with a task in mind, and that task is often singular. No matter what the site or application, users don&#8217;t spend time exploring, unless your site keeps a tight narrow focus. Users who land on a site looking for information about racing will spend more time exploring your site if it has a focus on racing, less time exploring of racing is just one component of a multi-focus site. Search results have conditioned users to expect results to be single page only, with little related information if any.</p>
<p>Developers and designers have a great deal of trouble scaling back ideas to fit into this singular focus approach and filtering out the noise. Most of it has to do with the brainstorming at the beginning of the project. When an idea sparks, random thoughts are encouraged in brainstorms or while the idea is being developed. But before development begins, teams need to spend time performing a reality check, not only in regard to the scope of the development, but about what ideas are included.</p>
<p>The scope of the project to the first milestone is a great barometer of success. Ideas that keep development as tightly focused as the idea tend to produce better products and better code. Projects where developers are scattered, attempting to work on multiple facets of a system simultaneously are a good indicator that the project lacks focus. Attempting to narrow the scope during development is nearly impossible, and almost always results in missed deadlines and backwards development.</p>
<p>Successful projects focus on the idea most commonly found in development for social networks where releases focus on minor features and continuous integration and release. Plan schedules around minor features, not major ones. If a feature can&#8217;t be paired down to a series of minor releasable features, it should either be considered a separate project outside of the current scope, or be refactored before development begins. Even beyond this, each complete minor feature should be considered a full release. That might mean that you&#8217;re releasing new features each week, and honestly, that&#8217;s okay. Users adapt to incremental changes in a far more flexible way than large scale changes, particularly in the flow of your site.</p>
<p>Happy, focused developers tend to lend to happy, focused users and user experiences.</p>
]]></content:encoded>
			<wfw:commentRss>http://driftlogic.net/11/09/2009/keep-it-simple.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
