<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/rss2full.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/itemcontent.css" type="text/css" media="screen"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-174871315057012202</atom:id><lastBuildDate>Wed, 05 Nov 2008 06:37:43 +0000</lastBuildDate><title>Coals [2] Newcastle</title><description>Telling the I.T. Community more about itself since 2007. We offer perspectives on the culture and art of all things computer-y.</description><link>http://blog.coals2newcastle.com/</link><managingEditor>noreply@blogger.com (Nate)</managingEditor><generator>Blogger</generator><openSearch:totalResults>89</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><geo:lat>40.718113</geo:lat><geo:long>-111.889386</geo:long><image><link>http://coals2newcastle.blogspot.com</link><url>http://farm2.static.flickr.com/1305/1128993225_98e2ba76f3.jpg?v=0</url><title>Coals[2]Newcastle RSS image</title></image><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/Coals2Newcastle" type="application/rss+xml" /><feedburner:emailServiceId>1111224</feedburner:emailServiceId><feedburner:feedburnerHostname>http://www.feedburner.com</feedburner:feedburnerHostname><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-4729896366248961027</guid><pubDate>Wed, 05 Nov 2008 06:37:00 +0000</pubDate><atom:updated>2008-11-04T23:37:43.169-07:00</atom:updated><title>Komodo IDE 5.0: Excellent, if Incremental, Changes</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;For the record, I have loved Komodo since version 2.0. The thing that first attracted my gaze was the amazing Rx Toolkit, which anyone who uses regular expressions even occasionally needs to have handy.  The ability to test a regexp thoroughly without writing a huge test case for the entire class/method/function/whatever is a blessing and a time saver of epic proportions.  Beyond that, however, Komodo has always been best at handling just about any language I want to use, without being as persnikity about making me learn it's super-secret shortcuts as, say, emacs, or vi, or TextMate.  So I have always had a copy of the dragon at my side, even if I'm doing most of my work in Eclipse, or Zend Studio (which is now Eclipse), or Flex Builder (Eclipse again) or yes, TextMate.  &lt;br/&gt;&lt;br/&gt;So when I saw that version 5 was out today I was excited. I cast my ballot some days ago, so I wasn't in any rush to get to the polls today, and was free to poke around the new IDE and see what was there.  &lt;br/&gt;&lt;br/&gt;Everything you see on the site is true: verson 5 is faster to load than version 4, faster to run, calls tooltips and auto-completes more accurately and quickly than before, even in multi-language situations that stump most IDE's.  The chrome (a word that Google has spoiled somewhat) matches the local system better, by which I mean that Komodo on the Mac doesn't look like a Windows port any more.  &lt;br/&gt;&lt;br/&gt;The problem is that anyone who has used Komodo for a while is kinda spoiled, and a lot of the big work looks insiginifcant, because you're used to it: Komodo has been effortlessly detecting and using my default installs of Ruby, SVN, PHP, python, etc. etc. for years now, so the fact that the newest version can do that is no big news.  Granted, I can only &lt;i&gt;usually&lt;/i&gt; get an Eclipse based IDE to work with Apple's built-in SVN client, but I don't expect as much from Eclipse-based IDE's. A long time user of Komodo will feel right at home, perhaps too much at home.   However, upgrade licenses are not terrible (USD$95.00 until December 23, 2008, then USD$145), so it would definitely be worth it for anyone who gets paid to write code.&lt;br/&gt;&lt;br/&gt;Komodo manages to be full of useful features without being heavy and overwrought like some IDE's (*cough* Visual Studio *cough*).  I don't know how many people know about the incredible macro feature, or how well it's used in Komodo's Ruby on Rails development, but it's amazing to me that it's there and so foolproof.  I can create macros in Komodo in half the time it would take me to re-read the chapter in the TextMate manual (sold separately) on creating macros; so about a fourth the time it would take me to create the TextMate macro.&lt;br/&gt;&lt;br/&gt;Which brings us to support. Once again, Komodo excels.  The built-in help and tutorials will show you how to solve most of your problems before it gets to the forum stage, but I have had questions I needed to post in the forum and I have always come away satisfied.  If you haven't visited the Komodo forums, you owe it to yourself to do so.  Questions are usually answered by Active State staff, often within hours of being asked. &lt;br/&gt;&lt;br/&gt;Overall, if you don't currently have a Komodo license, I heartily recommend you get one; it's well worth the price of admission. &lt;br/&gt;Unfortunately, that's my one sticking point: the price has gone up a bit, and I'm no longer a student, so I don't qualify for the student price (which has also gone up, from around USD$50 to USD$100).  This isn't a surprise; everything has gone up a bit, and even at the new prices it's still worth it. But it does mean that, after my 21 day trial ends, I'll be back to version 4 until I can scrape up the cash for the new license.&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=qa8dN"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=qa8dN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=mZpuN"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=mZpuN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=Hh2yn"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=Hh2yn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/442908264" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/442908264/komodo-ide-50-excellent-if-incremental.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/11/komodo-ide-50-excellent-if-incremental.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-4225512537424016334</guid><pubDate>Fri, 24 Oct 2008 03:26:00 +0000</pubDate><atom:updated>2008-10-23T21:26:26.454-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">World Wide Web</category><title>The New iGoogle</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I was a bit surprised to see my tabs suddenly appear on the side of my screen instead of across the top.  And not the happy kind of surprised, either.  This is really unlike Google, forcing such a sweeping change on people, when they have made every other change a "try it if you want" sort of thing. I understand there are still people out there who still use the plain white Google homepage.&lt;br/&gt;&lt;br/&gt;According to the &lt;a href='http://googleblog.blogspot.com/2008/10/whats-new-with-igoogle.html'&gt;official article&lt;/a&gt;, the change was made to allow "canvas view" widgets. These are useful. I do like being able to access my GMail without leaving iGoogle, and I can see how more of these widgets would make things even better, but I don't see how that necessitated moving the tabs and wasting horizontal screen space.&lt;br/&gt;&lt;br/&gt;And that forces us to ask, "why are we so upset about wasting space on the side of the page? iGoogle wastes some  200 pixels of screen space vertically to give you a pretty picture with a search bar in it, and we can all deal with that just fine. But take away 130 pixels from the side of the screen and suddenly the world is up in arms.&lt;br/&gt;&lt;br/&gt;I really think the issue is choice: if we were allowed to choose one way or the other, some would naturally prefer the sidebar, some would stick with top tabs. But rolling it out to everyone unannonced and unasked-for rubs people wrong.&lt;br/&gt;&lt;br/&gt;So, dear Google intern who has to read the comments on the internet about iGoogle, here's one more vote for &lt;strike&gt;change&lt;/strike&gt; choice. Thank you.&lt;br/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=jPUfM"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=jPUfM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=vvm0M"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=vvm0M" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=Dd16m"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=Dd16m" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/430289791" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/430289791/new-igoogle.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/10/new-igoogle.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-8427620294225949461</guid><pubDate>Tue, 09 Sep 2008 05:58:00 +0000</pubDate><atom:updated>2008-09-09T00:12:30.717-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Web culture</category><category domain="http://www.blogger.com/atom/ns#">meta</category><title>"Better"</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I respect &lt;a href='http://www.43folders.com/2008/09/08/gears-shifting'&gt;Merlin Mann&lt;/a&gt;.  I have for a long time. This site is proof that Mr. Mann accomplished one of his own &lt;a href='http://www.43folders.com/2008/08/19/good-blogs'&gt;standards for a good blog&lt;/a&gt;: 43 Folders made me want to start writing.  And when he &lt;a href='http://www.kungfugrippe.com/post/48588149/better'&gt;says&lt;/a&gt; that he wants to stop focusing on a "portfolio of shallow but strongly-held opinions about nearly everything" and "demand personal focus on making good things" it's like a breath of fresh air.  As cool as making a &lt;a href='http://media.rubyonrails.org/video/rails_take2_with_sound.mov'&gt;blog in 15 minutes is&lt;/a&gt;, there is--or there should be--­­an art to software development. It's the same art that should be used in idea development. In either case, it's an art that takes dedication, thought, and time.&lt;br /&gt;
&lt;br /&gt;
Don't misunderstand me; I know that Rails shows you how to develop a blog in 15 minutes to illustrate that Rails is a tool that gets out of your way and lets you write what's in your head. That's a wonderful thing, and Ruby and Rails both are very good at it once you learn how they work.  The problem is that you see more and more people who wrote 20 minute blogs because that's all the attention span they could muster, whereas if they had put a little time into it (say, three or four years) they could have written the next &lt;a href='http://wordpress.org/'&gt;WordPress&lt;/a&gt;. And the reason for this is that we are all too excited to get on to the next great idea to spend too much time on this one.&lt;br /&gt;
&lt;br /&gt;
Incidentally, that's my major complaint against Ruby on Rails.  Ruby: brilliant. It's like Smalltalk reborn.  Rails: excellent. You can develop brilliant apps to your heart's delight.  But somewhere between developing apps and deploying apps it's like all the engineers got distracted and hopped off the train.  The sheer number of &lt;a href='http://www.modrails.com/'&gt;mostly-working&lt;/a&gt; &lt;a href='http://mongrel.rubyforge.org/'&gt;rails&lt;/a&gt; &lt;a href='http://www.capify.org/'&gt;deployment&lt;/a&gt; strategies is testament to the fact that the core RoR team got distracted before they finished the job.  This is in direct contrast to the PHP/perl crowds, who wrote functional, intelligent Apache modules that are rigorously maintained and actually work.  But that's a topic for another post.&lt;br /&gt;
&lt;br /&gt;
Returning to the point, there is a great need for all of us on this great big internet to not only write what we are thinking, but to think about what we are writing. I'll admit that I'm as guilty of publishing a first draft as anyone, and have just as much need to change that as the greenest Rails blog developer.  &lt;br /&gt;
&lt;br /&gt;
It's the "...focus on making good things" that catches me.  That's the difference between, say, &lt;a href='http://nuklearpower.com/latest.php'&gt;8 Bit Theater&lt;/a&gt; and &lt;a href='http://www.gunnerkrigg.com/index2.php'&gt;Gunnerkrigg Court&lt;/a&gt;: They're both interesting, both engaging, but Gunnerkrigg Court is a joy to look at and delicious to read, where 8-bit is kinda funny sometimes. The irony of 8-bit is that the author is capable of more; his Atomic Robo stories are fun and good looking, but are also clearly much harder to make.&lt;br /&gt;
&lt;br /&gt;
And this definitely applies to me as well.  I have a lot of beta code wandering around out there that needs a few more wrinkles ironed out before I feel comfortable sharing it with the wider world. I have a lot of beta ideas that could use more testing and proving before I let them wander too far.&lt;br /&gt;
&lt;br /&gt;
So, Coals[2]Newcastle will be put together a little more thoughtfully from now on.  Posts weighing in on pros and cons will be weighed a little more before they are published.  Diatribes will be rarer, but only because they have been replaced by critiques.  It's not much, but maybe I can be part of something that encourages us all to think before we send.&lt;br /&gt;
&lt;br /&gt;
That said, there is still the question of what I'm going to do with the &lt;a href='http://crazyapplenews.com'&gt;Crazy Apple News Site&lt;/a&gt;.  It could well be argued that a website that is nothing but jokes about Apple products is basically "snark" as Mann puts it.  Fortunately I have an answer for that as well:&lt;br /&gt;
&lt;br /&gt;
&lt;a href='http://en.wikipedia.org/wiki/P._G._Wodehouse'&gt;P.G. Wodehouse&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href='http://blog.coals2newcastle.com/2007/12/where-jeeves-came-from.html'&gt;P.G. Wodehouse&lt;/a&gt; wrote books that all basically used the same plot, but the plot was incidental to the story.  What he wrote was pure comedy gold, as funny today as the day he wrote it.   Somehow he took the manners of 1920's British drones and made them into lyrical works of art, unequaled in the English language.  &lt;br /&gt;
&lt;br /&gt;
So, in short, I believe telling IT people about IT people (this site) and making fun of Apple people for the benefit of Apple people (CANS) can both be "better". And, with a some work and possibly some luck, they will be.  &lt;br /&gt;
&lt;br /&gt;
And thank you, dear readers, for making "better" worth doing.&lt;br /&gt;
&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=G2CYL"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=G2CYL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=4Id2L"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=4Id2L" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=tGsOl"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=tGsOl" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/387365505" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/387365505/i-respect-merlin-mann.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/09/i-respect-merlin-mann.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-2764369505386279541</guid><pubDate>Wed, 03 Sep 2008 00:23:00 +0000</pubDate><atom:updated>2008-09-02T18:23:58.352-06:00</atom:updated><title>Google Chrome: First Impressions</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Google has finally decided to take over your browser &lt;a href='http://en.wikipedia.org/wiki/Chrome'&gt;chrome&lt;/a&gt; as well as the content, and today we all saw the results. And by "we all" I mean "people using Windows, or in my case, people who have Windows running in a virtual machine for cases like this."&lt;br/&gt;Google Chrome touts itself as a &lt;a href='http://www.google.com/googlebooks/chrome/#'&gt;browser for today's web&lt;/a&gt;, not the web of 15 years ago.  Sporting tabs that run in separate processes, easy bookmarking, and a "speed dial" like home page, an easy interface for spawning &lt;acronym title='Single Site Browser'&gt;SSB&lt;/acronym&gt;'s and many other features, Chrome seems to have picked up the best innovations of all the competing browsers and rolled them into one WebKit-based package.  So how does it look?&lt;br/&gt;&lt;br/&gt;The look is boring Google.  Faded blue borders, soft edges, nice, but not in any way interesting, especially when compared with &lt;a href='http://www.opera.com/products/desktop/screenshots/'&gt;Opera&lt;/a&gt; and &lt;a href='http://www.applegazette.com/wp-content/uploads/2008/03/firefox-3-mac.jpg'&gt;Firefox&lt;/a&gt;'s latest looks. As near as I can tell, Chrome also lacks the skinning functionality --if such it can be called-- of Opera and Firefox.&lt;br/&gt;&lt;br/&gt;Getting past the "chrome" of Chrome, you see a browser window. Yes, tabs are on top. Yes, it loads JavaScript very quickly. To the right of the "Omnibar" there is a button that looks like a page, and clicking it gives you a menu, which includes the ability to create an SSB for your current page. This has been a task that many have tried and failed at before, from &lt;a href='http://fluidapp.com/'&gt;Fluid&lt;/a&gt; to &lt;a href='http://labs.mozilla.com/2007/10/prism/'&gt;Prism&lt;/a&gt;, I haven't had any luck getting O'Reilly's &lt;a href='http://safari.oreilly.com/'&gt;Safari Bookshelf&lt;/a&gt; to turn into a nice SSB that I can have running all the time. GMail, easy, Twitter, sure, but Safari? Nope. Chrome handled it perfectly. Sign-in is easy, password is remembered, and then I've got a link to my Bookshelf "program" on the desktop.  &lt;br/&gt;&lt;br/&gt;"Password remembered", however, is a problem.  Chrome will store your passwords but doesn't give you an option of encrypting them or protecting them behind a master password, which is a major failing to my way of thinking.  On a Mac I use 1Password to store all my signons, on Windows I use &lt;a href='http://keepass.info/'&gt;KeePass&lt;/a&gt;, or Firefox's password manager with a master password.  (If you don't use a master password then programs like &lt;a href='http://www.gtopala.com/'&gt;siw&lt;/a&gt; can mine all your passwords in one fell swoop. You've been warned.) On Chrome any password you store will be shown to anyone who sits at your desk, looks in the "options" menu and clicks "show password" while highlighting a site for which you've stored a password. Scary.&lt;br/&gt;&lt;br/&gt;One of the reasons I keep coming back to Firefox--despite the speed of Safari and the all-around goodness of Opera--is add-ons.  I can make Firefox do exactly what I want, not just what Mozilla wanted when they shipped the latest version. If Opera had an add-on API as simple and open as Firefox's I don't think I would have ever switched after I discovered them in 2003. If Safari had a site where I could find add-ons that worked as well as&lt;a href='http://www.apple.com/iphone/appstore/'&gt; &lt;strike&gt;The App Store&lt;/strike&gt;&lt;/a&gt; &lt;a href='https://addons.mozilla.org/en-US/firefox/'&gt;Mozilla's add on site&lt;/a&gt;  I wouldn't have left Safari to come back to the 'Fox when version 3 came out. Chrome, at this point, suffers from the same problem: you get what Google thinks you need. Doesn't matter what you want, you get what they give you. For many people, this isn't a problem, but I have a hard time surfing without AdBlock plus (An excellent thing indeed. But, um, please turn it off for this site, okay?) and a very hard time developing without Firebug.  This could be the deal-breaker.  Yes, Chrome is open source, so someone could theoretically fork it, or incorporate it's good points into Firefox or even Safari and that would be great, but if Google wants to keep us coming to their sanctioned version of the app they need to make it extensible, and easily so.&lt;br/&gt;&lt;br/&gt;Overall, Chrome is a good beta program in the original sense of the word, not the Google "We'll call it beta until it's end-of-life" sense of the word: It's got lots of promise, but it also has lots of room to grow.  I'll be interested to see how that growth works out.&lt;br/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=fxECbL"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=fxECbL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=nj4SPL"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=nj4SPL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=HAjoxl"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=HAjoxl" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/381834193" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/381834193/google-chrome-first-impressions.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/09/google-chrome-first-impressions.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-7366705235093855849</guid><pubDate>Mon, 25 Aug 2008 21:14:00 +0000</pubDate><atom:updated>2008-08-25T15:14:25.831-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Review</category><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">World Wide Web</category><category domain="http://www.blogger.com/atom/ns#">Open Source</category><category domain="http://www.blogger.com/atom/ns#">Software</category><category domain="http://www.blogger.com/atom/ns#">php</category><title>bbPress: If only I needed a forum!</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I admit it: I love &lt;a href='http://automattic.com/'&gt;Automattic&lt;/a&gt;. From &lt;a href='http://wordpress.org/'&gt;WordPress&lt;/a&gt; to &lt;a href='http://akismet.com/'&gt;Akismet&lt;/a&gt; to &lt;a href='http://en.gravatar.com/'&gt;Gravatar&lt;/a&gt;, I enjoy using their software and am continually impressed by the quality and elegance of the experiences they create. More than just about any other company, Automattic seems to live up to their motto: "Code is Poetry".  So when they came out with bbPress I thought, "wow, there's something I really don't need." Which means, of course, that I eventually downloaded it and installed it on my server.  &lt;br/&gt;&lt;br/&gt;the download is freakishly tiny: about 336KB in Tar.gz format.  Unpack that, send the files to the server, then run through a setup similar to the &lt;a href='http://codex.wordpress.org/Installing_WordPress'&gt;WordPress 5-minute install&lt;/a&gt;, with the noticeable absence of directly editing any database config files.  It appears that BBPress writes its own config.php, using information gathered during the install process.  Roughly 5 minutes after you start you have your own forums.  &lt;br/&gt;&lt;br/&gt;The default theme is fine, but there are obvious changes to be made, like replacing the "bb" logo with your own logo, changing the color scheme, etc.  Unfortunately, there aren't a whole bunch of premade forum themes out there like you see for WordPress. Fortunately, just about all the changes you want to make are possible via CSS.&lt;br/&gt;&lt;br/&gt;Akismet works with bbPress; indeed you will find the whole admin interface looks very much like the WordPress admin area, which means that administration is easy as well.&lt;br/&gt;&lt;br/&gt;Anyway, if you would like to see bbPress in action, feel free to check out my &lt;a href='http://forums.natedickson.com/'&gt;test forum. &lt;/a&gt; I won't guarantee that it will exist for any particular period of time, and it doesn't have any real reason for existance; maybe you all will think of one.  Posts will be filtered and moderated by yours truly; whatever I say goes is gone. To that end, please refrain from profanity, vulgarity, abuse or netspeak; any of those are grounds for having your posts deleted--or worse-- having you marked as a "bozo".  Just about anything else probably goes, however.&lt;br/&gt;&lt;br/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=QDvZsK"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=QDvZsK" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=eNvOiK"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=eNvOiK" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=hrs6ck"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=hrs6ck" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/374612850" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/374612850/bbpress-if-only-i-needed-forum.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/08/bbpress-if-only-i-needed-forum.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-8223697696570279872</guid><pubDate>Thu, 21 Aug 2008 22:16:00 +0000</pubDate><atom:updated>2008-08-21T16:53:41.828-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Updates</category><title>Subversion 1.5.1 in OSX</title><description>So I upgraded my Subversion server a few weeks ago, but didn't think about it, because I was working on existing projects that all belived that they were still working in svn 1.4.x working copies. So today, when I created a new project in a new repository on the server I was shocked that my trusty TextMate would throw an error when I tried to commit my changes to the new repository.&amp;nbsp; The error message let me know everything I needed to know:&lt;br /&gt;
&lt;blockquote&gt;this client is too old to work with working copy.&amp;nbsp;&amp;nbsp;&lt;/blockquote&gt;At first I wondered why my Eclipse-based SVN clients weren't having this problem, but I figured they were using internal copies of SVN (true, by the way. They're both using SVNKit)&lt;br /&gt;
So: apparently TextMate uses the system SVN client, which only makes sense.&amp;nbsp; Thus I needed to upgrade my system client.&amp;nbsp; Three minutes on Google let me know that Collab.net hosts compiled binaries, and that all I needed to do was run the installer and I would be good. So I dutifully downloaded and ran the installer (found &lt;a href="http://www.collab.net/downloads/community/"&gt;here&lt;/a&gt;) and then went back to the command line and typed &lt;code&gt;svn --version&lt;/code&gt; and like magic... It was still showing Subversion v. 1.4.&amp;nbsp; snooping around a bit showed that the new version was installed in&amp;nbsp; /opt/subversion.&amp;nbsp; Okay then.&amp;nbsp; so I went to ~/ and edited &lt;code&gt;.profile&lt;/code&gt; to include &lt;code&gt;/opt/subversion&lt;/code&gt; on the path:&lt;br /&gt;
&lt;code&gt;export PATH=/opt/subversion:$PATH&lt;/code&gt;&lt;br /&gt;
and closed and re-opened my terminal session, so that it would reload the .profile preferences.&lt;br /&gt;
Okay! so I ran &lt;code&gt;svn --version&lt;/code&gt; again, and 1.4. was still there.&amp;nbsp; So, going into &lt;code&gt;/usr/bin&lt;/code&gt; I find the svn command for version 1.4.x and use&lt;br /&gt;
&lt;blockquote&gt;&lt;code&gt;sudo mv svn svn.old&lt;/code&gt;&lt;/blockquote&gt;to rename it.&lt;br /&gt;
After that I ran &lt;code&gt;svn --version&lt;/code&gt; again and was greeted with a cherry &lt;code&gt;1.5.1&lt;/code&gt;, and Textmate could commit changes to my repository again.&lt;br /&gt;
&lt;br /&gt;
So, if you have the same problem, now you know how to solve it. Thanks!&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=JWgGFK"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=JWgGFK" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=xH6WtK"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=xH6WtK" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=fzdI6k"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=fzdI6k" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/371358268" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/371358268/subversion-151-in-osx.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/08/subversion-151-in-osx.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-8003307762923892060</guid><pubDate>Tue, 22 Jul 2008 22:20:00 +0000</pubDate><atom:updated>2008-07-22T16:48:53.158-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Meditation</category><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Rails</category><title>SVN vs. GIT: Why not jump into the battle?</title><description>So much has been said of this little battle that I can't help but put my oar in as well.&lt;br /&gt;
For those of you who don't worry about these things, SVN (subversion) and GIT are Source Code Management programs/systems/whatever. In a nutshell, they allow programmers to make sure they 1.) always have the latest version of a project their team is working on and 2.) are able to roll back to an older version if the new version turns out to be fatally flawed.&lt;br /&gt;
&lt;br /&gt;
The major difference between SVN and GIT is the nature of the "repository" or common storage that each uses.&amp;nbsp; SVN resides on a server that all team mates can get to, and they each check out a copy of the code, make their changes, and then commit their changes back to the repository when they're done.&amp;nbsp; GIT is the same, except each programmer checks out the entire repository and makes changes first to their local "clone" and then eventually merge those changes back to the central repository, where they are propagated to all the other team members.&lt;br /&gt;
&lt;br /&gt;
All this is good and fine, but from a user's perspective the differences are minimal.&amp;nbsp; What really matters is how easy it is to commit your changes.&lt;br /&gt;
&lt;br /&gt;
For some perspective we go to the best thing to come out of Microsoft: Code Complete 2nd Edition by Steve McConnell:&lt;br /&gt;
&lt;blockquote&gt;In mature technology environments—[SVN, for our purposes]—we benefit from a rich software development infrastructure. ...The tools are well documented in vendor literature, in third-party books and articles, and in extensive Web resources. Tools are integrated, so you can do [everything] from within a single environment. If you do run into problems, you can readily find quirks of the tools described in FAQs. Many consultants and training classes are also available.&lt;/blockquote&gt;And this holds true.&amp;nbsp; SVN is integrated into Eclipse (two or three different ways, Eclipse being what it is), Komodo, TextMate, and all the other big names in software development.&amp;nbsp; Ruby on Rails developers can use Capistrano to automatically upgrade their apps using SVN.&amp;nbsp; This means that I can be working in Komodo and when I'm happy with my code I press a button and Komodo handles the process of committing my changes; no command line, no mess.&amp;nbsp; If I'm using an IDE that doesn't support SVN &lt;cough&gt;Visual Studio&lt;/cough&gt; then you can use TortiseSVN on Windows to handle all your checkout/commit/change/switch/branch/tag etc. needs from the Explorer, with pretty icons to let you know the status of all your files from Windows itself.&amp;nbsp; Mac users can use Versions (in beta but pretty good) to get some of the same functionality.&lt;br /&gt;
&lt;br /&gt;
Returning to Mr. McConnell for the other side of the coin:&lt;br /&gt;
&lt;blockquote&gt;In early-wave environments—[GIT, for our purposes]—the situation is the opposite. Few ...choices are available, and those...tend to be buggy and poorly documented. Programmers spend significant amounts of time simply trying to figure out how the language works instead of writing new &lt;span&gt;code&lt;/span&gt;&lt;a href="" name="language products"&gt;&lt;/a&gt;. Programmers also spend countless hours working around bugs in the language products, underlying operating system, and other tools. Programming tools in early-wave environments tend to be primitive. ...Vendors revise their compiler version often, and it seems that each new version breaks significant parts of your &lt;span&gt;code&lt;/span&gt;&lt;a href="" name="so you"&gt;&lt;/a&gt;. Tools aren't integrated, and so you tend to work with different tools for UI, database, reports, and business logic. The tools tend not to be very compatible, and you can expend a significant amount of effort just to keep existing functionality working against the onslaught of compiler and library releases. If you run into trouble, reference literature exists on the Web in some form, but it isn't always reliable and, if the available literature is any guide, every time you encounter a problem it seems as though you're the first one to do so.&lt;/blockquote&gt;Grim, no?&amp;nbsp; Actually not really. Living on the edge can be fun, and there is often a very good reason that the current up-and-comer is an up-and-comer.&amp;nbsp; GIT's distributed methodolgy removes the single point of vulerablility that has plagued SVN, and may well repace SVN as the de-facto standard, just as SVN replaced CVS. (This article could just as well have been about Ruby being the new PHP, just as PHP is the new Perl, just as Perl is the new Awk...and so on. But I'm not nearly crazy enough to jump into the Rails/PHP/NetBeans/Coldfusion battle.) But for now switching to GIT means that there is no Komodo integration, primative Eclipse integration, (TextMate, of course, already has an excellent GIT bundle) and users of Visual Studio and other non-integrating platforms are forced back to the command line for all their actions. &amp;nbsp; More steps means more people forget to take those steps, which means that more people lose their work to midnight "it seemed like a good idea at the time" edits and hard disk failure.&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
So what do you do?&amp;nbsp; Should we always wait until something is mature to use it?&amp;nbsp; No.&amp;nbsp; New things often have very good reasons to exist, and we should learn them, even if only to keep ourselves from getting stagnant and sounding like &lt;a href="http://upload.wikimedia.org/wikipedia/commons/6/64/Wikimania_stallman_keynote2.jpg"&gt;Richard Stallman&lt;/a&gt;.&amp;nbsp; But if you are coming up on a deadline (like I am now) then this might not be the exact right time to try to piece together a new CMS/IDE/OS combo.&lt;br /&gt;
&lt;br /&gt;
I mention this because my workplace just moved me, at long last, from a Windows XP system to an iMac, and I am doing a lot of system setup in the face of deadlines, and the wisdom of not doing exactly this is staring me in the face.&lt;br /&gt;
&lt;br /&gt;
Anyway, feel free to let me know what your favorite CMS is, and thanks! (Perforce users need not apply.)&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=fsXspJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=fsXspJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=h0X5HJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=h0X5HJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=5noo2j"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=5noo2j" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/342976960" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/342976960/svn-vs-git-why-not-jump-into-battle.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/07/svn-vs-git-why-not-jump-into-battle.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-5685016054520484069</guid><pubDate>Tue, 15 Jul 2008 22:03:00 +0000</pubDate><atom:updated>2008-07-15T17:12:02.787-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Storage</category><category domain="http://www.blogger.com/atom/ns#">Software</category><category domain="http://www.blogger.com/atom/ns#">Amazon</category><title>How I Learned to Stop Worrying And Love The Web</title><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Okay, so here's something I've worried about: My photos.  I work with computers enough to know that catastrophic hard drive failure happens, and happens regularly.  Most of the stuff I have on my iMac at home isn't that critical.  Yes, I have a lot of programs, but I also have my license keys stored online and I can retrieve them and re-install them at will.  No big deal. And yes, I have some documents that I wouldn't want to lose, but documents are small and, once again, I have them backed up to a server online (okay, I have a .&lt;strike&gt;Mac&lt;/strike&gt; Mobile Me account.  Sue me.) so that's not a big problem. And even if I lose all my documents, It's once again not a big deal.&lt;/div&gt;
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;/div&gt;
The problem is the one irreplaceable directory on my computer: the one full of those pictures we have of our kids at birth, their first camping trip, etc.  No matter what I do, I can't re-create these pictures if they're lost.  &lt;br /&gt;
So like a good Mac user I bought an external hard drive when I bought Leopard, and Presto! Instant Time Machine!  Now if my computer hard drive dies, I still have all the pictures.  I'm safe!&lt;br /&gt;
But... What about, say, a fire? Or a thief that spends the time digging my Time Machine disk out of the place I hid it?  Or a really odd power surge? Or rabid hard-drive eating weasels?&lt;br /&gt;
&lt;br /&gt;
So once again I had a problem that was keeping me awake at nights.  Not for long, mind you, just a few seconds; just a small bit of psychic baggage on my soul.  I considered buying a bunch of DVDs to make periodic backups, but that gets expensive in a hurry, because if you want to be sure your data is safe you need to use DVD+R, not DVD+RW.&lt;br /&gt;
&lt;br /&gt;
Then I thought about getting a second external hard drive, doing monthly backups to that, then putting it in a safe place offsite somewhere, but that's a huge pain in the backside, so I probably wouldn't do it very religiously. Also, what if your house burns down when you have the offsite backup hard drive in the house?  Now  you're hosed again, so you should get a second offsite backup hard drive, and only have one backup hard drive in the house at a time. This road has no end, folks.  I read a book by a gentleman who had &lt;b&gt;seven&lt;/b&gt; hard drives to which he did backups, rotated into and out of his home, so he always had a backup or four offsite.&lt;br /&gt;
&lt;br /&gt;
The observant among you will remember that I said I have a .&lt;strike&gt;Mac&lt;/strike&gt; Mobile Me account. I also have around 20GB of pictures, and I don't know how much longer I want to pay Apple's prices for storage.  &lt;br /&gt;
&lt;br /&gt;
So, to recap: I have my almost-but-not-quite safe pictures on my hard drive and my Time Machine disk, and all of them up to two months ago on DVD's that are at my wife's mother's house. &lt;br /&gt;
&lt;br /&gt;
And then I discovered &lt;a href="http://www.amazon.com/gp/browse.html?node=16427261" target="_blank"&gt;Amazon's S3 service&lt;/a&gt;. (&lt;a href="http://en.wikipedia.org/wiki/Amazon_S3" target="_blank"&gt;S3=Simple Storage Service&lt;/a&gt;)  Put simply, Amazon will let you store stuff on their servers for a certain amount.  Specifically, $.15/GB/month.  So for my 20GB of pictures, I would pay $3 a month, or $36/year.  Transfers in and out are ludicrously cheap as well, so to upload all my pictures at $.10/GB is $2.00 (Requests are $.17/GB for the first 10TB, less thereafter).&amp;nbsp; With this service, Amazon worries about having enough redundancy, getting larger hard drives as needed, etc. etc. etc. and all I worry about is sending my my $2 every month.&amp;nbsp; ( Or else they send out a creepy kid on a bike to &lt;i&gt;hunt you down, man!&lt;/i&gt;)&lt;br /&gt;
&lt;br /&gt;
So great, but I still needed a way to make sure I have my most current pictures stored at all times.  Mind you, apps like &lt;a href="http://www.panic.com/transmit/" target="_blank"&gt;Transmit&lt;/a&gt; (which I love) give you access to S3, but they aren't good auto-backup programs. &lt;br /&gt;
&lt;br /&gt;
Enter &lt;a href="http://www.jungledisk.com/" target="_blank"&gt;JungleDisk&lt;/a&gt;.  For $20 you get lifetime upgrades, and they provide a frontend that will do automatic scheduled backups to Amazon's S3, as well as allow you to mount your S3 "buckets" as a network disk. JungleDisk also encrypts all data that it stores, meaning that even if someone gets into your S3 account, if they don't use your JungleDisk username and password they can't access your files. They've created the application for all major platforms (Win/Mac/Lin), and provide a USB version that includes all three versions, so you can access your data from any computer with USB.&lt;br /&gt;
So, the price of peace of mind:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Second External Hard Drive:&lt;/b&gt;&lt;br /&gt;
$99 for a 500GB LaCie (or possibly $198 for two external drives)&lt;br /&gt;
Travel time+Gas: ~$25/year&lt;br /&gt;
Safe deposit box:~$50/year&lt;br /&gt;
&lt;b&gt;Total: ~$273 &lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt; Or:&lt;br /&gt;
&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;S3&lt;/b&gt;&lt;br /&gt;
Storage: ~$36/year&lt;br /&gt;
Transfer:$2&lt;br /&gt;
JungleDisk: $20&lt;br /&gt;
&lt;b&gt;Total: ~$58&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Kinda seemed like a no-brainer.&lt;br /&gt;
&lt;br /&gt;
One caveat: I have a slow (1.5Mb) DSL connection; so the initial transfer has taken (so far) 4 days, with probably one more day remaining.&amp;nbsp; Mind you, this is five days during which my wife and I have been using this computer just as we always do, web browsing/email/downloads and all.  Thank goodness for a stable OS, but still, be aware.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=UfwhUJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=UfwhUJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=ToGEsJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=ToGEsJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=wYBCkj"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=wYBCkj" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/336526363" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/336526363/how-i-learned-to-stop-worrying-and-love.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/07/how-i-learned-to-stop-worrying-and-love.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-936332789611351677</guid><pubDate>Sun, 13 Jul 2008 14:00:00 +0000</pubDate><atom:updated>2008-07-13T08:00:00.170-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">nate</category><category domain="http://www.blogger.com/atom/ns#">meta</category><title>One Year of Carrying Coals</title><description>Wow. One year old today.  That's kinda cool.  It's been fun for me.  I hope it's worth it to you to keep my little blog in your feed reader.  Thanks for coming along for the ride!&lt;br /&gt;
In that one year (according to all my stat aggregates) I have been visited by a surprising number of people from India(Shukriya), Indonesia(Gum xia), Canada(Thanks), Norway(Tusen takk), The UK(cheers), Germany (Danke schön), and of course, the USA(hey, thanks).  Most of this is coming from searches, which is a huge turnaround because originally most of my traffic was people I told to "go visit my site. Please?" &lt;br /&gt;
Interestingly, more than &lt;i&gt;three times&lt;/i&gt; as many visitors to Coals[2]Newcastle use Firefox as Internet Explorer.&amp;nbsp; My most popular posts are things about Eclipse in general and Zend Studio for Eclipse in particular.&lt;br /&gt;
&lt;br /&gt;
Once again, thank you all for visiting. There's still a bunch to see.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=71GiRJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=71GiRJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=4w5veJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=4w5veJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=0lSYXj"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=0lSYXj" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/334275850" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/334275850/one-year-of-carrying-coals.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/07/one-year-of-carrying-coals.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-6737019901621274710</guid><pubDate>Sat, 12 Jul 2008 19:00:00 +0000</pubDate><atom:updated>2008-07-12T13:00:00.731-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Windows</category><category domain="http://www.blogger.com/atom/ns#">Vista</category><category domain="http://www.blogger.com/atom/ns#">nate</category><category domain="http://www.blogger.com/atom/ns#">Apple</category><category domain="http://www.blogger.com/atom/ns#">Microsoft</category><title>"Vista Bullying" on Crazy Apple News</title><description>I try not to do this, but I've already said everything about this subject I could think of, so I'm just redirecting you to read my comments about Microsoft's "The Vista Bullying Stops Here" speech on &lt;a href="http://crazyapplenews.com/2008/07/vista-bullies/"&gt;crazyapplenews.com&lt;/a&gt;, my other blog.&amp;nbsp; As the name implies, it's a much more focused and much less factual blog than this little thing, but this particular article works, I think.&lt;br /&gt;
&lt;br /&gt;
Anyway, enjoy!&lt;br /&gt;
(&lt;span id="sample-permalink"&gt;&lt;a href="http://draft.blogger.com/tr_1215877021489"&gt;http://crazyapplenews.com/2008/07/&lt;span id="editable-post-name" title="Click to edit this part of the permalink"&gt;vista-bullies&lt;/span&gt;&lt;/a&gt;&lt;span id="editable-post-name-full"&gt;&lt;a href="http://crazyapplenews.com/2008/07/vista-bullies/"&gt;/&lt;/a&gt;)&lt;/span&gt;&lt;/span&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=rP3KQJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=rP3KQJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=LmrOpJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=LmrOpJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=nvcvCj"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=nvcvCj" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/333712020" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/333712020/vista-bullying-on-crazy-apple-news.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/07/vista-bullying-on-crazy-apple-news.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-4951988279435512652</guid><pubDate>Sat, 28 Jun 2008 13:36:00 +0000</pubDate><atom:updated>2008-06-28T08:26:37.316-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Review</category><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Open Source</category><category domain="http://www.blogger.com/atom/ns#">Rails</category><title>Ruby on Rails - Rails = SproutCore</title><description>The world of Apple fanatics can't get enough of the word "&lt;a href="http://www.sproutcore.com/"&gt;SproutCore&lt;/a&gt;" ever since WWDC.&amp;nbsp; So I decided I'd give it a try.&amp;nbsp; After reading everyone else's review, I suspected it'd be something like &lt;a href="http://prototypejs.org/"&gt;Prototype&lt;/a&gt; and &lt;a href="http://script.aculo.us/"&gt;script.aculo.us&lt;/a&gt;, and&amp;nbsp; I really couldn't see the need for yet another JavaScript framework for graphics and XHR requests.&amp;nbsp; I also didn't really see the open-source community going head-to-head with two of its own favorites.&lt;br /&gt;
What I found was completely different.&amp;nbsp; Whereas Prototype and script.aculo.us try to take your webpage and make it more appealing, SproutCore wants to get rid of the page and make sure you are building a web app.&amp;nbsp; For starters, it comes with its own widget set, so everything from buttons to combo boxes to text editors are themed, or you can just force them to use the system chrome.&amp;nbsp; But under the hood is the most impressive thing: SproutCore is a complete&lt;a href="http://en.wikipedia.org/wiki/Model-view-controller"&gt; MVC application&lt;/a&gt;, all in static JavaScript, HTML, and CSS.&lt;br /&gt;
And some Ruby.&amp;nbsp; The SproutCore build tools are a lot like Rails, in that they are a Ruby Gem that you get with the traditional &lt;br /&gt;
&lt;div style="text-align: center;"&gt;&lt;code&gt;sudo gem install sproutcore&lt;/code&gt;&lt;/div&gt;
method, and to create a new SproutCore project you type&lt;br /&gt;
&lt;div style="text-align: center;"&gt;&lt;code&gt;sproutcore hello_world&lt;/code&gt;&lt;/div&gt;
at the command line.  To see what your project looks like you go into the &lt;code&gt;hello_world&lt;/code&gt; directory and type &lt;code&gt;sc-server&lt;/code&gt;. Look familiar?&amp;nbsp; Also like Rails, the initial sproutcore command creates a full directory, and there are many helpers, generators, etc that all build the project for you, so that creating your models, views, controllers etc is amazingly simple.&amp;nbsp; Views are .rhtml files, just like Ruby on Rails, and are interpreted into static HTML/CSS via erb.&amp;nbsp; Controllers and Models are JavaScript files, so you can put in whatever JavaScript you want as long as they implement the correct classes and respond to the required events.&lt;br /&gt;
When you project is finished you run a single command to turn the whole thing into optimized, static HTML/CSS/JavaScript, and you can then upload that directory anywhere you want it, on any server and it will run.&amp;nbsp; It can interact with any backend technology, so long as it responds in JSON and accepts standard POST and GET requests.&amp;nbsp; This is a huge advantage over Ruby on Rails, where hosting is still expensive and finicky to get put together.&lt;br /&gt;
SproutCore isn't perfect. It's still pretty young (my installed version is 0.9.11) and the documentation is far from complete.&amp;nbsp; There are many functions that aren't available yet, but I suspect that a judicious use of other popular frameworks will alleviate that particular pain.&amp;nbsp; There is the question about loading your entire app into the user's browser, but to understand that you need to realize what arena SproutCore is competing in.&lt;br /&gt;
&lt;br /&gt;
SproutCore isn't, as I first thought, an answer to Prototype, it's an answer to Flex and Silverlight.&amp;nbsp; Where Flex takes an entire MVC app and wraps it in Flash, SproutCore wraps it in JavaScript (I haven't played with Silverlight yet, because I hate it. Not because it's Microsoft &lt;i&gt;per se&lt;/i&gt;; I would have hated it if it was from Google.&amp;nbsp; I just really don't think we need another plugin-based browser programming language. But that's another article).&amp;nbsp; This is refreshing because it does away with the plugin and works with native browser technology.&lt;br /&gt;
&lt;br /&gt;
Now I have to say: I really do like Flex.&amp;nbsp; Adobe has done an excellent job of turning Flash into a business tool, and the AIR runtime is just too easy to use.&amp;nbsp; But it's clear that Flash on the iPhone is a distant dream, so people who work on that platform are going to lose out.&amp;nbsp; For that matter, waiting for each individual vendor to implement a Flash plugin for their mobile device is fraught with frustration, so it's nice to have a fallback that will work on any even reasonably standards-compliant browser.&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
So my recommendation is to give it a shot. Learning new technologies is always beneficial, and this one seems to be a real up-and-comer, if only because Apple is putting a lot of money behind it.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=ZbVtuI"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=ZbVtuI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=4jg9xI"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=4jg9xI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=oWy5oi"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=oWy5oi" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/322034259" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/322034259/ruby-on-rails-rails-sproutcore.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/06/ruby-on-rails-rails-sproutcore.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-7701782881434393619</guid><pubDate>Tue, 17 Jun 2008 21:13:00 +0000</pubDate><atom:updated>2008-06-17T15:13:17.788-06:00</atom:updated><title>Firefox 3 vs. Opera 9.5</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I can't help it, I love Opera.  I have paid $60 to the opera foundation (to register Opera 6 and 7) and felt the money was well worth it at the time.  After all, Firefox didn't quite exist yet (I discovered Opera 6 when Firebird 0.something was the Mozilla offering) and IE was, is, and will be crap.  (I should probably look at the number of IE users I have coming to this site before I say things like this.  Naaaaah.)  Anyway, even in Opera 6 I saw amazing speed, standards compliance, and innovation (tabs were an Opera thing, remember?) and I was duly impressed.  &lt;br/&gt;And now we come to 2008. Firefox 3 is out and Opera is on version 9.5.  And I gotta say, I'm impressed on both counts.  Here's my first impressions.&lt;br/&gt;&lt;h3&gt;Opera&lt;/h3&gt;&lt;br/&gt;&lt;a href='http://www.opera.com/'&gt;Opera&lt;/a&gt; has added a few features, like &lt;a href='http://www.opera.com/products/link/'&gt;Opera Link&lt;/a&gt;, which does a .Mac style sync of your bookmarks, notes, and other little browser customizations.  I have to say that one of the only reasons I've been using Safari on the Mac is that I know that I'll have my bookmarks on all my computers.  Opera getting this ability is a definite step in the right direction, and being able to do it without $99/year is a nice thing as well.  I realize that there are add-ons for Firefox that will do the same thing, but built-in is always nice.  Opera has had a face lift on both the Mac and Windows, but to my mind the Windows theme is far nicer than the Mac one.  Again.  The new &lt;a href='http://www.opera.com/products/dragonfly/'&gt;Dragonfly&lt;/a&gt; feature is nice, but looks suspiciously like firebug, to my eyes.  I can't do any really accurate speed tests right now, but it moves right along, and does a good job rendering HTML and JavaScript as usual.  Speed Dial is a feature that I wouldn't install as an extension, but I have to admit that I like it when I have it in Opera.&lt;br/&gt;Opera also has the best &lt;a href='http://www.opera.com/support/mastering/kiosk/'&gt;kiosk&lt;/a&gt; feature I've ever come across in my puff.  I've put it to use a number of times with great success.&lt;br/&gt;&lt;h3&gt;Firefox&lt;/h3&gt;&lt;br/&gt;And then there's Firefox, the &lt;a href='http://xkcd.com/198/'&gt;jewel of the open source&lt;/a&gt; community.  It's fast, light (even lighter now that they've fixed some of the memory leaks that plagued version 2) and infinitely extensible, it's the browser that does what you want.  The vanilla install has some nice new features, like the super-easy bookmarks, bookmark tagging, smart bookmarks that allow you to move back and forth over your history easily, and (finally!) full cocoa compliance on the Mac.  Firefox has looked (and occasionally performed) like crap on the Mac for a while now, so it's nice to get some real widgets.  No, it's not &lt;i&gt;important&lt;/i&gt;, but it is nice. Contrary to Opera, the default Firefox skin is far nicer (in my opinion) than the Windows default.  I kinda like that.  But at the end of the day the reason we all keep using Firefox is the lovely extensions.  I'm writing this in ScribeFire, with AdBlock Plus and ScriptBlock both keeping me safe from web nasties.  &lt;br/&gt;&lt;h3&gt;Overall&lt;/h3&gt;&lt;br/&gt;Overall, I have to give the nod to Firefox.&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=qGw6dI"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=qGw6dI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=jXNdhI"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=jXNdhI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=11Gazi"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=11Gazi" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/314087896" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/314087896/firefox-3-vs-opera-95.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/06/firefox-3-vs-opera-95.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-205292837317219630</guid><pubDate>Sat, 14 Jun 2008 02:00:00 +0000</pubDate><atom:updated>2008-06-13T20:26:31.896-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Open Source</category><category domain="http://www.blogger.com/atom/ns#">Eclipse</category><category domain="http://www.blogger.com/atom/ns#">Adobe</category><category domain="http://www.blogger.com/atom/ns#">Software</category><title>Flex Builder 3: Impressive</title><description>I spend an inordinate amount of time writing about Eclipse-based software.  I have to say the platform has grown on me, but there are things about it I still don't like.  One is the all-or-nothing approach to different vendors' add-ons.  I use Aptana, Zend Studio, and now Flex Builder 3, all of which are based on Eclipse.  The problem is this: I could use one base install of Eclipse and install all three of these as plugins, and they would each bring their own perspectives, views, menus and suchlike.  Theoretically, they would all stay out of each others' way and the whole thing would work beautifully.  In my experience doing that however, it meant that context menus were insanely long, there were tons of choices that didn't apply to what you were doing in case you started doing something else, and the whole mess took forever to load.  I eventually deleted the whole thing and did three separate installs.  The problem with that, of course, is that you have three identical copies of the base software, but with hard drives as large as they are these days that's not much of a problem.  &lt;div&gt;But this wasn't meant to be a continuation of my Eclipse rants.  I meant to write about Flex Builder 3, which I am impressed with, IDE platform to one side.&lt;/div&gt;&lt;div&gt;Flex, which Adobe hopes will be the next big thing instead of Silverlight, or AJAX, is really just Flash dressed in business clothes.  Gone is the timeline, gone the library of images and movies and bits, and everything focuses on what you would do with Flash if you were going to use it for websites instead of cartoons or games.  I approve of that.  Flash and the Flash IDE are great for web animation and games, but the Flash plugin has far too much power to be used only for &lt;a href="http://homestarrunner.com"&gt;Homestarrunner.com&lt;/a&gt;.  (the only web animation I've ever liked, by the way)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Flex lets you make things that do work.  It's designed from the ground up to work with AJAX-style HTTPRequest objects and accept data from remote sources in plain text, XML, JSON, or RPC notation, your choice.  It is built to easily display multi-page forms, and making transitions between pages is as simple as giving the transition you want an id in the XML source code.  I've done RPC-type stuff in Flash 8, and while it's possible, it isn't fun or easy.  It's both in Flex.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Much has been made of the AIR framework, allowing you to write apps in Flex and deploy them to the desktop, so all I'll say is "You can write apps and deploy them to the web or desktop. That's cool".&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Most Flex apps will have three parts: the XML (all in the mx: namespace) that defines the objects in the app, the Actionscript that defines what the app does, and the server-side code that gets and sets data for the app.  The first two parts are handled in Flex proper, while the third can be written in any language with which you are comfortable.  I mostly use PHP, but RoR works just as well. As long as your server understands the requests coming in (GET or POST, by the way) and can send intelligible responses back, you're set.&lt;/div&gt;&lt;div&gt;The XML part is very similar to XHTML, with specialized options for more advanced forms or displays.  XHTML doesn't have a &lt;datagrid&gt;, but MXML does have an &lt;mx:datagrid&gt; that accepts external data and lays it out in a scrollable, editable table.  Tags have predictable id properties, will accept style, height, width, and other properties that you would expect to give them if you were writing XHTML.  The Flex Builder application makes all this easy to do with good tooltips and a context-sensitive help menu that usually lists the API for whatever component your cursor is in at the top of the list, a far cry better than Flash 8's help function. Unlike any other WYSIWYG editor I've ever used, I rarely find any reason to argue with the code the "design mode" editor writes.  If you know what you're doing you can set farily complex style rules on things from design mode and the code will be clean and valid.  There are advantages to being in charge of the IDE and the parser.  the &lt;mx:&gt; namespace is tightly controlled, and I appreciate that.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Actionscript is Actionscript, so if you've ever used it in Flash you're ready for Flex.  I've been told it's quite similar to JavaScript, but, embarrassingly, I've never gotten around to learning JavaScript.  Sorry.  On the plus side, Flex apps will run on any browser that allows Flash, no JavaScript required.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;All in all, I only have two problems with the Flex builder: the first is the Eclipse strangeness mentioned earlier. The second is the price.  I got Flex Builder for cheap because I'm an employee of a university.  Most people pay hundreds of dollars.  (although they are giving it free to students).  To my mind, charging a lot for the IDE isn't a clever way to take over the internet.  Yes, the API is free and open-source, but writing the code entirely by hand without a debugger and code tips and all that isn't fun, and few people will do it.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Still, in spite of these two drawbacks, Flex is an elegant solution to getting content rapidly designed, tested and deployed, and in a world where almost everyone has Flash installed on their computers, It's an attractive alternative to AJAX.  Give it a shot.&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=Fc3fhI"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=Fc3fhI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=3pMhNI"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=3pMhNI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=Ckmesi"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=Ckmesi" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/311553516" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/311553516/flex-builder-3-impressive.html</link><author>noreply@blogger.com (Nate Dickson)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/06/flex-builder-3-impressive.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-1179876063721759229</guid><pubDate>Tue, 03 Jun 2008 14:49:00 +0000</pubDate><atom:updated>2008-06-03T09:22:26.371-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Apple</category><title>Tents and Computers</title><description>I was in the desert recently, doing some old-time family camping and jeeping.  My wife and I used to backpack all the time, but with two kids it gets very difficult to fit into a backpacking tent and fit all your gear into you backpacks.  So we threw in the towel and got a family camping tent.  It's actually called the "&lt;a href="http://springbar.com/explore/deluxe_tents/family_camper_tent.html"&gt;Family Camper 7&lt;/a&gt;"  It is big enough for 8 adults, so two adults and two kids (with all gear needed for a 1-year-old and a 3-year-old) just fit.  The tent is made by &lt;a href="http://springbar.com"&gt;Springbar&lt;/a&gt;, a company here in Utah that's been making quality tents forever.  We have proof of this: We were camping with my wife's family, and at our camp we had our brand-new springbar, my in-laws had their "new" Springbar (25 years old) and their "old" Springbar (35 years old). My brother-in-law also had his "new" Springbar that he bought used for $75, which we figure is probably about 50 years old.&lt;div&gt;What, you may be asking, am I doing talking about tents in a tech blog?  The ages of the tents involved should answer the question.  If you take a look at a Springbar, you can see why they last so long.  They are solid canvas with heavy-duty zippers.  The pole system is simple, built out of steel poles instead of fiberglass, and is external.  One person can pitch a tent in about 20 minutes, two people in about 10.  All the seams are doubled over and double-stitched, so you don't have to worry about one coming open.  Yes, these tents are much, much more expensive than ones you would get at &lt;a href="http://www.costco.com/Home.aspx"&gt;Costco&lt;/a&gt; or other places, but if they last upwards of 50 years I would say it's worth it.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Forgive the partisan view, but this is strongly reminiscent of the way Apple does things.  My father-in-law, the same one that has two Springbar tents, also has an original PowerMac, an original iMac, and (finally) an original Intel iMac, which I made him buy when I got tired of doing tech support on OS 7.  But the computers are well-built, well-designed, and durable.  they cost more, but they last, and they are something that you can be glad you own for a long time. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Don't get me wrong; there is a place for inexpensive tents that you can take anywhere, and there's a place for do-it-yourself tents.  My cousin's husband has a "tent" that is a pole and a blanket. He uses it for snowcamps, and it's perfect for what he does for a living. Carrying a 70 pound tent  in his pack is just a little stupid. All I'm saying is that there is great value in having something that is simple because it was well thought out before it was ever built.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=EBX2FI"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=EBX2FI" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=qQmi6I"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=qQmi6I" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=kQN2Di"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=kQN2Di" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/303803670" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/303803670/tents-and-computers.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/06/tents-and-computers.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-6353863300558209492</guid><pubDate>Thu, 22 May 2008 14:13:00 +0000</pubDate><atom:updated>2008-05-22T08:17:36.459-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Shareware</category><category domain="http://www.blogger.com/atom/ns#">Review</category><category domain="http://www.blogger.com/atom/ns#">Mac</category><category domain="http://www.blogger.com/atom/ns#">Software</category><category domain="http://www.blogger.com/atom/ns#">MacHeist</category><title>Delicious Library: Still pointless</title><description>So, about 1.32 years ago I got a copy of &lt;a href="http://www.delicious-monster.com/"&gt;Delicious Library&lt;/a&gt; as part of the &lt;a href="http://www.macheist.com/"&gt;MacHeist&lt;/a&gt; bundle. And I thought, "Wow now I can keep track of all my books, music, and DVD's."  And dutifully started scanning them all into the Library with my built-in iSight camera, just like a good little &lt;a href="http://www.delicious-monster.com/company.php"&gt;Shipley&lt;/a&gt;-ite.  Then when the world-renowned &lt;a href="http://video.on.nytimes.com/?fr_story=3d097831afe43b8892427d6c341c376c023587f4"&gt;David Pogue&lt;/a&gt; reviewed DL, I thought, "See? It's cool to spend hours scanning things!"  Also like David Pogue, I got a bit bored with scanning things after a while.&lt;br /&gt;&lt;br /&gt;Then came the real boredom: what to do with the product after I'd scanned everything in.  I could look at my books, but for some reason I never think "I'd like to read a book.  I don't want to  go to my bookcases, look at my actual books, and choose one to read.  So I'll go to my iMac, look at pictures of the covers of my books (except for the ones that are out of print or aren't carried by Amazon) and choose one there. Then I'll go to my bookcases and pick it up.  The same goes for music and DVD's.  I have a database for music. It's called iTunes, and it does a much better job of picking up all my album covers than DL/Amazon.&lt;br /&gt;&lt;br /&gt;"But wait!" I hear you screaming, almost rabidly, "What about checking books out to your friends! Now you know exactly who has your books, movies, or DVD's, and when they're due back!" Yes, I could do that, but tell me, what kind of looks to do you  think you'd get if you said, "sure you can borrow that book, but first I need to create an account for you in my library software, check it out to you, and assign you a due date" I tried it a couple of times.  Mostly the response I got was "Umm, never mind. I guess I don't want to read it all that much anyway."  And nothing says "you are a true friend that I love, respect and value" like a "hey, you know that book you borrowed from me? It's two days late" email.  So if DL is meant to keep all your books/music/videos/games in your library and alienate people, then the checkout feature does a great job!&lt;br /&gt;&lt;br /&gt;At the time they were promising DL 2.0 "any day now™" And now, they're promising version 2.0 "any day real soon now!™"  So we may soon get to see what features will be in version 2.0 that make it more worth my time than version 1.6.&lt;br /&gt;&lt;br /&gt;But I'm not holding my breath.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=eBxoDH"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=eBxoDH" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=qiD0nH"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=qiD0nH" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=9PBrYh"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=9PBrYh" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/295871140" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/295871140/delicious-library-still-pointless.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/05/delicious-library-still-pointless.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-5831208488447030633</guid><pubDate>Mon, 19 May 2008 23:25:00 +0000</pubDate><atom:updated>2008-05-19T17:37:54.114-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Ruby</category><category domain="http://www.blogger.com/atom/ns#">Open Source</category><category domain="http://www.blogger.com/atom/ns#">Rails</category><title>ConPhusion</title><description>So, I've been working on some Ruby on Rails apps, and as I mentioned in my &lt;a href="http://blog.coals2newcastle.com/2008/04/thoughts-on-rails.html"&gt;last post&lt;/a&gt; about Rails, everything is wonderful except for actually putting a Rails web app on the actual web.  So I was excited when I discovered &lt;a href="http://www.modrails.com/"&gt;Passenger (aka mod_rails)&lt;/a&gt; by &lt;a href="http://www.phusion.nl/about.html"&gt;Phusion&lt;/a&gt;.  It seems to be something that makes it easy to put Rails Apps on the web without worrying about the number of instances you have running, how many mongrels you have running, your Capistrano deployment, and all the other things that make deploying a Rails app feel like re-compiling your Linux kernel.  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So, I don't think I'm stupid, but I haven't been able to get an app up and running using Passenger either.  The closest I've come (trying to set it up on my MacBook) is getting a cool Passenger error message telling me my &lt;code&gt;database.yml&lt;/code&gt; file was missing.  The problem is that when I put my &lt;code&gt;database.yml&lt;/code&gt; file in place I still couldn't get it running.  I've done all the steps, set up the vhosts, edited things, and I've probably killed my vanilla Apache install for ever.  So, what I would like is for someone to set up a virtual machine with a Linux install, running Passenger, with instructions on exactly how to set up a new vhost for a new app, and why mine hasn't worked yet. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So what about the rest of you? Have you set up a Passenger app that works?  How about all the other ways to deploy rails? Is there a way that actually works and makes sense?  Comments would  be appreciated.&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=PFslWH"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=PFslWH" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=0dBfNH"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=0dBfNH" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=Ngizwh"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=Ngizwh" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/293850119" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/293850119/conphusion.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/05/conphusion.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-4838643478159834131</guid><pubDate>Wed, 14 May 2008 23:00:00 +0000</pubDate><atom:updated>2008-06-18T13:36:53.045-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">MySQL</category><category domain="http://www.blogger.com/atom/ns#">Review</category><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Database</category><title>Navicat for MySQL: Your Database Swiss Army Knife</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_wrRKanW1lxU/SFljwDyqEqI/AAAAAAAAAAg/ve8plruV0QE/s1600-h/navicat_logo_150.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp1.blogger.com/_wrRKanW1lxU/SFljwDyqEqI/AAAAAAAAAAg/ve8plruV0QE/s320/navicat_logo_150.jpg" alt="" id="BLOGGER_PHOTO_ID_5213307720960709282" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I remember the first time I successfully wrote a query in the &lt;a href="http://mysql.com/"&gt;MySQL&lt;/a&gt; command line interface.  It had only taken three tries to get signed in properly and two more to finally get a database selected and a query run that made sense to both me and MySQL.  So about 10 minutes in total.  Then I started writing both definition queries and retrieval queries, and found that it made a lot of sense to write out the query in notepad first, then copy and paste it onto the command line so that I didn't lose all my work every time I forgot a comma.  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I remember the first time I used &lt;a href="http://www.phpmyadmin.net/home_page/index.php"&gt;PHPMyAdmin&lt;/a&gt; as well.  It's a great program, allowing you to access your database from anywhere in the world and giving you a lot of power and utility in a fairly friendly interface. I discovered PMA before I ever heard about AJAX, so I wasn't disappointed by the page loads after every click.  Sure, it's a little slow, but it's worlds faster than working at the command line.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I also remember the first time I saw the &lt;a href="http://dev.mysql.com/downloads/gui-tools/5.0.html"&gt;MySQL GUI tools&lt;/a&gt;.  I had been using PMA for quite a while both on my own projects and on projects for work.  I was sent to a class about MySQL and the teacher showed us the MySQL tools, version 3 or 4, I forget which.  I was amazed.  The MySQL Query Browser was perfect: it was everything I wanted, clean, easy to understand, and easy to use.  I've been using it ever since.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The same time I discovered the GUI tools I was shown Navicat 7, but I wasn't impressed.  For one thing, I didn't want to spend any money, for another, I was too entranced by the MySQL offering to be very interested in anything else.  Recently I have been using the 30-day trial of Navicat 8 and I must say I'm impressed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;At first glance, &lt;a href="http://www.navicat.com/download.html"&gt;Navicat&lt;/a&gt; looks very similar to a cross between the MySQL Query Browser and MySQL Administrator.  It does your system monitoring, allows you to define tables and new databases, write and store queries, and all the standard stuff.  But as you get into it you find that there s a lot more beneath the surface. Navicat's visual query builder is intuitive; once you set the tables you are using in the FROM section it will auto-complete table names as you type, so you don't get them wrong.  You can also edit the query directly, but I find that it often does a better job, except for on some things like complex joins.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Another amazingly useful feature is the HTTP tunnel feature.  Navicat ships with a PHP script that allows you to connect databases behind a firewall, such as with shared hosting plans. (Like the excellent 1&amp;amp;1 that I use.)  Just put this script in a protected directory behind the firewall, and Navicat can connect to it and allows you to edit and administrate your database as if you were root working on localhost. (Navicat understands protected directories, which is a well thought out feature.) Setting up HTTP tunneled connections only takes a minute or two longer than setting up local or simple port 3306 connections.  It goes without saying that Navicat allows you to connect to multiple databases simultaneously.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The downsides are few, but real.  Navicat is a paid, closed-source program, so if that's a problem for you then sorry.  It's also not a native-english program.  The mistranslations are few, and fairly minor, but you will start to notice them after a while.  And it doesn't have the one thing that I love about the MySQL Query Browser: an immediate, easy to use query line that you can type on and get an instant response back.  But for these few failings I still find Navicat to be well worth the price they are asking. &lt;/div&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=94IYCH"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=94IYCH" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=6yElQH"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=6yElQH" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=CfAfhh"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=CfAfhh" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/290504907" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/290504907/navicat-for-mysql-your-database-swiss.html</link><author>noreply@blogger.com (Nate)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://bp1.blogger.com/_wrRKanW1lxU/SFljwDyqEqI/AAAAAAAAAAg/ve8plruV0QE/s72-c/navicat_logo_150.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/05/navicat-for-mysql-your-database-swiss.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-8538966430326227265</guid><pubDate>Tue, 13 May 2008 22:45:00 +0000</pubDate><atom:updated>2008-05-14T14:42:19.326-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Web culture</category><category domain="http://www.blogger.com/atom/ns#">Ruby</category><category domain="http://www.blogger.com/atom/ns#">php</category><title>Code is Poetry</title><description>&lt;a href="http://wordpress.org/"&gt;WordPress&lt;/a&gt;, the popular, easy to use, easy to install blogging software has the words "Code is Poetry" on the bottom of each page in their site.  and I love them for it. &lt;br /&gt;&lt;br /&gt;Before you start worrying about me saying nice things about WordPress in a Blogger blog, I would humbly ask you to chill.  I don't limit myself to one programming language, OS, or development environment, so I'm sure not going to tie myself to one blogging platform either.  You may discuss relative merits of the platforms elsewhere. &lt;br /&gt;&lt;br /&gt;Blogging systems aside, the comment "Code is Poetry" is both important and insightful.  On one hand, it's a reminder to those of us who write code that it should be as deep and packed with meaning as a poem, and that there is great value in putting a lot of meaning in just a few glyphs, as long as the meaning is decipherable later.  One of my favorite statements in PHP that I've ever written is:&lt;br /&gt;&lt;br /&gt;  &lt;code&gt;$output[$key] = $filtered[$line];&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;It's not anything impressive, but it's fun because there's only one non-variable symbol on the line, and that's the "=" operator.  Everything else adapts to the current data, but the meaning of the statement is obvious: this little gateway makes sure that only filtered data makes it out of the &lt;code&gt;foreach&lt;/code&gt; loop that this statement inhabits.  It's a PHP haiku. &lt;br /&gt;&lt;br /&gt;Code readability--and more importantly, code design-- started somewhat ironically with &lt;a href="http://www.perl.org/"&gt;Perl&lt;/a&gt;, that venerable beast of obscurity, but Perl it was that held the &lt;a href="http://www.perlguy.com/contest.html"&gt;perl poetry&lt;/a&gt; contests, and thus proved that a program could be meaningful to both a person and a computer. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ruby-lang.org/en/"&gt;Ruby&lt;/a&gt;, however, has the definite title of most poetic language at the moment. (Compare the homepages of the various languages, and just the visual style of each gives you an idea of the culture inherent in that language.) Ruby lovers are also lovers of function names like &lt;code&gt;insert_hr_tag&lt;/code&gt;, a string that's only 7 characters longer than actually typing out &lt;code&gt;&amp;lt;hr /&amp;gt;&lt;/code&gt;&lt;br /&gt;The fact that the Ruby version is longer is immaterial; it's function is clear and it keeps the language pure.  More than that, Ruby lovers often seek for ways to say things in as few symbols as possible, dropping parentheses and brackets when they can be done away with, using :symbols instead of "strings" for array keys, and doing other things that make the code more human readable.&lt;br /&gt;&lt;br /&gt;So what's the point?  Why do we need our code to be human readable?  Because someone is going to be coming along behind us and trying to understand what we were doing.  Often, that someone is us, and I can tell you from experience that it's much more enjoyable to come back to old code and be delighted by its clarity than shocked that it even runs.  Human readable code is easier to program as well, because you can see what you were thinking, often without comments, without documentation, and without trying to get exactly as tired/drunk/over-caffeinated as you were when you wrote the code.  The amazing thing is this: when you take the time to write poetic code, you will find that you are spending less time writing code, because it makes more sense and works more readily.&lt;br /&gt;&lt;br /&gt;Code is Poetry.  Take time to write it properly.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=MoNuTH"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=MoNuTH" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=gQqKAH"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=gQqKAH" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=NVUr2h"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=NVUr2h" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/289759945" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/289759945/code-is-poetry.html</link><author>noreply@blogger.com (Nate Dickson)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/05/code-is-poetry.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-4763847561241059091</guid><pubDate>Fri, 02 May 2008 11:55:00 +0000</pubDate><atom:updated>2008-05-02T06:11:39.084-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Fun</category><category domain="http://www.blogger.com/atom/ns#">Libbie</category><title>Life married to a scientist</title><description>My wife has a degree in Wildlife Biology with a minor in Chemistry.  It was very nearly the other way round, but when she graduated she had slightly more Biology credit than Chemistry, so that's how her degree worked out.  She is still, however, a very good chemist.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So when I mentioned that I remembered reading about one of those "home experiments" that kids can do with adult supervision, one that involved getting a half-cup of water and a half-cup of rubbing alcohol, then mixing them and watching in amazement as you ended up with a half-cup of total liquid, she said, "Well, they're both solvents, but why don't we see?" And she went to get the rubbing alcohol.  I got two Pyrex cup measures, a one-cup size and a two-cup size.  We measured a full cup of each: water in the two cup measure, alcohol in the one cup.  Then we poured the alcohol into the water.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Those of you who were thinking of trying this don't bother. At least not for the volume reduction aspect of it.  We ended up with two cups of liquid.  So there goes another silly science factoid, like the one about catching flies with &lt;a href="http://xkcd.com/357/"&gt;honey or vinegar&lt;/a&gt;.  However, after that failed experiment, we tried another, more interesting experiment.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Note to young people: the following experiment was done in extremely controlled circumastances and should not be repeated without adult supervision.  In my case, I did the experiment, and my wife was the supervision.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;We wondered if the alcohol would burn in such weak concentration, and with water in it.  So we dropped a match into it.  There was a brief blue flicker and the match went out.  "The alcohol gas is coming up off the top of the liquid and that's what burned." Libbie said. "Hold the match over the surface" So I did.  We were able to get a couple of good flames, but the match would always burn down to my fingertips very quickly.  As the liquid warmed up, however, we finally got a flame that continued without a match.  We turned off the lights to get a better view.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;the Pyrex cup measure we were using is transparent, so we were able to look at the base of the flame.  It seemed to hover a quarter-inch off the water and moved and swirled over the surface of the cup like the northern lights.  After a while it got pretty bright, and about then we noticed that it was also getting pretty hot.  So I blew it out.  Well, actually I tried, more and more frantically to blow it out, until I was finally able to do so.  Sot that part was kinda scary.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Anyway, not a technology post, but a geeky post, and a little bit of bragging.  I have a very cool wife.&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=JLhrhH"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=JLhrhH" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=ZtBV0H"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=ZtBV0H" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=aQLpWh"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=aQLpWh" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/282070082" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/282070082/life-married-to-scientist.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/05/life-married-to-scientist.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-7398658815806051417</guid><pubDate>Wed, 30 Apr 2008 23:00:00 +0000</pubDate><atom:updated>2008-04-30T17:00:00.494-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Shareware</category><category domain="http://www.blogger.com/atom/ns#">Mac</category><category domain="http://www.blogger.com/atom/ns#">Software</category><category domain="http://www.blogger.com/atom/ns#">MacHeist</category><title>Mac Update Promo - For Once, not a MacHeist post</title><description>So, even though I asked all of you to buy the MacHeist promo using my &lt;a href="https://www.macheist.com/buy/referral/33343"&gt;referral link&lt;/a&gt; (there's still time!), I ended up buying the &lt;a href="http://mupromo.com/"&gt;MacUpdate promo&lt;/a&gt; bundle instead.  Why would I do that?  Was I trying to point both of my faithful readers wrong?&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;No of course not.   The fact is, the only program I don't already have from previous heists is WriteRoom, and the MUPromo bundle had &lt;a href="http://www.marinersoftware.com/sitepage.php?page=127"&gt;StoryMill&lt;/a&gt;, which is like Scrivener, but in some ways cooler.  I've been lusting after scrivener for about a year now, but never quite willing to pony up the cash to buy it.  &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So, essentially, I bought the MUPromo bundle to get StoryMill. I mean, I already have a copy of both Parallels and Fusion, so that wasn't a real draw for me.   Since that time, however, I have seen how awesome all the other programs are.  &lt;a href="http://www.belightsoft.com/products/arttext/overview.php"&gt;ArtText&lt;/a&gt; could be useful, &lt;a href="http://www.ironicsoftware.com/leap/index.html"&gt;Leap&lt;/a&gt; is great, and &lt;a href="http://www.metakine.com/products/dvdremaster/"&gt;DVD Remaster Pro&lt;/a&gt; lets me watch Mystery Science Theater on my iPod, something I never would have thought of doing if I didn't have a free copy of that program.  &lt;a href="http://www.aquafadas.com/en/bannerzest/"&gt;BannerZest&lt;/a&gt; is useful in a very limited sense of the word, and the $80-to-include-links feels like a bit on an insult.  The last minute addition of &lt;a href="http://www.freeverse.com/games/game/?id=7015"&gt;Neon Tango&lt;/a&gt; would have excited me me more if I hadn't already shelled out the money for that program two months ago.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So for once, for me, MacHeist lost out this time.  I'm not saying the software they're selling is bad; on the contrary I use some of those programs quite often.  I'm just saying they kinda missed the boat by selling software that their loyal followers already have, and that we got from them.  Now, I can't argue with the numbers; MacHeist has sold over 60,000 bundles, MUPromo barely made it to 15,000.  But if MacHeist had put some new stuff up I wouldn't have found out about their competitor's bundle.&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=Pv2OtG"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=Pv2OtG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=wuBCJG"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=wuBCJG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=w1D2kg"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=w1D2kg" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/281114265" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/281114265/mac-update-promo-for-once-not-macheist.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/04/mac-update-promo-for-once-not-macheist.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-5164479223099850196</guid><pubDate>Wed, 30 Apr 2008 13:01:00 +0000</pubDate><atom:updated>2008-04-30T07:01:00.336-06:00</atom:updated><title>The Coals [2] Newcastle Store is open for business!</title><description>My new web host has a deal where I get a snazzy&lt;a href="http://194750.spreadshirt.com/us/US/Shop/"&gt; free store&lt;/a&gt; for shameless self promotion.  I'm always up for that, so I whipped up some lovely new shirts for you and yours.  My wife helped extensively on the design of the two ladies shirts, and the two mens shirts are all mine.  If you have a great idea for a Coals[2]Newcastle shirt, let me know.  I'll most likely create it right away.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=BttSiG"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=BttSiG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=fFnBMG"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=fFnBMG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=qdf83g"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=qdf83g" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/280794298" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/280794298/coals-2-newcastle-store-is-open-for.html</link><author>noreply@blogger.com (Nate)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/04/coals-2-newcastle-store-is-open-for.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-4769136585494512830</guid><pubDate>Tue, 29 Apr 2008 20:06:00 +0000</pubDate><atom:updated>2008-04-29T14:06:40.365-06:00</atom:updated><title>Zend Studio 6 - Are you kidding me?</title><description>So, I'm working on a project for my employer, and like a good PHP5 developer I set up some unit tests for my classes.&amp;nbsp; So far, so good.&amp;nbsp; Zend Studio 6 excels at PHPDoc and creating skeletal unit tests once you have your class structure laid out.&amp;nbsp; I then ran all my tests for my Helper class (the one I built that does all the text cleaning and verifying) and all is well. I get good test results back, intelligent failure traces, and my code is now better because of it.&amp;nbsp; Then i go run the tests on my database connection class, and I get the suprising error:  &lt;code&gt;Cannot find class mysqli&lt;/code&gt;  I was slightly startled that they wouldn't support the Mysqli extension, but I'm in a hurry so I revert my code to mysql_query style and re-run the tests.  then I get the even more unbeliveable &lt;code&gt;Cannot find mysql_connect()&lt;/code&gt;  This just seems too unbeliveable.  PHP and MySQL are like bread and the crust on the bread. So I do some soul searching, some Google searching, and I finally discover that, regardless of the php binary my localhost server is using, Zend Studio uses an internal binary, with an internal php.ini file.&amp;nbsp; The contents of that file, (Which I finally found at  &lt;code&gt;C:\Program Files\Zend\Zend Studio for Eclipse - 6.0.0\plugins\org.zend.debug.debugger.win32.x86_5.2.12.v20071210\resources\php5\php.ini&lt;/code&gt;)  were:&lt;br /&gt;&lt;br /&gt;   &lt;code&gt;zend_extension_ts=.\ZendDebugger.dll&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;And that's all.&amp;nbsp; So drawing on &lt;strike&gt;Google's&lt;/strike&gt; my extensive knowledge of the workings of php.ini, I add the following:&lt;br /&gt;&lt;br /&gt; &lt;blockquote&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;extension_dir="C:\Program Files\PHP\ext"&lt;br /&gt;extension=php_mysql.dll&lt;br /&gt;extension=php_mysqli.dll&lt;br /&gt;extension=sqlite3.dll&lt;/code&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Save the file, and re-run the unit tests.  The ones that test working functions work, the ones where I'd been boneheaded don't.  The Unit test is successful.&lt;br /&gt;Maybe this is a stupid question, but are a lot of people writing PHP websites that &lt;span style="font-style: italic;"&gt;don't&lt;/span&gt; use a database of some sort?&amp;nbsp; I enabled the databases I needed, postgres and the others are available as well.&amp;nbsp; It seems like Zend, of all people, would know that there would come a time when people would want to debug or test applications that use these database connections, but they provide no method of adding the extensions you need short of digging into the aforementioned path and hand-editing php.ini.&amp;nbsp; How does this make sense?&amp;nbsp; I understand not wanting a really huge number of extensions on your debug version, but perhaps a little common sense would have helped in this situation. Komodo has the good sense to ask you what php.ini file it should copy to make it's debug version, so you know that it's using the same extensions as your real development server.&lt;br /&gt;&lt;br /&gt;Anyway, my problem is fixed, and I hope that I gave enough detail that if you are having the same problem yours will be fixed after reading this.&amp;nbsp; &lt;br /&gt;&lt;br /&gt;And if anyone from Zend is reading this, I would recommend rethinking that debug php.ini file you're using.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=zVmmVG"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=zVmmVG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=kAD4MG"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=kAD4MG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=NTZmDg"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=NTZmDg" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/280301312" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/280301312/zend-studio-6-are-you-kidding-me.html</link><author>noreply@blogger.com (Nate Dickson)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">6</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/04/zend-studio-6-are-you-kidding-me.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-253369734486366983</guid><pubDate>Mon, 21 Apr 2008 16:52:00 +0000</pubDate><atom:updated>2008-04-21T10:52:02.771-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Ruby</category><category domain="http://www.blogger.com/atom/ns#">php</category><category domain="http://www.blogger.com/atom/ns#">Rails</category><title>Thoughts on Rails</title><description>So, I have just written, debugged and deployed my first Ruby on Rails application.&amp;nbsp; I gotta say, it's compelling.&amp;nbsp; Still, there are some issues.&amp;nbsp; Here's my thoughts&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;The Good&lt;/h3&gt;&lt;br /&gt;I love Ruby. I can't help it.&amp;nbsp; It's fast, easy and intelligent.&amp;nbsp; Things do what they say, your code is simple to read, simple to write, and makes logical sense.&amp;nbsp; Ruby is in many ways the child of Smalltalk, bringing all of that language's good points into the current day.&lt;br /&gt;And Rails is pure Ruby.&amp;nbsp; The Rails team took the philosophy of Ruby and gave it the attitude of a benevolent dictator.&amp;nbsp; Rails tells you, every explicitly, how to do things.&amp;nbsp; Do things its way and all is well.&amp;nbsp; do things some other way, and expect failure.&amp;nbsp; It's strict, constraining, and actually speeds things up a fair amount if you follow the rules, because you have far fewer choices to make.&amp;nbsp; It's quite a jar coming from PHP, where you can do whatever you want and it'll probably work, but once you get into the groove it makes a lot of sense.&amp;nbsp; You start to see the benefit of having everything laid out and orderly, and it's kinda nice.&lt;br /&gt;And the decisions the rails team have made are based on real-world experience.&amp;nbsp; Tasks that drive web developers insane are turned into easy-to-use functions, clearly named, and easy to implement. &lt;br /&gt;&lt;br /&gt;&lt;h3&gt;The Bad&lt;/h3&gt;&lt;br /&gt;I started my project just as Rails 2.0.2 came out. Like a good little newbie I went out and ran the &lt;code&gt;gem -install rails&lt;/code&gt; script, and got the newest version of Rails, then happily followed a tutorial, right up to the point that it became painfully obvious that tutorials for Rails 1.2.x don't work in Rails 2.0.x. Much has been said about this already, so I won't belabor the point. The problem is that the official website said nothing about the incompatibility, and had no tutorial for the new version.&amp;nbsp; &lt;a href="http://pragprog.com/titles/rails2"&gt;Agile Web Development with Rails&lt;/a&gt;, the go-to book for Rails information, is still the old version, and while it's insanely useful, it hasn't yet been updated.&amp;nbsp; (Side note:&amp;nbsp; I bought AWDWR, and when I discovered the version problem I emailed the pragmatic programmers, asking when the new version was coming out.&amp;nbsp; I got a very&amp;nbsp; nice response in less than twenty minutes from Dave Thomas himself.&amp;nbsp; How's that for awesome (and agile) customer service?)&lt;br /&gt;Eventually, with a huge amount of web searching, and a little soul searching, I found the missing links that made my newbie knowledge complete, and I was able to build my app in Rails 2.0.2.&amp;nbsp; (Thanks here to Activestate, who not only posted a "&lt;a href="http://community.activestate.com/working-rails-2-0-scaffolds-komodo"&gt;How to do our Rails tutorial in rails 2.0" article,&lt;/a&gt; but also updated their rails tools in Komodo 4.3.2. (Komodo really is awesome.&amp;nbsp; Check it out!)&lt;br /&gt;&lt;br /&gt;Still, the problem remains; good official rails documentation is lacking.&amp;nbsp; Eventually I found &lt;a href="http://www.railsbrain.com/api/rails-2.0.2/doc/index.html"&gt;RailsBrain&lt;/a&gt;, which makes life better, but it took a lot of searching to find, which suggests it isn't&amp;nbsp; a well known repository.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;The Ugly&lt;/h3&gt;&lt;br /&gt;The ugly is deployment. Hands down.&amp;nbsp; Here's a little comparison between deploying a PHP application and a Rails application:&lt;br /&gt;PHP:&lt;br /&gt;Upload the files to your web server's "htdoc" folder.&lt;br /&gt;Rails:&lt;br /&gt;No on has successfully made it past step 147 of a rails deployment.&lt;br /&gt;Okay, I'm just kidding, but there are seriously too many steps involved in deploying a rails app, and a lot of the problems that PHP handles automatically (dealing with many requests all at once, for example) are left to the programmer/developer/admin to figure out.&amp;nbsp; There is much messing around on the command line, changing of system variables and so forth before you app is live.&amp;nbsp; Once you get your app up and running, then you are faced with the processor load problem.&amp;nbsp; You see, Rails programs are always running, and if you expect heavy traffic, they are always running in duplicate or triplicate in order to handle the load.&amp;nbsp; This means that if you have a small, internal app (like the one I was writing), your server is always running that program, even if the two or three people who would ever use it are out of the office and won't be using it that day.&amp;nbsp; Contrast that with PHP's "I'll build it when you need it" model and it makes Rails look a little silly for anything that won't be getting constant hits day in and day out.&lt;br /&gt;&lt;br /&gt;Overall&lt;br /&gt;&lt;br /&gt;Overall, I like Rails, but it's not yet ready to be a true PHP/Java/ColdFusion/whatever replacement.&amp;nbsp; And I don't think it needs to be.&amp;nbsp; PHP is very good at some tasks, Java at others, and Rails (and ruby) at yet others.&amp;nbsp; Still, it's evolving&amp;nbsp; quickly and bears watching and learning.&amp;nbsp; Things you learn in rails will help clarify your thinking in other languages you use and guide you to more intelligent decisions.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=CMfh3aG"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=CMfh3aG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=AaMzhgG"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=AaMzhgG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=ddNfJjg"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=ddNfJjg" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/274823280" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/274823280/thoughts-on-rails.html</link><author>noreply@blogger.com (Nate Dickson)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/04/thoughts-on-rails.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-6401606864502208920</guid><pubDate>Mon, 14 Apr 2008 15:48:00 +0000</pubDate><atom:updated>2008-04-14T09:50:50.343-06:00</atom:updated><title>Once Again!</title><description>MacHeist is back, and they've got some good stuff again.  Most of it is re-runs from MacHeists I and II, but still useful, and the price is still great if you need even two of the apps they've included.  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And once again, I'm begging for referrals.  If you want a copy, I would consider it a personal favor if you would use  &lt;a href="https://www.macheist.com/buy/referral/33343"&gt;my referral link&lt;/a&gt; to buy it.  It gets me a few extra apps for every person that uses it, and who couldn't use extra apps?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Anyway, check it out, and consider dear sweet Coals[2]Newcastle for all your mac-app-bundle-referral-purchase needs.&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=l8W6OyG"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=l8W6OyG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=EkiwZQG"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=EkiwZQG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=E94dLqg"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=E94dLqg" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/270079907" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/270079907/once-again.html</link><author>noreply@blogger.com (Nate Dickson)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/04/once-again.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-174871315057012202.post-263204615206549644</guid><pubDate>Fri, 04 Apr 2008 21:44:00 +0000</pubDate><atom:updated>2008-04-04T16:13:47.590-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Programming</category><category domain="http://www.blogger.com/atom/ns#">Ruby</category><category domain="http://www.blogger.com/atom/ns#">Software</category><title>The Right Tool For The Job</title><description>In my garage there are two blue vehicles.  One is my &lt;a href="http://www.epinions.com/reviews/Giant_Sedona_SE_2000"&gt;Giant Sedona&lt;/a&gt; bicycle.  It's great for getting around with a minimum of fuss and getting places that would be impossible in a larger vehicle.  It's light, responsive, and maximizes my muscle work with every pedal push.  Sure, it requires me to actually push the pedals, but once I learned how to best use the gears I can minimize the effort required. &lt;br /&gt;&lt;br /&gt;The other is my &lt;a href="http://en.wikipedia.org/wiki/Toyota_Corolla"&gt;Toyota Corolla&lt;/a&gt;.  It's still pretty small, compared to most vehicles on the roads around here, and it gets great mileage, even after 8 years on the road.  It gets me where I want to go, and gets me there fast.  Also, since it's a manual, It's more responsive than most of the other vehicles on the road. Sure, it takes away the feel of the wind on my face and the exercise benefits of the bike, but it makes up for it by being able to go over 90 MPH, something I could never do on my bike.&lt;br /&gt;&lt;br /&gt;Both are great, and both can do a lot to make me quicker getting where I want to be. It would be pointless to compare them; sure they are both  vehicles, but  they are in different classes.&lt;br /&gt;&lt;br /&gt;In my "Applications" folder there are two text editors.  One is &lt;a href="http://macromates.com/"&gt;TextMate&lt;/a&gt;.  It's fast, light, and maximizes my intelligence.  If I know what I want to do I can be sure that there is an easy way to do it already built into TextMate, or available as a bundle.&lt;br /&gt;There's no "autocomplete" or "intellitext" type features that people using other IDE's would expect, but once you know just a few keystrokes you can do things faster than anyone thought possible.  It's also light and well built for it's surroundings: you can use it as a UNIX extension or a GUI program, whatever works for you.  TextMate is the high-performance bike of the programming world: it compliments and extends your natural intellect.&lt;br /&gt;&lt;br /&gt;The other is &lt;a href="http://activestate.com/Products/komodo_ide/index.mhtml"&gt;Komodo IDE&lt;/a&gt;. It's not as light as TextMate, but it's a far cry lighter than the IDE's  that get pushed on C++ or Java developers. It's responsive, and full of tools to both make you more effective and do things for you.  The newest version (4.3) includes macros to aid in Ruby on Rails 2.0 development; so that instead of going to a command line to do migrations you just click on the "migrate" button and Komodo takes care of it for you.  And there is always the amazing Regex editor.  with Komodo I can do things with Regular Expressions that I could never figure out how to do myself.   Also, since version 4.3, they have included amazing Unit Testing support for most major dynamic languages.  Komodo is the Toyota of the programming world: light, intelligently designed, and reliable.&lt;br /&gt;&lt;br /&gt;So which do I prefer?  Both.  They are both amazing, and Komodo actually beat TextMate, the poster-editor for Rails, to the "I support Rails 2.0 scaffolding" punch.  They keep putting good stuff into their editor and still manage to keep its load time down.  On the other hand, TextMate is a good, fast, intelligent program to let you do things to text in ways that leave people breathless, but doesn't take anything out of the programmer's hands.  I know that the Pragmatic Programmers would say pick one and stick with it, but I say use the right tool for the job.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=gvUoPwG"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=gvUoPwG" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=mKfxb0G"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=mKfxb0G" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/Coals2Newcastle?a=SVrF9Vg"&gt;&lt;img src="http://feeds.feedburner.com/~f/Coals2Newcastle?i=SVrF9Vg" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Coals2Newcastle/~4/264241759" height="1" width="1"/&gt;</description><link>http://feeds.feedburner.com/~r/Coals2Newcastle/~3/264241759/right-tool-for-job.html</link><author>noreply@blogger.com (Nate Dickson)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.coals2newcastle.com/2008/04/right-tool-for-job.html</feedburner:origLink></item></channel></rss>
