<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>RemVee.blog</title>
    <link>http://blog.remvee.net/</link>
    <description>RemVee.blog do { |item| item.mangle }</description>
    <item>
      <title>EXIFR 1.1.1</title>
      <link>http://blog.remvee.net/2011/09/12/EXIFR_1_1_1</link>
      <guid>http://blog.remvee.net/2011/09/12/EXIFR_1_1_1</guid>
      <description>&lt;p&gt;I&amp;#8217;ve added some convenience methods to access &lt;span class="caps"&gt;GPS&lt;/span&gt; because people &lt;a href="https://github.com/soychicka/exifr/commit/6418ac12d54fc79aaeb96fccda052b8f697d99e4"&gt;really&lt;/a&gt; &lt;a href="https://github.com/picuous/exifr/commit/1911eff333f7498b8a8de22c3d27e413889d8572"&gt;seem&lt;/a&gt; &lt;a href="https://github.com/jb-san/exifr/commit/601ed1b27187faa6d151b3aab5709c7c2154ef0d"&gt;to&lt;/a&gt; &lt;a href="https://github.com/remvee/exifr/issues/21"&gt;want&lt;/a&gt; it.  Is should be fully backward compatible with earlier versions;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;EXIFR::JPEG.new('enkhuizen.jpg').gps.latitude  # =&amp;gt; 52.7197888888889
EXIFR::JPEG.new('enkhuizen.jpg').gps.longitude # =&amp;gt; 5.28397777777778&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;</description>
      <author>remco@remvee.net (Remco van 't Veer)</author>
      <pubDate>Mon, 12 Sep 2011 09:00:00 +0200</pubDate>
    </item>
    <item>
      <title>EXIFR 1.0.6</title>
      <link>http://blog.remvee.net/2011/07/23/EXIFR_1_0_6</link>
      <guid>http://blog.remvee.net/2011/07/23/EXIFR_1_0_6</guid>
      <description>&lt;p&gt;&lt;img src="http://blog.remvee.net/attachment/exifr-pleister/pleister.png" class="top-right" alt="" /&gt; Just released &lt;a href="http://exifr.rubyforge.org/"&gt;&lt;span class="caps"&gt;EXIF&lt;/span&gt; Reader&lt;/a&gt; &lt;a href="http://rubygems.org/gems/exifr/versions/1.0.6"&gt;1.0.6&lt;/a&gt; Ruby gem.  This is a bugfix release for &lt;a href="https://github.com/remvee/exifr/issues/20"&gt;issue 20&lt;/a&gt;.  The &lt;span class="caps"&gt;TIFF&lt;/span&gt; decoder now reads as many frames as possible instead of throwing an exception when hitting a bad frame.&lt;/p&gt;</description>
      <author>remco@remvee.net (Remco van 't Veer)</author>
      <pubDate>Sat, 23 Jul 2011 12:00:00 +0200</pubDate>
    </item>
    <item>
      <title>EXIFR 1.0.2</title>
      <link>http://blog.remvee.net/2010/08/04/EXIFR_1_0_2</link>
      <guid>http://blog.remvee.net/2010/08/04/EXIFR_1_0_2</guid>
      <description>&lt;p&gt;&lt;img src="http://blog.remvee.net/attachment/exifr-pleister/pleister.png" class="top-right" alt="" /&gt; Today I released &lt;a href="http://rubygems.org/gems/exifr/versions/1.0.2"&gt;version 1.0.2&lt;/a&gt; of &lt;a href="http://exifr.rubyforge.org/"&gt;&lt;span class="caps"&gt;EXIF&lt;/span&gt; Reader&lt;/a&gt; to fix a Ruby 1.8.6 incompatibility.  Thanks to &lt;a href="http://github.com/Jpunt"&gt;Jasper Haggenburg&lt;/a&gt;, &lt;a href="http://github.com/mokolabs"&gt;Patrick Crowley&lt;/a&gt;, &lt;a href="http://github.com/jywarren"&gt;Jeffrey Warren&lt;/a&gt; and &lt;a href="http://github.com/ileitch"&gt;Ian Leitch&lt;/a&gt; for finding, analyzing and fixing this problem.&lt;/p&gt;</description>
      <author>remco@remvee.net (Remco van 't Veer)</author>
      <pubDate>Wed, 04 Aug 2010 21:16:00 +0200</pubDate>
    </item>
    <item>
      <title>EXIFR 1.0.0</title>
      <link>http://blog.remvee.net/2010/04/07/EXIFR_1_0_0</link>
      <guid>http://blog.remvee.net/2010/04/07/EXIFR_1_0_0</guid>
      <description>&lt;p&gt;&lt;img src="http://blog.remvee.net/attachment/exifr/code-snippet.png" class="right" alt="" /&gt; After 4 years &lt;a href="http://exifr.rubyforge.org/"&gt;&lt;span class="caps"&gt;EXIF&lt;/span&gt; Reader&lt;/a&gt; finally reaches it&amp;#8217;s first major-version-day.  It has been pretty stable for a while now and the &lt;span class="caps"&gt;API&lt;/span&gt; didn&amp;#8217;t change in any painful way since the first release.&lt;/p&gt;
&lt;p&gt;So here it is: &lt;strong&gt;version 1.0.0&lt;/strong&gt;.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;  gem install exifr&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;
&lt;p&gt;Thanks to Makoto Kishimoto, Mark Lundquist, Victor Bogado, Forian Munz and other people I forgot to record in the &lt;a href="http://github.com/remvee/exifr/blob/release-1.0.0/CHANGELOG"&gt;&lt;span class="caps"&gt;CHANGELOG&lt;/span&gt;&lt;/a&gt; for sending me patches and test images.&lt;/p&gt;</description>
      <author>remco@remvee.net (Remco van 't Veer)</author>
      <pubDate>Wed, 07 Apr 2010 22:11:00 +0200</pubDate>
    </item>
    <item>
      <title>EXIFR on GitHub</title>
      <link>http://blog.remvee.net/2008/07/23/EXIFR_on_GitHub</link>
      <guid>http://blog.remvee.net/2008/07/23/EXIFR_on_GitHub</guid>
      <description>&lt;p&gt;Yesterday I copied the &lt;a href="http://exifr.rubyforge.org/"&gt;&lt;span class="caps"&gt;EXIFR&lt;/span&gt;&lt;/a&gt; subversion &lt;a href="http://exifr.rubyforge.org/svn/"&gt;repository&lt;/a&gt; from &lt;a href="http://rubyforge.org/"&gt;RubyForge&lt;/a&gt; to &lt;a href="http://github.com/"&gt;GitHub&lt;/a&gt;; &lt;a href="http://github.com/remvee/exifr"&gt;remvee/exifr&lt;/a&gt;.  So go ahead, fork and change the things you don&amp;#8217;t like!&lt;/p&gt;
&lt;p&gt;For more information on contributing to a project on GitHub see: &lt;a href="http://railsontherun.com/2008/3/3/how-to-use-github-and-submit-a-patch"&gt;How to use github and submit a patch&lt;/a&gt;.&lt;/p&gt;</description>
      <author>remco@remvee.net (Remco van 't Veer)</author>
      <pubDate>Wed, 23 Jul 2008 00:57:00 +0200</pubDate>
    </item>
    <item>
      <title>EXIFR 0.10.6, security fix</title>
      <link>http://blog.remvee.net/2008/01/15/EXIFR_0_10_6_security_fix</link>
      <guid>http://blog.remvee.net/2008/01/15/EXIFR_0_10_6_security_fix</guid>
      <description>&lt;p&gt;A specially crafted &lt;a href="http://exifr.rubyforge.org/api/classes/EXIFR/JPEG.html"&gt;&lt;span class="caps"&gt;JPEG&lt;/span&gt;&lt;/a&gt; or &lt;a href="http://exifr.rubyforge.org/api/classes/EXIFR/TIFF.html"&gt;&lt;span class="caps"&gt;TIFF&lt;/span&gt;&lt;/a&gt; image could force &lt;a href="http://exifr.rubyforge.org/"&gt;&lt;span class="caps"&gt;EXIFR&lt;/span&gt;&lt;/a&gt; in an endless loop.  The problem is solved in &lt;a href="http://rubyforge.org/frs/shownotes.php?release_id=18112"&gt;release 0.10.6&lt;/a&gt;.  If you are using &lt;span class="caps"&gt;EXIF&lt;/span&gt; Reader without having control over the images fed to it, upgrade as soon as possible.&lt;/p&gt;</description>
      <author>remco@remvee.net (Remco van 't Veer)</author>
      <pubDate>Tue, 15 Jan 2008 00:13:00 +0100</pubDate>
    </item>
    <item>
      <title>EXIF Reader 0.10.5 goes 1.9</title>
      <link>http://blog.remvee.net/2007/12/28/EXIF_Reader_0_10_5_goes_1_9</link>
      <guid>http://blog.remvee.net/2007/12/28/EXIF_Reader_0_10_5_goes_1_9</guid>
      <description>&lt;p&gt;The recent &lt;a href="http://www.ruby-lang.org/en/news/2007/12/25/ruby-1-9-0-released/"&gt;Ruby 1.9 release&lt;/a&gt; adds a lot of &lt;a href="http://eigenclass.org/hiki/Changes+in+Ruby+1.9"&gt;new stuff&lt;/a&gt; but unfortunately some of the changes prevented &lt;a href="http://exifr.rubyforge.org/"&gt;&lt;span class="caps"&gt;EXIF&lt;/span&gt; Reader&lt;/a&gt; from working.  A slight &lt;a href="http://www.ruby-forum.com/topic/136155"&gt;case-syntax change&lt;/a&gt; (colon being deprecated), &lt;code&gt;String&lt;/code&gt; no longer being &lt;a href="http://eigenclass.org/hiki/Changes+in+Ruby+1.9#l113"&gt;Enumerable&lt;/a&gt; and &lt;code&gt;IO&lt;/code&gt; becoming &lt;a href="http://eigenclass.org/hiki/Changes+in+Ruby+1.9#l146"&gt;more character aware&lt;/a&gt;, broke my code.&lt;/p&gt;
&lt;p&gt;The new &lt;a href="http://rubyforge.org/frs/shownotes.php?release_id=17457"&gt;0.10.5 release&lt;/a&gt; runs on both 1.8 and 1.9.&lt;/p&gt;</description>
      <author>remco@remvee.net (Remco van 't Veer)</author>
      <pubDate>Fri, 28 Dec 2007 03:21:00 +0100</pubDate>
    </item>
    <item>
      <title>EXIFR 0.10.4</title>
      <link>http://blog.remvee.net/2007/11/04/EXIFR_0_10_4</link>
      <guid>http://blog.remvee.net/2007/11/04/EXIFR_0_10_4</guid>
      <description>&lt;p&gt;&lt;a href="http://exifr.rubyforge.org/"&gt;&lt;span class="caps"&gt;EXIF&lt;/span&gt; Reader&lt;/a&gt; includes the ability to read thumbnails from &lt;a href="http://exifr.rubyforge.org/api/classes/EXIFR/JPEG.html"&gt;&lt;span class="caps"&gt;JPEG&lt;/span&gt;&lt;/a&gt; again.  This feature disappeared from &lt;span class="caps"&gt;EXIFR&lt;/span&gt; when in rewrote most of it to support &lt;a href="http://exifr.rubyforge.org/api/classes/EXIFR/TIFF.html"&gt;&lt;span class="caps"&gt;TIFF&lt;/span&gt;&lt;/a&gt; reading.&lt;/p&gt;</description>
      <author>remco@remvee.net (Remco van 't Veer)</author>
      <pubDate>Sun, 04 Nov 2007 06:33:00 +0100</pubDate>
    </item>
    <item>
      <title>EXIFR 0.10.3</title>
      <link>http://blog.remvee.net/2007/10/23/exifr_0_10_3</link>
      <guid>http://blog.remvee.net/2007/10/23/exifr_0_10_3</guid>
      <description>&lt;p&gt;I&amp;#8217;ve released a new version of &lt;a href="http://exifr.rubyforge.org/"&gt;&lt;span class="caps"&gt;EXIF&lt;/span&gt; Reader&lt;/a&gt;.  Just one small change; &lt;a href="http://exifr.rubyforge.org/api/classes/EXIFR/JPEG.html"&gt;&lt;span class="caps"&gt;JPEG&lt;/span&gt;&lt;/a&gt; and &lt;a href="http://exifr.rubyforge.org/api/classes/EXIFR/TIFF.html"&gt;&lt;span class="caps"&gt;TIFF&lt;/span&gt;&lt;/a&gt; objects can now be safely loaded and dumped from and to &lt;a href="http://yaml.org/"&gt;&lt;span class="caps"&gt;YAML&lt;/span&gt;&lt;/a&gt;.  To get this to work I made a change to the orientation property; it returns an instance of &lt;a href="http://exifr.rubyforge.org/api/classes/EXIFR/TIFF/Orientation.html"&gt;Orientation&lt;/a&gt; now instead of a module.  The returned object responds to the same methods as the module did so the upgrade should be painless.&lt;/p&gt;</description>
      <author>remco@remvee.net (Remco van 't Veer)</author>
      <pubDate>Tue, 23 Oct 2007 12:37:00 +0200</pubDate>
    </item>
    <item>
      <title>tinderbox steekt je gems in de fik!</title>
      <link>http://blog.remvee.net/2007/02/04/tinderbox_steekt_je_gems_in_de_fik</link>
      <guid>http://blog.remvee.net/2007/02/04/tinderbox_steekt_je_gems_in_de_fik</guid>
      <description>&lt;p&gt;&lt;img src="http://blog.remvee.net/attachment/brandweer/brandweer.png" style="margin: 5px; float: right;" alt="" /&gt; &lt;a href="http://blog.segment7.net/"&gt;Eric Hodel&lt;/a&gt; heeft de &lt;a href="http://firebrigade.seattlerb.org/"&gt;firebrigade&lt;/a&gt; gesticht om door &lt;a href="http://seattlerb.rubyforge.org/tinderbox"&gt;tinderbox&lt;/a&gt; aangestoken &lt;a href="http://rubygems.org/"&gt;gems&lt;/a&gt; te signaleren.  Tinderbox?  Pardon?&lt;/p&gt;
&lt;p&gt;In software ontwikkeling is een &lt;a href="http://en.wikipedia.org/wiki/Tinderbox_(software)"&gt;tinderbox&lt;/a&gt; een systeem dat ervoor zorgt dat een gegeven stuk software gebouwd en getest wordt op een serie platformen.  Een dergelijk systeem geeft  ontwikkelaars de mogelijkheid te zien of, de code die zij geschreven hebben, ook goed functioneert op platformen welke zij niet tot hun beschikking hebben.  De bekendste is de &lt;a href="http://tinderbox.mozilla.org/"&gt;tinderbox van Mozilla&lt;/a&gt;, welke onder andere verifieert of &lt;a href="http://tinderbox.mozilla.org/showbuilds.cgi?tree=Firefox"&gt;Firefox&lt;/a&gt; wel gebouwd kan worden op alle aangesloten platformen.&lt;/p&gt;
&lt;p&gt;Het tinderbox systeem dat Eric Hodel de lucht in heeft gebracht, probeert alle recente gems op &lt;a href="http://rubyforge.org/"&gt;rubyforge&lt;/a&gt; te bouwen op aangesloten platformen en de bijbehorende test suites te draaien.  De resultaten van deze pogingen zijn te vinden op de &lt;a href="http://firebrigade.seattlerb.org/"&gt;firebrigade site&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Op dit moment slaagt maar 1 op de 4 projecten, maar dat klinkt veel slechter dan het in werkelijkheid is.  Veel gems leveren geen tests mee, maar hebben wel tests.  Ook mijn &lt;a href="http://exifr.rubyforge.org/"&gt;&lt;span class="caps"&gt;EXIF&lt;/span&gt; Reader&lt;/a&gt; projectje stond jammerlijk te &lt;a href="http://firebrigade.seattlerb.org/gem/show/exifr/0.9.4"&gt;smeulen&lt;/a&gt; maar nu de tests de in gem zitten, mag ik gelukkig &lt;a href="http://firebrigade.seattlerb.org/gem/show/exifr"&gt;brandmeester&lt;/a&gt; roepen.&lt;/p&gt;
&lt;p&gt;Er is natuurlijk ook een hoop testloze code te vinden op rubyforge, waarschijnlijk vrij veel..  Mijn mening: slecht!  Iets meer genuanceerd: Ruby is een waanzinnig platform om op een &lt;a cronym title="Test Driven Development"&gt;&lt;span class="caps"&gt;TDD&lt;/span&gt;&lt;/acronym&gt; of zelfs &lt;a cronym title="Behaviour Driven Development"&gt;&lt;span class="caps"&gt;BDD&lt;/span&gt;&lt;/acronym&gt; manier te ontwikkelen, laat deze kans op verlichting niet schieten!&lt;/p&gt;
&lt;p&gt;Wil je helpen?  Zorg dat de gems die je de wereld in geholpen hebt, een goede test suite hebben welke uiteraard slaagt.  Heb je geen gems maar wel rekenkracht over of, beter nog, een exotisch platform waar je Ruby op draait?  &lt;a href="http://firebrigade.seattlerb.org/home/run_a_tinderbox"&gt;Meld je dan aan&lt;/a&gt; als tinderbox!&lt;/p&gt;</description>
      <author>remco@remvee.net (Remco van 't Veer)</author>
      <pubDate>Sun, 04 Feb 2007 00:03:00 +0100</pubDate>
    </item>
  </channel>
</rss>

