<?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>Appcelerant &#187; Product Updates</title>
	<atom:link href="http://www.appcelerant.com/category/product-updates/feed" rel="self" type="application/rss+xml" />
	<link>http://www.appcelerant.com</link>
	<description>Appcelerator blog focused on helping you build your next killer mobile, desktop and web based applications</description>
	<lastBuildDate>Thu, 24 Jun 2010 17:43:53 +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>Appcelerator Remote Routes for Service Integration</title>
		<link>http://www.appcelerant.com/appcelerator-remote-routes-for-service-integration.html</link>
		<comments>http://www.appcelerant.com/appcelerator-remote-routes-for-service-integration.html#comments</comments>
		<pubDate>Mon, 06 Oct 2008 02:41:54 +0000</pubDate>
		<dc:creator>Andrew Zuercher</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[Developer Spotlight]]></category>
		<category><![CDATA[Product Updates]]></category>

		<guid isPermaLink="false">http://www.appcelerant.com/?p=87</guid>
		<description><![CDATA[Problem definition
A few weeks ago i started a thread on the Appcelerator development network about remote routes.  The thread got a bit of attention and ultimately meant different things to different people.
web 1.0 transformations
When I get in front of customers today that have an existing web solution in place, they tend to ask some [...]<script type="text/javascript">SHARETHIS.addEntry({ title: "Appcelerator Remote Routes for Service Integration", url: "http://www.appcelerant.com/appcelerator-remote-routes-for-service-integration.html" });</script>]]></description>
			<content:encoded><![CDATA[<p></p><h2>Problem definition</h2>
<p>A few weeks ago i started a thread on the Appcelerator development network about <a href="http://www.appcelerator.org/group?id=9&#038;topic=443#post=3040">remote routes</a>.  The thread got a bit of attention and ultimately meant different things to different people.</p>
<h3>web 1.0 transformations</h3>
<p>When I get in front of customers today that have an existing web solution in place, they tend to ask some simple questions:</p>
<ul>
<li>What do I have to do to implement a service in &lt;backend framework&gt;?</li>
<li>I&#8217;ve already got a bunch of web services, can I use them as is?</li>
<li>My website has a traditional web 1.0 implementation, will i have to throw away and start over?</li>
</ul>
<p>Primary focus: cost to implement seems to be the main chasm for them to hurdle.</p>
<h3>REST zealots</h3>
<p>A bunch of the developers out there are jazzed about building <a href="http://en.wikipedia.org/wiki/Representational_State_Transfer">RESTfull</a> services to remotely expose an endpoint for integration.  Re-using these endpoints is a natural fit for them and paramount to their needs.</p>
<p>Primary focus: A clean single place to define their services.</p>
<h3>back end framework architects</h3>
<p>Then there are the framework guys that are out there that have the need to add Appcelerator to extend their portfolio.  Recently I helped out with implementing an Appcelerator service for <a href="http://grails.org/">grails</a>.  To facilitate the framework integration I write a similar service broker in grails much akin to what we have done for the other platforms.  The controller would discover the Appcelerator services written in grails and then invoke them directly.  The downside is that:</p>
<ul>
<li>grails developers like to integrate at the controller level and not the service level</li
<li>grails itself makes responding to and rendering JSON very easy</li>
<li>grails already has routing and discovery built into the framework</li>
</ul>
<p>Primary focus: not duplicating existing framework functionality in a way that is consistent with their architecture</p>
<h2>Previous approaches</h2>
<p>In the past I&#8217;ve prescribed a 4-tiered strategy for those that are out there that are interested in integrating their existing application using Appcelerator;</p>
<ul>
<li>create new Appcelerator-specific remote services that reuse existing code inline if possible</li>
<li>use an ESB to route to your existing services</li>
<li>use the <a href="http://doc.appcelerator.org/reference/widget_reference/app_http.html">app:http</a> written by <a href="http://www.appcelerator.org/profile?id=32">Mr. Hashemi</a> as mash-up in the client
<li>do not use remote services, but allow Appcelerator to add richness to your application locally in the browser</li>
</ul>
<h2>Solution</h2>
<p>Instead of writing remote services that are Appcelerator specific and restrictive, an implicit contract is adhered to.  This means that back end services can be written in any language or platform so long as they are able to consume and render in an approved format (for example &#8216;application/json&#8217;).  </p>
<h3>Traditional</h3>
<p>Here is a simple example for a traditional service.</p>

<div class="wp_syntax"><div class="code"><pre class="ruby"><span style="color:#9966CC; font-weight:bold;">class</span> MyService <span style="color:#006600; font-weight:bold;">&lt;</span> <span style="color:#6666ff; font-weight:bold;">Appcelerator::Service</span>
  Service <span style="color:#996600;">'order.create.request'</span>, <span style="color:#ff3333; font-weight:bold;">:create_order</span>, <span style="color:#996600;">'order.create.response'</span>
&nbsp;
  <span style="color:#9966CC; font-weight:bold;">def</span> create_order
    order = Order.<span style="color:#9900CC;">new</span><span style="color:#006600; font-weight:bold;">&#40;</span>params<span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#996600;">&quot;amount&quot;</span><span style="color:#006600; font-weight:bold;">&#93;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
	order.<span style="color:#9900CC;">save</span>
    <span style="color:#006600; font-weight:bold;">&#123;</span><span style="color:#996600;">'success'</span><span style="color:#006600; font-weight:bold;">=&gt;</span>true, <span style="color:#996600;">'id'</span><span style="color:#006600; font-weight:bold;">=&gt;</span>order.<span style="color:#9900CC;">id</span><span style="color:#006600; font-weight:bold;">&#125;</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<h3>Using remote routes</h3>
<p>And now we make use of controllers as well as remote routes.  Here is the controller</p>

<div class="wp_syntax"><div class="code"><pre class="ruby"><span style="color:#9966CC; font-weight:bold;">class</span> OrderController <span style="color:#006600; font-weight:bold;">&lt;</span> ApplicationController
  <span style="color:#9966CC; font-weight:bold;">def</span> create
    order = Order.<span style="color:#9900CC;">new</span><span style="color:#006600; font-weight:bold;">&#40;</span>params<span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#996600;">&quot;amount&quot;</span><span style="color:#006600; font-weight:bold;">&#93;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
    order.<span style="color:#9900CC;">save</span>
    respond_to <span style="color:#9966CC; font-weight:bold;">do</span> <span style="color:#006600; font-weight:bold;">|</span>format<span style="color:#006600; font-weight:bold;">|</span>
       <span style="color:#CC0066; font-weight:bold;">format</span>.<span style="color:#9900CC;">json</span> <span style="color:#006600; font-weight:bold;">&#123;</span> render <span style="color:#ff3333; font-weight:bold;">:json</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#006600; font-weight:bold;">&#123;</span>:success <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#0000FF; font-weight:bold;">true</span>, <span style="color:#ff3333; font-weight:bold;">:id</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> order.<span style="color:#9900CC;">id</span><span style="color:#006600; font-weight:bold;">&#125;</span> <span style="color:#006600; font-weight:bold;">&#125;</span>
    <span style="color:#9966CC; font-weight:bold;">end</span>
  <span style="color:#9966CC; font-weight:bold;">end</span>
<span style="color:#9966CC; font-weight:bold;">end</span></pre></div></div>

<p>And now in the client we include the following in our javascript (there are a ton of ways to implement this, but here is an example for now)</p>

<div class="wp_syntax"><div class="code"><pre class="javascript">	$MQR<span style="color: #66cc66;">&#40;</span><span style="color: #3366CC;">'r:create.order.request'</span>,<span style="color: #3366CC;">'/order/create'</span>,<span style="color: #3366CC;">'post'</span>,
	<span style="color: #3366CC;">'r:create.order.response'</span><span style="color: #66cc66;">&#41;</span>;</pre></div></div>

<h2>trade offs</h2>
<table class="mytable" cellspacing="0" callpadding="0">
<tr style="background-color:gray;">
<th style="padding:5px;border-left: thin solid black;border-top: thin solid black;border-bottom: thin solid black">Item</th>
<th style="padding:5px;border-left: thin solid black;border-top: thin solid black;border-bottom: thin solid black">Remote Routes</th>
<th style="padding:5px;border-left: thin solid black;border-top: thin solid black;border-bottom: thin solid black">Appcelerator Service</th>
<th style="padding:5px;border-left: thin solid black;border-top: thin solid black;border-bottom: thin solid black;border-right: thin solid black">app:http</th>
</tr>
<tr style="">
<td style="padding:5px;">Web controllers</td>
<td style="padding:5px;">Yes</td>
<td style="padding:5px;">No, must be appcelerator services.</td>
<td style="padding:5px;">Yes</td>
</tr>
<tr style="background-color:lightgray">
<td style="padding:5px;">Message Mapping</td>
<td style="padding:5px;">Yes, client side as javascript to define routes.  Concise and not too terribly tedious and can be done in exactly one place.</td>
<td style="padding:5px;">Server side using annotations to map methods to message types.</td>
<td style="padding:5px;">Yes, client side widget declarations per message type.</td>
</tr>
<tr style="">
<td style="padding:5px;">Message Multiplexing</td>
<td style="padding:5px;">One-2-One: a given request message is associated with a single response message and are processed one at a time.</td>
<td style="padding:5px;">Many-2-Many: this is a big upside for the existing service brokers is that groups of messages can be delivered to the back end at a given time and different types of messages can respond to them</td>
<td style="padding:5px;">One-2-One: a given request message is associated with a single response message and are processed one at a time.</td>
</tr>
<tr style="background-color:lightgray">
<td style="padding:5px;">Service Endpoints</td>
<td style="padding:5px;">Multiple can be supported, the target url is an aspect of the message mapping</td>
<td style="padding:5px;">Fixed, all requests go through specifically one exposed endpoint (service broker)</td>
<td style="padding:5px;">Multiple can be supported, the target url is an aspect of the message mapping</td>
</tr>
<tr style="">
<td style="padding:5px;">External Services</td>
<td style="padding:5px;">Yes</td>
<td style="padding:5px;">No</td>
<td style="padding:5px;">Yes</td>
</tr>
<tr style="background-color:lightgray">
<td style="padding:5px;">Serialization</td>
<td style="padding:5px;">Up to back end service to implementor</td>
<td style="padding:5px;">Appcelerator remote service takes care of it for you</td>
<td style="padding:5px;">Up to back end service to implementor</td>
</tr>
</table>
<p><br/></p>
<h2 style="margin-top:10px">Wrap up</h2>
<p>Understanding the trade-offs for the different service routing opportunities should be considered when you architect your solution.  At the core of it, Appcelerator provides you with options and leaves that decision up to you, empowering you to make that choice for yourself.</p>
<p>
this article cross posted at <a href="http://blog.zuerchtech.com/2008/10/05/appcelerator-remote-routes-for-service-integration/">http://blog.zuerchtech.com/2008/10/05/appcelerator-remote-routes-for-service-integration/</a></p>
<p><a href="http://sharethis.com/item?&wp=2.8.4&amp;publisher=fb25d17b-38b5-47ed-9857-f171051e9899&amp;title=Appcelerator+Remote+Routes+for+Service+Integration&amp;url=http%3A%2F%2Fwww.appcelerant.com%2Fappcelerator-remote-routes-for-service-integration.html">ShareThis</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.appcelerant.com/appcelerator-remote-routes-for-service-integration.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Gears powered Appcelerator</title>
		<link>http://www.appcelerant.com/google-gears-powered-appcelerator.html</link>
		<comments>http://www.appcelerant.com/google-gears-powered-appcelerator.html#comments</comments>
		<pubDate>Thu, 05 Jun 2008 04:53:47 +0000</pubDate>
		<dc:creator>Jeff Haynie</dc:creator>
				<category><![CDATA[Product Updates]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[appcelerator]]></category>
		<category><![CDATA[gears]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://www.appcelerant.com/?p=61</guid>
		<description><![CDATA[We have recently committed the first stab at a google-gears enabled Appcelerator SDK.  Google Gears (now just called &#8220;Gears&#8221;) is a really awesome browser plugin that gives you some out-of-process Javascript capabilities like offline and multithreading via worker pools.
With the next release of the SDK, Appcelerator&#8217;s javascript servicebroker will now automagically (and transparently) switch [...]<script type="text/javascript">SHARETHIS.addEntry({ title: "Google Gears powered Appcelerator", url: "http://www.appcelerant.com/google-gears-powered-appcelerator.html" });</script>]]></description>
			<content:encoded><![CDATA[<p></p><p>We have recently committed the first stab at a google-gears enabled Appcelerator SDK.  <a href="http://gears.google.com/">Google Gears</a> (now just called &#8220;Gears&#8221;) is a really awesome browser plugin that gives you some out-of-process Javascript capabilities like offline and multithreading via worker pools.</p>
<p>With the next release of the SDK, Appcelerator&#8217;s javascript servicebroker will now automagically (and transparently) switch to using a Gears-enabled servicebroker when talking to your service-backend.  That means your application will perform faster because the AJAX communication between client and server (especially for apps using fast polling) will be out-of-process using Gears&#8217; worker pool.</p>
<p>You have to do nothing to enable this in your application.  When you Appcelerator application loads, a small piece of code will check to see if Gears is enabled and will dynamically load the gears-enabled servicebroker code.</p>
<p><a href="http://sharethis.com/item?&wp=2.8.4&amp;publisher=fb25d17b-38b5-47ed-9857-f171051e9899&amp;title=Google+Gears+powered+Appcelerator&amp;url=http%3A%2F%2Fwww.appcelerant.com%2Fgoogle-gears-powered-appcelerator.html">ShareThis</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.appcelerant.com/google-gears-powered-appcelerator.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Running Appcelerator on the Google App Engine</title>
		<link>http://www.appcelerant.com/running-appcelerator-on-the-google-app-engine.html</link>
		<comments>http://www.appcelerant.com/running-appcelerator-on-the-google-app-engine.html#comments</comments>
		<pubDate>Thu, 10 Apr 2008 01:40:08 +0000</pubDate>
		<dc:creator>Mark Luffel</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[Product Updates]]></category>

		<guid isPermaLink="false">http://www.appcelerant.com/running-appcelerator-on-the-google-app-engine.html</guid>
		<description><![CDATA[We know you&#8217;re excited about Google&#8217;s App Engine. How can you help it? If the opportunity to run your apps on a 20,000 terabyte per day cloud computer isn&#8217;t enough, certainly the ability to run Python on that cloud must be!
We were excited too, we admit. So yesterday we started porting our existing python server-side [...]<script type="text/javascript">SHARETHIS.addEntry({ title: "Running Appcelerator on the Google App Engine", url: "http://www.appcelerant.com/running-appcelerator-on-the-google-app-engine.html" });</script>]]></description>
			<content:encoded><![CDATA[<p></p><p>We know you&#8217;re excited about Google&#8217;s App Engine. How can you help it? If the opportunity to run your apps on a <a href="http://www.techcrunch.com/2008/01/09/google-processing-20000-terabytes-a-day-and-growing/">20,000 terabyte per day</a> cloud computer isn&#8217;t enough, certainly the ability to run Python on that cloud must be!</p>
<p>We were excited too, we admit. So yesterday we started porting our existing python server-side code to the App Engine, and today we&#8217;re releasing it through our <a href="http://www.appcelerator.org">developer network</a>. This afternoon we ported <a href="http://www.vijedi.net/gallery/main.php/v/misc_tejus_sonali_and_friends/P1000196.JPG.html">Tejus&#8217;s</a> appTunes demo to the App Engine and deployed it at <a href="http://apptunes.appspot.com">http://apptunes.appspot.com</a>.</p>
<p>So, how can you be incredibly hip too?</p>
<p>First, download and install <a href="http://www.python.org/download/">Python 2.5</a>, the <a href="http://code.google.com/appengine/downloads.html">App Engine SDK</a>, and the <a href="http://www.appcelerator.org/download">Appcelerator SDK</a>.</p>
<p>Now, make yourself a project and launch it locally (replacing myapp with your project&#8217;s name)</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="bash">app create:project . myapp appengine
<span style="color: #7a0874; font-weight: bold;">cd</span> myapp
app run:project</pre></td></tr></table></div>

<p>If this is your first time on the developer network, you&#8217;ll need to enter your login.</p>
<p>If everything installed correctly you will see a bunch of logging info ending with:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash">Running application myapp on port <span style="color: #000000;">8080</span>: http:<span style="color: #000000; font-weight: bold;">//</span>localhost:<span style="color: #000000;">8080</span></pre></td></tr></table></div>

<p>Like the other Appcelerator backends, you can find your message handlers in <em>app/services/</em>. So, go digest the <a href="http://code.google.com/appengine/docs/">App Engine documentation</a> and write something great. Once you&#8217;re ready to send your app to the cloud just run:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash">app deploy:project</pre></td></tr></table></div>

<p>This will ask you for your App Engine account info, and then upload your project.</p>
<p>We&#8217;re putting together a <a href="http://www.appcelerator.org/static/screencasts/appengine.swf" title="Appcelerator on Google App Engine Screencast" target="_blank">screencast</a> of this, and now that I&#8217;ve finished futzing with Windows command-line problems for this integration, maybe I&#8217;ll get some time to learn the <a href="http://code.google.com/appengine/docs/datastore/">Datastore API</a>.</p>
<p>And now, a message from our sponsors:</p>
<p>In the spirit of open source and shared learning, we&#8217;d like to acknowledge a few key pieces that we put together to make this demo application that Tejus built happen:</p>
<ul>
<li>Doug McCune for his super bad ass <a href="http://dougmccune.com/blog/2007/11/03/coverflow-flex-component/">CoverFlow Flex Component</a>.  We&#8217;ve used the Appcelerator Widget API to widgetize this flex widget and allow it to be both declaratively added to markup and the power of Appcelerator&#8217;s Web Expression Language to add remoting capabilities for data binding. This also shows off the power of using Appcelerator + Adobe&#8217;s Flex bridge to get the best of both worlds.</li>
<li><a href="http://jssoundkit.sourceforge.net/">JS Sound Kit</a> for the streaming audio for playing the MP3s.  Again, we built this as a reusable widget.</li>
<li><a href="http://www.jamendo.com/en/">Jamendo</a> and the independent artists for the awesome, DRM-free music and cool looking coverart.</li>
</ul>
<p>Tech Tags: <a href="http://technorati.com/tag/appcelerator" rel="tag">appcelerator</a> <a href="http://technorati.com/tag/ajax" rel="tag">ajax</a> <a href="http://technorati.com/tag/flex" rel="tag">flex</a> <a href="http://technorati.com/tag/appengine" rel="tag">appengine</a> <a href="http://technorati.com/tag/google" rel="tag">google</a> <a href="http://technorati.com/tag/ria" rel="tag">ria</a> <a href="http://technorati.com/tag/javascript" rel="tag">javascript</a> <a href="http://technorati.com/tag/opensource" rel="tag">opensource</a></p>
<p><a href="http://sharethis.com/item?&wp=2.8.4&amp;publisher=fb25d17b-38b5-47ed-9857-f171051e9899&amp;title=Running+Appcelerator+on+the+Google+App+Engine&amp;url=http%3A%2F%2Fwww.appcelerant.com%2Frunning-appcelerator-on-the-google-app-engine.html">ShareThis</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.appcelerant.com/running-appcelerator-on-the-google-app-engine.html/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Sneak peek at Appcelerator 2.1 features</title>
		<link>http://www.appcelerant.com/sneak-peek-at-appcelerator-21-features.html</link>
		<comments>http://www.appcelerant.com/sneak-peek-at-appcelerator-21-features.html#comments</comments>
		<pubDate>Thu, 28 Feb 2008 18:05:28 +0000</pubDate>
		<dc:creator>Amro Mousa</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[Product Updates]]></category>
		<category><![CDATA[Features]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Release]]></category>

		<guid isPermaLink="false">http://www.appcelerant.com/sneak-peek-at-appcelerator-21-features.html</guid>
		<description><![CDATA[So we managed to sneak one additional feature into the upcoming Appcelerator 2.1 release.  Those of you developing for the iPhone will be pleased to know that we added a new condition &#8211; &#8216;orientationchange&#8217; &#8211; so you can handle the origintationchanged event on the iPhone in an on-expression.  How cool is that? Very. [...]<script type="text/javascript">SHARETHIS.addEntry({ title: "Sneak peek at Appcelerator 2.1 features", url: "http://www.appcelerant.com/sneak-peek-at-appcelerator-21-features.html" });</script>]]></description>
			<content:encoded><![CDATA[<p></p><p>So we managed to sneak one additional feature into the upcoming <a href="http://appcelerator.org">Appcelerator</a> 2.1 release.  Those of you developing for the iPhone will be pleased to know that we added a new condition &#8211; &#8216;orientationchange&#8217; &#8211; so you can handle the origintationchanged event on the iPhone in an on-expression.  How cool is that? Very.  So throw this onto the pile with the new build process, project command line tools, the eclipse plugin/ide (written by Mark Luffel), the developer network (it&#8217;s slick &#8212; just wait&#8217;ll you see it), and a ton of little features and fixes all over the place.  Not to mention improvements to a bunch of the widgets (like the datatable which now supports custom formatter functions, sticky sort, etc.).</p>
<p><a href="http://sharethis.com/item?&wp=2.8.4&amp;publisher=fb25d17b-38b5-47ed-9857-f171051e9899&amp;title=Sneak+peek+at+Appcelerator+2.1+features&amp;url=http%3A%2F%2Fwww.appcelerant.com%2Fsneak-peek-at-appcelerator-21-features.html">ShareThis</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.appcelerant.com/sneak-peek-at-appcelerator-21-features.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RIA Developer Beta 2 is available</title>
		<link>http://www.appcelerant.com/ria-developer-beta-2-is-available.html</link>
		<comments>http://www.appcelerant.com/ria-developer-beta-2-is-available.html#comments</comments>
		<pubDate>Fri, 08 Feb 2008 08:01:46 +0000</pubDate>
		<dc:creator>Jeff Haynie</dc:creator>
				<category><![CDATA[Product Updates]]></category>

		<guid isPermaLink="false">http://www.appcelerant.com/ria-developer-beta-2-is-available.html</guid>
		<description><![CDATA[We&#8217;ve made another update to the RIA Developer product and beta 2 is now available. The official release number is 0.9.1 and it&#8217;s available from our Eclipse update site at http://updates.appcelerator.org.
We&#8217;ve made 2 small fixes in this release worth noting:

Fixed a bug that would prevent downloading on windows (due to a missing win32 jar)
Fixed a [...]<script type="text/javascript">SHARETHIS.addEntry({ title: "RIA Developer Beta 2 is available", url: "http://www.appcelerant.com/ria-developer-beta-2-is-available.html" });</script>]]></description>
			<content:encoded><![CDATA[<p></p><p>We&#8217;ve made another update to the RIA Developer product and beta 2 is now available. The official release number is 0.9.1 and it&#8217;s available from our Eclipse update site at <a href="http://updates.appcelerator.org">http://updates.appcelerator.org</a>.</p>
<p>We&#8217;ve made 2 small fixes in this release worth noting:</p>
<ul>
<li>Fixed a bug that would prevent downloading on windows (due to a missing win32 jar)</li>
<li>Fixed a bug in the 2.0.2 SDK (project creation would always hang)</li>
</ul>
<p>However, this release also contains one major change: licensing.  We&#8217;ve decided going forward that the RIA Developer product will be licensed under the <a href="http://www.gnu.org/licenses/gpl-3.0.html/">GNU Public License (GPL), version 3.0</a> or later.  </p>
<p>It also worth noting that we&#8217;ve updated some minor text to come into full compliance with our license agreement with <a href="http://www.aptana.com">Aptana</a>.  If you don&#8217;t know, RIA Developer is &#8220;Powered by Aptana&#8221;.   Aptana is a great product.</p>
<p>What&#8217;s up next?</p>
<p>We&#8217;re going to be finalizing the product as we ready the 2.1 release that&#8217;s under final development testing.  We also will be incorporating the new capability in 2.1 that will allow us to incorporate full round-trip debugging in Eclipse.  This will allow you to create applications, make changes in either your HTML or in your services, and then step through server code real-time.</p>
<p>We hope to complete our initial release for RIA Developer by the end of the month.</p>
<p><a href="http://sharethis.com/item?&wp=2.8.4&amp;publisher=fb25d17b-38b5-47ed-9857-f171051e9899&amp;title=RIA+Developer+Beta+2+is+available&amp;url=http%3A%2F%2Fwww.appcelerant.com%2Fria-developer-beta-2-is-available.html">ShareThis</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.appcelerant.com/ria-developer-beta-2-is-available.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2.0.2 is now available</title>
		<link>http://www.appcelerant.com/202-is-now-available.html</link>
		<comments>http://www.appcelerant.com/202-is-now-available.html#comments</comments>
		<pubDate>Thu, 20 Dec 2007 23:10:56 +0000</pubDate>
		<dc:creator>Nolan Wright</dc:creator>
				<category><![CDATA[Product Updates]]></category>

		<guid isPermaLink="false">http://www.appcelerant.com/202-is-now-available.html</guid>
		<description><![CDATA[The 2.0.2 maintenance release is now available at: http://www.appcelerator.org
You can find the full release notes for changes at:
http://www.appcelerator.org/release_notes_2.0.2.html 
Summary of new features:
1. Panel Widget
Allows you to easily create pre-styled panels.  This widget has
several options:
- display a header with a title
- display a close button
- display a shading button (hide/show the panel content)
- use rounded [...]<script type="text/javascript">SHARETHIS.addEntry({ title: "2.0.2 is now available", url: "http://www.appcelerant.com/202-is-now-available.html" });</script>]]></description>
			<content:encoded><![CDATA[<p></p><p>The 2.0.2 maintenance release is now available at: <a href="http://www.appcelerator.org">http://www.appcelerator.org</a></p>
<p>You can find the full release notes for changes at:<br />
<a href="http://www.appcelerator.org/release_notes_2.0.2.html">http://www.appcelerator.org/release_notes_2.0.2.html </a></p>
<p>Summary of new features:</p>
<p><b style="color:#333">1. Panel Widget</b></p>
<p>Allows you to easily create pre-styled panels.  This widget has<br />
several options:<br />
- display a header with a title<br />
- display a close button<br />
- display a shading button (hide/show the panel content)<br />
- use rounded corners<br />
- display as a quote box<br />
- display with no header (just a plain panel)</p>
<p><b style="color:#333">2. Http Widget</b></p>
<p>This is a powerful widget that allows you to access server resources<br />
by URI.  You can access third-party APIs like Google and Yahoo or<br />
access your existing services.  This widget effectively allows you to<br />
use the Appcelerator RIA SDK without using Appcelerator Services.  It<br />
also allows you to easily create composite applications (i.e., an app<br />
that pulls data from multiple sources).</p>
<p><b style="color:#333">3. Box Widget</b></p>
<p>This is a layout widget that allows you to layout elements<br />
horizontally or vertically.</p>
<p><b style="color:#333">4. Button Widget</b></p>
<p>Allows you to easily create pre-styled buttons.  The Button widget<br />
also supports a hover mode and a disabled mode.</p>
<p><b style="color:#333">5. Search Widget</b></p>
<p>Allows you to have a &#8220;search-as-you-type&#8221; style combo box.</p>
<p><b style="color:#333">6. if Widget</b></p>
<p>Allows you to add conditional logic to your applications.  This is<br />
particularly useful when used in conjunction with the iterator widget<br />
when you need to conditionally display row data.</p>
<p><b style="color:#333">7. Progress Bar Widget</b></p>
<p>This widget was contributed by Martin Robinson (thanks Martin!).  I<br />
think the name of this widget adequately describes its function.</p>
<p><b style="color:#333">8. Resizable Attribute</b></p>
<p>Add resizable=&#8221;true&#8221; to images and DIVs to make them resizable.</p>
<p><b style="color:#333">9. Ruby Improvements</b></p>
<p>Method signatures are no longer required for service methods.  Added the<br />
ability to add logic that gets executed before and after each service<br />
call.  See the Ruby Getting Started docs for more information.</p>
<p><b style="color:#333">10. .NET Logging Improvements</b></p>
<p>Added support for multiple logging levels and a auto-flush buffer.<br />
These can be configured via the appcelerator-config.xml file.  See<br />
the .NET Getting Started docs for more information.</p>
<p>We will now begin work on  Release 2.1 with a target release date of<br />
1/25/2008.   If you would like to see any specific items addressed or<br />
features considered, please let us know. You can also directly open<br />
issues or feature requests by visiting <a href="http://jira.appcelerator.org">http://jira.appcelerator.org</a>.</p>
<p><a href="http://sharethis.com/item?&wp=2.8.4&amp;publisher=fb25d17b-38b5-47ed-9857-f171051e9899&amp;title=2.0.2+is+now+available&amp;url=http%3A%2F%2Fwww.appcelerant.com%2F202-is-now-available.html">ShareThis</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.appcelerant.com/202-is-now-available.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>2.0.1 is now available</title>
		<link>http://www.appcelerant.com/201-is-now-available.html</link>
		<comments>http://www.appcelerant.com/201-is-now-available.html#comments</comments>
		<pubDate>Tue, 20 Nov 2007 04:04:11 +0000</pubDate>
		<dc:creator>Jeff Haynie</dc:creator>
				<category><![CDATA[Product Updates]]></category>

		<guid isPermaLink="false">http://www.appcelerant.com/201-is-now-available.html</guid>
		<description><![CDATA[The 2.0.1 maintenance release is now available at http://www.appcelerator.org/download.html.
You can find the full release notes for changes at
http://www.appcelerator.org/release_notes_2.0.1.html
The main summary of new features are:
- .NET service support
- Python service support
- PHP service support expanded to support PHP4
- New widgets: calendar and pagination
- Reimplemented modules to better utilizes direct function calling vs. building via strings
We also [...]<script type="text/javascript">SHARETHIS.addEntry({ title: "2.0.1 is now available", url: "http://www.appcelerant.com/201-is-now-available.html" });</script>]]></description>
			<content:encoded><![CDATA[<p></p><p>The 2.0.1 maintenance release is now available at <a href="http://www.appcelerator.org/download.html">http://www.appcelerator.org/download.html</a>.</p>
<p>You can find the full release notes for changes at<br />
<a href="http://www.appcelerator.org/release_notes_2.0.1.html">http://www.appcelerator.org/release_notes_2.0.1.html</a></p>
<p>The main summary of new features are:</p>
<p>- .NET service support<br />
- Python service support<br />
- PHP service support expanded to support PHP4<br />
- New widgets: calendar and pagination<br />
- Reimplemented modules to better utilizes direct function calling vs. building via strings</p>
<p>We also have fixed numerous bugs and made of improvements.</p>
<p>With this release, we will begin working on 2.0.2 with a target release date of 12/14/2007.  I will post more information about what we are targeting for this release in the next week.  If you would like to see any specific items addressed or features considered, please let us know. You can also directly open issues or feature requests by visiting <a href="http://jira.appcelerator.org">http://jira.appcelerator.org</a>.</p>
<p><a href="http://sharethis.com/item?&wp=2.8.4&amp;publisher=fb25d17b-38b5-47ed-9857-f171051e9899&amp;title=2.0.1+is+now+available&amp;url=http%3A%2F%2Fwww.appcelerant.com%2F201-is-now-available.html">ShareThis</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.appcelerant.com/201-is-now-available.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
