<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" xml:lang="en" xml:base="http://newwws.shoooes.net/index.atom">
    <title>Shoooes Newwws</title>
    <link href="http://newwws.shoooes.net" rel="alternate" type="text/html" />
    
    <updated>2009-06-03T01:28:57Z</updated>
    <subtitle>the little old blog that lived in a shoe</subtitle>
    <id>tag:newwws.shoooes.net,2009:blog</id>
    <generator uri="http://hobix.com/" version="0.5">Hobix</generator>
    <rights>None</rights>
<link rel="self" href="http://feeds.feedburner.com/ShoooesNewwws" type="application/atom+xml" /><feedburner:browserFriendly></feedburner:browserFriendly><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry xml:base="/2009/05/14/may-policeman.html"><title xml:space="preserve">May Policeman</title><link href="/2009/05/14/may-policeman.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fmay-policeman</id><published xml:space="preserve">2009-05-14T18:12:34Z</published><updated xml:space="preserve">2009-05-14T18:12:34Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;Hello, everybody, sorry for the absence. I am preparing the release of Shoes 3 (which close friends call &amp;#8220;Policeman.&amp;#8221;) This release is a huge deal, as it will include Ruby 1.9, a much faster and progressive Ruby.&lt;/p&gt;
&lt;p&gt;Here&amp;#8217;s the first set of Policeman builds. Notice there is no video support. I am taking this chance to upgrade to &lt;span class="caps"&gt;VLC&lt;/span&gt; 0.9, which is a big job as well.&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://hacketyhack.net/pkg/dist/shoes/shoes-0.r1243.dmg"&gt;Mac OS X&lt;/a&gt; (no video support; for Intel processors)&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://hacketyhack.net/pkg/dist/shoes/shoes-0.r1243.exe"&gt;Microsoft Windows&lt;/a&gt; (no video support; for Vista, XP, 2k)&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://hacketyhack.net/pkg/dist/shoes/shoes-0.r1243.run"&gt;Linux&lt;/a&gt; (no video; Ubuntu, Fedora, Arch; i686)&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://hacketyhack.net/pkg/dist/shoes/shoes-0.r1243.tar.gz"&gt;Source&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Builds will appear on the &lt;a href="http://github.com/why/shoes/wikis/recentbuilds"&gt;recent builds&lt;/a&gt; page as they are released.&lt;/p&gt;</content></entry><entry xml:base="/2008/12/09/a-few-days-later.html"><title xml:space="preserve">A Few Days Later</title><link href="/2008/12/09/a-few-days-later.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fa-few-days-later</id><published xml:space="preserve">2008-12-10T04:14:26Z</published><updated xml:space="preserve">2008-12-10T04:14:26Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;First off: &lt;a href="http://www.jzlabs.com/2008/12/03/adium-top-words-part-2/"&gt;Adium Top Words&lt;/a&gt;. One of the first apps I&amp;#8217;ve seen distributed as a &lt;span class="caps"&gt;DMG&lt;/span&gt;. This is good to see.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://newwws.shoooes.net/images/adium-tw.jpg" class="cb" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;And, actually, this has me thinking. Shoes should have a feature to open Shoes-packaged executables. It&amp;#8217;s just a matter of extracting and running the shy! (Also, the packager could learn to repack executables into other formats.)&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;Shoes 3 is plugging along already with some very important fixes to Windows.&lt;/p&gt;
&lt;p&gt;Here&amp;#8217;s what I&amp;#8217;m hoping to accomplish with this one:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Stability &amp;#8211; fewer crashes, faster painting and text layout.&lt;/li&gt;
	&lt;li&gt;Upgrades &amp;#8211; to all dependencies on all the platforms. (New Cairo, new Pango, new &lt;span class="caps"&gt;VLC&lt;/span&gt;, codecs, etc.)&lt;/li&gt;
	&lt;li&gt;Windows &amp;#8211; better Vista support and friendlier, friendlier, chummy as can be.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Features are on hold for a month. Now is all about slimming down.&lt;/p&gt;</content></entry><entry xml:base="/2008/12/06/raisiiiins.html"><title xml:space="preserve">Raisiiiins!!</title><link href="/2008/12/06/raisiiiins.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fraisiiiins</id><published xml:space="preserve">2008-12-06T07:50:26Z</published><updated xml:space="preserve">2008-12-06T07:50:26Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;&lt;img src="http://shoooes.net/images/shoes-splash.png" class="c" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;And I will leave you only with &lt;a href="http://shoooes.net/about/raisins/"&gt;this&lt;/a&gt;.&lt;/p&gt;</content></entry><entry xml:base="/2008/12/04/shoes-two-tomorrow.html"><title xml:space="preserve">Shoes 2 (Raisins) In The Oven</title><link href="/2008/12/04/shoes-two-tomorrow.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fshoes-two-tomorrow</id><published xml:space="preserve">2008-12-04T23:10:13Z</published><updated xml:space="preserve">2008-12-04T23:10:13Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;Shoes 2 is coming tomorrow. This is the last set of builds. Do a once over and let me know of anything glaring.&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://hacketyhack.net/pkg/dist/shoes/shoes-0.r1123-intel.dmg"&gt;Mac OS X&lt;/a&gt; (w/ video support; for Intel processors)&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://hacketyhack.net/pkg/dist/shoes/shoes-0.r1123.exe"&gt;Microsoft Windows&lt;/a&gt; (w/ video support; for Vista, XP, 2k)&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://hacketyhack.net/pkg/dist/shoes/shoes-0.r1123.run"&gt;Linux&lt;/a&gt; (w/o video; Ubuntu, Fedora, Arch; i686)&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://hacketyhack.net/pkg/dist/shoes/shoes-0.r1123.tar.gz"&gt;Source&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Other builds are listed on the &lt;a href="http://github.com/why/shoes/wikis/recentbuilds"&gt;recent builds&lt;/a&gt; page.&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;As for what&amp;#8217;s new:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Shoes has a splash screen. I know, I know! But if you run Shoes without any arguments, previously it was just popping an &amp;#8220;Open File&amp;#8230;&amp;#8221; dialog. Which was weird. So all we&amp;#8217;re doing is replacing it.&lt;/li&gt;
	&lt;li&gt;Crash on OS X when using the &lt;code&gt;download&lt;/code&gt; method. Very &lt;a href="http://github.com/why/shoes/commit/5ce7346"&gt;stupid&lt;/a&gt; little problem that bit a lot of people.&lt;/li&gt;
	&lt;li&gt;Automatic &lt;a href="http://github.com/why/shoes/commit/2d2b1aa"&gt;proportional&lt;/a&gt; scaling of images.&lt;/li&gt;
	&lt;li&gt;Added the &lt;a href="http://gist.github.com/26431"&gt;pong&lt;/a&gt; example.&lt;/li&gt;
	&lt;li&gt;Bug in &lt;a href="http://github.com/why/shoes/commit/53ce240"&gt;coordinate&lt;/a&gt; reporting for nested slots. &lt;em&gt;Thanks, Tieg!&lt;/em&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://github.com/why/shoes/commit/4a2e873"&gt;Error handling&lt;/a&gt; during gem installation. (Like in case a compiler is missing.) &lt;em&gt;Thanks, Vassilis Rizopoulos!&lt;/em&gt;&lt;/li&gt;
	&lt;li&gt;You can now run Shoes directly from the OS X installer, without installing.&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://github.com/why/shoes/commit/5599efe"&gt;Log&lt;/a&gt; &lt;span class="caps"&gt;HTTP&lt;/span&gt; errors. &lt;em&gt;Thanks, Alexander Rakoczy!&lt;/em&gt;&lt;/li&gt;
	&lt;li&gt;And a number of fixes to the packager, especially on Windows.&lt;/li&gt;
&lt;/ul&gt;</content></entry><entry xml:base="/2008/11/26/what-is-shoes.html"><title xml:space="preserve">What is Shoes?</title><link href="/2008/11/26/what-is-shoes.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fwhat-is-shoes</id><published xml:space="preserve">2008-11-26T20:29:42Z</published><updated xml:space="preserve">2008-11-26T20:29:42Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;In preparation for Raisins, the new &lt;a href="http://shoooes.net/about/"&gt;What is Shoes?&lt;/a&gt; page attempts to explain Shoes visually, with screenshots, for new people.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://shoooes.net/images/about-pixelpainter.png" class="c" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;The page features this app &lt;a href="http://the-shoebox.org/apps/66"&gt;Pixel Painter&lt;/a&gt;, which has to be one of the loveliest little apps I&amp;#8217;ve seen in Shoes yet.&lt;/p&gt;</content></entry><entry xml:base="/2008/11/24/a-manor-well-shod.html"><title xml:space="preserve">A Manor Well Shod</title><link href="/2008/11/24/a-manor-well-shod.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fa-manor-well-shod</id><published xml:space="preserve">2008-11-24T23:08:56Z</published><updated xml:space="preserve">2008-11-24T23:08:56Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://effectif.com/2008/11/22/notes-from-the-ruby-manor"&gt;Graham Ashton&lt;/a&gt;: [Shoes] was designed as a replacement for an &lt;span class="caps"&gt;HTML&lt;/span&gt; rendering engine for use when teaching people to code, so it&amp;#8217;s pretty familiar to people who know a fair bit of &lt;span class="caps"&gt;HTML&lt;/span&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;You know, I&amp;#8217;ve never heard it put that way. Shoesers, you agree?&lt;/p&gt;
&lt;p&gt;Sounds like this London event went great. Two twitter apps were showcased: &lt;a href="http://github.com/h-lame/talon/tree/master"&gt;Talon&lt;/a&gt;, written in Shoes, and &lt;a href="http://www.beyondthetype.com/tweetobix"&gt;Tweetobix&lt;/a&gt;, written in &lt;a href="http://monkeybars.rubyforge.org/"&gt;Monkeybars&lt;/a&gt;.&lt;/p&gt;</content></entry><entry xml:base="/2008/11/20/putting-a-shoe-on-your-database.html"><title xml:space="preserve">Putting A Shoe On Your Database</title><link href="/2008/11/20/putting-a-shoe-on-your-database.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fputting-a-shoe-on-your-database</id><published xml:space="preserve">2008-11-20T22:52:24Z</published><updated xml:space="preserve">2008-11-20T22:52:24Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://unixmonkey.net/?p=27"&gt;David Jones&lt;/a&gt;: There you are; a cross-platform desktop app that doesn&amp;#8217;t require a full-on build environment, and can be distributed with the source exposed for later improvements.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Could it be? Are we starting to emerge from this struggle with gems? He has ActiveRecord loading through &lt;code&gt;Shoes.setup&lt;/code&gt;. It certainly looks that way. (Saw this on &lt;a href="http://rubyflow.com"&gt;RubyFlow&lt;/a&gt;.)&lt;/p&gt;</content></entry><entry xml:base="/2008/11/20/survey-of-interest.html"><title xml:space="preserve">Survey Of Interest</title><link href="/2008/11/20/survey-of-interest.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fsurvey-of-interest</id><published xml:space="preserve">2008-11-20T17:52:11Z</published><updated xml:space="preserve">2008-11-20T17:52:11Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;On Ruby-Talk, an announcement for a &lt;a href="http://www.surveymonkey.com/s.aspx?sm=o2UwH3KcrOyLxKsh8mOJMg_3d_3d"&gt;survey&lt;/a&gt; of Rubyists. The topic is desktop apps.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/320701"&gt;Alex Fenton&lt;/a&gt;: The background to this is that there are sporadic threads on &lt;span class="caps"&gt;GUI&lt;/span&gt; programming on this group, but little overall picture of Ruby &lt;span class="caps"&gt;GUI&lt;/span&gt; usage emerges. New options for &lt;span class="caps"&gt;GUI&lt;/span&gt; development have emerged in recent year. I&amp;#8217;m interested to know who&amp;#8217;s doing what, and how Ruby could be a better language for these kind of applications.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Shoes isn&amp;#8217;t strictly a &amp;#8220;&lt;span class="caps"&gt;GUI&lt;/span&gt;&amp;#8221; library, really. More of a Ruby distro for writing graphical apps (not just interfaces.) But it&amp;#8217;s listed among the options and I&amp;#8217;ll definitely be following the results of the survey, even though the audience for Shoes is more along the lines of hobbyists and the young.&lt;/p&gt;</content></entry><entry xml:base="/2008/11/18/shoes-versus-adobe-air.html"><title xml:space="preserve">Shoes Versus Adobe Air</title><link href="/2008/11/18/shoes-versus-adobe-air.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fshoes-versus-adobe-air</id><published xml:space="preserve">2008-11-18T16:07:35Z</published><updated xml:space="preserve">2008-11-18T16:07:35Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;Shoes is quite a bit smaller than Air, but I suppose they are closer competitors than Shoes and QT or Shoes and wxWidgets.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://justindz.tumblr.com/post/58650367/shoes-vs-air"&gt;Justin Duewel-Zahniser&lt;/a&gt;: [In Air, if] you could use Rhino to code javascript against the Java APIs, suddenly you could do nifty things on the client side like break out an OpenGL window or play an MP3 (without Flash).  I imagine this is fundamentally a security issue for Adobe, though, since they currently have strict rules about client/server communication and file system access.  Shoes provides an app layer on top of all that is Ruby, whereas Adobe provides pretty much only a self-contained &lt;span class="caps"&gt;GUI&lt;/span&gt; box.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I like what he says about Shoes needing more holistic tutorials about how to create intermediate-level apps. He also proposes a simpler Haml and Sass markup for Shoes. Maybe there&amp;#8217;s something to that?&lt;/p&gt;</content></entry><entry xml:base="/2008/11/17/november-pre-release.html"><title xml:space="preserve">November Pre Release</title><link href="/2008/11/17/november-pre-release.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fnovember-pre-release</id><published xml:space="preserve">2008-11-17T20:08:18Z</published><updated xml:space="preserve">2008-11-17T20:08:18Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;Here is Shoes 0.r1091, with some important fixes for the Raisins release. I still have some changes to the manual and to &lt;span class="caps"&gt;URL&lt;/span&gt; classes before the release.&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://hacketyhack.net/pkg/dist/shoes/shoes-0.r1091-intel.dmg"&gt;Mac OS X&lt;/a&gt; (w/ video support; for Intel processors)&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://hacketyhack.net/pkg/dist/shoes/shoes-0.r1091.exe"&gt;Microsoft Windows&lt;/a&gt; (w/ video support; for Vista, XP, 2k)&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://hacketyhack.net/pkg/dist/shoes/shoes-0.r1091.run"&gt;Linux&lt;/a&gt; (w/o video; Ubuntu, Fedora, Arch; i686)&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://hacketyhack.net/pkg/dist/shoes/shoes-0.r1091.tar.gz"&gt;Source&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Other builds are archived at the &lt;a href="http://github.com/why/shoes/wikis/recentbuilds"&gt;recent builds&lt;/a&gt; page.&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;So what&amp;#8217;s new?&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;Hpricot, SQLite3 and &lt;span class="caps"&gt;JSON&lt;/span&gt; gems are included and installed as proper gems. Previously, I had them as plain, installed libraries. This solves &lt;a href="http://code.whytheluckystiff.net/list/shoes/2008/10/30/4307-the-hpricot-sqlite3-json-gems.html"&gt;some problems&lt;/a&gt; with gems that were trying to upgrade Hpricot, such as the Twitter gem.&lt;/li&gt;
	&lt;li&gt;Fixed &lt;a href="http://newwws.shoooes.net/2008/10/24/64bit-shoes.html"&gt;problems&lt;/a&gt; on 64-bit Linux.&lt;/li&gt;
	&lt;li&gt;Fixed &lt;a href="http://github.com/why/shoes/commit/b532586"&gt;custom &lt;span class="caps"&gt;HTTP&lt;/span&gt; requests&lt;/a&gt; (:method, :headers and :body options) for the &lt;code&gt;download&lt;/code&gt; method.&lt;/li&gt;
	&lt;li&gt;Bug in &lt;a href="http://github.com/why/shoes/commit/bf57a51"&gt;hide/show&lt;/a&gt; for nested slots.&lt;/li&gt;
	&lt;li&gt;Added more robust &lt;a href="http://github.com/why/shoes/commit/9bf1c98"&gt;argument parsing&lt;/a&gt;.&lt;/li&gt;
	&lt;li&gt;More docs in the manual.&lt;/li&gt;
&lt;/ul&gt;</content></entry><entry xml:base="/2008/10/24/64bit-shoes.html"><title xml:space="preserve">64-bit Shoes</title><link href="/2008/10/24/64bit-shoes.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2F64bit-shoes</id><published xml:space="preserve">2008-10-24T20:31:18Z</published><updated xml:space="preserve">2008-10-24T20:31:18Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;I&amp;#8217;m happy to say that I&amp;#8217;ve finished a round of debugging Shoes on various 64-bit platforms.  Most notably the new Ubuntu 8.10 running on 64-bit.  Recent commits also take care of some threading problems in the image cache.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://github.com/why/shoes/commit/da6abc6"&gt;da6abc&lt;/a&gt;: sha-1 had problems on 64-bit arch due to length of the unsigned long.&lt;br /&gt;&lt;br /&gt;
&lt;a href="http://github.com/why/shoes/commit/3f82dfe"&gt;3f82dfe&lt;/a&gt;: separate out the &lt;code&gt;shoes_image_downloaded&lt;/code&gt; function, which wasn&amp;#8217;t thread-safe. now it runs in the main thread, after the completed event is fired.&lt;/p&gt;
&lt;/blockquote&gt;</content></entry><entry xml:base="/2008/10/19/downtown-double-pac.html"><title xml:space="preserve">Downtown Double Pac</title><link href="/2008/10/19/downtown-double-pac.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fdowntown-double-pac</id><published xml:space="preserve">2008-10-19T05:54:07Z</published><updated xml:space="preserve">2008-10-19T05:54:07Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;I wanna know what&amp;#8217;s going on here.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://skitch.com/selena/3b9d/picture-13"&gt;&lt;img src="http://newwws.shoooes.net/images/pac-shoes.jpg" class="cb" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;(from &lt;a href="http://twitter.com/selenamarie/statuses/965887139"&gt;@selenamarie&lt;/a&gt;.)&lt;/p&gt;</content></entry><entry xml:base="/2008/10/15/eighty-commits-later.html"><title xml:space="preserve">Eighty Commits Later</title><link href="/2008/10/15/eighty-commits-later.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Feighty-commits-later</id><published xml:space="preserve">2008-10-15T15:26:58Z</published><updated xml:space="preserve">2008-10-15T15:26:58Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;Sorry it&amp;#8217;s been a month since the last set of builds.  Here we have Shoes 0.r1057, with the OS X threading fixes applied.  And, of course, lots beyond that.&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://shoooes.net/dist/shoes-0.r1057-intel.dmg"&gt;Mac OS X&lt;/a&gt; (w/ video support; for Intel processors)&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://shoooes.net/dist/shoes-0.r1057.exe"&gt;Microsoft Windows&lt;/a&gt; (w/ video support; for Vista, XP, 2k)&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://shoooes.net/dist/shoes-0.r1057.run"&gt;Linux&lt;/a&gt; (w/o video; Ubuntu, Fedora, Arch; i686)&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://shoooes.net/dist/shoes-0.r1057.tar.gz"&gt;Source&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Other builds are archived at the &lt;a href="http://github.com/why/shoes/wikis/recentbuilds"&gt;recent builds&lt;/a&gt; page.&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;Among the commits this time around:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;On OS X, Ruby&amp;#8217;s threads were conflicting with some Cocoa calls, causing a crash, especially in the gem installer.  This was solved by using the Cocoa exception handler.&lt;/li&gt;
	&lt;li&gt;Brand-new support for loading from &lt;a href="http://newwws.shoooes.net/2008/10/06/new-external-fonts.html"&gt;external fonts&lt;/a&gt;, such as TrueType and &lt;span class="caps"&gt;OTF&lt;/span&gt; files.&lt;/li&gt;
	&lt;li&gt;New page in the manual: &lt;a href="http://help.shoooes.net/Styles.html"&gt;The Styles Master List&lt;/a&gt;.&lt;/li&gt;
	&lt;li&gt;By default, the &lt;code&gt;download&lt;/code&gt; method now follows &lt;span class="caps"&gt;HTTP&lt;/span&gt; redirects.  This can be turned off by using &lt;code&gt;:redirect =&amp;gt; false&lt;/code&gt; in the method options.&lt;/li&gt;
	&lt;li&gt;Shoes apps now run inside their own anonymous namespace, rather than in the Shoes namespace.  This is further explained on &lt;a href="http://help.shoooes.net/Rules.html"&gt;The Rules of Shoes&lt;/a&gt;, in the section &lt;em&gt;The Main App and Its Requires&lt;/em&gt;.&lt;/li&gt;
	&lt;li&gt;New setting for all native controls: &lt;code&gt;:state =&amp;gt; "disabled"&lt;/code&gt; and &lt;code&gt;:state =&amp;gt; "readonly"&lt;/code&gt;.&lt;/li&gt;
	&lt;li&gt;Audited all the &lt;span class="caps"&gt;UTF&lt;/span&gt;-8 code, found issues on both Windows and OS X.&lt;/li&gt;
	&lt;li&gt;Added &lt;span class="caps"&gt;HTTP&lt;/span&gt; proxy support on Windows.&lt;/li&gt;
	&lt;li&gt;And, naturally, many other repainting issues, memory leaks, and bothersome things were cared for.&lt;/li&gt;
&lt;/ul&gt;</content></entry><entry xml:base="/2008/10/13/styling-master-list.html"><title xml:space="preserve">Styling Master List</title><link href="/2008/10/13/styling-master-list.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fstyling-master-list</id><published xml:space="preserve">2008-10-13T23:36:27Z</published><updated xml:space="preserve">2008-10-13T23:36:27Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://help.shoooes.net/Styles.html"&gt;The Shoes Manual&lt;/a&gt;: Rather than making you plow through the whole manual to figure out what styles go where, this helpful page speeds through every style in Shoes and suggests where that style is used.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;This complete Shoes styles list is still being constructed, but I would venture that it&amp;#8217;s the last big missing piece of the built-in manual.  All the styles can be individual found through the built-in manual search.&lt;/p&gt;</content></entry><entry xml:base="/2008/10/12/moving-to-libvlc-nine.html"><title xml:space="preserve">Moving To Libvlc 0.9</title><link href="/2008/10/12/moving-to-libvlc-nine.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fmoving-to-libvlc-nine</id><published xml:space="preserve">2008-10-12T15:43:40Z</published><updated xml:space="preserve">2008-10-12T15:43:40Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;Don&amp;#8217;t worry, folks, there&amp;#8217;s just some controlled entropy underway in the Shoes git repo.  You&amp;#8217;ll probably see some build problems over the next few days, but it&amp;#8217;s all to a good end.  Some breaking changes in libvlc 0.9 cause Shoes&amp;#8217; video support to fall apart on Ubuntu Intrepid.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve been meaning to upgrade to 0.9 on Mac and Windows anyway.  The new &lt;span class="caps"&gt;API&lt;/span&gt; is much better and lets us play multiple video files at once and hook into some plugins, should we choose.&lt;/p&gt;</content></entry><entry xml:base="/2008/10/06/very-basic-toots-for-shoes.html"><title xml:space="preserve">Very Basic Toots For Shoes</title><link href="/2008/10/06/very-basic-toots-for-shoes.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fvery-basic-toots-for-shoes</id><published xml:space="preserve">2008-10-06T19:32:48Z</published><updated xml:space="preserve">2008-10-06T19:32:48Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;&lt;img src="http://newwws.shoooes.net/images/about-timer.jpg" class="cb" alt="" /&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://ruby.about.com/od/shoes/ss/shoes1.htm"&gt;An Introduction to Shoes&lt;/a&gt;: Shoes is a &lt;span class="caps"&gt;GUI&lt;/span&gt; toolkit for Ruby (among other languages) and is like no other. Not designed for serious, large-scale &lt;span class="caps"&gt;GUI&lt;/span&gt; applications, Shoes applications tend to be small, useful and clever programs. Things in Shoes are also drastically simplified and the learning curve is very shallow, meaning anyone can just jump right into Shoes with both feet.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I&amp;#8217;m impressed by how short and to-the-point these little Shoes &lt;a href="http://ruby.about.com/od/shoes"&gt;tutorials&lt;/a&gt; are.  There&amp;#8217;s obviously a lot of care and hard work by Amanda &amp;amp; Michael Morin in these.  (Although the icons in front of each tutorial somehow made me think this was just a page of links.)&lt;/p&gt;</content></entry><entry xml:base="/2008/10/06/new-external-fonts.html"><title xml:space="preserve">New Today: External Fonts</title><link href="/2008/10/06/new-external-fonts.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fnew-external-fonts</id><published xml:space="preserve">2008-10-06T17:03:49Z</published><updated xml:space="preserve">2008-10-06T17:03:49Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;I&amp;#8217;ve just finished checking in support for loading fonts from external files.  The new method is called the &lt;a href="http://help.shoooes.net/Built-in.html#font"&gt;font&lt;/a&gt; method.&lt;/p&gt;

&lt;pre&gt;&lt;code class="rb"&gt; font "phonetica.ttf"

 Shoes.app do
   para "A sample sentence.", :font =&gt; "Phonetica"
 end
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;I&amp;#8217;m using platform-specific code to load the font, so fonts only work on the platforms that support them.  TrueType and OpenType fonts are the most widely supported (and available) types.  The docs linked above list what fonts are supported by which platforms.&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;Also, there&amp;#8217;s a new &lt;code&gt;Shoes::FONTS&lt;/code&gt; constants for getting a complete list of the fonts you can use.  You get back an array of font family names.&lt;/p&gt;
&lt;p&gt;This makes it really convenient for generating a font selector with a simple &lt;code&gt;ListBox&lt;/code&gt;:&lt;/p&gt;

&lt;pre&gt;&lt;code class="rb"&gt; Shoes.app do
   list_box :items =&gt; Shoes::FONTS
 end
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;I&amp;#8217;ve been waiting around for Pango to do this for me, but I&amp;#8217;m really happy with how little code it actually took to just access the platform APIs directly.&lt;/p&gt;</content></entry><entry xml:base="/2008/10/05/avoid-openuri-in-shoes.html"><title xml:space="preserve">Avoid OpenURI In Shoes</title><link href="/2008/10/05/avoid-openuri-in-shoes.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Favoid-openuri-in-shoes</id><published xml:space="preserve">2008-10-05T14:30:26Z</published><updated xml:space="preserve">2008-10-05T14:30:26Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://apocryph.org/analysis_ruby_18x_http_client_performance"&gt;Adam Nelson&lt;/a&gt;: As you can see, the worst performers are the stock Net::&lt;span class="caps"&gt;HTTP&lt;/span&gt; implementations in both 1.8.6 and 1.8.7, though 1.8.6 is noticeably worse due to the 1K buffer size vs 16K for 1.8.7. The best performer is curb (libcurl bindings for Ruby), under with 1.8.6 and 1.8.7.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;This sort of performance chokehold is part of the reason you should use the &lt;a href="http://help.shoooes.net/App.html#download"&gt;download&lt;/a&gt; method rather than OpenURI.  The download method uses its own threaded Curl binding on Linux, WinHTTP on Windows and NSURLConnection on OS X.&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;It&amp;#8217;s not just a performance problem with OpenURI, though.  It can block your main window.&lt;/p&gt;
&lt;p&gt;Yesterday, Emanuel Carnevale came to the list with some OpenURI code that was blocking his app:&lt;/p&gt;

&lt;pre&gt;&lt;code class="rb"&gt;doc = Hpricot(open("http://domonomnom.tumblr.com/random"))
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Which was easily replaced with:&lt;/p&gt;

&lt;pre&gt;&lt;code class="rb"&gt;download "http://domonomnom.tumblr.com/random" do |domo|
   doc = Hpricot(domo.response.body)
   # ... do tings with doc ...
 end
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Having the block in there is important so the method can return back to your app and fire the block later when the download completes.&lt;/p&gt;</content></entry><entry xml:base="/2008/10/03/shoes-in-london.html"><title xml:space="preserve">Shoes In London?</title><link href="/2008/10/03/shoes-in-london.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fshoes-in-london</id><published xml:space="preserve">2008-10-03T18:13:46Z</published><updated xml:space="preserve">2008-10-03T18:13:46Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;p&gt;Could there be a Shoes presence at the delightfully cheap &lt;a href="http://rubymanor.org/"&gt;Ruby Manor&lt;/a&gt; event in London?&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://groups.google.com/group/ruby-manor/browse_thread/thread/e3f3cf0bcf47bc47/ba3b06311d7ca170"&gt;Murray Steele&lt;/a&gt;: Anyone that&amp;#8217;s been to an &lt;span class="caps"&gt;LRUG&lt;/span&gt; event where I can possibly shoe-horn in a random element will have been utterly amazed at the awesome things I can make Shoes do.  I&amp;#8217;m proposing that if folk are interested I can take a month or so to learn Shoes even more and regale you all with tales of my derring-do and shoes-related witchcraft.  Or, just a quick intro into Shoes, which ever seems of most interest to the group.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Witchcraft?  Derring-do?  Someone fancies himself quite the shoudini.  Put him on, let&amp;#8217;s see what this is about.&lt;/p&gt;</content></entry><entry xml:base="/2008/10/03/the-shoes-of-your-mind.html"><title xml:space="preserve">The Shoes Of Your Mind</title><link href="/2008/10/03/the-shoes-of-your-mind.html" rel="alternate" type="text/html" xml:space="preserve" /><id xml:space="preserve">tag:newwws.shoooes.net,2009:blogentry%2Fnews%2Fthe-shoes-of-your-mind</id><published xml:space="preserve">2008-10-03T17:06:46Z</published><updated xml:space="preserve">2008-10-03T17:06:46Z</updated><dc:subject xml:space="preserve">news</dc:subject><category term="news" xml:space="preserve" scheme="http://hobix.com/tags" /><author><name xml:space="preserve">why the lucky stiff</name><uri xml:space="preserve">http://whytheluckystiff.net/</uri><email xml:space="preserve">why@whytheluckystiff.net</email></author><content type="html" xml:space="preserve">&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://webjazz.blogspot.com/2008/09/somebody-knows-shoes.html"&gt;Wilhelm Chung&lt;/a&gt;: Running the sample code was&amp;#8230;easy. And trying out your own app&amp;#8230;you guessed it&amp;#8230;even easier. It helps that there&amp;#8217;s a ton of examples and documentation. Makes me think that when programming, you should keep the &lt;span class="caps"&gt;API&lt;/span&gt; of your code in mind, so that it&amp;#8217;s easy to use after you&amp;#8217;ve implemented it.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I&amp;#8217;m glad to have Wilhelm around.  He&amp;#8217;s raised a memory leak in &lt;code&gt;clear&lt;/code&gt; which I&amp;#8217;m addressing at this very moment.&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;His comment about keeping it all in your mind is a crucial part of Shoes.  One of the key tenets embraced by Shoes goes like this:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://www-history.mcs.st-andrews.ac.uk/Quotations/Whitehead.html"&gt;A. Whitehead&lt;/a&gt;: By relieving the brain of all unnecessary work, a good notation sets it free to concentrate on more advanced problems.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Furthermore, having &lt;a href="http://hackety.org/press/nks-9.html"&gt;ten essentials&lt;/a&gt; is an idea taken from Bonnie Nardi&amp;#8217;s studies of spreadsheets.  She felt that if there was an immediately useful subset of a language, then users could be immediately productive, they could learn quicker and the language would have practical effect.&lt;/p&gt;</content></entry></feed>
