<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Grailbox</title>
		<link>https://grailbox.com/</link>
		<description>Recent content on Grailbox</description>
		<generator>Hugo</generator>
		<language>en-us</language>
		
		
		
		
			<lastBuildDate>Tue, 01 Sep 2026 11:32:54 -0400</lastBuildDate>
		
			<atom:link href="https://grailbox.com/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>I Got Hacked and That Made Me Move</title>
				<link>https://grailbox.com/posts/i-got-hacked/</link>
				<pubDate>Tue, 01 Sep 2026 11:32:54 -0400</pubDate>
				<guid>https://grailbox.com/posts/i-got-hacked/</guid>
				<description>&lt;p&gt;Friday night, I was headed for bed. I brought up my RSS feeds in &lt;a href=&#34;https://newsblur.com/&#34;&gt;NewsBlur&lt;/a&gt; and noticed six new posts on this blog. About gambling. All six copypastas of an advertisement of some gambling site. These articles jolted me from near-sleep to wide awake, and I bolted to my home office. And I thought, &amp;ldquo;How am I even important enough to hack?&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;After logging in to my hosting service, I changed my account password. Then I deleted the posts from &lt;a href=&#34;https://wordpress.org&#34;&gt;WordPress&lt;/a&gt;. Note: I run my own copy of WordPress on my hosting service. And then started forensics. I found a new WordPress admin. Delete. I found a bunch of new FTP accounts. Delete. I was already at the latest WordPress version, but on an older PHP version. Upgrade. Crisis averted, maybe? I started poking around the file system, and found some suspicious files in &lt;code&gt;wp-content&lt;/code&gt;:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Using Raycast to Move My Mac</title>
				<link>https://grailbox.com/posts/using-raycast-to-move-my-mac/</link>
				<pubDate>Sat, 07 Dec 2024 09:57:48 +0000</pubDate>
				<guid>https://grailbox.com/posts/using-raycast-to-move-my-mac/</guid>
				<description>&lt;p&gt;An AOC Ultrawide (49&amp;quot;) dominates my desk. Stretching 47&amp;quot; from wingtip to wingtip, it serves as:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;The only display for the Linux tower that hides between my desk and the wall.&lt;/li&gt;&#xA;&lt;li&gt;A supplemental (primary) display for my MacBooks.&lt;/li&gt;&#xA;&lt;li&gt;The KVM switch to swap&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;I have two MacBooks:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;A 13&amp;quot; MacBook Pro for work&lt;/li&gt;&#xA;&lt;li&gt;A 13&amp;quot; MacBook Air for personal use&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;During the work day, I typically have my work MacBook to the left of my monitor, plugged in to the USB-C cable. My MacBook Air sits against the wall, closed and dormant. The desk space in front of me is open and available, so I can use paper and pen to take notes, manage my to-do list, etc. That setup looks like this:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Compiling the Birthday Problem into Rust</title>
				<link>https://grailbox.com/posts/compiling-the-birthday-problem-into-rust/</link>
				<pubDate>Sat, 30 Nov 2024 15:56:48 +0000</pubDate>
				<guid>https://grailbox.com/posts/compiling-the-birthday-problem-into-rust/</guid>
				<description>&lt;p&gt;The &lt;a href=&#34;https://en.wikipedia.org/wiki/Birthday_problem&#34;&gt;Birthday Problem&lt;/a&gt; demonstrates that, in a group of 23 people, the odds of two people sharing a birthday exceed 50%. You can read the linked article for an explanation, but the probability is about 50.73% that, for a 365-day year and a group of 23 people, two people will share a birthday.&lt;/p&gt;&#xA;&lt;p&gt;You can extrapolate this problem to different ranges other than 365, of course. Given range N and  population X, in which each X occupies a single slot of N, at what value of X does the probability of two members sharing a slot rise above 50%? &lt;/p&gt;</description>
			</item>
			<item>
				<title>Editing Markdown in Zed</title>
				<link>https://grailbox.com/posts/editing-markdown-in-zed/</link>
				<pubDate>Sun, 01 Sep 2024 19:48:35 +0000</pubDate>
				<guid>https://grailbox.com/posts/editing-markdown-in-zed/</guid>
				<description>&lt;p&gt;I&amp;rsquo;ve been cheating on Neovim lately. I&amp;rsquo;m playing around with &lt;a href=&#34;https://zed.dev&#34;&gt;Zed&lt;/a&gt; (in vim mode, naturally). Zed&amp;rsquo;s default settings allow Markdown editing just fine, of course. Markdown is just text, after all. I don&amp;rsquo;t want long lines to scroll off the right side of the screen, though. Horizontal scrolling is the worst. I want lines to wrap when they get to the right margin. To enable soft wrapping (and to enable vim mode), open Zed&amp;rsquo;s settings file (&lt;code&gt;$XDG_CONFIG_HOME/zed/settings.json&lt;/code&gt;) and add these lines:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Flipping a Rusty Coin</title>
				<link>https://grailbox.com/posts/flipping-a-rusty-coin/</link>
				<pubDate>Sat, 30 Mar 2024 14:45:25 +0000</pubDate>
				<guid>https://grailbox.com/posts/flipping-a-rusty-coin/</guid>
				<description>&lt;p&gt;Recently, my boss asked me for a server capacity planning model. This was a new ask for me. I can launch Excel with the best of ‘em: fire up &lt;a href=&#34;https://www.alfredapp.com/&#34;&gt;Alfred&lt;/a&gt; and type “ex&amp;lt;enter&amp;gt;”. I can format columns and enter data and create graphs that show trend lines. I know about p90s and standard deviations and Excel formulas. What I don’t know how to do is create a capacity planning model. So I did what anyone else would do: I asked someone else in the organization to create the model. And I bought a book to learn statistics in Excel, so I&amp;rsquo;d be prepared for the next time.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Autostart Zellij in Nushell</title>
				<link>https://grailbox.com/posts/autostart-zellij-in-nushell/</link>
				<pubDate>Thu, 13 Jul 2023 09:26:28 +0000</pubDate>
				<guid>https://grailbox.com/posts/autostart-zellij-in-nushell/</guid>
				<description>&lt;p&gt;Cool kids multiplex with &lt;a href=&#34;https://zellij.dev/&#34;&gt;Zellij&lt;/a&gt;. Data engineers shred data with &lt;a href=&#34;https://www.nushell.sh/&#34;&gt;Nushell&lt;/a&gt;. Let&amp;rsquo;s make them work better together. Let&amp;rsquo;s autostart Zellij when our terminal and shell start.&lt;/p&gt;&#xA;&lt;p&gt;The &lt;a href=&#34;https://zellij.dev/documentation/integration.html#autostart-on-shell-creation&#34;&gt;Zellij documentation&lt;/a&gt; provides instructions for making Zellij autostart in bash, zsh, and fish. In short, Zellij provides commands that inject some shell script into your shell&amp;rsquo;s startup script. It doesn&amp;rsquo;t offer this support for Nushell.&lt;/p&gt;&#xA;&lt;p&gt;I started down a path of creating a pull request to add this support to Zellij. I discovered that Zellij determines your shell based on the &lt;code&gt;Shell&lt;/code&gt; enum in &lt;a href=&#34;https://docs.rs/clap/latest/clap/&#34;&gt;clap&lt;/a&gt;:&lt;/p&gt;</description>
			</item>
			<item>
				<title>asdf and Nushell: Functions to Install and Switch Versions</title>
				<link>https://grailbox.com/posts/asdf-and-nushell-functions-to-install-and-switch-versions/</link>
				<pubDate>Sun, 30 Apr 2023 12:50:12 +0000</pubDate>
				<guid>https://grailbox.com/posts/asdf-and-nushell-functions-to-install-and-switch-versions/</guid>
				<description>&lt;p&gt;I use &lt;a href=&#34;https://asdf-vm.com/&#34;&gt;asdf&lt;/a&gt; to manage tool versions, &lt;a href=&#34;https://github.com/junegunn/fzf&#34;&gt;fzf&lt;/a&gt; to save typing, and shell functions to bolster my memory. My recent switch to &lt;a href=&#34;https://www.nushell.sh/&#34;&gt;Nushell&lt;/a&gt; reminded me that I haven&amp;rsquo;t memorized the asdf command to install or switch tool versions. I could have created flash cards and learned the commands, but instead I wrote Nushell functions.&lt;/p&gt;&#xA;&lt;p&gt;Here&amp;rsquo;s the Nushell function to install a new version of a tool for which the plugin is already installed. You can specify the plugin on the command line or select it via fzf:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Date Parsing and Arithmetic on macOS</title>
				<link>https://grailbox.com/posts/date-parsing-and-arithmetic-on-macos/</link>
				<pubDate>Thu, 13 Apr 2023 10:54:49 +0000</pubDate>
				<guid>https://grailbox.com/posts/date-parsing-and-arithmetic-on-macos/</guid>
				<description>&lt;p&gt;I recently wrote a shell script that required both date parsing and date arithmetic. The pertinent bits for this post are that the script:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Accepted a date as a parameter&lt;/li&gt;&#xA;&lt;li&gt;Accepted a number of days as a parameter&lt;/li&gt;&#xA;&lt;li&gt;Iterated through the dates to generate specific strings in &amp;ldquo;year-month-day&amp;rdquo; format, e.g., &amp;ldquo;20230225&amp;rdquo; for February 25, 2023&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Seemed simple enough. A little googling and some experimentation gave me this snippet that worked on Linux:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Nushell &#43; fzf -- functions for git switch and git branch -d</title>
				<link>https://grailbox.com/posts/nushell-fzf-functions-for-git-switch-and-git-branch-d/</link>
				<pubDate>Wed, 05 Apr 2023 15:45:25 +0000</pubDate>
				<guid>https://grailbox.com/posts/nushell-fzf-functions-for-git-switch-and-git-branch-d/</guid>
				<description>&lt;p&gt;I&amp;rsquo;ve recently re-discovered &lt;a href=&#34;https://www.nushell.sh/&#34;&gt;nushell&lt;/a&gt; and I&amp;rsquo;ve fallen hard. I&amp;rsquo;m committed. I&amp;rsquo;m stumbling my way through things, of course, but I&amp;rsquo;ve set my course and am not turning back.&lt;/p&gt;&#xA;&lt;p&gt;Perhaps one day I&amp;rsquo;ll blog my reasons, but this post is about two of my most-used zsh functions:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;gbs&lt;/code&gt; : a function to &lt;code&gt;git switch&lt;/code&gt; using &lt;code&gt;fzf&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;gbd&lt;/code&gt; : a function to &lt;code&gt;git branch -d&lt;/code&gt; using &lt;code&gt;fzf&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve ported them to nushell. Here&amp;rsquo;s the source, without comment or explanation:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Post 3</title>
				<link>https://grailbox.com/posts/post-3/</link>
				<pubDate>Wed, 15 Mar 2023 11:00:00 -0700</pubDate>
				<guid>https://grailbox.com/posts/post-3/</guid>
				<description>&lt;p&gt;Occaecat aliqua consequat laborum ut ex aute aliqua culpa quis irure esse magna dolore quis. Proident fugiat labore eu laboris officia Lorem enim. Ipsum occaecat cillum ut tempor id sint aliqua incididunt nisi incididunt reprehenderit. Voluptate ad minim sint est aute aliquip esse occaecat tempor officia qui sunt. Aute ex ipsum id ut in est velit est laborum incididunt. Aliqua qui id do esse sunt eiusmod id deserunt eu nostrud aute sit ipsum. Deserunt esse cillum Lorem non magna adipisicing mollit amet consequat.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Post 2</title>
				<link>https://grailbox.com/posts/post-2/</link>
				<pubDate>Wed, 15 Feb 2023 10:00:00 -0700</pubDate>
				<guid>https://grailbox.com/posts/post-2/</guid>
				<description>&lt;p&gt;Anim eiusmod irure incididunt sint cupidatat. Incididunt irure irure irure nisi ipsum do ut quis fugiat consectetur proident cupidatat incididunt cillum. Dolore voluptate occaecat qui mollit laborum ullamco et. Ipsum laboris officia anim laboris culpa eiusmod ex magna ex cupidatat anim ipsum aute. Mollit aliquip occaecat qui sunt velit ut cupidatat reprehenderit enim sunt laborum. Velit veniam in officia nulla adipisicing ut duis officia.&lt;/p&gt;&#xA;&lt;p&gt;Exercitation voluptate irure in irure tempor mollit Lorem nostrud ad officia. Velit id fugiat occaecat do tempor. Sit officia Lorem aliquip eu deserunt consectetur. Aute proident deserunt in nulla aliquip dolore ipsum Lorem ut cupidatat consectetur sit sint laborum. Esse cupidatat sit sint sunt tempor exercitation deserunt. Labore dolor duis laborum est do nisi ut veniam dolor et nostrud nostrud.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Fridge Door Part 3: Building a React Application</title>
				<link>https://grailbox.com/posts/fridge-door-part-3-building-a-react-application/</link>
				<pubDate>Sat, 04 Feb 2023 21:00:35 +0000</pubDate>
				<guid>https://grailbox.com/posts/fridge-door-part-3-building-a-react-application/</guid>
				<description>&lt;p&gt;This article is part 3 in a multipart series that makes a message board using a &lt;a href=&#34;https://www.raspberrypi.com/&#34;&gt;Raspberry Pi&lt;/a&gt; and a &lt;a href=&#34;https://tidbyt.com/&#34;&gt;Tidbyt&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Here are the parts in the series:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Describe what we&amp;rsquo;re building (&lt;a href=&#34;https://www.grailbox.com/2023/01/fridge-door-a-message-board-with-a-raspberry-pi-and-tidbyt/&#34;&gt;Part 1&lt;/a&gt;)&lt;/li&gt;&#xA;&lt;li&gt;Create a ReST service using &lt;a href=&#34;https://rocket.rs/&#34;&gt;Rocket&lt;/a&gt; (&lt;a href=&#34;https://www.grailbox.com/2023/01/fridge-door-part-2-building-a-service-in-rocket-and-rust/&#34;&gt;Part 2&lt;/a&gt;).&lt;/li&gt;&#xA;&lt;li&gt;Create a &lt;a href=&#34;https://reactjs.org/&#34;&gt;React&lt;/a&gt; application to both display and manage messages (this article).&lt;/li&gt;&#xA;&lt;li&gt;Integrate the ReST service and React application.&lt;/li&gt;&#xA;&lt;li&gt;Deploy the ReST service and React application to a Raspberry Pi.&lt;/li&gt;&#xA;&lt;li&gt;Create a Tidbyt application to display messages.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h2&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://nodejs.org/en/&#34;&gt;Nodejs&lt;/a&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Fridge Door Part 2: Building a Service in Rocket and Rust</title>
				<link>https://grailbox.com/posts/fridge-door-part-2-building-a-service-in-rocket-and-rust/</link>
				<pubDate>Fri, 27 Jan 2023 18:04:24 +0000</pubDate>
				<guid>https://grailbox.com/posts/fridge-door-part-2-building-a-service-in-rocket-and-rust/</guid>
				<description>&lt;p&gt;This article is part 2 in a multipart series that makes a message board using a &lt;a href=&#34;https://www.raspberrypi.com/&#34;&gt;Raspberry Pi&lt;/a&gt; and a &lt;a href=&#34;https://tidbyt.com/&#34;&gt;Tidbyt&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Here are the parts in the series:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Describe what we&amp;rsquo;re building (&lt;a href=&#34;https://www.grailbox.com/2023/01/fridge-door-a-message-board-with-a-raspberry-pi-and-tidbyt/&#34;&gt;Part 1&lt;/a&gt;)&lt;/li&gt;&#xA;&lt;li&gt;Create a ReST service using &lt;a href=&#34;https://rocket.rs/&#34;&gt;Rocket&lt;/a&gt; (this article).&lt;/li&gt;&#xA;&lt;li&gt;Create a &lt;a href=&#34;https://reactjs.org/&#34;&gt;React&lt;/a&gt; application to both display and manage messages (&lt;a href=&#34;https://www.grailbox.com/2023/02/fridge-door-part-3-building-a-react-application/&#34;&gt;Part 3&lt;/a&gt;).&lt;/li&gt;&#xA;&lt;li&gt;Integrate the ReST service and React application.&lt;/li&gt;&#xA;&lt;li&gt;Deploy the ReST service and React application to a Raspberry Pi.&lt;/li&gt;&#xA;&lt;li&gt;Create a Tidbyt application to display messages.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://www.rust-lang.org/tools/install&#34;&gt;Rust&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://www.sqlite.org/index.html&#34;&gt;SQLite&lt;/a&gt; and development libraries&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://lib.rs/install/sqlx-cli&#34;&gt;sqlx-cli&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;create-the-service&#34;&gt;Create the Service&lt;/h2&gt;&#xA;&lt;p&gt;Rocket has a &amp;ldquo;hello world&amp;rdquo; tutorial at &lt;a href=&#34;https://rocket.rs/v0.5-rc/guide/getting-started/#hello-world&#34;&gt;https://rocket.rs/v0.5-rc/guide/getting-started/#hello-world&lt;/a&gt;. Feel free to read through that documentation, or refer to it as you work through this tutorial.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Fridge Door: a Message Board with a Raspberry Pi and Tidbyt</title>
				<link>https://grailbox.com/posts/fridge-door-a-message-board-with-a-raspberry-pi-and-tidbyt/</link>
				<pubDate>Fri, 27 Jan 2023 17:49:54 +0000</pubDate>
				<guid>https://grailbox.com/posts/fridge-door-a-message-board-with-a-raspberry-pi-and-tidbyt/</guid>
				<description>&lt;p&gt;This article launches a multipart series that makes a message board using a &lt;a href=&#34;https://www.raspberrypi.com/&#34;&gt;Raspberry Pi&lt;/a&gt; and a &lt;a href=&#34;https://tidbyt.com/&#34;&gt;Tidbyt&lt;/a&gt;. Note that you can skip the Tidbyt and use a monitor to display messages.&lt;/p&gt;&#xA;&lt;p&gt;Here are the parts in the series:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Describe what we&amp;rsquo;re building (this article).&lt;/li&gt;&#xA;&lt;li&gt;Create a ReST service using &lt;a href=&#34;https://rocket.rs/&#34;&gt;Rocket&lt;/a&gt; (&lt;a href=&#34;https://www.grailbox.com/2023/01/fridge-door-part-2-building-a-service-in-rocket-and-rust/&#34;&gt;Part 2&lt;/a&gt;)&lt;/li&gt;&#xA;&lt;li&gt;Create a &lt;a href=&#34;https://reactjs.org/&#34;&gt;React&lt;/a&gt; application to both display and manage messages (&lt;a href=&#34;https://www.grailbox.com/2023/02/fridge-door-part-3-building-a-react-application/&#34;&gt;Part 3&lt;/a&gt;).&lt;/li&gt;&#xA;&lt;li&gt;Integrate the ReST service and React application.&lt;/li&gt;&#xA;&lt;li&gt;Deploy the ReST service and React application to a Raspberry Pi.&lt;/li&gt;&#xA;&lt;li&gt;Create a Tidbyt application to display messages.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Let&amp;rsquo;s get started!&lt;/p&gt;</description>
			</item>
			<item>
				<title>Post 1</title>
				<link>https://grailbox.com/posts/post-1/</link>
				<pubDate>Sun, 15 Jan 2023 09:00:00 -0700</pubDate>
				<guid>https://grailbox.com/posts/post-1/</guid>
				<description>&lt;p&gt;Tempor proident minim aliquip reprehenderit dolor et ad anim Lorem duis sint eiusmod. Labore ut ea duis dolor. Incididunt consectetur proident qui occaecat incididunt do nisi Lorem. Tempor do laborum elit laboris excepteur eiusmod do. Eiusmod nisi excepteur ut amet pariatur adipisicing Lorem.&lt;/p&gt;&#xA;&lt;p&gt;Occaecat nulla excepteur dolore excepteur duis eiusmod ullamco officia anim in voluptate ea occaecat officia. Cillum sint esse velit ea officia minim fugiat. Elit ea esse id aliquip pariatur cupidatat id duis minim incididunt ea ea. Anim ut duis sunt nisi. Culpa cillum sit voluptate voluptate eiusmod dolor. Enim nisi Lorem ipsum irure est excepteur voluptate eu in enim nisi. Nostrud ipsum Lorem anim sint labore consequat do.&lt;/p&gt;</description>
			</item>
			<item>
				<title>About</title>
				<link>https://grailbox.com/about/</link>
				<pubDate>Sun, 01 Jan 2023 08:00:00 -0700</pubDate>
				<guid>https://grailbox.com/about/</guid>
				<description>&lt;p&gt;I&amp;rsquo;m Rob Warner — husband, father of five, LGBTQ+ ally and advocate. I live in the United States, in Saint Augustine, Florida.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve spent my career in software development. 35+ years of bouncing around technologies, languages, code editors, deployments, and troubleshooting. My blogging waxes and wanes, but I post about mostly technical things on this blog.&lt;/p&gt;&#xA;&lt;p&gt;Here&amp;rsquo;s a picture of my family on vacation in Barcelona in July 2026. What a beautiful city!&lt;/p&gt;</description>
			</item>
			<item>
				<title>Analog Defaults</title>
				<link>https://grailbox.com/analog-defaults/</link>
				<pubDate>Sun, 01 Jan 2023 08:00:00 -0700</pubDate>
				<guid>https://grailbox.com/analog-defaults/</guid>
				<description>&lt;p&gt;A running list of the non-digital tools and habits I default to, inspired by &lt;a href=&#34;https://www.penaddict.com/analog-defaults&#34;&gt;The Pen Addict&amp;rsquo;s Analog Defaults&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; None of these links are affiliate links.&lt;/p&gt;&#xA;&lt;h2 id=&#34;writing-instruments&#34;&gt;Writing Instruments&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;Gel Ink Pen:&lt;/strong&gt; &lt;a href=&#34;https://spokedesign.com/products/roady-xl-titanium-knurled-grip-black-aluminum-cap-1&#34;&gt;Spoke Roady XL&lt;/a&gt; with a Pentel EnerGel Black 0.7mm refill (LR7TL) refill.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img src=&#34;IMG_7583.jpeg&#34; alt=&#34;Spoke Roady XL&#34;&gt;&#xA;&lt;em&gt;Spoke Roady XL&lt;/em&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;Ballpoint Pen:&lt;/strong&gt; I avoid assiduously, but I have a &lt;a href=&#34;https://www.tombowusa.com/products/airpress-ballpoint-pen-1?variant=43383519477808&#34;&gt;Tombow AirPress&lt;/a&gt; if I ever have to inscribe a dripping Avery label while hanging upside down.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Rollerball Pen:&lt;/strong&gt; &lt;a href=&#34;https://retro51.com/products/tornado-woodworks-bourbon-barrel-rollerball&#34;&gt;Retro51 Tornado Woodworks - Bourbon Barrel Rollerball&lt;/a&gt;.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img src=&#34;IMG_7589.jpeg&#34; alt=&#34;Retro51 Tornado Woodworks - Bourbon Barrel Rollerball&#34;&gt;&#xA;&lt;em&gt;Retro51 Tornado Woodworks - Bourbon Barrel Rollerball&lt;/em&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Uses</title>
				<link>https://grailbox.com/uses/</link>
				<pubDate>Sun, 01 Jan 2023 08:00:00 -0700</pubDate>
				<guid>https://grailbox.com/uses/</guid>
				<description>&lt;p&gt;This page outlines different technologies that I use in both my professional and personal computing.&lt;/p&gt;&#xA;&lt;h2 id=&#34;update-september-1-2026&#34;&gt;Update September 1, 2026&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://claude.com/product/claude-code&#34;&gt;Claude&lt;/a&gt; for personal, &lt;a href=&#34;https://kiro.dev/cli/&#34;&gt;Kiro CLI&lt;/a&gt; for work.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://ghostty.org/&#34;&gt;Ghostty&lt;/a&gt; for personal, &lt;a href=&#34;https://iterm2.com/&#34;&gt;iTerm2&lt;/a&gt; for work.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://zellij.dev/&#34;&gt;Zellij&lt;/a&gt; everywhere.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://www.zsh.org/&#34;&gt;zsh&lt;/a&gt; and &lt;a href=&#34;https://ohmyz.sh/&#34;&gt;Oh My Zsh&lt;/a&gt; everywhere.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://neovim.io/&#34;&gt;Neovim&lt;/a&gt; and &lt;a href=&#34;https://www.lazyvim.org/&#34;&gt;LazyVim&lt;/a&gt; everywhere.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://obsidian.md/&#34;&gt;Obsidian&lt;/a&gt; everywhere, though my personal notes and work notes never meet.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://www.jetbrains.com/rust/&#34;&gt;RustRover&lt;/a&gt; for personal &lt;a href=&#34;https://rust-lang.org/&#34;&gt;Rust&lt;/a&gt; projects, &lt;a href=&#34;https://www.jetbrains.com/go/&#34;&gt;GoLand&lt;/a&gt; for personal &lt;a href=&#34;https://go.dev/&#34;&gt;Go&lt;/a&gt; projects, and &lt;a href=&#34;https://www.jetbrains.com/webstorm/&#34;&gt;WebStorm&lt;/a&gt; for personal &lt;a href=&#34;https://expo.dev/&#34;&gt;Expo&lt;/a&gt; / &lt;a href=&#34;https://reactnative.dev/&#34;&gt;React Native&lt;/a&gt; projects.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://www.jetbrains.com/idea/&#34;&gt;IntelliJ IDEA&lt;/a&gt; for work Java and Scala projects.&lt;/li&gt;&#xA;&lt;li&gt;I switched my Linux box to &lt;a href=&#34;https://linuxmint.com/&#34;&gt;Linux Mint&lt;/a&gt; but spend most of my personal time on my MacBook Air M3.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;update-march-27-2024&#34;&gt;Update March 27, 2024&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;My home monitor is now a 49” AOC Ultrawide (5120x1440) with a built-in KVM switch. &lt;/li&gt;&#xA;&lt;li&gt;I just bought a MacBook Air M3 (24GB Unified RAM, 1TB SSD) in Midnight.&lt;/li&gt;&#xA;&lt;li&gt;Still using the Linux box — most of the software I use runs on both, but I definitely have some new software to try out on the Mac (work Mac is a controlled environment).&lt;/li&gt;&#xA;&lt;li&gt;I’ve been using &lt;a href=&#34;https://www.jetbrains.com/rust/&#34;&gt;RustRover&lt;/a&gt; for Rust development.&lt;/li&gt;&#xA;&lt;li&gt;I still use GitHub Copilot on my personal machines, but &lt;a href=&#34;https://aws.amazon.com/codewhisperer/&#34;&gt;Amazon CodeWhisperer&lt;/a&gt; on my work machine, and find they’re comparable, at least for my use cases.&lt;/li&gt;&#xA;&lt;li&gt;Having a personal Mac again reunites me with &lt;a href=&#34;https://redsweater.com/marsedit/&#34;&gt;MarsEdit&lt;/a&gt;, in which I’m editing this page. &lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;update-july-6-2023&#34;&gt;Update July 6, 2023&lt;/h2&gt;&#xA;&lt;p&gt;Some tweaks in the past couple of years:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Set Upstream Branch for Git</title>
				<link>https://grailbox.com/posts/set-upstream-branch-for-git/</link>
				<pubDate>Mon, 08 Aug 2022 08:08:48 +0000</pubDate>
				<guid>https://grailbox.com/posts/set-upstream-branch-for-git/</guid>
				<description>&lt;p&gt;&lt;em&gt;Update 8/17/2022: I just learned about the new git setting:&lt;/em&gt; &lt;code&gt;push.autoSetupRemote&lt;/code&gt; &lt;em&gt;&amp;ndash; I learned it from &lt;a href=&#34;https://dev.to/this-is-learning/this-new-git-push-config-will-save-you-lot-of-frustration-27a9&#34; target=&#34;_blank&#34; rel=&#34;noreferrer noopener&#34;&gt;here&lt;/a&gt;, and so can you!&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;You&amp;rsquo;ve seen it many times:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;There is no tracking information for the current branch.&#xA;Please specify which branch you want to rebase against.&#xA;See git-pull(1) for details.&#xA;&#xA;    git pull &amp;lt;remote&amp;gt; &amp;lt;branch&amp;gt;&#xA;&#xA;If you wish to set tracking information for this branch you can do so with:&#xA;&#xA;    git branch --set-upstream-to=origin/&amp;lt;branch&amp;gt; master&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;So what do you do? You go to the mouse, swipe over the command to select it, copy it (if your terminal doesn&amp;rsquo;t do that automatically), paste it as a new command, fiddle with it a bit for accuracy, and press &lt;code&gt;Enter&lt;/code&gt;. Voila. Tracking information easily set.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Supercharging asdf with FZF</title>
				<link>https://grailbox.com/posts/supercharging-asdf-with-fzf/</link>
				<pubDate>Fri, 10 Jun 2022 11:53:18 +0000</pubDate>
				<guid>https://grailbox.com/posts/supercharging-asdf-with-fzf/</guid>
				<description>&lt;p&gt;&lt;em&gt;Update (August 12, 2022): Just noticed &lt;a href=&#34;https://github.com/asdf-vm/asdf/commit/5ea67953be74cb5fde11240dc40a541c69afc65c&#34;&gt;this commit&lt;/a&gt;&lt;/em&gt; &lt;em&gt;that changes the output format for the current version in &lt;code&gt;asdf list&lt;/code&gt; &amp;ndash; updated accordingly.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;Update (August 11, 2022): I&amp;rsquo;ve added more intelligent version sorting and support for asdf&amp;rsquo;s &amp;ldquo;latest&amp;rdquo; alias in both commands.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve switched to &lt;a href=&#34;https://asdf-vm.com/&#34;&gt;asdf&lt;/a&gt; for managing all my language versions. It seems to work well, but we can make it work better by adding &lt;a href=&#34;https://github.com/junegunn/fzf&#34;&gt;fzf&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;installing-new-versions&#34;&gt;Installing New Versions&lt;/h2&gt;&#xA;&lt;p&gt;The syntax for installing a new tool version in asdf is:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Displaying Your Kitty Theme Colors</title>
				<link>https://grailbox.com/posts/displaying-your-kitty-theme-colors/</link>
				<pubDate>Tue, 14 Dec 2021 18:21:17 +0000</pubDate>
				<guid>https://grailbox.com/posts/displaying-your-kitty-theme-colors/</guid>
				<description>&lt;p&gt;Update (12/15/21): So I hadn&amp;rsquo;t updated kitty in awhile, and now themes are built in. Everything is &lt;em&gt;mostly&lt;/em&gt; the same, except that the file containing your colors has a different name. And you don&amp;rsquo;t have to install kitty-themes. I&amp;rsquo;ve updated accordingly.&lt;/p&gt;&#xA;&lt;p&gt;Nothing groundbreaking here, but documenting for anyone it might help. Including myself.&lt;/p&gt;&#xA;&lt;p&gt;I use &lt;a href=&#34;https://sw.kovidgoyal.net/kitty/&#34;&gt;kitty&lt;/a&gt; as my terminal. I recently decided to swap dark for light in my computing, so I &lt;del&gt;chased down &lt;a href=&#34;https://github.com/dexpota/kitty-themes&#34;&gt;kitty-themes&lt;/a&gt;,&lt;/del&gt; installed Solarized Light . . . and discovered that some colors provided insufficient contrast for my old eyes. Easy enough to tweak the configuration file, once I knew what each color looked like. Here&amp;rsquo;s how to see all the colors in your kitty theme file:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Insert UUIDs in Vim / Neovim</title>
				<link>https://grailbox.com/posts/insert-uuids-in-vim-neovim/</link>
				<pubDate>Wed, 21 Jul 2021 16:17:58 +0000</pubDate>
				<guid>https://grailbox.com/posts/insert-uuids-in-vim-neovim/</guid>
				<description>&lt;p&gt;In my forays with &lt;a href=&#34;https://github.com/awslabs/deequ&#34;&gt;Deequ&lt;/a&gt;, I found myself frequently inserting UUIDs into test JSON files. Although &lt;a href=&#34;https://www.uuidgenerator.net/&#34;&gt;Online UUID Generator&lt;/a&gt; worked for this purpose, copy-pasta between browser and editor started to feel clunky. Time to create a key mapping in Vim.&lt;/p&gt;&#xA;&lt;p&gt;I targeted Ctrl+U to insert a UUID, whether in normal or insert mode. My first attempt:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;inoremap &amp;lt;c-u&amp;gt; &amp;lt;esc&amp;gt;:read!uuidgen&amp;lt;cr&amp;gt;i&#xA;nnoremap &amp;lt;c-u&amp;gt; :read!uuidgen&amp;lt;cr&amp;gt;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Worked moderately well, but of course it behaved as &lt;code&gt;read!&lt;/code&gt; does: it inserted the UUID on its own line, &lt;em&gt;after&lt;/em&gt; the current line. Since my drive comes primarily from not embarrassing myself in front of &lt;a href=&#34;https://code.visualstudio.com/&#34;&gt;Visual Studio Code&lt;/a&gt; users, I knew I hadn&amp;rsquo;t yet found my solution. &amp;ldquo;Aha!&amp;rdquo; I thought. &amp;ldquo;Capital J!&amp;rdquo;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Switch Among Java Versions: FZF and SDKMAN!</title>
				<link>https://grailbox.com/posts/switch-among-java-versions-fzf-and-sdkman/</link>
				<pubDate>Sat, 03 Apr 2021 11:15:18 +0000</pubDate>
				<guid>https://grailbox.com/posts/switch-among-java-versions-fzf-and-sdkman/</guid>
				<description>&lt;p&gt;The bang in the subject belongs to &lt;a href=&#34;https://sdkman.io/&#34;&gt;SDKMAN!&lt;/a&gt;, not me. It&amp;rsquo;s a tool for managing versions of various Java-world tools. Think &lt;a href=&#34;https://github.com/nvm-sh/nvm&#34;&gt;nvm&lt;/a&gt; for &lt;a href=&#34;https://www.java.com/&#34;&gt;Java&lt;/a&gt;, &lt;a href=&#34;https://maven.apache.org/&#34;&gt;Maven&lt;/a&gt;, &lt;a href=&#34;https://groovy-lang.org/&#34;&gt;Groovy&lt;/a&gt;, et al.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve been back in Java world lately for work, using &lt;a href=&#34;https://nifi.apache.org/&#34;&gt;Apache NiFi&lt;/a&gt; to create &lt;a href=&#34;https://rdf4j.org/&#34;&gt;RDF Triples&lt;/a&gt; and push to &lt;a href=&#34;https://www.ontotext.com/products/graphdb/&#34;&gt;Ontotext GraphDB&lt;/a&gt;. Our current NiFi installation runs on Java 8, so I&amp;rsquo;ve been swapping between Java 8 and the new hotness in &lt;a href=&#34;https://advancedweb.hu/a-categorized-list-of-all-java-and-jvm-features-since-jdk-8-to-16/&#34;&gt;Java 16&lt;/a&gt;, which I&amp;rsquo;m actually not saying ironically. I&amp;rsquo;ve been sleeping on Java, but it hasn&amp;rsquo;t conceded to JavaScript, Rust, or Go yet.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Using sed to Update Markdown Headers</title>
				<link>https://grailbox.com/posts/using-sed-to-update-markdown-headers/</link>
				<pubDate>Wed, 04 Nov 2020 14:34:15 +0000</pubDate>
				<guid>https://grailbox.com/posts/using-sed-to-update-markdown-headers/</guid>
				<description>&lt;p&gt;I&amp;rsquo;m in the process of migrating an existing set of markdown documents to an internal &lt;a href=&#34;https://v2.docusaurus.io/&#34;&gt;Docusaurus&lt;/a&gt; blog. The markdown-to-html rendering with Docusaurus has proved decidedly less forgiving than our existing renderer, so I&amp;rsquo;ve been running the markdown files through some tweaks to get things to display correctly. One item that caused me to work a little harder than normal involved headings: if the heading lacks a space between the octothorpes and the heading text, Docusaurus renders it as normal text, like this:&lt;/p&gt;</description>
			</item>
			<item>
				<title>The Lambda function result failed validation</title>
				<link>https://grailbox.com/posts/the-lambda-function-result-failed-validation/</link>
				<pubDate>Thu, 22 Oct 2020 09:47:39 +0000</pubDate>
				<guid>https://grailbox.com/posts/the-lambda-function-result-failed-validation/</guid>
				<description>&lt;p&gt;I&amp;rsquo;ve been working with Lambda@Edge a lot lately. Throwing compute to the edge of a CloudFront distribution is handy for things like authorizing requests. Development can be frustrating, however, with slow turnaround times for changes. Usual strategies apply, like testing with mocks, to mitigate deployment delays, but sometimes issues with integration arise that you can&amp;rsquo;t duplicate locally.&lt;/p&gt;&#xA;&lt;p&gt;I ran into one such issue recently when implementing OpenID Connect with &lt;a href=&#34;https://www.pingidentity.com/en/cloud/pingone-enterprise.html&#34;&gt;PingOne&lt;/a&gt;. My sophisticated remote debugging (read: &lt;code&gt;console.log(&#39;here #1&#39;)&lt;/code&gt;) couldn&amp;rsquo;t set me straight. All I knew was my Lambda@Edge was calling PingOne, and my browser kept telling me:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Use System Clipboard for Vi Copy Mode in Tmux in macOS and Linux</title>
				<link>https://grailbox.com/posts/use-system-clipboard-for-vi-copy-mode-in-tmux-in-macos-and-linux/</link>
				<pubDate>Thu, 27 Aug 2020 14:55:40 +0000</pubDate>
				<guid>https://grailbox.com/posts/use-system-clipboard-for-vi-copy-mode-in-tmux-in-macos-and-linux/</guid>
				<description>&lt;figure class=&#34;wp-block-embed-twitter wp-block-embed is-type-rich is-provider-twitter&#34;&gt;&#xA;&lt;div class=&#34;wp-block-embed__wrapper&#34;&gt;&#xA;https://twitter.com/hoop33/status/1298981207942639617&#xA;&lt;/div&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;Since I sync my &lt;a href=&#34;https://github.com/hoop33/dotfiles&#34;&gt;dotfiles&lt;/a&gt; through GitHub, I wanted to implement something that will work on both macOS and Linux. Enter &lt;code&gt;if-shell&lt;/code&gt;, which is documented in tmux&amp;rsquo;s man page:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt; if-shell [-bF] [-t target-pane] shell-command command [command]&#xA;               (alias: if)&#xA;         Execute the first command if shell-command returns success or the second command otherwise.  Before being executed, shell-command is expanded using the rules specified&#xA;         in the FORMATS section, including those relevant to target-pane.  With -b, shell-command is run in the background.&#xA;&#xA;         If -F is given, shell-command is not executed but considered success if neither empty nor zero (after formats are expanded).&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;In short, you can run a command conditionally, based on whether your &amp;ldquo;if&amp;rdquo; condition returns true. Interestingly, you can also run an &amp;ldquo;else&amp;rdquo; command without saying &amp;ldquo;else.&amp;rdquo;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Hijacked by Malware: My Wife&#39;s Perpetual Search Woes</title>
				<link>https://grailbox.com/posts/hijacked-by-malware-my-wifes-perpetual-search-woes/</link>
				<pubDate>Wed, 12 Aug 2020 13:18:28 +0000</pubDate>
				<guid>https://grailbox.com/posts/hijacked-by-malware-my-wifes-perpetual-search-woes/</guid>
				<description>&lt;p&gt;I&amp;rsquo;ve used Macs since 2004. I&amp;rsquo;ve never gotten a virus. I&amp;rsquo;ve never had a virus try to trick me into installing it. I&amp;rsquo;ve never sniffed any malware on any of my Macs, and &lt;em&gt;Friends&lt;/em&gt; was still on the air when I started using Macs. The &lt;a href=&#34;https://en.wikipedia.org/wiki/Curse_of_the_Bambino&#34;&gt;Curse of the Bambino&lt;/a&gt; hadn&amp;rsquo;t been broken. Ronald Reagan still lived. Same-sex marriage was illegal in all 50 United States. It&amp;rsquo;s been a long time.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve gone all these years without any threat, and yet: every time I touch my wife&amp;rsquo;s Mac, she&amp;rsquo;s got some type of malware. Almost invariably, something has hijacked her browser search engine. You type a search term into her browser address bar, and some raggedy interface with the aesthetics of urban decay pops up. I ask her how she gets into these messes, and she claims not to know. And I&amp;rsquo;m left to wonder how many of my personal details she&amp;rsquo;s sent to the Ukraine through sketchy search plugins.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Use FZF to Show the Contents of an AWS S3 Object</title>
				<link>https://grailbox.com/posts/use-fzf-to-show-contents-of-aws-s3-object/</link>
				<pubDate>Mon, 27 Jul 2020 15:53:15 +0000</pubDate>
				<guid>https://grailbox.com/posts/use-fzf-to-show-contents-of-aws-s3-object/</guid>
				<description>&lt;p&gt;Once you discover &lt;a href=&#34;https://github.com/junegunn/fzf&#34;&gt;fzf&lt;/a&gt;, you want to use it everywhere. It&amp;rsquo;s clean, powerful, and versatile. In this post, I show you how to use fzf to display the contents of a file in S3.&lt;/p&gt;&#xA;&lt;h2 id=&#34;dependencies&#34;&gt;Dependencies&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/junegunn/fzf&#34;&gt;fzf&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://aws.amazon.com/cli/&#34;&gt;AWS Command Line Interface (CLI)&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;An AWS account&lt;/li&gt;&#xA;&lt;li&gt;One or more S3 buckets with one or more files in them&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;the-function&#34;&gt;The Function&lt;/h2&gt;&#xA;&lt;p&gt;We&amp;rsquo;re calling our shell function &lt;code&gt;cs3&lt;/code&gt;, short for &lt;code&gt;cat s3&lt;/code&gt;. In it, we will:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Git GUIs: A Tale of Two Source Models</title>
				<link>https://grailbox.com/posts/git-guis-a-tale-of-two-source-models/</link>
				<pubDate>Wed, 22 Jul 2020 14:29:09 +0000</pubDate>
				<guid>https://grailbox.com/posts/git-guis-a-tale-of-two-source-models/</guid>
				<description>&lt;p&gt;I&amp;rsquo;ll confess: I use a GUI for Git. Not always, and not even most of the time. The CLI is usually quicker, and I&amp;rsquo;m usually in the terminal anyway, but yet I also use a GUI. Why? Primarily for reviewing diffs and history, or for performing rarely used operations. I mean, I can google &amp;ldquo;cherry pick&amp;rdquo; for those rare times I use it, or I can choose it from the menu and not worry about mangling things in Git history.&lt;/p&gt;</description>
			</item>
			<item>
				<title>JavaScript Destructuring: Renaming AND Nesting</title>
				<link>https://grailbox.com/posts/javascript-destructuring-renaming-and-nesting/</link>
				<pubDate>Tue, 26 May 2020 16:45:11 +0000</pubDate>
				<guid>https://grailbox.com/posts/javascript-destructuring-renaming-and-nesting/</guid>
				<description>&lt;p&gt;While addressing some linter issues today, I couldn&amp;rsquo;t figure out how to destructure from a JavaScript object while:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Renaming a field &lt;em&gt;and&lt;/em&gt;&lt;/li&gt;&#xA;&lt;li&gt;Destructuring nested fields from that same field&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Renaming, I could do. Nested fields, no problem. But to do both, for the same field? Googling got me nowhere &amp;ndash; I found examples aplenty for doing one or the other, often in the same post. Examples of how to rename a field. Examples of how to destructure nested fields. But nothing for the syntax for how to do both to the same field.&lt;/p&gt;</description>
			</item>
			<item>
				<title>How to Set Up a Domain in Amazon Route 53 with Terraform</title>
				<link>https://grailbox.com/posts/how-to-set-up-a-domain-in-amazon-route-53-with-terraform/</link>
				<pubDate>Sun, 19 Apr 2020 09:24:29 +0000</pubDate>
				<guid>https://grailbox.com/posts/how-to-set-up-a-domain-in-amazon-route-53-with-terraform/</guid>
				<description>&lt;h2 id=&#34;edit-oct-12-2021&#34;&gt;Edit: Oct 12, 2021&lt;/h2&gt;&#xA;&lt;p&gt;Please note the comment by Chris Harrison, below, regarding a breaking change with lists vs sets.&lt;/p&gt;&#xA;&lt;h2 id=&#34;original-start&#34;&gt;Original Start:&lt;/h2&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve lately used Terraform to set up several domains in Route 53. My searches on the topic found posts more ambitious than this one explaining how to create an entire website using Terraform: domain, certificate, S3 bucket, and CloudFront distribution. Whether because of the articles&amp;rsquo; larger focus or my own density, I couldn&amp;rsquo;t really understand them. I&amp;rsquo;m loathe to copy-paste code without understanding what it does. I wanted to understand the Terraform resources, how they interacted, and where the dependencies and boundaries lay. I also wanted to understand what was happening with Route 53 and Certificate Manager. Here&amp;rsquo;s what I learned.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Trying to Get My NZXT Kraken X52 to Light Up</title>
				<link>https://grailbox.com/posts/trying-to-get-my-nzxt-kraken-x52-to-light-up/</link>
				<pubDate>Fri, 13 Mar 2020 14:35:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/trying-to-get-my-nzxt-kraken-x52-to-light-up/</guid>
				<description>&lt;p&gt;If you read through to the end of my &lt;a href=&#34;https://www.grailbox.com/2020/02/the-ultimate-linux-developer-desktop-2020/&#34;&gt;The Ultimate Linux Developer Desktop 2020&lt;/a&gt; post, instead of just copying the &lt;a href=&#34;https://pcpartpicker.com/user/hoop33/saved/&#34;&gt;PCPartPicker list&lt;/a&gt;, you saw that I couldn&amp;rsquo;t get my CPU Cooler to light up. It just sat there, reflecting other light sources but providing no light of its own, like this:&lt;/p&gt;&#xA;&lt;figure class=&#34;wp-block-image size-large&#34;&gt;&#xA;&lt;img src=&#34;https://www.grailbox.com/wp-content/uploads/2020/03/IMG_2193-768x1024.jpg&#34; class=&#34;wp-image-706&#34; /&gt;&#xA;&lt;figcaption&gt;NZXT Kraken X52, unlit but reflecting other light (and my iPhone)&lt;/figcaption&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;The steps I&amp;rsquo;ve taken to try to light this thing up follow.&lt;/p&gt;</description>
			</item>
			<item>
				<title>The Ultimate Linux Developer Desktop 2020</title>
				<link>https://grailbox.com/posts/the-ultimate-linux-developer-desktop-2020/</link>
				<pubDate>Thu, 27 Feb 2020 11:58:52 +0000</pubDate>
				<guid>https://grailbox.com/posts/the-ultimate-linux-developer-desktop-2020/</guid>
				<description>&lt;p&gt;Excuse the hyperbolic title. That&amp;rsquo;s what I googled when doing my research. My goal: build a blazing machine for developing software using:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;JavaScript / Node&lt;/li&gt;&#xA;&lt;li&gt;Go&lt;/li&gt;&#xA;&lt;li&gt;Rust&lt;/li&gt;&#xA;&lt;li&gt;Python&lt;/li&gt;&#xA;&lt;li&gt;AWS&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;My late-2013 MacBook Pro is still serviceable, so I didn&amp;rsquo;t need portability. I&amp;rsquo;m seeking:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;More speed&lt;/li&gt;&#xA;&lt;li&gt;More space&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;I briefly considered building a &lt;a href=&#34;https://en.wikipedia.org/wiki/Hackintosh&#34;&gt;Hackintosh&lt;/a&gt;, but didn&amp;rsquo;t want to get stuck not being able to upgrade or boot. I know Microsoft has been doing some great things with terminals and shells and Linux subsystems, but I wanted to stay firmly planted in *nix-world. I never really considered anything other than Linux. I told my coworkers that my goal was to &amp;ldquo;run Vim faster than it&amp;rsquo;s been run before.&amp;rdquo;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Reformatting X12 in Vim</title>
				<link>https://grailbox.com/posts/reformatting-x12-in-vim/</link>
				<pubDate>Fri, 11 Oct 2019 08:51:02 +0000</pubDate>
				<guid>https://grailbox.com/posts/reformatting-x12-in-vim/</guid>
				<description>&lt;p&gt;I&amp;rsquo;ve been working with a lot of &lt;a href=&#34;http://www.x12.org&#34;&gt;ANSI X12&lt;/a&gt; files lately. Often, they come to me formatted either as a single line, or as multiple lines with line breaks at 80 columns. They&amp;rsquo;re much easier to work with when they&amp;rsquo;re formatted as multiple lines, but with line breaks at delimiters. So I added the following to my .vimrc:&lt;/p&gt;&#xA;&lt;p&gt;When I get one of these files, I open it in Vim (well, Neovim), and I hit &amp;lt;leader&amp;gt;x12, and then everything is reformatted how I like it.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Using fzf and oc to rsh into an OpenShift Pod</title>
				<link>https://grailbox.com/posts/using-fzf-and-oc-to-rsh-into-an-openshift-pod/</link>
				<pubDate>Sun, 11 Aug 2019 10:33:14 +0000</pubDate>
				<guid>https://grailbox.com/posts/using-fzf-and-oc-to-rsh-into-an-openshift-pod/</guid>
				<description>&lt;p&gt;Getting a remote shell on an OpenShift pod is simple enough; you type:&lt;/p&gt;&#xA;&lt;p&gt;$ oc rsh &amp;lt;pod name&amp;gt;\&lt;/p&gt;&#xA;&lt;p&gt;Pod names can be long and complex, however. Here&amp;rsquo;s an example:&lt;/p&gt;&#xA;&lt;p&gt;mysql-coolapp-5-rg59c\&lt;/p&gt;&#xA;&lt;p&gt;Only a luddite would willingly type all of that, and mousing around a terminal to copy and paste is only slightly more efficient. If you have &lt;a href=&#34;https://github.com/junegunn/fzf&#34;&gt;fzf&lt;/a&gt; installed, however, you can use fuzzy finding to type only a few characters of the pod name to rsh into it. Here&amp;rsquo;s a zsh function that seems to work fine in bash as well. Add it to your dotfiles somewhere, and then you can just type &amp;ldquo;ocsh&amp;rdquo; and then a few characters of the pod name (or use the arrow keys) and then press Enter, and voila.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Please Don&#39;t Ask Me How I&#39;m Doing</title>
				<link>https://grailbox.com/posts/please-dont-ask-me-how-im-doing/</link>
				<pubDate>Sun, 21 Jul 2019 17:37:54 +0000</pubDate>
				<guid>https://grailbox.com/posts/please-dont-ask-me-how-im-doing/</guid>
				<description>&lt;p&gt;Back in the 1970s, my father and his partner ran a small consulting firm. Their accountant, a man named Morty or Artie or some other name that conjures images of a perm, polyester, and a butterfly collar, charged by the minute. I think each minute cost a quarter, which sounds ridiculously low but in those days could buy a lot of polyester. Charging by the minute drove certain behaviors — as my father said, you quickly learned not to ask after Artie&amp;rsquo;s health. You called Artie, asked your question, wrote down the answer as he spoke, and hung up.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Down the Raspberry Pi Rabbit Hole</title>
				<link>https://grailbox.com/posts/down-the-raspberry-pi-rabbit-hole/</link>
				<pubDate>Tue, 19 Mar 2019 22:52:08 +0000</pubDate>
				<guid>https://grailbox.com/posts/down-the-raspberry-pi-rabbit-hole/</guid>
				<description>&lt;p&gt;I can be easily distracted. Lately, I&amp;rsquo;ve been working on a new blog of sorts, but instead of technical stuff, this blog will focus on writings about life. I think. I&amp;rsquo;m almost 10,000 words into recounting my recent motorcycle accident, and I haven&amp;rsquo;t published anything yet. I&amp;rsquo;m determined, though.&lt;/p&gt;&#xA;&lt;p&gt;Writing long pieces on my MacBook Pro is proving to be hit-or-miss. When I get on my Mac, I tend to update Homebrew formulae, check Hacker News, scroll Twitter a bit, and start coding projects in Go or Rust or whatever intrigues me in the moment. Further, I live in a zoo of people, so finding quiet time at home proves an impossible quest. I try going to a coffee shop or a library, but my Mac&amp;rsquo;s battery doesn&amp;rsquo;t hold up. Between the distractions, the noise, the people, and the battery life, I don&amp;rsquo;t get much writing done.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Installing Go 1.12 on MacOS High Sierra</title>
				<link>https://grailbox.com/posts/installing-go-1-12-on-macos-high-sierra/</link>
				<pubDate>Thu, 28 Feb 2019 12:12:32 +0000</pubDate>
				<guid>https://grailbox.com/posts/installing-go-1-12-on-macos-high-sierra/</guid>
				<description>&lt;p&gt;Go 1.12 was released three days ago (Feb 25, 2019). I upgraded my personal MacBook Pro, which runs Mojave, with:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ brew upgrade go&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The upgrade failed with the error:&lt;/p&gt;&#xA;&lt;p&gt;The upgrade ran fine. Then, I tried to upgrade my work MacBook Pro, which runs High Sierra and sits behind a proxy and plays victim to corporate man-in-the-middle attacks for all network traffic, which creates all sorts of adventures, with the same command:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Go, HTTP Headers, and Rubber Duck Debugging</title>
				<link>https://grailbox.com/posts/go-http-headers-and-rubber-duck-debugging/</link>
				<pubDate>Wed, 13 Feb 2019 17:50:20 +0000</pubDate>
				<guid>https://grailbox.com/posts/go-http-headers-and-rubber-duck-debugging/</guid>
				<description>&lt;p&gt;A recent Jira ticket instructed me to make a call from one of my Go services to another group&amp;rsquo;s service. I&amp;rsquo;d perform a PUT to a specific URL to create a service provider in our access management solution, here known as &amp;ldquo;Cool Access Manager&amp;rdquo; or &amp;ldquo;CoolAM.&amp;rdquo; For authentication, I’d include an HTTP header with the key “X-CoolAM-Token” and the value of the user’s login cookie. Simple enough. Yes, I’m aware that &lt;a href=&#34;https://tools.ietf.org/html/rfc6648&#34;&gt;the “X-“ prefix for HTTP header keys has been deprecated&lt;/a&gt;. So I added the following Go code to my service:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Automatically Close NerdTree When Using Vimade</title>
				<link>https://grailbox.com/posts/automatically-close-nerdtree-when-using-vimade/</link>
				<pubDate>Tue, 29 Jan 2019 14:52:32 +0000</pubDate>
				<guid>https://grailbox.com/posts/automatically-close-nerdtree-when-using-vimade/</guid>
				<description>&lt;p&gt;As the &lt;a href=&#34;https://github.com/scrooloose/nerdtree&#34;&gt;NERDTree&lt;/a&gt; README points out, you can automatically close Vim if NERDTree is the only open window by adding this to your configuration:&lt;/p&gt;&#xA;&lt;p&gt;autocmd bufenter * if (winnr(&amp;quot;$&amp;quot;) == 1 &amp;amp;&amp;amp; exists(&amp;ldquo;b:NERDTree&amp;rdquo;) &amp;amp;&amp;amp; b:NERDTree.isTabTree()) | q | endif&lt;/p&gt;&#xA;&lt;p&gt;If you are using &lt;a href=&#34;https://github.com/TaDaa/vimade&#34;&gt;vimade&lt;/a&gt; and &lt;a href=&#34;https://neovim.io/&#34;&gt;Neovim&lt;/a&gt; (I couldn&amp;rsquo;t reproduce in Vim), however, you may see something like this in your terminal after Neovim exits:&lt;/p&gt;&#xA;&lt;p&gt;Error detected while processing function vimade#Tick[1]..vimade#CheckWindows[3]..provider#python3#Call:&lt;br&gt;&#xA;line   18:&lt;br&gt;&#xA;Invalid channel: 3&lt;/p&gt;</description>
			</item>
			<item>
				<title>Building Microservices in Go Using Go Kit</title>
				<link>https://grailbox.com/posts/building-microservices-in-go-using-go-kit/</link>
				<pubDate>Mon, 21 Jan 2019 10:46:26 +0000</pubDate>
				<guid>https://grailbox.com/posts/building-microservices-in-go-using-go-kit/</guid>
				<description>&lt;p&gt;Last August, I spoke at &lt;a href=&#34;https://www.codeonthebeach.com/&#34;&gt;Code on the Beach&lt;/a&gt; on building microservices in &lt;a href=&#34;https://golang.org/&#34;&gt;Go&lt;/a&gt; using &lt;a href=&#34;https://gokit.io/&#34;&gt;Go kit&lt;/a&gt;. Here&amp;rsquo;s the video:&lt;/p&gt;&#xA;&lt;div class=&#34;iframe&#34;&gt;&#xA;&lt;div id=&#34;player&#34;&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;player-unavailable&#34;&gt;&#xA;&lt;h1 id=&#34;an-error-occurred&#34;&gt;An error occurred.&lt;/h1&gt;&#xA;&lt;div class=&#34;submessage&#34;&gt;&#xA;&lt;p&gt;Unable to execute JavaScript.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;The repo I used is available at &lt;a href=&#34;https://github.com/hoop33/roster&#34;&gt;https://github.com/hoop33/roster&lt;/a&gt; and the Node CLI is available at &lt;a href=&#34;https://github.com/hoop33/roster-client&#34;&gt;https://github.com/hoop33/roster-client&lt;/a&gt;. I hope this is helpful for anyone trying to come up to speed on Go or Go kit.&lt;/p&gt;&#xA;&lt;p&gt;Code on the Beach was a great experience &amp;ndash; I hope to see y&amp;rsquo;all there next year!&lt;/p&gt;</description>
			</item>
			<item>
				<title>How to Return All Fields for a GraphQL Query</title>
				<link>https://grailbox.com/posts/how-to-return-all-fields-for-a-graphql-query/</link>
				<pubDate>Sat, 20 Oct 2018 07:03:08 +0000</pubDate>
				<guid>https://grailbox.com/posts/how-to-return-all-fields-for-a-graphql-query/</guid>
				<description>&lt;p&gt;A frequent GraphQL question is how to return all fields in a GraphQL query without specifying them all; see &lt;a href=&#34;https://www.prisma.io/forum/t/include-all-fields-of-a-type-in-a-graphql-query/352&#34;&gt;here&lt;/a&gt; or &lt;a href=&#34;https://stackoverflow.com/questions/34199982/how-to-query-all-the-graphql-type-fields-without-writing-a-long-query&#34;&gt;here&lt;/a&gt; or &lt;a href=&#34;https://github.com/facebook/graphql/issues/127&#34;&gt;here&lt;/a&gt;. The conversation typically goes like this:&lt;/p&gt;&#xA;&lt;p&gt;Q: &amp;ldquo;How can I return all the fields for a GraphQL query without specifying them? Can I just pass a wildcard character?&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;A: &amp;ldquo;No, sorry. That&amp;rsquo;s not possible. That runs counter to the entire idea of GraphQL.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;Q: &amp;ldquo;But, that would be really useful for [this case] or [that other case].&amp;rdquo;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Restricting ripgrep to certain file types</title>
				<link>https://grailbox.com/posts/restricting-ripgrep-to-certain-file-types/</link>
				<pubDate>Sun, 05 Aug 2018 12:15:53 +0000</pubDate>
				<guid>https://grailbox.com/posts/restricting-ripgrep-to-certain-file-types/</guid>
				<description>&lt;p&gt;I&amp;rsquo;ve been using &lt;a href=&#34;https://github.com/BurntSushi/ripgrep&#34;&gt;ripgrep&lt;/a&gt; to search files for awhile, but I hadn’t figured out how to recursively search only certain file types. Anytime I needed to search, say, for any occurrence of &amp;ldquo;doFoo&amp;rdquo; in Go source files, I&amp;rsquo;d type:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ rg &amp;#39;doFoo&amp;#39; *.go&#xA;*.go: No such file or directory (os error 2)&#xA;No files were searched, which means ripgrep probably applied a filter you didn&amp;#39;t expect. Try running again with --debug.&#xA;$ find . -name &amp;#39;*.go&amp;#39; -type f -print0 | xargs -0 grep &amp;#39;doFoo&amp;#39;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;And then I resolve to get around to figuring out how to ripgrep through only certain file types.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Ctags for GraphQL Schemas</title>
				<link>https://grailbox.com/posts/ctags-for-graphql-schemas/</link>
				<pubDate>Wed, 17 Jan 2018 11:18:56 +0000</pubDate>
				<guid>https://grailbox.com/posts/ctags-for-graphql-schemas/</guid>
				<description>&lt;p&gt;I&amp;rsquo;ve been developing some GraphQL services lately. Since I use Neovim (and fzf) for editing, I wanted Ctags support for my schema files. Here&amp;rsquo;s what I came up with:&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;d love feedback &amp;ndash; thanks!&lt;/p&gt;</description>
			</item>
			<item>
				<title>Another Windows Scammer</title>
				<link>https://grailbox.com/posts/another-windows-scammer/</link>
				<pubDate>Tue, 04 Apr 2017 09:52:56 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-windows-scammer/</guid>
				<description>&lt;p&gt;I got another call yesterday from “Windows Tech Support” that went something like this:&lt;/p&gt;&#xA;&lt;p&gt;Him (moderate accent): “Hi, I’m calling from Windows Tech Support, and . . .&amp;quot;&lt;/p&gt;&#xA;&lt;p&gt;Me: “Oh, no! Do I have a virus?&amp;quot;&lt;/p&gt;&#xA;&lt;p&gt;Him: *chuckling* “No, you have a browser injection malware.&amp;quot;&lt;/p&gt;&#xA;&lt;p&gt;Me: “That sounds bad. Should I throw away my computer?&amp;quot;&lt;/p&gt;&#xA;&lt;p&gt;Him: “No. I can help you fix it. What key is on the bottom left of your keyboard?&amp;quot;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Brandon from Windows</title>
				<link>https://grailbox.com/posts/brandon-from-windows/</link>
				<pubDate>Thu, 30 Jun 2016 14:41:27 +0000</pubDate>
				<guid>https://grailbox.com/posts/brandon-from-windows/</guid>
				<description>&lt;p&gt;I just got a call from “Brandon from Windows” that I wish I’d recorded. He, of course, told me (in a Bangalorean accent) that my computer had malware issues. Our conversation went something like this:&lt;/p&gt;&#xA;&lt;p&gt;“Brandon”: This is Brandon from Windows. Your computer has malware issues.&lt;/p&gt;&#xA;&lt;p&gt;Me: Oh, no! Should I throw it away?&lt;/p&gt;&#xA;&lt;p&gt;“Brandon”: No, we can fix it. Are you in front of your computer now?&lt;/p&gt;&#xA;&lt;p&gt;Me: Yes&lt;/p&gt;</description>
			</item>
			<item>
				<title>Making &#34;java -v&#34;, &#34;java --version&#34;, and &#34;java version&#34; Work</title>
				<link>https://grailbox.com/posts/making-java-v-java-version-and-java-version-work/</link>
				<pubDate>Wed, 02 Sep 2015 09:53:56 +0000</pubDate>
				<guid>https://grailbox.com/posts/making-java-v-java-version-and-java-version-work/</guid>
				<description>&lt;p&gt;To get the version of most CLI tools, you type the tool&amp;rsquo;s command name followed by one of these:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;-v&lt;/li&gt;&#xA;&lt;li&gt;&amp;ndash;version&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Some CLI tools, like Git, support a &amp;ldquo;version&amp;rdquo; subcommand, so you type the tool&amp;rsquo;s command name followed by &amp;ldquo;version&amp;rdquo;.&lt;/p&gt;&#xA;&lt;p&gt;Java supports none of these.&lt;/p&gt;&#xA;&lt;p&gt;Instead, you must type:&lt;/p&gt;&#xA;&lt;p&gt;java -version\&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;m too old to remember that, so I&amp;rsquo;ve created a bash/zsh function:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://gist.github.com/hoop33/e02d8ae9113616e2cd60&#34;&gt;https://gist.github.com/hoop33/e02d8ae9113616e2cd60&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now I can type any of the following:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Two Things I Learned About Vim from an Emacs User</title>
				<link>https://grailbox.com/posts/two-things-i-learned-about-vim-from-an-emacs-user/</link>
				<pubDate>Fri, 17 Apr 2015 15:07:03 +0000</pubDate>
				<guid>https://grailbox.com/posts/two-things-i-learned-about-vim-from-an-emacs-user/</guid>
				<description>&lt;p&gt;Yesterday I was working on a problem with an Emacs wizard, and I saw him do a couple things in Emacs that made me squirm. You see, I badger and belittle him at every opportunity for not embracing &lt;a href=&#34;http://www.vim.org/&#34;&gt;The One True Editor&lt;/a&gt;, but I saw him perform two actions in Emacs &lt;em&gt;that I didn’t know how to do in Vim&lt;/em&gt;. And &lt;em&gt;no way&lt;/em&gt; was I going to admit that, at least not to him.&lt;/p&gt;</description>
			</item>
			<item>
				<title>URLs as Pictograms</title>
				<link>https://grailbox.com/posts/urls-as-pictograms/</link>
				<pubDate>Mon, 12 Jan 2015 09:33:44 +0000</pubDate>
				<guid>https://grailbox.com/posts/urls-as-pictograms/</guid>
				<description>&lt;p&gt;I started my car to the chime of a low fuel alert, so I stopped at the Kangaroo for gas and my Morning Mormon Coffee (today’s edition: Diet Dr Pepper). While filling my cup, I noticed the graphic on a napkin dispenser:&lt;/p&gt;&#xA;&lt;img src=&#34;http://www.grailbox.com/wp-content/uploads/2015/01/2015-01-12-08.38.01.jpg&#34; title=&#34;2015-01-12 08.38.01.jpg&#34; data-border=&#34;0&#34; width=&#34;450&#34; height=&#34;600&#34; alt=&#34;2015 01 12 08 38 01&#34; /&gt;&#xA;&lt;p&gt;The social media icons looked familiar, of course, but it took me a moment to realize that they’d abandoned the traditional ‘@‘ prefixes for the user names — instead, they’d used the icons as pictograms for the URLs, followed by a slash, and then the rest of the URL (the username). Interesting take, and probably a little too geeky to catch on, but I like when people experiment to see what sticks.&lt;/p&gt;</description>
			</item>
			<item>
				<title>hc: Hex Color Command-Line Tool for OS X</title>
				<link>https://grailbox.com/posts/hc-hex-color-command-line-tool-for-os-x/</link>
				<pubDate>Wed, 17 Dec 2014 13:09:53 +0000</pubDate>
				<guid>https://grailbox.com/posts/hc-hex-color-command-line-tool-for-os-x/</guid>
				<description>&lt;p&gt;I’ve been working a lot lately with LESS and Bootstrap, and wanted an easier and quicker way to visualize colors and what the various LESS operations do to them. So, I built &lt;a href=&#34;https://github.com/hoop33/hc&#34;&gt;hc&lt;/a&gt; — Hex Colors on the Command Line. It’s written in Objective-C and works on Mac OS X 10.9+.&lt;/p&gt;&#xA;&lt;p&gt;It’s still in its infancy, of course, but it lets you do things like show, lighten, or darken colors. To show the color red, for example, type:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Giving Firefox Developer Edition a Go</title>
				<link>https://grailbox.com/posts/giving-firefox-developer-edition-a-go/</link>
				<pubDate>Mon, 17 Nov 2014 09:27:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/giving-firefox-developer-edition-a-go/</guid>
				<description>&lt;p&gt;I love that I can run Chrome on my work MacBook Pro, my personal MacBook Pro, and my iPhone 6 Plus and keep my browsing history in sync. I love that I can install a plugin on one Mac and have it available on the other. I love that my logins are available whichever device I use. I love that I can bring up my open tabs from any device. My web experience transparently moves with me, and it makes life so much easier.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Clojure, Emacs, and Evil Mode</title>
				<link>https://grailbox.com/posts/clojure-emacs-and-evil-mode/</link>
				<pubDate>Wed, 12 Nov 2014 15:29:08 +0000</pubDate>
				<guid>https://grailbox.com/posts/clojure-emacs-and-evil-mode/</guid>
				<description>&lt;p&gt;I work with &lt;a href=&#34;https://twitter.com/sgillespie01&#34;&gt;one of those functional language kooks&lt;/a&gt; who end every thought with “Haskell,” use &lt;a href=&#34;http://xmonad.org&#34;&gt;xmonad&lt;/a&gt; or &lt;a href=&#34;http://www.nongnu.org/ratpoison/&#34;&gt;Ratpoison&lt;/a&gt; while scoffing at GUIs, and edit everything, even selfies, in Emacs. Serendipitously, he just walked by, read my opening sentence, and said, “Actually, Emacs DOES support graphics editing. Haskell.&amp;quot;&lt;/p&gt;&#xA;&lt;p&gt;Also at work, a group of us are learning Clojure, evidenced by our once-a-week Clojure Club meetings. Progress has been slow but steady and we’ve found a lot to like about Clojure.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Recovering My MacVim</title>
				<link>https://grailbox.com/posts/recovering-my-macvim/</link>
				<pubDate>Wed, 08 Oct 2014 08:18:55 +0000</pubDate>
				<guid>https://grailbox.com/posts/recovering-my-macvim/</guid>
				<description>&lt;p&gt;Although I usually edit files with (graphical) MacVim, I occasionally launch terminal vim. When I do, I see this:&lt;/p&gt;&#xA;&lt;p&gt;github-issues.vim requires Python support, sorry :c&lt;/p&gt;&#xA;&lt;p&gt;I always smile a bit at &lt;a href=&#34;https://github.com/jaxbot/github-issues.vim&#34;&gt;my nephew&amp;rsquo;&lt;/a&gt;s use of an extra-frowny mouth, but I also wince a bit to know that I&amp;rsquo;m letting this issue linger, rather than fix it.&lt;/p&gt;&#xA;&lt;p&gt;The simplest fix is to use terminal macvim as my system vim, so last Friday I opted for what I expected to be the easy route and typed:&lt;/p&gt;</description>
			</item>
			<item>
				<title>The Pinnacle of Fitness Failure: Samsung’s Gear Fit Activity Tracker | DC Rainmaker</title>
				<link>https://grailbox.com/posts/the-pinnacle-of-fitness-failure-samsungs-gear-fit-activity-tracker-dc-rainmaker/</link>
				<pubDate>Thu, 17 Apr 2014 14:10:26 +0000</pubDate>
				<guid>https://grailbox.com/posts/the-pinnacle-of-fitness-failure-samsungs-gear-fit-activity-tracker-dc-rainmaker/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://www.dcrainmaker.com/2014/04/pinnacle-samsungs-activity.html&#34;&gt;The Pinnacle of Fitness Failure: Samsung’s Gear Fit Activity Tracker | DC Rainmaker&lt;/a&gt;: &amp;ldquo;Samsung built a cloud-based service that lacks the cloud.  We’ll just call that a rock.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;I haven&amp;rsquo;t yet taken the plunge into the activity tracker market&amp;ndash;I run with a Nike+ GPS watch, but only while running&amp;ndash;because I haven&amp;rsquo;t yet understood why I&amp;rsquo;d want one. This review didn&amp;rsquo;t push me any closer, but I LOVED that line!&lt;/p&gt;&#xA;&lt;p&gt;(Via. &lt;a href=&#34;http://daringfireball.net/linked/2014/04/17/samsung-gear-fit&#34;&gt;Daring Fireball&lt;/a&gt;)&lt;/p&gt;</description>
			</item>
			<item>
				<title>The Internet Is Too Small to Be Snarky</title>
				<link>https://grailbox.com/posts/the-internet-is-too-small-to-be-snarky/</link>
				<pubDate>Mon, 24 Mar 2014 16:47:21 +0000</pubDate>
				<guid>https://grailbox.com/posts/the-internet-is-too-small-to-be-snarky/</guid>
				<description>&lt;p&gt;Last week, I was frustrated with Oracle SQL Developer (on Mac OS X) for two reasons:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;When a connection times out (after being left idle too long), the application hangs and I have to Force Quit and restart it.&lt;/li&gt;&#xA;&lt;li&gt;Every 90 days, the passwords for our databases change, so an updated connection XML file is put into source control (passwords are encrypted, and we aren&amp;rsquo;t allowed to know the passwords) and we have to import the new connections. You can&amp;rsquo;t delete multiple connections at a time from the SQL Developer interface, and importing over an existing connection pops up a Yes/No dialog box asking you if you want to overwrite the existing connection. Since the file contains about 30 connections, this means clicking Yes to the same dialog box 30 times.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;I decided to vent, and tweeted this:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Setting Up My New MacBook Pro</title>
				<link>https://grailbox.com/posts/setting-up-my-new-macbook-pro/</link>
				<pubDate>Wed, 19 Mar 2014 21:43:12 +0000</pubDate>
				<guid>https://grailbox.com/posts/setting-up-my-new-macbook-pro/</guid>
				<description>&lt;p&gt;I just bought a new MacBook Pro to replace my mid-2010 MBP. This is my first retina laptop, and it’s beautiful. I’d been waffling for awhile, but I’m glad I took the plunge.&lt;/p&gt;&#xA;&lt;p&gt;I briefly considered transferring all my stuff over from the old MBP, but I figured it was time to start clean. I use my laptop primarily for development (Objective-C, Java, Ruby, Clojure, JavaScript, Web, . . .), writing, and a little bit of graphics work. Here’s what I did after walking through the setup wizard:&lt;/p&gt;</description>
			</item>
			<item>
				<title>The Node Sessions: The Best of OSCON 2011; O&#39;Reilly Media</title>
				<link>https://grailbox.com/posts/the-node-sessions-the-best-of-oscon-2011-oreilly-media/</link>
				<pubDate>Wed, 22 Jan 2014 18:23:19 +0000</pubDate>
				<guid>https://grailbox.com/posts/the-node-sessions-the-best-of-oscon-2011-oreilly-media/</guid>
				<description>&lt;p&gt;Various Node.js gurus explain and explore the power of this server-side framework in this collection of videos. Two years later, the videos age pretty well, considering they cover Node.js 0.4.x and 0.5.x, and today&amp;rsquo;s current version is 0.10.x. The speakers range from Node committers to heavy Node users, and you gain insight into not only how Node works but why it works that way. Some highlights:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;Real Projects Built in Node&lt;/strong&gt; and &lt;strong&gt;Developing Cloud9 in Cloud9&lt;/strong&gt; speak to the what works and what doesn&amp;rsquo;t in real-world use. Advice includes to use libraries like Puppet for configuration and Log Magic for logging. Cloud9 continues to grow and is an excellent way to get started with Node.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Using jQuery with node.js&lt;/strong&gt; introduces jsdom and how you can use this powerful framework on the server side. It implements the DOM as if it were a browser so jQuery selectors et al work fine.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Running Node.js in Production&lt;/strong&gt; and &lt;strong&gt;Node at Scale&lt;/strong&gt; tells you how to make sure your Node app scales in real-world use. It covers how to choose meaningful benchmarks, how to structure your code, how to deploy, and how to keep your dependencies stable using package.json&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Programming a Chat Server&lt;/strong&gt; does some live coding to show what you can do with sockets.io and Node. You can see the result at &lt;a href=&#34;https://github.com/guille/oscon-chat&#34;&gt;https://github.com/guille/oscon-chat&lt;/a&gt;.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Why We Chose Node&lt;/strong&gt; compares the dynamic nature of JavaScript with static languages like Java and C++, and explains the importance of being able to see exactly what&amp;rsquo;s going on when errors arise.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Network Programming with Node.js&lt;/strong&gt; talks about the challenges of porting Node to Windows.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;I wish the speakers had repeated the questions before answering them&amp;ndash;you&amp;rsquo;re left guessing what question the answer matches. Talks mostly finished ahead of schedule, reflecting perhaps speakers new to speaking. The information is prime (albeit dated), though, and the whole offers a good introduction to the world of Node.js.&lt;/p&gt;</description>
			</item>
			<item>
				<title>How to Lock Up Linux Using Sublime Text 3</title>
				<link>https://grailbox.com/posts/how-to-lock-up-linux-using-sublime-text-3/</link>
				<pubDate>Fri, 10 Jan 2014 15:35:41 +0000</pubDate>
				<guid>https://grailbox.com/posts/how-to-lock-up-linux-using-sublime-text-3/</guid>
				<description>&lt;p&gt;Steps to Lock Up Linux Using Sublime Text 3:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Log in to your Mac OS X machine.&lt;/li&gt;&#xA;&lt;li&gt;Install &lt;a href=&#34;https://www.virtualbox.org/&#34;&gt;VirtualBox&lt;/a&gt;.&lt;/li&gt;&#xA;&lt;li&gt;Install a Linux virtual machine.&lt;/li&gt;&#xA;&lt;li&gt;Boot that Linux virtual machine.&lt;/li&gt;&#xA;&lt;li&gt;Install &lt;a href=&#34;http://www.sublimetext.com/3&#34;&gt;Sublime Text 3&lt;/a&gt; on that Linux virtual machine.&lt;/li&gt;&#xA;&lt;li&gt;Launch Sublime Text 3 and open some files for editing.&lt;/li&gt;&#xA;&lt;li&gt;Hit Cmd+P to Goto Anything….&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;There you go. As we say in The Deep South, you’re locked up tighter’n a tick. You can click around, mash keys, yell, and curse, even for a long time, and you’re completely stuck.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Installing ForgeRock OpenAM and Apache 2.4.6 on Ubuntu 13.10</title>
				<link>https://grailbox.com/posts/installing-forgerock-openam-and-apache-2-4-6-on-ubuntu-13-10/</link>
				<pubDate>Thu, 09 Jan 2014 14:47:27 +0000</pubDate>
				<guid>https://grailbox.com/posts/installing-forgerock-openam-and-apache-2-4-6-on-ubuntu-13-10/</guid>
				<description>&lt;h2 id=&#34;tldr&#34;&gt;TL;DR&lt;/h2&gt;&#xA;&lt;p&gt;touch /etc/apache2/httpd.conf&lt;/p&gt;&#xA;&lt;p&gt;Enter /etc/apache2 as your Apache Server Config Directory Path&lt;/p&gt;&#xA;&lt;p&gt;copy the generated line from httpd.conf to apache2.conf&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-story&#34;&gt;The Story&lt;/h2&gt;&#xA;&lt;p&gt;I’m no sysadmin, as will become clear rapidly in this post. I develop software, including Web software, so I have some knowledge of Apache and how to set it up and configure it, but for anything tough I scurry to real sysadmins.&lt;/p&gt;&#xA;&lt;p&gt;I’m currently on a project at work to replace our Sun/Oracle OpenSSO installation with &lt;a href=&#34;http://forgerock.com/products/open-identity-stack/openam/&#34;&gt;ForgeRock OpenAM&lt;/a&gt;, so I plopped a Linux VM on my MacBook Pro and worked my way through installing OpenAM using the ForgeRock’s &lt;a href=&#34;http://docs.forgerock.org/en/openam/11.0.0/getting-started/index/index.html&#34;&gt;Getting Started with OpenAM&lt;/a&gt; document, which is easy to follow and works well. When I got to the OpenAM Web Policy Agent installation, however, I stumbled. I ran the commands:&lt;/p&gt;</description>
			</item>
			<item>
				<title>The Imperfect Craft | Bitsplitting.org</title>
				<link>https://grailbox.com/posts/the-imperfect-craft-bitsplitting-org/</link>
				<pubDate>Mon, 26 Aug 2013 11:15:08 +0000</pubDate>
				<guid>https://grailbox.com/posts/the-imperfect-craft-bitsplitting-org/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://bitsplitting.org/2013/08/20/the-imperfect-craft/?utm_source=iOS+Dev+Weekly&amp;amp;utm_campaign=iOS_Dev_Weekly_Issue_108&amp;amp;utm_medium=email&#34;&gt;The Imperfect Craft | Bitsplitting.org&lt;/a&gt;: &amp;ldquo;I’ve seen what happens to people who cling to outdated standards of craftsmanship: they become self-righteous, bitter, and delusional. Guided only by the hallowed rules of yesteryear’s geniuses, they and their work become marginalized. Without a foothold in the modern technological context, programmers who should be great are rendered effectively incapable of developing their craft.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;One of the things I love about software development is that it always presents mountains to learn. I don&amp;rsquo;t understand developers who aren&amp;rsquo;t constantly learning, trying new things out, and experimenting. This article really struck a chord with me. I love this quote as well:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Validation Errors in Eclipse and Alpha-Bits</title>
				<link>https://grailbox.com/posts/validation-errors-in-eclipse-and-alpha-bits/</link>
				<pubDate>Wed, 07 Aug 2013 15:10:28 +0000</pubDate>
				<guid>https://grailbox.com/posts/validation-errors-in-eclipse-and-alpha-bits/</guid>
				<description>&lt;p&gt;Cartoons owned Saturday mornings, back when I was young enough to care. The commercials that wedged their way in and between The RoadRunner and The Justice League seemed to hawk either toys or breakfast cereal, all of which I longed for. My mother decried &amp;ldquo;sugar cereal&amp;rdquo; and preached the virtues of rolled oats.&lt;/p&gt;&#xA;&lt;p&gt;One particular cereal commercial that lingers in my dwindling memory showed various calamities creeping up on the blissful muncher. Each time, at the precise moment preceding attack and doom, the happy eater would show his or her spoon spelling out the calamities&amp;rsquo; titles in Alpha-Bits (&amp;ldquo;MONSTER&amp;rdquo;, &amp;ldquo;TORNADO&amp;rdquo;, &amp;ldquo;BOA CONSTRICTOR&amp;rdquo;), declare, &amp;ldquo;I ate &amp;rsquo;em!&amp;rdquo;, and shovel the coveted sweet crunchiness down the hatch. The monster/villain/brute would promptly disappear. It was magical.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Gas Pump Mashup: Software and Signware</title>
				<link>https://grailbox.com/posts/gas-pump-mashup-software-and-signware/</link>
				<pubDate>Mon, 01 Jul 2013 16:38:00 +0000</pubDate>
				<guid>https://grailbox.com/posts/gas-pump-mashup-software-and-signware/</guid>
				<description>&lt;p&gt;I was filling my gas tank the other day and saw this sign on the pump:&lt;/p&gt;&#xA;&lt;img src=&#34;http://www.grailbox.com/wp-content/uploads/2013/07/gas_pump.png&#34; title=&#34;gas_pump.png&#34; data-border=&#34;0&#34; width=&#34;400&#34; height=&#34;533&#34; alt=&#34;Gas pump&#34; /&gt;&#xA;&lt;p&gt;Apparently, it&amp;rsquo;s easier and cheaper to slap a sign on a pump than to fix the software.&lt;/p&gt;&#xA;&lt;p&gt;I puzzled over this bug a bit; why would a gas pump refer to high-ankled footwear or English trunks? Then I realized it probably refers to &amp;ldquo;Insert Boot Disk&amp;rdquo;&amp;ndash;I guess there&amp;rsquo;s some corruption when accessing the string table, perhaps, and sometimes the pump displays the wrong string when prompting for a ZIP code.&lt;/p&gt;</description>
			</item>
			<item>
				<title>CodeFest 2013</title>
				<link>https://grailbox.com/posts/codefest-2013/</link>
				<pubDate>Mon, 01 Jul 2013 10:54:59 +0000</pubDate>
				<guid>https://grailbox.com/posts/codefest-2013/</guid>
				<description>&lt;p&gt;Last Friday, the operations and infrastructure folks where I work were swinging the non-production environments to a new datacenter. The development managers decided to use this opportunity to challenge the developers to a &amp;ldquo;codefest&amp;rdquo;&amp;ndash;a 1-day programming challenge. The rules boiled down to:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;You must come up with your idea beforehand and submit for approval&lt;/li&gt;&#xA;&lt;li&gt;Teams could be 2-5 people&lt;/li&gt;&#xA;&lt;li&gt;You cannot write ANY code beforehand, but could set up your environment, install libraries, etc.&lt;/li&gt;&#xA;&lt;li&gt;Coding starts promptly at 8:00 AM and ends precisely at 4:00 PM&lt;/li&gt;&#xA;&lt;li&gt;Scoring criteria:&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Completeness: 33%&lt;/li&gt;&#xA;&lt;li&gt;Code Quality: 33%&lt;/li&gt;&#xA;&lt;li&gt;Cool Factor: 34%&lt;/li&gt;&#xA;&lt;li&gt;Bonus: Usefulness to the company: 1-5%&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;Cash prizes awarded to the top three projects.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;What a great idea! I was amazed to see what sorts of projects people came up with, and to see the execution of a finished app in 8 hours. Here are some of the apps produced:&lt;/p&gt;</description>
			</item>
			<item>
				<title>A Window into Education</title>
				<link>https://grailbox.com/posts/a-window-into-education/</link>
				<pubDate>Wed, 08 May 2013 13:44:27 +0000</pubDate>
				<guid>https://grailbox.com/posts/a-window-into-education/</guid>
				<description>&lt;p&gt;My 6th-grade daughter currently home-schools, taking her classes online with Florida Virtual School (FLVS). She started the school year using my wife&amp;rsquo;s MacBook Air, but couldn&amp;rsquo;t get the FLVS software working. My wife called Tech Support, and they told her they don&amp;rsquo;t support Mac OS X. We tried her on a Linux desktop for awhile, but the wireless connection kept dropping at inopportune times, so I finally broke down and dropped $800 on an HP laptop that runs Windows 8. It&amp;rsquo;s a little slow&amp;ndash;I should have bought an SSD&amp;ndash;but it&amp;rsquo;s working.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Give Tyler His Senior Year</title>
				<link>https://grailbox.com/posts/give-tyler-his-senior-year/</link>
				<pubDate>Mon, 06 May 2013 07:27:24 +0000</pubDate>
				<guid>https://grailbox.com/posts/give-tyler-his-senior-year/</guid>
				<description>&lt;p&gt;Tyler Anderson is a boy I&amp;rsquo;ve known most of his life. When he was an infant, an aneurysm burst in his brain, and he had to fight for his life. Now, he is fighting for something most people are freely given: a senior year of high school. You can read more here:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.facebook.com/pages/Give-Tyler-His-Senior-Year/560967097269111?hc_location=stream&#34;&gt;https://www.facebook.com/pages/Give-Tyler-His-Senior-Year/560967097269111?hc_location=stream&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Here&amp;rsquo;s the email I sent to Mason Davis (&lt;a href=&#34;mailto:davisw2@duvalschools.org&#34;&gt;davisw2@duvalschools.org&lt;/a&gt;) and Jason Fischer (&lt;a href=&#34;mailto:fischerj@duvalschools.org&#34;&gt;fischerj@duvalschools.org&lt;/a&gt;).&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I have known Tyler Anderson since he was an infant. I was in the hospital with him the night the aneurysm burst in his brain. I watched his parents face his near-certain death. I saw the stitching on his head, after his operation, that made his head look like some grotesque, over-stuffed softball. I couldn&amp;rsquo;t imagine much hope for him.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Why your password can’t have symbols—or be longer than 16 characters | Ars Technica</title>
				<link>https://grailbox.com/posts/why-your-password-cant-have-symbols-or-be-longer-than-16-characters-ars-technica/</link>
				<pubDate>Thu, 02 May 2013 09:48:27 +0000</pubDate>
				<guid>https://grailbox.com/posts/why-your-password-cant-have-symbols-or-be-longer-than-16-characters-ars-technica/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://arstechnica.com/security/2013/04/why-your-password-cant-have-symbols-or-be-longer-than-16-characters/?buffer_share=19ce7&amp;amp;utm_source=buffer&amp;amp;utm_medium=appdotnet&amp;amp;utm_campaign=Buffer%253A%252Blars%252Bon%252Bappdotnet&#34;&gt;Why your password can’t have symbols—or be longer than 16 characters | Ars Technica&lt;/a&gt;: &amp;ldquo;The password creation process on different websites can be a bit like visiting foreign countries with unfamiliar social customs.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;(Via. &lt;a href=&#34;https://alpha.app.net/lars&#34;&gt;@lars on App.net&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;When I was young, I remembered everything. Now I am old, and I remember nothing. And I&amp;rsquo;ve surrendered to password madness. I&amp;rsquo;ve stored all my passwords in &lt;a href=&#34;http://rubygems.org/gems/safe&#34;&gt;safe&lt;/a&gt; since 2007, with my encrypted data file in Dropbox, so I can access it from any machine that runs Ruby. This way, I have to remember only one password, which is long and complex and just onerous enough to type that I feel safe without feeling overburdened.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Seeking inspiration? | Derek Sivers</title>
				<link>https://grailbox.com/posts/seeking-inspiration-derek-sivers/</link>
				<pubDate>Tue, 23 Apr 2013 13:56:22 +0000</pubDate>
				<guid>https://grailbox.com/posts/seeking-inspiration-derek-sivers/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://sivers.org/io&#34;&gt;Seeking inspiration? | Derek Sivers&lt;/a&gt;: &amp;ldquo;Because nothing is truly inspiring unless you apply it to your work.&lt;/p&gt;&#xA;&lt;p&gt;In other words, your work, itself, is the inspiration.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;Stop thinking about it. Stop reading about it. Stop talking about it. Just start doing. You can go back to the thinking, reading, and talking after you&amp;rsquo;ve done something about what you&amp;rsquo;ve thought, read, and talked about.&lt;/p&gt;</description>
			</item>
			<item>
				<title>More on &#34;Where next for Grails&#34;? • GRAILS.IO</title>
				<link>https://grailbox.com/posts/more-on-where-next-for-grails-%e2%80%a2-grails-io/</link>
				<pubDate>Mon, 22 Apr 2013 09:53:14 +0000</pubDate>
				<guid>https://grailbox.com/posts/more-on-where-next-for-grails-%e2%80%a2-grails-io/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://grails.io/post/48599814766/more-on-where-next-for-grails&#34;&gt;More on &amp;ldquo;Where next for Grails&amp;rdquo;? • GRAILS.IO&lt;/a&gt;: &amp;ldquo;Grails 3.0 will be a reinvention of the framework that you love, and we will be making some hard decisions about what we support in terms of backwards compatibility. With Grails 3.0 we plan to allow the creation of applications in different architectural styles. Servlet API applications will always be supported, but we plan to make ‘create-app’ extensible, so that Grails can be used to create a range of types of applications (Batch, NIO, Netty, ‘static void main’ etc.).&amp;rdquo;&lt;/p&gt;</description>
			</item>
			<item>
				<title>LessConf is Dead, Long Live LessConf!</title>
				<link>https://grailbox.com/posts/lessconf-is-dead-long-live-lessconf/</link>
				<pubDate>Sun, 14 Apr 2013 09:15:01 +0000</pubDate>
				<guid>https://grailbox.com/posts/lessconf-is-dead-long-live-lessconf/</guid>
				<description>&lt;p&gt;Today begins the last day of the last LessConf. Ever. And we mourn her passing.&lt;/p&gt;&#xA;&lt;p&gt;Although Steve and Allan, Lords of LessConf, have stated clearly that 2013 marks the last LessConf, they haven&amp;rsquo;t explained why the run ends today. Is it too much work? Are they just tired of it and ready to move on? Does it drain them emotionally, physically, financially, or otherwise? Too burdensome on their families? Too much distraction to their core business? Have they tired of trying to top themselves, year after year, and fear the pity given to aging athletes who hang on too long? They may explain someday &amp;ndash; perhaps even today &amp;ndash; but they may not even know themselves.&lt;/p&gt;</description>
			</item>
			<item>
				<title>iPhone 6 – Marco.org</title>
				<link>https://grailbox.com/posts/iphone-6-marco-org/</link>
				<pubDate>Wed, 10 Apr 2013 11:09:21 +0000</pubDate>
				<guid>https://grailbox.com/posts/iphone-6-marco-org/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://www.marco.org/2013/04/09/iphone-6&#34;&gt;iPhone 6 – Marco.org&lt;/a&gt;: &amp;ldquo;They could release a revolutionary 60-inch 4K TV for $99 with built-in nanobots to assemble and dispense free smartwatches, and people would complain that it should cost $49 and the nanobots aren’t open enough.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;Well-crafted line.&lt;/p&gt;</description>
			</item>
			<item>
				<title>A $5 app isn&#39;t expensive: Customers need to help fix the App Store economy | Macworld</title>
				<link>https://grailbox.com/posts/a-5-app-isnt-expensive-customers-need-to-help-fix-the-app-store-economy-macworld/</link>
				<pubDate>Fri, 05 Apr 2013 09:27:45 +0000</pubDate>
				<guid>https://grailbox.com/posts/a-5-app-isnt-expensive-customers-need-to-help-fix-the-app-store-economy-macworld/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://www.macworld.com/article/2032847/a-5-app-isnt-expensive-customers-need-to-help-fix-the-app-store-economy.html&#34;&gt;A $5 app isn&amp;rsquo;t expensive: Customers need to help fix the App Store economy | Macworld&lt;/a&gt;: &amp;ldquo;You don’t buy a Kindle just to enjoy the dictionary and manual that come pre-installed on the device. You shouldn’t buy an iPhone to enjoy only free apps, either. You’re cheating yourself, all because we’ve become conditioned to feeling that $5 is a lot to spend on an app. It’s okay to pay for good products.&amp;rdquo;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Introducing Wry: A Command-line App.net Client</title>
				<link>https://grailbox.com/posts/introducing-wry-a-command-line-app-net-client/</link>
				<pubDate>Thu, 04 Apr 2013 12:57:32 +0000</pubDate>
				<guid>https://grailbox.com/posts/introducing-wry-a-command-line-app-net-client/</guid>
				<description>&lt;p&gt;I&amp;rsquo;ve released a command-line App.net client for Mac OS X: Wry. Its home page is &lt;a href=&#34;http://grailbox.com/wry&#34;&gt;http://grailbox.com/wry&lt;/a&gt;. It&amp;rsquo;s released under the MIT License, and is hosted on github at &lt;a href=&#34;https://github.com/hoop33/wry&#34;&gt;https://github.com/hoop33/wry&lt;/a&gt;. Check it out, and let me know what you think!&lt;/p&gt;</description>
			</item>
			<item>
				<title>Standing Desks</title>
				<link>https://grailbox.com/posts/standing-desks/</link>
				<pubDate>Thu, 07 Feb 2013 16:02:35 +0000</pubDate>
				<guid>https://grailbox.com/posts/standing-desks/</guid>
				<description>&lt;p&gt;They just added a standing desk to our scrum room, and I&amp;rsquo;m excited to try it out. It&amp;rsquo;s wide enough for two people, and we plan to take turns to give it a try to see how we like it. I&amp;rsquo;ve never used a standing desk, though I often use my laptop at home while standing at the counter, so I&amp;rsquo;m not starting cold. I hope it keeps me healthier&amp;ndash;and that standing while coding doesn&amp;rsquo;t make me all sweaty or something.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Application Idea: Virtualize Cloud Storage</title>
				<link>https://grailbox.com/posts/application-idea-virtualize-cloud-storage/</link>
				<pubDate>Fri, 04 Jan 2013 16:32:18 +0000</pubDate>
				<guid>https://grailbox.com/posts/application-idea-virtualize-cloud-storage/</guid>
				<description>&lt;p&gt;I have a Dropbox Pro account with 107.5GB of storage, an iCloud account with 15GB of storage, and free accounts with Box (50GB), SpiderOak (2GB), GDrive (5GB), SkyDrive (7GB), ASUS WebStorage (8.5GB), Cubby (5GB), and UbuntuOne (5GB). I have plenty of cloud storage space. What I don&amp;rsquo;t have is a good way to manage that space.&lt;/p&gt;&#xA;&lt;p&gt;Each of those cloud storage options operates as an island. Most create a directory in my home folder that its daemon syncs to the cloud. I can set preferences on my various devices for what gets synced inside that folder, but that folder is its own beast. If I want to save something to the cloud, I have to decide which cloud service to sync to and either save to that directory or otherwise upload to that service.&lt;/p&gt;</description>
			</item>
			<item>
				<title>GeekTool Won&#39;t Let Me Drag an Icon to the Desktop</title>
				<link>https://grailbox.com/posts/geektool-wont-let-me-drag-an-icon-to-the-desktop/</link>
				<pubDate>Tue, 20 Nov 2012 17:16:21 +0000</pubDate>
				<guid>https://grailbox.com/posts/geektool-wont-let-me-drag-an-icon-to-the-desktop/</guid>
				<description>&lt;p&gt;TL;DR &amp;ndash; Turn off Path Finder desktop to use GeekTool.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve been meaning to install GeekTool on my new Mac that I bought, um, over two years ago. Time flies. Anyway, I installed it from the App Store, ran it, and tried to drag an icon to my desktop as the instructions say. I kept experiencing these symptoms:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;When opening GeekTool, I am welcomed to a blank Properties box with just &amp;ldquo;Geeklet Settings&amp;rdquo;. Many tutorials have told me to drag either &amp;ldquo;file&amp;rdquo; &amp;ldquo;Images or &amp;ldquo;Shel&amp;rdquo; onto the desktop. I do this and nothing happens. The little black box that appears when you click and drag bounces back up to the GeekTool 3 preference box.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Microsoft Doesn&#39;t Want Me Using Windows 8</title>
				<link>https://grailbox.com/posts/microsoft-doesnt-want-me-using-windows-8/</link>
				<pubDate>Tue, 20 Nov 2012 13:59:09 +0000</pubDate>
				<guid>https://grailbox.com/posts/microsoft-doesnt-want-me-using-windows-8/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://windows.microsoft.com/en-US/windows-8/upgrade-to-windows-8#section_5&#34;&gt;Upgrade to Windows 8 - Microsoft Windows&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Purchasing a full version of Windows 8&lt;/p&gt;&#xA;&lt;p&gt;If you want to build your own PC and install Windows 8 or Windows 8 Pro, or want an additional operating system running in either a local virtual machine or separate partition (including a Mac), you can purchase the Windows 8 or Windows 8 Pro System Builder products (OEM versions). If available in your country or region, Windows 8 and Windows 8 Pro System Builder products can be purchased at participating stores, you&amp;rsquo;ll need to ask a sales rep for more information. This version does not include customer support.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Kill the Password: Why a String of Characters Can&#39;t Protect Us Anymore | Gadget Lab | Wired.com</title>
				<link>https://grailbox.com/posts/kill-the-password-why-a-string-of-characters-cant-protect-us-anymore-gadget-lab-wired-com/</link>
				<pubDate>Thu, 15 Nov 2012 11:25:04 +0000</pubDate>
				<guid>https://grailbox.com/posts/kill-the-password-why-a-string-of-characters-cant-protect-us-anymore-gadget-lab-wired-com/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://www.wired.com/gadgetlab/2012/11/ff-mat-honan-password-hacker/all/&#34;&gt;Kill the Password: Why a String of Characters Can&amp;rsquo;t Protect Us Anymore | Gadget Lab | Wired.com&lt;/a&gt;: &amp;ldquo;Think of the dilemma this way: Any password-reset system that will be acceptable to a 65-year-old user will fall in seconds to a 14-year-old hacker.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;Mat Honan nails it: the password system is irretrievably broken, and the only security any of us really have is our relative anonymity. We aren&amp;rsquo;t hacked because we don&amp;rsquo;t matter, not because our defenses are too strong. And we don&amp;rsquo;t get to decide if and when we matter enough to be hacked.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Designing by Making: your process for arranging furniture can point toward a good process for UI design</title>
				<link>https://grailbox.com/posts/designing-by-making-your-process-for-arranging-furniture-can-point-toward-a-good-process-for-ui-design/</link>
				<pubDate>Wed, 14 Nov 2012 10:12:45 +0000</pubDate>
				<guid>https://grailbox.com/posts/designing-by-making-your-process-for-arranging-furniture-can-point-toward-a-good-process-for-ui-design/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://miksovsky.blogs.com/flowstate/2012/11/designing-by-making.html&#34;&gt;Designing by Making: your process for arranging furniture can point toward a good process for UI design&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Many contemporary design process artifacts like field interviews, a wall of post-it notes, and paper prototypes reflect an increasingly antiquated premise: that building a real thing is much more expensive than producing a design. &lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Later:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Much software is still designed this way, even though the economics of user interface implementation have changed radically. The effort required to create useful, functional, beautiful, reliable, and performant software application user interfaces has been dropping for years, and this trend will continue for the foreseeable future.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Paper Passion, A Perfume That Smells Like Books For Booklovers</title>
				<link>https://grailbox.com/posts/paper-passion-a-perfume-that-smells-like-books-for-booklovers/</link>
				<pubDate>Fri, 09 Nov 2012 18:27:40 +0000</pubDate>
				<guid>https://grailbox.com/posts/paper-passion-a-perfume-that-smells-like-books-for-booklovers/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://laughingsquid.com/paper-passion-a-perfume-that-smells-like-books-for-booklovers/&#34;&gt;Paper Passion, A Perfume That Smells Like Books For Booklovers&lt;/a&gt;: &amp;ldquo;Paper Passion is a perfume formulated to smell like books, meant to appeal to booklovers.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;From my niece Daisy.&lt;/p&gt;&#xA;&lt;p&gt;I wonder if they have a Kindle version . . . .&lt;/p&gt;</description>
			</item>
			<item>
				<title>My Phone WANTS Me to Text and Drive</title>
				<link>https://grailbox.com/posts/my-phone-wants-me-to-text-and-drive/</link>
				<pubDate>Fri, 09 Nov 2012 14:47:13 +0000</pubDate>
				<guid>https://grailbox.com/posts/my-phone-wants-me-to-text-and-drive/</guid>
				<description>&lt;p&gt;While I was driving to work today, my pants pocket buzzed. &amp;ldquo;Incoming,&amp;rdquo; my iPhone nudged, and then awaited my response. And I knew my iPhone wasn&amp;rsquo;t going to tell me again, whatever the message, until I pulled it out of my pocket and looked at its screen. I had three choices:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Pull my phone out of my pocket, look at the message, and respond.&lt;/li&gt;&#xA;&lt;li&gt;Pull my phone out of my pocket, look at the message, and then respond once I parked.&lt;/li&gt;&#xA;&lt;li&gt;Leave my phone in my pocket and wait until I parked to look at the message and respond.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Option #1 clearly holds the most danger, as the many &amp;ldquo;Don&amp;rsquo;t Text and Drive&amp;rdquo; campaigns attest. Options #2 and #3, however, require reliance on my increasingly less reliable memory to remember to respond to a buzz that had been stilled for a longer time than my short-term memory can contain. I have a hard enough time remembering my destination while driving, as my passengers will lament, and that seems a tad more important when captaining a car than remembering that my phone once upon a time wiggled. Do you see my dilemma?&lt;/p&gt;</description>
			</item>
			<item>
				<title>Everything&#39;s broken and nobody&#39;s upset /via @shanselman</title>
				<link>https://grailbox.com/posts/everythings-broken-and-nobodys-upset-via-shanselman/</link>
				<pubDate>Mon, 17 Sep 2012 15:50:55 +0000</pubDate>
				<guid>https://grailbox.com/posts/everythings-broken-and-nobodys-upset-via-shanselman/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://feedproxy.google.com/~r/ScottHanselman/~3/wCMZpfs9yKk/EverythingsBrokenAndNobodysUpset.aspx&#34;&gt;Everything&amp;rsquo;s broken and nobody&amp;rsquo;s upset&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Here&amp;rsquo;s the worst part, I didn&amp;rsquo;t spend any time on the phone with anyone about these issues. I didn&amp;rsquo;t file bugs, send support tickets or email teams. Instead, I just Googled around and saw one of &lt;strong&gt;two&lt;/strong&gt;  possible scenarios for each issue.&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;No one has ever seen this issue. You&amp;rsquo;re alone and no one cares.&lt;/li&gt;&#xA;&lt;li&gt;Everyone has seen this issue. No one from the company believes everyone. You&amp;rsquo;re with a crowd and no one cares.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Sadly, both of these scenarios ended in one feeling. Software doesn&amp;rsquo;t work and no one cares.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Fixing Wireless in Linux, and Why This Should Matter to Apple</title>
				<link>https://grailbox.com/posts/fixing-wireless-in-linux-and-why-this-should-matter-to-apple/</link>
				<pubDate>Thu, 30 Aug 2012 13:24:10 +0000</pubDate>
				<guid>https://grailbox.com/posts/fixing-wireless-in-linux-and-why-this-should-matter-to-apple/</guid>
				<description>&lt;p&gt;In &lt;a href=&#34;http://www.grailbox.com/2012/05/installing-cisco-linksys-ae2500-wireless-adapter-in-linux/&#34;&gt;this post&lt;/a&gt;, I talked about my travails getting my son&amp;rsquo;s USB wireless adapter working in Linux. A few weeks later, it stopped working. Puzzling. I opened a terminal and ran:&lt;/p&gt;&#xA;&lt;p&gt;lsusb&lt;/p&gt;&#xA;&lt;p&gt;The computer duly reported that it saw the USB wireless adapter. Then, I ran:&lt;/p&gt;&#xA;&lt;p&gt;ndiswrapper -l&lt;/p&gt;&#xA;&lt;p&gt;Yup, the driver was loaded. I checked /etc/modules and verified that ndiswrapper was listed. At that point, I had dangerously stretched my sysadmin abilities. Frustration descended, I set the computer aside, bought my son a MacBook Air, and sent him to college.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Good Job Apple, You (Screwed) the World - (by @baekdal)</title>
				<link>https://grailbox.com/posts/good-job-apple-you-screwed-the-world-by-baekdal/</link>
				<pubDate>Mon, 27 Aug 2012 11:15:16 +0000</pubDate>
				<guid>https://grailbox.com/posts/good-job-apple-you-screwed-the-world-by-baekdal/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://www.baekdal.com/opinion/good-job-apple-you-fucked-the-world/&#34;&gt;Good Job Apple, You (Screwed) the World - (by @baekdal)&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;The idea that one company can own non-inventions is absolutely appalling to me.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://www.baekdal.com&#34;&gt;Baekdal.com&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Nails it. Yes, Samsung was lazy and unoriginal and brazenly copied far too much, but this is not a victory for consumers. Or developers. This is a victory for big companies and patent trolls and lawyers. As always, money trumps common sense and the common good.&lt;/p&gt;</description>
			</item>
			<item>
				<title>More on Wang Ting -- the copyright infringer swiping apps and selling them on the App Store</title>
				<link>https://grailbox.com/posts/more-on-wang-ting-the-copyright-infringer-swiping-apps-and-selling-them-on-the-app-store/</link>
				<pubDate>Fri, 17 Aug 2012 16:10:16 +0000</pubDate>
				<guid>https://grailbox.com/posts/more-on-wang-ting-the-copyright-infringer-swiping-apps-and-selling-them-on-the-app-store/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://iphonedevelopment.blogspot.com/2012/08/more-on-wang-ting.html&#34;&gt;More on Wang Ting&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;It&amp;rsquo;s frustrating that Apple has no problem playing gatekeeper and keeping apps out of the store for the most trivial and arbitrary of reasons, but won&amp;rsquo;t play gatekeeper when presented with clear evidence of repeated copyright infringement. A serial infringer who is stealing the creative output of dozens of developers, designers, and publishers gets a pass because that&amp;rsquo;s the legal path of least resistance for Apple.&lt;/p&gt;</description>
			</item>
			<item>
				<title>How to turn an upset customer into a happy customer</title>
				<link>https://grailbox.com/posts/how-to-turn-an-upset-customer-into-a-happy-customer/</link>
				<pubDate>Thu, 09 Aug 2012 10:55:59 +0000</pubDate>
				<guid>https://grailbox.com/posts/how-to-turn-an-upset-customer-into-a-happy-customer/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://feedproxy.google.com/~r/LessEverything/~3/9ro1SmpKz6w/&#34;&gt;How to turn an upset customer into a happy customer&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;To be generous and giving means a few people will take advantage of your kindness, but this shouldn&amp;rsquo;t stop you. Everything, even a complaint, is an opportunity. Be generous and humble.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://lesseverything.com/blog/&#34;&gt;less everything - Home&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Good read. From good people.&lt;/p&gt;</description>
			</item>
			<item>
				<title>The 100 Top Rated Amazon Items /via @macdrifter</title>
				<link>https://grailbox.com/posts/the-100-top-rated-amazon-items-via-macdrifter/</link>
				<pubDate>Tue, 07 Aug 2012 14:03:26 +0000</pubDate>
				<guid>https://grailbox.com/posts/the-100-top-rated-amazon-items-via-macdrifter/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://www.macdrifter.com/2012/08/the-100-top-rated-amazon-items-link.html&#34;&gt;The 100 Top Rated Amazon Items [Link]&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;My Amazon login experience is starting feel like walking past a cell phone reseller booth in a mall.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://www.macdrifter.com&#34;&gt;Macdrifter&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;One person&amp;rsquo;s cut at a different sort of landing page for Amazon&amp;ndash;one that displays the 100 current top-rated items. Too busy for my tastes (too many items, too many social sharing buttons), but nice to see a different take. The line about the cell phone reseller booth, though, is classic.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Great work Visa, now I hate you</title>
				<link>https://grailbox.com/posts/great-work-visa-now-i-hate-you/</link>
				<pubDate>Tue, 07 Aug 2012 13:12:38 +0000</pubDate>
				<guid>https://grailbox.com/posts/great-work-visa-now-i-hate-you/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://modern-products.tumblr.com/post/28855608626/great-work-visa-now-i-hate-you-london-olympics&#34;&gt;Great work Visa, now I hate you&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;**If you want people to like you, give them something. If you want people to hate you, take something away from them. **&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://news.ycombinator.com/&#34;&gt;Hacker News&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Sage advice. Remember it well when you&amp;rsquo;re developing software&amp;ndash;adding features is usually a long-term commitment, as the cost to remove them can be astounding.&lt;/p&gt;</description>
			</item>
			<item>
				<title>XOXCO - Is it time for password-less login?</title>
				<link>https://grailbox.com/posts/xoxco-is-it-time-for-password-less-login/</link>
				<pubDate>Tue, 31 Jul 2012 18:20:04 +0000</pubDate>
				<guid>https://grailbox.com/posts/xoxco-is-it-time-for-password-less-login/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://notes.xoxco.com/post/27999787765/is-it-time-for-password-less-login&#34;&gt;XOXCO - Is it time for password-less login?&lt;/a&gt;: &amp;ldquo;I think an even better solution would be to remove the password completely, allowing users to login with only an email address. Each time a user needs to login, they enter their email address and receive a login link via email.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;I don&amp;rsquo;t know how well this would be accepted, but I LIKE the way this guy thinks. I&amp;rsquo;m SO sick of passwords and managing different passwords and then reading about how some hacker has dumped them all to a random website anyway. Absolutely worth a read and a re-examination of your approach.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Mom Charged With Hacking School Computers to Change Children&#39;s Grades - ABC News</title>
				<link>https://grailbox.com/posts/mom-charged-with-hacking-school-computers-to-change-childrens-grades-abc-news/</link>
				<pubDate>Tue, 24 Jul 2012 14:34:49 +0000</pubDate>
				<guid>https://grailbox.com/posts/mom-charged-with-hacking-school-computers-to-change-childrens-grades-abc-news/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://abcnews.go.com/US/mom-charged-hacking-school-computers-change-childrens-grades/story?id=16812838#.UA7p0Hfe4oP&#34;&gt;Mom Charged With Hacking School Computers to Change Children&amp;rsquo;s Grades - ABC News&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;She has been accused of changing her daughter&amp;rsquo;s failing grade from an F to an M for &amp;ldquo;medical&amp;rdquo; in June 2010, and then changing her son&amp;rsquo;s 98 to a 99 in February 2012, nearly a year after she quit her job as an administrative office secretary to work at another school district.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://abcnews.go.com&#34;&gt;abcnews.go.com&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Apparently, she used the superintendent&amp;rsquo;s ID and password 110 times and banged around the systems pretty indiscriminately. What boggles the mind most, though, is that she bothered to change a 98 to a 99. I wonder if her possible 42 years/$90K was worth it.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Closed for Business</title>
				<link>https://grailbox.com/posts/closed-for-business/</link>
				<pubDate>Tue, 24 Jul 2012 13:33:46 +0000</pubDate>
				<guid>https://grailbox.com/posts/closed-for-business/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://feedproxy.google.com/~r/mattgemmell/rss2/~3/dSC6LO_wPPE/&#34;&gt;Closed for Business&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;A price-tag of one dollar is passive smoking. You’re killing people around you, for your own short-term benefit.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://mattgemmell.com/&#34;&gt;Matt Legend Gemmell&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Love that line. App store bonanzas are rare, and we&amp;rsquo;re seeing more productivity apps fall (see: Sparrow) than rise.&lt;/p&gt;&#xA;&lt;p&gt;You may not agree with everything Gemmell writes here, but you should read it and think. Can you think, for example, of businesses that build Linux apps for a living? Why would Android be any different?&lt;/p&gt;</description>
			</item>
			<item>
				<title>Google snatches up Sparrow team to work on Gmail | Internet &amp; Media - CNET News</title>
				<link>https://grailbox.com/posts/google-snatches-up-sparrow-team-to-work-on-gmail-internet-media-cnet-news/</link>
				<pubDate>Fri, 20 Jul 2012 13:02:02 +0000</pubDate>
				<guid>https://grailbox.com/posts/google-snatches-up-sparrow-team-to-work-on-gmail-internet-media-cnet-news/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://news.cnet.com/8301-1023_3-57476739-93/google-snatches-up-sparrow-team-to-work-on-gmail/&#34;&gt;Google snatches up Sparrow team to work on Gmail | Internet &amp;amp; Media - CNET News&lt;/a&gt;: &amp;ldquo;Leca says that the company will continue to make Sparrow available, and keep it up and running with support, though he did not offer any details about the addition of any new features in the months ahead.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;Here&amp;rsquo;s a snippet of the email I got:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;We will continue to make available our existing products, and we will provide support and critical updates to our users. However, as we’ll be busy with new projects at Google, we do not plan to release new features for the Sparrow apps.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Introducing Ubuntu Web Apps: setting the web free of the browser</title>
				<link>https://grailbox.com/posts/introducing-ubuntu-web-apps-setting-the-web-free-of-the-browser/</link>
				<pubDate>Fri, 20 Jul 2012 09:58:40 +0000</pubDate>
				<guid>https://grailbox.com/posts/introducing-ubuntu-web-apps-setting-the-web-free-of-the-browser/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://blog.canonical.com/2012/07/19/introducing-ubuntu-web-apps-setting-the-web-free-of-the-browser/&#34;&gt;Introducing Ubuntu Web Apps: setting the web free of the browser&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Making web applications behave like their desktop counterparts improves the user experience dramatically; it’s faster and it reduces the proliferation of browser tabs and windows that can quickly make a desktop unmanageable.&lt;/p&gt;&#xA;&lt;p&gt;The apps can even take advantage of Ubuntu’s new HUD system, making it even easier to navigate. So Web properties leap to the forefront of modern UI design, making for amazingly productive, fast and fluid applications on the desktop.&lt;/p&gt;</description>
			</item>
			<item>
				<title>A future full-time job</title>
				<link>https://grailbox.com/posts/a-future-full-time-job/</link>
				<pubDate>Mon, 16 Jul 2012 09:33:02 +0000</pubDate>
				<guid>https://grailbox.com/posts/a-future-full-time-job/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://www.marco.org/2012/07/15/part-time-gig&#34;&gt;A future full-time job&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Realistically, nobody has job security. It’s a myth. Even CEOs don’t have job security (see HP or eBay), except Steve Ballmer, who seems curiously immune to losing his job.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://www.marco.org/&#34;&gt;Marco.org&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Great zinger by Marco Arment!&lt;/p&gt;&#xA;&lt;p&gt;The rest of the post is worth reading as well&amp;ndash;I&amp;rsquo;m reminded of &lt;a href=&#34;http://dangerouslyawesome.com/&#34;&gt;Alex Hillman&amp;rsquo;s JFDI tattoo&lt;/a&gt;. Everything has risks&amp;ndash;Just, um, do it!&lt;/p&gt;</description>
			</item>
			<item>
				<title>Software Inventory -- Feature backlogs</title>
				<link>https://grailbox.com/posts/software-inventory-feature-backlogs/</link>
				<pubDate>Mon, 09 Jul 2012 14:23:24 +0000</pubDate>
				<guid>https://grailbox.com/posts/software-inventory-feature-backlogs/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://www.joelonsoftware.com/items/2012/07/09.html&#34;&gt;Software Inventory&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Every product attracts new feature ideas, and you can’t implement ideas as fast as you can think them up, so you write them down, and this list is called the feature backlog. A lot of the ideas on the backlog are bad ideas, and you merely wrote them down to avoid hurting the feelings of the people who thought them up. Backlogs make everyone feel good.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://www.joelonsoftware.com&#34;&gt;Joel on Software&lt;/a&gt;)&lt;/p&gt;</description>
			</item>
			<item>
				<title>Apple is Limiting the New Google Chrome for iOS. - (by @baekdal)</title>
				<link>https://grailbox.com/posts/apple-is-limiting-the-new-google-chrome-for-ios-by-baekdal/</link>
				<pubDate>Mon, 09 Jul 2012 10:17:20 +0000</pubDate>
				<guid>https://grailbox.com/posts/apple-is-limiting-the-new-google-chrome-for-ios-by-baekdal/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://www.baekdal.com/opinion/apple-is-limiting-the-new-google-chrome-for-ios/&#34;&gt;Apple is Limiting the New Google Chrome for iOS. - (by @baekdal)&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Apple wants control and force people to create native apps, and are thus limiting the performance of web apps in third party apps. There is no reason why the iPhone and iPad comes with two different rendering engines - one for Apple and one for everyone else. This is purely anti-competitor behavior that limits choice and forces people to create native apps.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Cisco provides a lesson: why closed source pwns you</title>
				<link>https://grailbox.com/posts/cisco-provides-a-lesson-why-closed-source-pwns-you/</link>
				<pubDate>Mon, 09 Jul 2012 09:47:49 +0000</pubDate>
				<guid>https://grailbox.com/posts/cisco-provides-a-lesson-why-closed-source-pwns-you/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://esr.ibiblio.org/?p=4441&#34;&gt;Cisco provides a lesson&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;em&gt;This&lt;/em&gt; is why anyone who makes excuses for closed source in network-facing software is not just a fool deluded by shiny marketing but a malignant idiot whose complicity with what those vendors do will injure his neighbors as well as himself.&lt;/p&gt;&#xA;&lt;p&gt;&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;This is why you should demand open source in your router, open source in your operating system, and open source in any application software that is important to your life. Because if you don’t own it, it will &lt;em&gt;surely&lt;/em&gt; own you.&lt;/p&gt;</description>
			</item>
			<item>
				<title>The Case For A 7″ iPod</title>
				<link>https://grailbox.com/posts/the-case-for-a-7%e2%80%b3-ipod/</link>
				<pubDate>Thu, 05 Jul 2012 13:21:53 +0000</pubDate>
				<guid>https://grailbox.com/posts/the-case-for-a-7%e2%80%b3-ipod/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://feedproxy.google.com/~r/macstoriesnet/~3/sEwI2OqN0xU/&#34;&gt;The Case For A 7″ iPod&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;The more I think about it, the more I think these rumors are right, but we’ve all been interpreting them the wrong way. The new 7″ iOS device supposedly coming this fall is not an iPad Mini.&lt;/p&gt;&#xA;&lt;p&gt;It’s a giant iPod touch.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://www.macstories.net&#34;&gt;MacStories&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;An interesting counter to the direction of the rest of the iPad Mini rumors. It answers the nagging question I have with a 7&amp;quot; iPad with the tap targets all squished smaller than my gorilla fingers. I&amp;rsquo;d love to see a mockup of what the iPhone UI on a 7&amp;quot; device would look like.&lt;/p&gt;</description>
			</item>
			<item>
				<title>The Rules of Storytelling According to Pixar</title>
				<link>https://grailbox.com/posts/the-rules-of-storytelling-according-to-pixar/</link>
				<pubDate>Sat, 09 Jun 2012 15:33:34 +0000</pubDate>
				<guid>https://grailbox.com/posts/the-rules-of-storytelling-according-to-pixar/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://io9.com/5916970/the-22-rules-of-storytelling-according-to-pixar&#34;&gt;The Rules of Storytelling According to Pixar&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;#19: Coincidences to get characters into trouble are great; coincidences to get them out of it are cheating.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://news.ycombinator.com/&#34;&gt;Hacker News&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve read too many books that cheat.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Mac Bundle Season</title>
				<link>https://grailbox.com/posts/mac-bundle-season/</link>
				<pubDate>Sat, 09 Jun 2012 12:31:13 +0000</pubDate>
				<guid>https://grailbox.com/posts/mac-bundle-season/</guid>
				<description>&lt;p&gt;I know of four Mac OS X software bundles on sale right now:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://www.mupromo.com/&#34;&gt;MacUpdate&lt;/a&gt; ($49.99)&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Parallels Desktop 7&lt;/li&gt;&#xA;&lt;li&gt;BusyCal&lt;/li&gt;&#xA;&lt;li&gt;ScreenFlow 3&lt;/li&gt;&#xA;&lt;li&gt;Civilization V&lt;/li&gt;&#xA;&lt;li&gt;Jaksta&lt;/li&gt;&#xA;&lt;li&gt;Espionage 3&lt;/li&gt;&#xA;&lt;li&gt;Speed Download 5&lt;/li&gt;&#xA;&lt;li&gt;Attachment Tamer 3&lt;/li&gt;&#xA;&lt;li&gt;KeyCue 6&lt;/li&gt;&#xA;&lt;li&gt;A Better&lt;/li&gt;&#xA;&lt;li&gt;Finder Rename&lt;/li&gt;&#xA;&lt;li&gt;My Living Desktop 5&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://themacbundles.com/&#34;&gt;TheMacBundles&lt;/a&gt; ($39.95)&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Bevy&lt;/li&gt;&#xA;&lt;li&gt;Calibrate&lt;/li&gt;&#xA;&lt;li&gt;CallItADay&lt;/li&gt;&#xA;&lt;li&gt;CuteClips&lt;/li&gt;&#xA;&lt;li&gt;Clean Text&lt;/li&gt;&#xA;&lt;li&gt;DiskTracker&lt;/li&gt;&#xA;&lt;li&gt;FolderGlance&lt;/li&gt;&#xA;&lt;li&gt;FX Photo Studio Pro&lt;/li&gt;&#xA;&lt;li&gt;SMART Utility&lt;/li&gt;&#xA;&lt;li&gt;TopXNotes&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://www.productivemacs.com/&#34;&gt;ProductiveMacs&lt;/a&gt; ($39.99)&#xA;&lt;ul&gt;&#xA;&lt;li&gt;RapidWeaver&lt;/li&gt;&#xA;&lt;li&gt;DEVONthink&lt;/li&gt;&#xA;&lt;li&gt;Printopia&lt;/li&gt;&#xA;&lt;li&gt;MailTags&lt;/li&gt;&#xA;&lt;li&gt;HoudahSpot&lt;/li&gt;&#xA;&lt;li&gt;Trickster&lt;/li&gt;&#xA;&lt;li&gt;MacJournal&lt;/li&gt;&#xA;&lt;li&gt;Voila&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://bundlehunt.com/&#34;&gt;Bundle Hunt&lt;/a&gt; ($49.99)&#xA;&lt;ul&gt;&#xA;&lt;li&gt;iStopMotion 2&lt;/li&gt;&#xA;&lt;li&gt;LittleSnapper&lt;/li&gt;&#xA;&lt;li&gt;TotalFinder&lt;/li&gt;&#xA;&lt;li&gt;Default Folder X&lt;/li&gt;&#xA;&lt;li&gt;Typinator&lt;/li&gt;&#xA;&lt;li&gt;Smashing E-Book Bundle&lt;/li&gt;&#xA;&lt;li&gt;Keyboard Maestro&lt;/li&gt;&#xA;&lt;li&gt;GlyphOcean&lt;/li&gt;&#xA;&lt;li&gt;ThemeFuse&lt;/li&gt;&#xA;&lt;li&gt;PhoneView&lt;/li&gt;&#xA;&lt;li&gt;Picons 1, 2, 3&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve linked to the sites, which link to the apps. None of them are affiliate links&amp;ndash;I have no financial interest in any of this. With this many software deals afloat simultaneously, though, I wanted one place where I could see all the software!&lt;/p&gt;</description>
			</item>
			<item>
				<title>iPhoto iPad tooltips PSD</title>
				<link>https://grailbox.com/posts/iphoto-ipad-tooltips-psd/</link>
				<pubDate>Sat, 09 Jun 2012 12:02:52 +0000</pubDate>
				<guid>https://grailbox.com/posts/iphoto-ipad-tooltips-psd/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://feedproxy.google.com/~r/mattgemmell/rss2/~3/LmcFMX5bUoQ/&#34;&gt;iPhoto iPad tooltips PSD&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Since Apple’s designs tend to heavily influence third-party apps (just as their hardware tends to be copied wholesale by Samsung and HP)&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://mattgemmell.com/&#34;&gt;Matt Legend Gemmell&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Gemmell offers a free PSD download that mimics the tooltips in iPhoto for iOS . . . as well as a bit of well-placed snark.&lt;/p&gt;</description>
			</item>
			<item>
				<title>XVim -- Vim in Xcode</title>
				<link>https://grailbox.com/posts/xvim-vim-in-xcode/</link>
				<pubDate>Tue, 05 Jun 2012 16:27:36 +0000</pubDate>
				<guid>https://grailbox.com/posts/xvim-vim-in-xcode/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://usevim.com/2012/05/23/xvim&#34;&gt;XVim&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I work as a freelance Objective-C developer (amongst other things), so I find myself butting heads with Xcode on a regular basis. Recent releases have integrated several separate applications that betrayed Mac OS&amp;rsquo;s NeXT legacy, which means Xcode now feels almost the exact opposite of Vim.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://usevim.com&#34;&gt;usevim&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Oooh . . . this is intriguing. I try to set everything in my world to vim keybindings, but that hasn&amp;rsquo;t been an option in Xcode. I&amp;rsquo;ll have to give this one a whirl.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Installing Cisco / Linksys AE2500 wireless adapter in linux</title>
				<link>https://grailbox.com/posts/installing-cisco-linksys-ae2500-wireless-adapter-in-linux/</link>
				<pubDate>Tue, 29 May 2012 01:01:55 +0000</pubDate>
				<guid>https://grailbox.com/posts/installing-cisco-linksys-ae2500-wireless-adapter-in-linux/</guid>
				<description>&lt;p&gt;It took me several hours and missteps to convert my son&amp;rsquo;s Windows 7 box to Ubuntu, all because of the wireless adapter. It&amp;rsquo;s a &lt;a href=&#34;http://homesupport.cisco.com/en-us/support/adapters/AE2500/downloads&#34;&gt;Cisco branded Linksys AE2500&lt;/a&gt;. Here&amp;rsquo;s what I learned:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Use the 32-bit version of Ubuntu (actually, I didn&amp;rsquo;t try 64-bit after switching to the source for ndiswrapper).&lt;/li&gt;&#xA;&lt;li&gt;Download the latest ndiswrapper from sourceforge &amp;ndash; follow the instructions at &lt;a href=&#34;http://tinymelinux.com/forum/thread-865-post-3760.html#pid3760&#34;&gt;http://tinymelinux.com/forum/thread-865-post-3760.html#pid3760&lt;/a&gt; to compile and install it.&lt;/li&gt;&#xA;&lt;li&gt;The Windows XP drivers (don&amp;rsquo;t use Vista&amp;rsquo;s or Windows 7&amp;rsquo;s) are &lt;a href=&#34;http://homesupport.cisco.com/en-us/support/adapters/AE2500/downloads&#34;&gt;available at Cisco&amp;rsquo;s site&lt;/a&gt;.&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://help.ubuntu.com/community/WifiDocs/Driver/Ndiswrapper&#34;&gt;This link&lt;/a&gt; was helpful as well &amp;ndash; especially the part to do &amp;ldquo;sudo ndiswrapper -m&amp;rdquo; to automatically load on startup.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;EDIT: The &amp;ldquo;sudo ndiswrapper -m&amp;rdquo; did NOT automatically load on startup; I had to add &amp;ldquo;ndiswrapper&amp;rdquo; to /etc/modules.&lt;/p&gt;</description>
			</item>
			<item>
				<title>If there&#39;s any doubt that developers have moved to Mac OS X . . . .</title>
				<link>https://grailbox.com/posts/if-theres-any-doubt-that-developers-have-moved-to-mac-os-x/</link>
				<pubDate>Sat, 26 May 2012 18:10:18 +0000</pubDate>
				<guid>https://grailbox.com/posts/if-theres-any-doubt-that-developers-have-moved-to-mac-os-x/</guid>
				<description>&lt;p&gt;A Kickstarter project that caused buzz amongst developers is &lt;a href=&#34;http://www.kickstarter.com/projects/ibdknox/light-table&#34;&gt;Light Table&lt;/a&gt;, a development IDE that aims to fundamentally shift how we build software. As of right now, it has 5,726 backers (including me) and pledges of $256,145 (the project&amp;rsquo;s lead, Chris Granger, was seeking $200,000). Paul Graham&amp;rsquo;s YCombinator noticed the project and &lt;a href=&#34;http://www.chris-granger.com/2012/05/17/light-table-is-in-yc/&#34;&gt;included it in its 2012 summer program&lt;/a&gt;. If you develop software, you should follow those links, watch the videos, and find out more.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Three Things That Should Trouble Apple</title>
				<link>https://grailbox.com/posts/three-things-that-should-trouble-apple/</link>
				<pubDate>Fri, 25 May 2012 15:38:46 +0000</pubDate>
				<guid>https://grailbox.com/posts/three-things-that-should-trouble-apple/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://kickingbear.com/blog/archives/305&#34;&gt;Three Things That Should Trouble Apple&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;It’s a tag team wedgie patrol.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://daringfireball.net/&#34;&gt;Daring Fireball&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Great line.&lt;/p&gt;&#xA;&lt;p&gt;I would add a fourth: with their continued emphasis on iOS-ifying Mac OS X, the end of the App Store gold rush for iOS developers, the &lt;a href=&#34;http://www.grailbox.com/2012/05/why-i-bought-coda-2-directly-from-panic-com/&#34;&gt;Mac App Store restrictions&lt;/a&gt;, and other walled garden chicanery, Apple is starting to alienate developers &amp;ndash; which &lt;a href=&#34;http://www.grailbox.com/2012/05/how-steve-ballmer-predicted-the-downfall-of-mac-os-x/&#34;&gt;could have deep consequences&lt;/a&gt;.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Why I Bought Coda 2 Directly From Panic.com</title>
				<link>https://grailbox.com/posts/why-i-bought-coda-2-directly-from-panic-com/</link>
				<pubDate>Thu, 24 May 2012 09:41:25 +0000</pubDate>
				<guid>https://grailbox.com/posts/why-i-bought-coda-2-directly-from-panic-com/</guid>
				<description>&lt;p&gt;With advance hype rivaling Diablo III&amp;rsquo;s, &lt;a href=&#34;http://panic.com/&#34;&gt;Panic&lt;/a&gt; has released the second version of their web development tool, &lt;a href=&#34;http://panic.com/coda/&#34;&gt;Coda&lt;/a&gt;. It&amp;rsquo;s now on sale, as of this morning, for $49 &amp;ndash; a 50% savings that&amp;rsquo;s good only through tomorrow. If you&amp;rsquo;re going to buy it, now&amp;rsquo;s the time.&lt;/p&gt;&#xA;&lt;p&gt;As with several other Mac software vendors, Panic offers Coda 2 both through their own site and through the Mac App Store (MAS). It&amp;rsquo;s the same price to you either way (by Apple edict), but only 70% of the revenue to Panic if you go MAS. The MAS version, however, has one feature that the Panic download doesn&amp;rsquo;t: iCloud sync, which Apple opens only to MAS applications.&lt;/p&gt;</description>
			</item>
			<item>
				<title>How Steve Ballmer Predicted the Downfall of Mac OS X</title>
				<link>https://grailbox.com/posts/how-steve-ballmer-predicted-the-downfall-of-mac-os-x/</link>
				<pubDate>Thu, 17 May 2012 18:01:45 +0000</pubDate>
				<guid>https://grailbox.com/posts/how-steve-ballmer-predicted-the-downfall-of-mac-os-x/</guid>
				<description>&lt;p&gt;Back in the year 2000, &lt;a href=&#34;http://knowyourmeme.com/memes/developers-developers-developers&#34;&gt;Steve Ballmer danced, as they say, like a Monkey Boy&lt;/a&gt;, chanting, &amp;ldquo;Developers! Developers! Developers!&amp;rdquo; in an infinite loop. Sweating like an offensive tackle in August two-a-days, he hopped and pranced and bellowed his devotion to developers. &lt;a href=&#34;http://www.forbes.com/sites/adamhartung/2012/05/12/oops-5-ceos-that-should-have-already-been-fired-cisco-ge-walmart-sears-microsoft/3/&#34;&gt;He may have his struggles running a business&lt;/a&gt;, but Ballmer understands how important developers are to a platform, and that devotion, along with the ever-excellent Visual Studio (yes, I said that without sarcasm), keeps the Windows developer stable stocked with thoroughbreds. &lt;/p&gt;</description>
			</item>
			<item>
				<title>Daring Fireball: iOS Low-Hanging Fruit</title>
				<link>https://grailbox.com/posts/daring-fireball-ios-low-hanging-fruit/</link>
				<pubDate>Sun, 13 May 2012 22:56:13 +0000</pubDate>
				<guid>https://grailbox.com/posts/daring-fireball-ios-low-hanging-fruit/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://daringfireball.net/2012/05/ios_low_hanging_fruit&#34;&gt;Daring Fireball: iOS Low-Hanging Fruit&lt;/a&gt;: &amp;ldquo;iOS is by no means feature-complete. But it’s getting harder to identify the low-hanging fruit — the things you just know Apple has to be working on, not just the stuff you hope they are.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;Good post by &lt;a href=&#34;https://twitter.com/#!/gruber&#34;&gt;John Gruber&lt;/a&gt; that explores the rumor that Apple will break from Google&amp;rsquo;s map data in iOS 6. He then goes on to say:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;What else remains hanging low on the iOS new-features tree, though? I can think of a few:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Two Skeuomorphs: A Radio and a Weight Tracker</title>
				<link>https://grailbox.com/posts/two-skeuomorphs-a-radio-and-a-weight-tracker/</link>
				<pubDate>Fri, 11 May 2012 15:59:19 +0000</pubDate>
				<guid>https://grailbox.com/posts/two-skeuomorphs-a-radio-and-a-weight-tracker/</guid>
				<description>&lt;p&gt;The 2007 &lt;em&gt;Transformers&lt;/em&gt; movie showcased three stars: Megan Fox, Shia LaBeouf, and an all-new, futuristic-but-retro Chevrolet Camaro. All men drooled over Megan Fox, but the car guys moved on to slobbering over the Camaro. Built to hearken the muscle cars from yesteryear, the Camaro combines old-school styling with today&amp;rsquo;s technological advancements. The dash, for example, incorporates oversized analog dials and digital readouts. The body shape is pure muscle, yet the windows automatically open slightly when the doors open and roll back up when the doors close to reduce cabin pressure. And it&amp;rsquo;s rollicking fun to drive.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Eclipse: Insufficient access privileges to apply this update.</title>
				<link>https://grailbox.com/posts/eclipse-insufficient-access-privileges-to-apply-this-update/</link>
				<pubDate>Wed, 18 Apr 2012 14:14:27 +0000</pubDate>
				<guid>https://grailbox.com/posts/eclipse-insufficient-access-privileges-to-apply-this-update/</guid>
				<description>&lt;p&gt;I use Eclipse for all my Java development (and Mac OS X for &lt;strong&gt;all&lt;/strong&gt; my development). Today, a bug with portlet deployment to Liferay required me to update my Eclipse installation. For awhile, I&amp;rsquo;d seen (and ignored) an error when I ran Eclipse&amp;rsquo;s Check For Updates: the Eclipse IDE for Java EE Developers selection was grayed out with the message:&lt;/p&gt;&#xA;&lt;p&gt;Insufficient access privileges to apply this update.&lt;/p&gt;&#xA;&lt;p&gt;I assumed that the IT group here at work hadn&amp;rsquo;t given my user permissions on the &lt;code&gt;/Applications/eclipse&lt;/code&gt; directory, and I&amp;rsquo;d never been motivated to investigate. Today, that motivation came. I quickly determined the fallacy of my assumption and, with nowhere else really to turn, I ran to Google. I found this:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Learn to Read the Source, Luke</title>
				<link>https://grailbox.com/posts/learn-to-read-the-source-luke/</link>
				<pubDate>Tue, 17 Apr 2012 09:05:53 +0000</pubDate>
				<guid>https://grailbox.com/posts/learn-to-read-the-source-luke/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://www.codinghorror.com/blog/2012/04/learn-to-read-the-source-luke.html&#34;&gt;Learn to Read the Source, Luke&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;No matter what the documentation says, the source code is the ultimate truth, the best and most definitive and up-to-date documentation you&amp;rsquo;re likely to find.&lt;/strong&gt; This will be true &lt;em&gt;forever&lt;/em&gt;, so the sooner you come to terms with this, the better off you&amp;rsquo;ll be as a software developer.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://www.codinghorror.com/blog/&#34;&gt;Coding Horror&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Jeff Atwood&amp;rsquo;s take on a post by &lt;a href=&#34;http://blog.brandonbloom.name/&#34;&gt;Brandon Bloom&lt;/a&gt;. This is my beef with comments as well&amp;ndash;some folks push &amp;ldquo;well-commented&amp;rdquo; code, but comments rot disproportionally faster than the code they describe. No one opens bugs on comments. No one writes unit tests for comments.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Developer Interview Advice from a Designer</title>
				<link>https://grailbox.com/posts/developer-interview-advice-from-a-designer/</link>
				<pubDate>Thu, 05 Apr 2012 11:01:37 +0000</pubDate>
				<guid>https://grailbox.com/posts/developer-interview-advice-from-a-designer/</guid>
				<description>&lt;p&gt;I was chatting with one of the designers I work with about his interview experience when he was hired, and he remarked how interesting it was that much of the interview focus was on how his personality and work patterns would fit with the team, and less on his design skills or resume. He asked me what developer interviews here were like, and I said that, back when I did interviews, we made interviewees write code on the white board. He pondered this a few moments, and then said, &amp;ldquo;Hmm. You should have them write some HTML, too.&amp;rdquo;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Debugging Through Google is Rotting My Brain</title>
				<link>https://grailbox.com/posts/debugging-through-google-is-rotting-my-brain/</link>
				<pubDate>Tue, 03 Apr 2012 15:23:46 +0000</pubDate>
				<guid>https://grailbox.com/posts/debugging-through-google-is-rotting-my-brain/</guid>
				<description>&lt;p&gt;A couple of weeks ago I built a National Provider Identifier (&lt;a href=&#34;https://nppes.cms.hhs.gov/NPPES/NPIRegistryHome.do&#34;&gt;NPI&lt;/a&gt;) lookup app as a proof of concept for the &lt;a href=&#34;https://vaadin.com/home&#34;&gt;Vaadin&lt;/a&gt; portlet stuff we&amp;rsquo;re doing. For the search portion, it used a publicly-available, for-pay REST service to search for a provider&amp;rsquo;s NPI. Our architect, however, pushed me to the &lt;a href=&#34;https://www.cms.gov/NationalProvIdentStand/06a_DataDissemination.asp&#34;&gt;freely downloadable NPI data file&lt;/a&gt; and told me to set up an &lt;a href=&#34;http://lucene.apache.org/solr/&#34;&gt;Apache Solr&lt;/a&gt; instance to do the search.&lt;/p&gt;&#xA;&lt;p&gt;I know bupkis about Apache Solr except that it embraces the Flickr spelling approach and it lets you search for things, but an online tutorial and a few Ruby scripts later and I had a working Solr instance on my local machine, complete with the entire NPI database. Spinning up Solr with the NPI database on the target Linux server proved just as easy. When I discussed Solr startup scripts with the architect on the project, however, eerie background music started playing and I knew I was in for trouble. He told me to install the Solr webapp and run it on the app server instead of as a standalone server.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Check out my site later--I&#39;ll remind you!</title>
				<link>https://grailbox.com/posts/check-out-my-site-later-ill-remind-you/</link>
				<pubDate>Mon, 12 Mar 2012 15:18:57 +0000</pubDate>
				<guid>https://grailbox.com/posts/check-out-my-site-later-ill-remind-you/</guid>
				<description>&lt;p&gt;The creator of &lt;a href=&#34;http://faradaycal.com/&#34;&gt;Faraday&lt;/a&gt;, the new calendar app for iPhone, &lt;a href=&#34;http://samuelfine.com/iphone_lessons_learned.html&#34;&gt;posted&lt;/a&gt; about lessons learned from developing and publishing the app. It&amp;rsquo;s a good read, worthy of your time.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;m not in the market for another calendar app for my iPhone&amp;ndash;I have the built-in Calendar synced to my Google Calendar, but that goes largely unused because my most used calendar is in Outlook/Exchange/Good. I also have the Cozi app to coordinate calendars among my wife and five children. I wish it were all integrated. Why would I need another calendar?&lt;/p&gt;</description>
			</item>
			<item>
				<title>I’m calling it: Ubuntu is finally ready for the world.</title>
				<link>https://grailbox.com/posts/im-calling-it-ubuntu-is-finally-ready-for-the-world/</link>
				<pubDate>Mon, 12 Mar 2012 11:29:13 +0000</pubDate>
				<guid>https://grailbox.com/posts/im-calling-it-ubuntu-is-finally-ready-for-the-world/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://tjwebb.wordpress.com/2012/03/11/im-calling-it-linux-is-finally-ready-for-the-world-meet-ubuntu-11-10/#comment-25&#34;&gt;I’m calling it: Ubuntu is finally ready for the world.&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Following instructions from Linux geeks feels like trying to read Charles Dickens while having a stroke&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://news.ycombinator.com/&#34;&gt;Hacker News&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Perhaps a bit hyperbolic, but great line!&lt;/p&gt;</description>
			</item>
			<item>
				<title>Here is why vim uses the hjkl keys as arrow keys</title>
				<link>https://grailbox.com/posts/here-is-why-vim-uses-the-hjkl-keys-as-arrow-keys/</link>
				<pubDate>Fri, 09 Mar 2012 16:44:16 +0000</pubDate>
				<guid>https://grailbox.com/posts/here-is-why-vim-uses-the-hjkl-keys-as-arrow-keys/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://www.catonmat.net/blog/why-vim-uses-hjkl-as-arrow-keys/&#34;&gt;Here is why vim uses the hjkl keys as arrow keys&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;When &lt;a href=&#34;http://en.wikipedia.org/wiki/Bill_Joy&#34;&gt;Bill Joy&lt;/a&gt;created the vi text editor he used the &lt;a href=&#34;http://en.wikipedia.org/wiki/ADM-3A&#34;&gt;ADM-3A terminal&lt;/a&gt;, which had the arrows on &lt;code&gt;hjkl&lt;/code&gt; keys, so naturally he reused the same keys. And that&amp;rsquo;s the whole story!&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://news.ycombinator.com/&#34;&gt;Hacker News&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Even cooler is where the ESC key was positioned. I wish my MacBook Pro had a bigger ESC key (and no, Ctrl+[ is NOT easier, at least for me)&lt;/p&gt;</description>
			</item>
			<item>
				<title>Dropbox rival Space Monkey puts &#39;cloud&#39; in your house</title>
				<link>https://grailbox.com/posts/dropbox-rival-space-monkey-puts-cloud-in-your-house/</link>
				<pubDate>Thu, 08 Mar 2012 14:32:27 +0000</pubDate>
				<guid>https://grailbox.com/posts/dropbox-rival-space-monkey-puts-cloud-in-your-house/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://news.cnet.com/8301-19882_3-57391989-250/dropbox-rival-space-monkey-puts-cloud-in-your-house/#ixzz1oX8i677s&#34;&gt;Dropbox rival Space Monkey puts &amp;lsquo;cloud&amp;rsquo; in your house&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Space Monkey uses storage devices located at its users&amp;rsquo; premises, not in data centers paid for by the company. When you sign up for Space Monkey, you get a physical networked hard disk with 1TB of storage free for you to use. It&amp;rsquo;s actually a 2TB drive; the rest gets used by other people on the system.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://news.ycombinator.com/&#34;&gt;Hacker News&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Novel approach&amp;ndash;if you&amp;rsquo;re a Space Monkey user, you&amp;rsquo;re part of the cloud. They give you a hard drive, and half of it has your stuff and half has other people&amp;rsquo;s, and it&amp;rsquo;s all encrypted. Not sure how I feel about that, but it certainly drives down costs. I wonder what their drive replacement schedule/policy is?&lt;/p&gt;</description>
			</item>
			<item>
				<title>‘New Apple iPad Does Little to Fend Off Rivals’ Advance’</title>
				<link>https://grailbox.com/posts/new-apple-ipad-does-little-to-fend-off-rivals-advance/</link>
				<pubDate>Thu, 08 Mar 2012 10:38:04 +0000</pubDate>
				<guid>https://grailbox.com/posts/new-apple-ipad-does-little-to-fend-off-rivals-advance/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://business.financialpost.com/2012/03/07/new-apple-ipad-does-little-to-fend-off-rivals-advance/&#34;&gt;‘New Apple iPad Does Little to Fend Off Rivals’ Advance’&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Even Research In Motion Ltd.’s much maligned BlackBerry PlayBook has seen some recent success after several discounts and promotions.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://daringfireball.net/&#34;&gt;Daring Fireball&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Seriously? They&amp;rsquo;re that eager to malign the new iPad that they try to make the PlayBook seem worthwhile? The sentence that leaped out to me from the article was this:&lt;/p&gt;&#xA;&lt;p&gt;&amp;ldquo;The new iPad is quite possibly the best tablet on the market today. We have just come to expect more of Apple.&amp;rdquo;&lt;/p&gt;</description>
			</item>
			<item>
				<title>People Aren&#39;t Smart Enough for Democracy to Flourish, Scientists Say - Yahoo! News</title>
				<link>https://grailbox.com/posts/people-arent-smart-enough-for-democracy-to-flourish-scientists-say-yahoo-news/</link>
				<pubDate>Mon, 05 Mar 2012 18:03:41 +0000</pubDate>
				<guid>https://grailbox.com/posts/people-arent-smart-enough-for-democracy-to-flourish-scientists-say-yahoo-news/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://news.yahoo.com/people-arent-smart-enough-democracy-flourish-scientists-185601411.html&#34;&gt;People Aren&amp;rsquo;t Smart Enough for Democracy to Flourish, Scientists Say - Yahoo! News&lt;/a&gt;: &amp;ldquo;Nagel concluded that democracies rarely or never elect the best leaders. Their advantage over dictatorships or other forms of government is merely that they &amp;ldquo;effectively prevent lower-than-average candidates from becoming leaders.&amp;rdquo;&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;(Via @bkohl)&lt;/p&gt;</description>
			</item>
			<item>
				<title>ARC Gotcha – Unexpectedly Short Lifetimes</title>
				<link>https://grailbox.com/posts/arc-gotcha-unexpectedly-short-lifetimes/</link>
				<pubDate>Mon, 05 Mar 2012 12:30:29 +0000</pubDate>
				<guid>https://grailbox.com/posts/arc-gotcha-unexpectedly-short-lifetimes/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://weblog.bignerdranch.com/?p=296&#34;&gt;ARC Gotcha – Unexpectedly Short Lifetimes&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;ARC is within its rights to release the object between fetching the&lt;code&gt;CGColor&lt;/code&gt; and setting the layer’s background color. ARC variables are released as soon as the optimizer decides that they are no longer referenced, so the compiler is free to release uicolor after fetching the &lt;code&gt;CGColor&lt;/code&gt;. Current compiler implementations do seem to wait until the end of scope, but that’s not guaranteed.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://weblog.bignerdranch.com&#34;&gt;Big Nerd Ranch Weblog&lt;/a&gt;)&lt;/p&gt;</description>
			</item>
			<item>
				<title>Give it five minutes</title>
				<link>https://grailbox.com/posts/give-it-five-minutes/</link>
				<pubDate>Thu, 01 Mar 2012 18:54:54 +0000</pubDate>
				<guid>https://grailbox.com/posts/give-it-five-minutes/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://feedproxy.google.com/~r/37signals/beMH/~3/jw0XMxGT4wM/3124-give-it-five-minutes&#34;&gt;Give it five minutes&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;There’s also a difference between asking questions and pushing back. Pushing back means you already think you know. Asking questions means you want to know. Ask more questions.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://37signals.com/svn/posts&#34;&gt;Signal vs. Noise&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;This reminds me of Marshall Goldsmith&amp;rsquo;s &lt;a href=&#34;http://www.amazon.com/What-Got-Here-Wont-There/dp/1401301304&#34;&gt;&lt;em&gt;What Got You Here Won&amp;rsquo;t Get You There&lt;/em&gt;&lt;/a&gt;. In that (required reading!) book, Goldsmith explains, among other things, that you don&amp;rsquo;t always have to be right, or be the smartest in the room. That is a &lt;strong&gt;tough but valuable lesson&lt;/strong&gt; for geeks to learn.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Farewell, Anthony Shadid</title>
				<link>https://grailbox.com/posts/farewell-anthony-shadid/</link>
				<pubDate>Fri, 17 Feb 2012 16:55:50 +0000</pubDate>
				<guid>https://grailbox.com/posts/farewell-anthony-shadid/</guid>
				<description>&lt;p&gt;Where bullets flew, he jotted notes. Where despots abused, he documented crimes. Where war raged, he skulked in its midst, shouting the stories of common people with torn lives. Armed only with his wits and Microsoft Word, he flung himself repeatedly into peril so we would know, without doubt, that war is hell. And then cruelly, he perished from a snootful of horsehair, which is all the more cruel because half his family are doctors and likely could have saved him had they been there when it happened. Anthony, you were amazing, fearless, and a hero.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Easy with the alerts</title>
				<link>https://grailbox.com/posts/easy-with-the-alerts/</link>
				<pubDate>Fri, 17 Feb 2012 15:45:11 +0000</pubDate>
				<guid>https://grailbox.com/posts/easy-with-the-alerts/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://venomousporridge.com/post/17740698299&#34;&gt;Easy with the alerts&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;It’s like mistakenly asking for an extra fork with your ice cream and having the waiter just go ahead and bring an extra spoon, rather than needlessly correct you.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://venomousporridge.com/&#34;&gt;venomous porridge&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Nicely phrased indictment of the misuse of alerts, and also a great example of the opposite: providing a user with helpful information without making them click to acknowledge. And I love the ice cream example.&lt;/p&gt;</description>
			</item>
			<item>
				<title>The mad dash to remove something before the deadline</title>
				<link>https://grailbox.com/posts/the-mad-dash-to-remove-something-before-the-deadline/</link>
				<pubDate>Tue, 14 Feb 2012 12:32:01 +0000</pubDate>
				<guid>https://grailbox.com/posts/the-mad-dash-to-remove-something-before-the-deadline/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://feedproxy.google.com/~r/37signals/beMH/~3/1eDdICrJtJs/3109-the-mad-dash-to-remove-something-before-the-deadline&#34;&gt;The mad dash to remove something before the deadline&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Just like you shouldn’t let sunk cost determine future decisions, don’t let sunk design trick you into keeping something in your product because you already put the work in. If it’s non-essential, take it out, think it over, and invest the time post launch to make it right.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://37signals.com/svn/posts&#34;&gt;Signal vs. Noise&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;I find it awfully hard to can something I&amp;rsquo;ve already done! I&amp;rsquo;ve gotten better at it, though, and will continue to do so.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Hey, Mobile! Let Me Change My Password!</title>
				<link>https://grailbox.com/posts/hey-mobile-let-me-change-my-password/</link>
				<pubDate>Tue, 14 Feb 2012 10:48:03 +0000</pubDate>
				<guid>https://grailbox.com/posts/hey-mobile-let-me-change-my-password/</guid>
				<description>&lt;p&gt;Yesterday, my son&amp;rsquo;s iPhone 4 was stolen, which raises a cluster of inconveniences. Replacement cost, of course, is non-trivial. The pains don&amp;rsquo;t end there, though. He was planning to hold out for the iPhone 5, assuming it would be released in the fall, and now must decide whether to squander his upgrade price on a 4S (and put the future 5 out of reach), or limp along with a Hanging-With-Friends-less flip phone for 10 months or so.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Creator of iOS App Halftone Speculates on Success</title>
				<link>https://grailbox.com/posts/creator-of-ios-app-halftone-speculates-on-success/</link>
				<pubDate>Mon, 06 Feb 2012 18:41:10 +0000</pubDate>
				<guid>https://grailbox.com/posts/creator-of-ios-app-halftone-speculates-on-success/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://blog.mikeswanson.com/post/17160200980&#34;&gt;I Have No Idea&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;My advice is to train yourself to recognize and note the small (but important) reactions that you have when you’re working with your own apps. Dismiss your professional knowledge about the effort it will take and consider the experience alone. Only when you’re willing and able to do what’s necessary to perfect a feature will you be accomplishing your best work. Your &lt;a href=&#34;http://en.wikipedia.org/wiki/Exit-criteria&#34; title=&#34;Exit-Criteria&#34;&gt;exit criteria&lt;/a&gt; should be when you’re delighted to use your own app or feature and surprised that you were able to pull it off.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Why Apple’s A5 Is So Big, And Siri Is 4S-only -- A Possible Explanation</title>
				<link>https://grailbox.com/posts/why-apples-a5-is-so-big-and-siri-is-4s-only-a-possible-explanation/</link>
				<pubDate>Sun, 05 Feb 2012 07:31:42 +0000</pubDate>
				<guid>https://grailbox.com/posts/why-apples-a5-is-so-big-and-siri-is-4s-only-a-possible-explanation/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://feedproxy.google.com/~r/macstoriesnet/~3/qKPPNnDdi6U/&#34;&gt;Why Apple’s A5 Is So Big, And Siri Is 4S-only&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Integration of Audience’s EarSmart on the iPhone 4S’ A5 could explain why Apple decided to not offer Siri on older devices, and why it will likely only feature the voice-based assistant on newer devices going forward.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://www.macstories.net&#34;&gt;MacStories&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Here, at least, is an explanation for why Apple doesn&amp;rsquo;t offer Siri on older iPhones. If it&amp;rsquo;s really that simple, though, why wouldn&amp;rsquo;t Apple just come out and say it? That&amp;rsquo;s taking secrecy too far.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Great time to be a developer--quick code solutions</title>
				<link>https://grailbox.com/posts/great-time-to-be-a-developer-quick-code-solutions/</link>
				<pubDate>Wed, 01 Feb 2012 12:51:41 +0000</pubDate>
				<guid>https://grailbox.com/posts/great-time-to-be-a-developer-quick-code-solutions/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://feedproxy.google.com/~r/LosTechies/~3/EnPDzlpZS2E/&#34;&gt;Great time to be a developer&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I am in awe of the free tools available to software developers today. It is amazing how fast, and cheaply, you can turn an idea into productive code. I was so pumped by a recent experience, I decided to share.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://lostechies.com&#34;&gt;Los Techies&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Interesting view into how geeks solve problems. Many people would just drive the route one morning beforehand. Most people would just guess and rely on &amp;ldquo;new guy&amp;rdquo; forgiveness for any tardiness. And most people have no ability to solve the problem the way Joshua Flanagan did&amp;ndash;in hours, weeks, months, or a lifetime.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Bespoke -- Custom Tailoring Software</title>
				<link>https://grailbox.com/posts/bespoke-custom-tailoring-software/</link>
				<pubDate>Thu, 26 Jan 2012 10:09:41 +0000</pubDate>
				<guid>https://grailbox.com/posts/bespoke-custom-tailoring-software/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://patrickrhone.com/2012/01/17/bespoke/&#34;&gt;Bespoke&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Can you imagine a future where, for a price, a key software tool that you rely on can be bespoke?&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://patrickrhone.com&#34;&gt;patrickrhone / journal&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Interesting idea&amp;ndash;one that would practically be limited to open source software, though, for legal (if not technical) reasons.&lt;/p&gt;&#xA;&lt;p&gt;I just like anything that uses the word &amp;ldquo;bespoke.&amp;rdquo;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Dr. StrangeUnix Or: How I Learned to Stop Worrying and Love the Mac</title>
				<link>https://grailbox.com/posts/dr-strangeunix-or-how-i-learned-to-stop-worrying-and-love-the-mac/</link>
				<pubDate>Wed, 25 Jan 2012 15:48:56 +0000</pubDate>
				<guid>https://grailbox.com/posts/dr-strangeunix-or-how-i-learned-to-stop-worrying-and-love-the-mac/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://feedproxy.google.com/~r/helloWorld-TheSlickeditDeveloperBlog/~3/QufOIKuAUMQ/&#34;&gt;Dr. StrangeUnix Or: How I Learned to Stop Worrying and Love the Mac&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;But what the fact that “It’s just UNIX now” got us was the ability to create an X11 application that would run on the Mac.  So we did that – and customers loved it.  Well, that isn’t exactly true.  They acted more like we gave them a new BMW but first used it for one of those things you see at the county fair where you pay a dollar and get to hit a car with a sledgehammer (granted they usually do this with demolition derby cars, not new BMWs).  It was SlickEdit – it worked, but it just didn’t look or feel like people expected it to. Hardcore SlickEdit fans were happy… ish.  They were happy to have SlickEdit, but they missed all the Mac-isms, and were a little perturbed by SlickEdit’s menu being attached right to the top of the application window.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Why tabs are clearly superior | Lea Verou</title>
				<link>https://grailbox.com/posts/why-tabs-are-clearly-superior-lea-verou/</link>
				<pubDate>Mon, 23 Jan 2012 11:13:40 +0000</pubDate>
				<guid>https://grailbox.com/posts/why-tabs-are-clearly-superior-lea-verou/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://lea.verou.me/2012/01/why-tabs-are-clearly-superior/&#34;&gt;Why tabs are clearly superior | Lea Verou&lt;/a&gt;: &amp;ldquo;If you follow me on twitter or have heard one of my talks you’ll probably know I despise spaces for indentation with a passion.&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;Great arguments. I probably still won&amp;rsquo;t change, though. I prefer the predictability of spaces in code to the configurable vagaries of tabs, I guess!&lt;/p&gt;</description>
			</item>
			<item>
				<title>On the Usability of Codecademy</title>
				<link>https://grailbox.com/posts/on-the-usability-of-codecademy/</link>
				<pubDate>Fri, 20 Jan 2012 11:29:58 +0000</pubDate>
				<guid>https://grailbox.com/posts/on-the-usability-of-codecademy/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://feedproxy.google.com/~r/ZenAndTheArtOfRubyProgramming/~3/dbg07l-mD_g/&#34;&gt;On the Usability of Codecademy&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Usability is hard because real users use our UIs and software in different and unexpected ways.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://programmingzen.com/&#34;&gt;Zen and the Art of Ruby Programming&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Required reading for people who build software. We&amp;rsquo;ve got to stop dismissing people as &amp;ldquo;too stupid to use a computer&amp;rdquo; &amp;ndash; if people can&amp;rsquo;t use what we build, it&amp;rsquo;s our fault, not theirs.&lt;/p&gt;&#xA;&lt;p&gt;We&amp;rsquo;ve been conditioned to blame ourselves if we stumble and fumble when trying to interface with software, goods, or other services. &amp;ldquo;Where&amp;rsquo;s the light switch? Oh, there! How stupid of me!&amp;rdquo; I&amp;rsquo;ve learned to stop feeling stupid or blaming myself when I don&amp;rsquo;t &amp;ldquo;get&amp;rdquo; something new &amp;ndash; I blame whoever dumped their assumptions and curse of knowledge on me. Both you and your audience should, too.&lt;/p&gt;</description>
			</item>
			<item>
				<title>App Cubby Blog - Free and Low-Cost Apps</title>
				<link>https://grailbox.com/posts/app-cubby-blog-free-and-low-cost-apps/</link>
				<pubDate>Thu, 19 Jan 2012 10:39:00 +0000</pubDate>
				<guid>https://grailbox.com/posts/app-cubby-blog-free-and-low-cost-apps/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://appcubby.com/blog/free-and-low-cost-apps/&#34;&gt;App Cubby Blog - Free and Low-Cost Apps&lt;/a&gt;: &amp;ldquo;The pool of time users spend on smartphones is staggering and growing rapidly, but it is not infinite. The more time people spend with useful/entertaining free apps, the less need they have to actually pay for apps. That doesn’t mean people will never pay for apps — the market for paid apps has continued to grow alongside free and freemium apps — but users have been conditioned to expect more and more for less and less.&amp;rdquo;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Trust is fragile - (37signals)</title>
				<link>https://grailbox.com/posts/trust-is-fragile-37signals/</link>
				<pubDate>Tue, 17 Jan 2012 15:11:35 +0000</pubDate>
				<guid>https://grailbox.com/posts/trust-is-fragile-37signals/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://37signals.com/svn/posts/3078-trust-is-fragile&#34;&gt;Trust is fragile - (37signals)&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;So let’s start with first things first: We’re sorry. We made a mistake. We should have thought it through and remembered that storing your data with someone else in the cloud hinges on a fragile layer of trust. We poked that trust in the eye and it was wrong. We shouldn’t have checked the log files to see the name of the 100 millionth file.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Immobile Apps</title>
				<link>https://grailbox.com/posts/immobile-apps/</link>
				<pubDate>Wed, 04 Jan 2012 10:42:17 +0000</pubDate>
				<guid>https://grailbox.com/posts/immobile-apps/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://nick.typepad.com/blog/2012/01/immobile-apps.html&#34;&gt;Immobile Apps&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;One of the most painful things we did when developing &lt;a href=&#34;http://glassboard.com/blog/&#34;&gt;Glassboard&lt;/a&gt; was ban ourselves from Wi-Fi for a week. I live in an area where cell coverage is really spotty, and using our app without a fast connection was eye-opening and humbling. I spent the next week rewriting huge chunks of the app so it would better handle poor (or non-existent) network connectivity.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;(Via &lt;a href=&#34;http://nick.typepad.com/blog/&#34;&gt;Nick Bradbury&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Good reminder for minimizing dependence on connectivity. I watched my family members go berserk at the Gator Bowl last Monday when cell coverage was spotty and they couldn&amp;rsquo;t post pics to Facebook from their iPhones. It seems like the FB app could queue those up instead.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Kindle Fire Does Not Fire the Imagination</title>
				<link>https://grailbox.com/posts/kindle-fire-does-not-fire-the-imagination/</link>
				<pubDate>Thu, 15 Dec 2011 11:58:58 +0000</pubDate>
				<guid>https://grailbox.com/posts/kindle-fire-does-not-fire-the-imagination/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://feedproxy.google.com/~r/subtraction/~3/tRqBasQuNi0/kindle-fire-does-not-fire-the-imagination&#34;&gt;Kindle Fire Does Not Fire the Imagination&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;The Kindle software itself is a lousy reading experience; the justified, un-hyphenated typography is an eyesore, the font selection is depressingly homely, and the line-spacing is visually erratic. The net effect is that it feels like I’m consuming a pirated version of whatever book I’m reading, a sensation which might have been fine on earlier versions of Kindle hardware, but seems lazy on a device capable of producing beautiful results.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Beginning OS X Lion Apps Development</title>
				<link>https://grailbox.com/posts/beginning-os-x-lion-apps-development/</link>
				<pubDate>Fri, 04 Nov 2011 10:15:03 +0000</pubDate>
				<guid>https://grailbox.com/posts/beginning-os-x-lion-apps-development/</guid>
				<description>&lt;p&gt;The writing, editing, and reviewing are done, and &lt;em&gt;Beginning OS X Lion Apps Development&lt;/em&gt; is set to go to press. The publication date is listed as November 9 on both &lt;a href=&#34;http://www.apress.com/9781430237204&#34;&gt;the Apress site&lt;/a&gt; and &lt;a href=&#34;http://www.amazon.com/Beginning-Lion-Apps-Development-Apress/dp/1430237201/&#34;&gt;Amazon&lt;/a&gt;. The premise of the book is to build a single app throughout the book, illustrating OS X development through the features we add. We think it worked out pretty well. You can read about the app (Graphique, a graphing calculator) on its website at &lt;a href=&#34;http://grailbox.com/graphique&#34;&gt;http://grailbox.com/graphique&lt;/a&gt;, and it&amp;rsquo;s available on the Mac App Store.&lt;/p&gt;</description>
			</item>
			<item>
				<title>&#34;An Introduction to MapReduce&#34; by Pete Warden; O&#39;Reilly Media</title>
				<link>https://grailbox.com/posts/an-introduction-to-mapreduce-by-pete-warden-oreilly-media/</link>
				<pubDate>Wed, 21 Sep 2011 13:31:11 +0000</pubDate>
				<guid>https://grailbox.com/posts/an-introduction-to-mapreduce-by-pete-warden-oreilly-media/</guid>
				<description>&lt;p&gt;Founder of OpenHeatMap Pete Warden provides a simple introduction to MapReduce, the Google-created framework for examining large datasets. This video tutorial includes four videos: an intro to the topic, writing your first MapReduce job, and then two videos on running MapReduce jobs on the Amazon Elastic MapReduce cloud service. By the time you&amp;rsquo;re done watching the videos, you&amp;rsquo;ll understand what MapReduce is and how to write simple MapReduce jobs, and you&amp;rsquo;ll be ready to move on to more advanced MapReduce topics.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Automator for the Web: ifttt</title>
				<link>https://grailbox.com/posts/automator-for-the-web-ifttt/</link>
				<pubDate>Tue, 13 Sep 2011 14:53:09 +0000</pubDate>
				<guid>https://grailbox.com/posts/automator-for-the-web-ifttt/</guid>
				<description>&lt;p&gt;A new web service, &lt;a href=&#34;http://ifttt.com&#34;&gt;If This Then That&lt;/a&gt; (ifttt), allows you to wire web triggers to web actions. Go check it out. I just wired this blog to Twitter: anytime I blog something (the trigger or &amp;ldquo;this&amp;rdquo;), then I&amp;rsquo;ll automatically tweet about it (the action or &amp;ldquo;that&amp;rdquo;). In addition to informing you about this service, this blog post exists to test whether my ifttt task works!&lt;/p&gt;</description>
			</item>
			<item>
				<title>My Review of Larry Bird</title>
				<link>https://grailbox.com/posts/my-review-of-larry-bird/</link>
				<pubDate>Sat, 10 Sep 2011 07:18:58 +0000</pubDate>
				<guid>https://grailbox.com/posts/my-review-of-larry-bird/</guid>
				<description>&lt;div class=&#34;hreview&#34;&gt;&#xA;&lt;div class=&#34;item&#34;&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.fathead.com//nba/boston-celtics/larry-bird/?variant=A&#34;&gt;Originally submitted at Fathead&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div&gt;&#xA;&lt;img src=&#34;http://images.powerreviews.com/images_products/09/88/5003387_100.jpg&#34; class=&#34;photo&#34; data-align=&#34;left&#34; /&gt;&#xA;&lt;p&gt;Larry Bird NBA Legend. Real.Big. Fathead Wall Graphic&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://www.fathead.com/nba/boston-celtics/larry-bird/?variant=A&#34; class=&#34;url fn&#34;&gt;&lt;span class=&#34;fn&#34;&gt;Larry Bird&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;\&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Greatest Player Ever&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;div&gt;&#xA;&lt;p&gt;By &lt;strong&gt;hoop33&lt;/strong&gt; from &lt;strong&gt;Jacksonville, FL&lt;/strong&gt; on &lt;strong&gt;&lt;span class=&#34;abbr dtreviewed&#34; title=&#34;2011910T1200-0800&#34;&gt;9/10/2011&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;prStars prStarsSmall&#34;&gt;&#xA;&lt;p&gt; &lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;div&gt;&#xA;&lt;p&gt;&lt;span class=&#34;rating&#34;&gt;5&lt;/span&gt;out of 5&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;&lt;strong&gt;Pros:&lt;/strong&gt; Celtic pride, Crisply detailed&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Best Uses:&lt;/strong&gt; Game room&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Describe Yourself:&lt;/strong&gt; Die Hard Sports Fan&lt;/p&gt;&#xA;&lt;p&gt;Larry Bird was the greatest ever on the best sports franchise ever. This will bring back memories!&lt;/p&gt;&#xA;&lt;p&gt;(&lt;a href=&#34;http://www.powerreviews.com/legal/terms_of_use.html&#34; rel=&#34;license&#34;&gt;legalese&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;/div&gt;</description>
			</item>
			<item>
				<title>Using OmniAuth 0.3.0.rc1 with Rails 3.1</title>
				<link>https://grailbox.com/posts/using-omniauth-0-3-0-rc1-with-rails-3-1/</link>
				<pubDate>Thu, 08 Sep 2011 09:23:45 +0000</pubDate>
				<guid>https://grailbox.com/posts/using-omniauth-0-3-0-rc1-with-rails-3-1/</guid>
				<description>&lt;p&gt;I&amp;rsquo;m posting this so others can avoid the frustration I felt yesterday trying to use OmniAuth in a Rails 3.1 application. After adding this to my Gemfile: &lt;code&gt;gem &amp;quot;omniauth&amp;quot;, :git =&amp;gt; &amp;quot;git://github.com/intridea/omniauth.git&amp;quot;&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;and running: &lt;code&gt;bundle install&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;I got this gem installed: &lt;code&gt;* omniauth (1.0.0.alpha ba4bd3e)&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;When I tried running anything, however, such as &lt;code&gt;rails generate . . .&lt;/code&gt; or &lt;code&gt;rake spec&lt;/code&gt;, I&amp;rsquo;d get a stack trace complaining about: &lt;code&gt;uninitialized constant OmniAuth::Builder&lt;/code&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Mac OS X Programming Editor Roundup</title>
				<link>https://grailbox.com/posts/mac-os-x-programming-editor-roundup/</link>
				<pubDate>Mon, 15 Aug 2011 14:37:35 +0000</pubDate>
				<guid>https://grailbox.com/posts/mac-os-x-programming-editor-roundup/</guid>
				<description>&lt;p&gt;When I got my first Mac in 2004, I found few programming editors. Since then, however, Mac OS X has birthed many programming editors that match or beat options on other computing platforms. I&amp;rsquo;ve rounded up the ones I&amp;rsquo;m aware of, categorized into several sections. While some editors could fit several categories, I&amp;rsquo;ve confined each to one.&lt;/p&gt;&#xA;&lt;p&gt;Some of these editors are free, and some cost money. While I understand people who won&amp;rsquo;t use closed-source software (though I don&amp;rsquo;t fall in that group), I don&amp;rsquo;t understand professional programmers who refuse to pay for software. Your programming editor is arguably your most important tool, and you should use the one that suits you best, regardless of cost. None of these editors cost much, especially compared to the value you derive if you program professionally.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Hands On with HP TouchPad</title>
				<link>https://grailbox.com/posts/hands-on-with-hp-touchpad/</link>
				<pubDate>Mon, 08 Aug 2011 13:40:59 +0000</pubDate>
				<guid>https://grailbox.com/posts/hands-on-with-hp-touchpad/</guid>
				<description>&lt;p&gt;Last Friday, I saw where &lt;a href=&#34;http://www.zdnet.com/blog/mobile-news/hp-touchpad-special-promotion-just-299-business-as-usual-for-hp/3631?tag=search-results-rivers;item5&#34;&gt;you could get $200 off an HP TouchPad&lt;/a&gt;, so I decided to jump. I went to the Staples in St. Johns Town Center with my FatWallet coupon and the ZDNet story linked above, and the salesperson treated me like a thief. He disavowed any knowledge of the $100 off deal or the additional $100 off coupon, muttered &amp;ldquo;Whoever zee dee net is&amp;rdquo; when I tried to show him the story, and hid in his manager&amp;rsquo;s office long enough to call all his friends to laugh at the guy bothering to lie to get a deal on a TouchPad. After finishing his giggling, he summoned his manager, who stormed from her office like Billy Martin protesting a call at the plate and tried to lecture me about counterfeit coupons. Most of her lecture bounced off my retreating shoulder blades, though, and I could hear her still protesting as I walked out. I like to assume that her spittle showered other customers.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Peach or Pumpkin?</title>
				<link>https://grailbox.com/posts/peach-or-pumpkin/</link>
				<pubDate>Thu, 07 Jul 2011 10:06:19 +0000</pubDate>
				<guid>https://grailbox.com/posts/peach-or-pumpkin/</guid>
				<description>&lt;p&gt;Rather than catching up on sleep after we finished writing the first edition of &lt;a href=&#34;http://www.amazon.com/Pro-Core-Data-iOS-Professionals/dp/1430233559/ref=sr_1_1?ie=UTF8&amp;amp;qid=1310047067&amp;amp;sr=8-1&#34;&gt;Pro Core Data for iOS&lt;/a&gt;, &lt;a href=&#34;http://michaelprivat.com&#34;&gt;Michael Privat&lt;/a&gt; and I have been working both on the second edition of that book and on another book: &lt;a href=&#34;http://www.amazon.com/Beginning-Mac-Lion-Apps-Development/dp/1430237201/ref=sr_1_2?s=books&amp;amp;ie=UTF8&amp;amp;qid=1310046241&amp;amp;sr=1-2&#34;&gt;Beginning Mac OS X Lion Apps Development&lt;/a&gt; . It&amp;rsquo;s been a much different kind of project: we build a single application throughout the book, adding functionality to illustrate different aspects of OS X application development as we go. Sometimes it&amp;rsquo;s a challenge to stay at beginner level while still building a useful application that will eventually end up in the App Store, so we&amp;rsquo;ll be interested to watch reader feedback.&lt;/p&gt;</description>
			</item>
			<item>
				<title>My Review of Optimizing Tables in iPhone Apps</title>
				<link>https://grailbox.com/posts/my-review-of-optimizing-tables-in-iphone-apps/</link>
				<pubDate>Wed, 06 Jul 2011 13:30:35 +0000</pubDate>
				<guid>https://grailbox.com/posts/my-review-of-optimizing-tables-in-iphone-apps/</guid>
				<description>&lt;div class=&#34;hreview&#34;&gt;&#xA;&lt;div class=&#34;item&#34;&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://oreilly.com/catalog/0636920014331&#34;&gt;Originally submitted at O&amp;rsquo;Reilly&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div&gt;&#xA;&lt;img src=&#34;http://images.powerreviews.com/images_products/09/95/10392089_100.jpg&#34; class=&#34;photo&#34; data-align=&#34;left&#34; /&gt;&#xA;&lt;p&gt;Any experienced iPhone programmer understands that you can&amp;rsquo;t build much in the way of complex user interfaces without tables. Every time you throw together a lengthy list view, tables are a concern. More than that, the stock manner of rendering tables is performance-intensive and results in &amp;hellip;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://oreilly.com/catalog/0636920014331&#34; class=&#34;url fn&#34;&gt;&lt;span class=&#34;fn&#34;&gt;Optimizing Tables in iPhone Apps&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;\&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Well-done and Informative&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;div&gt;&#xA;&lt;p&gt;By &lt;strong&gt;iOS Developer&lt;/strong&gt; from &lt;strong&gt;Jacksonville, FL&lt;/strong&gt; on &lt;strong&gt;&lt;span class=&#34;abbr dtreviewed&#34; title=&#34;201176T1200-0800&#34;&gt;7/6/2011&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Ghostwriter Notes for iPad is New and Noteworthy</title>
				<link>https://grailbox.com/posts/ghostwriter-notes-for-ipad-is-new-and-noteworthy/</link>
				<pubDate>Sat, 18 Jun 2011 13:14:16 +0000</pubDate>
				<guid>https://grailbox.com/posts/ghostwriter-notes-for-ipad-is-new-and-noteworthy/</guid>
				<description>&lt;p&gt;As I type this, &lt;a href=&#34;http://www.majorspot.com/&#34;&gt;Ghostwriter Notes&lt;/a&gt;, the notepad app for iPad written by my friend and coauthor &lt;a href=&#34;http://twitter.com/michaelprivat&#34;&gt;Michael Privat&lt;/a&gt;, is listed in the New and Noteworthy section of the iPad App Store. With each release, this app continues to impress as it adds new functionality (text, DropBox and Evernote integration, picture embedding — the list goes on and on). This is a truly great app, and you should grab it while it&amp;rsquo;s on sale. Congratulations, Michael!&lt;/p&gt;</description>
			</item>
			<item>
				<title>An Event Apart Atlanta</title>
				<link>https://grailbox.com/posts/an-event-apart-atlanta/</link>
				<pubDate>Fri, 17 Jun 2011 16:03:47 +0000</pubDate>
				<guid>https://grailbox.com/posts/an-event-apart-atlanta/</guid>
				<description>&lt;p&gt;A few weeks ago, my boss sent me an email that said:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;a href=&#34;http://aneventapart.com/2011/atlanta/&#34;&gt;http://aneventapart.com/2011/atlanta/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Is this something you would want to attend?&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I clicked the link, saw the speaker panel, leapt through the question&amp;rsquo;s ambiguity, and signed up before my boss could clarify his meaning. Anyone who develops for the web knows that, when it comes to CSS, Eric Meyer cavorts with deities. Ethan Marcotte&amp;rsquo;s &lt;a href=&#34;http://www.alistapart.com/articles/responsive-web-design/&#34;&gt;article on responsive web design&lt;/a&gt; still pops eyes and blows minds a year later. Jeffrey Zeldman&amp;rsquo;s web magazine, &lt;a href=&#34;http://www.alistapart.com/&#34;&gt;A List Apart&lt;/a&gt;, launched &lt;a href=&#34;http://blooberry.com/indexdot/history/netscape.htm&#34;&gt;when Internet Explorer 4 was just edging out Netscape Navigator 4&lt;/a&gt; and continues to enlighten web developers to this day. And that&amp;rsquo;s just a quarter of the all-star panel. This panel has produced some of the leading books and articles on web development. Did he &lt;em&gt;really&lt;/em&gt; think I&amp;rsquo;d say anything but yes?&lt;/p&gt;</description>
			</item>
			<item>
				<title>Mobile Development in Jacksonville, Florida</title>
				<link>https://grailbox.com/posts/mobile-development-in-jacksonville-florida/</link>
				<pubDate>Wed, 25 May 2011 14:21:08 +0000</pubDate>
				<guid>https://grailbox.com/posts/mobile-development-in-jacksonville-florida/</guid>
				<description>&lt;p&gt;Last night I participated on a panel with Michael Privat, Satya Komatineni, Dave MacLean, and Henry Lee, moderated by Eugene Chuvyrov. All six of us live in Jacksonville, and we&amp;rsquo;ve all co-authored books for Apress on mobile technologies:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://www.amazon.com/Pro-Android-3-Satya-Komatineni/dp/1430232226/ref=sr_1_1?s=books&amp;amp;ie=UTF8&amp;amp;qid=1306336084&amp;amp;sr=1-1&#34;&gt;Pro Android 3&lt;/a&gt; — Satya Komatineni and Dave MacLean (and Sayed Hashimi, not present)&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://www.amazon.com/Beginning-Windows-Phone-7-Development/dp/1430235969/ref=sr_1_2?s=books&amp;amp;ie=UTF8&amp;amp;qid=1306336159&amp;amp;sr=1-2&#34;&gt;Beginning Windows Phone 7 Development&lt;/a&gt; — Henry Lee and Eugene Chuvyrov&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://www.amazon.com/Pro-Core-Data-iOS-Professionals/dp/1430233559/ref=tmm_pap_title_0&#34;&gt;Pro Core Data for iOS&lt;/a&gt; — Michael Privat and I&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Around 25 people showed up for pizza and mobile technology discussions, and I think most people were entertained and enlightened. We talked about the tools, native vs web, languages, difficulty of development, enterprise-ness, cross-platform solutions, and what we thought the future held for the different platforms. We enjoyed a friendly crowd and a friendly panel, and no one pronounced the earth-shaking or the bewildering. Points I can remember from the evening:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Cmd&#43;F Launches Finder -- Thanks, Alfred!</title>
				<link>https://grailbox.com/posts/cmdf-launches-finder-thanks-alfred/</link>
				<pubDate>Mon, 16 May 2011 11:31:43 +0000</pubDate>
				<guid>https://grailbox.com/posts/cmdf-launches-finder-thanks-alfred/</guid>
				<description>&lt;p&gt;One thing I like about Windows is that Start+E launches an Explorer window. I get frustrated when Cmd+Tabbing to a Finder window on Mac OS X, and for some reason I usually have difficulty noticing the Finder icon in the Cmd+Tab popup. I&amp;rsquo;ve caught myself pressing Cmd+E to get a Finder window, which of course doesn&amp;rsquo;t work and I just get more frustrated.&lt;/p&gt;&#xA;&lt;p&gt;I just got the new version of &lt;a href=&#34;http://alfredapp.com&#34;&gt;Alfred&lt;/a&gt;, and as a Powerpack user I get Global Hotkeys. I just mapped Cmd+F to Finder (/System/Library/CoreServices/Finder.app), and it launches Finder. Woohoo!&lt;/p&gt;</description>
			</item>
			<item>
				<title>Homework by Challenge</title>
				<link>https://grailbox.com/posts/homework-by-challenge/</link>
				<pubDate>Thu, 12 May 2011 10:43:37 +0000</pubDate>
				<guid>https://grailbox.com/posts/homework-by-challenge/</guid>
				<description>&lt;p&gt;Developers love challenges, whether they be programming puzzles, word puzzles, or any other conundrum that flexes their minds and proves how smart they are — whether to others or simply to themselves. The quickest way to con a developer into writing some code for you is to preface your request with, &amp;ldquo;This probably can&amp;rsquo;t be done, but . . . .&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;Seven years ago, I wrote &lt;a href=&#34;http://www.apress.com/9781590593257&#34;&gt;a book&lt;/a&gt; with &lt;a href=&#34;http://twitter.com/#!/brthrjon&#34;&gt;Bobby Harris&lt;/a&gt; on SWT and JFace, and the source code from that book has been posted to various web sites through the years. Consequently, I get occasional emails about the book, the code, or about other SWT problems. Bobby doesn&amp;rsquo;t get them because his email address from that book has perished, or so he tells me. I always respond helpfully, even though I rarely work with SWT anymore and have to crack open the book for refreshers.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Why I&#39;ll Never Miss LessConf</title>
				<link>https://grailbox.com/posts/why-ill-never-miss-lessconf/</link>
				<pubDate>Mon, 02 May 2011 08:07:37 +0000</pubDate>
				<guid>https://grailbox.com/posts/why-ill-never-miss-lessconf/</guid>
				<description>&lt;p&gt;How&amp;rsquo;d you spend your weekend? Did you mow your lawn? Do your laundry? Sleep late, watch TV, or catch a movie? Yeah? Well, I went to &lt;a href=&#34;http://lessconf.lesseverything.com&#34;&gt;LessConf 2011&lt;/a&gt; and got inspired, and now I&amp;rsquo;m on fire. Hope your lawn looks great.&lt;/p&gt;&#xA;&lt;p&gt;Today&amp;rsquo;s artists and creative types have turned away from splashing watercolors on wetted paper, penning gloomy poems in battered notebooks, or recording songs that bemoan past loves. Instead, they&amp;rsquo;ve embraced a canvas meshing text editors with S corps to build web sites and start companies. The duo running &lt;a href=&#34;http://lesseverything.com&#34;&gt;Less Everything&lt;/a&gt;, Steve Bristol and Allan Branch, round up the best of them every year and hold a two-day inspiration-fest that leaves you determined to flush the sludge your life mires in and paint the world with your own genius.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Red Dirt Ruby Conf and Using Core Data with MacRuby</title>
				<link>https://grailbox.com/posts/using-core-data-with-macruby/</link>
				<pubDate>Mon, 25 Apr 2011 16:59:20 +0000</pubDate>
				<guid>https://grailbox.com/posts/using-core-data-with-macruby/</guid>
				<description>&lt;p&gt;I just got back from &lt;a href=&#34;http://reddirtrubyconf.com&#34;&gt;Red Dirt Ruby Conf&lt;/a&gt; in Norman, OK. The accommodations were terrific — The Embassy Suites in Norman looks new, and they served us free omelets-to-order every morning. The food was good, the Wi-Fi was blazing, and every table in every conference room had power outlets for every chair. The swag table had plenty for all, and I scored a black &lt;a href=&#34;http://stackoverflow.com&#34;&gt;Stack Overflow&lt;/a&gt; T and a Red Dirt Ruby Conf Macbook Pro cover from &lt;a href=&#34;http://stickermule.com&#34;&gt;Sticker Mule&lt;/a&gt; that dresses up my work laptop nicely:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Distance of Time in Words for Objective-C</title>
				<link>https://grailbox.com/posts/distance-of-time-in-words-for-objective-c/</link>
				<pubDate>Sun, 17 Apr 2011 18:14:49 +0000</pubDate>
				<guid>https://grailbox.com/posts/distance-of-time-in-words-for-objective-c/</guid>
				<description>&lt;p&gt;Rails developers have the coolest tools, from migrations &lt;a href=&#34;https://rvm.beginrescueend.com/&#34;&gt;RVM&lt;/a&gt; to &lt;a href=&#34;http://gembundler.com/&#34;&gt;Bundler&lt;/a&gt; to &lt;a href=&#34;http://pow.cx/&#34;&gt;Pow&lt;/a&gt;. One cool Rails tool lets you explain approximately how long ago something happened in words, with phrases such as:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Less than 20 seconds ago&lt;/li&gt;&#xA;&lt;li&gt;About 3 minutes ago&lt;/li&gt;&#xA;&lt;li&gt;Over 3 years ago&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;You find this magic in &lt;code&gt;date_helper.rb&lt;/code&gt;, in the &lt;code&gt;distance_of_time_in_words&lt;/code&gt; method. I&amp;rsquo;m working on an iOS app that synchronizes with a Rails app that uses &lt;code&gt;distance_of_time_in_words&lt;/code&gt; to describe how long ago certain events occurred, and I needed to mimic the web app&amp;rsquo;s description of how long ago things happened. I could have added the description to the JSON that the Rails app returns, but not only did that seem silly, but also it meant that iOS users would have to re-sync to get updated descriptions of how long ago things happened. Better to implement a &amp;ldquo;distance of time in words&amp;rdquo; capability for iOS.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Quirky PowerCurl -- My New Favorite Product</title>
				<link>https://grailbox.com/posts/quirky-power-curl-my-new-favorite-product/</link>
				<pubDate>Sun, 06 Feb 2011 04:21:11 +0000</pubDate>
				<guid>https://grailbox.com/posts/quirky-power-curl-my-new-favorite-product/</guid>
				<description>&lt;p&gt;The power brick for a Mac laptop sprouts two cords: a skinny one that plugs in to the laptop, and a detachable fat one that plugs in to the wall. You can swap a plug for the fat one to lighten your travel load. (Funny story: a coworker didn&amp;rsquo;t know what the fat cord was for, so almost threw it away. Seeing our power bricks with the fat cord plugged in was his &amp;ldquo;aha&amp;rdquo; moment.)&lt;/p&gt;</description>
			</item>
			<item>
				<title>Pro Core Data for iOS Table of Contents</title>
				<link>https://grailbox.com/posts/pro-core-data-for-ios-table-of-contents/</link>
				<pubDate>Wed, 26 Jan 2011 16:03:48 +0000</pubDate>
				<guid>https://grailbox.com/posts/pro-core-data-for-ios-table-of-contents/</guid>
				<description>&lt;p&gt;I just saw &lt;a href=&#34;https://twitter.com/compoundj/status/30337239498104832&#34;&gt;this tweet&lt;/a&gt; from &lt;a href=&#34;https://twitter.com/#!/compoundj&#34;&gt;@compoundj&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I want 2 buy &amp;ldquo;Pro core data for iOS&amp;rdquo; by @michaelprivat &amp;amp; @hoop33, but I can&amp;rsquo;t find the table of contents online&amp;hellip;any suggestions?&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;Whoops.&lt;/p&gt;&#xA;&lt;p&gt;I checked both &lt;a href=&#34;http://amazon.com&#34;&gt;Amazon&lt;/a&gt; and &lt;a href=&#34;http://apress.com&#34;&gt;Apress&lt;/a&gt;, and sure enough — no table of contents. So, I emailed our project manager, and she&amp;rsquo;s fixing that. In the meantime, here it is, unformatted:&lt;/p&gt;&#xA;&lt;p&gt;&lt;br&gt;&#xA;Chapter 1: Getting Started&lt;br&gt;&#xA;What Is Core Data?&lt;br&gt;&#xA;History of Persistence in iOS&lt;br&gt;&#xA;Creating a Basic Core Data Application&lt;br&gt;&#xA;Understanding the Core Data Components&lt;br&gt;&#xA;Creating a New Project&lt;br&gt;&#xA;Running Your New Project&lt;br&gt;&#xA;Understanding the Application’s Components&lt;br&gt;&#xA;Fetching Results&lt;br&gt;&#xA;Inserting New Objects&lt;br&gt;&#xA;Initializing the Managed Context&lt;br&gt;&#xA;Adding Core Data to an Existing Project&lt;br&gt;&#xA;Adding the Core Data Framework&lt;br&gt;&#xA;Creating the Data Model&lt;br&gt;&#xA;Initializing the Managed Object Context&lt;br&gt;&#xA;Summary&lt;br&gt;&#xA;\&lt;/p&gt;</description>
			</item>
			<item>
				<title>Tri-state buttons in Gowalla 3</title>
				<link>https://grailbox.com/posts/tri-state-buttons-in-gowalla-3/</link>
				<pubDate>Thu, 30 Dec 2010 14:43:36 +0000</pubDate>
				<guid>https://grailbox.com/posts/tri-state-buttons-in-gowalla-3/</guid>
				<description>&lt;p&gt;When &lt;a href=&#34;http://gowalla.com&#34;&gt;Gowalla&lt;/a&gt; released version 3 of their iPhone client, they completely revamped the user interface. Although they switched from a rich olive green to a stony gray and downgraded the app&amp;rsquo;s icon:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;http://grailbox.com/images/gowalla_icon_old.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;old-icon&#34;&gt;Old Icon&lt;/h2&gt;&#xA;&lt;p&gt;&lt;img src=&#34;http://grailbox.com/images/gowalla_icon_new.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;new-icon&#34;&gt;New Icon&lt;/h2&gt;&#xA;&lt;p&gt;in general they improved the interface.&lt;/p&gt;&#xA;&lt;p&gt;For those unfamiliar with Gowalla, it&amp;rsquo;s a social location app that allows you to publish where you are to your friends. When you arrive at a recognizable location, you &amp;ldquo;check in&amp;rdquo; and choose whether to publish this information to just Gowalla or to other services (Facebook, Twitter, Foursquare, and Tumblr). For each of these services, you can be in three states:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Pro Core Data for iOS from Xcode 4 to Xcode 3</title>
				<link>https://grailbox.com/posts/pro-core-data-for-ios-from-xcode-4-to-xcode-3/</link>
				<pubDate>Wed, 29 Dec 2010 16:04:49 +0000</pubDate>
				<guid>https://grailbox.com/posts/pro-core-data-for-ios-from-xcode-4-to-xcode-3/</guid>
				<description>&lt;p&gt;Last summer, &lt;a href=&#34;http://apple.com&#34;&gt;Apple&lt;/a&gt; released a developer preview of Xcode 4 under NDA. When &lt;a href=&#34;http://michaelprivat.com&#34;&gt;Michael Privat&lt;/a&gt; and I began writing &lt;a href=&#34;http://www.amazon.com/Pro-Core-Data-Michael-Privat/dp/1430233559/ref=sr_1_1?ie=UTF8&amp;amp;qid=1293652367&amp;amp;sr=8-1&#34;&gt;Pro Core Data for iOS&lt;/a&gt; in August, we figured Apple would release the final version of Xcode 4 and lift the NDA by the time we completed the book. After all, it had taken about a year to write &lt;a href=&#34;http://www.amazon.com/Definitive-Guide-SWT-JFACE/dp/1590593251/ref=sr_1_4?s=books&amp;amp;ie=UTF8&amp;amp;qid=1293652404&amp;amp;sr=1-4&#34;&gt;The Definitive Guide to SWT and JFace&lt;/a&gt;. We used Xcode 4 for screen shots, instructions, guides, examples — in short, we based the book on Xcode 4.&lt;/p&gt;</description>
			</item>
			<item>
				<title>What Coke and Pepsi Can Teach Us About User Interfaces</title>
				<link>https://grailbox.com/posts/coke-vs-pepsi-user-interfaces/</link>
				<pubDate>Wed, 08 Dec 2010 15:22:47 +0000</pubDate>
				<guid>https://grailbox.com/posts/coke-vs-pepsi-user-interfaces/</guid>
				<description>&lt;p&gt;My oldest child spent much of his life with a loyalty to Coca-Cola matched only by Lassie&amp;rsquo;s loyalty to Timmy, and would go thirsty before allowing any product from Pepsi-Cola to wet his gullet. He freely drank Coke, Diet Coke, Sprite, Powerade, or Dasani, but never Pepsi, Sierra Mist, Aqua Splash, or anything else from those heathen infidels. Trips to Taco Bell required a swing through the McDonald&amp;rsquo;s drive-through for a beverage to accompany the latest bean-beef-cheese-tortilla mashup, as runs to the border offer only Pepsi products.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Make Diffs Readable</title>
				<link>https://grailbox.com/posts/make-diffs-readable/</link>
				<pubDate>Wed, 24 Nov 2010 08:46:38 +0000</pubDate>
				<guid>https://grailbox.com/posts/make-diffs-readable/</guid>
				<description>&lt;p&gt;Every time I look at a diff, I&amp;rsquo;m reminded of the gulf between me and &lt;a href=&#34;http://en.wikipedia.org/wiki/Linus_Torvalds&#34;&gt;Linus Torvalds&lt;/a&gt;. I just know he&amp;rsquo;s fluent in Finnish, English, and diff, but me? I know the diff syntax. I study the semantics. Heck — I even colorize my diffs. Doesn&amp;rsquo;t matter. Each time I view a diff, my head cocks to one side, and then the other, in utter bemusement. My hands stab tentatively right and left in flow with the &amp;lt;s and &amp;gt;s as if directing airplanes to their gates. I begin muttering like a paranoid schizophrenic, telling myself that &amp;ldquo;plus signs means addition, so those lines must be new, and those double @ signs mean an owl is staring at me, no, wait . . . .&amp;rdquo;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Guiffy SureMerge is Today&#39;s MacZot, Works Cross-Platform</title>
				<link>https://grailbox.com/posts/guiffy-suremerge-is-todays-maczot-works-cross-platform/</link>
				<pubDate>Thu, 11 Nov 2010 10:37:08 +0000</pubDate>
				<guid>https://grailbox.com/posts/guiffy-suremerge-is-todays-maczot-works-cross-platform/</guid>
				<description>&lt;p&gt;Today&amp;rsquo;s &lt;a href=&#34;http://www.maczot.com/&#34;&gt;MacZot&lt;/a&gt; is &lt;a href=&#34;http://www.guiffy.com/&#34;&gt;Guiffy SureMerge&lt;/a&gt;, a three-way diff/merge tool. It&amp;rsquo;s discounted 49% today only ($30 vs $59), and the Guiffy website says a license allows you to use the product on all supported platforms (Mac OS X, Linux, and Windows).&lt;/p&gt;&#xA;&lt;p&gt;Why am I excited about another diff tool? This apparently is the excellent three-way diff tool built in to the &lt;a href=&#34;http://www.accurev.com/&#34;&gt;AccuRev&lt;/a&gt; client that we use at &lt;a href=&#34;http://www.availity.com/&#34;&gt;Availity&lt;/a&gt;, where I work, and it makes diffing and merging SO much easier. I use &lt;a href=&#34;http://git-scm.com/&#34;&gt;Git&lt;/a&gt; for my side projects, and diffing and merging isn&amp;rsquo;t nearly as easy as it is using AccuRev and the integrated Guiffy tool. Guiffy publishes &lt;a href=&#34;http://www.guiffy.com/help/GuiffyHelp/Git.html&#34;&gt;instructions for using SureMerge with Git&lt;/a&gt;.&lt;/p&gt;</description>
			</item>
			<item>
				<title>10 Must-Install Mac Applications</title>
				<link>https://grailbox.com/posts/10-must-install-mac-applications/</link>
				<pubDate>Tue, 09 Nov 2010 18:48:03 +0000</pubDate>
				<guid>https://grailbox.com/posts/10-must-install-mac-applications/</guid>
				<description>&lt;p&gt;I&amp;rsquo;m a software developer, so bear in mind that my Mac is for working and coding (mostly Objective-C, Java, and Ruby). You won&amp;rsquo;t find apps for ripping DVDs, viewing videos, or playing Canasta. These are the apps I use over and over to get my job done. Note that I assume a Mac OS X installation, so I didn&amp;rsquo;t include Safari or Xcode — you&amp;rsquo;d better have those already installed.&lt;/p&gt;</description>
			</item>
			<item>
				<title>From One Steve to Another: It&#39;s About the Developers</title>
				<link>https://grailbox.com/posts/from-one-steve-to-another-its-about-the-developers/</link>
				<pubDate>Fri, 22 Oct 2010 15:08:54 +0000</pubDate>
				<guid>https://grailbox.com/posts/from-one-steve-to-another-its-about-the-developers/</guid>
				<description>&lt;p&gt;I got to watch Steve Ballmer, CEO of Microsoft, being interviewed at the 2010 Gartner Symposium in Orlando this past week. Though &lt;a href=&#34;http://en.wikipedia.org/wiki/Steve_Ballmer&#34;&gt;Forbes lists him as the 33rd richest person in the world&lt;/a&gt;, he strikes me as the kind of rube who snaps towels at bare geriatric behinds in the country club locker room and passes gas while guffawing at black tie affairs. He&amp;rsquo;s raucous, loud, uncouth, and passionate about technology and about Microsoft. In one of his more famous moments, he showed that passion by &lt;a href=&#34;http://www.youtube.com/watch?v=8To-6VIJZRE&#34;&gt;slopping and dripping across a stage&lt;/a&gt; while chanting &amp;ldquo;Developers! Developers! Developers!&amp;rdquo;&lt;/p&gt;</description>
			</item>
			<item>
				<title>The Quickest Way to Lock a Mac</title>
				<link>https://grailbox.com/posts/the-quickest-way-to-lock-a-mac/</link>
				<pubDate>Thu, 14 Oct 2010 17:31:09 +0000</pubDate>
				<guid>https://grailbox.com/posts/the-quickest-way-to-lock-a-mac/</guid>
				<description>&lt;p&gt;When you walk away from a Windows machine, you can press &amp;lt;Windows key&amp;gt;+L to lock the screen and keep out the bad guys. Mac OS X has no such shortcut, so the workaround I&amp;rsquo;ve been using is to go into the Security preferences and check the box that says &amp;ldquo;Require password immediately after sleep or screen saver begins,&amp;rdquo; like this:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://grailbox.com/images/lock_a_mac/security_preferences.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Then, I set one of the corners of my screen to trigger the screen saver in the Expose &amp;amp; Spaces preferences, like this:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Hanging Out with Old Friends: SWT and JFace</title>
				<link>https://grailbox.com/posts/hanging-out-with-old-friends-swt-and-jface/</link>
				<pubDate>Tue, 12 Oct 2010 12:59:12 +0000</pubDate>
				<guid>https://grailbox.com/posts/hanging-out-with-old-friends-swt-and-jface/</guid>
				<description>&lt;p&gt;I&amp;rsquo;ve been working on a new project at work that deals with files in &lt;a href=&#34;http://www.x12.org/&#34;&gt;X12 format&lt;/a&gt;: delimited files that generally use asterisks for field delimiters and tildes for line delimiters. Here&amp;rsquo;s an example fragment:&lt;/p&gt;&#xA;&lt;p&gt;&lt;br&gt;&#xA;ISA*00*          *00*          *ZZ*XXXXXXXXXX     *01*030240928*100803*1628*U*00401*000091929*1*P*:&lt;del&gt;&lt;br&gt;&#xA;GS*HC*XXXXXXXXXX*030240928*20100803*1628*91929*X*004010X096A1&lt;/del&gt;&lt;br&gt;&#xA;ST*837*00411452~\&lt;/p&gt;&#xA;&lt;p&gt;The way to interpret this file is that each line is a segment composed of elements. The first element in each line, called the zeroth element, names the segment. For example, the first line in the segment above is the ISA segment. The segment then breaks down into its elements, like this:&lt;/p&gt;</description>
			</item>
			<item>
				<title>The End of Innovation</title>
				<link>https://grailbox.com/posts/the-end-of-innovation/</link>
				<pubDate>Fri, 01 Oct 2010 08:41:38 +0000</pubDate>
				<guid>https://grailbox.com/posts/the-end-of-innovation/</guid>
				<description>&lt;p&gt;Last Saturday, &lt;a href=&#34;http://michaelprivat.com&#34;&gt;Michael Privat&lt;/a&gt; and I drove up to Atlanta to attend &lt;a href=&#34;http://cocoacamp.org&#34;&gt;Cocoa Camp&lt;/a&gt;, a BarCamp-style un-conference focused on Cocoa. We each got two free T-shirts, got to present twice, met a lot of bright folks, learned a lot, and had a great time.&lt;/p&gt;&#xA;&lt;p&gt;Aaron Hillegass from &lt;a href=&#34;http://bignerdranch.com/&#34;&gt;Big Nerd Ranch&lt;/a&gt; gave the keynote on &amp;ldquo;The End of Innovation.&amp;rdquo; The man is tall, and he does indeed &lt;a href=&#34;http://bignerdranch.com/photos/person/aaron-hillegass.jpg&#34;&gt;wear that hat&lt;/a&gt;, but he confessed it&amp;rsquo;s a marketing ploy and he doffs it in the office. His keynote was insightful, though a little depressing, and posited that the end of innovation is here for iPhones and iOS apps. Wow. He followed that, however, with what you can do to fend off the end. Here are the points he made as I understood them:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Sibling Squabble over Regular Expressions</title>
				<link>https://grailbox.com/posts/sibling-squabble-over-regular-expressions/</link>
				<pubDate>Thu, 23 Sep 2010 09:31:42 +0000</pubDate>
				<guid>https://grailbox.com/posts/sibling-squabble-over-regular-expressions/</guid>
				<description>&lt;p&gt;I was working in Java yesterday to parse a URL that had a somewhat flexible format, so I set up my unit tests, wrote the code in a declarative fashion using &lt;code&gt;indexOf()&lt;/code&gt; and &lt;code&gt;substring()&lt;/code&gt;, and got to greenbar. Then I looked at the code and shuddered at its inelegance. Time to switch to regular expressions.&lt;/p&gt;&#xA;&lt;p&gt;Just in case someone hasn&amp;rsquo;t heard the Jamie Zawinski quote on regular expressions:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Some people, when confronted with a problem, think “I know, I&amp;rsquo;ll use regular expressions.” Now they have two problems.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Users Don&#39;t Read? They Don&#39;t Listen, Either!</title>
				<link>https://grailbox.com/posts/users-dont-read-they-dont-listen-either/</link>
				<pubDate>Mon, 20 Sep 2010 08:46:33 +0000</pubDate>
				<guid>https://grailbox.com/posts/users-dont-read-they-dont-listen-either/</guid>
				<description>&lt;p&gt;The company I work for, &lt;a href=&#34;http://www.availity.com&#34;&gt;Availity, LLC&lt;/a&gt;, provides (among other things) a web application that allows healthcare providers to submit transactions to insurance companies and get responses, all in real time. Users learn just one user interface (ours), submit the transaction to us, and we do the dirty work of routing the transaction to the insurance company, receiving the response, validating it according to HIPAA guidelines, and displaying the response back to the user.&lt;/p&gt;</description>
			</item>
			<item>
				<title>How to Write a Chapter a Week</title>
				<link>https://grailbox.com/posts/how-to-write-a-chapter-a-week/</link>
				<pubDate>Mon, 13 Sep 2010 14:16:56 +0000</pubDate>
				<guid>https://grailbox.com/posts/how-to-write-a-chapter-a-week/</guid>
				<description>&lt;p&gt;When Michael Privat (&lt;a href=&#34;http://twitter.com/michaelprivat&#34;&gt;@michaelprivat&lt;/a&gt;) and I signed up to write a &lt;a href=&#34;http://apress.com/book/view/1430233559&#34;&gt;book for Apress&lt;/a&gt;, we both gulped at the schedule: one chapter due each week. He gulped because, despite being a book virgin, it sounded like a breakneck pace. I gulped as a book veteran because I remembered the work involved in bringing &lt;a href=&#34;http://apress.com/book/view/1590593251&#34;&gt;The Definitive Guide to SWT and JFace&lt;/a&gt; to press. Writing this book seemed like a good opportunity, though, so we steeled our fingers, set our brains, and started working. We just finished drafting chapter five, and we&amp;rsquo;re precisely on schedule: five chapters, five weeks. Four chapters and four weeks to go!&lt;/p&gt;</description>
			</item>
			<item>
				<title>We Got a Cover!</title>
				<link>https://grailbox.com/posts/we-got-a-cover/</link>
				<pubDate>Sat, 11 Sep 2010 08:22:48 +0000</pubDate>
				<guid>https://grailbox.com/posts/we-got-a-cover/</guid>
				<description>&lt;p&gt;Every so often I search Amazon for Pro Core Data for iOS, which I did this morning. Last time I checked, we didn&amp;rsquo;t have a cover image, but now we do! &lt;a href=&#34;http://www.amazon.com/Pro-Core-Data-Michael-Privat/dp/1430233559/ref=sr_1_9?ie=UTF8&amp;amp;s=books&amp;amp;qid=1284206814&amp;amp;sr=8-9&#34;&gt;Look here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;I have no idea what that is, either, so I&amp;rsquo;ve asked our project manager to enlighten us. Any guesses?&lt;/p&gt;&#xA;&lt;p&gt;We&amp;rsquo;re also working to update the &amp;ldquo;About the Author&amp;rdquo; section to include Michael.&lt;/p&gt;&#xA;&lt;p&gt;We&amp;rsquo;re finishing up Chapter 5 this weekend. I&amp;rsquo;m writing about the undo manager right now.&lt;/p&gt;</description>
			</item>
			<item>
				<title>From Ablog to Grailbox</title>
				<link>https://grailbox.com/posts/from-ablog-to-grailbox/</link>
				<pubDate>Fri, 10 Sep 2010 16:35:41 +0000</pubDate>
				<guid>https://grailbox.com/posts/from-ablog-to-grailbox/</guid>
				<description>&lt;p&gt;After some discussion with Apress, I&amp;rsquo;ve decided to move my blog from there to here. Many thanks to Apress for hosting my blog all these years. We must still like each other, too, because not only do I fill my shelves and my nook with all kinds of Apress titles, but I&amp;rsquo;m finally writing a second book for them. Details to come soon.&lt;/p&gt;&#xA;&lt;p&gt;Many thanks to Pete Aylward at Apress for helping me move my content from there to here. We had an adventure, as the version of Wordpress running Ablog didn&amp;rsquo;t have an export feature. Pete exported my entries as a CSV, and I converted them to a WXR (Wordpress eXport Record, if memory serves) and imported them. I had some trouble finding a WXR spec, until I realized I had Wordpress running and able to export entries, so I created a couple of dummy entries (yeah, yeah, I know — ALL of my entries are dummy entries) and exported them to a WXR file. From there, I was able to reverse engineer the format, write a Ruby program to convert the data, and I was good to go. As you look at past entries, you&amp;rsquo;ll find them out of order chronologically, so I put an original post date on them and was satisfied. You&amp;rsquo;ll also find some formatting glitches that I may or may not fix eventually . . . .&lt;/p&gt;</description>
			</item>
			<item>
				<title>How to Set Up a New MacBook Pro for Development</title>
				<link>https://grailbox.com/posts/how-to-set-up-a-new-macbook-pro-for-development/</link>
				<pubDate>Wed, 01 Sep 2010 11:32:56 +0000</pubDate>
				<guid>https://grailbox.com/posts/how-to-set-up-a-new-macbook-pro-for-development/</guid>
				<description>&lt;p&gt;I recently purchased a MacBook Pro &lt;em&gt;and&lt;/em&gt; got a new MacBook Pro at work, so I had two machines to set up. Here are the steps I went through to make these machines tuned for developing iOS applications as well as doing Java, Ruby, and Groovy development. I&amp;rsquo;d love to hear feedback on things I missed, things you don&amp;rsquo;t agree with, or things that didn&amp;rsquo;t work for you.&lt;/p&gt;&#xA;&lt;p&gt;Special thanks to Rogelio Samour, aka Ro, (&lt;a href=&#34;http://twitter.com/therubymug/&#34;&gt;@therubymug&lt;/a&gt;) and the rest of the folks at &lt;a href=&#34;http://hashrocket.com&#34;&gt;Hashrocket&lt;/a&gt; for sharing their setup steps for setting up a MacBook Pro for Rails development.&lt;/p&gt;</description>
			</item>
			<item>
				<title>6 Things Apple Should Change on the iPhone--and What You Can Do Until They Do</title>
				<link>https://grailbox.com/posts/another-post-12/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-12/</guid>
				<description>&lt;p&gt;Originally posted 2009-08-30 13:37:19&lt;/p&gt;&#xA;&lt;p&gt;Salespeople may live from a suitcase, but I&amp;rsquo;ve lived from a PDA for over a decade. I&amp;rsquo;ve bounced from Palm to Windows Mobile to BlackBerry before landing on my iPhone about six weeks ago. I love the big, crisp screen, the usability touches, and the abundance of apps&amp;ndash;I tap the App Store icon far too often for my bank account&amp;rsquo;s viability. This is my favorite PDA so far.&lt;/p&gt;</description>
			</item>
			<item>
				<title>A Terrifying Experience in the Night</title>
				<link>https://grailbox.com/posts/another-post-46/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-46/</guid>
				<description>&lt;p&gt;Originally posted 2006-06-08 02:56:35&lt;/p&gt;&#xA;&lt;p&gt;Just before 5:00 this morning, my daughters&amp;rsquo; screams ripped me from sleep. I have two sons and three daughters. The boys fight and the girls scream. That&amp;rsquo;s just what they do. So screaming girls shouldn&amp;rsquo;t startle me.&lt;/p&gt;&#xA;&lt;p&gt;These screams, however, differed from the usual \Give me back my shirt!\ or \No, you can&amp;rsquo;t use my doll as home plate!\ screams. These were horror flick screams: blood-curdling, ear-shattering, abject-terror-my-life-is-ending screams. As I leapt from bed, my first thought was that one of my daughters had fallen from bed, landed awkwardly on a toy, and grotesquely broken her back. The three girls share a bedroom and have bunkbeds. They all usually sleep on the bottom bunk, however, as they did last night, so that scenario didn&amp;rsquo;t seem likely.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Akiyoshi&#39;s illusion pages</title>
				<link>https://grailbox.com/posts/another-post-52/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-52/</guid>
				<description>&lt;p&gt;Originally posted 2006-03-13 03:34:08&lt;/p&gt;&#xA;&lt;p&gt;These are some amazing optical illusions, accompanied by explanations for why they fool the eyes. I especially like \Rollers\&amp;ndash;I find myself staring at one portion of the image to verify that it isn&amp;rsquo;t actually moving, and wondering if somehow it isn&amp;rsquo;t actually an animated gif.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;%22http://www.ritsumei.ac.jp/~akitaoka/index-e.html%22&#34;&gt;Akiyoshi&amp;rsquo;s illusion pages&lt;/a&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Alpha Geek</title>
				<link>https://grailbox.com/posts/another-post-45/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-45/</guid>
				<description>&lt;p&gt;Originally posted 2006-06-22 16:09:47&lt;/p&gt;&#xA;&lt;p&gt;I think I&amp;rsquo;ve found Alpha Geek. He&amp;rsquo;s one of the Unix sysadmins where I work. He hacks. He tinkers. He solves problems I can&amp;rsquo;t fathom. He does things like write Linux drivers for his cable modem so he can surf the Web at broadband speeds using Konqueror. Or develop a heap dump tool in a weekend to help us diagnose memory issues in our JVM. This time he&amp;rsquo;s outdone himself, however. For Father&amp;rsquo;s Day, he received an iPod Nano. So far, he&amp;rsquo;s loaded three different operating systems on it.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Ant Tasks for AccuRev</title>
				<link>https://grailbox.com/posts/another-post-53/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-53/</guid>
				<description>&lt;p&gt;Originally posted 2006-03-11 05:14:02&lt;/p&gt;&#xA;&lt;p&gt;When we bought AccuRev a little over a year ago, we knew AccuRev had no direct Ant support, but that it had a command line tool that we could use inside our Ant scripts. This setup worked well, but required lots of comments for all the command line switches we were passing so that future developers could maintain that section of the script. Besides, the aesthetics of that part of the script grated on me, so I cobbled together an Ant task for extracting files from AccuRev (the \populate\ command), with plans to create more tasks that I&amp;rsquo;ve never gotten around to fulfilling. The task uses the command-line tool at its guts to do the actual extraction work. You can find the project here: &lt;a href=&#34;%22http://sourceforge.net/projects/accurev-ant%22&#34;&gt;SourceForge.net: Ant Tasks for AccuRev&lt;/a&gt;.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Antivirus</title>
				<link>https://grailbox.com/posts/another-post-89/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-89/</guid>
				<description>&lt;p&gt;Originally posted 2004-09-30 08:20:33&lt;/p&gt;&#xA;&lt;p&gt;My Panda antivirus software informs me that my antivirus updates subscription approaches its end, and urges me to renew. In fact, the warning defaults to one visible option: Renew Now. Clicking a \show more\ button reveals one more option: Remind Me Later. What happened to Shut Up and Go Away?&lt;/p&gt;&#xA;&lt;p&gt;Antivirus renewal time always brings me angst&amp;ndash;should I embrace the ease of electronic renewal? Or, for about the same price, should I just go buy a new \tools\ suite? Despite my annual wavering, I always go for the new tools suite. For the price of a year&amp;rsquo;s antivirus subscription renewal, I get the latest versions of some new tool suite. Seems a no-brainer. The suites I&amp;rsquo;ve gone through, in various versions:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Apple Mistake: Turning off Wi-Fi</title>
				<link>https://grailbox.com/posts/another-post/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post/</guid>
				<description>&lt;p&gt;Originally posted 2010-07-06 08:06:58&lt;/p&gt;&#xA;&lt;p&gt;Everytime my 16 year-old son sees the screen of my iPhone 3GS, he mocks me as if I were carrying a dog turd. He claims that the jagged pixelation tears his retinas, and he hurriedly scurries to the rounded curves of his iPhone 4. Youth have no respect.&lt;/p&gt;&#xA;&lt;p&gt;Apple, too, has no respect for those of us who live in the intersection of \always in a hurry\ and \need to prolong battery life.\ Like a vampire athirst for blood, we rush from power outlet to power outlet, cursing the anemia of our 3GS&amp;rsquo;s battery and urging it to suck energy up quickly. We read and obey every blog post that promises tips to prolong iPhone battery life, and it&amp;rsquo;s never enough.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Are Java People Nuts?</title>
				<link>https://grailbox.com/posts/another-post-93/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-93/</guid>
				<description>&lt;p&gt;Originally posted 2004-07-29 13:23:48&lt;/p&gt;&#xA;&lt;p&gt;A friend of mine who works with .NET recently expressed some interest in Java. I urged him to download and install Eclipse and give Java a whirl. A couple of days later, he e-mailed me this gem:&lt;/p&gt;&#xA;&lt;p&gt;\Ok, I looked at Eclipse and Java a bit. Here is my take: Java people are nuts. It is like all the loons from the Linux, BSD, and OS/2 camps got together and decided they&amp;rsquo;d all use a standard language. Then they invited some Powerbuilder evangelists to the group to give it a bit of a cult feel. I think I&amp;rsquo;ll stick with Microsoft tools where the feeling I get is &amp;lsquo;it pays the bills.&amp;rsquo; I don&amp;rsquo;t think software development should be a religious experience or an artistic expression. Behold my curly braces! I think it should just get the job done.\&lt;/p&gt;</description>
			</item>
			<item>
				<title>Baby Names</title>
				<link>https://grailbox.com/posts/another-post-77/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-77/</guid>
				<description>&lt;p&gt;Originally posted 2005-06-16 04:49:45&lt;/p&gt;&#xA;&lt;p&gt;Naming babies has always caused my wife and me angst, and we had to do it five times. I wish we&amp;rsquo;d found &lt;a href=&#34;%22http://www.babynamewizard.com/namevoyager/lnv0105.html%22&#34;&gt;The Baby Name Wizard&amp;rsquo;s NameVoyager&lt;/a&gt; to help guide us. It&amp;rsquo;s a Java applet that shows name popularities over time: you start typing a name, and it starts displaying a graph of the usage per million babies per year. I discovered that my name, Robert, has steadily declined in popularity since the 1930s. I always knew that my parents were square.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Big To-Do in the Land of To Do</title>
				<link>https://grailbox.com/posts/another-post-4/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-4/</guid>
				<description>&lt;p&gt;Originally posted 2010-05-16 07:41:50&lt;/p&gt;&#xA;&lt;p&gt;I love software updates, and both my iPhone and my iPad offer me plenty. I&amp;rsquo;ve downloaded enough apps, both free and purchased, that I can count on available updates a few times a week. Like unwrapping a gift, updating software brings mystery, surprise, and intrigue. What&amp;rsquo;s fixed? What&amp;rsquo;s new? And yes, sometimes, What did they break? Always, though, software updates offer the thrill of getting something you didn&amp;rsquo;t have before. Launching App Store on both iPhone and iPad and checking for updates is part of my daily routine.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Caller ID Abuse</title>
				<link>https://grailbox.com/posts/another-post-85/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-85/</guid>
				<description>&lt;p&gt;Originally posted 2005-03-15 18:01:55&lt;/p&gt;&#xA;&lt;p&gt;You&amp;rsquo;ve done it before: you&amp;rsquo;ve picked up the telephone and dialed the wrong number. Sometimes, you&amp;rsquo;ve realized immediately, and hung up. Other times, you haven&amp;rsquo;t realized your mistake until the answering machine answers, and the name on the machine doesn&amp;rsquo;t match the one in your little black book. Still others, you&amp;rsquo;ve gotten a live person at the other end of your call who says, \Hello?\ or some approximation, and you don&amp;rsquo;t recognize the voice so you slam down the receiver. The foreign voice hasn&amp;rsquo;t always tripped you, though, and sometimes you&amp;rsquo;ve gone so far to ask, \Hello? Is Bill there?\ only to be rebuffed by the response, \I&amp;rsquo;m sorry, you have the wrong number.\&lt;/p&gt;</description>
			</item>
			<item>
				<title>Cancelling a Credit Card</title>
				<link>https://grailbox.com/posts/another-post-36/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-36/</guid>
				<description>&lt;p&gt;Originally posted 2007-05-15 14:02:20&lt;/p&gt;&#xA;&lt;p&gt;Last Sunday&amp;ndash;&lt;a href=&#34;%22http://en.wikipedia.org/wiki/Mother&#39;s_Day%22&#34;&gt;Mother&amp;rsquo;s Day&lt;/a&gt; in the United States&amp;ndash;my wife&amp;rsquo;s purse disappeared. Actually, someone put a crowbar through the passenger window of her van as it sat in our church parking lot and helped him or herself to the purse. The crook felt no sympathy toward a mother of five losing her new &lt;a href=&#34;%22http://www.verabradley.com/Site/Home.aspx?%22&#34;&gt;Vera Bradley&lt;/a&gt; purse with matching wallet and coin purse on Mother&amp;rsquo;s Day, but I guess crooks don&amp;rsquo;t spend much time thinking of others.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Capital NOT</title>
				<link>https://grailbox.com/posts/another-post-17/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-17/</guid>
				<description>&lt;p&gt;Originally posted 2008-04-28 01:28:26&lt;/p&gt;&#xA;&lt;p&gt;People are always careful when typing emails. People are now always careful when typing emails. People are not always careful when typing emails.&lt;/p&gt;&#xA;&lt;p&gt;Emailers often both read and write the above statements synonymously, simultaneously asserting and negating their intents as they saunter through communication wreckage. I&amp;rsquo;m not sure why correctly typing \not\ or correctly reading \not\ poses such a challenge, but I bump into this problem at least weekly, if not daily.&lt;/p&gt;</description>
			</item>
			<item>
				<title>CoolSmartPhone.com - T-Mobile MDA Vario Review</title>
				<link>https://grailbox.com/posts/another-post-56/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-56/</guid>
				<description>&lt;p&gt;Originally posted 2006-02-18 17:38:39&lt;/p&gt;&#xA;&lt;p&gt;I went to a different T-Mobile store yesterday, and found that same mystery phone that&amp;rsquo;s not yet available. This time, however, I got a name, and Google found me some reviews:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;%22http://www.coolsmartphone.com/article479.html%22&#34;&gt;CoolSmartPhone.com - T-Mobile MDA Vario Review&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;%22http://msnbc.msn.com/id/11116189/%22&#34;&gt;T-Mobile unveils new wireless e-mail phones&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;%22http://www.t-mobile.com/promos/online/preregmdasda/%22&#34;&gt;T-Mobile&amp;rsquo;s announcement&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I signed up to be notified when it becomes available.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Crossing the Great Divide</title>
				<link>https://grailbox.com/posts/another-post-66/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-66/</guid>
				<description>&lt;p&gt;Originally posted 2005-08-07 18:06:23&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;Do not go gentle into that good night. Rage, rage against the dying of the light.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Thus penned &lt;a href=&#34;%22http://en.wikipedia.org/wiki/Dylan_Thomas%22&#34;&gt;Dylan Thomas&lt;/a&gt;, the great Welsh poet, to his dying father. I felt as if he were writing to me, instead, when I left my development job this past week to enter the realm of management.&lt;/p&gt;&#xA;&lt;p&gt;Yup, I swapped my upturned Dilbert tie for a pointy-haired coiffure. I willingly relinquished 42 IQ points. I traded discussions of refactoring patterns for discussions on how to motivate employees. Did I go too gentle to the world of endless meetings? Did I not rage hard enough against the dying of my programming career? Time will tell.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Eclipse Project Settings</title>
				<link>https://grailbox.com/posts/another-post-67/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-67/</guid>
				<description>&lt;p&gt;Originally posted 2005-07-13 06:12:12&lt;/p&gt;&#xA;&lt;p&gt;I just came across &lt;a href=&#34;%22http://www.vasanth.in/PermaLink,guid,98cc01c5-2b09-47e9-bc52-35706d1ac978.aspx%22&#34;&gt;this&lt;/a&gt;, which explains how to put Eclipse project settings like code styles in version control. Eclipse continues to amaze me with how they&amp;rsquo;re advancing the state of IDEs!&lt;/p&gt;</description>
			</item>
			<item>
				<title>Eclipse vs NetBeans</title>
				<link>https://grailbox.com/posts/another-post-70/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-70/</guid>
				<description>&lt;p&gt;Originally posted 2005-07-05 11:31:39&lt;/p&gt;&#xA;&lt;p&gt;I came across this post today via PlantEclipse:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;%22http://blogs.zdnet.com/BTL/index.php?p=1546%22&#34;&gt;http://blogs.zdnet.com/BTL/index.php?p=1546&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;It&amp;rsquo;s a long article&amp;ndash;too long for me to read fully. The parts I read, however, which represent a significant portion of the whole, demonstrated that the authors:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Didn&amp;rsquo;t know much about Java development, and&lt;/li&gt;&#xA;&lt;li&gt;Didn&amp;rsquo;t know much about JavaOne&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Their premise, as I understood it, was that all the JavaOne talk focused on Eclipse, not NetBeans. Further, that developing Java applications in Eclipse encourages OS-specific applications, while developing Java applications in NetBeans does not. They must be Microsoft guys.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Ergonomics</title>
				<link>https://grailbox.com/posts/another-post-86/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-86/</guid>
				<description>&lt;p&gt;Originally posted 2005-02-18 12:28:05&lt;/p&gt;&#xA;&lt;p&gt;While shooting baskets with my son a few months ago, I noticed my wrist protesting every shot I threw up. Odd, I thought.I didn&amp;rsquo;t recall injuring my wrist. Since the stiffness in my wrist groaned loud enough to hear only when shooting a basketball, I promptly forgot about the injury.&lt;/p&gt;&#xA;&lt;p&gt;A couple of months later, my son coaxed me out to the driveway to play some more hoops. My first shot reminded me about my cranky wrist. I immediately concluded that I don&amp;rsquo;t play basketball enough. Then, I puzzled over why an injury I couldn&amp;rsquo;t remember continued to linger in my wrist. You&amp;rsquo;ve probably figured out the cause by now, but I&amp;rsquo;m a bit thick so it took me a little longer to realize that since I work on computers all day, every day, I must be succumbing to some sort of Repetitive Strain Injury (RSI).&lt;/p&gt;</description>
			</item>
			<item>
				<title>Ergonomics Followup</title>
				<link>https://grailbox.com/posts/another-post-82/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-82/</guid>
				<description>&lt;p&gt;Originally posted 2005-04-05 02:29:36&lt;/p&gt;&#xA;&lt;p&gt;In an &lt;a href=&#34;%22http://blogs.apress.com/archives/000426.php?author=rob_warner%22&#34;&gt;earlier entry&lt;/a&gt; I complained about wrist pain, and described my quest to swap out my mouse and keyboard for more ergonomic offerings. I purchased an &lt;a href=&#34;%22http://www.evoluent.com%22&#34;&gt;Evoluent Vertical Mouse&lt;/a&gt; and a &lt;a href=&#34;%22http://www.typematrix.com%22&#34;&gt;TypeMatrix EZ-Reach 2030&lt;/a&gt;. I&amp;rsquo;m happy to report that my wrist pain has fled. Wise purchases.&lt;/p&gt;&#xA;&lt;p&gt;I also have two conversation starters on my desk now. I haven&amp;rsquo;t yet determined whether that&amp;rsquo;s a good thing.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Expiring Ink?</title>
				<link>https://grailbox.com/posts/another-post-16/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-16/</guid>
				<description>&lt;p&gt;Originally posted 2008-05-07 11:56:22&lt;/p&gt;&#xA;&lt;p&gt;I walked past our office plotter the other day and noticed this message on the console:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;%22http://grailbox.com/images/cartridges.jpg%22/&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This picture is blurry but says, \Cartridges will expire in days: 8.\ Are you kidding me? When did ink start expiring like 2% milk? I&amp;rsquo;ve heard of invisible ink, but expiring ink? How dumb do they think we are?&lt;/p&gt;&#xA;&lt;p&gt;One of the IT guys happened by while I spluttered about the stain of injustice. He opined that, since plotters weren&amp;rsquo;t pressed into frequent enough use to turn over enough ink cartridges to net enough profits, HP had to invent another way to extract purchase orders from data modeling departments. Hence, the arbitrary chromatic shelf life.&lt;/p&gt;</description>
			</item>
			<item>
				<title>External Recycle Bin</title>
				<link>https://grailbox.com/posts/another-post-32/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-32/</guid>
				<description>&lt;p&gt;Originally posted 2007-08-25 02:23:12&lt;/p&gt;&#xA;&lt;p&gt;From the what-will-they-think-of-next department, here&amp;rsquo;s an external hard drive designed to house your deleted files. It&amp;rsquo;s shaped like a trash can and sports the recycling logo, so it attempts to cover both the Mac and the Windows scenarios. Truthfully, it looks more like a coffee cup to me. It uses Bluetooth to connect to your computer, so you can just set it on your desk and never think about until you need to recover something, or until you take your laptop on the road . . . .&lt;/p&gt;</description>
			</item>
			<item>
				<title>Fine Engineering</title>
				<link>https://grailbox.com/posts/another-post-25/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-25/</guid>
				<description>&lt;p&gt;Originally posted 2007-10-10 13:54:07&lt;/p&gt;&#xA;&lt;p&gt;The rain Florida has received over the past few weeks has revealed some roofing shortcomings. We apparently have a roof leak in the building where I work&amp;ndash;I walked into work the other day and saw this:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;%22http://grailbox.com/images/hose.jpg%22/&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Yep, that&amp;rsquo;s a hose taped to the ceiling, running down to a trash can in the hallway. And there it&amp;rsquo;s sat for a week.&lt;/p&gt;&#xA;&lt;p&gt;Or maybe the leak wasn&amp;rsquo;t caused by the rain&amp;ndash;maybe one of our programmers slipped in a &lt;a href=&#34;%22http://www.joelonsoftware.com/articles/LeakyAbstractions.html%22&#34;&gt;Leaky Abstraction&lt;/a&gt;!&lt;/p&gt;</description>
			</item>
			<item>
				<title>FizzBuzz Improved</title>
				<link>https://grailbox.com/posts/another-post-21/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-21/</guid>
				<description>&lt;p&gt;Originally posted 2008-11-12 13:18:42&lt;/p&gt;&#xA;&lt;p&gt;In my &lt;a href=&#34;%22http://ablog.apress.com/?p=1026%22&#34;&gt;post on interviewing Java developers&lt;/a&gt;, I explain how and why we make prospective hires write code on a whiteboard. In a similar vein, &lt;a href=&#34;%22http://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-who-grok-coding/%22&#34;&gt;Imran on Tech posts about making developers write FizzBuzz&lt;/a&gt;. Several of us read the article, got caught in the, \Huh? That doesn&amp;rsquo;t sound hard. Let me code it really quick!\ trap, and decided to add FizzBuzz to our standard suite of whiteboard interview questions.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Forgetting Attachments</title>
				<link>https://grailbox.com/posts/another-post-69/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-69/</guid>
				<description>&lt;p&gt;Originally posted 2005-07-11 13:56:45&lt;/p&gt;&#xA;&lt;p&gt;Today, for the 4,256th time in my email career, I sent an email that promised an attachment but sallied forth with no files attached. After the recipient pointed out my mistake, I hastily resent the email with the proper file attached. Then I got to thinking: why don&amp;rsquo;t email clients detect this sort of behavior and protect us poor digital scribes from ourselves? This seems to be &lt;strong&gt;exactly&lt;/strong&gt; the sort of thing that computers excel at. So, I launched Google and found this:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Fun with Amazon</title>
				<link>https://grailbox.com/posts/another-post-76/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-76/</guid>
				<description>&lt;p&gt;Originally posted 2005-06-17 07:47:29&lt;/p&gt;&#xA;&lt;p&gt;I came across &lt;a href=&#34;%22http://www.panopticist.com/archives/68.html%22&#34;&gt;this blog entry&lt;/a&gt; that talks about a web site that allows you to type in a keyword search. It then searches &lt;a href=&#34;%22http://www.amazon.com%22&#34;&gt;Amazon&lt;/a&gt; using that keyword, and builds a graphic of the keyword with the covers of the books it finds. &lt;a href=&#34;%22http://amaztype.tha.jp/%22&#34;&gt;Try it here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;In an ego-stroking, self-aggrandizing move, I tried it using the keyword \SWT.\ Here are the results:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;%22http://interspatial.com/images/swt.gif%22&#34; alt=&#34;\SWT\&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;As you can see, Amazon offers a number of books that cover SWT, most of which I own. Just two years ago, however, that number was zero&amp;ndash;which is why I decided to write &lt;a href=&#34;%22http://www.amazon.com/exec/obidos/tg/detail/-/1590593251/qid=1119018998/sr=8-3/ref=pd_bbs_ur_3/104-2265026-5663915?v=glance&amp;amp;s=books&amp;amp;n=507846%22&#34;&gt;&lt;em&gt;The Definitive Guide to SWT and JFace&lt;/em&gt;&lt;/a&gt;. &lt;a href=&#34;%22http://eclipse.org%22&#34;&gt;Eclipse&lt;/a&gt; has all the momentum :-)&lt;/p&gt;</description>
			</item>
			<item>
				<title>GTD: Belatedly Responding to Emails in Outlook</title>
				<link>https://grailbox.com/posts/another-post-48/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-48/</guid>
				<description>&lt;p&gt;Originally posted 2006-05-25 10:33:28&lt;/p&gt;&#xA;&lt;p&gt;After noticing an online buzz surrounding the book &lt;a href=&#34;%22http://www.amazon.com/gp/product/0142000280/sr=8-1/qid=1148581369/ref=pd_bbs_1/002-4783065-1600812?%5Fencoding=UTF8%22&#34;&gt;Getting Things Done&lt;/a&gt;, I decided to purchase and read the book. The practices it espouses are winning me over&amp;ndash;I feel more organized and less stressed than before, and I seem more on top of things at work. Home . . . well, that&amp;rsquo;s a different story, but my wife has become a disciple of &lt;a href=&#34;%22http://www.flylady.net/%22&#34;&gt;Fly Lady&lt;/a&gt;, and together we&amp;rsquo;re slowly winning the battle against our children.&lt;/p&gt;</description>
			</item>
			<item>
				<title>He Who Hesitates . . .</title>
				<link>https://grailbox.com/posts/another-post-51/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-51/</guid>
				<description>&lt;p&gt;Originally posted 2006-04-08 06:04:31&lt;/p&gt;&#xA;&lt;p&gt;. . . sometimes gets a good deal. I&amp;rsquo;ve been using my &lt;a href=&#34;%22http://www.t-mobile.com/shop/phones/detail.aspx?device=8802ddeb-1ee4-477a-9608-d9cd1e2a903f%22&#34;&gt;T-Mobile MDA&lt;/a&gt; for about a month and a half now, and am still glad I bought it. I&amp;rsquo;ve been searching for additional software for it&amp;ndash;things that could make my life easier&amp;ndash;and came across &lt;a href=&#34;%22http://www.pocketinformant.com/products_info.php?p_id=pi&amp;amp;dir=wm&amp;amp;%22&#34;&gt;Pocket Informant&lt;/a&gt;, which replaces the standard PIM applets. I haven&amp;rsquo;t read the user manual yet or learned how to use its advanced features, but it&amp;rsquo;s clearly superior to the built-in apps. I decided I wanted to buy it, though I haven&amp;rsquo;t gotten around to purchasing it yet.&lt;/p&gt;</description>
			</item>
			<item>
				<title>HIMSS 2006 Day 1</title>
				<link>https://grailbox.com/posts/another-post-60/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-60/</guid>
				<description>&lt;p&gt;Originally posted 2006-02-13 05:12:31&lt;/p&gt;&#xA;&lt;p&gt;The HIMSS (Healthcare Information and Management Systems Society) 2006 Conference kicked off in San Diego with a reception last night. I flew out from Jacksonville, FL, yesterday morning with my boss and a coworker. We had a layover in Dallas, where we grabbed to-go barbecue and arrived at our connecting flight as it was boarding, so we made onto the plane just fine. My boss&amp;rsquo;s luggage, including golf clubs, made it on the plane just fine. My coworkers luggage made it on the plane just fine. My luggage stayed in Dallas.&lt;/p&gt;</description>
			</item>
			<item>
				<title>HIMSS 2006 Day 2</title>
				<link>https://grailbox.com/posts/another-post-58/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-58/</guid>
				<description>&lt;p&gt;Originally posted 2006-02-14 05:41:55&lt;/p&gt;&#xA;&lt;p&gt;I awoke yesterday morning at 3:30, got up, read, ironed, checked emails, and then went out for a (small) run. You know you&lt;/p&gt;</description>
			</item>
			<item>
				<title>HIMSS 2006 Days 3 and 4</title>
				<link>https://grailbox.com/posts/another-post-57/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-57/</guid>
				<description>&lt;p&gt;Originally posted 2006-02-16 06:16:01&lt;/p&gt;&#xA;&lt;p&gt;Too many late nights and early mornings make it hard to keep up. I hope to sleep the whole plane ride home.&lt;/p&gt;&#xA;&lt;p&gt;The last two days, we&lt;/p&gt;</description>
			</item>
			<item>
				<title>I have too much hard drive space!</title>
				<link>https://grailbox.com/posts/another-post-23/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-23/</guid>
				<description>&lt;p&gt;Originally posted 2008-01-15 05:16:38&lt;/p&gt;&#xA;&lt;p&gt;By the time people who knew nothing about soldering guns started buying home computers, memory was measured in kilobytes. My first computer, an Atari 400, had 16 kilobytes of RAM, and my second, and Atari 800, tripled that. Even the lowly Timex Sinclair had a full kilobyte, which could light up the screen and not much more. People running IBM machines and clones soon had 640 kilobytes of RAM, and and about this time &lt;a href=&#34;%22http://www.wired.com/politics/law/news/1997/01/1484%22&#34;&gt;Bill Gates never said 640 kilobytes would be plenty&lt;/a&gt;.&lt;/p&gt;</description>
			</item>
			<item>
				<title>I Should Have Brought My Mac</title>
				<link>https://grailbox.com/posts/another-post-59/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-59/</guid>
				<description>&lt;p&gt;Originally posted 2006-02-14 05:12:48&lt;/p&gt;&#xA;&lt;p&gt;My work-issued laptop is a Dell Latitude D610 with a 2.1 GHz Pentium M processor, 2 GB RAM, and a 60 GB hard drive. It runs Windows XP Professional. It&amp;rsquo;s a nice machine. When I want to connect to a wireless network, however, which I do often throughout the day (including at night in my hotel room), I must do the following:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Open Services and start Wireless Zero Configuration&lt;/li&gt;&#xA;&lt;li&gt;Right-click the Wireless Connection icon in the system tray and select View Available Wireless Networks&lt;/li&gt;&#xA;&lt;li&gt;In the ensuing dialog, under Related Tasks, click Change advanced settings&lt;/li&gt;&#xA;&lt;li&gt;In the next dialog, click the Wireless Networks tab&lt;/li&gt;&#xA;&lt;li&gt;Click the checkbox beside Use Windows to configure my wireless network settings&lt;/li&gt;&#xA;&lt;li&gt;Click OK&lt;/li&gt;&#xA;&lt;li&gt;Right-click the Wireless Connection icon in the system tray again and select View Available Wireless Networks&lt;/li&gt;&#xA;&lt;li&gt;Select the network I want to log in to and click OK&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Why is this so hard?&lt;/p&gt;</description>
			</item>
			<item>
				<title>Impact Lab - Amazing 3D Sidewalk Art Photos</title>
				<link>https://grailbox.com/posts/another-post-55/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-55/</guid>
				<description>&lt;p&gt;Originally posted 2006-03-11 03:05:08&lt;/p&gt;&#xA;&lt;p&gt;Just found this site showing sidewalk chalk art that seems legit: &lt;a href=&#34;%22http://www.impactlab.com/modules.php?name=News&amp;amp;file=article&amp;amp;sid=7567%22&#34;&gt;Impact Lab - Amazing 3D Sidewalk Art Photos&lt;/a&gt;. Looks like an amazing amount of work for something so impermanent&amp;ndash;how does he find time?&lt;/p&gt;</description>
			</item>
			<item>
				<title>Import Email Addresses in Apple Address Book</title>
				<link>https://grailbox.com/posts/another-post-35/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-35/</guid>
				<description>&lt;p&gt;Originally posted 2007-08-06 17:40:17&lt;/p&gt;&#xA;&lt;p&gt;My parents spent the past three years Down Under doing missionary work. They lived in Melbourne, halfway around the world from us in Florida, USA. Email shortened the distance and resolved the time zone issues, so communication ran freely. Rather than ferry a computer around the globe and foot a shipping bill that exceeded the value of the goods shipped, they bought a computer in Australia and left it behind on their departure. They did all their email in Outlook Express, and my father took care to ask me how to preserve the contents of their address book to bring back to Florida. I told him to export the address book, copy it to a flash drive, and we&amp;rsquo;d deal with it when they got home. He obeyed me as well as I obeyed him a few decades ago, and instead sent five separate emails announcing his new stateside email address to the people in his address book, one-fifth of the addresses per email, and bcc&amp;rsquo;ed his new address on each one. He fancied himself clever.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Insights</title>
				<link>https://grailbox.com/posts/another-post-87/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-87/</guid>
				<description>&lt;p&gt;Originally posted 2004-11-30 13:27:29&lt;/p&gt;&#xA;&lt;p&gt;I can&amp;rsquo;t convert hours to days, or vice versa. I never have been able to. Sure, I&amp;rsquo;ve memorized that 24 hours make one day, and that 48 hours make two days. Beyond that, however, I&amp;rsquo;m lost, and when someone says, \You&amp;rsquo;ve got 96 hours to deliver that document,\ I&amp;rsquo;m left fumbling, trying to divide 24 into 96 in my head while cursing the Sumerians.&lt;/p&gt;&#xA;&lt;p&gt;The other day, however, I overheard my 9-year-old son and his cousin discussing hours-to-days conversions, and my son said, \Think of them like quarters, minus one.\&lt;/p&gt;</description>
			</item>
			<item>
				<title>Installing Tiger</title>
				<link>https://grailbox.com/posts/another-post-80/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-80/</guid>
				<description>&lt;p&gt;Originally posted 2005-04-30 06:03:11&lt;/p&gt;&#xA;&lt;p&gt;Posted Saturday, April 30, 2005&lt;/p&gt;&#xA;&lt;p&gt;Yesterday evening, I hustled my children into our mini-van to run errands. Since my wife had already left for the weekend, I reasoned that I&amp;rsquo;d have plenty of time last night, after getting the children to bed, to install Tiger, so I decided to make a Tiger purchase part of the errands. \Where are we going?\ they chorused. \To Blockbuster, to take back some movies, and then to CompUSA,\ I replied. I didn&amp;rsquo;t explain further, not out of any desire to conceal the nature of our mission, but because I figured they really didn&amp;rsquo;t care.&lt;/p&gt;</description>
			</item>
			<item>
				<title>iPhones?</title>
				<link>https://grailbox.com/posts/another-post-79/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-79/</guid>
				<description>&lt;p&gt;Originally posted 2005-05-12 15:21:00&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;%22http://www.reuters.com/newsArticle.jhtml?type=technologyNews&amp;amp;storyID=8470447%22&#34;&gt;Bill Gates claims&lt;/a&gt; that the iPod will tumble towards irrelevance, displaced by mobile phones with integrated MP3 players. Can you sense the iPod envy? Frustrated at his inability to make any inroads into the portable music market, Gates tries to sell the convergence chimera. When have convergent devices pushed &lt;strong&gt;anything&lt;/strong&gt; aside? TVs with integrated DVD players? PDAs with mobile phone capabilities? &lt;a href=&#34;%22http://www.hersheys.com/reeses/home.asp%22&#34;&gt;Peanut butter and chocolate&lt;/a&gt;? (Well, I guess that one works)&lt;/p&gt;</description>
			</item>
			<item>
				<title>Java Developer Interviews</title>
				<link>https://grailbox.com/posts/another-post-50/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-50/</guid>
				<description>&lt;p&gt;Originally posted 2006-04-17 21:37:35&lt;/p&gt;&#xA;&lt;p&gt;Java developer resumes all look alike. They&amp;rsquo;re all too many pages, and list all the buzzwords: Eclipse, EJB, Struts, Hibernate, Spring, WebSphere. I can tell almost nothing from the resumes that cross my desk, which means I have to interview a lot of candidates for any job opening. Consequently, I&amp;rsquo;ve conducted more than my share of programmer interviews in my career&amp;ndash;for a long time as a potential peer, and more recently as the hiring manager. I&amp;rsquo;ve written quizzes for screening, asked what their strengths and weaknesses are, drilled them with questions about polymorphism and reflection and collections&amp;ndash;everything you&amp;rsquo;d expect to encounter in an interview. I find, though, that all I really care about is:&lt;/p&gt;</description>
			</item>
			<item>
				<title>JavaOne 2007, DayFour</title>
				<link>https://grailbox.com/posts/another-post-37/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-37/</guid>
				<description>&lt;p&gt;Originally posted 2007-05-14 02:46:03&lt;/p&gt;&#xA;&lt;p&gt;The last day of JavaOne featured Java-powered toys, introduced sequentially by James Gosling. None of them commanded more than a raised eyebrow or polite applause, except perhaps the programmable dancing robots&amp;ndash;and that probably because of their contrast with the merely dull. The parade began with some either from the DTrace project or Project Delight&amp;ndash;I couldn&amp;rsquo;t discern which. He demonstrated tracing a Garage Band-like application, though he should have instead showed an eBay-like application, for he spoke like an auctioneer. You can get incredible amounts of debugging information using DTrace, or Project Delight, from what I gathered.&lt;/p&gt;</description>
			</item>
			<item>
				<title>JavaOne 2007, DayOne</title>
				<link>https://grailbox.com/posts/another-post-41/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-41/</guid>
				<description>&lt;p&gt;Originally posted 2007-05-09 08:34:22&lt;/p&gt;&#xA;&lt;p&gt;JavaOne, DayOne kicked off to a packed room. John Gage from Sun led the session that saw several Sun luminaries (Jonathan Schwartz, Scott McNealy, James Gosling), as well as other industry leaders like NASDAQ&amp;rsquo;s CIO and an SVP from Yahoo!. Executives and geeks paraded on and off the stage to announce, demonstrate, or evangelize various Java-related technologies, while the Brazilian cadre near the front waved their national flag and cheered.&lt;/p&gt;</description>
			</item>
			<item>
				<title>JavaOne 2007, DayThree</title>
				<link>https://grailbox.com/posts/another-post-38/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-38/</guid>
				<description>&lt;p&gt;Originally posted 2007-05-11 07:14:01&lt;/p&gt;&#xA;&lt;p&gt;I didn&amp;rsquo;t say, \Hello Moto\ to today&amp;rsquo;s Motorola keynote&amp;ndash;to many fires at work to take care of. In fact, 6:00 AM found me standing outside the hotel in my pajamas, trying to find a cell signal. The keynote was supposed to cover usable UIs on mobile screens, I believe. I wish they&amp;rsquo;d covered cell signals in hotels in downtown San Francisco.&lt;/p&gt;&#xA;&lt;p&gt;I went to a session titled \Assembling Ajax Apps with Power Tools,\ thinking they&amp;rsquo;d focus on development tools, not development libraries. I got it backwards. Presented by someone from ICESoft, purveyor of ICEFaces, the session really was a shill for ICEFaces. True, it walked through two other libraries first&amp;ndash;jMaki and Dynamic Faces&amp;ndash;and credibly explained them, but then finished with ICEFaces is better. I&amp;rsquo;m not sure yet, but they may be right. They offer drop-in, Ajax-ified components for JavaServer Faces.&lt;/p&gt;</description>
			</item>
			<item>
				<title>JavaOne 2007, DayTwo</title>
				<link>https://grailbox.com/posts/another-post-39/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-39/</guid>
				<description>&lt;p&gt;Originally posted 2007-05-10 09:22:46&lt;/p&gt;&#xA;&lt;p&gt;I haven&amp;rsquo;t seen an attendance figure for this year&amp;rsquo;s JavaOne, but it must approach a gazillion. The logistics of moving this many geeks from place to place would boggle my mind, if I weren&amp;rsquo;t so focused on preventing my death by trampling. The event coordinators allowed 20 minutes between technical sessions, but it doesn&amp;rsquo;t suffice to both empty and fill a room before the next speaker begins. Scores of black-clad ushers direct the mass of geekanity with varying levels of success, but the hallways and doorways impose limits that even they can&amp;rsquo;t overcome. To ensure proper classroom sizing and reduce disappointment, JavaOne requires attendees to sign up for sessions beforehand, and form two lines for each session: one for those who signed up and the other for those who didn&amp;rsquo;t. This seems to work well, but creates a doorway stranglehold as people have to scan their cards before entering. JavaOne has become crushingly popular, which bodes well for the continued popularity of Java.&lt;/p&gt;</description>
			</item>
			<item>
				<title>JavaOne, DayFour</title>
				<link>https://grailbox.com/posts/another-post-71/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-71/</guid>
				<description>&lt;p&gt;Originally posted 2005-06-30 14:10:19&lt;/p&gt;&#xA;&lt;p&gt;Last day. I woke up at 4:30 AM, packed my bags, read awhile, then headed to breakfast: pancakes at Mel&amp;rsquo;s Diner.&lt;/p&gt;&#xA;&lt;p&gt;The General Session belonged to James Gosling. He was wearing . . . drumroll, please . . . a T-shirt and jeans. His T-shirt sported Duke playing an electric guitar. He actually didn&amp;rsquo;t say much, but invited various folks up to the stage to show off things.&lt;/p&gt;</description>
			</item>
			<item>
				<title>JavaOne, DayOne</title>
				<link>https://grailbox.com/posts/another-post-74/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-74/</guid>
				<description>&lt;p&gt;Originally posted 2005-06-28 09:22:37&lt;/p&gt;&#xA;&lt;p&gt;I missed the book signing. By the time I got off the plane, got my bag, and took a shuttle downtown, it was 11:20. I was scheduled to sign until 11:30, so I gave up, found my hotel, checked in, showered, changed, and headed for the Moscone Center.&lt;/p&gt;&#xA;&lt;p&gt;Clutching my bar-coded registration form, I stepped up to a registration screen . . . which displayed a Microsoft OLEDB error. Hmm. The friendly Sun helpers reset the browser, which was running on &lt;a href=&#34;%22http://www.mozilla.org%22&#34;&gt;Mozilla&lt;/a&gt; on &amp;lt;a href=&amp;quot;%22http://www.opengroup.org/cde/&amp;quot; data-&amp;quot;=&amp;quot;&amp;quot;&amp;gt;CDE&lt;/a&gt; (which is still ugly), presumably on &lt;a href=&#34;%22http://www.sun.com%22&#34;&gt;Solaris&lt;/a&gt;, so I don&amp;rsquo;t understand how MS OLEDB wedged itself in there. I didn&amp;rsquo;t spin many cycles fretting about it, though, and scanned my form, got a badge, strolled across the street, and got my free backpack and conference materials. It&amp;rsquo;s a geek-lovers backpack&amp;ndash;lot&amp;rsquo;s of compartments, lots of storage space, and a big Java logo on the back.&lt;/p&gt;</description>
			</item>
			<item>
				<title>JavaOne, DayThree</title>
				<link>https://grailbox.com/posts/another-post-72/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-72/</guid>
				<description>&lt;p&gt;Originally posted 2005-06-30 08:57:37&lt;/p&gt;&#xA;&lt;p&gt;I awoke this morning chilled. I finally discovered that my window was ajar&amp;ndash;no wonder the street sounds penetrate so fully. I&amp;rsquo;d never thought to check that&amp;ndash;only a moron would open a window in Jacksonville, Florida. Opening a window lets out the bought air and lets in the mosquitos. I think I&amp;rsquo;ll close it tonight&amp;ndash;maybe I&amp;rsquo;ll be able to sleep past 4:30.&lt;/p&gt;&#xA;&lt;p&gt;Not having any JavaOne experience to draw from, I never realized how impressive a show Sun puts on. The facilities are excellent. The signs everywhere are beautiful, and look as if they&amp;rsquo;re permanent fixtures in the Moscone Center. Java logos festoon every view. The wireless network works pretty well, though had some problems yesterday. Sun Ray stations sprawl throughout, and anyone with a badge can insert his (or her, but mostly his) card to surf the web, check email, etc. Large movie screens show movies throughout the day. Clusters of theme-colored beanbags offer rest for tired feet, though I don&amp;rsquo;t think I could cozy up to a public beanbag. A massage station rehabilitates aching backs. I&amp;rsquo;ve already blogged about the amazing screens used in the general sessions. These folks can put on a show. One idea for improvement: electrical outlet trees so we laptop users can recharge during the day.&lt;/p&gt;</description>
			</item>
			<item>
				<title>JavaOne, DayTwo</title>
				<link>https://grailbox.com/posts/another-post-73/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-73/</guid>
				<description>&lt;p&gt;Originally posted 2005-06-29 08:39:39&lt;/p&gt;&#xA;&lt;p&gt;When I walked into my room at &lt;a href=&#34;%22http://www.themosser.com/%22&#34;&gt;The Mosser Hotel&lt;/a&gt; for the first time yesterday, I gasped. I hadn&amp;rsquo;t expected a rollicking suite, but neither had I expected a room scarcely larger than my pantry back home. I&amp;rsquo;d say it&amp;rsquo;s 10&amp;rsquo; x 10&amp;rsquo;, with a small sink in the corner, a closet whose door can&amp;rsquo;t open farther than 45 degrees because of the bed, and a bathroom hanging off the corner. I find it quaint, however, and feel a richness of history. I also find it hard to walk in without tripping, but I was never the most nimble guy.&lt;/p&gt;</description>
			</item>
			<item>
				<title>JavaOne, DayZero</title>
				<link>https://grailbox.com/posts/another-post-75/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-75/</guid>
				<description>&lt;p&gt;Originally posted 2005-06-27 14:37:18&lt;/p&gt;&#xA;&lt;p&gt;The conference kicked off this morning, but I&amp;rsquo;m still at cruising altitude. After arriving at the airport Sunday evening about an hour and a half before my flight, I slumped down in a chair, cracked the David Baldacci paperback I&amp;rsquo;d borrowed from the library (&amp;lt;a href=&amp;quot;%22http://www.amazon.com/exec/obidos/tg/detail/-/0446610100/qid=1119907383/sr=8-1/ref=pd_bbs_ur_1/104-2439234-9050355?v=glance&amp;amp;s=books&amp;amp;n=507846&amp;quot; data-&amp;quot;=&amp;quot;&amp;quot;&amp;gt;Wish You Well&lt;/a&gt;), and read for 3 1/2 hours. Do the math, and you&amp;rsquo;ll see how long Delta made me wait. Something about bad weather in Atlanta, but that should be no big deal, right? If bad weather in Atlanta would prevent my flight from taking off from Jacksonville, surely it would prevent the connecting flight to San Francisco from taking off for a commensurate duration, right?&lt;/p&gt;</description>
			</item>
			<item>
				<title>Judging a Book by its Cover</title>
				<link>https://grailbox.com/posts/another-post-78/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-78/</guid>
				<description>&lt;p&gt;Originally posted 2005-06-14 22:33:56&lt;/p&gt;&#xA;&lt;p&gt;Grandma Thelma always admonished, \Don&amp;rsquo;t judge a book by its cover!\ whether or not any reading material lay nearby. Her waggling finger didn&amp;rsquo;t refer to &lt;em&gt;Great Expectation&amp;rsquo;s&lt;/em&gt; dust sleeve, but rather the importance of looking past superficialities to understand the true nature of other people or things. Of course, we didn&amp;rsquo;t always listen to Grandma Thelma, especially that part about keeping baseballs out of her petunias, but we recognized the merits of this nugget, didn&amp;rsquo;t we?&lt;/p&gt;</description>
			</item>
			<item>
				<title>Kudos to fetchmail</title>
				<link>https://grailbox.com/posts/another-post-94/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-94/</guid>
				<description>&lt;p&gt;Originally posted 2004-06-25 11:57:35&lt;/p&gt;&#xA;&lt;p&gt;My e-mail was broken. Irretrievably broken. I knew I had messages out there, out in the ether, but I couldn&amp;rsquo;t pull them down&amp;ndash;not using &lt;a href=&#34;%22http://www.mozilla.org/projects/thunderbird/%22&#34;&gt;Thunderbird&lt;/a&gt; under Windows XP, nor &lt;a href=&#34;%22http://www.apple.com/macosx/%22&#34;&gt;the Mail app on Mac OS X&lt;/a&gt;. Both applications reported no messages on the server, hoping to put me off with pretense. Frustrating.&lt;/p&gt;&#xA;&lt;p&gt;Then I remembered the Linux box that sits in my closet, the one that I sometimes SSH into from the outside world so I can read my e-mail from any Internet-connected machine. I run &lt;a href=&#34;%22http://catb.org/~esr/fetchmail/%22&#34;&gt;fetchmail&lt;/a&gt; on it to retrieve my mail, and &lt;a href=&#34;%22http://www.mutt.org/%22&#34;&gt;mutt&lt;/a&gt; to read my mail. With some amount of resignation, and even less hope, I SSH&amp;rsquo;ed in and ran fetchmail. Like obedient ducklings behind a matronly mallard, my messages waddled through the wires to my Linux box, where mutt scooped them up and offered them for my perusal. No lies. No sham. No pretense. It saw the messages and pulled them down.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Kudos to Parker Pens</title>
				<link>https://grailbox.com/posts/another-post-42/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-42/</guid>
				<description>&lt;p&gt;Originally posted 2006-11-05 03:58:52&lt;/p&gt;&#xA;&lt;p&gt;I collect pens, a hobby I inherited from my father. In a digital world, I habitually revert to analog paper and ink. Writing with a fine pen provides an exquisite tactile experience that everyone should enjoy. I love fountain pens and roller balls, in that order, and tolerate ballpoints. While I use the &lt;a href=&#34;%22http://www.logitech.com/index.cfm/products/details/US/EN,CRID=1553,CONTENTID=11530%22&#34;&gt;Logitech io2 Digital Pen&lt;/a&gt; for taking notes, I keep hoping they&amp;rsquo;ll release at least a roller ball version. A coworker recently returned from Italy and gave me a gorgeous wooden dip fountain pen, which I&amp;rsquo;ve been using with an inkwell to sign people&amp;rsquo;s time sheets. My pen habit used to get me in trouble with my spouse, until I told her to think of them as my jewelry, and since then I&amp;rsquo;ve had no problems with her.&lt;/p&gt;</description>
			</item>
			<item>
				<title>LessConf 3010 Day One</title>
				<link>https://grailbox.com/posts/another-post-3/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-3/</guid>
				<description>&lt;p&gt;Originally posted 2010-05-22 08:39:08&lt;/p&gt;&#xA;&lt;p&gt;I first met &lt;a href=&#34;%22http://twitter.com/stevenbristol%22&#34;&gt;Steve Bristol&lt;/a&gt; in 2007 at the &lt;a href=&#34;%22http://ablog.apress.com/?p=1448%22&#34;&gt;inaugural RubyJax meeting&lt;/a&gt;. I walked into the meeting expecting a typical tech gathering of strangers: people sitting as far away from each other as the room will allow, reading email on their smart phones and acting as if they&amp;rsquo;d rather be anywhere else, and hoping someone else would start the conversations. Steve (along with &lt;a href=&#34;%22http://twitter.com/l4rk%22&#34;&gt;Jon Larkowski&lt;/a&gt;) set the tone for the meeting. He started the conversations, and was no stranger (though he &lt;strong&gt;was&lt;/strong&gt; stranger than I expected). As people filed into the room, he acted as if his life had been leading to this moment, that he&amp;rsquo;d hoped to meet that person for so long and was as happy as a Macolyte on iPad-release day to finally do so. That night, he was open, fun-loving, needling, profane, unkempt, and raw, and has been so every time I&amp;rsquo;ve seen him. The &lt;a href=&#34;%22http://rubyjax.com%22&#34;&gt;RubyJax&lt;/a&gt; user group continues in that vein, and is the most social, smartest group of people I&amp;rsquo;ve ever hung around. It&amp;rsquo;s worth moving to Jacksonville, just to come to our meetings!&lt;/p&gt;</description>
			</item>
			<item>
				<title>LessConf 3010 Day Two</title>
				<link>https://grailbox.com/posts/another-post-2/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-2/</guid>
				<description>&lt;p&gt;Originally posted 2010-05-23 20:35:21&lt;/p&gt;&#xA;&lt;p&gt;The folks at &lt;a href=&#34;%22http://www.storenvy.com/%22&#34;&gt;Storenvy&lt;/a&gt; cooked us breakfast: pancakes, chocolate chip pancakes, and bacon pancakes. Lots of buzz about the bacon pancakes. My love for Bacon, Egg, and Cheese McGriddles drew me to the bacon pancakes. I took an eager bite, a charitable nibble, and gobbled a chocolate chip pancake. I&amp;rsquo;ll keep my bacon and pancakes separate in the future.&lt;/p&gt;&#xA;&lt;p&gt;Alex Hillman, cofounder of &lt;a href=&#34;%22http://indyhall.org/%22&#34;&gt;IndyHall&lt;/a&gt;, grabbed the podium first and strode forcefully into a presentation sans slides. He should have used slides, or he should have had less to drink at the party last night, or something, because he abruptly faltered, looked blankly at the crowd, confessed that he was stuck and stumbling, and turned pleading eyes to Steve Bristol. Bristol tossed some prompts from his seat (\You were saying that . . .\, \Talk about . . .\), and Hillman tried to leap on them, sputtered a bit, then said, \Steve, I&amp;rsquo;m dying up here,\ so Steve bounded onto the stage and co-presented.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Living with Windows (Lifehacker)</title>
				<link>https://grailbox.com/posts/another-post-47/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-47/</guid>
				<description>&lt;p&gt;Originally posted 2006-06-02 03:53:07&lt;/p&gt;&#xA;&lt;p&gt;I came across &lt;a href=&#34;%22http://www.lifehacker.com/software/windows/living-with-windows-177561.php%22&#34;&gt;this&lt;/a&gt; that explains how to make Windows a little more Unix-like. The first hint tells you to turn off the desktop icons and turn on the Desktop toolbar. I have a small collection of icons on my desktop. It&amp;rsquo;s the worst place I can think of to put them, except for any other place, so I live with them there and have to periodically click on Show Desktop or move a slew of windows to the right to access them. This tip&amp;rsquo;s a keeper.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Logitech io2</title>
				<link>https://grailbox.com/posts/another-post-64/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-64/</guid>
				<description>&lt;p&gt;Originally posted 2005-10-14 14:10:23&lt;/p&gt;&#xA;&lt;p&gt;A few weeks ago, I bought a &lt;a href=&#34;%22http://www.logitech.com/index.cfm/products/features/digitalwritingtopics/US/EN,crid=2095&amp;amp;categoryid=401%22&#34;&gt;Logitech io2 Digital Writing System&lt;/a&gt;. Now that I&amp;rsquo;m in management, I attend numerous meetings, I take copious notes, I jot down multiple to-dos, and &lt;strong&gt;I have to use my notes later and complete all the tasks I accept&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;For awhile, a short while, I tried using my PDA to take notes and enter to-dos, but I just can&amp;rsquo;t input text fast enough on a Palm. Toting my laptop to every meeting sounded too painful to contemplate. Scribbling on paper with a rollerball, while quick at the moments that required quickness (i.e. during meetings), meant that I consumed too much time transfering to-dos to Outlook and lost too much information because my notes weren&amp;rsquo;t searchable. I was swimming through my synchronous work and drowning in the asynchrous tasks.&lt;/p&gt;</description>
			</item>
			<item>
				<title>MacBook Pro: One Week Report</title>
				<link>https://grailbox.com/posts/another-post-26/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-26/</guid>
				<description>&lt;p&gt;Originally posted 2007-10-08 14:10:46&lt;/p&gt;&#xA;&lt;p&gt;After using the MacBook Pro for a little over a week, I must confess: I miss Outlook. Admittedly, Outlook 2007 has three years on Entourage 2004, but I&amp;rsquo;m using Outlook 2003 so Entourage has a one-year advantage. My struggles:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Meeting Requests do not display whether they conflict with existing calendar items. I have to view the calendar to check for conflicts.&lt;/li&gt;&#xA;&lt;li&gt;Meeting Requests do not automatically delete when I accept them.&lt;/li&gt;&#xA;&lt;li&gt;The Move Message dialog does not remember the last-selected folder, but always has the top folder selected.&lt;/li&gt;&#xA;&lt;li&gt;Out of Office messages go out for every received message, not just for the first message for a particular sender, and go out only if my Mac is running, Entourage is running, and I&amp;rsquo;m connect to Exchange. This was a fun surprise when I returned to the office and hooked my laptop back to the network and automatically sent out a slew of Out-of-Office messages.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Maybe some of these can be fixed with settings, or maybe Entourage 2008 rectifies these, but for now I stray back to my Windows laptop and Outlook. I spend my day in emails and calendar items. I&amp;rsquo;ve ordered the only Entourage book I can find, the imaginatively named &lt;a href=&#34;%22http://www.amazon.com/Microsoft-Entourage-Visual-QuickStart-Guide/dp/0321255836/ref=pd_bbs_sr_1/104-2898956-4033569?ie=UTF8&amp;amp;s=books&amp;amp;qid=1191881182&amp;amp;sr=8-1%22&#34;&gt;&lt;em&gt;Microsoft Entourage for Mac OS X&lt;/em&gt;&lt;/a&gt;, to see if it can jump-start me toward equaling or even surpassing Outlook 2003&amp;rsquo;s functionality. I&amp;rsquo;m also looking for alternative OS X Exchange client options that will give me full email and calendar functionality. Any suggestions?&lt;/p&gt;</description>
			</item>
			<item>
				<title>Macs to the Max</title>
				<link>https://grailbox.com/posts/another-post-40/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-40/</guid>
				<description>&lt;p&gt;Originally posted 2007-05-09 18:18:17&lt;/p&gt;&#xA;&lt;p&gt;Like any typical company, the place where I work relies on Dell/Windows/Outlook/Office for all internal computing needs. Even our Unix sysadmins run Windows XP on their desktops, though they hurriedly cover their stock Windows wallpaper with PuTTY windows. I can&amp;rsquo;t fault our infrastructure team for choosing this platform&amp;ndash;every company does, all the employees know how to use it, and it works (except for that time a virus slipped through . . .). I long, however, for the speed, simplicity, and power of a Mac at work. I bug our Director of Infrastructure about it from time to time, and he sends me any article he can find decrying Macs&amp;ndash;often resorting to stories from the &amp;rsquo;80s, when he still had hair.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Marketing</title>
				<link>https://grailbox.com/posts/another-post-88/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-88/</guid>
				<description>&lt;p&gt;Originally posted 2004-10-27 10:00:48&lt;/p&gt;&#xA;&lt;p&gt;My three-year-old daughter looked me in the eye a few weeks ago and announced, \Dad, I&amp;rsquo;m switching to Geico.\ Geico, for those who are unfamiliar, is a car insurance company in the US. They run a fairly aggressive marketing campaign (TV and radio) using a gecko as a mascot, and they claim you&amp;rsquo;ll save 15% or more on your car insurance by switching to Geico.&lt;/p&gt;&#xA;&lt;p&gt;That was good for a chuckle, and I&amp;rsquo;m sure the Geico marketing folks would be pleased to know of their mindshare penetration (albeit by an audience unable to avail themselves of Geico&amp;rsquo;s services). I recently read &lt;a href=&#34;%22http://software.ericsink.com/laws/Immutable_Laws_Marketing.html%22&#34;&gt;Eric Sink&amp;rsquo;s review&lt;/a&gt; of &lt;a href=&#34;%22http://www.amazon.com/exec/obidos/ASIN/0887306667/sawdust08-20/002-9103944-6601636%22&#34;&gt;The 22 Immutable Laws of Marketing&lt;/a&gt;, and it interested me enough to buy the book. Reading it interested me enough to buy some more books by this author, including &lt;a href=&#34;%22http://www.amazon.com/exec/obidos/tg/detail/-/0060570148/qid=1098901683/sr=1-5/ref=sr_1_5/002-9103944-6601636?v=glance&amp;amp;s=books%22&#34;&gt;The Origin of Brands&lt;/a&gt;. After reading a few books, I felt like I was reading redundancies, but I still found the subject fascinating.&lt;/p&gt;</description>
			</item>
			<item>
				<title>More Proof that Apple Will Win</title>
				<link>https://grailbox.com/posts/another-post-34/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-34/</guid>
				<description>&lt;p&gt;Originally posted 2007-08-21 17:17:22&lt;/p&gt;&#xA;&lt;p&gt;Last year I built a computer with parts ordered from &lt;a href=&#34;%22http://newegg.com%22&#34;&gt;newegg.com&lt;/a&gt;. Over time, and because of its faster processor, larger hard drives, and buckets more memory, my home-built computer has replaced my aging iBook G4 as my principal away-from-work computer. It runs Ubuntu 7.04 (64-bit), and &lt;a href=&#34;%22http://en.wikipedia.org/wiki/Compiz_Fusion%22&#34;&gt;Compiz Fusion&lt;/a&gt; amazes everyone that happens by. I realize that building my own PC separates me from Grandma Myrtle, Joe Sixpack, or whatever other metaphorical average computer user you favor, but I&amp;rsquo;m no &lt;a href=&#34;%22http://www.codinghorror.com/blog/archives/000918.html%22&#34;&gt;Jeff Atwood&lt;/a&gt;. I got recommendations from my then &lt;a href=&#34;%22http://wiki.jaxlug.org/index.php/Main_Page%22&#34;&gt;local LUG&lt;/a&gt; &lt;a href=&#34;%22http://riskable.com/%22&#34;&gt;president&lt;/a&gt; for which parts to buy. When my new machine wouldn&amp;rsquo;t power on, I sought the help of my local office alpha geek, who directed me to check my power cables to the motherboard (I had &amp;rsquo;em backwards). Without them, I&amp;rsquo;d have had to get a Dell, dude. In other words, I&amp;rsquo;m a former developer who&amp;rsquo;s now in management.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Music</title>
				<link>https://grailbox.com/posts/another-post-84/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-84/</guid>
				<description>&lt;p&gt;Originally posted 2005-03-16 16:06:45&lt;/p&gt;&#xA;&lt;p&gt;I listen to the same CD over, and over, and over again.&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;. . . Even better than the real thing . . .&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;It&amp;rsquo;s U2&amp;rsquo;s &lt;em&gt;Ach Tung, Baby&lt;/em&gt;, and it blends plaintive wails with blistering beats. It rocks. It&amp;rsquo;s one of my favorite CDs. By one of my favorite groups. And I just keep listening to it.&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;. . . Even better than the real thing . . .&lt;/em&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>My MacBook Pro Saga</title>
				<link>https://grailbox.com/posts/another-post-28/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-28/</guid>
				<description>&lt;p&gt;Originally posted 2007-09-13 17:48:17&lt;/p&gt;&#xA;&lt;p&gt;I bought my first Mac in 2004: an iBook G4. Before then, I called Macs&lt;/p&gt;</description>
			</item>
			<item>
				<title>My MacBook Pro Saga Completed</title>
				<link>https://grailbox.com/posts/another-post-27/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-27/</guid>
				<description>&lt;p&gt;Originally posted 2007-09-28 19:03:53&lt;/p&gt;&#xA;&lt;p&gt;Apple fixed my MacBook Pro for free. They replaced the surface of the laptop&amp;ndash;the part that surrounds the keyboard. No more random reboots. The IT guy from work temporarily misplaced the power cord, which delayed a fruitful reunion, but I&amp;rsquo;m now happily typing away on the backlit keyboard. I may never touch a Windows machine again!&lt;/p&gt;&#xA;&lt;p&gt;Incidentally, I&amp;rsquo;m typing this blog entry on a trial version of &lt;a href=&#34;%22http://www.red-sweater.com/marsedit/%22&#34;&gt;MarsEdit&lt;/a&gt;, which I downloaded because of &lt;a href=&#34;%22http://blog.guykawasaki.com/2007/09/marsedit-20-shi.html%22&#34;&gt;Guy Kawasaki&amp;rsquo;s recommendation&lt;/a&gt;. I&amp;rsquo;d rather use &lt;a href=&#34;%22http://www.chronosnet.com/Products/sohonotes.html%22&#34;&gt;Soho Notes&lt;/a&gt;, but I can&amp;rsquo;t figure out how to make it work with WordPress.&lt;/p&gt;</description>
			</item>
			<item>
				<title>No Fluff Just Stuff 2007 Orlando, Day One</title>
				<link>https://grailbox.com/posts/another-post-31/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-31/</guid>
				<description>&lt;p&gt;Originally posted 2007-08-25 02:59:27&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;m at the &lt;a href=&#34;%22http://www.starwoodhotels.com/fourpoints/index.html%22&#34;&gt;Sheraton Four Points Hotel&lt;/a&gt; in Orlando, Florida, at &lt;a href=&#34;%22http://www.nofluffjuststuff.com/conference/orlando/2007/08/index.html%22&#34;&gt;No Fluff Just Stuff&lt;/a&gt;. Both an offsite management work meeting all morning and an accident on I-4 delayed my arrival past the registration, opening remarks, and the first session, but I arrived in time for the second session: &lt;a href=&#34;%22http://www.nofluffjuststuff.com/speaker_view.jsp?speakerId=4%22&#34;&gt;David Geary&amp;rsquo;s&lt;/a&gt; presentation on JavaScript frameworks. He covered aspects of Prototype, Scriptaculous, and Rico with overview, code, and demos. Seeing some of the possibilities that these frameworks offer was certainly interesting, and the &lt;a href=&#34;%22http://openrico.org/demos?demo=accordion%22&#34;&gt;Rico Accordion&lt;/a&gt; will tempt me to implement a solution-driven design (\This is cool! Now, what problem can I apply it to?\), but I was more excited for his next talk: Ajaxian Faces. I want to understand the synergies between JSF and Ajax.&lt;/p&gt;</description>
			</item>
			<item>
				<title>No Fluff Just Stuff 2007 Orlando, Day Three</title>
				<link>https://grailbox.com/posts/another-post-29/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-29/</guid>
				<description>&lt;p&gt;Originally posted 2007-09-11 13:05:45&lt;/p&gt;&#xA;&lt;p&gt;Day three started with &lt;a href=&#34;%22http://www.nofluffjuststuff.com/speaker_view.jsp?speakerId=12%22&#34;&gt;Bruce Tate&lt;/a&gt;, Ruby, and Rails. Tate isn&amp;rsquo;t entertaining nor dynamic (a la Scott Davis), but his presentation skills suffice and his material is excellent. Leading Java developers bemoan his defection to Ruby for a reason.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve been playing with Rails and Ruby (see my password management program at &lt;a href=&#34;%22http://safe.rubyforge.org%22&#34;&gt;http://safe.rubyforge.org&lt;/a&gt;), but I have much to learn about the Ruby way. For example, I understand &lt;em&gt;what&lt;/em&gt; duck typing and mix-ins are, but I don&amp;rsquo;t understand &lt;em&gt;when&lt;/em&gt; or &lt;em&gt;why&lt;/em&gt; you&amp;rsquo;d use them, nor do I really get their power yet. Tate&amp;rsquo;s presentations pushed me farther along that path.&lt;/p&gt;</description>
			</item>
			<item>
				<title>No Fluff Just Stuff 2007 Orlando, Day Two</title>
				<link>https://grailbox.com/posts/another-post-30/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-30/</guid>
				<description>&lt;p&gt;Originally posted 2007-09-02 16:38:03&lt;/p&gt;&#xA;&lt;p&gt;I spent the morning of Day Two with David Geary, JSF, Seam, Facelets and Ajax4jsf. The session came in two parts, and I could have stayed for a part three and a part four if they&amp;rsquo;d been offered. The Seam/Facelets/Ajax4jsf development model represents significant advancements beyond the Servlet/JSP model we&amp;rsquo;re preparing to upgrade, and Geary does a terrific job presenting those technologies. He seems to get into a lot of different technologies. He also presented &lt;a href=&#34;%22http://openrico.rg%22&#34;&gt;Rico&lt;/a&gt;, &lt;a href=&#34;%22http://prototypejs.org%22&#34;&gt;Prototype&lt;/a&gt;, and &lt;a href=&#34;%22http://script.aculo.us/%22&#34;&gt;Scriptaculous&lt;/a&gt;, as well as a two-part series on &lt;a href=&#34;%22http://code.google.com/webtoolkit/%22&#34;&gt;Google Web Toolkit&lt;/a&gt;. He presents very well, with clear-cut examples, and leverages the Mac&amp;rsquo;s &lt;a href=&#34;%22http://www.apple.com/macosx/features/universalaccess/%22&#34;&gt;built-in zooming&lt;/a&gt; and window hiding capabilities to display and focus what&amp;rsquo;s relevant.&lt;/p&gt;</description>
			</item>
			<item>
				<title>No Fluff Just Stuff Tampa -- Day One</title>
				<link>https://grailbox.com/posts/another-post-7/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-7/</guid>
				<description>&lt;p&gt;Originally posted 2010-04-16 20:57:05&lt;/p&gt;&#xA;&lt;p&gt;No Fluff Just Stuff began in Tampa today. This is my second NFJS conference &amp;ndash; my first was in 2008. Five of us from work drove down from Jacksonville, all expecting great things. So far, the conference hasn&amp;rsquo;t disappointed.&lt;/p&gt;&#xA;&lt;p&gt;After check-in, at which we were handed a badge, a binder, a commemorative 10-year T-shirt, and a 2GB branded thumb drive with all the conference materials pre-loaded, we went to the various sessions. The first session I attended was Neal Ford&amp;rsquo;s &lt;em&gt;Implementing Evolutionary Architecture&lt;/em&gt;. He talked about how architecture evolves, going from a spaghetti-pile of connections among servers and services, to a clean implementation of an Enterprise Service Bus, to a renewed spaghetti-pile because the policies and bureaucracies around the ESB make stringing wires around it faster and easier. He asserted that the web as a platform needs to be more evolvable than that.&lt;/p&gt;</description>
			</item>
			<item>
				<title>No Fluff Just Stuff Tampa -- Day Three</title>
				<link>https://grailbox.com/posts/another-post-5/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-5/</guid>
				<description>&lt;p&gt;Originally posted 2010-04-19 15:44:08&lt;/p&gt;&#xA;&lt;p&gt;I started the day plopping down for breakfast at the same table with Nate Schutta and chatting him up about various technology questions and issues. I then went to his talk: &lt;em&gt;jQuery: Ajax Made Easy&lt;/em&gt;. I think I would have chosen a different title for the talk &amp;ndash; something like &lt;em&gt;jQuery: An Overview, with Some Comparisons to Other JavaScript Libraries&lt;/em&gt;. It was a good talk, though, and stressed the importance of using a library. The only way to do JavaScript \wrong,\ he said, is &lt;em&gt;not&lt;/em&gt; to use a library. He talked about the paradox of choice that all the JavaScript libraries puts us in, and explained why jQuery is a great choice. Here are some other highlights:&lt;/p&gt;</description>
			</item>
			<item>
				<title>No Fluff Just Stuff Tampa -- Day Two</title>
				<link>https://grailbox.com/posts/another-post-6/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-6/</guid>
				<description>&lt;p&gt;Originally posted 2010-04-18 06:41:23&lt;/p&gt;&#xA;&lt;p&gt;As Moore&amp;rsquo;s Law gets repealed and multicore processors demand that we actually learn to write good, safe, non-buggy multi-threaded code (Note: if the business people where you work understand the term \race condition,\ you&amp;rsquo;ve got threading problems), functional languages gain appeal. I&amp;rsquo;ve eschewed &lt;a href=&#34;%22http://www.haskell.org/%22&#34;&gt;Haskell&lt;/a&gt;, started looking at &lt;a href=&#34;%22http://www.erlang.org/%22&#34;&gt;Erlang&lt;/a&gt;, and vowed to look at &lt;a href=&#34;%22http://www.scala-lang.org/%22&#34;&gt;Scala&lt;/a&gt;. When I saw Ted Neward&amp;rsquo;s &lt;em&gt;The Busy Java Developer&amp;rsquo;s Guide to Scala: Basics&lt;/em&gt; on the schedule, I figured I&amp;rsquo;d go to get a Scala jumpstart.&lt;/p&gt;</description>
			</item>
			<item>
				<title>OnStar and Usability</title>
				<link>https://grailbox.com/posts/another-post-91/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-91/</guid>
				<description>&lt;p&gt;Originally posted 2004-08-23 10:34:33&lt;/p&gt;&#xA;&lt;p&gt;Here in the US, OnStar is running a radio ad trumpeting the power of their flagship service. This system allows motorists to press a button inside their vehicles while they drive down the road, which contacts an uber-service for fixing all their problems and curing all their woes. You can read more about it &lt;a href=&#34;%22http://onstar.com/us_english/jsp/index.jsp%22&#34;&gt;here&lt;/a&gt;. DISCLAIMER: I&amp;rsquo;m not associated with OnStar, nor do I have access to it in any of my vehicles. I have never used it, and know virtually nothing about it.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Password Policy</title>
				<link>https://grailbox.com/posts/another-post-62/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-62/</guid>
				<description>&lt;p&gt;Originally posted 2006-02-10 14:25:07&lt;/p&gt;&#xA;&lt;p&gt;An internal audit at the company where I work determined that we should strengthen our corporate password policy. Consequently, our head of data security drafted a new policy and began to solicit comments. At a company-wide meeting, he officially presented the policy one month before its institution. Management continued to socialize the new policy to prepare folks for the rollout. No one complained. No one squawked. No one cared.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Playing with Core Data</title>
				<link>https://grailbox.com/posts/another-post-63/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-63/</guid>
				<description>&lt;p&gt;Originally posted 2005-11-24 10:50:32&lt;/p&gt;&#xA;&lt;p&gt;I continue to delude myself into believing that I&amp;rsquo;m going to learn Objective-C and Cocoa. My bookshelf droops like a swaybacked cayuse with all the Cocoa and Objective-C books I&amp;rsquo;ve purchased (side note: they all seem more folksy than technical, demonstrating that the artsy culture must permeate everything Apple). I&amp;rsquo;ve leapt from the object.method syntax to [object message]. I&amp;rsquo;m coming to grips with creating live objects in a binary file during development, although I still prefer doing such things in code (even simple GUI builders make me nervous these days). After a 6-year hiatus from C++ and COM, spent basking in Java&amp;rsquo;s garbage collection, I&amp;rsquo;m maneuvering release rules and reference counting. I even added a patch to the excellent &lt;a href=&#34;%22http://sourceforge.net/projects/iterm%22&#34;&gt;iTerm&lt;/a&gt; (it&amp;rsquo;s the one that adds a keystroke to toggle transparency, if you must know, but it missed the 0.8.1 release).&lt;/p&gt;</description>
			</item>
			<item>
				<title>Programmers as typists and a swing at Perl</title>
				<link>https://grailbox.com/posts/another-post-20/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-20/</guid>
				<description>&lt;p&gt;Originally posted 2008-11-18 13:51:45&lt;/p&gt;&#xA;&lt;p&gt;I love Jeff Atwood&amp;rsquo;s &lt;a href=&#34;%22http://www.codinghorror.com%22&#34;&gt;Coding Horror&lt;/a&gt; blog. Today he wrote about &lt;a href=&#34;%22http://www.codinghorror.com/blog/archives/001188.html%22&#34;&gt;how important it is for programmer&amp;rsquo;s to be able to type&lt;/a&gt;. Good post. The line I loved, though, was this: \Don&amp;rsquo;t just type random gibberish as fast as you can on the screen, unless you&amp;rsquo;re a Perl programmer.\ Zing!&lt;/p&gt;</description>
			</item>
			<item>
				<title>Registering Peek-a-Boo Process Throb</title>
				<link>https://grailbox.com/posts/another-post-18/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-18/</guid>
				<description>&lt;p&gt;Originally posted 2008-04-22 05:57:05&lt;/p&gt;&#xA;&lt;p&gt;Last week &lt;a href=&#34;%22http://www.maczot.com%22&#34;&gt;macZOT&lt;/a&gt; offered a discount on an application called &lt;a href=&#34;%22http://www.clarkwood.com/peekaboo/processthrob.html%22&#34;&gt;Peek-a-Boo Process Throb&lt;/a&gt;. I&amp;rsquo;d never heard of the application, and am not yet sure how often I&amp;rsquo;ll use it, but I found the concept interesting, the execution well done, and the price negligible, so I paid the registration fee. Some time later, I received my registration key in an email, so I copied the key to the clipboard and command-tabbed to Peek-a-Boo to figure out where to paste the key. The following dialog popped up:&lt;/p&gt;</description>
			</item>
			<item>
				<title>RubyJax Inaugural Meeting</title>
				<link>https://grailbox.com/posts/another-post-24/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-24/</guid>
				<description>&lt;p&gt;Originally posted 2007-11-17 02:37:34&lt;/p&gt;&#xA;&lt;p&gt;Last Thursday I attended the inaugural meeting of &lt;a href=&#34;%22http://rubyjax.com%22&#34;&gt;RubyJax&lt;/a&gt;, the new Ruby users group in Jacksonville, Florida. I drove straight from work and strode into the meeting wearing a golf shirt, crisp khakis, and tan &lt;a href=&#34;%22http://www.colehaan.com/colehaan/home.jsp%22&#34;&gt;Cole Haans&lt;/a&gt;, and instantly felt overdressed. A few people sported clean jeans and polos, but I&amp;rsquo;d have blended much better in a techno T-shirt, battered dungarees, and sandals. Hoops and baubles festooned nostrils and earlobes, and I knew instantly that these folks never proactively facilitated synergies nor thought outside the box to formulate win-win action plans. These were bohemian coders, not corporate drones, but they betrayed no suspicion when extending me hellos and handshakes. In fact, these bonhomous bit-twiddlers welcomed each newcomer as if reconnecting with long-lost cousins at Uncle Dale&amp;rsquo;s family reunion. I&amp;rsquo;m used to more reticence and reserve at technical meetups, and I enjoyed the agreeable ambiance. We were there to connect and have fun, not hide behind Dependency Injectors or Object-Relational Mappers.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Running on a Mac</title>
				<link>https://grailbox.com/posts/another-post-83/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-83/</guid>
				<description>&lt;p&gt;Originally posted 2005-03-31 20:30:10&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve had my iBook, which introduced me to both Macs and Mac OS X, for almost a year now. When I first got it, I struggled to find software for it&amp;ndash;what tools should I use? Which work well? Which don&amp;rsquo;t? Over time, I&amp;rsquo;ve amassed several software tools that help me to be productive.&lt;/p&gt;&#xA;&lt;p&gt;Today, I had lunch with a former colleague, who confessed that he&amp;rsquo;d just popped for a 17\ PowerBook. Like Paul Graham recently said, &lt;a href=&#34;%22http://www.paulgraham.com/mac.html%22&#34;&gt;the techies are moving to Macs&lt;/a&gt;. I told him (my friend, not Paul Graham) that I&amp;rsquo;d send him a list of the software I use. Later, I realized I might as well blog my list, so more people can benefit from it.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Safe 0.2 Released</title>
				<link>https://grailbox.com/posts/another-post-33/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-33/</guid>
				<description>&lt;p&gt;Originally posted 2007-08-21 18:05:02&lt;/p&gt;&#xA;&lt;p&gt;I just released version 0.2 of &lt;a href=&#34;%22http://safe.rubyforge.org/%22&#34;&gt;Safe&lt;/a&gt;, the command-line password management program I&amp;rsquo;ve been using. This is the first public release, and it&amp;rsquo;s still alpha, but I&amp;rsquo;d love feedback. I&amp;rsquo;m using it on Linux, Mac OS X, and Windows. It requires Ruby, Rubygems, and the crypt and highline gems.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Safe 0.5 Released</title>
				<link>https://grailbox.com/posts/another-post-19/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-19/</guid>
				<description>&lt;p&gt;Originally posted 2008-04-09 13:16:31&lt;/p&gt;&#xA;&lt;p&gt;I just released version 0.5 of &lt;a href=&#34;%22http://safe.rubyforge.org/%22&#34;&gt;Safe&lt;/a&gt;, the open-source command-line password management program written in Ruby. This version adds diffing and merging Safe password files. I keep my Safe file on a USB thumb drive, but I also copy it to the various computers I use in case I don&amp;rsquo;t have my USB thumb drive with me. Sometimes the files get out of sync. Now I can diff and merge the files.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Serendipity</title>
				<link>https://grailbox.com/posts/another-post-92/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-92/</guid>
				<description>&lt;p&gt;Originally posted 2004-08-11 12:49:00&lt;/p&gt;&#xA;&lt;p&gt;Recently, my company purchased a Sun 420R for testing purposes, so I&amp;rsquo;ve been installing software on and configuring it. For some reason, it couldn&amp;rsquo;t get out to the Internet, though it saw the local network fine (aha! a clue!). I get together with our sysadmin, who knows virtually nothing about *nix but is a Windows whiz, and we pored through Linux books (we don&amp;rsquo;t have any Solaris ones) and man pages, and finally determined:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Social Browsing for the Creative Class</title>
				<link>https://grailbox.com/posts/another-post-43/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-43/</guid>
				<description>&lt;p&gt;Originally posted 2006-06-17 12:48:19&lt;/p&gt;&#xA;&lt;p&gt;I just came across &lt;a href=&#34;%22http://www.flock.com/%22&#34;&gt;Flock &amp;ndash; The web browser for you and your friends&lt;/a&gt;. It&amp;rsquo;s a web browser based on Firefox for Mac OS X only, and it&amp;rsquo;s in beta. It differs from other browsers in intent: it aims to integrate with popular web-based social tools. I don&amp;rsquo;t know its roadmap, but Flock currently integrates with:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Blogging software (I&amp;rsquo;m typing this entry on its built-in blog client&amp;ndash;right-click in any page and click on the Blog This menu entry to launch the client)&lt;/li&gt;&#xA;&lt;li&gt;Photo-sharing software (currently Flickr and Photobucket)&lt;/li&gt;&#xA;&lt;li&gt;RSS Feeds&lt;/li&gt;&#xA;&lt;li&gt;Bookmarking (currently del.icio.us and Shadows)&lt;/li&gt;&#xA;&lt;li&gt;Search (defaults to Yahoo)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;How does it work? This is my first attempt with the blogging software, so I don&amp;rsquo;t know yet how well the publishing works. The client seems workable enough. Here&amp;rsquo;s a screen shot:&lt;/p&gt;</description>
			</item>
			<item>
				<title>Source Control</title>
				<link>https://grailbox.com/posts/another-post-68/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-68/</guid>
				<description>&lt;p&gt;Originally posted 2005-07-13 05:49:40&lt;/p&gt;&#xA;&lt;p&gt;Last night, I gave a presentation to &lt;a href=&#34;%22http://www.jaxdug.com%22&#34;&gt;The Jacksonville Developers User Group&lt;/a&gt; titled &amp;ldquo;Source Control Using CVS, Subversion, and AccuRev.&amp;rdquo; You can download the Powerpoint file &lt;a href=&#34;%22http://interspatial.com/presentations/SourceControl.ppt%22&#34;&gt;here&lt;/a&gt;, or view it online &lt;a href=&#34;%22http://interspatial.com/presentations/SourceControl.html%22&#34;&gt;here&lt;/a&gt;. We had a good discussion, good questions, and I hope I made a few new converts. I felt a few tense moments when I discovered I&amp;rsquo;d left my laptop power cord at home, and the new battery I&amp;rsquo;d just put into it had died. I&amp;rsquo;d forgotten that when I just close the lid, Windows goes into standby . . . and stays there until the battery is dead. My iBook doesn&amp;rsquo;t do that. Luckily, I had the latest version of my presentation on my keychain USB key, and the facility where the meeting was held had a PC in the podium with a USB extension cord ready and waiting. Phew.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Staffing Companies--What Will They Think of Next?</title>
				<link>https://grailbox.com/posts/another-post-44/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-44/</guid>
				<description>&lt;p&gt;Originally posted 2006-06-14 14:00:56&lt;/p&gt;&#xA;&lt;p&gt;As someone who manages a growing team of people, I often have positions to fill. To assist with finding excellent, highly-qualified, motivated, high-energy people, I work with several staffing firms. When I have an opening, I send them the position description, they send me resumes, I and my team review the resumes, and we interview the people who pass the resume sieve. We hire people based on how they do in the interviews, how well we think they&amp;rsquo;ll fit on the team, and all the other criteria you&amp;rsquo;d expect. One item that has no bearing on whether or not we try to bring someone in is the staffing company from whom we received the resume. I don&amp;rsquo;t play favorites, and I expect that few people do. I have to count on the people I bring in to do the work and make me look good. Making me look good requires talented people!&lt;/p&gt;</description>
			</item>
			<item>
				<title>Surviving Meetings: The Limerick Challenge</title>
				<link>https://grailbox.com/posts/another-post-11/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-11/</guid>
				<description>&lt;p&gt;Originally posted 2010-03-23 16:24:39&lt;/p&gt;&#xA;&lt;p&gt;An unknown author penned a self-describing limerick (meta-limerick?) that perhaps represents the pinnacle of its genre:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;The limerick packs laughs anatomical In space that is quite economical, But the good ones I&amp;rsquo;ve seen So seldom are clean, And the clean ones so seldom are comical.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;You can read more about limericks &lt;a href=&#34;%22http://en.wikipedia.org/wiki/Limerick_(poetry)%22&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;%22http://en.wikipedia.org/wiki/Isaac_asimov%22&#34;&gt;Isaac Asimov&lt;/a&gt;, who wrote about almost anything you can think of, published a series of short stories, across several volumes, about a men&amp;rsquo;s group who called themselves The Black Widowers. These men dined, discussed, dissected, and divined the answer to some puzzle in each story. The stories are quite good, and I recommend them heartily. In a few stories, until an editor convinced Asimov otherwise, one of the characters delivered a limerick summarizing a book of Homer&amp;rsquo;s The Iliad (or was it The Odyssey?).&lt;/p&gt;</description>
			</item>
			<item>
				<title>T-Mobile MDA--Impressions after 2 1/2 weeks</title>
				<link>https://grailbox.com/posts/another-post-54/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-54/</guid>
				<description>&lt;p&gt;Originally posted 2006-03-11 03:40:47&lt;/p&gt;&#xA;&lt;p&gt;The day the MDA came out, Feb 21, I went to a T-Mobile store and bought one. The next day, a coworker who has a Windows Phone/PDA from yesteryear, couldn&amp;rsquo;t stand himself and bought one, too. The day after that, another coworker, who has gone staunchly PDA-less his entire life, caved in and bought one, too. He had some problems&amp;ndash;he called around the city to all the T-Mobile stores, and they were all out. He finally found one, though. So, all three technology directors at our company carry one of these devices. Our boss, the CTO, carries a Treo 650 and envies us.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Tech Books Deals of the Day: Sinatra, Haml, and Heroku</title>
				<link>https://grailbox.com/posts/another-post-9/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-9/</guid>
				<description>&lt;p&gt;Originally posted 2010-04-02 16:09:57&lt;/p&gt;&#xA;&lt;p&gt;I buy books, but I swear I could quit any time. The bookshelves in my home swing low like telephone wires, topped with books perched like crows wing-to-wing and two-deep to maximize the shelf space. I&amp;rsquo;ve wedged clouds of books into the gaps above the bird-books, distending the shelves even more. Authors and genres span a gamut that rivals public libraries: Tolstoy, Petzold, non-fiction, thrillers, Bryson, Bloch, contemporary fiction, tech books.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Technical Teens</title>
				<link>https://grailbox.com/posts/another-post-15/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-15/</guid>
				<description>&lt;p&gt;Originally posted 2008-11-11 12:33:17&lt;/p&gt;&#xA;&lt;p&gt;My oldest child turned 15 yesterday. We had planned a family party for him&amp;ndash;eat barbecue, open presents, eat cake&amp;ndash;but we ended up canceling after he cussed me out at church the day before. He doesn&amp;rsquo;t live at home, and we decided he&amp;rsquo;d rather not spend his birthday with his parents. You see, this child has bipolar disorder, oppositional defiance disorder, and obsessive compulsive disorder. I could tell you stories. Parents of children with mental illnesses would nod their heads knowingly, and the rest of you would stare in horror and disbelief. If you&amp;rsquo;re interested in what life is like for parents raising a bipolar child, you can read my wife&amp;rsquo;s blog at &lt;a href=&#34;%22http://parentingyoyos.blogspot.com%22&#34;&gt;http://parentingyoyos.blogspot.com&lt;/a&gt;.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Testing Tools</title>
				<link>https://grailbox.com/posts/another-post-65/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-65/</guid>
				<description>&lt;p&gt;Originally posted 2005-08-25 07:09:56&lt;/p&gt;&#xA;&lt;p&gt;While at JavaOne last June, I wandered past &lt;a href=&#34;%22http://www.cenqua.com%22&#34;&gt;Cenqua&amp;rsquo;s&lt;/a&gt; booth. The brochure for &lt;a href=&#34;%22http://www.cenqua.com/clover/%22&#34;&gt;Clover&lt;/a&gt; caught my eye, so I spent some time chatting with one Cenqua&amp;rsquo;s reps about it. I took the brochure, stuffed it into my backpack, and didn&amp;rsquo;t really think much about it again.&lt;/p&gt;&#xA;&lt;p&gt;Until the other day, as we talked about how to get better at writing solid code. We have begun to infuse our development with JUnit tests, and I wanted to see how well we were doing. So, I downloaded a trial of the Ant version of Clover, followed the steps to insert it into our build process, generated an HTML report . . . and sat agog. I&amp;rsquo;ve got to buy this tool.&lt;/p&gt;</description>
			</item>
			<item>
				<title>The Best Code I Ever Wrote</title>
				<link>https://grailbox.com/posts/another-post-8/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-8/</guid>
				<description>&lt;p&gt;Originally posted 2010-04-09 16:37:48&lt;/p&gt;&#xA;&lt;p&gt;On Christmas 1981, our parents gave my brother and me our first computer: an Atari 400. I was in 7th grade and my brother was in 8th. My parents really couldn&amp;rsquo;t afford to buy this gift, but they consistently made sacrifices to make sure our active minds stayed engaged. They also gave us the Atari BASIC language interpreter, which came on a cartridge, and the Atari 410 cassette player so we could both store and load programs. The 400 was later replaced by an 800, the 410 by the 1010 cassette player (which moved the power supply to a wart) and later a disc drive (1050?). We wore all that computing power out. These were the days of Softside and Compute! magazines, which offered entire code listings that we painstakingly typed in, ran, debugged, and ran again. We read those magazines like we&amp;rsquo;d read comic books a few years before, typing in program listings, learning to program, and writing our own programs. We fired at spaceships, redefined character sets, drew mazes, and programmed sounds. It&amp;rsquo;s like the Bill Gates story, but without all that pesky fortune and fame.&lt;/p&gt;</description>
			</item>
			<item>
				<title>The Elite Eight Development Principles</title>
				<link>https://grailbox.com/posts/another-post-13/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-13/</guid>
				<description>&lt;p&gt;Originally posted 2009-04-18 03:11:31&lt;/p&gt;&#xA;&lt;p&gt;As a management team, we recently crafted and presented a list of development principles for our developers to follow. The goal was to provide vision and direction, not to dictate the outcome of every scenario. Here&amp;rsquo;s a somewhat sanitized version of what we presented.\&lt;/p&gt;&#xA;&lt;h1 id=&#34;the-elite-eight-development-principles&#34;&gt;The Elite Eight Development Principles&lt;/h1&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Code with your teammates in mind.&#xA;\&lt;/li&gt;&#xA;&lt;li&gt;Don&amp;rsquo;t break the build.&#xA;\&lt;/li&gt;&#xA;&lt;li&gt;If it ain&amp;rsquo;t in source control, it doesn&amp;rsquo;t exist.&#xA;\&lt;/li&gt;&#xA;&lt;li&gt;If it ain&amp;rsquo;t testable, it doesn&amp;rsquo;t work.&#xA;\&lt;/li&gt;&#xA;&lt;li&gt;If it ain&amp;rsquo;t repeatable, it was never done.&#xA;\&lt;/li&gt;&#xA;&lt;li&gt;Think more, write less, and keep it simple.&#xA;\&lt;/li&gt;&#xA;&lt;li&gt;You&amp;rsquo;re better with tools.&#xA;\&lt;/li&gt;&#xA;&lt;li&gt;Share what you learn.&#xA;\&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;1-code-with-your-teammates-in-mind&#34;&gt;#1: Code with your teammates in mind&lt;/h2&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;\It&amp;rsquo;s OK to figure out murder mysteries, but you shouldn&amp;rsquo;t need to figure out code. You should be able to read it.\ &amp;ndash; Steve McConnell&lt;/p&gt;</description>
			</item>
			<item>
				<title>The Fate of New Computers in My House</title>
				<link>https://grailbox.com/posts/another-post-14/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-14/</guid>
				<description>&lt;p&gt;Originally posted 2008-12-12 07:27:04&lt;/p&gt;&#xA;&lt;p&gt;In recent months, two computers in my home reached the ends of their useful lives. The first was the HP desktop that my children use. They&amp;rsquo;ve loaded so many game demos on it over the years that it had become painfully sluggish. I was going to wipe and reinstall the OS, but the DVD drive doesn&amp;rsquo;t work. I had replaced the drive some months ago, and it worked for a week then quit working again, so it&amp;rsquo;s probably an issue with the motherboard. The computer is old enough, and my time is valuable enough, that it was simply cheaper to give the computer to a geeked-out nephew and buy a Lenovo on sale for less than $500 (3 GB RAM, 500 GB hard drive, 19\ monitor).&lt;/p&gt;</description>
			</item>
			<item>
				<title>The MacZOT Revolution</title>
				<link>https://grailbox.com/posts/another-post-49/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-49/</guid>
				<description>&lt;p&gt;Originally posted 2006-04-25 02:27:55&lt;/p&gt;&#xA;&lt;p&gt;Mac users should get to know &lt;a href=&#34;%22http://maczot.com/%22&#34;&gt;MacZOT&lt;/a&gt;, a pioneering web site for software marketing. In a nutshell, they work with software developers to sell their applications at a lower price for a day, trying to create a buzz around the product. Their approach seems a little offbeat, hawking such offerings as MyzteryZOTs, which are grab bags of applications at a low price&amp;ndash;you find out what they are after you buy them.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Three Egregious Outlook Problems</title>
				<link>https://grailbox.com/posts/another-post-10/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-10/</guid>
				<description>&lt;p&gt;Originally posted 2010-03-31 10:37:09&lt;/p&gt;&#xA;&lt;p&gt;My workplace uses the Outlook/Exchange juggernaut to manage email and calendars. This post doesn&amp;rsquo;t argue for or against that solution &amp;ndash; it&amp;rsquo;s in place, it works, and it allows me to communicate and schedule my days. Rather, this post &lt;strong&gt;pleads&lt;/strong&gt; for Microsoft to change three things in that platform:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;They always mean \manager,\ never \manger\&lt;/strong&gt;&lt;br&gt;&#xA;OK, around Christmastime, someone might send out nativity scene notice, but most people are talking about managers. Outlook&amp;rsquo;s spell check doesn&amp;rsquo;t flag \manger\ because it&amp;rsquo;s a correctly-spelled word. Outlook&amp;rsquo;s grammar checker doesn&amp;rsquo;t flag \manger,\ presumably because, as a noun, it grammatically interchanges with \manager.\ The &lt;a href=&#34;%22http://en.wikipedia.org/wiki/Pareto_principle%22&#34;&gt;Pareto principle&lt;/a&gt; should step in and flag \manger.\&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;They &lt;em&gt;never&lt;/em&gt; mean \pubic\!&lt;/strong&gt;&lt;br&gt;&#xA;Every few months, I get an email that &lt;em&gt;intends&lt;/em&gt; to say \public,\ but doesn&amp;rsquo;t. With apologies to any gynecological Outlook users out there, no one &lt;em&gt;ever&lt;/em&gt; intends to say \pubic\ in an email. I&amp;rsquo;m having trouble typing it right now&amp;ndash;my fingers keep inserting an \l\ to save me from embarrassment. Outlook should flag \pubic\ every time and make users answer complex anatomy questions before sending any email that contains the word \pubic.\&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;All-day events should not have reminders that trigger five minutes before the event starts&lt;/strong&gt;&lt;br&gt;&#xA;When my team members take vacations, they send all-day calendar events so we&amp;rsquo;ll all know not to look for them on those days. Other all-day events land in my inbox regularly. I accept them, they&amp;rsquo;re added to my calendar, and I&amp;rsquo;m well-scheduled. My calendar syncs to my iPhone, which also serves as my alarm clock. Far too often, my iPhone screams me awake at 11:55 PM to tell me that Melba will not be showing up to work the next day. I scream back and remind myself to do a better job of turning off notifications for all-day events as they come in, but Outlook shouldn&amp;rsquo;t let you send other people midnight alarms.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;I&amp;rsquo;m reading Steve Krug&amp;rsquo;s &lt;a href=&#34;%22http://www.sensible.com/rocketsurgery/index.html%22&#34;&gt;&lt;em&gt;Rocket Surgery Made Easy&lt;/em&gt;&lt;/a&gt;, and I watched the 25-minute usability testing demo right before I typed this post. In the video, he asks viewers to identify the three biggest usability problems with the web site. You may disagree, but the three issues above are my list for Outlook.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Tiger Direct Sues Apple</title>
				<link>https://grailbox.com/posts/another-post-81/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-81/</guid>
				<description>&lt;p&gt;Originally posted 2005-04-29 04:59:07&lt;/p&gt;&#xA;&lt;p&gt;Unbelievable. &lt;a href=&#34;%22http://www.tigerdirect.com/%22&#34;&gt;Tiger Direct&lt;/a&gt; has sued &lt;a href=&#34;%22http://www.apple.com%22&#34;&gt;Apple&lt;/a&gt; for trademark infringement. The issue? The new version of Mac OS X, dubbed Tiger, has flooded the Internet with techie \Tiger\ references, bumping Tiger Direct down the list in search engine results. The flagrant timing of the lawsuit, one day before the new Mac OS&amp;rsquo;s release, marks this as a publicity stunt or an attempt at a cash grab. I wonder what implications this lawsuit holds for search engine manipulation, though. If &lt;a href=&#34;%22http://www.rolltide.com%22&#34;&gt;Alabama&amp;rsquo;s football team&lt;/a&gt; becomes good again, and sparks thousands of armchair quarterbacks to pen insightful and noteworthy online articles about them, will &lt;a href=&#34;%22http://www.tide.com%22&#34;&gt;Proctor and Gamble&lt;/a&gt; sue? Talk about a slippery, or at least sudsy, slope.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Treo 650 and Smart Phones</title>
				<link>https://grailbox.com/posts/another-post-61/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-61/</guid>
				<description>&lt;p&gt;Originally posted 2006-02-13 04:58:27&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve used a PDA since 2000. I started with the Handspring Visor Deluxe, later adding the VisorPhone to it. I graduated to a Treo 180, which I used until the hinge broke. I tried going PDA-less for a time, but THAT didn&amp;rsquo;t work, so I bought a Palm Tungsten E and carried a separate cell phone. I continue to use the Tunsgten E today.&lt;/p&gt;&#xA;&lt;p&gt;Since I&amp;rsquo;ve joined the ranks of management, however, I&amp;rsquo;m finding that the Tungsten E no longer adequately solves my PDA needs: it has no wireless capabilities. After a typical day of meetings, I return to my desk to find over 100 emails, each of which requiring thoughtful responses. So, I&amp;rsquo;ll hunker down and start replying . . . and my wife will eventually call to ask where I am and when I&amp;rsquo;m coming home, and somehow I never come up with the right answer (the fact that she&amp;rsquo;s had to call indicates that I&amp;rsquo;m already too late for redemption). The time has come to address this issue.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Usability and the Common Man</title>
				<link>https://grailbox.com/posts/another-post-96/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-96/</guid>
				<description>&lt;p&gt;Originally posted 2004-05-05 12:29:51&lt;/p&gt;&#xA;&lt;p&gt;After some contemplation and waffling, I finally ventured out of x86-land and got a Mac&amp;ndash;one of the new iBook G4 1.25 GHz machines. I think I was swayed less by the \Switch\ campaign and more by &lt;a href=&#34;%22http://www.apple.com/pro/science/gosling/%22&#34;&gt;James Gosling&amp;rsquo;s endorsement&lt;/a&gt;. Besides, I got a great deal (thanks, Bobby!). I&amp;rsquo;ve got Eclipse up and running on it, I&amp;rsquo;ve compiled and run some SWT and JFace apps, and it&amp;rsquo;s all pretty cool. I&amp;rsquo;m now reading a book on Cocoa and Objective-C, wondering what I&amp;rsquo;ll do with that.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Website</title>
				<link>https://grailbox.com/posts/another-post-90/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-90/</guid>
				<description>&lt;p&gt;Originally posted 2004-08-25 06:29:03&lt;/p&gt;&#xA;&lt;p&gt;My 10-year-old son, Tyson, decided he wanted to learn how to make web pages. I bought him a book, which directed him to Netscape Composer, and I showed him how to FTP his files into the appropriate directory on the server. He&amp;rsquo;s been working on his site:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;%22http://www.interspatial.com/tyson/%22&#34;&gt;http://www.interspatial.com/tyson/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;I noticed this morning that he put a plug for my book on his site, so I&amp;rsquo;m returning the favor and plugging his site. He&amp;rsquo;d love to hear from you :-)&lt;/p&gt;</description>
			</item>
			<item>
				<title>Why Engineers Need Marketing Folks</title>
				<link>https://grailbox.com/posts/another-post-22/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-22/</guid>
				<description>&lt;p&gt;Originally posted 2008-02-13 10:57:38&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;%22http://www.yazsoft.com%22&#34;&gt;YazSoft&lt;/a&gt; has just announced version 5 of Speed Download, its download management product for Mac. They charge $25 for this product. The price may or may not seem reasonable to you, depending on your need for a download manager and your willingness to pay for software, but it&amp;rsquo;s certainly not outrageous. They offer a reduced price to upgrade from previous versions ($15 - $20, depending on which previous version you use), as well as a cross-grade \switcher\ price for $15. Thus far, the engineers have done fine without anyone from marketing.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Why SWT?</title>
				<link>https://grailbox.com/posts/another-post-95/</link>
				<pubDate>Fri, 27 Aug 2010 15:49:30 +0000</pubDate>
				<guid>https://grailbox.com/posts/another-post-95/</guid>
				<description>&lt;p&gt;Originally posted 2004-05-20 12:44:34&lt;/p&gt;&#xA;&lt;p&gt;I recently attended my first Java Users&amp;rsquo; Group (JUG) meeting. My interest in belonging to a JUG has coincided with a renaissance in the previously moribund local JUG, so I couldn&amp;rsquo;t have timed things better.&lt;/p&gt;&#xA;&lt;p&gt;In this meeting, we discussed ideas for future meeting topics. Most suggested topics revolved aound J2EE, which covers most of what I do, but I offered to do a presentation on SWT and JFace in conjunction with the release of &lt;a href=&#34;%22http://www.apress.com/book/bookDisplay.html?bID=351%22&#34;&gt;&lt;em&gt;The Definitive Guide to SWT and JFace&lt;/em&gt;&lt;/a&gt;. Heads agreeably nodded and a few \yeses\ bubbled up. Then, however, one member, apparently only just restraining himself, wondered aloud why SWT even existed, that Swing rendered SWT completely superfluous, and SWT should disappear. He spoke in clipped tones and measured syllables, revealing his contempt for and hostility toward SWT. I frantically scanned the room for the nearest exit.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
