<?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>Chuck Freedman &#187; Platform</title>
	<atom:link href="http://www.chuckstar.com/blog/category/platform/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.chuckstar.com/blog</link>
	<description>excerpts from the mind of a platform evangelist</description>
	<lastBuildDate>Sun, 29 Jan 2012 09:05:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>APIs in Life, Music and Wiffleball</title>
		<link>http://www.chuckstar.com/blog/technology/apis-in-life-music-and-wiffleball/</link>
		<comments>http://www.chuckstar.com/blog/technology/apis-in-life-music-and-wiffleball/#comments</comments>
		<pubDate>Fri, 07 Oct 2011 21:27:00 +0000</pubDate>
		<dc:creator>chuckstar</dc:creator>
				<category><![CDATA[Platform]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.chuckstar.com/blog/?p=1332</guid>
		<description><![CDATA[This talk expresses my love and intrigue of APIs, demonstrating where I&#8217;ve found platforms and APIs in real life, music and things like wiffleball. I have a lot of fun with this one. At one point during this talk, I walk across the stage (or room) and throw various wiffleball pitches at my laptop, with [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Fapis-in-life-music-and-wiffleball%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Fapis-in-life-music-and-wiffleball%2F&amp;source=chuckstar&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>This talk expresses my love and intrigue of APIs, demonstrating where I&#8217;ve found platforms and APIs in real life, music and things like wiffleball. I have a lot of fun with this one. At one point during this talk, I walk across the stage (or room) and throw various wiffleball pitches at my laptop, with the webcam on screen showing the sharp angles of the ball. This is to demonstrate how my arm is like an API, accepting the <em>arm.throw()</em> call with parameters like <em>grip</em>, <em>angle</em> and <em>speed</em>. I also define a subset of APIs I maintain with my wife and a bonus API-ification of the Delorean time machine. </p>
<p>Of over 40+ presentations I&#8217;ve given, this is has become one of my favorites. I&#8217;ve given this talk at <a href="http://geekybynature.com/">GeekyByNature</a> (NYC, 3.31.2011) and at <a href="http://northshorewebgeeks.com/">NSWG</a> (Newburyport, 9.29.11).</p>
<div style="width:425px" id="__ss_9598873"> <strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/chuckstar/apis-of-life-music-and-wiffleball" title="APIs in Life, Music and Wiffleball" target="_blank">APIs in Life, Music and Wiffleball</a></strong> <iframe src="http://www.slideshare.net/slideshow/embed_code/9598873" width="425" height="355" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
<div style="padding:5px 0 12px"> View more <a href="http://www.slideshare.net/" target="_blank">presentations</a> from <a href="http://www.slideshare.net/chuckstar" target="_blank">chuckstar</a> </div>
</p></div>
<p>Diving a little deeper, I use examples like the traffic light as ways humans are universally controlled. I also show the asynch event response structure through the way our brain and stomach communicate on whether we are hungry or full. It may seem &#8216;out there&#8217;, but folks in the audience seem to get it very well.</p>
<p>The best part about this talk is the extended Q&#038;A and discussion it leads to at the end. I encourage feedback and questions here, as comments, or to me on Twitter: <a href="http://twitter.com/chuckstar">@chuckstar</a>.</p>
<p>The following are videos that I feature in this talk:<br />
<iframe width="420" height="315" src="http://www.youtube.com/embed/DU0Bi3ZyrbU" frameborder="0" allowfullscreen></iframe></p>
<p><iframe width="420" height="315" src="http://www.youtube.com/embed/x2lhMSmu-K4" frameborder="0" allowfullscreen></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://www.chuckstar.com/blog/technology/apis-in-life-music-and-wiffleball/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New approach to platform evangelism</title>
		<link>http://www.chuckstar.com/blog/technology/new-approach-to-platform-evangelism/</link>
		<comments>http://www.chuckstar.com/blog/technology/new-approach-to-platform-evangelism/#comments</comments>
		<pubDate>Tue, 26 Jul 2011 02:53:14 +0000</pubDate>
		<dc:creator>chuckstar</dc:creator>
				<category><![CDATA[Platform]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.chuckstar.com/blog/?p=1288</guid>
		<description><![CDATA[Back in 2005 when the &#8220;mashup&#8221; craze was really taking off, we were getting reports at Yahoo! about how many developers were using our Maps API. The report was broken down into technologies, web sites, and how many API calls were made from each. Sites like programmableweb.com were busy cataloging platforms and counting how many [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Fnew-approach-to-platform-evangelism%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Fnew-approach-to-platform-evangelism%2F&amp;source=chuckstar&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<div style="float: left; margin: 10px">
<p align="center"><img src="http://www.chuckstar.com/blog/wp-content/uploads/2011/07/butterfly-net.jpg" alt="" title="butterfly net" width="250" height="314" class="alignleft size-full wp-image-1290" /></div>
<p>Back in 2005 when the &#8220;mashup&#8221; craze was really taking off, we were getting reports at Yahoo! about how many developers were using our Maps API. The report was broken down into technologies, web sites, and how many API calls were made from each. Sites like <a href="http://programmableweb.com">programmableweb.com</a> were busy cataloging platforms and counting how many web sites and developers mashed them up (known today as integrating/extending APIs). Up until recently, many thought successful evangelism meant attracting as many developers to your platform community as possible. The more apps, the more API calls, and the more developers were using your service &#8211; extending your brand &#8211; calling attention to your service &#8211; bringing folks into your domain, and so on.</p>
<p>In some cases, you could see where companies were looking more at their developer totals than the number of quality apps being built on their platform. Not to say this wasn&#8217;t a valuable practice. For companies considering developers as customers, the sole purpose of the platform may have been attracting users directly rather than indirectly &#8212; through the apps developers built.</p>
<p>But for many companies, this approach ultimately failed. It costs big money to (properly) evangelize to developers, appear at worthwhile conferences, support SDKs in multiple development languages, and adequately power a good performing platform to deliver your service to countless apps and developers.</p>
<p>In advising many companies, I&#8217;ve referred to this approach of going out and marketing/evangelizing your platform to any developer as the &#8220;butterfly net&#8221; strategy. That is, you are going out with a big net to catch as many developers, no matter their ability, specialty or value, and hoping they&#8217;ll sign up, download your SDK and use your platform.</p>
<p>Eventually, of potentially thousands of developers, only a few valuable apps emerge. And while the service platform may provide for a nice weekend challenge, the platform may be no match for something out there that can better provide a developer with visibility and even a somewhat easy-to-achieve revenue stream.</p>
<p>There&#8217;s been a major shift in the last few years. Developers have become much more savvy in how they spend their time adopting new platforms and respective platform technologies (languages, frameworks, etc). The biggest and most obvious catalyst for this change is the success of device-based platforms like iOS and Android. While structurally different than more prolific service-based platforms (SDKs extending enhancing apps like geo-location, virtual currency, communication, etc), device-based platforms take even more time for a developer to adopt, in principal, and offer a proven incentive to developers &#8212; direct sale and monetization of an app. And so, service platforms not only have to be more discoverable to a developer, but they have to present a value proposition that competes with other platforms in a way that almost compliments them.</p>
<p>Many platforms, particularly the abundant and smaller service-based ones, can grow much more valuably now by moving away from the butterfly-net strategy, and align themselves more with traditional business development approach. This can be achieved in a more direct and even cost-effective approach. Instead of showing up with a booth at a conference and trying to &#8216;recruit&#8217; developers point-blank, platform companies should seek out developers who may have already built apps that will benefit from their SDK. I find it&#8217;s easier to answer the question &#8220;how can I build this into my app?&#8221; over &#8220;how can I build an app around this platform?&#8221;. The other benefit is knowing the developer is already familiar with &#8212; and maybe even a master of &#8212; the coding language your platform supports. This, too, saves incredible time in supporting adoption.</p>
<p>I&#8217;m not suggesting you abandon the old-fashioned conference appearance. Platforms stories of technology and success still need to be told in front of interested developers. Again, don&#8217;t always try and push the platform to a new breed of developers. Try targeting audiences that may be already familiar with your platform, or even developers you&#8217;ve already presented to before. And after the presentation, webinar or meeting, listen a little more to those really interested in your service. Schedule time to walk them through docs and examples. See them through the integration of your service and you&#8217;ll see an app launched that brings more value to you platform than takes away from it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chuckstar.com/blog/technology/new-approach-to-platform-evangelism/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Developer beware: How to assess a device platform</title>
		<link>http://www.chuckstar.com/blog/technology/developer-beware-how-to-assess-a-device-platform/</link>
		<comments>http://www.chuckstar.com/blog/technology/developer-beware-how-to-assess-a-device-platform/#comments</comments>
		<pubDate>Mon, 31 Jan 2011 01:25:17 +0000</pubDate>
		<dc:creator>chuckstar</dc:creator>
				<category><![CDATA[Platform]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.chuckstar.com/blog/?p=1160</guid>
		<description><![CDATA[I doubt there&#8217;s a developer out there who hasn&#8217;t been tempted by the mighty powerful marketing forces of device makers calling for apps on their HOT, NEW, COMING SOON device! I should know. As Chief Channel Evangelist for Litl, it was my job for much of 2010 to encourage developers to build apps for a [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Fdeveloper-beware-how-to-assess-a-device-platform%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Fdeveloper-beware-how-to-assess-a-device-platform%2F&amp;source=chuckstar&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>I doubt there&#8217;s a developer out there who hasn&#8217;t been tempted by the mighty powerful marketing forces of device makers calling for apps on their HOT, NEW, COMING SOON device! I should know. As Chief Channel Evangelist for Litl, it was my job for much of 2010 to encourage developers to build apps for a set top box device that has yet to be released. Most devices launch, and when they do, their success can carry with them the talents of the developers and apps that follow.</p>
<p>To a developer, the chance to BE THE FIRST to build an app for an upcoming device and platform could represent the opportunity to have your app get major visibility upon a product&#8217;s launch. However, it&#8217;s also risky to get involved with a device too early and may or may not be the best use of your time. Due to complexities of the device&#8217;s platform, be it varied technologies, add-on SDKs (see below) and other limitations, it&#8217;s likely the app you write for one device will need to be heavily ported or fully re-coded if you ever want to deploy for other devices on different platforms.</p>
<p>To help in your assessment of &#8220;app for device&#8221; opportunities, I have put together a checklist of things to consider before you commit to building an app for a device.</p>
<p><strong>1. What&#8217;s the potential market reach? </strong></p>
<p><img src="http://www.chuckstar.com/blog/wp-content/uploads/2011/01/IMAG1607-300x179.jpg" alt="" title="iPhone Apps" width="300" height="179" class="alignnone size-medium wp-image-1184" /><br />
<em>Apple has critical mass and promotes Apps alongside their products</em></p>
<p>If you&#8217;re expecting to make money selling the app, the device&#8217;s distribution is key. You should know from the company that makes the device as much as possible about how many they expect to sell and when exactly the device will reach a critical mass. Also, if you expect the device to be super successful, you&#8217;ll need to account for a lot of competition among other apps.</p>
<p>If the company making the device has other, successful products out, chances are they&#8217;ll be a success. If this is their first product in the space, it is a bit riskier but the reward for being an early adopter in the space could be huge.</p>
<p><strong>2. Will working with the device&#8217;s platform technology add to your skillset?</strong></p>
<p>Good developers love to code, even as a hobby. Even after they&#8217;ve closed out their work email, they&#8217;re still tinkering with other &#8216;side&#8217; projects, hungry to learn the next big thing and keep sharpening their skills. </p>
<p>Picking up a device platform could be a great and fun way to cut your teeth on a new technology. If you&#8217;ve never coded for devices before, it can really be an enjoyable experience. Also, if you&#8217;ve been stuck coding the same language for a while, building an app for a device can lead to new technologies and broaden your horizons a bit.</p>
<p><strong>3. Will building an app for the device be good for your career or business?</strong></p>
<p>If you work at a company, and they are servicing clients interested in a certain target device, then having a deployed app under your belt could be very valuable. Just the same, if you&#8217;re a contractor, and have or sense demand from your clients to deploy apps for a device, getting an app out would be great.</p>
<p>In this climate it&#8217;s not hard to identify opportunities like these. This might be the best excuse to dive into a platform and not look back. Going into work or sharing with clients an app of yours freshly listed in the device&#8217;s respective store/marketplace can be a big highlight for you! So if you&#8217;re going to play with a device on nights and weekends, consider one that has great potential for your career and business.</p>
<p><strong>4. Are you over-committing your app to the device platform?</strong></p>
<p>As mentioned above, it&#8217;s likely that the app you&#8217;ll build may only work on a single device (or with other devices from the same company or platform). If you&#8217;re going through the trouble of learning the device&#8217;s technology and building an entire app, especially from scratch, consider the effort of having to re-write it for other devices. Many devices share baseline technologies and languages. However, a lot of new ones require add-on SDKs. This means that in addition to adopting a specific language/technology, you&#8217;ll need to download and maintain the SDK specific to the device. This can really lock you in and make your app a slave to the platform.</p>
<p>Check to see if the platform has a history of &#8220;breaking API&#8221;, which requires developers to fix their apps with major API version releases. If it&#8217;s a new platform or device, see how frequently they&#8217;ve versioned their platform and tools. It might be a sign their going to be trouble.</p>
<p>If you&#8217;re using a proxy technology, a method of deploying an app in something other than the device&#8217;s native platform/language, make sure that it gives you access to the device features you want to build your app for. Also, check that the company building the proxy technology is keeping up with the overall versioning of the platform.</p>
<p><strong>5. How valuable are you and your app to the platform?</strong></p>
<p>In some cases, your app (and more specifically, having YOU deploy the app) may be more valuable to the device maker than you realize. Dig deeper and find out what incentives the platform support or evangelism teams are offering to encourage you to build for their platform. They may have a fund setup, or more likely, some big marketing dollars to grant you in the name of &#8216;developer acquisition&#8217;. Make no mistake, you&#8217;re participation and ability to deploy a quality app is very valuable to them. See what you can get from them (money, free software, and especially, a free device) before you submit your app.</p>
<p><strong>6. Get your hands on the device first or get a first-hand demo or review.</strong></p>
<p><img src="http://www.chuckstar.com/blog/wp-content/uploads/2011/01/IMAG1417-300x179.jpg" alt="" title="Blackberry Playbook" width="300" height="179" class="alignnone size-medium wp-image-1181" /><br />
<em>Touching the highly coveted and hyped Blackberry Playbook at CES</em></p>
<p>More important than the sample code and support you&#8217;ll get as a developer, you must know the device you&#8217;re coding for is of quality. It must be something people are going to want or need. In most cases, it will help if you also want and like the product. Getting a hands-on demo of the product is very important, especially if it&#8217;s not been released yet. This has turned me off of more products than not. It really helps if you believe in the product, and getting to play with the device can boost your interest and confidence in it.</p>
<p>It&#8217;s really hard to build a quality app for a product that you don&#8217;t have. When possible, you should have the device handy to test with. Platform SDK emulators/simulators are helpful, but with so many different interaction points, ranging from touch response to accelerometer, being able to use your app right on the device can make it so much better. Hopefully, if you&#8217;re committed to building an app on a new platform, you&#8217;ve managed to get a device for free in the process!</p>
<p>&#8212;</p>
<p>I&#8217;m not going to list out any devices or platforms in this post that you should jump on or avoid. For now, I&#8217;d appreciate your feedback, via comments below, on what factors you look at when assessing a device platform&#8217;s potential and deciding whether or not you should build the next great app for it! Most devices coming out are great. Usually, if the company has put marketing money behind promoting it, then it&#8217;s likely to be huge! Why not be a part of it?!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chuckstar.com/blog/technology/developer-beware-how-to-assess-a-device-platform/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Twitter making its own apps concerns developers</title>
		<link>http://www.chuckstar.com/blog/technology/twitter-making-its-own-apps-concerns-developers/</link>
		<comments>http://www.chuckstar.com/blog/technology/twitter-making-its-own-apps-concerns-developers/#comments</comments>
		<pubDate>Fri, 07 May 2010 17:18:11 +0000</pubDate>
		<dc:creator>chuckstar</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[Platform]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.chuckstar.com/blog/?p=836</guid>
		<description><![CDATA[My HTC Intredible shipped with a Twitter app built-in called Peep. It was cool, but lacked some polish I enjoy with Seesmic&#8217;s Twhirl AIR app on my desktop. Being new to Android, I didn&#8217;t realize that features like taskbar notifications were available to other apps &#8212; so I was really impressed when I saw a [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Ftwitter-making-its-own-apps-concerns-developers%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Ftwitter-making-its-own-apps-concerns-developers%2F&amp;source=chuckstar&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p><a href="http://www.pyramydair.com/blog/2005/09/what-is-field-target.html"><img src="http://www.pyramydair.com/blog/images/field-target-web.jpg" alt="bird target" border="0" /></a></p>
<p>My HTC Intredible shipped with a Twitter app built-in called Peep. It was cool, but lacked some polish I enjoy with Seesmic&#8217;s Twhirl AIR app on my desktop. Being new to Android, I didn&#8217;t realize that features like taskbar notifications were available to other apps &#8212; so I was really impressed when I saw a little &#8216;birdie&#8217; icon whenever someone replied/dm&#8217;d/or included me in their tweet.</p>
<p>Days after I got my Incredible, I learned that Twitter, themselves, had launched their own Android app. I downloaded and fell in love. Not only did it beat Peep in terms of usability, navigation and &#8216;Android&#8217; integration, it also surpasses Twhirl. It&#8217;s got me wondering now, when will Twitter put out its own desktop-integrated app (not counting the web site) as an alternative to existing 3rd party apps. And if they do, what will the makers of Twhirl, Tweetdeck and many others have to say about it.</p>
<p>Turns out, Twitter is already fostering some bad blood among its own developer community. Up until now, I think developers integrating Twitter APIs felt they had the franchise on building 3rd party, OS/Desktop/Mobile integrated apps. To see the service company now build/acquire apps and offer them as their own is sending the wrong message to developers. It says, &#8220;we appreciate you doing what you did and helping grow our user base to millions. Now let us take it from here&#8230;&#8221;. This is a dangerous message for a service providing company with an abundant platform like Twitter to send. </p>
<p>Members of the developer community have been voicing their opinions starting around Twitter&#8217;s developer event &#8220;Chirp&#8221; (see<br />
&#8220;<a href="http://www.nytimes.com/2010/04/12/technology/12twitter.html">Tensions Rise for Twitter and App Developers</a>&#8221; and &#8220;<a href="http://dvice.com/archives/2010/04/why-is-twitter.php">Why is Twitter suddenly making its own apps?</a>&#8220;) and you can see there&#8217;s something interesting brewing here. I&#8217;m interested to see how this pans out. While the &#8216;mashup&#8217; scene has all but faded over the past few years, building apps around 3rd party APIs remains hot. Other companies who have no intention to compete with their developers, as Twitter seems to be doing, will need to make it super clear to avoid potentially negative comparison.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chuckstar.com/blog/technology/twitter-making-its-own-apps-concerns-developers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Leaving Ribbit</title>
		<link>http://www.chuckstar.com/blog/technology/leaving-ribbit/</link>
		<comments>http://www.chuckstar.com/blog/technology/leaving-ribbit/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 18:18:42 +0000</pubDate>
		<dc:creator>chuckstar</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[Platform]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.chuckstar.com/blog/?p=507</guid>
		<description><![CDATA[I have left Ribbit to evangelize channel content and application development on the litl device. In a two part blog post, I would like to share with you the story of where I was and where I am going. [*] Where I was&#8230; 30 months ago, in April 2007, I walked into the door at [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Fleaving-ribbit%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Fleaving-ribbit%2F&amp;source=chuckstar&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>I have left <a href="http://www.ribbit.com">Ribbit</a> to evangelize channel content and application development on the <a href="http://www.litl.com">litl</a> device. In a two part blog post, I would like to share with you the story of where I was and where I am going.</p>
<p><a href="http://www.flickr.com/photos/visualistimages/3498842801/"><img src="http://www.chuckstar.com/blog/images/phone_future_2.gif" alt="Photo by Visualist Images www.visualistimages.com" /></a><a href="http://www.visualistimages.com">[*]</a></p>
<p><strong>Where I was&#8230;</strong></p>
<p>30 months ago, in April 2007, <a href="http://www.chuckstar.com/blog/?p=48">I walked into the door at Ribbit after leaving Yahoo!</a>. It was a risk. The startup was well into VC funding and had only built a team of just over a dozen talented, yet mostly executive employees. I had a one month old, and my wife and I were wondering how much longer we&#8217;d stay &#8216;re-located&#8217; away from Boston and in the Bay Area.</p>
<p>2 months later, in June 2007, I presented to Ribbit a vision to abstract some very unique internal APIs towards creating an outward facing Flex SDK and developer community around it. They approved, supported me, gave me budget, and I hired <a href="http://www.dougmccune.com">Doug McCune</a> and went to work. For 3 weeks, we coded to fine-tune methods (makeCall, getMessages), objects and events (incomingCall, newMessage). For me, this period would be the most exciting coding experience of my career, unlocking never-before-seen functionality to my fellow Flash developer community.</p>
<p>2 months later, in August 2007, I flew to Seattle and <a href="http://blogs.zdnet.com/Stewart/?p=495">presented the Ribbit Flex SDK for the first time at 360Flex</a>. The API introduced a dial tone to Flash Player, and for the first time, allowed developers to make phone calls, send messages and manage contacts from within their Flash and Flash applications. </p>
<p>In the year to follow, we launched the SDK, grew the platform community to over 6,000 developers, worked with <a href="http://www.infrared5.com">Infrared5</a> (<a href="http://www.bit-101.com/blog">Keith</a>, Chris and team) to get <a href="http://www.chuckstar.com/blog/?p=164">Flash Controls built</a>, and all this culminated when, in July 2008, <a href="http://www.insideria.com/2008/07/ribbit-is-acquired-by-british.html">Ribbit announced it was being acquired by BT</a>. As I revealed in my Flash on Tap presentation this past May, going through all the steps leading up to and surrounding the acquisition were extremely sensitive, nerve-racking, and so rewarding that I only hope my dearest colleagues and friends some day get to experience it.</p>
<p>My job at Ribbit became my 2nd longest stint at any company, and by far, my most successful career move to date. I am very proud of what I accomplished at Ribbit and what the company did together. These days, Ribbit&#8217;s focus has shifted and diversified. The novel Flash component that was once our centerpiece is now but a single offering in an array of quality and innovative SDK offerings based on a new RESTful platform. Ribbit has successfully launched their own applications, and now gears up to support both its own users/customers as well as its developers/customers looking to deploy Ribbit in their own applications.</p>
<p>In the 2.5 years I was there, I presented Ribbit to over 60 conference audiences, user groups and community gatherings. This year alone, I&#8217;ve flown 36 times, taken 10 long train rides and stayed in almost 20 different hotels. It takes a lot of dedication and passion to travel around the country and across the pond, promoting the virtues, innovation and excitement of your company.</p>
<p>My decision to leave Ribbit is based on mostly personal factors. I&#8217;ve found success working with <a href="http://www.insideria.com/2009/11/ria-radio-max-interviews---chu.html">Flash Platform technologies and the amazing developers in that community</a>. To successfully evangelize technology, <a href="http://www.robtoole.com/blog/?p=262#comment-27656">you need to both wrap your head AND your heart around it</a>. While I found it thrilling and interesting to enable dial tone and telephony development with Flash, the idea of doing this for other technologies just didn&#8217;t excite me as much.</p>
<p>To my colleagues at Ribbit, I wish you all luck as the company grows and continues to succeed. To my developer community at Ribbit (now over 16,000 strong), may the ever more diversified and stable platform provide all that you need to produce industry-leading, communications-enabled applications.</p>
<p>Lastly, in saying goodbye to the world of Ribbit, I am also closing a West Coast chapter in my life and career. Tomorrow, for the first time in 4.5 years, I will check into work at a Boston-based company. I&#8217;ll reveal details on my exciting move to <a href="http://www.litl.com"><strong>litl</strong></a> in my very next post&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chuckstar.com/blog/technology/leaving-ribbit/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Learning Silverlight in the dark</title>
		<link>http://www.chuckstar.com/blog/technology/learning-silverlight-in-the-dark/</link>
		<comments>http://www.chuckstar.com/blog/technology/learning-silverlight-in-the-dark/#comments</comments>
		<pubDate>Wed, 28 Oct 2009 16:51:34 +0000</pubDate>
		<dc:creator>chuckstar</dc:creator>
				<category><![CDATA[Platform]]></category>
		<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.chuckstar.com/blog/?p=472</guid>
		<description><![CDATA[Dear Microsoft, I&#8217;m a career long Flash designer and developer. I have used Flash Professional and Flash Builder (a.k.a. Flex Builder) just about equally now, over this time, which means I&#8217;ve spent about the same amount dragging/dropping/drawing symbols in Flash Pro as I have writing AS/MXML in an Eclipse environment. I&#8217;ve approached projects starting on [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Flearning-silverlight-in-the-dark%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Flearning-silverlight-in-the-dark%2F&amp;source=chuckstar&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>Dear Microsoft,</p>
<p>I&#8217;m a career long Flash designer and developer. I have used Flash Professional and Flash Builder (a.k.a. Flex Builder) just about equally now, over this time, which means I&#8217;ve spent about the same amount dragging/dropping/drawing symbols in Flash Pro as I have writing AS/MXML in an Eclipse environment. I&#8217;ve approached projects starting on both ends of the workflow, as a designer building a prototype, and as a developer applying code and framework to existing or non-existing designer assets.</p>
<p><a href="http://blogs.msdn.com/innov8showcase/archive/2009/10/19/ribbit-for-silverlight-r4sl-deep-dive-event.aspx">A recent new project</a> at my job prompted me to learn and begin working with your Silverlight products and platform. Here are my notes, some suffering points, some compliments, and overall suggestions for how to improve your relatively new process for building RIAs.</p>
<p>1. What&#8217;s with the extremely long install process? Why is it that in order to install Visual Studio, I had to download an .iso (not an .exe like most installable software), then burn it on to a write-able DVD, then install it? Is this a process that your existing customers have told you they enjoy? Even after the download and burn, which took several hours at Fios speed, the install process took nearly 3 hours by itself. That&#8217;s right. <strong>To install Visual Studio 2008 SP1 on Vista, it took way too long.</strong> [Visual Studio 2010 beta took even longer.]</p>
<p>2. After figuring out what Silverlight SDKs and toolkits I needed, and where to find them, I downloaded and installed each of them &#8212; another very long process. <strong>Upon launching VS 2008 and going to start a new Silverlight project, I was hit with a deadly show stopper.</strong> VS 2008 would prompt an error &#8220;Object reference not set to an instance of an object&#8221; and then crash.. each and every time. Now, I posed this issue to several of my &#8220;.Net expert&#8221; colleagues, and each assumed I was missing some aspect of the Silverlight SDK/Toolkit install process. Turns out I was not. After searching (via Google) for the error, I found a helpful hint on a random blog (<a href="http://geekswithblogs.net/ranganh/archive/2008/10/16/silverlight-2-visual-studio-2008---object-reference-not-set.aspx">GeekswithBlogs.net</a>) which gave me instructions to run something from the command prompt (devenv /resetskippkgs). After restarting Visual Studio 2008, this did the trick. Thankfully, and unfortunately, the issue covers Siverlight 2, although I experienced it working with Silverlight 3 as well. Now, this seemingly undocumented/unofficial &#8216;fix&#8217; was very hard to find, so I was left wondering if these are things the experienced C#, VS or Silverlight developer just knows&#8230;</p>
<p>3. This next one I can&#8217;t fault you on, but it was confusing to me nonetheless. <strong>Working with Dlls was very awkward to me.</strong> The concept that I need to not just import (using&#8230;) a namespace/class library, but literally install an &#8216;assembly&#8217; into my project seemed a bit strange to me. This process seems somewhat close to working with SWCs, but just a little beyond the bubble of what made sense to me. As a lifelong PC user, Dlls were always those library files that accompanied .exe&#8217;s when installing software on the PC. Now using them to add features, framework and tools to my project just seemed rather extensive. I realize this is a longtime standard practice, but for the newbie, was hard to wrap my head around initially. Perhaps some more documentation and examples on the what and why of this process would have helped.</p>
<p>4. I found out the hard way that the &#8216;Toolbox&#8217; in Visual Studio 2008 (and 2010) is useless. It just doesn&#8217;t do anything for me. Sure, <strong>I like all my available tools and Controls listed, but what good is dragging and dropping tools into my code if they don&#8217;t come with some initial properties for display, event handlers or other functionality?</strong> VS assumes I know how to work with the Control, which is far from the case. Furthermore, there seems to be no publicized Control browser/view, which helps me explore properties of the Control/tool, how to customize it, etc.</p>
<p>5. Along the same lines,<strong> I found out the hard way that the Silverlight authoring flow changed in the middle of my projects.</strong> When I first installed VS 2008 (and 2010), inline Design view was part of the workflow. Just like FlashBuilder (in Eclipse), I could toggle between code/source view and Design view, if only to validate that my app&#8217;s layout was right on. Aside from never really understanding nor getting the Design view in VS to work, it seems that option is now all together eliminated. Now, I must simultaneously run Expression Blend to work on my layout and validate in Design view. Why can&#8217;t I do this in the same IDE? Were folks complaining about performance or having too capable a single authoring environment?</p>
<p>5. Again, along these lines, the whole code behind thing was not new to me, but took a while to get used to in your environment. <strong>It just seems that having two classes, one for layout and one for code is a bit arbitrary, especially for simple applications and examples.</strong> This necessity, which I&#8217;m assuming goes back in time way before Silverlight, seems to add further dependency on the need to work with both Expression Blend and Visual Studio to get things done right. Now I realize that in the big firm, you may see it as design being done with one tool and code being done/added with another tool. But, for the one man band that is me, in this case, <strong>having two apps open, worse yet, THE SAME PROJECT open in two apps, is a very weird workflow</strong>. I had to get used to seeing &#8220;this file has changed in another application&#8221; way too much.</p>
<p>6. <strong>I got caught in the void between Silverlight 2 and 3.</strong> Looking for books and references online, it seems there is way more written and blogged about SL2. Yet, your site and everyone in your community tells me SL3 is now the defacto way to build SL applications. Why is there such a lag with getting new examples for SL3? I&#8217;m surprised that all those early adopters who put out SL2 examples are so behind in updating those to SL3. It&#8217;s hard for me to tell which SL2 examples to &#8216;trust&#8217;, not knowing really what does/doesn&#8217;t translate from SL2 to SL3. </p>
<p>7. One thing I like about working with Visual Studio is the ability to launch multiple instances of the app. <strong>With two screens, which I truly hope the average MSFT developer has, it makes it easy to compare code from multiple projects by viewing both at the same time. </strong></p>
<p>8. Another thing I like is the debug environment inherent in Visual Studio. <strong>Breakpoints are easy to work with and the stack dump is very easy to navigate when trying to figure out how to parse XML/JSON for the first time.</strong> It&#8217;s too bad that the IDE locks up (for me, anyway) when I&#8217;m in debug mode and that, upon stopping the debug process, I lose this stack as a reference when I&#8217;m further coding my app. Something tells me that there&#8217;s a way to sustain this view after debugging, but I haven&#8217;t figured it out yet.</p>
<p>10. While I have issues with the separation of <strong>Expression Blend</strong> functionality from Visual Studio, I do think <strong>it&#8217;s a very tightly designed product</strong>. The interface to toggle control layout, size, color, etc, is very clean and intuitive. It responds well, and generally, what I see in the IDE is what I get in the browser.</p>
<p>In closing, I realize that much of my issues may be a result of my not being a seasoned Microsoft and/or C# developer. Perhaps those familiar with your workflow and tools can find their way in and out of these shotgun issues much easier. I consider this, but then realize, aren&#8217;t you going after developers just like me? Aren&#8217;t you looking to give me a broader choice of tools and platform when I need to deploy a rich application? </p>
<p>Perhaps my situation is a bit different. As a platform evangelist, I&#8217;m not really evaluating your product, nor am I choosing what&#8217;s best, for my customers. Thankfully, for your case and mine, my customer , in this instance, is already your customer. In other words, we&#8217;re deploying a new SDK for your existing developers, so I&#8217;ve got to figure out not only how to develop in the Silverlight environment, but figure out best how our service fits in from both a practical and instructional perspective.</p>
<p>In closing, I hope what I wrote here helps you make your product better for your existing and future users. Don&#8217;t dumb things down on my account, but understand that not everyone installing (rather, waiting for the install process to complete so they can use) your tools knows them well enough to get themselves in and out of your workflow with ease. Lower the barrier of entry and you may appeal to, and more importantly, enable, a lot more folks. This may be hard for you, seeing as your existing and historic developer contingent has already adapted to what I think is a very hardcore centered developer process. Creative people need free flowing tools to put their ideas in motion. They need to express themselves in their own why, so you may not be able to &#8216;blend&#8217; it easily with what you already have.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chuckstar.com/blog/technology/learning-silverlight-in-the-dark/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Coding iPhone and Flash Mobile, back to back</title>
		<link>http://www.chuckstar.com/blog/technology/coding-iphone-and-flash-mobile-back-to-back/</link>
		<comments>http://www.chuckstar.com/blog/technology/coding-iphone-and-flash-mobile-back-to-back/#comments</comments>
		<pubDate>Fri, 14 Aug 2009 19:54:47 +0000</pubDate>
		<dc:creator>chuckstar</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[Platform]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.chuckstar.com/blog/?p=406</guid>
		<description><![CDATA[After spending the bulk of my &#8216;personal coding time&#8217; over the last 6 weeks on building my first iPhone game/application, I&#8217;ve moved on to another mobile coding platform. After 6 weeks of learning Objective C and Xcode (also my first time coding on a Mac), I&#8217;ve jumped back in time to a mobile platform called [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Fcoding-iphone-and-flash-mobile-back-to-back%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Fcoding-iphone-and-flash-mobile-back-to-back%2F&amp;source=chuckstar&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p><a href="http://farm3.static.flickr.com/2568/3819157493_f50d80bf6e.jpg"><img src="http://farm3.static.flickr.com/2568/3819157493_f50d80bf6e.jpg" alt="pool slide" /></a></p>
<p>After spending the bulk of my &#8216;personal coding time&#8217; over the last 6 weeks on building my first iPhone game/application, I&#8217;ve moved on to another mobile coding platform. After 6 weeks of learning Objective C and Xcode (also my first time coding on a Mac), I&#8217;ve jumped back in time to a mobile platform called Flash Lite. Pretty insane. It&#8217;s a mobile coding mind bender. The developer&#8217;s equivalent to a gender transformation.</p>
<p>These are completely different platforms, and the approach, &#8216;vibe&#8217; around them, and outcome couldn&#8217;t be anymore different.</p>
<p>With the iPhone, with each compile &#038; build, seeing and feeling the app load on a my sleek iPod Touch, I felt like I was an Olympic swimmer, making a sleek dive off a precision diving board into a crystal clear pool surrounded by people sunning themselves and drinking vibrant cocktails.</p>
<p>On the other side, cracking open Flash Professional, coding archaic ActionScript 2 and compiling into the Flash Lite simulator they call Device Central, the experience was much different. It feels like you&#8217;re climbing up those wet and slimy stairs of a pool slide, making your way down the insufficiently watered and windy curves, somewhat burning your skin on the sides of the dry plastic, before getting dumped into a pool of a few senior citizens floating on foam noodles and sort of applauding at me.</p>
<p>Strangely&#8230; I still really love the latter experience. Why? Because it feels unique and un-crowded. The stuff I&#8217;m doing <em>seems</em> far more untouched, less shiny, yet way more revolutionary. And the stuff I build with the latter process can be published to a comparatively infinite number of brands and devices. The same Flash Lite (FP6 level) .swf I coded co-exists on both a Chumby, as well as my <a href="http://www.adobe.com/devnet/devices/psp.html">Sony PSP</a>. (Pause for a second and imagine that. Two companies, produce two devices, meant for a much different purpose and market. Yet, they are bound by a common mobile platform that tells me, the developer, that I can WRITE ONCE!] I haven&#8217;t even tried my Flash Lite app on actual mobile phones yet. The thing is&#8230; I don&#8217;t need to. I know what I&#8217;ve done and accomplished. Feels good.</p>
<p>The app I built will be demo&#8217;d at http://developer.ribbit.com/blog in the near future.</p>
<p>While the process still needs a lot of help, I can see how Flash Lite (soon to be much grandeur Flash Mobile development) still has a huge place in this mobile application movement. And now that I&#8217;ve had my moment with Flash mobile coding, it&#8217;s back to iPhone to build another app that I hope thousands will enjoy &#8212; at Apple&#8217;s discretion, of course!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chuckstar.com/blog/technology/coding-iphone-and-flash-mobile-back-to-back/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Why don&#8217;t we see more platform technology roadmaps?</title>
		<link>http://www.chuckstar.com/blog/technology/why-dont-we-see-more-platform-technology-roadmaps/</link>
		<comments>http://www.chuckstar.com/blog/technology/why-dont-we-see-more-platform-technology-roadmaps/#comments</comments>
		<pubDate>Fri, 17 Jul 2009 18:17:17 +0000</pubDate>
		<dc:creator>chuckstar</dc:creator>
				<category><![CDATA[Platform]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.chuckstar.com/blog/?p=352</guid>
		<description><![CDATA[Why don&#8217;t more technology platforms have published roadmaps? A product roadmap, in this case for a company&#8217;s platform offering, would be a detailed list of fixes and new features in upcoming releases/revisions of the platform. In its most comprehensive and impressive form, the roadmap will include future release dates, version numbers and even advanced documentation [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Fwhy-dont-we-see-more-platform-technology-roadmaps%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.chuckstar.com%2Fblog%2Ftechnology%2Fwhy-dont-we-see-more-platform-technology-roadmaps%2F&amp;source=chuckstar&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p><a href="http://www.flickr.com/photos/peterdenton/2219018911/in/photostream/"><img src="http://www.chuckstar.com/blog/wp-content/uploads/2009/07/roadmap.jpg" alt="Platform Roadmap" /></a></p>
<p>Why don&#8217;t more technology platforms have published roadmaps? A product roadmap, in this case for a company&#8217;s platform offering, would be a detailed list of fixes and new features in upcoming releases/revisions of the platform. In its most comprehensive and impressive form, the roadmap will include future release dates, version numbers and even advanced documentation on method signature and event changes.</p>
<p>The benefits of a published roadmap could be beneficial to both the company and the developer/user community. Yet, it&#8217;s a rare thing to see a roadmap of features available for your platform of choice. Here are 5 possible reasons that a company (or engineering team) wouldn&#8217;t publish roadmaps:</p>
<p>1. <em><strong>The company doesn&#8217;t know or plan releases.</strong></em> Amongst platforms that I would love to view roadmaps of, I really hope and doubt this is the case. How could a company not know what they are working on in terms of new platform features or fixes? I suppose there has to be some out there that wouldn&#8217;t publish a roadmap for this reason, but it&#8217;s got to be the last possible reason.</p>
<p>2. <em><strong>The company has low confidence in engineering team.</strong></em> Probably and sadly a bit closer to reality, the company may have a tough time keeping to previously released schedules and as a result, has little confidence in its engineering team to deliver on time. There are other factors in the release process such as sufficient resources, timely QA, scope creep and such. Still, to find yourself in this situation is not good.</p>
<p>3. <em><strong>Admission of guilt.</strong></em> If you publish a list of &#8216;bugs to be fixed&#8217; too soon, it may show how many flaws there really are in an existing release and force your users/community to lose confidence in the current (and possibly future) release of the platform.</p>
<p>4. <em><strong>The company fears competition will steal their thunder.</strong></em> I&#8217;d like to think this is the most frequent reason you don&#8217;t release a roadmap. Should you announce your plans to early, via a published roadmap, of ground-breaking new features, you may open the door for your competition to take on those tasks as well. Keeping new features close to your vest can prevent this.</p>
<p>5. <em><strong>Avoid hesitancy of adoption.</strong></em> If the roadmap were to reveal new features or easier/improved ways of doing things, the community may hold off adoption awaiting the better release thus slowing adoption and growth of community.</p>
<p>Again, I think even with these reasons/excuses, companies should make every effort to publish their platform roadmaps. Your users are vital and likely high spirited about your product offering. Keep them in the loop about your upcoming releases, solicit feedback when possible and give them a chance to tell you what should be fixed/improved/added in your next release.</p>
<p><strong>Do you know of any good platform roadmaps out there?</strong><br />
<strong>Ask your platform company of choice why they don&#8217;t publish their roadmaps.</strong></p>
<p>As a platform user and evangelist, I want to see more!</p>
<p>For reference, here&#8217;s a great example of a platform roadmap: <a href="http://source.android.com/roadmap">http://source.android.com/roadmap</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.chuckstar.com/blog/technology/why-dont-we-see-more-platform-technology-roadmaps/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

