<?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>Blog &#187; Announcement</title>
	<atom:link href="http://blog.cloudfoundry.com/post/category/announcement/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.cloudfoundry.com</link>
	<description>Cloud Foundry</description>
	<lastBuildDate>Tue, 15 May 2012 22:09:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.1</generator>
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="http://superfeedr.com/hubbub"/>		<item>
		<title>Cloud Foundry Improves Support For Background Processing</title>
		<link>http://blog.cloudfoundry.com/post/13481011624/cloud-foundry-improves-support-for-background-processing</link>
		<comments>http://blog.cloudfoundry.com/post/13481011624/cloud-foundry-improves-support-for-background-processing#comments</comments>
		<pubDate>Tue, 01 May 2012 16:31:56 +0000</pubDate>
		<dc:creator>Jennifer Hickey</dc:creator>
				<category><![CDATA[Announcement]]></category>
		<category><![CDATA[CloudFoundry]]></category>
		<category><![CDATA[Media]]></category>

		<guid isPermaLink="false">http://blog.cloudfoundry.com/?p=13481011624</guid>
		<description><![CDATA[Cloud Foundry has significantly enhanced support for worker applications that perform background processing by allowing applications to run on CloudFoundry.com without the application container. Cloud Foundry applications are no longer limited to Web applications that respond to HTTP requests. Instead, &#8230; <a href="http://blog.cloudfoundry.com/post/13481011624/cloud-foundry-improves-support-for-background-processing">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Cloud Foundry has significantly enhanced support for worker applications that perform background processing by allowing applications to run on <a href="http://www.cloudfoundry.com">CloudFoundry.com</a> without the application container. Cloud Foundry applications are no longer limited to Web applications that respond to HTTP requests. Instead, they can be run as executable or &#8220;standalone&#8221; applications. A standalone application is one that does not require a provided framework or container.</p>
<p>Many developers create distributed applications that have workers to perform specific functions and communicate via a data or messaging system, such as those developed with Spring Batch, Spring Integration, Resque, or Delayed Job. Now Cloud Foundry supports running these worker components by allowing you to push a directory or single file without choosing a pre-defined framework. Simply provide the command required to run your script or executable, chose a runtime, and you&#8217;re done. Besides background processing functions, the standalone application support enables these other types of applications as well:</p>
<ol>
<li>Container-less non-Servlet applications, such as those developed with Netty or Grizzly</li>
<li>Web apps that run with their own bundled containers, such as Jetty</li>
</ol>
<p>In this blog series, we will walk through several example deployments of standalone apps.  We will start with a simple Hello World to illustrate the deployment steps.  In future posts, we will show examples of worker apps, distributed apps, and bring-your-own-container and container-less Web apps.  While the apps may vary in use case and implementation, the deployment procedure remains the same.</p>
<p>All of these apps are meant to be long-running, as with any other app on Cloud Foundry (meaning they can be scaled, will be monitored for health, restarted if crashed, etc.). We do not yet have support for short-lived background tasks or scheduled tasks.  However, we encourage you to keep watching this space!</p>
<h3>Getting Started with Standalone Apps on Cloud Foundry</h3>
<p>First, install or update your Cloud Foundry command line tool (‘VMC’) to the latest version using the following command:</p>
<pre><code>gem install vmc</code></pre>
<p>You can verify that you got the right version using:</p>
<pre><code>vmc -v</code></pre>
<p>which should show the version to be 0.3.17 or higher.</p>
<p>Let&#8217;s start by deploying a simple Hello World Ruby application.</p>
<pre>mycomp:$ cd simple-ruby-app
mycomp:$ ls
hello-world.rb
mycomp:$ more hello-world.rb
loop {
  puts 'Hello world'
  sleep 5
}</pre>
<p>Since we need a long-running application, this script will print &#8220;Hello World&#8221; every 5 seconds until stopped.  Let&#8217;s push this to Cloud Foundry using vmc:</p>
<pre>mycomp:$ <strong><span style="color: yellow;">vmc push helloworld</span></strong>
Would you like to deploy from the current directory? [Yn]:
Detected a Standalone Application, is this correct? [Yn]:
1: java
2: node
3: node06
4: ruby18
5: ruby19
Select Runtime [ruby18]:
Selected ruby18
Start Command: ruby hello-world.rb
Application Deployed URL [None]:
Memory reservation (128M, 256M, 512M, 1G, 2G) [128M]:
How many instances? [1]:
Create services to bind to 'helloworld'? [yN]:
Would you like to save this configuration? [yN]: y
Manifest written to manifest.yml.
Creating Application: <span style="color: green;">OK</span>
Uploading Application:
Checking for available resources: OK
Packing application: OK
Uploading (1K): <span style="color: green;">OK</span>
Push Status: OK
Staging Application 'helloworld': <span style="color: green;">OK</span>
Starting Application 'helloworld': <span style="color: green;">OK</span></pre>
<p>So, what just happened?<br />
1. vmc detected that the app was a &#8220;Standalone Application&#8221; (due to the fact that no other Framework support was detected).<br />
2. We were asked to provide a runtime. Since the app needs Ruby to run, we chose the &#8220;ruby18&#8243; runtime (which vmc detected as default).<br />
3. We provided a command to use for starting the application.  Since we&#8217;ve chosen a Ruby 1.8 runtime, we don&#8217;t need to provide the fully qualified path to Ruby.  Cloud Foundry will automatically add Ruby 1.8 to the application&#8217;s path.<br />
4. We chose &#8220;None&#8221; for the application URL.  This will run the application without a Web port or URL.  There are times when we will want a URL and Web port for a standalone application, as we&#8217;ll see in a later blog post.<br />
5. vmc pushed the entire contents of the working directory to Cloud Foundry. Since we only had hello-world.rb in the directory, we could have also executed &#8220;vmc push &#8211;path ./hello-world.rb&#8221;.  The &#8211;path option comes in handy when working with distribution zip files, as we&#8217;ll see in an upcoming post.</p>
<p>Let&#8217;s have a look at the application&#8217;s logs:</p>
<pre>mycomp:$ <strong><span style="color: yellow;"> vmc logs helloworld</span></strong>
====&gt; /logs/stdout.log &lt;====

Hello world
Hello world</pre>
<p>As you can see, helloworld can be managed just like any other Cloud Foundry application:</p>
<pre>mycomp:$ <strong><span style="color: yellow;"> vmc instances helloworld +2</span></strong>
Scaling Application instances up to 3: <span style="color: green;">OK</span>
mycomp:$ <span style="color: yellow;">vmc instances helloworld</span>

+-------+---------+--------------------+
| Index | State   | Start Time         |
+-------+---------+--------------------+
| 0     | RUNNING | 04/20/2012 04:47PM |
| 1     | RUNNING | 04/20/2012 04:48PM |
| 2     | RUNNING | 04/20/2012 04:48PM |
+-------+---------+--------------------+</pre>
<p>Let&#8217;s look at the logs again for two of the instances:</p>
<pre>mycomp:$ <strong><span style="color: yellow;"> vmc logs helloworld --instance 0</span></strong>
====&gt; /logs/stdout.log &lt;====
Hello world
Hello world</pre>
<pre>mycomp:$ <strong><span style="color: yellow;"> vmc logs helloworld --instance 1</span></strong>
====&gt; /logs/stdout.log &lt;====
Hello world
Hello world</pre>
<h3>Standalone app deployment manifest</h3>
<p>Let&#8217;s take a look at the manifest file we generated with that vmc push:</p>
<pre>mycomp:$ more manifest.yml
---
applications:
.:
name: helloworld
framework:
  name: standalone
  info:
     description: Standalone Application
     mem: 128M
runtime: ruby18
command: ruby hello-world.rb
url:
mem: 128M
instances: 1</pre>
<p>Seems pretty straightforward.  The app is deployed against a &#8220;standalone&#8221; framework, with a command and ruby18 runtime.  To save time, we&#8217;ll be sure to save this manifest file for future deployments.</p>
<h3>Tips and Tricks</h3>
<p>You should now be able to deploy any long-running app that you can package, using any of Cloud Foundry&#8217;s provided runtimes.  However, there are some tips and tricks to getting the best experience from Cloud Foundry:</p>
<p>1. Use the VCAP_APP_PORT environment variable if your application requires a web port.<br />
2. Connect your application to Cloud Foundry services using provided libraries (see below) or the VCAP_SERVICES environment variable (value is in JSON).</p>
<h5>JVM Applications</h5>
<p>1. Package your application using a build plugin that creates a distribution zip file or directory.<br />
<a href="http://mojo.codehaus.org/appassembler/appassembler-maven-plugin/" target="_blank">Maven Appassembler</a>, <a href="http://gradle.org/docs/current/userguide/application_plugin.html" target="_blank">Gradle Application Plugin</a>, and <a href="https://github.com/twitter/sbt-package-dist" target="_blank">SBT package-dist</a> are good plugins for creating a distribution, and we&#8217;ll show examples of all of these in future posts. It is best not to package your entire application in a single jar file, as you will not be able to take advantage of Cloud Foundry&#8217;s incremental upload capability.<br />
2. Always include $JAVA_OPTS in your Java start commands.<br />
When you select your application&#8217;s memory reservation through VMC, Cloud Foundry will set the JAVA_OPTS environment variable with corresponding min and max heap sizes, therefore you should include $JAVA_OPTS in your Java start commands (for example, &#8220;java $JAVA_OPTS -jar main.jar&#8221;). The start scripts generated by Maven Appassembler and Gradle Application Plugin already include JAVA_OPTS. Using JAVA_OPTS will also allow you to start your app in debug mode on local clouds, using &#8220;vmc start &#8211;debug.&#8221;<br />
3. Use the <a href="https://github.com/cloudfoundry/vcap-java/tree/master/cloudfoundry-runtime" target="_blank">cloudfoundry-runtime</a> library to connect your application to Cloud Foundry services.</p>
<h5>Ruby Applications</h5>
<p>1. Always include a Gemfile.lock to ensure that all application dependencies are resolved by Cloud Foundry.<br />
2. While not required, we recommend running &#8220;bundle package&#8221; before deploying your application.  This will improve your application start time, as Cloud Foundry will not need to check its cache or download gems from rubygems.org.<br />
3. Standalone Ruby applications can take advantage of <a href="http://blog.cloudfoundry.com/post/13481010741/using-cloud-foundry-services-with-ruby-part-1-auto-reconfiguration" target="_blank">Ruby Auto-Reconfiguration</a>.  To make your own connections to Cloud Foundry services, use the <a href="http://blog.cloudfoundry.com/post/13481010778/using-cloud-foundry-services-with-ruby-part-2-run-time-support-for-ruby-applications" target="_blank">cf-runtime</a> gem.</p>
<h3>Conclusion</h3>
<p>In this post, we used a simple example to get up and running quickly with standalone apps on Cloud Foundry. In the next installments of this four part series, we will have an in-depth look at deploying more complex standalone apps.</p>
<p>Also in this series:</p>
<ul>
<li><a href="http://blog.cloudfoundry.com/post/13481011979/running-workers-on-cloud-foundry-with-spring">Running Workers on Cloud Foundry with Spring</a></li>
<li><a href="http://blog.cloudfoundry.com/post/13481011636/running-resque-workers-on-cloud-foundry">Running Resque Workers on Cloud Foundry</a></li>
<li><a href="http://blog.cloudfoundry.com/post/13481011644/running-standalone-web-applications-on-cloud-foundry">Running Standalone Web Applications on Cloud Foundry</a></li>
</ul>
<p><em>- Jennifer Hickey</em><br />
<em>The Cloud Foundry Team</em></p>
<p><em>Don’t have a Cloud Foundry account yet?  <a href="http://cloudfoundry.com/signup?utm_source=blog&amp;utm_medium=link&amp;utm_campaign=cloudfoundry-signup" target="_blank">Sign up for free today</a></em></p>
<div class="trackable_sharing"><a href="http://www.facebook.com/sharer.php?u=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011624%2Fcloud-foundry-improves-support-for-background-processing" style="text-decoration: none; white-space: nowrap;" title="Facebook" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Facebook','http://blog.cloudfoundry.com/post/13481011624/cloud-foundry-improves-support-for-background-processing']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//facebook.png" alt="Facebook" width="36" height="36"></a> <a href="http://twitter.com/share?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011624%2Fcloud-foundry-improves-support-for-background-processing&text=Cloud+Foundry+Improves+Support+For+Background+Processing" style="text-decoration: none; white-space: nowrap;" title="Twitter" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Twitter','http://blog.cloudfoundry.com/post/13481011624/cloud-foundry-improves-support-for-background-processing']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//twitter.png" alt="Twitter" width="36" height="36"></a> <a href="http://www.linkedin.com/shareArticle?mini=true&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011624%2Fcloud-foundry-improves-support-for-background-processing&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011624%2Fcloud-foundry-improves-support-for-background-processing&ro=false&summary=&source=" style="text-decoration: none; white-space: nowrap;" title="Linkedin" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Linkedin','http://blog.cloudfoundry.com/post/13481011624/cloud-foundry-improves-support-for-background-processing']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//linkedin.png" alt="Linkedin" width="36" height="36"></a> <a href="http://digg.com/submit?partner=addthis&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011624%2Fcloud-foundry-improves-support-for-background-processing&title=Cloud+Foundry+Improves+Support+For+Background+Processing&bodytext=" style="text-decoration: none; white-space: nowrap;" title="Digg" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Digg','http://blog.cloudfoundry.com/post/13481011624/cloud-foundry-improves-support-for-background-processing']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//digg.png" alt="Digg" width="36" height="36"></a> <a href="http://www.delicious.com/save?v=5&noui&jump=close&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011624%2Fcloud-foundry-improves-support-for-background-processing&title=Cloud+Foundry+Improves+Support+For+Background+Processing" style="text-decoration: none; white-space: nowrap;" title="Delicious" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Delicious','http://blog.cloudfoundry.com/post/13481011624/cloud-foundry-improves-support-for-background-processing']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=550,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//delicious.png" alt="Delicious" width="36" height="36"></a> <a href="http://www.reddit.com/login?dest=%2Fsubmit%3Furl=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011624%2Fcloud-foundry-improves-support-for-background-processing&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011624%2Fcloud-foundry-improves-support-for-background-processing" style="text-decoration: none; white-space: nowrap;" title="Reddit" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Reddit','http://blog.cloudfoundry.com/post/13481011624/cloud-foundry-improves-support-for-background-processing']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=700,height=500'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//reddit.png" alt="Reddit" width="36" height="36"></a> <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011624%2Fcloud-foundry-improves-support-for-background-processing&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011624%2Fcloud-foundry-improves-support-for-background-processing" style="text-decoration: none; white-space: nowrap;" title="Stumbleupon" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Stumbleupon','http://blog.cloudfoundry.com/post/13481011624/cloud-foundry-improves-support-for-background-processing']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//stumbleupon.png" alt="Stumbleupon" width="36" height="36"></a> <a href="mailto:?subject=Check out http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011624%2Fcloud-foundry-improves-support-for-background-processing" style="text-decoration: none; white-space: nowrap;" title="Email" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Email','http://blog.cloudfoundry.com/post/13481011624/cloud-foundry-improves-support-for-background-processing']); "><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//email.png" alt="Email" width="36" height="36"></a> </div>]]></content:encoded>
			<wfw:commentRss>http://blog.cloudfoundry.com/post/13481011624/cloud-foundry-improves-support-for-background-processing/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>More than 2,000 Developers Attend Cloud Foundry China Open Tour</title>
		<link>http://blog.cloudfoundry.com/post/13481011520/more-than-2000-developers-attend-cloud-foundry-china-open-tour</link>
		<comments>http://blog.cloudfoundry.com/post/13481011520/more-than-2000-developers-attend-cloud-foundry-china-open-tour#comments</comments>
		<pubDate>Mon, 16 Apr 2012 23:58:36 +0000</pubDate>
		<dc:creator>Frank Yu</dc:creator>
				<category><![CDATA[Announcement]]></category>
		<category><![CDATA[CloudFoundry]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[oss]]></category>

		<guid isPermaLink="false">http://blog.cloudfoundry.com/?p=13481011520</guid>
		<description><![CDATA[The first two stops of Cloud Foundry Open Tour at Beijing and Shanghai were huge successes! We had about 1000+ developers show up at each city for this one day event. 10 speakers from across the world delivered 15 high quality &#8230; <a href="http://blog.cloudfoundry.com/post/13481011520/more-than-2000-developers-attend-cloud-foundry-china-open-tour">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.cloudfoundry.com/wp-content/uploads/2012/04/11.png"><img class="alignnone size-full wp-image-13481011522" title="1" src="http://blog.cloudfoundry.com/wp-content/uploads/2012/04/11.png" alt="" width="624" height="281" /></a></p>
<p>The first two stops of Cloud Foundry Open Tour at Beijing and Shanghai were huge successes! We had about 1000+ developers show up at <em>each</em> city for this one day event. 10 speakers from across the world delivered 15 high quality and deeply technical sessions to attendees.</p>
<p>Open Tour is not only a developers’ grand gathering to learn about Cloud Foundry, it&#8217;s also for partner executives and university professors to share their success story on Cloud Foundry, and online media to live broadcast the event and interview speakers.</p>
<p>Developers in China are extremely passionate about Cloud Foundry: attendees showed up at the venue before 7AM (for a conference that starts at 9AM); people were lining up for registration at 7:30AM. This phenomenon has only happened before at the Apple Store. There were developers flying to Beijing and Shanghai from south and west side of China just for this event, and every single session at the conference was standing room only.</p>
<p>Big THANKS to our team of speakers: Charlotte Yarkoni, Mark Lucovsky, Patrick Chanezon, Chris Richardson, Alan Ren, Victor Jieh, Stephen Hu, Bill Sun, Figo Feng and Long Wang from the Cloud Foundry global and China team! Our great appreciation and many thanks to all partner speakers: Lei Cong from Sina App Enginee, Tuoc Luong from SNDA Grand Cloud, and Guoxiong Dai from InGeek Cloud.</p>
<p><em><a href="http://blog.cloudfoundry.com/wp-content/uploads/2012/04/无标题.png"><img class="alignnone size-full wp-image-13481011536" title="event-cfot" src="http://blog.cloudfoundry.com/wp-content/uploads/2012/04/无标题.png" alt="" width="833" height="520" /></a><br />
</em></p>
<p><strong> </strong></p>
<p><strong>Staying &#8216;Till the End&#8217;</strong></p>
<p>No developer left the conference before it was over. We had two keynotes delivered by Mark Lucovsky and Chris Richardson in the morning &#8211; Cloud Foundry Technical Overview and Bootcamp. Then the ballroom separated to 3 different breakout sessions for topics about languages and frameworks, cloud databases, and solution partners. The Open Tour is a purely developer conference. All sessions include our partners and are deep dives into the code level (which are developers’ favorite, right?). Our elite speakers and well-designed content are the keys to the success.</p>
<p>The keynotes were full of vision, mission and decorated slides, but most importantly they start from code! Mark’s keynote “<a href="http://vdisk.weibo.com/s/3GuRe" target="_blank">Developer Perspective</a>” clearly re-emphasized that the Open Tour is a developer conference. After a quick Cloud Foundry introduction, Mark switched to coding mode, he went through a complicated sample app which leveraged many of the key features of Cloud Foundry. He then shared his thoughts on the producer/consumer pattern, node.JS server, tunneling (&#8220;caldecott&#8221;), redis, and much more. Chris’ “<a href="http://vdisk.weibo.com/s/3GyJZ" target="_blank">Cloud Foundry Bootcamp</a>” session led people deeper into Cloud Foundry. Chris used 100+ slides to give a very detailed introduction and demo to help developers with different backgrounds to get started with Cloud Foundry.</p>
<p>In the afternoon, Patrick Chanezon and Chris Richardson hosted the track for programing languages and frameworks. This was the most popular track. “<a href="http://vdisk.weibo.com/s/3GyJZ">Node.JS Introduction</a>”, “<a href="http://vdisk.weibo.com/s/3HYLp">Spring into the Cloud</a>” and “<a href="http://studios.cloudfoundry.com/ruby/index.html">Using Ruby in Cloud Foundry</a>” gave developers a more clear understanding of the power of multi-framework support in Cloud Foundry. Chris, Victor and Long Wang contributed 4 very interesting sessions in the Cloud database track. “<a href="http://vdisk.weibo.com/s/3Lri4">SQL, NoSQL, NewSQL? What&#8217;s a developer to do?</a>”, “<a href="http://vdisk.weibo.com/s/3Lr2v">Using MongoDB in Cloud Foundry</a>”, “<a href="http://vdisk.weibo.com/s/3Lrl4">Data Director</a>” and “GemFire/SQLFire, the RAM DB in Cloud Foundry” gained a lot of attention.</p>
<p><strong>Partner Showtime</strong></p>
<p>Enabling partners and making them successful is an important pillar for Cloud Foundry. It is our great honor to invite three famous public cloud service providers, <a href="http://sae.sina.com.cn/">Sina App Engine</a>, <a href="http://www.grandcloud.cn/">Shanda Grand Cloud</a> &amp; <a href="http://www.yinji.com.cn/">InGeek Cloud</a>, to join the events and announce their partnership with VMware to promote adoption of Cloud Foundry. SINA App Engine (SAE), the largest Open Platform in China with 200,000 developers and 100,000 apps, launched its first Cloud Foundry based Ruby PaaS engine. InGeek, by leveraging the vSphere based IaaS cloud, launched a PaaS cloud with Cloud Foundry and vFabric Data Director integrated via Service Gateway. Three tier-1 universities in China, <a href="http://www.tsinghua.edu.cn/">Tsinghua University</a>, <a href="http://www.fudan.edu.cn/">Fudan University</a> &amp; <a href="http://www.sjtu.edu.cn/">Shanghai Jiaotong University</a>, also joined the event. They have formed partnership with VMware China R&amp;D on university innovation programs to drive Cloud Foundry adoption via course ware, joint lab &amp; EDU-PaaS private cloud.</p>
<p><strong>Interesting Sidelights</strong></p>
<p><a href="http://blog.cloudfoundry.com/wp-content/uploads/2012/04/2.png"><img class="alignnone size-full wp-image-13481011523" title="2" src="http://blog.cloudfoundry.com/wp-content/uploads/2012/04/2.png" alt="" width="568" height="192" /></a></p>
<p>A developer conference is about fun, we have some interesting sidelights to share:</p>
<p><span style="text-decoration: underline;">Weibo</span>: For some reason, there is no Twitter access in China, but we have SINA <a title="weibo.com" href="http://weibo.com/2169336083/profile?leftnav=1&amp;wvr=4" target="_blank">Weibo</a>, the China version of Twitter with about 300+ million users. With the help of Google Translate, Mark, Patrick and Chris interacted with their Chinese fans at Weibo. They even registered their own Weibo account to start tweeting and win a lot of followers! Here are the links to their account: <a href="http://weibo.com/u/2749394110">@大牛马克</a> for Mark, <a href="http://weibo.com/u/2685614521">@快乐的法国极客</a> for Patrick and <a href="http://weibo.com/u/2749354104">@温文尔雅的程序员大爷</a> Chris. Patrick’s name means “most joyous French geek”, and Chris’ name means “gentle programmer’s uncle”. Mark’s name means “Big Bull Mark”, the story is at below. These accounts were all getting developers feedback to their sessions.</p>
<p><span style="text-decoration: underline;">From Chairman to Big Bull</span>: Mark was famous for his <a href="http://www.wired.com/wiredenterprise/2011/11/cloud-foundry/all/1">chair story</a>. He didn’t bring his chair for the China trip, but he won a lot of new fans in Beijing and Shanghai. He was surrounded by developers after he finished the keynotes, and  people even tried to ask him technical questions in the men’s room! In the Chinese developer community, the “Big Bull” is a kind of respectful title for a distinguished technician or developer, so we made a stone stamp logo (the red one) for Mark and named his Weibo account <a href="http://weibo.com/u/2749394110" target="_blank">@大牛马克</a> (the Big Bull Mark). You will probably soon see this logo in Mark’s email signature.</p>
<p><span style="text-decoration: underline;">Li Bai and Cloud</span>: Patrick is a big lover of Chinese ancient poems. He started his node.JS session by quote <a href="http://en.wikipedia.org/wiki/Li_Bai">Li Bai</a> and <a href="http://en.wikipedia.org/wiki/Wang_Wei_(8th_century_poet)">Wang Wei</a>, the two major Chinese poets of the Tang dynasty. These two sages use poems to describe beautiful clouds over 1200 years ago, but they probably couldn&#8217;t imagine that we will quote the poems in today’s Cloud computing era to make the perfect combination of art and technology.</p>
<p><strong>Weibo Feedback</strong></p>
<p>Developers kept track of their feedback to the Could Foundry Open Tour on Weibo, the following are some interesting quotes:</p>
<ul>
<li>
<address>Look forward to see the 100% open source of Cloud Foundry, this will provide strong foundation for enterprise to build private cloud; this is the Linux in the Cloud. P.S., love to use MacOS for cloud development, recommend to all UNIX developers. From @乔布斯胡</address>
</li>
<li>
<address>Join the VMware Cloud Foundry event today, get a USB stick, T-shirt and a substantial buffet lunch. The event is good in general, the key advantage of Cloud Foundry is developers can use their familiar programming language and framework to build app, easy to use and config, love it. From @ArKiarX</address>
</li>
<li>
<address>The Cloud Foundry Open Tour is very <a href="http://www.china.org.cn/china/2010-11/12/content_21327924.htm" target="_blank">gelivable</a>, depth technical sessions, great speakers, and a good buffet lunch. From @忘了游泳的鱼ooO</address>
</li>
<li>
<address>The SINA guest speaker mentioned about eco-system, the open source based Cloud Foundry is building and developing the cloud eco-system. From @中国董永乐</address>
</li>
<li>
<address>Learnt quite a lot in Cloud Foundry Open Tour, feel more and more exciting about Cloud! From @奔跑的大兵</address>
</li>
<li>
<address>Patrick is the most joyous speaker of the day, he even trying to access Twitter. From雪中</address>
</li>
</ul>
<p><strong>The Open Tour is continuing across the world</strong></p>
<p>Cloud Foundry Open Tour 2012 is a global series of one day developer events, Beijing and Shanghai are the first two stops. The team is heading to <a href="http://opentour.cloudfoundry.com/2012/kiev">Kiev</a>, <a href="http://opentour.cloudfoundry.com/2012/moscow">Moscow</a> and <a href="http://opentour.cloudfoundry.com/2012/london">London</a>. Come join us and feel the power of Cloud Foundry!</p>
<p>-The Cloud Foundry China Team</p>
<p><em>Don’t have a Cloud Foundry account yet?  <a href="http://my.cloudfoundry.com/signup">Sign up for free today</a></em></p>
<div class="trackable_sharing"><a href="http://www.facebook.com/sharer.php?u=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011520%2Fmore-than-2000-developers-attend-cloud-foundry-china-open-tour" style="text-decoration: none; white-space: nowrap;" title="Facebook" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Facebook','http://blog.cloudfoundry.com/post/13481011520/more-than-2000-developers-attend-cloud-foundry-china-open-tour']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//facebook.png" alt="Facebook" width="36" height="36"></a> <a href="http://twitter.com/share?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011520%2Fmore-than-2000-developers-attend-cloud-foundry-china-open-tour&text=More+than+2%2C000+Developers+Attend+Cloud+Foundry+China+Open+Tour" style="text-decoration: none; white-space: nowrap;" title="Twitter" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Twitter','http://blog.cloudfoundry.com/post/13481011520/more-than-2000-developers-attend-cloud-foundry-china-open-tour']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//twitter.png" alt="Twitter" width="36" height="36"></a> <a href="http://www.linkedin.com/shareArticle?mini=true&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011520%2Fmore-than-2000-developers-attend-cloud-foundry-china-open-tour&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011520%2Fmore-than-2000-developers-attend-cloud-foundry-china-open-tour&ro=false&summary=&source=" style="text-decoration: none; white-space: nowrap;" title="Linkedin" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Linkedin','http://blog.cloudfoundry.com/post/13481011520/more-than-2000-developers-attend-cloud-foundry-china-open-tour']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//linkedin.png" alt="Linkedin" width="36" height="36"></a> <a href="http://digg.com/submit?partner=addthis&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011520%2Fmore-than-2000-developers-attend-cloud-foundry-china-open-tour&title=More+than+2%2C000+Developers+Attend+Cloud+Foundry+China+Open+Tour&bodytext=" style="text-decoration: none; white-space: nowrap;" title="Digg" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Digg','http://blog.cloudfoundry.com/post/13481011520/more-than-2000-developers-attend-cloud-foundry-china-open-tour']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//digg.png" alt="Digg" width="36" height="36"></a> <a href="http://www.delicious.com/save?v=5&noui&jump=close&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011520%2Fmore-than-2000-developers-attend-cloud-foundry-china-open-tour&title=More+than+2%2C000+Developers+Attend+Cloud+Foundry+China+Open+Tour" style="text-decoration: none; white-space: nowrap;" title="Delicious" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Delicious','http://blog.cloudfoundry.com/post/13481011520/more-than-2000-developers-attend-cloud-foundry-china-open-tour']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=550,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//delicious.png" alt="Delicious" width="36" height="36"></a> <a href="http://www.reddit.com/login?dest=%2Fsubmit%3Furl=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011520%2Fmore-than-2000-developers-attend-cloud-foundry-china-open-tour&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011520%2Fmore-than-2000-developers-attend-cloud-foundry-china-open-tour" style="text-decoration: none; white-space: nowrap;" title="Reddit" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Reddit','http://blog.cloudfoundry.com/post/13481011520/more-than-2000-developers-attend-cloud-foundry-china-open-tour']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=700,height=500'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//reddit.png" alt="Reddit" width="36" height="36"></a> <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011520%2Fmore-than-2000-developers-attend-cloud-foundry-china-open-tour&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011520%2Fmore-than-2000-developers-attend-cloud-foundry-china-open-tour" style="text-decoration: none; white-space: nowrap;" title="Stumbleupon" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Stumbleupon','http://blog.cloudfoundry.com/post/13481011520/more-than-2000-developers-attend-cloud-foundry-china-open-tour']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//stumbleupon.png" alt="Stumbleupon" width="36" height="36"></a> <a href="mailto:?subject=Check out http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011520%2Fmore-than-2000-developers-attend-cloud-foundry-china-open-tour" style="text-decoration: none; white-space: nowrap;" title="Email" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Email','http://blog.cloudfoundry.com/post/13481011520/more-than-2000-developers-attend-cloud-foundry-china-open-tour']); "><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//email.png" alt="Email" width="36" height="36"></a> </div>]]></content:encoded>
			<wfw:commentRss>http://blog.cloudfoundry.com/post/13481011520/more-than-2000-developers-attend-cloud-foundry-china-open-tour/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cloud Foundry’s First Birthday: More Clouds, Code, Community and Partners</title>
		<link>http://blog.cloudfoundry.com/post/13481011539/a-year-of-cloud-foundry</link>
		<comments>http://blog.cloudfoundry.com/post/13481011539/a-year-of-cloud-foundry#comments</comments>
		<pubDate>Wed, 11 Apr 2012 16:06:43 +0000</pubDate>
		<dc:creator>Dekel Tankel</dc:creator>
				<category><![CDATA[Announcement]]></category>
		<category><![CDATA[CloudFoundry]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[oss]]></category>

		<guid isPermaLink="false">http://blog.cloudfoundry.com/?p=13481011539</guid>
		<description><![CDATA[Today we celebrated Cloud Foundry’s first anniversary with additional multi-cloud deployment choices, new tools for operating large scale Cloud Foundry services, a new system for managing open source contributions and new partnerships. More Clouds In a recent post, we’ve explained why preserving &#8230; <a href="http://blog.cloudfoundry.com/post/13481011539/a-year-of-cloud-foundry">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Today we celebrated Cloud Foundry’s first anniversary with additional multi-cloud deployment choices, new tools for operating large scale Cloud Foundry services, a new system for managing open source contributions and new partnerships.</p>
<p><strong><em> </em></strong></p>
<p><strong><em>More Clouds</em></strong></p>
<p>In a <a href="http://blog.cloudfoundry.com/post/13481010615/multi-language-multi-framework-what-about-multi-cloud">recent post</a>, we’ve explained why preserving multi-cloud choice and flexibility is so important in the cloud era. As an open platform as a service, Cloud Foundry is designed to run on a wide variety of clouds and cloud infrastructures.</p>
<p>In a live demo today we demonstrated how Cloud Foundry is making multi-cloud a reality with the deployment of an application to four different Cloud Foundry-based clouds within minutes without any code or configuration changes.</p>
<p><a href="http://blog.cloudfoundry.com/wp-content/uploads/2012/04/multi-cloud-diagram.jpg"><img title="multi-cloud-diagram" src="http://blog.cloudfoundry.com/wp-content/uploads/2012/04/multi-cloud-diagram.jpg" alt="" width="707" height="360" /></a></p>
<p><strong><em>More Code</em></strong></p>
<p>Today we introduced and open sourced Cloud Foundry BOSH, an open source tool chain for release engineering, deployment and lifecycle management of large scale distributed services.</p>
<p>Designed to enable the systematic and prescriptive evolution of services, BOSH facilitates the operation of production instances of Cloud Foundry. BOSH automates a variety of cloud infrastructure and allows targeted service updates with consistent results and minimal to no down time.</p>
<p>Proven in the course of operating <a href="http://www.cloudfoundry.com">CloudFoundry.com</a>, BOSH is available under an Apache license from <a href="http://www.cloudfoundry.org">CloudFoundry.org</a> and currently includes support for VMware vSphere as well as early support for Amazon Web Services.</p>
<p>Additional technical details on BOSH are available on <a href="https://github.com/cloudfoundry/oss-docs/blob/master/bosh/documentation/documentation.md">GitHub</a>.</p>
<p><strong><em>More Community</em></strong></p>
<p>Cloud Foundry has been an open source project from the day it was released. The project is active on <a href="https://github.com/cloudfoundry">GitHub</a> and has seen broad and meaningful contributions from the developer community, including support for dozens of major developer frameworks and application services.</p>
<p>Today we unveiled the new <a href="http://www.cloudfoundry.org/">CloudFoundry.org</a>,  a new source code management system for Cloud Foundry. The new system converges Cloud Foundry source code to a single set of public code repositories on GitHub integrated with <a href="http://code.google.com/p/gerrit/">Gerrit</a> for code reviews and <a href="http://jenkins-ci.org/">Jenkins</a> for continuous integration.  The new system enables developers to submit day-to-day change requests directly to the public repository. It simplifies community code contributions, improves code quality and offers greater visibility into code changes as they happen.</p>
<p>Additional details on how to contribute and participate are on the <a href="http://blog.cloudfoundry.org/">Cloud Foundry open source blog</a>.</p>
<p><strong><em> </em></strong></p>
<p><strong><em>More Partners</em></strong></p>
<p>There are a broad range of companies investing in and around Cloud Foundry, including development and deployment tools, public cloud operators, private cloud distributions, application service developers and ISVs.</p>
<p>Today five additional companies announced they are joining the Cloud Foundry ecosystem:</p>
<ul>
<li><a href="http://c9.io/">Cloud9’s browser-based</a> integrated development      environment now supports deployment to CloudFoundry.com.</li>
<li><a href="http://www.collab.net/">Collabnet</a> is making      Cloud Foundry a core deployment platform for their suite of agile      enterprise development tools.   <span style="text-decoration: underline;"> </span></li>
<li><a href="http://www.servicemesh.com/">ServiceMesh</a> has      added policy-driven deployment and governance of Cloud Foundry to their      enterprise Agility Platform<sup>TM</sup>.</li>
<li><a href="http://www.soasta.com/cloudtest/lite/">SOASTA’s CloudTest      Lite®</a> rapid test      creation and real-time analytics now offers support for Cloud      Foundry deployment targets.</li>
<li><a href="http://www.x.com/">X.commerce</a>, eBay’s open, end-to-end      commerce technology platform, is building upon Cloud Foundry.<strong><em> </em></strong></li>
</ul>
<p>We are in the midst of the <a href="http://opentour.cloudfoundry.com/">Cloud Foundry Open Tour</a> – a series of developer days across the globe attended so far by thousands of developers.</p>
<p>Upcoming dates include:</p>
<ul>
<li><a href="http://opentour.cloudfoundry.com/2012/kiev">Kiev, Ukraine</a>:      Tuesday, April 24 2012</li>
<li><a href="http://opentour.cloudfoundry.com/2012/moscow">Moscow, Russia</a>:      Thursday, April 26 2012</li>
<li><a href="http://opentour.cloudfoundry.com/2012/london">London, United Kingdom</a>:      Tuesday, May 1 2012</li>
</ul>
<p>We are looking forward for an exciting second year with more code, more community, more partners and more clouds.</p>
<p>-The Cloud Foundry Team</p>
<p><em>Don’t have a Cloud Foundry account yet?  <a href="http://my.cloudfoundry.com/signup">Sign up for free today</a></em></p>
<div class="trackable_sharing"><a href="http://www.facebook.com/sharer.php?u=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011539%2Fa-year-of-cloud-foundry" style="text-decoration: none; white-space: nowrap;" title="Facebook" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Facebook','http://blog.cloudfoundry.com/post/13481011539/a-year-of-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//facebook.png" alt="Facebook" width="36" height="36"></a> <a href="http://twitter.com/share?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011539%2Fa-year-of-cloud-foundry&text=Cloud+Foundry%E2%80%99s+First+Birthday%3A+More+Clouds%2C+Code%2C+Community+and+Partners" style="text-decoration: none; white-space: nowrap;" title="Twitter" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Twitter','http://blog.cloudfoundry.com/post/13481011539/a-year-of-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//twitter.png" alt="Twitter" width="36" height="36"></a> <a href="http://www.linkedin.com/shareArticle?mini=true&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011539%2Fa-year-of-cloud-foundry&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011539%2Fa-year-of-cloud-foundry&ro=false&summary=&source=" style="text-decoration: none; white-space: nowrap;" title="Linkedin" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Linkedin','http://blog.cloudfoundry.com/post/13481011539/a-year-of-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//linkedin.png" alt="Linkedin" width="36" height="36"></a> <a href="http://digg.com/submit?partner=addthis&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011539%2Fa-year-of-cloud-foundry&title=Cloud+Foundry%E2%80%99s+First+Birthday%3A+More+Clouds%2C+Code%2C+Community+and+Partners&bodytext=" style="text-decoration: none; white-space: nowrap;" title="Digg" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Digg','http://blog.cloudfoundry.com/post/13481011539/a-year-of-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//digg.png" alt="Digg" width="36" height="36"></a> <a href="http://www.delicious.com/save?v=5&noui&jump=close&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011539%2Fa-year-of-cloud-foundry&title=Cloud+Foundry%E2%80%99s+First+Birthday%3A+More+Clouds%2C+Code%2C+Community+and+Partners" style="text-decoration: none; white-space: nowrap;" title="Delicious" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Delicious','http://blog.cloudfoundry.com/post/13481011539/a-year-of-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=550,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//delicious.png" alt="Delicious" width="36" height="36"></a> <a href="http://www.reddit.com/login?dest=%2Fsubmit%3Furl=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011539%2Fa-year-of-cloud-foundry&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011539%2Fa-year-of-cloud-foundry" style="text-decoration: none; white-space: nowrap;" title="Reddit" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Reddit','http://blog.cloudfoundry.com/post/13481011539/a-year-of-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=700,height=500'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//reddit.png" alt="Reddit" width="36" height="36"></a> <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011539%2Fa-year-of-cloud-foundry&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011539%2Fa-year-of-cloud-foundry" style="text-decoration: none; white-space: nowrap;" title="Stumbleupon" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Stumbleupon','http://blog.cloudfoundry.com/post/13481011539/a-year-of-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//stumbleupon.png" alt="Stumbleupon" width="36" height="36"></a> <a href="mailto:?subject=Check out http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011539%2Fa-year-of-cloud-foundry" style="text-decoration: none; white-space: nowrap;" title="Email" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Email','http://blog.cloudfoundry.com/post/13481011539/a-year-of-cloud-foundry']); "><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//email.png" alt="Email" width="36" height="36"></a> </div>]]></content:encoded>
			<wfw:commentRss>http://blog.cloudfoundry.com/post/13481011539/a-year-of-cloud-foundry/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Cloud Foundry Further Improves Support for Ruby Applications</title>
		<link>http://blog.cloudfoundry.com/post/13481011231/cloud-foundry-further-improves-support-for-ruby-applications</link>
		<comments>http://blog.cloudfoundry.com/post/13481011231/cloud-foundry-further-improves-support-for-ruby-applications#comments</comments>
		<pubDate>Thu, 29 Mar 2012 21:36:19 +0000</pubDate>
		<dc:creator>Charles Lee</dc:creator>
				<category><![CDATA[Announcement]]></category>
		<category><![CDATA[CloudFoundry]]></category>
		<category><![CDATA[Media]]></category>

		<guid isPermaLink="false">http://blog.cloudfoundry.com/?p=13481011231</guid>
		<description><![CDATA[We have recently made many improvements to Cloud Foundry to increase Ruby developer productivity and expand support for Ruby application frameworks.  Cloud Foundry was built to run multiple languages and frameworks, and we have had support for Ruby from day &#8230; <a href="http://blog.cloudfoundry.com/post/13481011231/cloud-foundry-further-improves-support-for-ruby-applications">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>We have recently made many improvements to Cloud Foundry to increase Ruby developer productivity and expand support for Ruby application frameworks.  Cloud Foundry was built to run multiple languages and frameworks, and we have had support for Ruby from day one.</p>
<p>It is well known that VMware developers are the stewards of the incredibly popular Java Spring framework.  Therefore, Cloud Foundry&#8217;s support for running Java applications in a platform as a service environment has always been excellent.  However, many <a href="http://CloudFoundry.com/">CloudFoundry.com</a> users may not realize that most of Cloud Foundry&#8217;s system components are built using the Ruby programming language, and providing great support for Ruby applications is also very important to us.</p>
<p>In the past few months, we have been quietly adding features and improving support for running Ruby, Rails, Sinatra, Rack, and even JRuby applications on CloudFoundry.com.  Jennifer Hickey, a developer on the Cloud Foundry team, recently hosted a webinar on deploying Ruby applications to Cloud Foundry and covered the following topics:</p>
<ul>
<li><strong>Rails 3.1 and 3.2 applications</strong> are now well-supported on CloudFoundry.com.  The development team resolved a number of issues that had previously required workarounds.</li>
<li><span style="color: #000000;"><strong>JRuby</strong></span> applications can run on CloudFoundry.com with some simple tweaks.  Look for a blog post soon that will document the steps to deploy a JRuby application to Cloud Foundry.</li>
<li><strong>Auto-reconfiguration for Ruby</strong> are now supported for Rails and Sinatra applications using Cloud Foundry services.  The auto-reconfiguration capability will automatically locate the initialization for Postgres, MySQL, Redis, Mongo, or RabbitMQ anywhere in your code and dynamically update them to the service(s) bound to your application.  This allows you to simply deploy your Ruby applications to CloudFoundry.com without changing any code or configuration.  We have fully detailed this feature and its technical details in a blog post: <a href="http://blog.cloudfoundry.com/post/13481010741/using-cloud-foundry-services-with-ruby-part-1-auto-reconfiguration">Part 1 – Auto-reconfiguration</a>.  We also give to the option of having more control and explicitly configure your application to run on Cloud Foundry. This is documented in another blog post: <a href="http://blog.cloudfoundry.com/post/13481010778/using-cloud-foundry-services-with-ruby-part-2-run-time-support-for-ruby-applications">Part 2 – Run-time Support for Ruby Applications</a>.</li>
<li><strong>Rails console</strong>, a popular tool for Rails developers to interact with their Rails application, is now available through the VMC command line client.  A blog post, <a href="http://blog.cloudfoundry.com/post/13481010650/cloud-foundry-now-supports-the-rails-console">Cloud Foundry Now Supports the Rails Console</a>, was published to explain how to use this feature to connect to Rails applications.  Using the Rails console, you can easily view and modify your data, inspect state, or interact with application methods.  You can even run Rake tasks inside the Rails console to perform administrative tasks on your applications.</li>
<li><strong>Rack applications</strong>, a modular Ruby web server interface, are now supported.  Cloud Foundry&#8217;s VMC will automatically recognize a config.ru Rackup file and use it to run your web application.  The auto-reconfiguration feature is also supported for rack applications.</li>
</ul>
<p>If you develop Ruby applications, you will want to view Jennifer&#8217;s webinar recording and see how fast and easy it is to deploy Ruby applications on CloudFoundry.com.</p>
<p><iframe width="640" height="360" src="http://www.youtube.com/embed/LZQDeKaPbKU?fs=1&#038;feature=oembed" frameborder="0" allowfullscreen></iframe></p>
<p>We strive to provide the best PaaS support for running Ruby applications.  If you have any feedback for us on how to improve Cloud Foundry&#8217;s Ruby support, we welcome you to drop us a note at our <a href="http://support.cloudfoundry.com">support site</a>.</p>
<p><em>-The Cloud Foundry Team</em></p>
<p><em>Don&#8217;t have a Cloud Foundry account yet?  <a href="http://cloudfoundry.com/signup?utm_source=blog&amp;utm_medium=link&amp;utm_campaign=cloudfoundry-signup" target="_blank">Sign up for free today</a></em></p>
<div class="trackable_sharing"><a href="http://www.facebook.com/sharer.php?u=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011231%2Fcloud-foundry-further-improves-support-for-ruby-applications" style="text-decoration: none; white-space: nowrap;" title="Facebook" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Facebook','http://blog.cloudfoundry.com/post/13481011231/cloud-foundry-further-improves-support-for-ruby-applications']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//facebook.png" alt="Facebook" width="36" height="36"></a> <a href="http://twitter.com/share?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011231%2Fcloud-foundry-further-improves-support-for-ruby-applications&text=Cloud+Foundry+Further+Improves+Support+for+Ruby+Applications" style="text-decoration: none; white-space: nowrap;" title="Twitter" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Twitter','http://blog.cloudfoundry.com/post/13481011231/cloud-foundry-further-improves-support-for-ruby-applications']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//twitter.png" alt="Twitter" width="36" height="36"></a> <a href="http://www.linkedin.com/shareArticle?mini=true&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011231%2Fcloud-foundry-further-improves-support-for-ruby-applications&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011231%2Fcloud-foundry-further-improves-support-for-ruby-applications&ro=false&summary=&source=" style="text-decoration: none; white-space: nowrap;" title="Linkedin" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Linkedin','http://blog.cloudfoundry.com/post/13481011231/cloud-foundry-further-improves-support-for-ruby-applications']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//linkedin.png" alt="Linkedin" width="36" height="36"></a> <a href="http://digg.com/submit?partner=addthis&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011231%2Fcloud-foundry-further-improves-support-for-ruby-applications&title=Cloud+Foundry+Further+Improves+Support+for+Ruby+Applications&bodytext=" style="text-decoration: none; white-space: nowrap;" title="Digg" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Digg','http://blog.cloudfoundry.com/post/13481011231/cloud-foundry-further-improves-support-for-ruby-applications']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//digg.png" alt="Digg" width="36" height="36"></a> <a href="http://www.delicious.com/save?v=5&noui&jump=close&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011231%2Fcloud-foundry-further-improves-support-for-ruby-applications&title=Cloud+Foundry+Further+Improves+Support+for+Ruby+Applications" style="text-decoration: none; white-space: nowrap;" title="Delicious" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Delicious','http://blog.cloudfoundry.com/post/13481011231/cloud-foundry-further-improves-support-for-ruby-applications']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=550,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//delicious.png" alt="Delicious" width="36" height="36"></a> <a href="http://www.reddit.com/login?dest=%2Fsubmit%3Furl=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011231%2Fcloud-foundry-further-improves-support-for-ruby-applications&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011231%2Fcloud-foundry-further-improves-support-for-ruby-applications" style="text-decoration: none; white-space: nowrap;" title="Reddit" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Reddit','http://blog.cloudfoundry.com/post/13481011231/cloud-foundry-further-improves-support-for-ruby-applications']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=700,height=500'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//reddit.png" alt="Reddit" width="36" height="36"></a> <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011231%2Fcloud-foundry-further-improves-support-for-ruby-applications&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011231%2Fcloud-foundry-further-improves-support-for-ruby-applications" style="text-decoration: none; white-space: nowrap;" title="Stumbleupon" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Stumbleupon','http://blog.cloudfoundry.com/post/13481011231/cloud-foundry-further-improves-support-for-ruby-applications']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//stumbleupon.png" alt="Stumbleupon" width="36" height="36"></a> <a href="mailto:?subject=Check out http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481011231%2Fcloud-foundry-further-improves-support-for-ruby-applications" style="text-decoration: none; white-space: nowrap;" title="Email" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Email','http://blog.cloudfoundry.com/post/13481011231/cloud-foundry-further-improves-support-for-ruby-applications']); "><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//email.png" alt="Email" width="36" height="36"></a> </div>]]></content:encoded>
			<wfw:commentRss>http://blog.cloudfoundry.com/post/13481011231/cloud-foundry-further-improves-support-for-ruby-applications/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>FeedHenry Brings Mobile App Development to Cloud Foundry</title>
		<link>http://blog.cloudfoundry.com/post/13481010965/feedhenry-brings-mobile-app-development-to-cloud-foundry</link>
		<comments>http://blog.cloudfoundry.com/post/13481010965/feedhenry-brings-mobile-app-development-to-cloud-foundry#comments</comments>
		<pubDate>Tue, 06 Mar 2012 14:05:59 +0000</pubDate>
		<dc:creator>Dekel Tankel</dc:creator>
				<category><![CDATA[Announcement]]></category>
		<category><![CDATA[CloudFoundry]]></category>
		<category><![CDATA[Media]]></category>

		<guid isPermaLink="false">http://blog.cloudfoundry.com/?p=13481010965</guid>
		<description><![CDATA[Mobile application developers can now build and deploy applications on Cloud Foundry using the FeedHenry developer platform. This guest post provides another example from the ecosystem of ISVs hosting their applications on Cloud Foundry. Guest blog post by Mícheál Ó Foghlú. &#8230; <a href="http://blog.cloudfoundry.com/post/13481010965/feedhenry-brings-mobile-app-development-to-cloud-foundry">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Mobile application developers can now build and deploy applications on Cloud Foundry using the <a href="http://mobilecf.feedhenry.com/">FeedHenry</a> developer platform. This guest post provides another example from the ecosystem of ISVs hosting their applications on Cloud Foundry.</p>
<p><em>Guest blog post by<a href="http://feedhenry.com/about-feedhenry/management-team/"> Mícheál Ó Foghlú</a>.</em></p>
<p>Available today at <a href="http://mobilecf.feedhenry.com">mobilecf.feedhenry.com</a>, Cloud Foundry developers can build mobile apps using HTML5, JavaScript and CSS fully integrated and instantly staged to their <a href="http://www.cloudfoundry.com">CloudFoundry.com</a> account. To get started, simply download the <a href="http://mobilecf.feedhenry.com">FeedHenry Command Line tool</a>, using your existing CloudFoundry.com credentials. New subscribers to CloudFoundry.com can join using the promotion code &#8220;<a href="http://my.cloudfoundry.com/signup/feedhenry">feedhenry</a>&#8220;.</p>
<p>In the following blog we will demonstrate how to use the FeedHenry Command Line tool  to clone a sample/template app, (from GitHub), stage the server-side code to CloudFoundry.com (Node.js and Redis), and build a HTML5 &amp; JS app for an Android device. See <a href="http://mobilecf.feedhenry.com/">http://mobilecf.feedhenry.com</a> for detailed instructions. Also check out the <a href="https://mobilecf.feedhenry.com/#studio">FeedHenry App Studio</a> to preview the app that you create here.</p>
<h3>Installing node.js</h3>
<p>The FeedHenry CLI tool, fhc, uses node.js on your local machine. To setup node.js use the node installer located at <a href="http://nodejs.org/#download">http://nodejs.org/#download</a></p>
<h3>Installing or Updating the FeedHenry CLI Tool (fhc)</h3>
<p>Use the Node Package Manager (npm) to install or update the FeedHenry CLI tool (fhc).</p>
<p><code>$ sudo npm install –g fh-fhc</code></p>
<p>(the optional prefix “sudo” gives permission to install system-wide in a Unix style environment).</p>
<p>To test fhc is installed correctly and see the version you have installed, use:</p>
<p><code>$ fhc -v</code></p>
<p>fhc has some built-in documentation; use fhc help for general help, or fhc help [command] for help on a specific command.</p>
<h3>Logging in using your CloudFoundry.com credentials</h3>
<p>To get started with the CLI tool you need to login to the FeedHenry platform using your CloudFoundry.com credentials.  This will automatically create a FeedHenry account at <a href="http://mobilecf.feedhenry.com/">mobilecf.feedhenry.com</a>.</p>
<p><code>$ fhc target <a href="https://mobilecf.feedhenry.com/">https://mobilecf.feedhenry.com</a><br />
$ fhc login &lt;your CloudFoundry.com email&gt; &lt;your CloudFoundry.com password&gt;</code></p>
<p>In the next 3 simple steps, we will illustrate how to create a HTML5/JS app with an instant backend in cloudfoundry.com</p>
<h3>Forking a template app in github (code)</h3>
<p>To edit/modify the template app, login to github, and fork the app to your personal account.</p>
<p><code>https://github.com/feedhenry/App-Anatomy</code></p>
<p>Get the read-only git identifier for your cloned app.</p>
<p><code>git://github.com/&lt;YOUR-ID&gt;/App-Anatomy.git</code></p>
<p>Now create an app in the FeedHenry platform linked to your fork of the template app in github.</p>
<p><code>$ fhc apps create App-Anatomy git://github.com/&lt;YOUR-ID&gt;/App-Anatomy.git</code></p>
<p>If using a secured repository, please check out the documentation <a href="http://docs.feedhenry.com/">docs.feedhenry.com</a> for generating and uploading public/private keys.</p>
<h3>Staging the backend to Cloud Foundry</h3>
<p>Staging to Cloud Foundry requires the use of the unique app identifier &lt;APP-ID&gt; that can be acquired by listing the active FeedHenry apps.</p>
<p><code>$ fhc apps</code></p>
<p>The staging can be done to the debug environment or the live environment.  The former hosts the server-side for “debug” apps, and the latter for “release” apps.  Separating these allows developers to exercise functionality separately in testing before deploying to production.</p>
<p><code>$ fhc stage &lt;APP-ID&gt; --devel</code></p>
<p>or</p>
<p><code>$ fhc stage &lt;APP-ID&gt; --live</code></p>
<p>To ensure that the app has indeed staged correctly use the Cloud Foundry CLI tool (vmc).</p>
<p><code>$ vmc target api.cloudfoundry.com<br />
$ vmc login<br />
$ vmc apps<br />
$ vmc logs &lt;my Cloud Foundry app-id&gt;<br />
</code></p>
<p>We have just staged the cloud code from our forked app.  Each app contains three directories: client, cloud, and shared.  The client directory is for the client-side HTML5/JS app, the cloud directory is for the server-side Node.js code (this is what has been staged).  The shared directory is in both. Check out the documentation for more information on using the shared directory.</p>
<h3>Building the Android client</h3>
<p>To generate an Android debug build of the app:</p>
<p><code>$ fhc build app=&lt;APP-ID&gt; config=debug destination=android version=2.2 download=true</code></p>
<p>The appropriate files are gathered, bundled and dispatched to the FeedHenry build farm. The resulting binary file, for Android, an .apk file, is returned and can then be downloaded to your desktop. You can preview the app using the FeedHenry studio at <a href="http://mobilecf.feedhenry.com/">mobilecf.feedhenry.com</a>.</p>
<p>Load the app onto the phone by using email or Dropbox</p>
<p><em>That’s it – you have built and staged an app in 3 easy steps.</em></p>
<p>Note: Editing the code in the git repository can make changes to the server-side and the client-side functionality.  Those changes can be uploaded to FeedHenry via a git pull request. The updated server-side code can be re-staged, and the updated client-side code can be used to build a new version of the app. To find out more about this template app, App-Anatomy, see FH App-Anatomy in the References.</p>
<p>To get started go to <a href="http://mobilecf.feedhenry.com/">http://mobilecf.feedhenry.com</a></p>
<h3>Additional information</h3>
<ul>
<li>Installing vmc: <a href="http://start.cloudfoundry.com/tools/vmc/installing-vmc.html">http://start.cloudfoundry.com/tools/vmc/installing-vmc.html</a></li>
<li>Installing Node.js: <a href="http://nodejs.org/#download">http://nodejs.org/#download</a></li>
<li>Installing npm: <a href="http://npmjs.org/">http://npmjs.org/</a></li>
<li>Installing fhc: <a href="http://docs.feedhenry.com/our-tools-for-developers/fhc-command-line/">http://docs.feedhenry.com/our-tools-for-developers/fhc-command-line/</a></li>
<li>Cloning an app: <a href="http://docs.feedhenry.com/training-labs/fhc/creating-an-app-from-github/">http://docs.feedhenry.com/training-labs/fhc/creating-an-app-from-github/</a></li>
<li>FeedHenry App-Anatomy: <a href="http://docs.feedhenry.com/training-labs/app-labs/app-anatomy/">http://docs.feedhenry.com/training-labs/app-labs/app-anatomy/</a></li>
<li>FeedHenry Android Build: <a href="http://docs.feedhenry.com/training-labs/fhc/creating-an-android-debug-build/">http://docs.feedhenry.com/training-labs/fhc/creating-an-android-debug-build/</a></li>
<li>FeedHenry Staging to Cloud Foundry: <a href="http://docs.feedhenry.com/training-labs/fhc/creating-an-android-debug-build/#step3">http://docs.feedhenry.com/training-labs/fhc/creating-an-android-debug-build/#step3</a></li>
</ul>
<p>Join us for a <a href="http://www.meetup.com/Cloud-Foundry-Community-Meetup/events/51902052/">Cloud Foundry mobile meetup</a>, March 25th, San Francisco.</p>
<p><em><a href="http://my.cloudfoundry.com/signup/feedhenry">Signup for Cloud Foundry</a> today, and start building your own mobile app!</em></p>
<div class="trackable_sharing"><a href="http://www.facebook.com/sharer.php?u=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010965%2Ffeedhenry-brings-mobile-app-development-to-cloud-foundry" style="text-decoration: none; white-space: nowrap;" title="Facebook" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Facebook','http://blog.cloudfoundry.com/post/13481010965/feedhenry-brings-mobile-app-development-to-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//facebook.png" alt="Facebook" width="36" height="36"></a> <a href="http://twitter.com/share?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010965%2Ffeedhenry-brings-mobile-app-development-to-cloud-foundry&text=FeedHenry+Brings+Mobile+App+Development+to+Cloud+Foundry" style="text-decoration: none; white-space: nowrap;" title="Twitter" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Twitter','http://blog.cloudfoundry.com/post/13481010965/feedhenry-brings-mobile-app-development-to-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//twitter.png" alt="Twitter" width="36" height="36"></a> <a href="http://www.linkedin.com/shareArticle?mini=true&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010965%2Ffeedhenry-brings-mobile-app-development-to-cloud-foundry&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010965%2Ffeedhenry-brings-mobile-app-development-to-cloud-foundry&ro=false&summary=&source=" style="text-decoration: none; white-space: nowrap;" title="Linkedin" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Linkedin','http://blog.cloudfoundry.com/post/13481010965/feedhenry-brings-mobile-app-development-to-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//linkedin.png" alt="Linkedin" width="36" height="36"></a> <a href="http://digg.com/submit?partner=addthis&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010965%2Ffeedhenry-brings-mobile-app-development-to-cloud-foundry&title=FeedHenry+Brings+Mobile+App+Development+to+Cloud+Foundry&bodytext=" style="text-decoration: none; white-space: nowrap;" title="Digg" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Digg','http://blog.cloudfoundry.com/post/13481010965/feedhenry-brings-mobile-app-development-to-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//digg.png" alt="Digg" width="36" height="36"></a> <a href="http://www.delicious.com/save?v=5&noui&jump=close&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010965%2Ffeedhenry-brings-mobile-app-development-to-cloud-foundry&title=FeedHenry+Brings+Mobile+App+Development+to+Cloud+Foundry" style="text-decoration: none; white-space: nowrap;" title="Delicious" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Delicious','http://blog.cloudfoundry.com/post/13481010965/feedhenry-brings-mobile-app-development-to-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=550,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//delicious.png" alt="Delicious" width="36" height="36"></a> <a href="http://www.reddit.com/login?dest=%2Fsubmit%3Furl=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010965%2Ffeedhenry-brings-mobile-app-development-to-cloud-foundry&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010965%2Ffeedhenry-brings-mobile-app-development-to-cloud-foundry" style="text-decoration: none; white-space: nowrap;" title="Reddit" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Reddit','http://blog.cloudfoundry.com/post/13481010965/feedhenry-brings-mobile-app-development-to-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=700,height=500'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//reddit.png" alt="Reddit" width="36" height="36"></a> <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010965%2Ffeedhenry-brings-mobile-app-development-to-cloud-foundry&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010965%2Ffeedhenry-brings-mobile-app-development-to-cloud-foundry" style="text-decoration: none; white-space: nowrap;" title="Stumbleupon" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Stumbleupon','http://blog.cloudfoundry.com/post/13481010965/feedhenry-brings-mobile-app-development-to-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//stumbleupon.png" alt="Stumbleupon" width="36" height="36"></a> <a href="mailto:?subject=Check out http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010965%2Ffeedhenry-brings-mobile-app-development-to-cloud-foundry" style="text-decoration: none; white-space: nowrap;" title="Email" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Email','http://blog.cloudfoundry.com/post/13481010965/feedhenry-brings-mobile-app-development-to-cloud-foundry']); "><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//email.png" alt="Email" width="36" height="36"></a> </div>]]></content:encoded>
			<wfw:commentRss>http://blog.cloudfoundry.com/post/13481010965/feedhenry-brings-mobile-app-development-to-cloud-foundry/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Cloud Foundry Open Tour 2012</title>
		<link>http://blog.cloudfoundry.com/post/13481010905/cloud-foundry-open-tour-2012</link>
		<comments>http://blog.cloudfoundry.com/post/13481010905/cloud-foundry-open-tour-2012#comments</comments>
		<pubDate>Fri, 24 Feb 2012 20:20:22 +0000</pubDate>
		<dc:creator>Adam FitzGerald</dc:creator>
				<category><![CDATA[Announcement]]></category>
		<category><![CDATA[CloudFoundry]]></category>
		<category><![CDATA[Media]]></category>

		<guid isPermaLink="false">http://blog.cloudfoundry.com/?p=13481010905</guid>
		<description><![CDATA[Cloud Foundry Open Tour 2012 is a global series of one day developer events designed to help the thriving cloud community to meet and exchange ideas with the technologists behind the industry&#8217;s leading open platform as a service. Whether you &#8230; <a href="http://blog.cloudfoundry.com/post/13481010905/cloud-foundry-open-tour-2012">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Cloud Foundry Open Tour 2012 is a global series of one day developer events designed to help the thriving cloud community to meet and exchange ideas with the technologists behind the industry&#8217;s leading <a href="http://www.cloudfoundry.com">open platform as a service</a>. Whether you are building enterprise Java applications, Ruby-based social  media sites or  mobile back-end systems using Node.js, these special one  day events are the  fastest way to learn about developing in the cloud. <a href="http://opentour.cloudfoundry.com">Register now</a> for the city nearest you.</p>
<p><a href="http://opentour.cloudfoundry.com/" target="_blank"><img class="aligncenter size-full wp-image-13481010906" title="CFOTour_Blog" src="http://blog.cloudfoundry.com/wp-content/uploads/2012/02/CFOTour_Blog.png" alt="Cloud Foundry Open Tour Map" /></a></p>
<h3>Beijing, Shanghai &amp; Tokyo</h3>
<p>The Cloud Foundry Open Tour begins with special events in <a href="http://opentour.cloudfoundry.com/2012/beijing">Beijing (March 28)</a>, <a href="http://opentour.cloudfoundry.com/2012/shanghai">Shanghai (March 30)</a> and <a href="http://opentour.cloudfoundry.com/2012/tokyo">Tokyo (April 2)</a>. The leading engineers behind Cloud Foundry will give a hands on guide for getting started with the platform and the follow-up sessions will teach developers all the details they need to create productive applications in Java, Ruby or Node.js. Essential sessions include</p>
<ul>
<li>Cloud Foundry Technical Overview by Mark Lucovsky</li>
<li>Cloud Foundry Bootcamp by Chris Richardson</li>
</ul>
<h3>San Francisco, Portland, Austin &amp; Washington D.C.</h3>
<p>There are four great locations for the developer community to learn more about Cloud Foundry: <a href="http://opentour.cloudfoundry.com/2012/sanfrancisco">San Francisco (March 30)</a>, <a href="http://opentour.cloudfoundry.com/2012/portland">Portland (April 2)</a>, <a href="http://opentour.cloudfoundry.com/2012/austin">Austin (April 5)</a> and <a href="http://opentour.cloudfoundry.com/2012/washington">Washington, D.C. (April 9)</a>. The North American cities will help developer learn the basics about Cloud Foundry but will also focus on the broad community of contributors to the open source platform.  In select cities, attendees will have access to special sessions by 10gen about MongoDB, AppFog about PHP as well as presentations about cloud application design by prominent community members. Key sessions include:</p>
<ul>
<li>Cloud Foundry Bootcamp by Dave McCrory</li>
<li>Using MongoDB for Cloud Foundry Applications by Jared Rosoff (10gen)</li>
</ul>
<h3>Kiev, Moscow &amp; London</h3>
<p>In Europe, the Cloud Foundry Open Tour joins forces with the <a href="http://www.springsource.org">Spring</a> and <a href="http://www.grails.org">Grails</a> developer communities to provide multiple tracks that are sure to interest any enterprise developer: <a href="http://opentour.cloudfoundry.com/2012/kiev">Kiev (April 24)</a>, <a href="http://opentour.cloudfoundry.com/2012/moscow">Moscow (April 26)</a> and <a href="http://opentour.cloudfoundry.com/2012/london">London (May 1)</a>. These events are perfect for learning about the latest Spring 3.1 release, recommendations for using noSQL, Grails 2.1 capabilities as well as incredible details about how the Cloud Foundry platform works. Top sessions include:</p>
<ul>
<li>Developing Polyglot Applications on Cloud Foundry by Chris Richardson</li>
<li>Spring 3.1 Review and 3.2 Preview by Juergen Hoeller</li>
<li>What&#8217;s New in Groovy 2.0 by Guillaume Laforge</li>
</ul>
<h3>Register Today</h3>
<p>Meet-up with other cutting edge developers, learn  from the expert technologists behind Cloud Foundry and expand your  opportunities by attending the Cloud Foundry Open Tour.</p>
<p>There is a small registration fee for attending the <a href="http://opentour.cloudfoundry.com/">Cloud Foundry Open Tour</a>, but the current early bird registration provides discounts and space is limited in each city so be sure to save your spot today.</p>
<div class="trackable_sharing"><a href="http://www.facebook.com/sharer.php?u=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010905%2Fcloud-foundry-open-tour-2012" style="text-decoration: none; white-space: nowrap;" title="Facebook" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Facebook','http://blog.cloudfoundry.com/post/13481010905/cloud-foundry-open-tour-2012']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//facebook.png" alt="Facebook" width="36" height="36"></a> <a href="http://twitter.com/share?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010905%2Fcloud-foundry-open-tour-2012&text=Cloud+Foundry+Open+Tour+2012" style="text-decoration: none; white-space: nowrap;" title="Twitter" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Twitter','http://blog.cloudfoundry.com/post/13481010905/cloud-foundry-open-tour-2012']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//twitter.png" alt="Twitter" width="36" height="36"></a> <a href="http://www.linkedin.com/shareArticle?mini=true&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010905%2Fcloud-foundry-open-tour-2012&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010905%2Fcloud-foundry-open-tour-2012&ro=false&summary=&source=" style="text-decoration: none; white-space: nowrap;" title="Linkedin" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Linkedin','http://blog.cloudfoundry.com/post/13481010905/cloud-foundry-open-tour-2012']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//linkedin.png" alt="Linkedin" width="36" height="36"></a> <a href="http://digg.com/submit?partner=addthis&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010905%2Fcloud-foundry-open-tour-2012&title=Cloud+Foundry+Open+Tour+2012&bodytext=" style="text-decoration: none; white-space: nowrap;" title="Digg" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Digg','http://blog.cloudfoundry.com/post/13481010905/cloud-foundry-open-tour-2012']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//digg.png" alt="Digg" width="36" height="36"></a> <a href="http://www.delicious.com/save?v=5&noui&jump=close&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010905%2Fcloud-foundry-open-tour-2012&title=Cloud+Foundry+Open+Tour+2012" style="text-decoration: none; white-space: nowrap;" title="Delicious" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Delicious','http://blog.cloudfoundry.com/post/13481010905/cloud-foundry-open-tour-2012']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=550,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//delicious.png" alt="Delicious" width="36" height="36"></a> <a href="http://www.reddit.com/login?dest=%2Fsubmit%3Furl=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010905%2Fcloud-foundry-open-tour-2012&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010905%2Fcloud-foundry-open-tour-2012" style="text-decoration: none; white-space: nowrap;" title="Reddit" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Reddit','http://blog.cloudfoundry.com/post/13481010905/cloud-foundry-open-tour-2012']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=700,height=500'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//reddit.png" alt="Reddit" width="36" height="36"></a> <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010905%2Fcloud-foundry-open-tour-2012&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010905%2Fcloud-foundry-open-tour-2012" style="text-decoration: none; white-space: nowrap;" title="Stumbleupon" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Stumbleupon','http://blog.cloudfoundry.com/post/13481010905/cloud-foundry-open-tour-2012']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//stumbleupon.png" alt="Stumbleupon" width="36" height="36"></a> <a href="mailto:?subject=Check out http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010905%2Fcloud-foundry-open-tour-2012" style="text-decoration: none; white-space: nowrap;" title="Email" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Email','http://blog.cloudfoundry.com/post/13481010905/cloud-foundry-open-tour-2012']); "><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//email.png" alt="Email" width="36" height="36"></a> </div>]]></content:encoded>
			<wfw:commentRss>http://blog.cloudfoundry.com/post/13481010905/cloud-foundry-open-tour-2012/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Micro Cloud Foundry Streamlines Offline Support and Adds Java Debugging</title>
		<link>http://blog.cloudfoundry.com/post/13481010689/micro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging</link>
		<comments>http://blog.cloudfoundry.com/post/13481010689/micro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging#comments</comments>
		<pubDate>Tue, 21 Feb 2012 16:53:48 +0000</pubDate>
		<dc:creator>Charles Lee</dc:creator>
				<category><![CDATA[Announcement]]></category>
		<category><![CDATA[CloudFoundry]]></category>
		<category><![CDATA[Media]]></category>

		<guid isPermaLink="false">http://blog.cloudfoundry.com/?p=13481010689</guid>
		<description><![CDATA[The Cloud Foundry team released a new version of Micro Cloud FoundryTM including streamlined offline support, Java debugging, up-to-date versions of all languages/frameworks and services as supported on CloudFoundry.com and ability to enable/disable application services. Micro Cloud Foundry is a complete version &#8230; <a href="http://blog.cloudfoundry.com/post/13481010689/micro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The Cloud Foundry team released a new version of <a href="http://blog.cloudfoundry.com/post/9331377393/we-shrunk-the-cloud-introducing-micro-cloud-foundry-for-developers">Micro Cloud Foundry</a><sup>TM</sup> including streamlined offline support, Java debugging, up-to-date versions of all languages/frameworks and services as supported on <a title="Cloud Foundry" href="http://www.cloudfoundry.com">CloudFoundry.com</a> and ability to enable/disable application services.</p>
<p>Micro Cloud Foundry is a complete version of Cloud Foundry that runs in a virtual machine on a developer’s computer. Micro Cloud Foundry has established itself as the convenient and portable Cloud Foundry environment from which developers can easily develop and test their applications.</p>
<p>The new version we release today (version 1.2) , immediately available for download at <a href="http://www.cloudfoundry.com">www.cloudfoundry.com</a> improves upon that convenience and portability by making it very simple to configure your Micro Cloud Foundry instance to either run disconnected from or connected to the internet.  The default network setting has been changed to the offline configuration, so that Micro Cloud Foundry can work flawlessly and consistently anywhere you are: home, office, coffee shop, conference, or even on a plane.</p>
<p>Java developers can now debug a Java application running in Micro Cloud Foundry with a Java debugger similarly to how they have always done with locally running applications.  The user can set break points in the source code, suspend and resume running applications, view the application stack and perform code stepping operations.  To enable Java debugging  users can either push an application through the Cloud Foundry command-line (<a title="VMC" href="http://start.cloudfoundry.com/tools/vmc/installing-vmc.html">VMC</a>) using the &#8216;<code>vmc push &lt;my app&gt; <em><strong>-d</strong></em></code>&#8216; command option or use the built-in debugger of <a title="SpringSource Tool Suite" href="http://www.springsource.com/developer/sts">SpringSource Tool Suite (STS)</a>.  An upcoming release of STS will further improve Java and Grails debugging with Micro Cloud Foundry applications to a seamless user experience.</p>
<p>The new release of Micro Cloud Foundry has updated its included runtimes to the versions indicated in the table below.  These runtimes are now up-to-date with the <a href="http://www.cloudfoundry.com">CloudFoundry.com</a> public service.  A notable addition to the runtimes is Node.js 0.6, which is now available as an option:</p>
<table>
<tbody>
<tr>
<th>Name</th>
<th>Version</th>
</tr>
<tr>
<td>Java 6</td>
<td>1.6</td>
</tr>
<tr>
<td>Node.js</td>
<td>0.4.12</td>
</tr>
<tr>
<td>Node.js</td>
<td>0.6.8</td>
</tr>
<tr>
<td>Ruby 1.8</td>
<td>1.8.7</td>
</tr>
<tr>
<td>Ruby 1.9</td>
<td>1.9.2p180</td>
</tr>
</tbody>
</table>
<p>(This information can be retrieved using the &#8216;<code>vmc runtimes</code>&#8216; command)</p>
<p>Micro Cloud Foundry services have been updated as well to the following versions :</p>
<table>
<tbody>
<tr>
<th>Name</th>
<th>Version</th>
</tr>
<tr>
<td>MongoDB</td>
<td>1.8</td>
</tr>
<tr>
<td>MySQL</td>
<td>5.1</td>
</tr>
<tr>
<td>Postgresql</td>
<td>9.0</td>
</tr>
<tr>
<td>RabbitMQ</td>
<td>2.4</td>
</tr>
<tr>
<td>Redis</td>
<td>2.2</td>
</tr>
</tbody>
</table>
<p>(This information can be retrieved using the &#8216;<code>vmc services</code>&#8216; command)</p>
<p>Since a Micro Cloud Foundry instance by default runs all of the services available in CloudFoundry.com, some of the services may be utilizing precious resources on your machine even if you do not use them.  This can easily be remedied by turning off the services that are unnecessary.  From the main menu of the Micro Cloud Foundry console, select option 8 for services.</p>
<p><a href="http://blog.cloudfoundry.com/wp-content/uploads/2012/02/Screen-Shot-2012-02-02-at-4.46.06-PM.png"><img class="aligncenter size-full wp-image-13481010713" title="Main Menu" src="http://blog.cloudfoundry.com/wp-content/uploads/2012/02/Screen-Shot-2012-02-02-at-4.46.06-PM.png" alt="" width="754" height="649" /></a></p>
<p>From the services menu, you can easily choose to disable a service or re-enable a service that was previously disabled.</p>
<p><a href="http://blog.cloudfoundry.com/wp-content/uploads/2012/02/Screen-Shot-2012-02-02-at-4.47.52-PM.png"><img class="aligncenter size-full wp-image-13481010709" title="Services Menu" src="http://blog.cloudfoundry.com/wp-content/uploads/2012/02/Screen-Shot-2012-02-02-at-4.47.52-PM.png" alt="" width="754" height="649" /></a></p>
<p>To get specific instructions or find out more about these new features for Micro Cloud Foundry, please visit our documentation site at: <a title="Micro Cloud Foundry documentation" href="http://start.cloudfoundry.com/infrastructure/micro/installing-mcf.html">start.cloudfoundry.com</a>.  Additionally, we will be detailing some of these features and technology behind them in future blog posts.  Micro Cloud Foundry 1.2 is immediately available for download at <a title="Micro Cloud Foundry" href="http://www.cloudfoundry.com/micro">CloudFoundry.com</a>, so update yours today!</p>
<p><em>-The Cloud Foundry Team</em></p>
<p><em>Don&#8217;t have a Cloud Foundry account yet?  <a href="http://cloudfoundry.com/signup?utm_source=blog&amp;utm_medium=link&amp;utm_campaign=cloudfoundry-signup" target="_blank">Sign up for free today</a></em></p>
<p>&nbsp;</p>
<div class="trackable_sharing"><a href="http://www.facebook.com/sharer.php?u=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010689%2Fmicro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging" style="text-decoration: none; white-space: nowrap;" title="Facebook" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Facebook','http://blog.cloudfoundry.com/post/13481010689/micro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//facebook.png" alt="Facebook" width="36" height="36"></a> <a href="http://twitter.com/share?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010689%2Fmicro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging&text=Micro+Cloud+Foundry+Streamlines+Offline+Support+and+Adds+Java+Debugging" style="text-decoration: none; white-space: nowrap;" title="Twitter" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Twitter','http://blog.cloudfoundry.com/post/13481010689/micro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//twitter.png" alt="Twitter" width="36" height="36"></a> <a href="http://www.linkedin.com/shareArticle?mini=true&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010689%2Fmicro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010689%2Fmicro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging&ro=false&summary=&source=" style="text-decoration: none; white-space: nowrap;" title="Linkedin" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Linkedin','http://blog.cloudfoundry.com/post/13481010689/micro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//linkedin.png" alt="Linkedin" width="36" height="36"></a> <a href="http://digg.com/submit?partner=addthis&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010689%2Fmicro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging&title=Micro+Cloud+Foundry+Streamlines+Offline+Support+and+Adds+Java+Debugging&bodytext=" style="text-decoration: none; white-space: nowrap;" title="Digg" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Digg','http://blog.cloudfoundry.com/post/13481010689/micro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//digg.png" alt="Digg" width="36" height="36"></a> <a href="http://www.delicious.com/save?v=5&noui&jump=close&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010689%2Fmicro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging&title=Micro+Cloud+Foundry+Streamlines+Offline+Support+and+Adds+Java+Debugging" style="text-decoration: none; white-space: nowrap;" title="Delicious" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Delicious','http://blog.cloudfoundry.com/post/13481010689/micro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=550,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//delicious.png" alt="Delicious" width="36" height="36"></a> <a href="http://www.reddit.com/login?dest=%2Fsubmit%3Furl=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010689%2Fmicro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010689%2Fmicro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging" style="text-decoration: none; white-space: nowrap;" title="Reddit" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Reddit','http://blog.cloudfoundry.com/post/13481010689/micro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=700,height=500'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//reddit.png" alt="Reddit" width="36" height="36"></a> <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010689%2Fmicro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010689%2Fmicro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging" style="text-decoration: none; white-space: nowrap;" title="Stumbleupon" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Stumbleupon','http://blog.cloudfoundry.com/post/13481010689/micro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//stumbleupon.png" alt="Stumbleupon" width="36" height="36"></a> <a href="mailto:?subject=Check out http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010689%2Fmicro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging" style="text-decoration: none; white-space: nowrap;" title="Email" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Email','http://blog.cloudfoundry.com/post/13481010689/micro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging']); "><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//email.png" alt="Email" width="36" height="36"></a> </div>]]></content:encoded>
			<wfw:commentRss>http://blog.cloudfoundry.com/post/13481010689/micro-cloud-foundry-streamlines-offline-support-and-adds-java-debugging/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Cloud Foundry Now Supports the Rails Console</title>
		<link>http://blog.cloudfoundry.com/post/13481010650/cloud-foundry-now-supports-the-rails-console</link>
		<comments>http://blog.cloudfoundry.com/post/13481010650/cloud-foundry-now-supports-the-rails-console#comments</comments>
		<pubDate>Wed, 08 Feb 2012 17:17:56 +0000</pubDate>
		<dc:creator>Jennifer Hickey</dc:creator>
				<category><![CDATA[Announcement]]></category>
		<category><![CDATA[CloudFoundry]]></category>
		<category><![CDATA[Media]]></category>

		<guid isPermaLink="false">http://blog.cloudfoundry.com/?p=13481010650</guid>
		<description><![CDATA[Ruby and Rails developers can now remotely access the popular rails console using the Cloud Foundry command line tool (VMC). This new feature enables inspection of the Cloud Foundry Runtime App environment, troubleshooting application issues in runtime, and even the ability to modify data &#8220;on &#8230; <a href="http://blog.cloudfoundry.com/post/13481010650/cloud-foundry-now-supports-the-rails-console">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Ruby and Rails developers can now remotely access the popular rails console using the Cloud Foundry command line tool (VMC). This new feature enables inspection of the Cloud Foundry Runtime App environment, troubleshooting application issues in runtime, and even the ability to modify data &#8220;on the fly&#8221; for one-off admin tasks.  Using the new <em>vmc rails-console</em> command, developers can target any Cloud Foundry instance, including the upcoming release of Micro Cloud Foundry.</p>
<h3>Getting Started</h3>
<p>First, install or update your Cloud Foundry command line tool (‘VMC’) to the latest preview version using the following command:</p>
<pre><code>gem install vmc --pre</code></pre>
<p>You can verify that you got the right version using:</p>
<pre><code>vmc -v</code></pre>
<p>which should show the version to be 0.3.16.beta.3 or higher.</p>
<p>Next, push or update a Rails app using vmc push.</p>
<p>To access the console, run:</p>
<pre><code>vmc rails-console appname</code></pre>
<p>That&#8217;s all there is to it!  Read on for a more detailed example&#8230;</p>
<h3>Using the Rails Console</h3>
<p>Let&#8217;s get started by deploying a Rails application to Cloud Foundry. We&#8217;ll use <a rel="nofollow" href="http://www.enkiblog.com/">Enki</a>, an open source blog engine.   I&#8217;ll use the <a href="https://github.com/cloudfoundry-samples/enki">cloudfoundry-samples fork</a>, where I&#8217;ve added the mysql2 gem to enki&#8217;s Gemfile.  Now I&#8217;m ready to push to Cloud Foundry:</p>
<pre><code>mycomp:enki$ vmc push mynewblog
Would you like to deploy from the current directory? [Yn]:
Application Deployed URL [mynewblog.cloudfoundry.com]:
Detected a Rails Application, is this correct? [Yn]:
Memory Reservation ("64M", "128M", "256M", "512M", "1G") ["256M"]:
Creating Application: OK
Create services to bind to 'mynewblog'? [yN]: y
1: mongodb
2: mysql
3: postgresql
4: rabbitmq
5: redis
What kind of service?: 2
Specify the name of the service [mysql-8f1d2]:
Creating Application: OK
Creating Service [mysql-8f1d2]: OK
Binding Service [mysql-8f1d2]: OK
Uploading Application:
  Checking for available resources: OK
  Processing resources: OK
  Packing application: OK
  Uploading (20M): OK
Push Status: OK
Staging Application: OK
Starting Application: OK
</code></pre>
<p><code> </code></p>
<p>Looks like the app deployed successfully.  I saved the <a href="http://blog.cloudfoundry.com/post/13481010498/simplified-application-deployment-with-cloud-foundry-manifest">manifest</a> generated from this vmc output, so you can do just a simple &#8220;vmc push&#8221; with the application name and URL after cloning the sample.</p>
<p>I&#8217;ll make my first blog post about this new Rails Console support and wait for the comments to start rolling in&#8230;</p>
<p><a href="http://blog.cloudfoundry.com/wp-content/uploads/2012/01/BlogWithComments.png"><img class="alignnone size-full wp-image-13481010653" src="http://blog.cloudfoundry.com/wp-content/uploads/2012/01/BlogWithComments.png" alt="" width="986" height="391" /></a></p>
<p>Unfortunately, it looks like I have a nasty comment from Joe that needs deleting.  Let&#8217;s fire up the Rails Console through vmc to easily get rid of that comment.  The vmc rails-console command can be run from any directory.</p>
<pre><code>mycomp:enki$ vmc rails-console mynewblog
Deploying tunnel application 'caldecott'.
Uploading Application:
  Checking for available resources: OK
  Packing application: OK
  Uploading (1K): OK
Push Status: OK
Staging Application 'caldecott': OK
Starting Application 'caldecott': OK
Connecting to 'mynewblog' console: OK

irb():001:0&gt;
</code></pre>
<p><code> </code></p>
<p>Since this is the first time I&#8217;ve run Rails Console, vmc will deploy the <a href="http://blog.cloudfoundry.com/post/12928974099/now-you-can-tunnel-into-any-cloud-foundry-data-service">caldecott</a> application for me, which helps tunnel communication to my remote Rails application.  After that, it fires up the console and waits for input.</p>
<pre>
<div><code>irb():</code><code>001</code><code>:</code><code>0</code><code>&gt; </code><code>@comment</code> <code>= Comment.find_by_author(</code><code>"Joe"</code><code>)</code></div>
<div><code>#&lt;Comment id: </code><code>7</code><code>, post_id: </code><code>1</code><code>, author: </code><code>"Joe"</code><code>, </code><code>body: </code><code>"I have something real..."</code>&gt;</div>
<div><code>irb():</code><code>002</code><code>:</code><code>0</code><code>&gt; </code><code>@comment</code><code>.delete</code></div>
<div><code>#&lt;Comment id: </code><code>7</code><code>, post_id: </code><code>1</code><code>, author: </code><code>"Joe"</code><code>, </code><code>body: </code><code>"I have something real..."</code>&gt;</div>
<div><code>irb():</code><code>003</code><code>:</code><code>0</code><code>&gt; </code><code>@comment</code> <code>= Comment.find_by_author(</code><code>"Joe"</code><code>)</code></div>
<div><code>nil</code></div>
<div><code>irb():</code><code>004</code><code>:</code><code>0</code><code>&gt; exit</code></div>
</pre>
<p>In this console session, I use Comment.find_by_author to find Joe&#8217;s comment, delete the comment, and then check to ensure that Joe&#8217;s comment has been removed.   Let&#8217;s refresh the web page and see that it&#8217;s gone:</p>
<p><a href="http://blog.cloudfoundry.com/wp-content/uploads/2012/01/BlogWithNoNastyComment.png"><img class="alignnone size-full wp-image-13481010664" src="http://blog.cloudfoundry.com/wp-content/uploads/2012/01/BlogWithNoNastyComment.png" alt="" width="984" height="321" /></a></p>
<p>This is just one small example of what can be done with Rails Console.  I could use it for all sorts of diagnostics as well, such as perusing the database, running ruby commands to inspect state, or interacting with controller methods to check responsiveness.  For more information, check out the <a rel="nofollow" href="http://guides.rubyonrails.org/command_line.html#rails-console">Rails Console documentation </a>or this <a rel="nofollow" href="http://railscasts.com/episodes/48-console-tricks">handy screencast from RailsCasts</a>.</p>
<h3>Enabling the Rails Console</h3>
<p>The console will automatically be available when you push any Rails application.  If you already have a Rails application deployed to Cloud Foundry, you will need to update or redeploy your app to stage the console support.</p>
<h3>What are you waiting for?  Go try it out!</h3>
<p>Ready to start interacting with your Rails app on Cloud Foundry?  Make sure to update to the latest vmc gem, and you should be ready to give it a whirl.  Please feel free to direct any suggestions or feedback to the <a href="http://support.cloudfoundry.com/home">support forums</a>!</p>
<p><em>- Jennifer Hickey<br />
</em><em>The Cloud Foundry Team</em></p>
<p><em>Don&#8217;t have a Cloud Foundry account yet?  <a href="http://cloudfoundry.com/signup?utm_source=blog&amp;utm_medium=link&amp;utm_campaign=cloudfoundry-signup" target="_blank">Sign up for free today</a></em></p>
<p>&nbsp;</p>
<div class="trackable_sharing"><a href="http://www.facebook.com/sharer.php?u=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010650%2Fcloud-foundry-now-supports-the-rails-console" style="text-decoration: none; white-space: nowrap;" title="Facebook" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Facebook','http://blog.cloudfoundry.com/post/13481010650/cloud-foundry-now-supports-the-rails-console']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//facebook.png" alt="Facebook" width="36" height="36"></a> <a href="http://twitter.com/share?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010650%2Fcloud-foundry-now-supports-the-rails-console&text=Cloud+Foundry+Now+Supports+the+Rails+Console" style="text-decoration: none; white-space: nowrap;" title="Twitter" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Twitter','http://blog.cloudfoundry.com/post/13481010650/cloud-foundry-now-supports-the-rails-console']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//twitter.png" alt="Twitter" width="36" height="36"></a> <a href="http://www.linkedin.com/shareArticle?mini=true&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010650%2Fcloud-foundry-now-supports-the-rails-console&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010650%2Fcloud-foundry-now-supports-the-rails-console&ro=false&summary=&source=" style="text-decoration: none; white-space: nowrap;" title="Linkedin" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Linkedin','http://blog.cloudfoundry.com/post/13481010650/cloud-foundry-now-supports-the-rails-console']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//linkedin.png" alt="Linkedin" width="36" height="36"></a> <a href="http://digg.com/submit?partner=addthis&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010650%2Fcloud-foundry-now-supports-the-rails-console&title=Cloud+Foundry+Now+Supports+the+Rails+Console&bodytext=" style="text-decoration: none; white-space: nowrap;" title="Digg" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Digg','http://blog.cloudfoundry.com/post/13481010650/cloud-foundry-now-supports-the-rails-console']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//digg.png" alt="Digg" width="36" height="36"></a> <a href="http://www.delicious.com/save?v=5&noui&jump=close&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010650%2Fcloud-foundry-now-supports-the-rails-console&title=Cloud+Foundry+Now+Supports+the+Rails+Console" style="text-decoration: none; white-space: nowrap;" title="Delicious" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Delicious','http://blog.cloudfoundry.com/post/13481010650/cloud-foundry-now-supports-the-rails-console']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=550,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//delicious.png" alt="Delicious" width="36" height="36"></a> <a href="http://www.reddit.com/login?dest=%2Fsubmit%3Furl=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010650%2Fcloud-foundry-now-supports-the-rails-console&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010650%2Fcloud-foundry-now-supports-the-rails-console" style="text-decoration: none; white-space: nowrap;" title="Reddit" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Reddit','http://blog.cloudfoundry.com/post/13481010650/cloud-foundry-now-supports-the-rails-console']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=700,height=500'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//reddit.png" alt="Reddit" width="36" height="36"></a> <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010650%2Fcloud-foundry-now-supports-the-rails-console&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010650%2Fcloud-foundry-now-supports-the-rails-console" style="text-decoration: none; white-space: nowrap;" title="Stumbleupon" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Stumbleupon','http://blog.cloudfoundry.com/post/13481010650/cloud-foundry-now-supports-the-rails-console']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//stumbleupon.png" alt="Stumbleupon" width="36" height="36"></a> <a href="mailto:?subject=Check out http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010650%2Fcloud-foundry-now-supports-the-rails-console" style="text-decoration: none; white-space: nowrap;" title="Email" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Email','http://blog.cloudfoundry.com/post/13481010650/cloud-foundry-now-supports-the-rails-console']); "><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//email.png" alt="Email" width="36" height="36"></a> </div>]]></content:encoded>
			<wfw:commentRss>http://blog.cloudfoundry.com/post/13481010650/cloud-foundry-now-supports-the-rails-console/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Multi-Language, Multi-Framework, what about Multi-Cloud?</title>
		<link>http://blog.cloudfoundry.com/post/13481010615/multi-language-multi-framework-what-about-multi-cloud</link>
		<comments>http://blog.cloudfoundry.com/post/13481010615/multi-language-multi-framework-what-about-multi-cloud#comments</comments>
		<pubDate>Thu, 26 Jan 2012 13:02:22 +0000</pubDate>
		<dc:creator>Dave McCrory</dc:creator>
				<category><![CDATA[Announcement]]></category>
		<category><![CDATA[CloudFoundry]]></category>
		<category><![CDATA[Media]]></category>

		<guid isPermaLink="false">http://blog.cloudfoundry.com/?p=13481010615</guid>
		<description><![CDATA[Previously, developers had to put a lot of energy into preserving choice across operating systems and minimizing hard dependencies on specific operating systems.  In the cloud era, there is a similar challenge to preserve choice across clouds and minimize dependencies &#8230; <a href="http://blog.cloudfoundry.com/post/13481010615/multi-language-multi-framework-what-about-multi-cloud">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Previously, developers had to put a lot of energy into preserving choice across operating systems and minimizing hard dependencies on specific operating systems.  In the cloud era, there is a similar challenge to preserve choice across clouds and minimize dependencies on specific clouds.</p>
<p>Most PaaS solutions today force you to write your application to that specific PaaS and that is where your app will stay, much like writing to an OS.  It sits on a public cloud somewhere and cannot be moved without recoding and dependency swaps.  In extreme cases, you as a developer are still directly tied to the constraints of the infrastructure.</p>
<p>Limiting yourself to a single cloud instance restricts your flexibility now and in the future. You may want to move from private to public cloud, or vice versa.  You may want to change from one public cloud provider to another or maybe you are dissatisfied with the pricing or reliability from a particular provider.  Geographic market expansion or compliance needs may push you to new clouds.  Building and deploying applications to clouds that have a proprietary deployment and/or technology stack will impede your cloud flexibility.  You want to preserve your &#8220;Multi-Cloud&#8221; ability.</p>
<p><a href="http://blog.cloudfoundry.com/wp-content/uploads/2012/01/PreviousVsNextGen.png"><img class="aligncenter size-full wp-image-13481010643" title="Previous vs Next Gen" src="http://blog.cloudfoundry.com/wp-content/uploads/2012/01/PreviousVsNextGen.png" alt="" width="671" height="275" /></a>Cloud Foundry gives you the ability to make your application Multi-Cloud by allowing you to write your application once and deploy it to any Cloud Foundry instance, be it public or private or even on to Micro Clouds.</p>
<p>The Cloud Foundry eco-system has grown a great deal in the last 9 months.  There are now multiple public clouds based on Cloud Foundry and several private cloud deployment options that rely on Cloud Foundry.  In addition, we also offer Micro Cloud Foundry (Cloud Foundry in a VM).  All of these options have the ability to take the same Java, Ruby, or other code and deploy an application without modification.</p>
<p><strong>How does Cloud Foundry achieve Multi-Cloud Application Portability?</strong></p>
<p>There are several technologies at work to make Multi-Cloud a reality.</p>
<p><strong><a href="http://blog.cloudfoundry.com/wp-content/uploads/2012/01/Binding1.png"><img class="aligncenter size-full wp-image-13481010644" title="Binding Services" src="http://blog.cloudfoundry.com/wp-content/uploads/2012/01/Binding1.png" alt="" width="553" height="408" /></a>DEAs</strong> – The Dynamic Execution Agents operate as independent entities that carry out requests made by the Cloud Controller.  By being independent, DEAs provide a place for the Application to run without the application being aware of where it is executing (like in a traditional OS).<br />
<strong>Service Gateways</strong> – Provide a common/uniform way of exposing Services (Databases, Message Queues, Stores, etc.) to the Applications running on the DEAs.  By presenting services in a common and uniform way to a running application, it becomes more easily portable.<br />
<strong>Environmental Variables</strong> – The last portion to make applications portable is to provide credentials for services in a standard way to all application runtimes.  In all Cloud Foundry implementations, this is done by injecting a JSON document as an environment variable that lists all bound services and their credentials to the Application.  Once a developer has written their code to leverage this (either by parsing the JSON themselves or by leveraging a framework feature such as Spring 3.1 Profiles, the application can be run on any instance of Cloud Foundry without modification to any of the code.</p>
<p>Below is a 5 Minute video showing a Multi-Cloud Deployment to 5 different Cloud Foundry based Clouds</p>
<p><a href="http://youtu.be/gEQV-hs2gIo" target="_blank">Multi-Cloud using Cloud Foundry &#8211; The Demo</a></p>
<p>(For the fully detailed 13 minute version, <a href="http://www.youtube.com/watch?v=CpooxFjmNyk" target="_blank">click here</a>)</p>
<p>Steve Herrod, VMware&#8217;s Chief Technology Officer further discusses the advantages of the Multi Cloud approach to PaaS in the <a href="http://blogs.vmware.com/console/2012/01/preserving-multi-cloud-choice-and-flexibility-with-cloud-foundry-open-paas.html">following blog post</a>.</p>
<p>Watch a short flash video &#8211; &#8220;<a href="http://youtu.be/cZ0NusMOaP8">Multi-Cloud and Proud</a>&#8221;</p>
<p><em>-The Cloud Foundry Team</em></p>
<p><em>Don&#8217;t have a Cloud Foundry account yet?  <a href="http://cloudfoundry.com/signup?utm_source=blog&amp;utm_medium=link&amp;utm_campaign=cloudfoundry-signup" target="_blank">Sign up for free today</a></em></p>
<div class="trackable_sharing"><a href="http://www.facebook.com/sharer.php?u=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010615%2Fmulti-language-multi-framework-what-about-multi-cloud" style="text-decoration: none; white-space: nowrap;" title="Facebook" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Facebook','http://blog.cloudfoundry.com/post/13481010615/multi-language-multi-framework-what-about-multi-cloud']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//facebook.png" alt="Facebook" width="36" height="36"></a> <a href="http://twitter.com/share?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010615%2Fmulti-language-multi-framework-what-about-multi-cloud&text=Multi-Language%2C+Multi-Framework%2C+what+about+Multi-Cloud%3F" style="text-decoration: none; white-space: nowrap;" title="Twitter" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Twitter','http://blog.cloudfoundry.com/post/13481010615/multi-language-multi-framework-what-about-multi-cloud']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//twitter.png" alt="Twitter" width="36" height="36"></a> <a href="http://www.linkedin.com/shareArticle?mini=true&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010615%2Fmulti-language-multi-framework-what-about-multi-cloud&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010615%2Fmulti-language-multi-framework-what-about-multi-cloud&ro=false&summary=&source=" style="text-decoration: none; white-space: nowrap;" title="Linkedin" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Linkedin','http://blog.cloudfoundry.com/post/13481010615/multi-language-multi-framework-what-about-multi-cloud']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//linkedin.png" alt="Linkedin" width="36" height="36"></a> <a href="http://digg.com/submit?partner=addthis&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010615%2Fmulti-language-multi-framework-what-about-multi-cloud&title=Multi-Language%2C+Multi-Framework%2C+what+about+Multi-Cloud%3F&bodytext=" style="text-decoration: none; white-space: nowrap;" title="Digg" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Digg','http://blog.cloudfoundry.com/post/13481010615/multi-language-multi-framework-what-about-multi-cloud']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//digg.png" alt="Digg" width="36" height="36"></a> <a href="http://www.delicious.com/save?v=5&noui&jump=close&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010615%2Fmulti-language-multi-framework-what-about-multi-cloud&title=Multi-Language%2C+Multi-Framework%2C+what+about+Multi-Cloud%3F" style="text-decoration: none; white-space: nowrap;" title="Delicious" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Delicious','http://blog.cloudfoundry.com/post/13481010615/multi-language-multi-framework-what-about-multi-cloud']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=550,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//delicious.png" alt="Delicious" width="36" height="36"></a> <a href="http://www.reddit.com/login?dest=%2Fsubmit%3Furl=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010615%2Fmulti-language-multi-framework-what-about-multi-cloud&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010615%2Fmulti-language-multi-framework-what-about-multi-cloud" style="text-decoration: none; white-space: nowrap;" title="Reddit" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Reddit','http://blog.cloudfoundry.com/post/13481010615/multi-language-multi-framework-what-about-multi-cloud']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=700,height=500'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//reddit.png" alt="Reddit" width="36" height="36"></a> <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010615%2Fmulti-language-multi-framework-what-about-multi-cloud&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010615%2Fmulti-language-multi-framework-what-about-multi-cloud" style="text-decoration: none; white-space: nowrap;" title="Stumbleupon" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Stumbleupon','http://blog.cloudfoundry.com/post/13481010615/multi-language-multi-framework-what-about-multi-cloud']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//stumbleupon.png" alt="Stumbleupon" width="36" height="36"></a> <a href="mailto:?subject=Check out http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010615%2Fmulti-language-multi-framework-what-about-multi-cloud" style="text-decoration: none; white-space: nowrap;" title="Email" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Email','http://blog.cloudfoundry.com/post/13481010615/multi-language-multi-framework-what-about-multi-cloud']); "><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//email.png" alt="Email" width="36" height="36"></a> </div>]]></content:encoded>
			<wfw:commentRss>http://blog.cloudfoundry.com/post/13481010615/multi-language-multi-framework-what-about-multi-cloud/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>node.js and Cloud Foundry</title>
		<link>http://blog.cloudfoundry.com/post/13481010609/node-js-and-cloud-foundry</link>
		<comments>http://blog.cloudfoundry.com/post/13481010609/node-js-and-cloud-foundry#comments</comments>
		<pubDate>Tue, 24 Jan 2012 22:03:14 +0000</pubDate>
		<dc:creator>Dave McCrory</dc:creator>
				<category><![CDATA[Announcement]]></category>
		<category><![CDATA[CloudFoundry]]></category>
		<category><![CDATA[Media]]></category>

		<guid isPermaLink="false">http://blog.cloudfoundry.com/?p=13481010609</guid>
		<description><![CDATA[Cloud Foundry is a sponsor and participant in this week&#8217;s Node Summit in San Francisco, so it is a good time to recap some of our work with node.js. We&#8217;re finalizing node.js 0.6.7 support, which will be committed to the &#8230; <a href="http://blog.cloudfoundry.com/post/13481010609/node-js-and-cloud-foundry">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Cloud Foundry is a sponsor and participant in this week&#8217;s <a href="http://nodesummit.com/" target="_blank">Node Summit</a> in San Francisco, so it is a good time to recap some of our work with node.js.</p>
<p>We&#8217;re finalizing node.js 0.6.7 support, which will be committed to the <a href="https://github.com/cloudfoundry/vcap" target="_blank">Cloud Foundry GitHub repository</a>.  <a href="http://cloudfoundry.com/" target="_blank">Cloud Foundry.com</a> will begin to support node.js 0.6.7 as a runtime framework in the next week or two.  Because of the rapid pace of innovation around node, we are adding node.js 0.6.7 as an additional runtime, letting you select which version of node you want to run with your application.  This lets Cloud Foundry support multiple node.js versions simultaneously, which is important as it allows applications written against the node.js 0.4.12 version to co-exist with applications developed on node.js 0.6.7.</p>
<p>This work represents the first fruits of our partnership with Joyent, who is the <a href="http://cloudfoundry.com/partners" target="_blank">Cloud Foundry Community Lead</a> for node.js.  Going forward, we will have a joint open source engineering model with Joyent that lets the Cloud Foundry, node.js, and Redis teams all work together to deliver a highly optimized PaaS solution across those components.</p>
<p>The next few months should be big for node.js and the community around it.  Modern applications are becoming more demanding, diverse, and complex.  We see node.js as a great fit in addressing many of the problems posed by this.  A few examples of the efforts going into leveraging node.js with Cloud Foundry are covered in the links below.</p>
<ul>
<li><a href="http://blog.springsource.org/2011/05/03/using-mongodb-redis-node-js-and-spring-mvc-in-a-single-cloud-foundry-application/" target="_blank">Using MongoDB, Redis, node.js, and Spring MVC in a Single Cloud Foundry Application</a></li>
<li><a href="http://blog.mongodb.org/post/6587009156/cloudfoundry-mongodb-and-nodejs" target="_blank">Getting Started with VMware Cloud Foundry, MongoDB, and node.js</a></li>
<li><a href="http://www.rabbitmq.com/blog/2011/08/16/using-the-rabbitmq-service-on-cloud-foundry-with-nodejs/" target="_blank">Using the RabbitMQ Service on Cloud Foundry with node.js</a></li>
</ul>
<p>- The Cloud Foundry Team</p>
<p>Don&#8217;t have a Cloud Foundry account yet?  <a href="http://cloudfoundry.com/signup?utm_source=blog&amp;utm_medium=link&amp;utm_campaign=cloudfoundry-signup" target="_blank">Sign up for free today</a></p>
<div class="trackable_sharing"><a href="http://www.facebook.com/sharer.php?u=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010609%2Fnode-js-and-cloud-foundry" style="text-decoration: none; white-space: nowrap;" title="Facebook" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Facebook','http://blog.cloudfoundry.com/post/13481010609/node-js-and-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//facebook.png" alt="Facebook" width="36" height="36"></a> <a href="http://twitter.com/share?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010609%2Fnode-js-and-cloud-foundry&text=node.js+and+Cloud+Foundry" style="text-decoration: none; white-space: nowrap;" title="Twitter" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Twitter','http://blog.cloudfoundry.com/post/13481010609/node-js-and-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//twitter.png" alt="Twitter" width="36" height="36"></a> <a href="http://www.linkedin.com/shareArticle?mini=true&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010609%2Fnode-js-and-cloud-foundry&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010609%2Fnode-js-and-cloud-foundry&ro=false&summary=&source=" style="text-decoration: none; white-space: nowrap;" title="Linkedin" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Linkedin','http://blog.cloudfoundry.com/post/13481010609/node-js-and-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=500,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//linkedin.png" alt="Linkedin" width="36" height="36"></a> <a href="http://digg.com/submit?partner=addthis&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010609%2Fnode-js-and-cloud-foundry&title=node.js+and+Cloud+Foundry&bodytext=" style="text-decoration: none; white-space: nowrap;" title="Digg" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Digg','http://blog.cloudfoundry.com/post/13481010609/node-js-and-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//digg.png" alt="Digg" width="36" height="36"></a> <a href="http://www.delicious.com/save?v=5&noui&jump=close&url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010609%2Fnode-js-and-cloud-foundry&title=node.js+and+Cloud+Foundry" style="text-decoration: none; white-space: nowrap;" title="Delicious" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Delicious','http://blog.cloudfoundry.com/post/13481010609/node-js-and-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=550,height=350'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//delicious.png" alt="Delicious" width="36" height="36"></a> <a href="http://www.reddit.com/login?dest=%2Fsubmit%3Furl=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010609%2Fnode-js-and-cloud-foundry&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010609%2Fnode-js-and-cloud-foundry" style="text-decoration: none; white-space: nowrap;" title="Reddit" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Reddit','http://blog.cloudfoundry.com/post/13481010609/node-js-and-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=700,height=500'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//reddit.png" alt="Reddit" width="36" height="36"></a> <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010609%2Fnode-js-and-cloud-foundry&title=http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010609%2Fnode-js-and-cloud-foundry" style="text-decoration: none; white-space: nowrap;" title="Stumbleupon" target="_blank" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Stumbleupon','http://blog.cloudfoundry.com/post/13481010609/node-js-and-cloud-foundry']); _trackableshare_window = window.open(this.href,'share','menubar=0,resizable=1,width=750,height=450'); _trackableshare_window.focus(); return false;"><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//stumbleupon.png" alt="Stumbleupon" width="36" height="36"></a> <a href="mailto:?subject=Check out http%3A%2F%2Fblog.cloudfoundry.com%2Fpost%2F13481010609%2Fnode-js-and-cloud-foundry" style="text-decoration: none; white-space: nowrap;" title="Email" onclick="that=this;_gaq.push(['_trackEvent','SocialSharing','Email','http://blog.cloudfoundry.com/post/13481010609/node-js-and-cloud-foundry']); "><img align="absmiddle" src="http://blog.cloudfoundry.com/wp-content/plugins/trackable-social-share-icons/buttons/a4//email.png" alt="Email" width="36" height="36"></a> </div>]]></content:encoded>
			<wfw:commentRss>http://blog.cloudfoundry.com/post/13481010609/node-js-and-cloud-foundry/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

