<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Crunchytoast.com</title>
	<atom:link href="http://crunchytoast.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://crunchytoast.com</link>
	<description>What's better than toast? Crunchytoast!</description>
	<pubDate>Thu, 01 Apr 2010 07:36:28 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
	<language>en</language>
			<item>
		<title>Improved Romaji Convertor in Ruby</title>
		<link>http://crunchytoast.com/2010/04/01/improved-romaji-convertor-in-ruby/</link>
		<comments>http://crunchytoast.com/2010/04/01/improved-romaji-convertor-in-ruby/#comments</comments>
		<pubDate>Thu, 01 Apr 2010 07:14:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[development]]></category>

		<category><![CDATA[ruby on rails]]></category>

		<category><![CDATA[japanese]]></category>

		<category><![CDATA[ruby]]></category>

		<category><![CDATA[text processing]]></category>

		<guid isPermaLink="false">http://crunchytoast.com/?p=400</guid>
		<description><![CDATA[Last year I re-posted some obsure Kana &#038; Romaji converter code for Ruby. Although I had fixed it to work with modern versions of Ruby, the romanization converter just didn&#8217;t want to work! Finally after dedicating an afternoon to it, I found that the regex used to split the source string was returning nil. At [...]]]></description>
			<content:encoded><![CDATA[<p>Last year I re-posted some obsure Kana &#038; Romaji converter code for Ruby. Although I had fixed it to work with modern versions of Ruby, the romanization converter just didn&#8217;t want to work! Finally after dedicating an afternoon to it, I found that the regex used to split the source string was returning nil. At some point in the distant past it worked, and then broke irreversibly.</p>
<p>In posting this update, I have also added support for &#8220;tsu&#8221; being transliterated to &#8220;つ&#8221; which the original author (being Japanese) did not include. In working this out, I discovered a bit about the internal design. As such I have added some helpful comments (helpful if they&#8217;d been there originally!)</p>
<p>Full credit goes to the mysterious K.Kodama who wrote this in 2002. Some 8 years later, now that it works better, this is the best kana/romaji converter available in Ruby!</p>
<p>Full code is included after the break!<span id="more-400"></span></p>
<pre class="brush: ruby"># kana2rom.rb
#
# This script is distributed freely in the sense of GNU General Public License.
# K.Kodama 2002.06
#
# Cleaned up and repaired to work with modern Ruby versions, added more comments
# crunchyt a~/t crunchytoast.com 2010.04
#
# Kana2rom::kana2rom(str) かな--&gt;ロ－マ字 変換  ### Romaji conversion functions to not work!!!
# Kana2rom::rom2kata(str) ロ－マ字--&gt;片仮名 変換
# Kana2rom::rom2hira(str) ロ－マ字--&gt;平仮名 変換
# Kana2rom::hira2kata(str) 平仮名--&gt;片仮名 変換
# Kana2rom::kata2hira(str) 片仮名--&gt;平仮名 変換
# Kana2rom::kana2kana(str) attempts either to either, returns unique strings only
#

module Kana2rom

	Kana2romH={
		&quot;ア&quot;=&gt;&quot;a&quot;, &quot;イ&quot;=&gt;&quot;i&quot;, &quot;ウ&quot;=&gt;&quot;u&quot;, &quot;エ&quot;=&gt;&quot;e&quot;,&quot;オ&quot;=&gt;&quot;o&quot;,
		&quot;あ&quot;=&gt;&quot;a&quot;, &quot;い&quot;=&gt;&quot;i&quot;, &quot;う&quot;=&gt;&quot;u&quot;, &quot;え&quot;=&gt;&quot;e&quot;,&quot;お&quot;=&gt;&quot;o&quot;,
		&quot;カ&quot;=&gt;&quot;ka&quot;, &quot;キ&quot;=&gt;&quot;ki&quot;, &quot;ク&quot;=&gt;&quot;ku&quot;, &quot;ケ&quot;=&gt;&quot;ke&quot;, &quot;コ&quot;=&gt;&quot;ko&quot;,
		&quot;か&quot;=&gt;&quot;ka&quot;, &quot;き&quot;=&gt;&quot;ki&quot;, &quot;く&quot;=&gt;&quot;ku&quot;, &quot;け&quot;=&gt;&quot;ke&quot;, &quot;こ&quot;=&gt;&quot;ko&quot;,
		&quot;ガ&quot;=&gt;&quot;ga&quot;, &quot;ギ&quot;=&gt;&quot;gi&quot;, &quot;グ&quot;=&gt;&quot;gu&quot;, &quot;ゲ&quot;=&gt;&quot;ge&quot;, &quot;ゴ&quot;=&gt;&quot;go&quot;,
		&quot;が&quot;=&gt;&quot;ga&quot;, &quot;ぎ&quot;=&gt;&quot;gi&quot;, &quot;ぐ&quot;=&gt;&quot;gu&quot;, &quot;げ&quot;=&gt;&quot;ge&quot;, &quot;ご&quot;=&gt;&quot;go&quot;,
		&quot;サ&quot;=&gt;&quot;sa&quot;, &quot;シ&quot;=&gt;&quot;si&quot;, &quot;ス&quot;=&gt;&quot;su&quot;, &quot;セ&quot;=&gt;&quot;se&quot;, &quot;ソ&quot;=&gt;&quot;so&quot;,
		&quot;さ&quot;=&gt;&quot;sa&quot;, &quot;し&quot;=&gt;&quot;si&quot;, &quot;す&quot;=&gt;&quot;su&quot;, &quot;せ&quot;=&gt;&quot;se&quot;, &quot;そ&quot;=&gt;&quot;so&quot;,
		&quot;ザ&quot;=&gt;&quot;za&quot;, &quot;ジ&quot;=&gt;&quot;ji&quot;, &quot;ズ&quot;=&gt;&quot;zu&quot;, &quot;ゼ&quot;=&gt;&quot;ze&quot;, &quot;ゾ&quot;=&gt;&quot;zo&quot;,
		&quot;ざ&quot;=&gt;&quot;za&quot;, &quot;じ&quot;=&gt;&quot;ji&quot;, &quot;ず&quot;=&gt;&quot;zu&quot;, &quot;ぜ&quot;=&gt;&quot;ze&quot;, &quot;ぞ&quot;=&gt;&quot;zo&quot;,
		&quot;タ&quot;=&gt;&quot;ta&quot;, &quot;チ&quot;=&gt;&quot;chi&quot;, &quot;ツ&quot;=&gt;&quot;tsu&quot;, &quot;テ&quot;=&gt;&quot;te&quot;, &quot;ト&quot;=&gt;&quot;to&quot;,
		&quot;た&quot;=&gt;&quot;ta&quot;, &quot;ち&quot;=&gt;&quot;chi&quot;, &quot;つ&quot;=&gt;&quot;tsu&quot;, &quot;て&quot;=&gt;&quot;te&quot;, &quot;と&quot;=&gt;&quot;to&quot;,
		&quot;ダ&quot;=&gt;&quot;da&quot;, &quot;ヂ&quot;=&gt;&quot;di&quot;, &quot;ヅ&quot;=&gt;&quot;du&quot;, &quot;デ&quot;=&gt;&quot;de&quot;, &quot;ド&quot;=&gt;&quot;do&quot;,
		&quot;だ&quot;=&gt;&quot;da&quot;, &quot;ぢ&quot;=&gt;&quot;di&quot;, &quot;づ&quot;=&gt;&quot;du&quot;, &quot;で&quot;=&gt;&quot;de&quot;, &quot;ど&quot;=&gt;&quot;do&quot;,
		&quot;ナ&quot;=&gt;&quot;na&quot;, &quot;ニ&quot;=&gt;&quot;ni&quot;, &quot;ヌ&quot;=&gt;&quot;nu&quot;, &quot;ネ&quot;=&gt;&quot;ne&quot;, &quot;ノ&quot;=&gt;&quot;no&quot;,
		&quot;な&quot;=&gt;&quot;na&quot;, &quot;に&quot;=&gt;&quot;ni&quot;, &quot;ぬ&quot;=&gt;&quot;nu&quot;, &quot;ね&quot;=&gt;&quot;ne&quot;, &quot;の&quot;=&gt;&quot;no&quot;,
		&quot;ハ&quot;=&gt;&quot;ha&quot;, &quot;ヒ&quot;=&gt;&quot;hi&quot;, &quot;フ&quot;=&gt;&quot;hu&quot;, &quot;ヘ&quot;=&gt;&quot;he&quot;, &quot;ホ&quot;=&gt;&quot;ho&quot;,
		&quot;は&quot;=&gt;&quot;ha&quot;, &quot;ひ&quot;=&gt;&quot;hi&quot;, &quot;ふ&quot;=&gt;&quot;hu&quot;, &quot;へ&quot;=&gt;&quot;he&quot;, &quot;ほ&quot;=&gt;&quot;ho&quot;,
		&quot;バ&quot;=&gt;&quot;ba&quot;, &quot;ビ&quot;=&gt;&quot;bi&quot;, &quot;ブ&quot;=&gt;&quot;bu&quot;, &quot;ベ&quot;=&gt;&quot;be&quot;, &quot;ボ&quot;=&gt;&quot;bo&quot;,
		&quot;ば&quot;=&gt;&quot;ba&quot;, &quot;び&quot;=&gt;&quot;bi&quot;, &quot;ぶ&quot;=&gt;&quot;bu&quot;, &quot;べ&quot;=&gt;&quot;be&quot;, &quot;ぼ&quot;=&gt;&quot;bo&quot;,
		&quot;パ&quot;=&gt;&quot;pa&quot;, &quot;ピ&quot;=&gt;&quot;pi&quot;, &quot;プ&quot;=&gt;&quot;pu&quot;, &quot;ペ&quot;=&gt;&quot;pe&quot;, &quot;ポ&quot;=&gt;&quot;po&quot;,
		&quot;ぱ&quot;=&gt;&quot;pa&quot;, &quot;ぴ&quot;=&gt;&quot;pi&quot;, &quot;ぷ&quot;=&gt;&quot;pu&quot;, &quot;ぺ&quot;=&gt;&quot;pe&quot;, &quot;ぽ&quot;=&gt;&quot;po&quot;,
		&quot;マ&quot;=&gt;&quot;ma&quot;, &quot;ミ&quot;=&gt;&quot;mi&quot;, &quot;ム&quot;=&gt;&quot;mu&quot;, &quot;メ&quot;=&gt;&quot;me&quot;, &quot;モ&quot;=&gt;&quot;mo&quot;,
		&quot;ま&quot;=&gt;&quot;ma&quot;, &quot;み&quot;=&gt;&quot;mi&quot;, &quot;む&quot;=&gt;&quot;mu&quot;, &quot;め&quot;=&gt;&quot;me&quot;, &quot;も&quot;=&gt;&quot;mo&quot;,
		&quot;ヤ&quot;=&gt;&quot;ya&quot;, &quot;ユ&quot;=&gt;&quot;yu&quot;, &quot;ヨ&quot;=&gt;&quot;yo&quot;,
		&quot;や&quot;=&gt;&quot;ya&quot;, &quot;ゆ&quot;=&gt;&quot;yu&quot;, &quot;よ&quot;=&gt;&quot;yo&quot;,
		&quot;ラ&quot;=&gt;&quot;ra&quot;,&quot;リ&quot;=&gt;&quot;ri&quot;,&quot;ル&quot;=&gt;&quot;ru&quot;,&quot;レ&quot;=&gt;&quot;re&quot;,&quot;ロ&quot;=&gt;&quot;ro&quot;,
		&quot;ら&quot;=&gt;&quot;ra&quot;,&quot;り&quot;=&gt;&quot;ri&quot;,&quot;る&quot;=&gt;&quot;ru&quot;,&quot;れ&quot;=&gt;&quot;re&quot;,&quot;ろ&quot;=&gt;&quot;ro&quot;,
		&quot;ワ&quot;=&gt;&quot;wa&quot;,&quot;ヰ&quot;=&gt;&quot;wi&quot;, &quot;ヱ&quot;=&gt;&quot;we&quot;, &quot;ヲ&quot;=&gt;&quot;wo&quot;, &quot;ン&quot;=&gt;&quot;nn&quot;,
		&quot;わ&quot;=&gt;&quot;wa&quot;,&quot;ゐ&quot;=&gt;&quot;wi&quot;, &quot;ゑ&quot;=&gt;&quot;we&quot;, &quot;を&quot;=&gt;&quot;wo&quot;, &quot;ん&quot;=&gt;&quot;nn&quot;,
		&quot;ァ&quot;=&gt;&quot;xa&quot;, &quot;ィ&quot;=&gt;&quot;xi&quot;, &quot;ゥ&quot;=&gt;&quot;xu&quot;, &quot;ェ&quot;=&gt;&quot;xe&quot;, &quot;ォ&quot;=&gt;&quot;xo&quot;,
		&quot;ぁ&quot;=&gt;&quot;xa&quot;, &quot;ぃ&quot;=&gt;&quot;xi&quot;, &quot;ぅ&quot;=&gt;&quot;xu&quot;, &quot;ぇ&quot;=&gt;&quot;xe&quot;, &quot;ぉ&quot;=&gt;&quot;xo&quot;,
		&quot;ッ&quot;=&gt;&quot;xtu&quot;, &quot;ャ&quot;=&gt;&quot;xya&quot;, &quot;ュ&quot;=&gt;&quot;xyu&quot;, &quot;ョ&quot;=&gt;&quot;xyo&quot;,
		&quot;っ&quot;=&gt;&quot;xtu&quot;, &quot;ゃ&quot;=&gt;&quot;xya&quot;, &quot;ゅ&quot;=&gt;&quot;xyu&quot;, &quot;ょ&quot;=&gt;&quot;xyo&quot;,
		&quot;ヴ&quot;=&gt;&quot;vu&quot;,&quot;ヵ&quot;=&gt;&quot;xka&quot;,&quot;ヶ&quot;=&gt;&quot;ga&quot;,&quot;ヮ&quot;=&gt;&quot;xwa&quot;,
		&quot;ゎ&quot;=&gt;&quot;xwa&quot;,
		&quot;ー&quot;=&gt;&quot;-&quot;, &quot;−&quot;=&gt;&quot;-&quot;, &quot;゛&quot;=&gt;&#039;&quot;&#039;, &quot;゜&quot;=&gt;&quot;&#039;&quot;}

  # 1 character romaji patterns
	Rom2KataH1={
		&quot;a&quot;=&gt;&quot;ア&quot;, &quot;i&quot;=&gt;&quot;イ&quot;, &quot;u&quot;=&gt;&quot;ウ&quot;, &quot;e&quot;=&gt;&quot;エ&quot;, &quot;o&quot;=&gt;&quot;オ&quot;, &quot;-&quot;=&gt;&quot;ー&quot;
	}

  # 2 character romaji patterns
	Rom2KataH2={
		&quot;xa&quot;=&gt;&quot;ァ&quot;, &quot;xi&quot;=&gt;&quot;ィ&quot;, &quot;xu&quot;=&gt;&quot;ゥ&quot;, &quot;xe&quot;=&gt;&quot;ェ&quot;, &quot;xo&quot;=&gt;&quot;ォ&quot;,
		&quot;ka&quot;=&gt;&quot;カ&quot;, &quot;ki&quot;=&gt;&quot;キ&quot;, &quot;ku&quot;=&gt;&quot;ク&quot;, &quot;ke&quot;=&gt;&quot;ケ&quot;, &quot;ko&quot;=&gt;&quot;コ&quot;,
		&quot;ca&quot;=&gt;&quot;カ&quot;, &quot;cu&quot;=&gt;&quot;ク&quot;, &quot;co&quot;=&gt;&quot;コ&quot;,
		&quot;ga&quot;=&gt;&quot;ガ&quot;, &quot;gi&quot;=&gt;&quot;ギ&quot;, &quot;gu&quot;=&gt;&quot;グ&quot;, &quot;ge&quot;=&gt;&quot;ゲ&quot;, &quot;go&quot;=&gt;&quot;ゴ&quot;,
		&quot;sa&quot;=&gt;&quot;サ&quot;, &quot;si&quot;=&gt;&quot;シ&quot;, &quot;su&quot;=&gt;&quot;ス&quot;, &quot;se&quot;=&gt;&quot;セ&quot;, &quot;so&quot;=&gt;&quot;ソ&quot;,
		&quot;za&quot;=&gt;&quot;ザ&quot;, &quot;zi&quot;=&gt;&quot;ジ&quot;, &quot;zu&quot;=&gt;&quot;ズ&quot;, &quot;ze&quot;=&gt;&quot;ゼ&quot;, &quot;zo&quot;=&gt;&quot;ゾ&quot;,
		&quot;ja&quot;=&gt;&quot;ジャ&quot;,&quot;ji&quot;=&gt;&quot;ジ&quot;, &quot;ju&quot;=&gt;&quot;ジュ&quot;,&quot;je&quot;=&gt;&quot;ジェ&quot;,&quot;jo&quot;=&gt;&quot;ジョ&quot;,
		&quot;ta&quot;=&gt;&quot;タ&quot;, &quot;ti&quot;=&gt;&quot;チ&quot;, &quot;tu&quot;=&gt;&quot;ツ&quot;, &quot;te&quot;=&gt;&quot;テ&quot;, &quot;to&quot;=&gt;&quot;ト&quot;,
		&quot;da&quot;=&gt;&quot;ダ&quot;, &quot;di&quot;=&gt;&quot;ヂ&quot;, &quot;du&quot;=&gt;&quot;ヅ&quot;, &quot;de&quot;=&gt;&quot;デ&quot;, &quot;do&quot;=&gt;&quot;ド&quot;,
		&quot;na&quot;=&gt;&quot;ナ&quot;, &quot;ni&quot;=&gt;&quot;ニ&quot;, &quot;nu&quot;=&gt;&quot;ヌ&quot;, &quot;ne&quot;=&gt;&quot;ネ&quot;, &quot;no&quot;=&gt;&quot;ノ&quot;,
		&quot;ha&quot;=&gt;&quot;ハ&quot;, &quot;hi&quot;=&gt;&quot;ヒ&quot;, &quot;hu&quot;=&gt;&quot;フ&quot;, &quot;he&quot;=&gt;&quot;ヘ&quot;, &quot;ho&quot;=&gt;&quot;ホ&quot;,
		&quot;ba&quot;=&gt;&quot;バ&quot;, &quot;bi&quot;=&gt;&quot;ビ&quot;, &quot;bu&quot;=&gt;&quot;ブ&quot;, &quot;be&quot;=&gt;&quot;ベ&quot;, &quot;bo&quot;=&gt;&quot;ボ&quot;,
		&quot;pa&quot;=&gt;&quot;パ&quot;, &quot;pi&quot;=&gt;&quot;ピ&quot;, &quot;pu&quot;=&gt;&quot;プ&quot;, &quot;pe&quot;=&gt;&quot;ペ&quot;, &quot;po&quot;=&gt;&quot;ポ&quot;,
		&quot;va&quot;=&gt;&quot;ヴァ&quot;,&quot;vi&quot;=&gt;&quot;ヴィ&quot;,&quot;vu&quot;=&gt;&quot;ヴ&quot;, &quot;ve&quot;=&gt;&quot;ヴェ&quot;,&quot;vo&quot;=&gt;&quot;ヴォ&quot;,
		&quot;fa&quot;=&gt;&quot;ファ&quot;,&quot;fi&quot;=&gt;&quot;フィ&quot;,&quot;fu&quot;=&gt;&quot;フ&quot;, &quot;fe&quot;=&gt;&quot;フェ&quot;,&quot;fo&quot;=&gt;&quot;フォ&quot;,
		&quot;ma&quot;=&gt;&quot;マ&quot;, &quot;mi&quot;=&gt;&quot;ミ&quot;, &quot;mu&quot;=&gt;&quot;ム&quot;, &quot;me&quot;=&gt;&quot;メ&quot;, &quot;mo&quot;=&gt;&quot;モ&quot;,
		&quot;ya&quot;=&gt;&quot;ヤ&quot;, &quot;yi&quot;=&gt;&quot;イ&quot;, &quot;yu&quot;=&gt;&quot;ユ&quot;, &quot;ye&quot;=&gt;&quot;イェ&quot;, &quot;yo&quot;=&gt;&quot;ヨ&quot;,
		&quot;ra&quot;=&gt;&quot;ラ&quot;, &quot;ri&quot;=&gt;&quot;リ&quot;, &quot;ru&quot;=&gt;&quot;ル&quot;, &quot;re&quot;=&gt;&quot;レ&quot;, &quot;ro&quot;=&gt;&quot;ロ&quot;,
		&quot;la&quot;=&gt;&quot;ラ&quot;, &quot;li&quot;=&gt;&quot;リ&quot;, &quot;lu&quot;=&gt;&quot;ル&quot;, &quot;le&quot;=&gt;&quot;レ&quot;, &quot;lo&quot;=&gt;&quot;ロ&quot;,
		&quot;wa&quot;=&gt;&quot;ワ&quot;, &quot;wi&quot;=&gt;&quot;ヰ&quot;, &quot;wu&quot;=&gt;&quot;ウ&quot;, &quot;we&quot;=&gt;&quot;ヱ&quot;, &quot;wo&quot;=&gt;&quot;ヲ&quot;,
		&quot;nn&quot;=&gt;&quot;ン&quot;
	}

  # 3 character romaji patterns
	Rom2KataH3={
	  &quot;tsu&quot;=&gt;&quot;ツ&quot;,
		&quot;xka&quot;=&gt;&quot;ヵ&quot;, &quot;xke&quot;=&gt;&quot;ヶ&quot;,
		&quot;xwa&quot;=&gt;&quot;ヮ&quot;, &quot;xtu&quot;=&gt;&quot;ッ&quot;,   &quot;xya&quot;=&gt;&quot;ャ&quot;,  &quot;xyu&quot;=&gt;&quot;ュ&quot;,  &quot;xyo&quot;=&gt;&quot;ョ&quot;,
		&quot;kya&quot;=&gt;&quot;キャ&quot;, &quot;kyi&quot;=&gt;&quot;キィ&quot;, &quot;kyu&quot;=&gt;&quot;キュ&quot;, &quot;kye&quot;=&gt;&quot;キェ&quot;, &quot;kyo&quot;=&gt;&quot;キョ&quot;,
		&quot;gya&quot;=&gt;&quot;ギャ&quot;, &quot;gyi&quot;=&gt;&quot;ギィ&quot;, &quot;gyu&quot;=&gt;&quot;ギュ&quot;, &quot;gye&quot;=&gt;&quot;ギェ&quot;, &quot;gyo&quot;=&gt;&quot;ギョ&quot;,
		&quot;sya&quot;=&gt;&quot;シャ&quot;, &quot;syi&quot;=&gt;&quot;シィ&quot;, &quot;syu&quot;=&gt;&quot;シュ&quot;, &quot;sye&quot;=&gt;&quot;シェ&quot;, &quot;syo&quot;=&gt;&quot;ショ&quot;,
		&quot;sha&quot;=&gt;&quot;シャ&quot;, &quot;shi&quot;=&gt;&quot;シ&quot;,  &quot;shu&quot;=&gt;&quot;シュ&quot;, &quot;she&quot;=&gt;&quot;シェ&quot;, &quot;sho&quot;=&gt;&quot;ショ&quot;,
		&quot;zya&quot;=&gt;&quot;ジャ&quot;, &quot;zyi&quot;=&gt;&quot;ジィ&quot;, &quot;zyu&quot;=&gt;&quot;ジュ&quot;, &quot;zye&quot;=&gt;&quot;ジェ&quot;, &quot;zyo&quot;=&gt;&quot;ジョ&quot;,
		&quot;jya&quot;=&gt;&quot;ジャ&quot;, &quot;jyi&quot;=&gt;&quot;ジィ&quot;, &quot;jyu&quot;=&gt;&quot;ジュ&quot;, &quot;jye&quot;=&gt;&quot;ジェ&quot;, &quot;jyo&quot;=&gt;&quot;ジョ&quot;,
		&quot;tya&quot;=&gt;&quot;チャ&quot;, &quot;tyi&quot;=&gt;&quot;チィ&quot;, &quot;tyu&quot;=&gt;&quot;チュ&quot;, &quot;tye&quot;=&gt;&quot;チェ&quot;, &quot;tyo&quot;=&gt;&quot;チョ&quot;,
		&quot;cya&quot;=&gt;&quot;チャ&quot;, &quot;cyi&quot;=&gt;&quot;チィ&quot;, &quot;cyu&quot;=&gt;&quot;チュ&quot;, &quot;cye&quot;=&gt;&quot;チェ&quot;, &quot;cyo&quot;=&gt;&quot;チョ&quot;,
		&quot;cha&quot;=&gt;&quot;チャ&quot;, &quot;chi&quot;=&gt;&quot;チ&quot;,  &quot;chu&quot;=&gt;&quot;チュ&quot;, &quot;che&quot;=&gt;&quot;チェ&quot;, &quot;cho&quot;=&gt;&quot;チョ&quot;,
		&quot;tha&quot;=&gt;&quot;テャ&quot;, &quot;thi&quot;=&gt;&quot;ティ&quot;, &quot;thu&quot;=&gt;&quot;テュ&quot;, &quot;the&quot;=&gt;&quot;テェ&quot;, &quot;tho&quot;=&gt;&quot;テョ&quot;,
		&quot;dya&quot;=&gt;&quot;ヂャ&quot;, &quot;dyi&quot;=&gt;&quot;ヂィ&quot;, &quot;dyu&quot;=&gt;&quot;ヂュ&quot;, &quot;dye&quot;=&gt;&quot;ヂェ&quot;, &quot;dyo&quot;=&gt;&quot;ヂョ&quot;,
		&quot;dha&quot;=&gt;&quot;デャ&quot;, &quot;dhi&quot;=&gt;&quot;ディ&quot;, &quot;dhu&quot;=&gt;&quot;デュ&quot;, &quot;dhe&quot;=&gt;&quot;デェ&quot;, &quot;dho&quot;=&gt;&quot;デョ&quot;,
		&quot;nya&quot;=&gt;&quot;ニャ&quot;, &quot;nyi&quot;=&gt;&quot;ニィ&quot;, &quot;nyu&quot;=&gt;&quot;ニュ&quot;, &quot;nye&quot;=&gt;&quot;ニェ&quot;, &quot;nyo&quot;=&gt;&quot;ニョ&quot;,
		&quot;hya&quot;=&gt;&quot;ヒャ&quot;, &quot;hyi&quot;=&gt;&quot;ヒィ&quot;, &quot;hyu&quot;=&gt;&quot;ヒュ&quot;, &quot;hye&quot;=&gt;&quot;ヒェ&quot;, &quot;hyo&quot;=&gt;&quot;ヒョ&quot;,
		&quot;bya&quot;=&gt;&quot;ビャ&quot;, &quot;byi&quot;=&gt;&quot;ビィ&quot;, &quot;byu&quot;=&gt;&quot;ビュ&quot;, &quot;bye&quot;=&gt;&quot;ビェ&quot;, &quot;byo&quot;=&gt;&quot;ビョ&quot;,
		&quot;pya&quot;=&gt;&quot;ピャ&quot;, &quot;pyi&quot;=&gt;&quot;ピィ&quot;, &quot;pyu&quot;=&gt;&quot;ピュ&quot;, &quot;pye&quot;=&gt;&quot;ピェ&quot;, &quot;pyo&quot;=&gt;&quot;ピョ&quot;,
		&quot;mya&quot;=&gt;&quot;ミャ&quot;, &quot;myi&quot;=&gt;&quot;ミィ&quot;, &quot;myu&quot;=&gt;&quot;ミュ&quot;, &quot;mye&quot;=&gt;&quot;ミェ&quot;, &quot;myo&quot;=&gt;&quot;ミョ&quot;,
		&quot;rya&quot;=&gt;&quot;リャ&quot;, &quot;ryi&quot;=&gt;&quot;リィ&quot;, &quot;ryu&quot;=&gt;&quot;リュ&quot;, &quot;rye&quot;=&gt;&quot;リェ&quot;, &quot;ryo&quot;=&gt;&quot;リョ&quot;,
		&quot;lya&quot;=&gt;&quot;リャ&quot;, &quot;lyi&quot;=&gt;&quot;リィ&quot;, &quot;lyu&quot;=&gt;&quot;リュ&quot;, &quot;lye&quot;=&gt;&quot;リェ&quot;, &quot;lyo&quot;=&gt;&quot;リョ&quot;
	}

	Kata2hiraH={
		&quot;ア&quot;=&gt;&quot;あ&quot;, &quot;イ&quot;=&gt;&quot;い&quot;, &quot;ウ&quot;=&gt;&quot;う&quot;, &quot;エ&quot;=&gt;&quot;え&quot;, &quot;オ&quot;=&gt;&quot;お&quot;,
		&quot;カ&quot;=&gt;&quot;か&quot;, &quot;キ&quot;=&gt;&quot;き&quot;, &quot;ク&quot;=&gt;&quot;く&quot;, &quot;ケ&quot;=&gt;&quot;け&quot;, &quot;コ&quot;=&gt;&quot;こ&quot;,
		&quot;ガ&quot;=&gt;&quot;が&quot;, &quot;ギ&quot;=&gt;&quot;ぎ&quot;, &quot;グ&quot;=&gt;&quot;ぐ&quot;, &quot;ゲ&quot;=&gt;&quot;げ&quot;, &quot;ゴ&quot;=&gt;&quot;ご&quot;,
		&quot;サ&quot;=&gt;&quot;さ&quot;, &quot;シ&quot;=&gt;&quot;し&quot;, &quot;ス&quot;=&gt;&quot;す&quot;, &quot;セ&quot;=&gt;&quot;せ&quot;, &quot;ソ&quot;=&gt;&quot;そ&quot;,
		&quot;ザ&quot;=&gt;&quot;ざ&quot;, &quot;ジ&quot;=&gt;&quot;じ&quot;, &quot;ズ&quot;=&gt;&quot;ず&quot;, &quot;ゼ&quot;=&gt;&quot;ぜ&quot;, &quot;ゾ&quot;=&gt;&quot;ぞ&quot;,
		&quot;タ&quot;=&gt;&quot;た&quot;, &quot;チ&quot;=&gt;&quot;ち&quot;, &quot;ツ&quot;=&gt;&quot;つ&quot;, &quot;テ&quot;=&gt;&quot;て&quot;, &quot;ト&quot;=&gt;&quot;と&quot;,
		&quot;ダ&quot;=&gt;&quot;だ&quot;, &quot;ヂ&quot;=&gt;&quot;ぢ&quot;, &quot;ヅ&quot;=&gt;&quot;づ&quot;, &quot;デ&quot;=&gt;&quot;で&quot;, &quot;ド&quot;=&gt;&quot;ど&quot;,
		&quot;ナ&quot;=&gt;&quot;な&quot;, &quot;ニ&quot;=&gt;&quot;に&quot;, &quot;ヌ&quot;=&gt;&quot;ぬ&quot;, &quot;ネ&quot;=&gt;&quot;ね&quot;, &quot;ノ&quot;=&gt;&quot;の&quot;,
		&quot;ハ&quot;=&gt;&quot;は&quot;, &quot;ヒ&quot;=&gt;&quot;ひ&quot;, &quot;フ&quot;=&gt;&quot;ふ&quot;, &quot;ヘ&quot;=&gt;&quot;へ&quot;, &quot;ホ&quot;=&gt;&quot;ほ&quot;,
		&quot;バ&quot;=&gt;&quot;ば&quot;, &quot;ビ&quot;=&gt;&quot;び&quot;, &quot;ブ&quot;=&gt;&quot;ぶ&quot;, &quot;ベ&quot;=&gt;&quot;べ&quot;, &quot;ボ&quot;=&gt;&quot;ぼ&quot;,
		&quot;パ&quot;=&gt;&quot;ぱ&quot;, &quot;ピ&quot;=&gt;&quot;ぴ&quot;, &quot;プ&quot;=&gt;&quot;ぷ&quot;, &quot;ペ&quot;=&gt;&quot;ぺ&quot;, &quot;ポ&quot;=&gt;&quot;ぽ&quot;,
		&quot;マ&quot;=&gt;&quot;ま&quot;, &quot;ミ&quot;=&gt;&quot;み&quot;, &quot;ム&quot;=&gt;&quot;む&quot;, &quot;メ&quot;=&gt;&quot;め&quot;, &quot;モ&quot;=&gt;&quot;も&quot;,
		&quot;ヤ&quot;=&gt;&quot;や&quot;, &quot;ユ&quot;=&gt;&quot;ゆ&quot;, &quot;ヨ&quot;=&gt;&quot;よ&quot;,
		&quot;ラ&quot;=&gt;&quot;ら&quot;, &quot;リ&quot;=&gt;&quot;り&quot;, &quot;ル&quot;=&gt;&quot;る&quot;, &quot;レ&quot;=&gt;&quot;れ&quot;, &quot;ロ&quot;=&gt;&quot;ろ&quot;,
		&quot;ワ&quot;=&gt;&quot;わ&quot;, &quot;ヰ&quot;=&gt;&quot;ゐ&quot;, &quot;ヱ&quot;=&gt;&quot;ゑ&quot;, &quot;ヲ&quot;=&gt;&quot;を&quot;, &quot;ン&quot;=&gt;&quot;ん&quot;,
		&quot;ァ&quot;=&gt;&quot;ぁ&quot;, &quot;ィ&quot;=&gt;&quot;ぃ&quot;, &quot;ゥ&quot;=&gt;&quot;ぅ&quot;, &quot;ェ&quot;=&gt;&quot;ぇ&quot;, &quot;ォ&quot;=&gt;&quot;ぉ&quot;,
		&quot;ッ&quot;=&gt;&quot;っ&quot;, &quot;ャ&quot;=&gt;&quot;ゃ&quot;, &quot;ュ&quot;=&gt;&quot;ゅ&quot;, &quot;ョ&quot;=&gt;&quot;ょ&quot;,
		&quot;ヴ&quot;=&gt;&quot;う゛&quot;, &quot;ヵ&quot;=&gt;&quot;か&quot;, &quot;ヶ&quot;=&gt;&quot;が&quot;, &quot;ヮ&quot;=&gt;&quot;ゎ&quot;
	}
	Hira2kataH={}; Kata2hiraH.each_pair{|k,v| Hira2kataH[v]=k}; Hira2kataH[&quot;か&quot;]=&quot;カ&quot;; Hira2kataH[&quot;が&quot;]=&quot;ガ&quot;

	def kana2rom(str)
    s=&quot;&quot;;str.each_char{|c|if(Kana2romH.key?(c))then s+=Kana2romH[c];else s+=c;end}
		s=s.gsub(/(k)([aiueo])(&quot;)/,&#039;g\2&#039;).gsub(/(s)([aiueo])(&quot;)/,&#039;z\2&#039;).gsub(/(t)([aiueo])(&quot;)/,&#039;d\2&#039;)
		s=s.gsub(/(h)([aiueo])(&quot;)/,&#039;b\2&#039;).gsub(/(h)([aiueo])(&#039;)/,&#039;p\2&#039;).gsub(/u&quot;/,&#039;vu&#039;) # [半]濁点゛゜
		sw=s;
		while nil!=sw.gsub!(/(xtu)([kgszjtdhbpmyrwv])/,&#039;\2\2&#039;) do; s=sw; end # ッカ--&gt;xtuka--&gt;kka
		# きゃきぃきゅきぇきょ
		s=s.gsub(/([kgszjtdnhbpmr])(ixy)([auo])/,&#039;\1y\3&#039;) #キャ--&gt;kixya--&gt;kya
		s=s.gsub(/([kgszjtdnhbpmr])(ix)([ie])/,&#039;\1y\3&#039;) #キィ--&gt;kixi--&gt;kyi
		# テャティテュテェテョ, デャディデュデェデョ
		s=s.gsub(/([td])(exy)([auo])/,&#039;\1h\3&#039;) #テャ texya--&gt;tha
		s=s.gsub(/([td])(ex)([ie])/,&#039;\1h\3&#039;) # ティ texi--&gt;thi
		# かー --&gt; ka- --&gt; kaa. オ− --&gt; oh/oo
		s=s.gsub(/(vux)([aieo])/ ,&#039;v\2&#039;)#ヴァヴィヴェヴォ, ヴァ--&gt;vuxa--&gt;va
		s=s.gsub(/(hux)([aieo])/ ,&#039;f\2&#039;)#ファフィフェフォ, ファ--&gt;huxa--&gt;fa
		s=s.gsub(/(nn)([kgszjtdhfbpmrwv])/,&#039;n\2&#039;).sub(/nn$/,&#039;n&#039;)# ン--&gt;nn--&gt;子音の前ではn
		return s
	end

	def rom2kata(str)
		result=&quot;&quot;; word_buffer=[]; chars=str.each_char.collect{|c| c}
		loop{
			case word_buffer.size
			##### When 0 characters in the buffer
			when 0 then
				if chars.size&gt;0 then word_buffer.push(chars.shift) else return result; end
			##### Patterns with 1 roman character
			when 1 then
				if word_buffer[0]=~/[aiueo-]/ then result+=Rom2KataH1[word_buffer[0]]; word_buffer=[] # a--&gt;ア
				elsif word_buffer[0]=~/[xkcgszjtdnhbpvfmyrlw]/ then
					if chars.size&gt;0 then word_buffer.push(chars.shift)
					else return result+(word_buffer[0].gsub(/n/,&quot;ン&quot;));
					end
				else result+=word_buffer.shift;
				end
			##### Patterns with 2 roman characters
			when 2 then
				if Rom2KataH2.key?(word_buffer.join) then result+=Rom2KataH2[word_buffer.join]; word_buffer=[];
				elsif word_buffer.join=~/([kgszjtcdnhbpmrl]y)|([stcd]h)|ts|(x[wytk])/ then # goto 3
					if chars.size&gt;0 then word_buffer.push(chars.shift) # Consume next letter from source array
					else return result+(word_buffer.join.gsub(/n/,&quot;ン&quot;));
					end
				elsif word_buffer[0]==&quot;n&quot; then result+=&quot;ン&quot;; word_buffer.shift # nk--&gt;ンk
				elsif word_buffer[0]==word_buffer[1] then result+=&quot;ッ&quot;; word_buffer.shift # kk--&gt;ッk
				else result+=word_buffer.shift;
				end
			##### Patterns with 3 roman characters
			when 3 then
				if Rom2KataH3.key?(word_buffer.join) then result+=Rom2KataH3[word_buffer.join]; word_buffer=[];
				elsif word_buffer[0]==&quot;n&quot; then result+=&quot;ン&quot;; word_buffer.shift;
				else result+=word_buffer.shift;
				end
			end
		}
	end

	def rom2hira(str)
		return kata2hira(rom2kata(str))
	end

	def kata2hira(str)
		s=&quot;&quot;; str.each_char{|c| s+=( Kata2hiraH.key?(c) ? Kata2hiraH[c] : c )}
		return s
	end

	def hira2kata(str)
		s=&quot;&quot;; str.each_char{|c|if(Hira2kataH.key?(c))then s+=Hira2kataH[c];else s+=c; end}
		return s
	end

  def kana2kana(str1)
    result = []
    str2 = Kana2rom::hira2kata(str1)
    str3 = Kana2rom::kata2hira(str1)
    result &lt;&lt; str1
    result &lt;&lt; str2 if str2.length &gt; 0 and str1 !=str2
    result &lt;&lt; str3 if str3.length &gt; 0 and str2 !=str3 and str3 != str1
    return result
  end

	module_function :kana2rom, :rom2kata, :kata2hira, :hira2kata, :rom2hira, :kana2kana
end

=begin
### Uncomment this section to test at command line
require &#039;jcode&#039;
if $0 == __FILE__ then
	# sample
  str=&quot;ひらがな/カタカナ&quot;
  printf(&quot;ローマ字: %s\n&quot;,  Kana2rom::kana2rom(str))
  printf(&quot;平仮名  : %s\n&quot;,  Kana2rom::kata2hira(str))
  printf(&quot;片仮名  : %s\n&quot;,  Kana2rom::hira2kata(str))
  str=&quot;ro-maji&quot;
  printf(&quot;片仮名  : %s\n&quot;,  Kana2rom::rom2kata(str))
  printf(&quot;平仮名  : %s\nk,  Kana2rom::rom2hira(str))
end
=end</pre>
]]></content:encoded>
			<wfw:commentRss>http://crunchytoast.com/2010/04/01/improved-romaji-convertor-in-ruby/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Should Amazon Fear the iPad?</title>
		<link>http://crunchytoast.com/2010/03/09/should-amazon-fear-the-ipad/</link>
		<comments>http://crunchytoast.com/2010/03/09/should-amazon-fear-the-ipad/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 14:41:57 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Amazon]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[iPad]]></category>

		<category><![CDATA[mobile]]></category>

		<guid isPermaLink="false">http://crunchytoast.com/?p=398</guid>
		<description><![CDATA[Technology commentators have noted that Amazon is trying to improve the Kindle browser experience. With the iPad only weeks away, I don&#8217;t blame them for trying to play catch up. However, I do wonder if this is really going to be a net win for end users?
Wired Magazine&#8217;s Michael Calore has described the Kindle&#8217;s browser [...]]]></description>
			<content:encoded><![CDATA[<p>Technology commentators have noted that Amazon is trying to <strong>improve the Kindle browser experience</strong>. With the iPad only weeks away, I don&#8217;t blame them for trying to play catch up. However, I do wonder if this is really going to be a net win for end users?</p>
<p>Wired Magazine&#8217;s <a href="http://www.webmonkey.com/author/snackfight/" target="_blank">Michael Calore</a> has described the Kindle&#8217;s browser experience as:</p>
<blockquote><p>&#8230; notably sub-par. It’s good enough to check your e-mail, post to Twitter or read Wikipedia, but it doesn’t handle images or more complex web apps particularly well.</p>
<p><em>Source: <a title="Permanent Link to Amazon Is Building a Better Browser for Kindle" rel="bookmark" href="http://www.webmonkey.com/2010/03/amazon-is-building-a-better-browser-for-kindle/">Amazon Is Building a Better Browser for Kindle</a></em></p></blockquote>
<p>I would disagree with the browser being described as <em><strong>&#8220;sub-par&#8221;</strong></em>. The Kindle browsing experience in fact is so far below par that &#8220;sub-par&#8221; is by contrast a compliment tantamount to the most obsequious flattery!<span id="more-398"></span></p>
<p>The Kindle browser should be kept behind glass and marked <em><strong>&#8220;emergency use only!&#8221;</strong></em> It should be thought of in the same vein as the emergency biscuits found on lifeboats. Not something you&#8217;d consume if you didn&#8217;t absolutely have to!</p>
<p>The Kindle is good for one thing, reading books bought from the largest seller of <span style="text-decoration: underline;"><strong>useful</strong></span> eBooks in the world. The 500,000 out of print books available through Sony hardly makes me want to buy their reader!</p>
<p>Unluckily for Amazon a better browser will not be enough to withstand the coming onslaught of tablets. However, as a Kindle owner <em><strong>I will continue to use it for as long as I have to</strong></em>. At least until I find a better way to get access to more good eBooks regardless of which country I live in.</p>
<p>Should Amazon beef up the browser and other features, it will still not make me want a Kindle Pro over an iPad. I will be buying the iPad for Net/Web use and applications. I believe a more expensive Kindle with a better browser and Kindle applications will be superior to Apple&#8217;s offering in one way only &#8230; more books! I don&#8217;t see Amazon being able to out-Apple Apple. Software is just not Amazon&#8217;s area of expertise, regardless of who they hire ( &#8230; hire me, just kidding )!</p>
<p>A faster, better, color ePaper Kindle is so far off that based on the current speed of the Kindle hardware, I&#8217;d more readily sign up to a <a href="http://en.wikipedia.org/wiki/ZX_Spectrum" target="_blank">ZX Spectrum</a> developer program!</p>
<p>Ladies and gentlemen, in the eReader market, <span style="text-decoration: underline;"><strong>content and not hardware is king!</strong></span></p>
]]></content:encoded>
			<wfw:commentRss>http://crunchytoast.com/2010/03/09/should-amazon-fear-the-ipad/feed/</wfw:commentRss>
		</item>
		<item>
		<title>84 Web Application Pricing Pages</title>
		<link>http://crunchytoast.com/2010/02/18/84-web-app-pricing-pages/</link>
		<comments>http://crunchytoast.com/2010/02/18/84-web-app-pricing-pages/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 05:02:57 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[development]]></category>

		<category><![CDATA[random]]></category>

		<category><![CDATA[weekend]]></category>

		<guid isPermaLink="false">http://crunchytoast.com/?p=377</guid>
		<description><![CDATA[Have you ever wanted to compare the pricing of many web based applications? Me too! Let me know if you ever write a blog post about it. All I have is a rather large list of pricing pages that I compiled for a project!
Payment Model Types
Annual Freemium - Can upgrade to a Pro Account for [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://crunchytoast.com/files/2010/02/burger-menu.jpg"><img class="alignright size-medium wp-image-391" style="border:1px solid black" title="burger-menu" src="http://crunchytoast.com/files/2010/02/burger-menu-282x300.jpg" alt="" width="221" height="235" /></a>Have you ever wanted to compare the pricing of many web based applications? <strong>Me too!</strong> Let me know if you ever write a blog post about it. All I have is <em>a rather large list of pricing pages</em> that I compiled for a project!</p>
<h3>Payment Model Types</h3>
<p><strong>Annual Freemium</strong> - Can upgrade to a Pro Account for one off annual payment<br />
<strong>Monthly Freemium</strong> - Can upgrade to a Paid Account per month<br />
<strong>Trialware</strong> - Can trial for 30 days, thereafter it is paid per month (usually from $9-12/mth for entry level)<br />
<strong>Corporates Pay</strong> - Only costs money for businesses</p>
<p><span id="more-377"></span></p>
<h3>Common Price Points</h3>
<p>* $5 /mth<br />
* $10 /mth<br />
* $20 /mth<br />
* $50 /year<br />
* $120 /year</p>
<h3>The List</h3>
<p>o <a href="http://www.getharvest.com/pricing" target="_blank">www.getharvest.com/pricing</a><br />
o <a href="http://basecamphq.com/signup" target="_blank">basecamphq.com/signup</a><br />
o <a href="http://highrisehq.com/signup" target="_blank">highrisehq.com/signup</a><br />
o <a href="http://backpackit.com/signup" target="_blank">backpackit.com/signup</a><br />
o <a href="http://campfirenow.com/signup" target="_blank">campfirenow.com/signup</a><br />
o <a href="http://litmusapp.com/pricing" target="_blank">litmusapp.com/pricing</a><br />
o <a href="http://www.dropsend.com/pricingsignup.php" target="_blank">www.dropsend.com/pricingsignup.php</a><br />
o <a href="http://www.cloudcontacts.com/order.php" target="_blank">www.cloudcontacts.com/order.php</a><br />
o <a href="http://www.bigcontacts.com/pricing-and-sign-up/" target="_blank">www.bigcontacts.com/pricing-and-sign-up/</a><br />
o <a href="http://www.salesforce.com/crm/editions-pricing.jsp" target="_blank">www.salesforce.com/crm/editions-pricing.jsp</a><br />
o <a href="https://application.blinksale.com/firms/new" target="_blank">application.blinksale.com/firms/new</a><br />
o <a href="http://www.flickr.com/upgrade/" target="_blank">www.flickr.com/upgrade/</a><br />
o <a href="http://www.tactilecrm.com/signup" target="_blank">www.tactilecrm.com/signup</a><br />
o <a href="https://start.shoeboxed.com/Register" target="_blank">start.shoeboxed.com/Register</a><br />
o <a href="https://signup.batchbook.com/account/choose" target="_blank">signup.batchbook.com/account/choose</a><br />
o <a href="http://www.zendesk.com/signup" target="_blank">www.zendesk.com/signup</a><br />
o <a href="http://www.xobni.com/learnmore/compare.php" target="_blank">www.xobni.com/learnmore/compare.php</a><br />
o <a href="http://www.centralinoapp.com/home/pricing/" target="_blank">www.centralinoapp.com/home/pricing/</a><br />
o <a href="http://www.rememberthemilk.com/upgrade/" target="_blank">www.rememberthemilk.com/upgrade/</a><br />
o <a href="https://www.dropbox.com/pricing" target="_blank">www.dropbox.com/pricing</a><br />
o <a href="https://www.yousendit.com/cms/compareaccounts" target="_blank">www.yousendit.com/cms/compareaccounts</a><br />
o <a href="http://www.carbonmade.com/signup" target="_blank">www.carbonmade.com/signup</a><br />
o <a href="http://wufoo.com/signup/" target="_blank">wufoo.com/signup/</a><br />
o <a href="http://curdbee.com/features/" target="_blank">curdbee.com/features/</a><br />
o <a href="https://www.yousendit.com/cms/compareaccounts" target="_blank">www.yousendit.com/cms/compareaccounts</a><br />
o <a href="https://secure.letsfreckle.com/signup" target="_blank">secure.letsfreckle.com/signup</a><br />
o <a href="http://www.evernote.com/about/premium/" target="_blank">www.evernote.com/about/premium/</a><br />
o <a href="http://www.wildapricot.com/pricing.aspx" target="_blank">www.wildapricot.com/pricing.aspx</a><br />
o <a href="https://www.box.net/signup" target="_blank">www.box.net/signup</a><br />
o <a href="http://www.apple.com/mobileme/pricing/" target="_blank">www.apple.com/mobileme/pricing/</a><br />
o <a href="http://www.zoho.com/pricing.html" target="_blank">www.zoho.com/pricing.html</a><br />
o <a href="http://animoto.com/pricing" target="_blank">animoto.com/pricing</a><br />
o <a href="http://www.shopify.com/signup" target="_blank">www.shopify.com/signup</a><br />
o <a href="http://rapidshare.com/premium.html" target="_blank">rapidshare.com/premium.html</a><br />
o <a href="http://www.cobblestonecn.com/signup/pricing/" target="_blank">www.cobblestonecn.com/signup/pricing/</a><br />
o <a href="http://www.polldaddy.com/signup/" target="_blank">www.polldaddy.com/signup/</a><br />
o <a href="http://www.linkpatch.com/accounts/pricing/" target="_blank">www.linkpatch.com/accounts/pricing/</a><br />
o <a href="http://www.5pmweb.com/plans.php" target="_blank">www.5pmweb.com/plans.php</a><br />
o <a href="https://www.getbackboard.com/users/pricing" target="_blank">www.getbackboard.com/users/pricing</a><br />
o <a href="http://www.sipgate.com/editions" target="_blank">www.sipgate.com/editions</a><br />
o <a href="http://conceptshare.com/signup.html" target="_blank">conceptshare.com/signup.html</a><br />
o <a href="http://fluxiom.com/pricing/" target="_blank">fluxiom.com/pricing/</a><br />
o <a href="http://www.goplanapp.com/home/plans" target="_blank">www.goplanapp.com/home/plans</a><br />
o <a href="http://getballpark.com/public/plans" target="_blank">getballpark.com/public/plans</a><br />
o <a href="http://www.mailchimp.com/pricing/" target="_blank">www.mailchimp.com/pricing/</a><br />
o <a href="http://www.typepad.com/pricing/" target="_blank">www.typepad.com/pricing/</a><br />
o <a href="http://www.squarespace.com/pricing/" target="_blank">www.squarespace.com/pricing/</a><br />
o <a href="http://preview.clickswitch.net/platino/pricing-signup.html" target="_blank">preview.clickswitch.net/platino/pricing-signup.html</a><br />
o <a href="https://www.proofhq.com/index.php/signup/index" target="_blank">www.proofhq.com/index.php/signup/index</a><br />
o <a href="http://www.formspring.com/pricing.html" target="_blank">www.formspring.com/pricing.html</a><br />
o <a href="http://invoicemachine.com/pricing" target="_blank">invoicemachine.com/pricing</a><br />
o <a href="http://www.theresumator.com/signup" target="_blank">www.theresumator.com/signup</a><br />
o <a href="http://www.icebrrg.com/signup/default.aspx" target="_blank">www.icebrrg.com/signup/default.aspx</a><br />
o <a href="http://getclicky.com/help/pricing" target="_blank">getclicky.com/help/pricing</a><br />
o <a href="http://blvdstatus.com/pricing.php" target="_blank">blvdstatus.com/pricing.php</a><br />
o <a href="http://www.goodbarry.com/free-trial" target="_blank">www.goodbarry.com/free-trial</a><br />
o <a href="http://agilezen.com/pricing" target="_blank">agilezen.com/pricing</a><br />
o <a href="http://www.sonarhq.com/signup" target="_blank">www.sonarhq.com/signup</a><br />
o <a href="http://github.com/plans" target="_blank">github.com/plans</a><br />
o <a href="http://www.getzcope.com/en/pricing-and-sign-up/" target="_blank">www.getzcope.com/en/pricing-and-sign-up/</a><br />
o <a href="http://www.activecollab.com/#pricing" target="_blank">www.activecollab.com/#pricing</a><br />
o <a href="http://www.myintervals.com/pricing.php" target="_blank">www.myintervals.com/pricing.php</a><br />
o <a href="http://www.mindmeister.com/home/editions" target="_blank">www.mindmeister.com/home/editions</a><br />
o <a href="http://bigcartel.com/signup" target="_blank">bigcartel.com/signup</a><br />
o <a href="http://tickspot.com/pricing/" target="_blank">tickspot.com/pricing/</a><br />
o <a href="http://pulseapp.com/signup" target="_blank">pulseapp.com/signup</a><br />
o <a href="http://beanstalkapp.com/pricing" target="_blank">beanstalkapp.com/pricing</a><br />
o <a href="http://uploading.com/premium/" target="_blank">uploading.com/premium/</a><br />
o <a href="https://crazyegg.com/pay/plans" target="_blank">crazyegg.com/pay/plans</a><br />
o <a href="http://www.planhq.com/signup" target="_blank">www.planhq.com/signup</a><br />
o <a href="http://www.speaklight.com/pricing" target="_blank">www.speaklight.com/pricing</a><br />
o <a href="http://www.actionthis.com/HowToBuy" target="_blank">www.actionthis.com/HowToBuy</a><br />
o <a href="http://unfuddle.com/accounts/plans" target="_blank">unfuddle.com/accounts/plans</a><br />
o <a href="https://lessaccounting.com/pricing" target="_blank">lessaccounting.com/pricing</a><br />
o <a href="http://www.strutta.com/pricing" target="_blank">www.strutta.com/pricing</a><br />
o <a href="http://www.easy-share.com/en/billing" target="_blank">www.easy-share.com/en/billing</a><br />
o <a href="http://onehub.com/pricing" target="_blank">onehub.com/pricing</a><br />
o <a href="http://getsatisfaction.com/plans" target="_blank">getsatisfaction.com/plans</a><br />
o <a href="http://www.ewedding.com/packages.php" target="_blank">www.ewedding.com/packages.php</a><br />
o <a href="http://www.bigfilebox.com/order" target="_blank">www.bigfilebox.com/order</a><br />
o <a href="http://hitask.com/business" target="_blank">hitask.com/business</a><br />
o <a href="http://onehub.com/pricing" target="_blank">onehub.com/pricing</a><br />
o <a href="http://www.notableapp.com/plans" target="_blank">www.notableapp.com/plans</a><br />
o <a href="http://www.copperproject.com/buy/" target="_blank">www.copperproject.com/buy/</a></p>
<p>Hopefully this will help you in your entrepreneurial endeavors.</p>
]]></content:encoded>
			<wfw:commentRss>http://crunchytoast.com/2010/02/18/84-web-app-pricing-pages/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Just In Case Computing - iPad vs HackBooks</title>
		<link>http://crunchytoast.com/2010/01/28/just-in-case-computing-ipad-vs-hackbooks/</link>
		<comments>http://crunchytoast.com/2010/01/28/just-in-case-computing-ipad-vs-hackbooks/#comments</comments>
		<pubDate>Thu, 28 Jan 2010 02:04:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[iPad]]></category>

		<category><![CDATA[mobile]]></category>

		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[netbooks]]></category>

		<guid isPermaLink="false">http://crunchytoast.com/?p=339</guid>
		<description><![CDATA[
Everyone is talking about the iPad. I reckon all we&#8217;re going to hear for a while will be &#8220;iPad iPad iPad!&#8221;
Having read countless comments about the new iPad having &#8220;no SD card slot&#8221; and it being made only for fanbois, I found myself considering the question:
 Is the iPad better than a Netbook? 
Many early [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://crunchytoast.com/files/2010/01/just-in-case-computing.png"><img class="alignright size-medium wp-image-343" title="just-in-case-computing" src="http://crunchytoast.com/files/2010/01/just-in-case-computing-300x300.png" alt="" width="300" height="300" /></a></p>
<h3 style="margin-bottom:20px">Everyone is talking about the <a href="http://www.apple.com/ipad" target="_blank">iPad</a>. I reckon all we&#8217;re going to hear for a while will be <em>&#8220;iPad iPad iPad!&#8221;</em></h3>
<p>Having read countless comments about the new iPad having <a href="http://www.crunchgear.com/2010/01/27/apple-has-a-solution-for-the-ipads-missing-sd-card-slot-and-usb-port-adapters/#comment-1199760" target="_blank"><em>&#8220;no SD card slot&#8221;</em></a> and it being made only for <strong><a href="http://www.urbandictionary.com/define.php?term=fanboi" target="_blank">fanbois</a></strong>, I found myself considering the question:</p>
<h3 style="margin-bottom:20px"><span style="color: #993300;"><em> <span>Is the iPad better than a Netbook? </span></em></span></h3>
<p>Many early commenters expressed hopes for a Mac Netbook instead of an over-sized iPod Touch (with no camera and limited storage). So the first thing I did was look for some articles on <strong>Netbook Hackintoshes.</strong></p>
<p><span id="more-339"></span>I found three significant posts relating to running OS X on a Netbook (most commonly on the Dell Mini).<br />
<a href="http://www.macsparky.com/blog/2009/4/26/the-netbook-experiment.htmlhttp://" target="_blank"></a></p>
<ul>
<li><a href="http://www.macsparky.com/blog/2009/4/26/the-netbook-experiment.htmlhttp://" target="_blank">MacSparky - The Netbook Experiment</a></li>
<li><a rel="bookmark" href="http://www.tuaw.com/2009/04/27/road-tested-why-the-hackb00k-is-a-fail/" target="_blank"><span id="ppt1528592">TUAW - Road Tested: Why the hackb00k is a fail</span></a></li>
<li><a rel="bookmark" href="http://www.tuaw.com/2009/04/27/road-tested-why-the-hackb00k-is-a-fail/" target="_blank">OS X 10.6.2 on a DELL mini10v Inspiron 1011 (How To Instructions)</a></li>
</ul>
<p>What I noticed almost immediately was that no one really blogged about how slow OS X was, or how badly an adult sized OS fits onto a baby sized laptop!</p>
<p>Instead, everyone griped about the form factor of the keyboard, the lack of storage space on SSD drives and the lack of durability of the Netbook&#8217;s construction. <strong>What they complain about is the <span style="text-decoration: underline;">hardware</span>.<br />
</strong></p>
<p>To quote MacSparky <em><strong>&#8220;the Netbook phenomena is all about compromises.&#8221;</strong></em> The words <em><strong>&#8220;</strong><strong>disposable computing&#8221;</strong></em> seem very appropriate.</p>
<p>Having used an <em>ASUS Eee</em> for over a year in and around Tokyo, via a broadband eMobile dongle, I found Netbooks to be superior to &#8220;no computer whatsoever&#8221;. However, they truly don&#8217;t stack up against a real notebook. Believe me, I&#8217;ve even programmed in Ruby on Rails whilst standing on a crowded subway train, typing with both thumbs!!</p>
<p>Despite a Netbook&#8217;s limitations, they have great price to feature balance for <strong>&#8220;Just-In-Case Computing&#8221;.</strong></p>
<h3>iPad Pricing</h3>
<p>Pricing is interesting too. Just cheap enough to compete with Netbooks, yet still a little exclusivist. Today&#8217;s parents are well trained in buying Apple merchandise for their net savvy offspring. So iPads will definitely be high on the Xmas/Channukah/Ramadan/Deepavali lists for 2010.</p>
<p>As for teenagers and students buying their own iPads, that may have to wait until mobile providers or ISPs start offering low barrier, bundled subscriptions. It will happen. In Tokyo many ISPs with paid WiFi networks have been bundling free Netbooks with cheap WiFi subscriptions since 2008. Broadband wireless subscriptions are cheap there too, alas Tokyo is blessed!</p>
<p>Today&#8217;s young are the <em>disposable income spenders</em> of the near-future, and will be pushing for cheaper non-3G connectivity, which may see more demand for WiFi access points. That&#8217;s right folks, you heard it hear first: <em>iPads will drive growth of cheaper 3G alternatives.</em></p>
<h3>A Way Premature iPad Verdict</h3>
<p>As for the new <strong>aPple iPad</strong> itself, I think that extra power beyond an iPhone will be welcomed by many. Whilst the iPad solves the <em>Internet Connectivity Problem</em> for those not satisfied by an iPhone, the closed nature of the platform means that unlike a Netbook, you cannot just copy your existing software and go mobile.</p>
<p>Once enough good <em>iPad Native Applications</em> are released, those made to take advantage of the iPad&#8217;s extra screen real estate and processing power, we will find more and more people suddenly need something to solve their <em><strong>just-in-case computing problems</strong></em>.</p>
]]></content:encoded>
			<wfw:commentRss>http://crunchytoast.com/2010/01/28/just-in-case-computing-ipad-vs-hackbooks/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Japanese Regex Alzheimers - Why Can&#8217;t I Remember?</title>
		<link>http://crunchytoast.com/2009/12/12/japanese-regex-alzheimers-and-why-cant-i-remember/</link>
		<comments>http://crunchytoast.com/2009/12/12/japanese-regex-alzheimers-and-why-cant-i-remember/#comments</comments>
		<pubDate>Fri, 11 Dec 2009 23:37:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://crunchytoast.com/?p=314</guid>
		<description><![CDATA[You remind me of someone! If you&#8217;re reading this, then like me you must forget regex expressions frequently. Despite the chunky snippets found within the Net&#8217;s regex libraries, I can never find the Japanese related ones I want. Of course if you search for 規制表現 you are more likely to find them! Surprise, surprise, Japanese [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-320" style="padding:20px" title="dmc-krauser" src="http://crunchytoast.com/files/2009/12/dmc-krauser.jpg" alt="" width="275" height="360" align="right" /><strong style="font-size:16px;">You remind me of someone!</strong> If you&#8217;re reading this, then like me you must forget regex expressions frequently. Despite the chunky snippets found within the Net&#8217;s regex libraries, I can never find the Japanese related ones I want. Of course if you search for 規制表現 you are more likely to find them! Surprise, surprise, Japanese speaking coders write about them more than English speakers <img src='http://crunchytoast.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p>So here is a small compilation of essential <em>kisei-hyogen</em> (regexes in Japanese) that you will need if you do any Japanese text or data processing.</p>
<p>These should all be PERL compatible, and assume UTF8 encoding. If you are using a different encoding and get errors, try converting using ICONV or a platform specific function.</p>
<p>Without further ado, let the download begin:</p>
<p><span id="more-314"></span><strong>Regex for matching ALL Japanese common &amp; uncommon Kanji (4e00 - 9fcf) ~ <em>The Big Kahuna!</em></strong><br />
<code>([一-龯])</code></p>
<p><strong>Regex for matching Hirgana or Katakana</strong><br />
<code>([ぁ-んァ-ン])</code></p>
<p><strong>Regex for matching Non-Hirgana or Non-Katakana</strong><br />
<code>([^ぁ-んァ-ン])</code></p>
<p><strong>Regex for matching Hirgana or Katakana or basic punctuation (、。’)</strong><br />
<code>([ぁ-んァ-ン\w])</code></p>
<p><strong>Regex for matching Hirgana or Katakana and random other characters</strong><br />
<code>([ぁ-んァ-ン！：／])</code></p>
<p><strong>Regex for matching Hirgana</strong><br />
<code>([ぁ-ん])</code></p>
<p><strong>Regex for matching full-width Katakana (zenkaku 全角)</strong><br />
<code>([ァ-ン])</code></p>
<p><strong>Regex for matching half-width Katakana  (hankaku 半角)</strong><br />
<code>([ｧ-ﾝﾞﾟ])</code></p>
<p><strong>Regex for matching full-width Numbers (zenkaku 全角)</strong><br />
<code>([０-９])</code></p>
<p><strong>Regex for matching full-width Letters (zenkaku 全角)</strong><br />
<code>([Ａ-ｚ])</code></p>
<p><strong>Regex for matching Hiragana codespace characters (includes non phonetic characters)</strong><br />
<code>([ぁ-ゞ])</code></p>
<p><strong>Regex for matching full-width (zenkaku) Katakana codespace characters (includes non phonetic characters)</strong><br />
<code>([ァ-ヶ])</code></p>
<p><strong>Regex for matching half-width (hankaku) Katakana codespace characters (this is an old character set so the order is inconsistent with the hiragana)</strong><br />
<code>([ｦ-ﾟ])</code></p>
<p><strong>Regex for matching Japanese Post Codes</strong><br />
<code>/^¥d{3}¥-¥d{4}$/<br />
/^¥d{3}-¥d{4}$|^¥d{3}-¥d{2}$|^¥d{3}$/</code></p>
<p><strong>Regex for matching Japanese mobile phone numbers (keitai bangou)</strong><br />
<code>/^¥d{3}-¥d{4}-¥d{4}$|^¥d{11}$/<br />
/^0¥d0-¥d{4}-¥d{4}$/</code></p>
<p><strong>Regex for matching Japanese fixed line phone numbers</strong><br />
<code>/^[0-9-]{6,9}$|^[0-9-]{12}$/<br />
/^¥d{1,4}-¥d{4}$|^¥d{2,5}-¥d{1,4}-¥d{4}$/</code></p>
<p>Also with thanks and kudos to:<br />
- <a href="http://befine.jugem.jp/?eid=29" target="_blank">Shirouto Tokidoki Kurouto </a><br />
- <a href="http://webtips.open-log.net/index.php?PHP%2FPHP入門%2F正規表現%2F文字クラス" target="_blank">Webtips</a><br />
- Krauser-sama, Detroit Metal City <img src='http://crunchytoast.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<hr />These have all been tested with Ruby using <a href="http://www.rubular.com" target="_blank">www.rubular.com</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://crunchytoast.com/2009/12/12/japanese-regex-alzheimers-and-why-cant-i-remember/feed/</wfw:commentRss>
		</item>
		<item>
		<title>jQuery vs Internet Exploder - Beware ID Clashes!</title>
		<link>http://crunchytoast.com/2009/11/10/jquery-vs-internet-exploder-beware-id-clashes/</link>
		<comments>http://crunchytoast.com/2009/11/10/jquery-vs-internet-exploder-beware-id-clashes/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 05:18:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[development]]></category>

		<category><![CDATA[iPhone]]></category>

		<category><![CDATA[ie]]></category>

		<category><![CDATA[internetexploder]]></category>

		<category><![CDATA[jquery]]></category>

		<guid isPermaLink="false">http://crunchytoast.com/?p=294</guid>
		<description><![CDATA[
This is only a quickie, but important enough to spread the word (oh, btw IE blows!)
In all versions of Internet Explroer (IE 5,6,7,8 apparently), the browser silently creates an immutable global variable for every element ID. This can lead to naming clashes when using jquery.
For example, I had the following code:
startDate = $('#startDate');
Here the DOM [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://crunchytoast.com/files/2009/11/waaah-300x300.jpg" alt="" title="waaah" width="300" height="300" class="alignright size-medium wp-image-295" /></p>
<p>This is only a quickie, but important enough to spread the word (oh, btw IE blows!)</p>
<p>In all versions of Internet Explroer (IE 5,6,7,8 apparently), the browser silently creates an immutable global variable for every element ID. This can lead to naming clashes when using jquery.</p>
<p>For example, I had the following code:<br />
<code>startDate = $('#startDate');</code></p>
<p>Here the DOM element ID is <strong>startDate</strong>. However, whenever I tried to access the jQuery functions such as <strong>startDate.attr()</strong> or <strong>startDate.val()</strong>, i received this terse Internet Explorer error:</p>
<blockquote><p>&#8220;Object doesn’t support this property or method&#8221;</p></blockquote>
<p>Simply by renaming your <strong>local variable</strong> to something else, such as <strong>myStartDate</strong>, you can avoid this problem! <em>Peace at last.</em></p>
<p>Kudos shout out to Rick Strahl whose <a href="http://www.west-wind.com/weblog/posts/677442.aspx" target="_blank">March 2009 post</a> is the only resource I found confirming this!</p>
]]></content:encoded>
			<wfw:commentRss>http://crunchytoast.com/2009/11/10/jquery-vs-internet-exploder-beware-id-clashes/feed/</wfw:commentRss>
		</item>
		<item>
		<title>It&#8217;s Official, Google Thinks I&#8217;m a Geek!</title>
		<link>http://crunchytoast.com/2009/10/14/officially-a-geek/</link>
		<comments>http://crunchytoast.com/2009/10/14/officially-a-geek/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 07:48:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[random]]></category>

		<category><![CDATA[geek]]></category>

		<category><![CDATA[google]]></category>

		<category><![CDATA[googlewave]]></category>

		<guid isPermaLink="false">http://crunchytoast.com/?p=288</guid>
		<description><![CDATA[Aside from the obvious indications of geekiness (a blog about programming &#38; human language), Google has found me geek-worthy enough to join the Google Wave preview!

The invitation arrived in my Gmail 10 minutes ago. I was so excited that I decided to blog about it before doing anything more than logging in. Since I&#8217;m about [...]]]></description>
			<content:encoded><![CDATA[<p>Aside from the obvious indications of geekiness (a blog about programming &amp; human language), Google has found me <em><strong>geek-worthy</strong></em> enough to join the Google Wave preview!<span id="more-288"></span></p>
<p><a href="http://crunchytoast.com/files/2009/10/google-wave-invite.png"><img class="alignnone size-full wp-image-289" title="google-wave-invite" src="http://crunchytoast.com/files/2009/10/google-wave-invite.png" alt="" width="500" height="432" /></a></p>
<p>The invitation arrived in my Gmail 10 minutes ago. I was so excited that I decided to blog about it before doing anything more than logging in. Since I&#8217;m about to go overseas for 2 weeks, it should be a good test of the Google Wave system.</p>
<p>It would seem my <em>geek-star</em> has definitely ascended since the heady-meady early days of Gmail&#8217;s launch (mid 2004). Admittedly, I got onto Gmail within first 3 months of launch. Alas, I had to finagle an invite from a co-worker to get on. Being directly invited by the <em>Google-Powers-That-Be</em> was definitely a step up.</p>
<p>Here&#8217;s hoping Google Wave lives up to the hype!</p>
]]></content:encoded>
			<wfw:commentRss>http://crunchytoast.com/2009/10/14/officially-a-geek/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Launching jQuery Colorbox Without a Click</title>
		<link>http://crunchytoast.com/2009/10/07/launching-jquery-colorbox-directly/</link>
		<comments>http://crunchytoast.com/2009/10/07/launching-jquery-colorbox-directly/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 23:04:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[development]]></category>

		<category><![CDATA[i-heart-jquery]]></category>

		<category><![CDATA[javascript]]></category>

		<category><![CDATA[jquery]]></category>

		<guid isPermaLink="false">http://crunchytoast.com/?p=262</guid>
		<description><![CDATA[Hilbert&#8217;s Pallette, by Anton SherwoodAwesome colorful boxes!
If you&#8217;ve been using the Colorbox Plugin for jQuery, you may have noticed that it rocks! Compared to the bevvy of other JavaScript modal dialogs, this one animates smoothly, loads quickly, is lightweight and well suited to jQuery projects.
However, the standard way to call it is from a click [...]]]></description>
			<content:encoded><![CDATA[<div style="padding:15px;float:right"><img src="http://www.ogre.nu/doodle/hilbert.png" width="150" height="150" border="0" style="padding:5px;text-align:center;"/><small>Hilbert&#8217;s Pallette, by <a href="http://ogre.nu/doodle/" target="_blank">Anton Sherwood</a><br/>Awesome colorful boxes!</small></div>
<p>If you&#8217;ve been using the <a href="http://colorpowered.com/colorbox/" target="_blank">Colorbox Plugin for jQuery</a>, you may have noticed that it rocks! Compared to the bevvy of other JavaScript modal dialogs, this one animates smoothly, loads quickly, is lightweight and well suited to jQuery projects.</p>
<p>However, the standard way to call it is from a click event. In fact, I couldn&#8217;t find any resources documenting how to launch a Colorbox programatically. The examples from the Colorbox website were strictly &#8220;on click&#8221; oriented. After digging through the source code, I tried a few things and hey presto, the answer was simpler than expected. For calling Colorbox from a function (i.e. without an click directly preceding it),  you should do this&#8230;</p>
<pre class="brush: javascript">//Launching jQuery Colorbox without a click
$.fn.colorbox({href:&#039;/href.html&#039;, open: true, iframe: true, width:300, height:400});
</pre>
<p>This will open the colorbox immediately upon execution, this example opens in an iframe with width/height as shown. Note, the only options required to make it work are <strong>href</strong> and <strong>open:true</strong>. See the documentation for all other options.</p>
<blockquote><p>For those of you wanting to write your own plugin, the Colorbox internals are a study in good jQuery plugin design. It features some nice techniques, including code optimizations that increase compression, and aliasing of otherwise long function names.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://crunchytoast.com/2009/10/07/launching-jquery-colorbox-directly/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Spread &#8216;Em! (The BJT Results 2009)</title>
		<link>http://crunchytoast.com/2009/09/06/spread-em-the-bjt-results-2009/</link>
		<comments>http://crunchytoast.com/2009/09/06/spread-em-the-bjt-results-2009/#comments</comments>
		<pubDate>Sun, 06 Sep 2009 05:46:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[japan]]></category>

		<category><![CDATA[bjt]]></category>

		<category><![CDATA[japanese]]></category>

		<category><![CDATA[jlpt]]></category>

		<guid isPermaLink="false">http://crunchytoast.com/?p=242</guid>
		<description><![CDATA[The Business Japanese Test held in 2009 recently delivered their results to my door. Without any further ado, I am happy to announce I got a high J2 (well above the test average). I was a little disappointed about not being in the lofty J1 or J1+ leagues, despite having JLPT 1 bragging rights! However [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://crunchytoast.com/files/2009/09/miami_vice_blues_glass.jpg"><img class="size-medium wp-image-244 alignright" style="padding-left:25px" title="miami_vice_blues_glass" src="http://crunchytoast.com/files/2009/09/miami_vice_blues_glass.jpg" alt="" width="228" height="273" /></a>The <strong>Business Japanese Test</strong> held in 2009 recently delivered their results to my door. Without any further ado, I am happy to announce I got a high J2 (well above the test average). I was a little disappointed about not being in the lofty J1 or J1+ leagues, despite having JLPT 1 bragging rights! However I was close enough to J1 to make me want to try again.</p>
<h3>Result Spread</h3>
<p>Here is an overview of the BJT ranks and the number of people who attained each rank, out of the 2,788 people who sat the test in 2009.</p>
<table style="border: 1px solid gainsboro; margin-bottom: 18px; height: 126px;" border="0" width="263">
<tbody>
<tr>
<td style="background-color:#c0c0c0"><strong>Rank</strong></td>
<td style="background-color:#c0c0c0"><strong># People</strong></td>
</tr>
<tr>
<td>J1+ (600-800)</td>
<td>198</td>
</tr>
<tr>
<td>J1 (530-599)</td>
<td>509</td>
</tr>
<tr>
<td>J2 (420-529)</td>
<td>1,402</td>
</tr>
<tr>
<td>J3 (320-420)</td>
<td>515</td>
</tr>
<tr>
<td>J4 (200-419)</td>
<td>134</td>
</tr>
<tr>
<td>J5 (0-199)</td>
<td>10</td>
</tr>
<tr>
<td><strong> TOTAL</strong></td>
<td><strong> 2,788</strong></td>
</tr>
</tbody>
</table>
<h3><span id="more-242"></span>Average Scores: Location Matters!</h3>
<p>The average score overall was 473.5 points (out of 800). However these results varied based on location. The average for examinees who sat the test in <strong>Tokyo</strong> was 501.6 points, whilst examinees sitting in <strong>Beijing</strong> averaged 473.9 and test takers in <strong>India</strong> managed an average of about 428 points.</p>
<p>Overall, people sitting the test in <strong>Japan</strong> having a clear advantage achieved an average of 498.5, whilst those sitting the test <strong>overseas</strong> only managed an average of 449.8.</p>
<h3>My Results: If Only I&#8217;d Studied!</h3>
<p>Actually, I prepared for about 2 days intensively, with about 1 month of passive study. Since the subject matter is very broad, I focused on making the most of the test format. For the <strong>listening section</strong> my time saving strategy really paid off. I was in the second highest percentile for listening.</p>
<p>In the <strong>listening and reading</strong> section I was a little worse off, being only one percentile above the average. For the <strong>reading section</strong>, the last section of the test and the hardest, I only ranked in the average percentile. The time pressure of the reading section along with the overall high difficulty meant my answers weren&#8217;t correct enough (<em>thank you Captain Obvious!</em>)</p>
<p>Luckily though, I did make it onto the downward slope of the bell curve overall, being better than average. I will take the test again in future, and despite cries of fluency from Japanese people I meet, I admit there is a whole lot more for me to master before I can lay claim to having J1 or J1+.</p>
<p><em>That&#8217;s all for now. BJT - I&#8217;ll be seeing you again soon!<br />
</em></p>
]]></content:encoded>
			<wfw:commentRss>http://crunchytoast.com/2009/09/06/spread-em-the-bjt-results-2009/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Back in Black</title>
		<link>http://crunchytoast.com/2009/08/25/back-in-black/</link>
		<comments>http://crunchytoast.com/2009/08/25/back-in-black/#comments</comments>
		<pubDate>Tue, 25 Aug 2009 08:01:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[random]]></category>

		<category><![CDATA[general]]></category>

		<guid isPermaLink="false">http://crunchytoast.com/?p=237</guid>
		<description><![CDATA[
Because of the locals&#8217; penchant for wearing dark colors in winter, they call Melbourne the Black City.
The weather occasioning this first post since my return home is more than appropriate. Today, Police recommended people in Melbourne&#8217;s central business district leave work early to avoid &#8220;torrential rain&#8221; and &#8220;destructive winds&#8221;. Yikes!!!
Looking over my posts this year, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://crunchytoast.com/files/2009/08/back-in-black-pie-chart.gif"><img class="size-medium wp-image-238 alignright" style="border:1px solid black" title="back-in-black-pie-chart" src="http://crunchytoast.com/files/2009/08/back-in-black-pie-chart-300x300.gif" alt="" width="300" height="300" /></a></p>
<h3 style="margin-bottom:18px;">Because of the locals&#8217; penchant for wearing dark colors in winter, they call <a href="http://maps.google.com.au/maps?q=melbourne&amp;oe=utf-8&amp;client=firefox-a&amp;ie=UTF8&amp;split=0&amp;gl=au&amp;ei=IZiTSofPKsz_kAX28ci7Cg&amp;z=13&amp;iwloc=A" target="_blank">Melbourne</a> the <em><strong>B</strong><strong>lack City</strong></em>.</h3>
<p>The weather occasioning this first post since my return home is <span style="text-decoration: underline;">more than appropriate</span>. Today, Police recommended people in Melbourne&#8217;s central business district leave work early to avoid &#8220;torrential rain&#8221; and &#8220;destructive winds&#8221;. Yikes!!!</p>
<p>Looking over my posts this year, I am mostly happy with the coverage of my various obsessions; mostly. I still owe you a few iPhone Tutorials. These were promised in July 09, but moving countries got in the way. Apologies to you iPhone fans.</p>
<p>With regular, ADSL2 speeds connecting me to the Internet, I feel I can be productive again. Only time will tell, but check back soon, it should be fun.</p>
]]></content:encoded>
			<wfw:commentRss>http://crunchytoast.com/2009/08/25/back-in-black/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
