<?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>CloudMade &#187; ruby</title>
	<atom:link href="http://blog.cloudmade.com/category/ruby/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.cloudmade.com</link>
	<description>The CloudMade Blog</description>
	<lastBuildDate>Tue, 20 Dec 2011 12:03:27 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Bring CloudMade Maps to Your iPhone Application</title>
		<link>http://blog.cloudmade.com/2009/03/19/bring-cloudmade-maps-to-your-iphone-application/</link>
		<comments>http://blog.cloudmade.com/2009/03/19/bring-cloudmade-maps-to-your-iphone-application/#comments</comments>
		<pubDate>Thu, 19 Mar 2009 12:12:46 +0000</pubDate>
		<dc:creator>Cragg</dc:creator>
				<category><![CDATA[api]]></category>
		<category><![CDATA[clients]]></category>
		<category><![CDATA[cloudmade]]></category>
		<category><![CDATA[developers]]></category>
		<category><![CDATA[events]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[apis]]></category>
		<category><![CDATA[applications]]></category>
		<category><![CDATA[crowd-sourcing]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[map library]]></category>
		<category><![CDATA[maps]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[routing]]></category>
		<category><![CDATA[sdk]]></category>

		<guid isPermaLink="false">http://blog.cloudmade.com/?p=160</guid>
		<description><![CDATA[If you&#8217;re looking for maps to add to your iPhone application you&#8217;re in the right place.
CloudMade&#8217;s iPhone Maps Library is an open source library that gives application developers everything you need to create great navigation applications on the iPhone.  You don&#8217;t need to wait any longer to add turn-by-turn navigation for vehicles, pedestrians and cyclists.
The [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re looking for maps to add to your iPhone application you&#8217;re in the right place.</p>
<p>CloudMade&#8217;s <a href="http://is.gd/o09M">iPhone Maps Library</a> is an open source library that gives application developers everything you need to create great navigation applications on the iPhone.  You don&#8217;t need to wait any longer to add turn-by-turn navigation for vehicles, pedestrians and cyclists.</p>
<p>The iPhone Maps Library is part of a suite of <a href="http://cloudmade.com/products">CloudMade APIs and tools</a> that give developers access to regularly updated crowd-sourced maps.  Give your users a unique experience &#8211; take control of the look and feel of your application and create richer, more interactive experiences.</p>
<p>The iPhone Maps Library integrates with other CloudMade tools including <a href="http://developers.cloudmade.com/projects/show/style-editor">Style Editor</a>, a web based tool that gives access to a variety of professionally designed map styles, which you can customize to fit your application&#8217;s specific purpose.</p>
<h3>The are several applications in the App Store that already use CloudMade&#8217;s maps, with many more in the pipline</h3>
<p><a href="http://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/browserRedirect?url=itms%253A%252F%252Fax.itunes.apple.com%252FWebObjects%252FMZStore.woa%252Fwa%252FviewSoftware%253Fid%253D289190494%2526mt%253D8"><img class="size-full wp-image-159 alignnone" src="http://blog.cloudmade.com/wp-content/uploads/2009/03/trails.png" alt="Trails - iPhone App Store" width="200"/></a></p>
<p><em><a href="http://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/browserRedirect?url=itms%253A%252F%252Fax.itunes.apple.com%252FWebObjects%252FMZStore.woa%252Fwa%252FviewSoftware%253Fid%253D289190494%2526mt%253D8">Trails</a> &#8211; Relive your greatest biking, hiking and walking<br />
moments and share them with your friends; Trails lets<br />
you view your activities on a choice of different<br />
CloudMade maps.</em></p>
<p>The main features of CloudMade&#8217;s Map Library are:</p>
<ul>
<li>Quick development time with easy to follow examples</li>
<li>Mapping framework &amp; controls</li>
<li> Custom tile serving</li>
<li> Geocoding</li>
<li> Routing service via vehicle, pedestrian and cycle</li>
<li> Integration with iPhone Location API</li>
</ul>
<p><a href="http://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/browserRedirect?url=itms%253A%252F%252Fax.itunes.apple.com%252FWebObjects%252FMZStore.woa%252Fwa%252FviewSoftware%253Fid%253D297063830%2526mt%253D8"><img class="size-full wp-image-161 alignnone" src="http://blog.cloudmade.com/wp-content/uploads/2009/03/worldview-live.png" alt="WorldView Live - iPhone App Store" width="200"/></a></p>
<p><em><a href="http://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/browserRedirect?url=itms%253A%252F%252Fax.itunes.apple.com%252FWebObjects%252FMZStore.woa%252Fwa%252FviewSoftware%253Fid%253D297063830%2526mt%253D8">WorldView Live</a> &#8211; If the view out of your window isn&#8217;t<br />
exotic enough WorldView Live is the app for you; This<br />
great application lets you view live webcams from all<br />
around the world.</em></p>
<p>CloudMade&#8217;s <a href="http://cloudmade.com/products/iphone-maps-library">iPhone Maps Library</a> provides developers with a real alternative to standard mapping on the iPhone.  This, combined with the ability to let consumers bring their custom maps across with them &#8211; across desktop, mobile and web &#8211; make for a compelling end user experience.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.cloudmade.com/2009/03/19/bring-cloudmade-maps-to-your-iphone-application/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Introducing the CloudMade Developer Zone</title>
		<link>http://blog.cloudmade.com/2009/02/09/introducing-the-cloudmade-developer-zone/</link>
		<comments>http://blog.cloudmade.com/2009/02/09/introducing-the-cloudmade-developer-zone/#comments</comments>
		<pubDate>Mon, 09 Feb 2009 08:45:52 +0000</pubDate>
		<dc:creator>nick</dc:creator>
				<category><![CDATA[api]]></category>
		<category><![CDATA[cloudmade]]></category>
		<category><![CDATA[developers]]></category>
		<category><![CDATA[products]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://blog.cloudmade.com/?p=121</guid>
		<description><![CDATA[The CloudMade Developer Zone launched last week in San Francisco.  We&#8217;ll be bring the launch to London this Thursday February 12th.  There will be keynotes, live demonstrations from CloudMade partners that will include social networking, navigation, real estate, personal tracking, fleet tracking applications and more.  There are only a few places left, [...]]]></description>
			<content:encoded><![CDATA[<p>The CloudMade Developer Zone launched last week in San Francisco.  We&#8217;ll be bring the launch to London this Thursday February 12th.  There will be keynotes, live demonstrations from CloudMade partners that will include social networking, navigation, real estate, personal tracking, fleet tracking applications and more.  There are only a few places left, so please <a href="http://developer.cloudmade.com/event/launch">sign-up now</a> to avoid disappointment.</p>
<p>The CloudMade Developer Zone has all the resources developers need to get started building awesome location based applications.  Here are some highlights:</p>
<h3>Video Tutorials</h3>
<p>Video tutorials are a great way to get started with a new tool quickly.  We&#8217;re going to be publishing lots more screen casts, like this one about our Style Editor:</p>
<p><object width="400" height="302"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3051909&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=3051909&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="302"></embed></object><br /><a href="http://vimeo.com/3051909">CloudMade StyleEditor ScreenCast</a> from <a href="http://vimeo.com/user1244922">CloudMade</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
<p>If you&#8217;ve been using any of our tools or APIs, you can create a screen cast and have it featured on the site.  You could show how to make an amazing map style using the Style Editor, how to take our Ruby API and integrate it into a Rails application or how to use our open source repositories to modify our iPhone Maps Library.  Email in your screen casts <a href='mailto:screencasts@cloudmade.com'>here</a> and we&#8217;ll get back to you.</p>
<h3>Open Source Libraries and APIs</h3>
<p>We want to make it as easy as possible for you to get started using our services.  So that you can be up and running with as little hassle as possible, we have open source libraries for Ruby, Java, Python and iPhone Objective-C.  From the Developer Zone you can browse and check-out the source code, join the project and contribute back to the community.  There&#8217;s also step-by-step tutorials for each library and wiki pages where you can add any tips you might have.</p>
<p>You can find out more about the Developer Zone <a href='http://developers.cloudmade.com/projects'>here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.cloudmade.com/2009/02/09/introducing-the-cloudmade-developer-zone/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Hexaflexamaps</title>
		<link>http://blog.cloudmade.com/2008/11/12/hexaflexamaps/</link>
		<comments>http://blog.cloudmade.com/2008/11/12/hexaflexamaps/#comments</comments>
		<pubDate>Wed, 12 Nov 2008 18:56:32 +0000</pubDate>
		<dc:creator>matt</dc:creator>
				<category><![CDATA[ruby]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://blog.cloudmade.com/?p=99</guid>
		<description><![CDATA[Looking through a very old copy of Martin Gardner&#8217;s Mathematical Games, I stumbled upon his article about Flexagons and thought &#8220;what would these look like with maps on them?&#8221;. This is what they look like (at a really low resolution), but it is much more fun to make your own&#8230;


You can either start with this [...]]]></description>
			<content:encoded><![CDATA[<p>Looking through a very old copy of Martin Gardner&#8217;s <a href="http://www.amazon.co.uk/Hexaflexagons-Probability-Paradoxes-Tower-Hanoi/dp/0521735254/">Mathematical Games</a>, I stumbled upon his article about <a href="http://en.wikipedia.org/wiki/Flexagon">Flexagons</a> and thought &#8220;what would these look like with maps on them?&#8221;. This is what they look like (at a really low resolution), but it is much more fun to make your own&#8230;</p>
<p><a href="http://video.google.com/videoplay?docid=8566006444099268533&amp;hl=en"><img class="alignnone size-medium wp-image-111" src="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa-snapshot.jpg" alt="Video of hexaflexamap flexing." width="300" height="169" /></a><br />
<span id="more-99"></span><br />
You can either start with this <a href="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexagon1.jpg">pre-made image</a>, or download a <a href="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexagonrb1.gz">ruby script</a> (requires <a href="http://rmagick.rubyforge.org/">RMagick</a> and <a href="http://rubyforge.org/projects/proj4rb/">proj4r</a>) and you can make your own.The pre-made image shows the area around CloudMade&#8217;s London offices in three styles; <a href="http://cloudmade.com/products/web-maps-lite">Web maps style</a>, <a href="http://cloudmade.com/products/mobile-tiles">Mobile maps style</a> and the award-winning <a href="http://www.opencyclemap.org/">OpenCycleMap</a> style. Web maps style is a clean, general-purpose style showing the rich dataset that OpenStreetMap provides. Mobile maps style is a simple, high-contrast style which is ideal for low-resolution devices. The OpenCycleMap style is a specialist style created for cyclists using data from OpenStreetMap to highlight cyclepaths, bike parks, cycle shops and other features that are relevant to cyclists.</p>
<p>To assemble, you&#8217;ll need scissors and glue or tape. Start by printing the image.</p>
<p><a href="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage01.jpg"><img class="alignnone size-medium wp-image-100" src="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage01.jpg" alt="The printed hexaflexamap." width="300" height="225" /></a></p>
<p>Now cut out the image.</p>
<p><a href="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage02.jpg"><img class="alignnone size-medium wp-image-101" src="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage02.jpg" alt="The hexaflexamap after being cut out." width="300" height="225" /></a></p>
<p>Fold along the centreline so that maps are showing on both sides, except for two triangles at the ends.</p>
<p><a href="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage03.jpg"><img class="alignnone size-medium wp-image-102" src="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage03.jpg" alt="After folding into a single strip." width="300" height="234" /></a></p>
<p>Holding the hexaflexamap by the near end in the picture above, fold the rest of the strip behind at the first join between two different map styles.</p>
<p><a href="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage04.jpg"><img class="alignnone size-medium wp-image-103" src="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage04.jpg" alt="After the first fold. " width="300" height="231" /></a></p>
<p>Fold behind again after the next change in map style.</p>
<p><a href="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage05.jpg"><img class="alignnone size-medium wp-image-104" src="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage05.jpg" alt="After the second fold." width="300" height="206" /></a></p>
<p>Bring the tail end (on the right above) on top of the head.</p>
<p><a href="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage06.jpg"><img class="alignnone size-medium wp-image-105" src="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage06.jpg" alt="" width="300" height="253" /></a></p>
<p>Fold the white tab visible above and fold underneath, so that it faces the white tab that we started with and glue them together with paper glue. Tape also works, but thickens the hexaflexamap, which can make it more difficult to flex later on.</p>
<p><a href="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage07.jpg"><img class="alignnone size-medium wp-image-106" src="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage07.jpg" alt="After gluing." width="300" height="243" /></a></p>
<p>After waiting for the glue to dry, fold the hexaflexamap along its lines of symmetry and pinch one of the visible seams.</p>
<p><a href="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage08.jpg"><img class="alignnone size-medium wp-image-107" src="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage08.jpg" alt="Pinching a seam." width="300" height="275" /></a></p>
<p>Looking into the centre, you should now be able to open out the hexaflexamap to reveal a new layer!</p>
<p><a href="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage09.jpg"><img class="alignnone size-medium wp-image-108" src="http://blog.cloudmade.com/wp-content/uploads/2008/11/flexa_stage09.jpg" alt="The new layer." width="300" height="245" /></a></p>
<p>Have fun with hexaflexamaps!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.cloudmade.com/2008/11/12/hexaflexamaps/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>MiniBar / WhereCamp Slides</title>
		<link>http://blog.cloudmade.com/2007/06/08/minibar-wherecamp-slides/</link>
		<comments>http://blog.cloudmade.com/2007/06/08/minibar-wherecamp-slides/#comments</comments>
		<pubDate>Fri, 08 Jun 2007 11:17:57 +0000</pubDate>
		<dc:creator>nick-import</dc:creator>
				<category><![CDATA[REST]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[ruby on rails]]></category>
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://blog.cloudmade.com/2007/06/08/minibar-wherecamp-slides/</guid>
		<description><![CDATA[Here are the slides to accompany the presentaion given at MiniBar on the 25th May.  We gave a similar version of the presentation as a lightening talk at WhereCamp, in Sunnyvale CA on the 2nd June.  Enjoy!

]]></description>
			<content:encoded><![CDATA[<p>Here are the slides to accompany the presentaion given at MiniBar on the 25th May.  We gave a similar version of the presentation as a lightening talk at WhereCamp, in Sunnyvale CA on the 2nd June.  Enjoy!</p>
<p><object type="application/x-shockwave-flash" data="https://s3.amazonaws.com:443/slideshare/ssplayer.swf?id=61719&#038;doc=zxv-ecouriercouk-an-open-access-api3139" width="425" height="348"><param name="movie" value="https://s3.amazonaws.com:443/slideshare/ssplayer.swf?id=61719&#038;doc=zxv-ecouriercouk-an-open-access-api3139" /></object></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.cloudmade.com/2007/06/08/minibar-wherecamp-slides/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Add Custom SQL to Rails Active Record Migrations</title>
		<link>http://blog.cloudmade.com/2007/04/10/add-custom-sql-to-rails-active-record-migrations/</link>
		<comments>http://blog.cloudmade.com/2007/04/10/add-custom-sql-to-rails-active-record-migrations/#comments</comments>
		<pubDate>Tue, 10 Apr 2007 16:35:48 +0000</pubDate>
		<dc:creator>nick-import</dc:creator>
				<category><![CDATA[ruby]]></category>
		<category><![CDATA[ruby on rails]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://blog.cloudmade.com/2007/04/10/add-custom-sql-to-rails-active-record-migrations/</guid>
		<description><![CDATA[Ruby on Rails&#8217; Migrations offer a nice alternative to traditional SQL DDL statements, that fit in with the Rails agile development philosophy.  Migrations let you use Ruby code to create, alter and drop databases and tables, allowing you, amongst other things to switch databases mid-development, without having to refine your SQL.
Such convenience can sometimes [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.rubyonrails.org/">Ruby on Rails&#8217;</a> <a href="http://api.rubyonrails.org/classes/ActiveRecord/Migration.html">Migrations</a> offer a nice alternative to traditional SQL DDL statements, that fit in with the Rails <em>agile development</em> philosophy.  Migrations let you use Ruby code to create, alter and drop databases and tables, allowing you, amongst other things to switch databases mid-development, without having to refine your SQL.</p>
<p>Such convenience can sometimes mean a lack of flexibility.  If you are trying to add a column to a MySQL database with type <em>bigint unsigned</em>, you&#8217;ll run into problems as ActiveRecord does not support unsinged bigints.  You can solve the problem with some creative use of Ruby&#8217;s command line execution features &#8211; any code in a ruby file that is included between backticks(&#8217; ` &#8216;)  will be executed as a command line argument &#8211; so now you can include custom SQL statements without losing the benefits of Migrations:</p>
<p><code></p>
<pre>
class MyClass < ActiveRecord::Migration
  def self.up
    remove_column :mytable, <img src='http://blog.cloudmade.com/wp-includes/images/smilies/icon_surprised.gif' alt=':o' class='wp-smiley' /> ld_column
    puts `mysql database -u user -ppassword
    -e 'alter table mytable add column new_column bigint unsigned'`
  end
..
..
end
</pre>
<p></code></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.cloudmade.com/2007/04/10/add-custom-sql-to-rails-active-record-migrations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

