<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>iRomin</title>
	
	<link>http://www.rominirani.com</link>
	<description>Tutorials, App Reviews, APIs, Articles</description>
	<lastBuildDate>Wed, 23 May 2012 05:20:22 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/Iromin" /><feedburner:info uri="iromin" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>On Monkeys, Coders and API Hackathons</title>
		<link>http://feedproxy.google.com/~r/Iromin/~3/YhQWV70yx04/</link>
		<comments>http://www.rominirani.com/2012/05/23/on-monkeys-coders-and-api-hackathons/#comments</comments>
		<pubDate>Wed, 23 May 2012 05:20:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://www.rominirani.com/?p=1174</guid>
		<description><![CDATA[A recent post by Ryan Carson titled &#8220;I’m tired of the opportunists and their hackathons&#8221; has generated lot of comments. The post seems to project API Hackathons in a bad light and almost exploitative in nature. I leave it up to the reader to go through Ryan Carson&#8217;s post and he does bring up some important <a href='http://www.rominirani.com/2012/05/23/on-monkeys-coders-and-api-hackathons/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>A recent post by Ryan Carson titled &#8220;<a href="http://ryanleecarson.tumblr.com/post/23432270643/im-tired-of-the-opportunists-and-their-hackathons">I’m tired of the opportunists and their hackathons</a>&#8221; has generated <a href="http://news.ycombinator.com/item?id=3999853">lot of comments</a>. The post seems to project API Hackathons in a bad light and almost exploitative in nature. I leave it up to the reader to go through Ryan Carson&#8217;s post and he does bring up some important points but they seem more sensational in nature.</p>
<p>For those who are not aware of what API Hackathons are, I will try to break it down. Lets first look at the word &#8220;API&#8221;. An API (and here I am talking about it being publicly available) is some core functionality that a company exposes for its partners and the developer community to interact with from within their applications. A simple example is that of Twitter, which exposes an API to send a tweet from any application. A Hackathon is a gathering organized by one or more API providers, who would like their API to get used by interested developers in 24-48 hour sessions.</p>
<p>Some points from my side:</p>
<p>1) No developer has been forced to attend these Hackathons and each one is attending them on their own to satisfy whatever their need might be from the Hackathon. It could be the prize money offered, networking, learning about APIs in general, just spending time. In other words, who are we to judge someone and say that X is a zombie and is so infatuated with the programming bug that these Hackathons are a drug to X.</p>
<p>2) What is wrong in companies offering money to try out their APIs, to build a prototype or whatever. Another way to look at it is that the companies are not bothered about what products are built with their APIs during the hackathon, they are simply throwing money to win some eyeballs. Isnt that advertising ? And what is wrong with that ? Do you expect any developer (unless you are popular service) to simply start using your API without allocating $$$ in your budget towards building the developer community? Hackathons are just one of the mechanism IMO, to build your developer community, get some feedback from them and so on.</p>
<p>3) Hackathons are probably just the first step in the journey. API providers can approach the winners or interesting ideas that did not win and then encourage their development (by putting resources of course - time, people and money on the table) and take it forward.</p>
<p>4) There are instances when investors have been scouting around these events and independently opening up a channel with the developers if there is something of interest.</p>
<p>5) It does not help to state that developers are idiots and they continue to slog and work for long hours with low wages. At no point in time now or in the future, can we determine what is the right kind of compensation for the effort put in? Software development is not a mechanical task with fixed raw materials and that goes from Step 1 &#8211; Step 2 &#8230; Step 10. It is very difficult to come up with precise pricing that is agreeable to all. At the end of the day, as a software developer it is very encouraging to know that you will have a constant stream of work (and pay), provided you are willing to adjust, take some risks, keep learning new things, have a healthy network and have a good online presence.</p>
<p>In summary, it is the same ecosystem of give and take that we are seeing in action. And Hackathons are no different. In fact, I would encourage anyone who has never been to one to go out there, put your mind and effort to it in those 1-2 days and see for yourself, a side of yours that you never knew existed.</p>
<p>&nbsp;</p>

<p><a href="http://feedads.g.doubleclick.net/~a/949wc5oEZlHdmvU2gRWykI2Hjv8/0/da"><img src="http://feedads.g.doubleclick.net/~a/949wc5oEZlHdmvU2gRWykI2Hjv8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/949wc5oEZlHdmvU2gRWykI2Hjv8/1/da"><img src="http://feedads.g.doubleclick.net/~a/949wc5oEZlHdmvU2gRWykI2Hjv8/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Iromin/~4/YhQWV70yx04" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.rominirani.com/2012/05/23/on-monkeys-coders-and-api-hackathons/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.rominirani.com/2012/05/23/on-monkeys-coders-and-api-hackathons/</feedburner:origLink></item>
		<item>
		<title>ProgrammableWeb – My Articles – April 2012</title>
		<link>http://feedproxy.google.com/~r/Iromin/~3/0Npom7nAyWg/</link>
		<comments>http://www.rominirani.com/2012/05/17/programmableweb-my-articles-april-2012/#comments</comments>
		<pubDate>Thu, 17 May 2012 10:05:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[APIs]]></category>

		<guid isPermaLink="false">http://www.rominirani.com/?p=1169</guid>
		<description><![CDATA[My writings for ProgrammableWeb in April 2012: Now Inviting Developers to the Evernote DevCup Will BYOD usher in APIzation of Enterprises Google and Others Return for API Mashup Contest Appcelerator Now Offers Cloud Services and Mobile Web SDK Africa&#8217;s Largest Social Network Launches API Developers Stand To Win Gold in MintChip Challenge Pint Labs Brews Up New <a href='http://www.rominirani.com/2012/05/17/programmableweb-my-articles-april-2012/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>My writings for <a href="http://www.programmableweb.com">ProgrammableWeb </a>in April 2012:</p>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td>
<ul>
<li><a href="http://blog.programmableweb.com/?p=28920">Now Inviting Developers to the Evernote DevCup</a></li>
</ul>
</td>
</tr>
<tr>
<td>
<ul>
<li><a href="http://blog.programmableweb.com/?p=28833">Will BYOD usher in APIzation of Enterprises</a></li>
</ul>
</td>
</tr>
<tr>
<td>
<ul>
<li><a href="http://blog.programmableweb.com/?p=28717">Google and Others Return for API Mashup Contest</a></li>
</ul>
</td>
</tr>
<tr>
<td>
<ul>
<li><a href="http://blog.programmableweb.com/?p=28667">Appcelerator Now Offers Cloud Services and Mobile Web SDK</a></li>
</ul>
</td>
</tr>
<tr>
<td>
<ul>
<li><a href="http://blog.programmableweb.com/?p=28555">Africa&#8217;s Largest Social Network Launches API</a></li>
</ul>
</td>
</tr>
<tr>
<td>
<ul>
<li><a href="http://blog.programmableweb.com/?p=28411">Developers Stand To Win Gold in MintChip Challenge</a></li>
</ul>
</td>
</tr>
<tr>
<td>
<ul>
<li><a href="http://blog.programmableweb.com/?p=28177">Pint Labs Brews Up New Version of BreweryDB and API</a></li>
</ul>
</td>
<td></td>
</tr>
</tbody>
</table>

<p><a href="http://feedads.g.doubleclick.net/~a/IayXHHkDkQVvnSi4d7IVVEJpDSc/0/da"><img src="http://feedads.g.doubleclick.net/~a/IayXHHkDkQVvnSi4d7IVVEJpDSc/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/IayXHHkDkQVvnSi4d7IVVEJpDSc/1/da"><img src="http://feedads.g.doubleclick.net/~a/IayXHHkDkQVvnSi4d7IVVEJpDSc/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Iromin/~4/0Npom7nAyWg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.rominirani.com/2012/05/17/programmableweb-my-articles-april-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.rominirani.com/2012/05/17/programmableweb-my-articles-april-2012/</feedburner:origLink></item>
		<item>
		<title>Android Developer Workshop – May 12 , 13</title>
		<link>http://feedproxy.google.com/~r/Iromin/~3/j16fIu6hGkU/</link>
		<comments>http://www.rominirani.com/2012/05/14/android-developer-workshop-may-12-13/#comments</comments>
		<pubDate>Mon, 14 May 2012 06:27:18 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Mobile]]></category>

		<guid isPermaLink="false">http://www.rominirani.com/?p=1158</guid>
		<description><![CDATA[The 12th edition of the Android Developer Worskhop went off successfully in Mumbai. The batch was a mix of interesting folks: iOS, PHP and Java programmers. It is encouraging to see that interest in Android as a platform is significant enough. Both the days went off well with our topics ranging from setting up the <a href='http://www.rominirani.com/2012/05/14/android-developer-workshop-may-12-13/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>The 12th edition of the <a href="mindstormsoftware.com/android-training.html">Android Developer Worskhop</a> went off successfully in Mumbai. The batch was a mix of interesting folks: iOS, PHP and Java programmers. It is encouraging to see that interest in Android as a platform is significant enough.</p>
<p>Both the days went off well with our topics ranging from setting up the Dev environment, Android Activities, Built In Intents and User Interface taking up the first day. The 2nd day kicked off with List Activities, Menu, Persistence Options, Networking and GPS/Maps. We rounded off the session with introduction to the Play Marketplace, building a APK and uploading the application into the Play Marketplace.</p>
<p>Here are some pictures from the workshop:</p>
<p><a href="http://www.rominirani.com/wp-content/uploads/2012/05/DSCN1414.jpg"><br />

<a href='http://www.rominirani.com/2012/05/14/android-developer-workshop-may-12-13/dscn1414/' title='DSCN1414'><img width="150" height="150" src="http://www.rominirani.com/wp-content/uploads/2012/05/DSCN1414-150x150.jpg" class="attachment-thumbnail" alt="DSCN1414" title="DSCN1414" /></a>
<a href='http://www.rominirani.com/2012/05/14/android-developer-workshop-may-12-13/dscn1417/' title='DSCN1417'><img width="150" height="150" src="http://www.rominirani.com/wp-content/uploads/2012/05/DSCN1417-150x150.jpg" class="attachment-thumbnail" alt="DSCN1417" title="DSCN1417" /></a>
<a href='http://www.rominirani.com/2012/05/14/android-developer-workshop-may-12-13/dscn1418/' title='DSCN1418'><img width="150" height="150" src="http://www.rominirani.com/wp-content/uploads/2012/05/DSCN1418-150x150.jpg" class="attachment-thumbnail" alt="DSCN1418" title="DSCN1418" /></a>
<a href='http://www.rominirani.com/2012/05/14/android-developer-workshop-may-12-13/dscn1419/' title='DSCN1419'><img width="150" height="150" src="http://www.rominirani.com/wp-content/uploads/2012/05/DSCN1419-150x150.jpg" class="attachment-thumbnail" alt="DSCN1419" title="DSCN1419" /></a>
<a href='http://www.rominirani.com/2012/05/14/android-developer-workshop-may-12-13/dscn1421/' title='DSCN1421'><img width="150" height="150" src="http://www.rominirani.com/wp-content/uploads/2012/05/DSCN1421-150x150.jpg" class="attachment-thumbnail" alt="DSCN1421" title="DSCN1421" /></a>
</p>
<p></a></p>
<p>&nbsp;</p>
<p>The feedback was great and my interaction with a completely unique batch this time has given me more insights on things that I can further tweak in the course.</p>
<p>It is satisfying to note that we have completed our 12th edition of the Workshop now. We plan to conduct another one in June. If you are interested, <a href="mindstormsoftware.com/android-training.html">sign up for the mailing list</a> to get notified when the dates are announced.</p>
<p>Till next time&#8230;</p>

<p><a href="http://feedads.g.doubleclick.net/~a/XCk872iYYDa9oFfP2R5MJd1RXGE/0/da"><img src="http://feedads.g.doubleclick.net/~a/XCk872iYYDa9oFfP2R5MJd1RXGE/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/XCk872iYYDa9oFfP2R5MJd1RXGE/1/da"><img src="http://feedads.g.doubleclick.net/~a/XCk872iYYDa9oFfP2R5MJd1RXGE/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Iromin/~4/j16fIu6hGkU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.rominirani.com/2012/05/14/android-developer-workshop-may-12-13/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.rominirani.com/2012/05/14/android-developer-workshop-may-12-13/</feedburner:origLink></item>
		<item>
		<title>Android Dev Workshop – Happy Dozen</title>
		<link>http://feedproxy.google.com/~r/Iromin/~3/XHr9sah79BI/</link>
		<comments>http://www.rominirani.com/2012/05/11/android-dev-workshop-happy-dozen/#comments</comments>
		<pubDate>Fri, 11 May 2012 09:47:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Mobile]]></category>

		<guid isPermaLink="false">http://www.rominirani.com/?p=1145</guid>
		<description><![CDATA[A small but significant milestone for Mind Storm Software Pvt. Ltd. Our 2-Day Android Developer Workshop, which teaches the basics of Android programming is going to hold its 12th edition tomorrow. When I started this workshop in September of 2011, I did not know how the reaction to the course would be? I have not <a href='http://www.rominirani.com/2012/05/11/android-dev-workshop-happy-dozen/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>A small but significant milestone for <a href="http://mindstormsoftware.com">Mind Storm Software Pvt. Ltd</a>. Our 2-Day <a href="http://mindstormsoftware.com/android-training.html">Android Developer Workshop</a>, which teaches the basics of Android programming is going to hold its 12th edition tomorrow. When I started this workshop in September of 2011, I did not know how the reaction to the course would be? I have not done much marketing for it except for a <a href="mindstormsoftware.com/android-training.html">website page</a>, word of mouth, colleagues and friends, who have played a role in publicizing it, etc.</p>
<p>We thank them all and for everyone who has attended the workshop, we cannot thank you enough.</p>
<p>Here is a look at some statistics:</p>
<ul>
<li>125+ people have attended the 2-Day Workshop</li>
<li>If I count the workshop happening over this weekend, we have held 12 workshops in total</li>
<li>2 of them were for corporate clients</li>
<li>2 of them were overseas, in Dubai and Abu Dhabi. All the rest were held in Mumbai</li>
</ul>
<p>Now for some fun facts:</p>
<ul>
<li>There have been no dropouts i.e. people who registered and then did not turn up for the workshop</li>
<li>At least 15-20% of the participants were not familiar with Java, but that was not a stumbling block</li>
<li>A majority of our workshops have been held at the Residency Hotel in Mumbai and we have got the opportunity to use all their meeting rooms</li>
<li>1 Batch had an average age of 20</li>
</ul>
<p>We hope to continue the momentum in this year along with new courses. Yes &#8211; there has been a clear demand for different topics and rest assured that June will see the new courses debut.</p>
<p>Some people have asked me what keeps me going doing the same course over and over again? The reason is very simple: The biggest joy for me is to see the sheer delight in the participant eye&#8217;s when they run the mobile application on the device. That is the only fuel I need.</p>
<p>&nbsp;</p>
<p><img class="aligncenter" src="http://t1.gstatic.com/images?q=tbn:ANd9GcQKGKUFog2CPhIIxPxt29mOlPxSsaXvuDzTGX_xmcdsHO4zKvPm" alt="" /></p>
<div></div>

<p><a href="http://feedads.g.doubleclick.net/~a/VxMA5zxrHt2YA4BYqk-6JyDzBy8/0/da"><img src="http://feedads.g.doubleclick.net/~a/VxMA5zxrHt2YA4BYqk-6JyDzBy8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/VxMA5zxrHt2YA4BYqk-6JyDzBy8/1/da"><img src="http://feedads.g.doubleclick.net/~a/VxMA5zxrHt2YA4BYqk-6JyDzBy8/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Iromin/~4/XHr9sah79BI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.rominirani.com/2012/05/11/android-dev-workshop-happy-dozen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.rominirani.com/2012/05/11/android-dev-workshop-happy-dozen/</feedburner:origLink></item>
		<item>
		<title>Tablet vs Tablet</title>
		<link>http://feedproxy.google.com/~r/Iromin/~3/p_01ClB1izk/</link>
		<comments>http://www.rominirani.com/2012/05/07/tablet-vs-tablet/#comments</comments>
		<pubDate>Mon, 07 May 2012 09:34:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://www.rominirani.com/?p=1139</guid>
		<description><![CDATA[    This happened for real and I am not making it up. I went to recharge my mobile phone yesterday evening. To do that, I went to  a small electronic shop that also sells mobile phones, repairs mobile phones and does mobile recharge for prepaid customers like me. While the person helping me out <a href='http://www.rominirani.com/2012/05/07/tablet-vs-tablet/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<h1><img class="alignnone" src="data:image/jpeg;base64,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" alt="" width="275" height="183" />    <img class="alignnone" src="https://encrypted-tbn3.google.com/images?q=tbn:ANd9GcTAwym-5nhmBRcrfQLEljUtz9CYpOuqXyWDVQiLhdxAF78Kk79M" alt="" width="275" height="183" /></h1>
<p>This happened for real and I am not making it up.</p>
<p>I went to recharge my mobile phone yesterday evening. To do that, I went to  a small electronic shop that also sells mobile phones, repairs mobile phones and does mobile recharge for prepaid customers like me. While the person helping me out was punching the mobile recharge amount on the phone, one fellow came in a hurry and simply said (I will use Hindi here):</p>
<p><strong>Man :</strong> Tablet hain kya?  (<em>English : Do you have a Tablet?)</em></p>
<p><strong>Man at Shop Counter :</strong> Kya ? <em>(English: What ? )</em></p>
<p><strong>Man :</strong> Karbon Tablet hain kya? <em>(English : Do you have the <a href="http://www.karbonntablet.com/">Karbon Tablet</a>?)</em></p>
<p><strong>Man at Shop Counter:</strong> Sorry. Baajoo ke Medical shop mein tablet milenga. <em>(English : Sorry, you will get that in the medical shop next door)</em></p>
<p>I kept quiet about it but was amused for sure. The future is going to be very interesting&#8230;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>

<p><a href="http://feedads.g.doubleclick.net/~a/_J-guUMgsNTAeADhk7kK24k9ZBQ/0/da"><img src="http://feedads.g.doubleclick.net/~a/_J-guUMgsNTAeADhk7kK24k9ZBQ/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/_J-guUMgsNTAeADhk7kK24k9ZBQ/1/da"><img src="http://feedads.g.doubleclick.net/~a/_J-guUMgsNTAeADhk7kK24k9ZBQ/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Iromin/~4/p_01ClB1izk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.rominirani.com/2012/05/07/tablet-vs-tablet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.rominirani.com/2012/05/07/tablet-vs-tablet/</feedburner:origLink></item>
		<item>
		<title>Mumbai Data Sets and Cloud Foundry</title>
		<link>http://feedproxy.google.com/~r/Iromin/~3/hR1BGNoCalY/</link>
		<comments>http://www.rominirani.com/2012/05/01/mumbai-data-sets-and-cloud-foundry/#comments</comments>
		<pubDate>Tue, 01 May 2012 08:43:57 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>

		<guid isPermaLink="false">http://www.rominirani.com/?p=1134</guid>
		<description><![CDATA[I am pleased to be featured at the Cloud Foundry blog, where I have discussed how Cloud Foundry is my preferred choice of PaaS today and the announcement of Mumbai Data Sets that re powered by Cloud Foundry. The Mumbai Data Sets currently available are: Blood Banks in Mumbai Help line numbers Taxi/Auto Fare The <a href='http://www.rominirani.com/2012/05/01/mumbai-data-sets-and-cloud-foundry/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>I am pleased to be <a href="http://blog.cloudfoundry.com/post/13481011676/cloud-foundry-powers-data-sets-for-mumbai">featured</a> at the <a href="http://www.cloudfoundry.com">Cloud Foundry</a> blog, where I have discussed how Cloud Foundry is my preferred choice of PaaS today and the announcement of Mumbai Data Sets that re powered by Cloud Foundry.</p>
<p>The Mumbai Data Sets currently available are:</p>
<ul>
<li>Blood Banks in Mumbai</li>
<li>Help line numbers</li>
<li>Taxi/Auto Fare</li>
</ul>
<p>The site is available at <a href="http://mumbaidata.cloudfoundry.com">http://mumbaidata.cloudfoundry.com</a> and every data set is available as a REST API. Here are the REST End points:</p>
<ul>
<li>Mumbai Blood Banks: <a href="http://mumbaidata.cloudfoundry.com/bloodbanks">http://mumbaidata.cloudfoundry.com/bloodbanks</a></li>
<li>Mumbai Help Lines: <a href="http://mumbaidata.cloudfoundry.com/helplines">http://mumbaidata.cloudfoundry.com/helplines</a></li>
<li>Mumbai Taxi Fare: <a href="http://mumbaidata.cloudfoundry.com/taxifare">http://mumbaidata.cloudfoundry.com/taxifare</a></li>
<li>Mumbai Auto Fare: <a href="http://mumbaidata.cloudfoundry.com/autofare">http://mumbaidata.cloudfoundry.com/autofare</a></li>
</ul>
<p>The application is a Node.js application and I loved the way Node made it possible for me to expose the API in rapid time. Cloud Foundry being a polyglot platform allowed me to deploy the Node.js application. It also powers some of my other Java based applications.</p>
<p>If you have not given <a href="http://www.cloudfoundry.com">Cloud Foundry</a> a try, I definitely recommend it.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/DMkMnFgZTB4CETnmp1WqNJduOpA/0/da"><img src="http://feedads.g.doubleclick.net/~a/DMkMnFgZTB4CETnmp1WqNJduOpA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/DMkMnFgZTB4CETnmp1WqNJduOpA/1/da"><img src="http://feedads.g.doubleclick.net/~a/DMkMnFgZTB4CETnmp1WqNJduOpA/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Iromin/~4/hR1BGNoCalY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.rominirani.com/2012/05/01/mumbai-data-sets-and-cloud-foundry/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.rominirani.com/2012/05/01/mumbai-data-sets-and-cloud-foundry/</feedburner:origLink></item>
		<item>
		<title>AppEngine Location Detection Update : X-AppEngine-Country and more</title>
		<link>http://feedproxy.google.com/~r/Iromin/~3/YxlLAmgo3oE/</link>
		<comments>http://www.rominirani.com/2012/04/25/appengine-location-detection-update-x-appengine-country-and-more/#comments</comments>
		<pubDate>Wed, 25 Apr 2012 09:35:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Google App Engine]]></category>

		<guid isPermaLink="false">http://www.rominirani.com/?p=1120</guid>
		<description><![CDATA[Google App Engine has announced version 1.6.5 of its App Engine SDK. I was pleasantly surprised to find an excellent feature that was hidden away in the Release Notes. Here is the nugget: All user requests have X-AppEngine-Region, X-AppEngine-City, and X-AppEngine-CityLatLong headers which contain location information based on the IP address of the client request. For a full description of <a href='http://www.rominirani.com/2012/04/25/appengine-location-detection-update-x-appengine-country-and-more/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://appengine.google.com">Google App Engine</a> has announced version 1.6.5 of its App Engine SDK. I was pleasantly surprised to find an excellent feature that was hidden away in the <a href="http://code.google.com/p/googleappengine/wiki/SdkForJavaReleaseNotes">Release Notes</a>. Here is the nugget:</p>
<ul>
<li>All user requests have <tt>X-AppEngine-Region</tt>, <tt>X-AppEngine-City</tt>, and <tt>X-AppEngine-CityLatLong</tt> headers which contain location information based on the IP address of the client request. For a full description of these headers, see:</li>
<ul>
<li><a href="https://developers.google.com/appengine/docs/java/runtime#Request_Headers" rel="nofollow">https://developers.google.com/appengine/docs/java/runtime#Request_Headers</a></li>
</ul>
</ul>
<p>I had covered <a href="http://www.rominirani.com/2011/07/11/x-appengine-country-http-header-google-app-engine/">earlier</a> on <strong>X-AppEngine-country</strong> and the fact that it worked quite well. And I had suggested just offhand that Google should probably take this one still further and provide other fine grained information too like city. It looks like they have gone further than that and include region, city and latitude / longitude.</p>
<p>In addition to the X-AppEngine-Country in the request header, it has now introduced the following additional location based headers with each request:</p>
<ul>
<li><strong>X-AppEngine-Region</strong></li>
<li><strong>X-AppEngine-City</strong></li>
<li><strong>X-AppEngine-CityLatLong</strong></li>
</ul>
<div>The availability of this information is surely going to be useful to a lot of applications that earlier had to resort to additional network calls to get this information from the IP Address.</div>
<div></div>
<div>To test out, I wrote a simple Google App Engine Java project which has a single page (<strong>index.jsp</strong>) that simply sniffs the value of these header and prints it out and shows a map of where you are visiting from.</div>
<div></div>
<div>Here is the snippet of code that prints out the different header values based where you are accessing the page:</div>
<pre>&lt;h2&gt;Hello My Friend. Your co-ordinates are: &lt;/h2&gt;
&lt;h3&gt; Country : &lt;%=request.getHeader("X-AppEngine-Country") %&gt;&lt;/h3&gt;
&lt;h3&gt; Region : &lt;%=request.getHeader("X-AppEngine-Region") %&gt;&lt;/h3&gt;
&lt;h3&gt; City : &lt;%=request.getHeader("X-AppEngine-City") %&gt;&lt;/h3&gt;
&lt;h3&gt; Latitude,Longitude : &lt;%=request.getHeader("X-AppEngine-CityLatLong") %&gt;&lt;/h3&gt;</pre>
<p>Since I live in India, it does a good job and prints out the following (as shown in the screenshot below):</p>
<p><a href="http://www.rominirani.com/wp-content/uploads/2012/04/appenginecountry.png"><img class="aligncenter size-full wp-image-1122" title="appenginecountry" src="http://www.rominirani.com/wp-content/uploads/2012/04/appenginecountry.png" alt="" width="429" height="515" /></a></p>
<h3 style="text-align: center;">You can <a href="http://mylocationtest.appspot.com">try</a> it too.</h3>
<p>Do you envision using this in your application? What have you been using so far to get similar functionality?</p>
<p>Source Code on <a href="https://github.com/rominirani/AppEngine-Location-Headers-Example">GitHub</a>.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/Al3VojOdVl48InTunisHD_XDcAU/0/da"><img src="http://feedads.g.doubleclick.net/~a/Al3VojOdVl48InTunisHD_XDcAU/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Al3VojOdVl48InTunisHD_XDcAU/1/da"><img src="http://feedads.g.doubleclick.net/~a/Al3VojOdVl48InTunisHD_XDcAU/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Iromin/~4/YxlLAmgo3oE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.rominirani.com/2012/04/25/appengine-location-detection-update-x-appengine-country-and-more/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.rominirani.com/2012/04/25/appengine-location-detection-update-x-appengine-country-and-more/</feedburner:origLink></item>
		<item>
		<title>A Personal Milestone : My 200th article for ProgrammableWeb</title>
		<link>http://feedproxy.google.com/~r/Iromin/~3/eBwA6ljieik/</link>
		<comments>http://www.rominirani.com/2012/04/24/a-personal-milestone-my-200th-article-for-programmableweb/#comments</comments>
		<pubDate>Tue, 24 Apr 2012 17:17:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[APIs]]></category>

		<guid isPermaLink="false">http://www.rominirani.com/?p=1113</guid>
		<description><![CDATA[It has been a terrific experience to write for one of my favorite sites : ProgrammableWeb. Of course I started following ProgrammableWeb much before I started writing for them and it has played a major role in starting the API revolution, that has changed forever the way we talk to applications. Its API directory is <a href='http://www.rominirani.com/2012/04/24/a-personal-milestone-my-200th-article-for-programmableweb/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>It has been a terrific experience to write for one of my favorite sites : <a href="http://www.programmableweb.com">ProgrammableWeb</a>.</p>
<p>Of course I started following <a href="http://www.programmableweb.com">ProgrammableWeb</a> much before I started writing for them and it has played a major role in starting the API revolution, that has changed forever the way we talk to applications. Its API directory is the largest and the only one of its kind and the daily stories keep throwing up some little gem or the other.</p>
<p>I hope that my stories have been informative over the years and with <strong>my 200th story</strong> now published &#8220;<a href="http://blog.programmableweb.com/2012/04/24/will-byod-usher-in-apization-of-enterprises/">Will BYOD usher in APIzation of Enterprises</a>&#8220;, I shall start once again towards the next set of stories.</p>
<p>Thank you <a href="https://twitter.com/#!/johnmusser">John</a> and <a href="https://twitter.com/#!/adamd">Adam</a> for this wonderful opportunity. Adam &#8212; you are the best Editor that I have worked with.</p>
<p>Check out the <a href="http://www.rominirani.com/category/apis/">articles</a> over the last 18 months&#8230;</p>

<p><a href="http://feedads.g.doubleclick.net/~a/EHKSN4yzDCFJe1gbS0VbBANu6xM/0/da"><img src="http://feedads.g.doubleclick.net/~a/EHKSN4yzDCFJe1gbS0VbBANu6xM/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/EHKSN4yzDCFJe1gbS0VbBANu6xM/1/da"><img src="http://feedads.g.doubleclick.net/~a/EHKSN4yzDCFJe1gbS0VbBANu6xM/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Iromin/~4/eBwA6ljieik" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.rominirani.com/2012/04/24/a-personal-milestone-my-200th-article-for-programmableweb/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.rominirani.com/2012/04/24/a-personal-milestone-my-200th-article-for-programmableweb/</feedburner:origLink></item>
		<item>
		<title>Enterprise Mobile Development + HTML5 Workshop at Motorola Channel Power Event</title>
		<link>http://feedproxy.google.com/~r/Iromin/~3/7M8LNDaeT8o/</link>
		<comments>http://www.rominirani.com/2012/04/03/enterprise-mobile-development-html5-workshop-at-motorola-channel-power-event/#comments</comments>
		<pubDate>Tue, 03 Apr 2012 16:00:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Presentations]]></category>

		<guid isPermaLink="false">http://www.rominirani.com/?p=1101</guid>
		<description><![CDATA[Last weekend, I went to Abu Dhabi to speak at the Motorola Channel Power Event. My talks focused on the HTML5 Application Development Framework from Motorola called RhoElements. RhoElements is an HTML5 based framework for developing Enterprise Grade Mobile applications. Its killer feature as far as I am concerned is its integration with device capabilities <a href='http://www.rominirani.com/2012/04/03/enterprise-mobile-development-html5-workshop-at-motorola-channel-power-event/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Last weekend, I went to Abu Dhabi to speak at the Motorola Channel Power Event. My talks focused on the HTML5 Application Development Framework from Motorola called RhoElements. RhoElements is an HTML5 based framework for developing Enterprise Grade Mobile applications. Its killer feature as far as I am concerned is its integration with device capabilities that are crucial to Enterprise mobile applications.</p>
<p>Let me elaborate a bit. Consumer apps are not equal to Enterprise mobile apps. Enterprise mobile apps are a completely different breed of applications and have key characteristics that differentiate them from Consumer Apps. UI &#8216;Sexiness&#8217; is not the norm typically and the focus is on key features like:</p>
<ul>
<li>Security</li>
<li>Enterprise Integration</li>
<li>Usability : Less keystrokes, Contextual Information</li>
<li>Device Capabilities Integration : Support for barcode scanning, signature capture and much more.</li>
</ul>
<p>Motorola RhoElements has signficantly added its extension to HTML via Javascript libraries that integrate with the device drivers at a low level, thus giving rise to extremely powerful Enterprise mobile applications that do all sorts of things like barcode scanning and are still written in pure HTML, Javascript and CSS.</p>
<p>The next version of RhoElements which consist of RhoMobile Suite is likely to push the envelope much further. Generation of Mobile Applications for target mobile OS like iOS, Android, BB and Windows Phone along with the RhoSync Cloud product to sync up your local transactions is going to be interesting.</p>
<p>During the event, I spoke for about 15 minutes on Day 1, where I shared my experience of RhoElements in brief and then on Day 2, I conducted a 2-hour workshop on ET1 (The Enterprise Grade Android Tablet from Motorola) where I demonstrated various development options like Native Android apps and HTML5 based apps. I covered some HTML5 concepts and then we did a deep dive into developing a HTML5 RhoElements application (with barcode scanning capability).</p>
<p>Take a look at the 2 presentations below:</p>
<p><span style="text-decoration: underline;"><strong>The Future of Enterprise Mobile Development</strong></span></p>
<object type='application/x-shockwave-flash' wmode='opaque' data='http://static.slideshare.net/swf/ssplayer2.swf?id=12270313&doc=enterpriseapplicationdevelopment-rominiranifinal-120403101048-phpapp01' width='695' height='570'><param name='movie' value='http://static.slideshare.net/swf/ssplayer2.swf?id=12270313&doc=enterpriseapplicationdevelopment-rominiranifinal-120403101048-phpapp01' /><param name='allowFullScreen' value='true' /></object>
<p>&nbsp;</p>
<p><span style="text-decoration: underline;"><strong>Workshop on Application Development for Motorola RhoElements and ET1</strong></span></p>
<object type='application/x-shockwave-flash' wmode='opaque' data='http://static.slideshare.net/swf/ssplayer2.swf?id=12270350&doc=breakout-applicationdevelopmentworkshop-et1-rhoelements-120403101403-phpapp02' width='695' height='570'><param name='movie' value='http://static.slideshare.net/swf/ssplayer2.swf?id=12270350&doc=breakout-applicationdevelopmentworkshop-et1-rhoelements-120403101403-phpapp02' /><param name='allowFullScreen' value='true' /></object>
<p>&nbsp;</p>
<p>A big Thank You to Motorola for giving me the opportunity to speak as an external consultant at the Channel Power conference.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/5WdSDcA903mAgOuq0RQQn_Fxbzg/0/da"><img src="http://feedads.g.doubleclick.net/~a/5WdSDcA903mAgOuq0RQQn_Fxbzg/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/5WdSDcA903mAgOuq0RQQn_Fxbzg/1/da"><img src="http://feedads.g.doubleclick.net/~a/5WdSDcA903mAgOuq0RQQn_Fxbzg/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Iromin/~4/7M8LNDaeT8o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.rominirani.com/2012/04/03/enterprise-mobile-development-html5-workshop-at-motorola-channel-power-event/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.rominirani.com/2012/04/03/enterprise-mobile-development-html5-workshop-at-motorola-channel-power-event/</feedburner:origLink></item>
		<item>
		<title>Android Apps From My Students : Light Me Up by Ajit Mahajani</title>
		<link>http://feedproxy.google.com/~r/Iromin/~3/sv5JxDFa2V4/</link>
		<comments>http://www.rominirani.com/2012/04/03/android-apps-from-my-students-light-me-up-by-ajit-mahajani/#comments</comments>
		<pubDate>Tue, 03 Apr 2012 05:02:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Apps]]></category>
		<category><![CDATA[Reviews]]></category>

		<guid isPermaLink="false">http://www.rominirani.com/?p=1094</guid>
		<description><![CDATA[I am pleased to announce that Ajit Mahajani, one of the participants from my 2-Day Android Workshop has just published his first application in the Google Play (formerly known as Android Marketplace) Store. The application titled &#8220;Light Me Up&#8220; is a strategy game where you have  light up all the tiles on the board. The tiles <a href='http://www.rominirani.com/2012/04/03/android-apps-from-my-students-light-me-up-by-ajit-mahajani/' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>I am pleased to announce that <a href="http://ajitmahajani.wordpress.com">Ajit Mahajani</a>, one of the participants from my 2-Day Android Workshop has just published his first application in the Google Play (formerly known as Android Marketplace) Store.</p>
<p>The application titled <strong>&#8220;<a href="https://play.google.com/store/apps/details?id=com.ajitmahajani.lightmeup">Light Me Up</a>&#8220;</strong> is a strategy game where you have  light up all the tiles on the board. The tiles toggle their light every time you tap on it and the catch is that it also toggles the vertical and horizontal row.</p>
<p><img src="https://lh4.ggpht.com/lpXe9dG5UCJrOcERcYHgmxjEAm3r0pnfvFFCkwl1P1rLF3DVidtANvRx-GMANX8VeCc=h230" alt="" /> <img src="https://lh5.ggpht.com/7VIgwgvYmlCFnq3V9t1XvNOUCGypZLsoEzhUeJMjvinCSUd6tfYOiQQ-8NqLm9f08OQ=h230" alt="" /> <img src="https://lh6.ggpht.com/680a1ptvG8gO_JV0ZdeDoV6l9M5LgbYtfvv_ImE99ELfN-GxiH5UT4ikz9wA2J8iHBI=h230" alt="" /> <img src="https://lh5.ggpht.com/nU59peKRuPRc10TVpUc3b1qz-FBMcQIRaEhSsGKckX9QHWxgCT6U8s9cjKmOSCmInRw=h230" alt="" /> <img src="https://lh5.ggpht.com/qACOyZ2yFxmmzNltmNJ41aDQRPi40pmoqnKhAkAVNQSwkt6E48GUDUPi3-ZmLGQ-zUU=h230" alt="" /></p>
<p>The game is slick looking, lets you choose your grid, colors and also saves high scores.</p>
<p>Great stuff Ajit ! May you release many such applications on the Play Store. Ajit is also blogging about his experiences writing Android applications and is sharing some great tips on Android programming. Take a look at his <a href="http://ajitmahajani.wordpress.com">blog</a>.</p>
<p>If you have attended my workshop and have published an Android application, please let me know. And of course, if you want to take your first steps to writing Android applications, come and attend my <a href="http://www.mindstormsoftware.com/android-training.html">2-Day Android workshop</a>.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/Tv0pNyBrl7-fHVGIVN5p3zIMdS4/0/da"><img src="http://feedads.g.doubleclick.net/~a/Tv0pNyBrl7-fHVGIVN5p3zIMdS4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Tv0pNyBrl7-fHVGIVN5p3zIMdS4/1/da"><img src="http://feedads.g.doubleclick.net/~a/Tv0pNyBrl7-fHVGIVN5p3zIMdS4/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/Iromin/~4/sv5JxDFa2V4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.rominirani.com/2012/04/03/android-apps-from-my-students-light-me-up-by-ajit-mahajani/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.rominirani.com/2012/04/03/android-apps-from-my-students-light-me-up-by-ajit-mahajani/</feedburner:origLink></item>
	</channel>
</rss>

