<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6233787394794376169</id><updated>2012-01-31T08:43:25.732+09:00</updated><category term='ruby'/><category term='simulation'/><category term='couchdb'/><category term='math'/><category term='idea'/><category term='OAuth'/><category term='3d Papervision3D'/><category term='ajax'/><category term='eLearning'/><category term='dream'/><category term='english class'/><category term='cats'/><category term='merb'/><category term='S3'/><category term='oracle'/><category term='ruby 3d'/><category term='sprout'/><category term='job'/><category term='nginx'/><category term='rails'/><category term='mac'/><category term='web2'/><category term='Cappuccino'/><category term='open_id_authentication'/><category term='heroku'/><category term='openid2'/><category term='friends'/><title type='text'>on the edge of Complexity</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>81</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-2475293788765321618</id><published>2011-06-28T05:32:00.003+09:00</published><updated>2011-06-28T05:41:39.889+09:00</updated><title type='text'>Coffescript iteration caveat</title><content type='html'>&lt;div&gt;In Cofffeescript, there are 2 built-in sytanxes for interation. for .. of .. / for .. in .. (by ..)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In Pragmatic Coffeescript book, the author says,&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;" Why have a seperate syntax? Why not just use for key, value of array?&lt;span class="Apple-style-span" style="font-size: 15.8333px; "&gt;Because there're nothing stopping an array from having extra methods or &lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: 15.8333px; "&gt;data. If you want the whole shebang, then sure, use of. &lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: 15.8333px; "&gt;But if you just want to treat the array as an array, use in -- you will only&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: 15.8333px; "&gt;get array[0], array[1], etc., up to array[array.length-1], in that order"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;script src="https://gist.github.com/1049769.js?file=gistfile1.txt"&gt;&lt;/script&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-2475293788765321618?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/2475293788765321618'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/2475293788765321618'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2011/06/coffescript-iteration-caveat.html' title='Coffescript iteration caveat'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-6349580726716259129</id><published>2011-01-11T08:57:00.007+09:00</published><updated>2011-01-11T09:33:40.006+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OAuth'/><title type='text'>how to get OAuth Consumer Key / Secret for Google OAuth</title><content type='html'>I spent a hour to understand how to generate OAuth comsumer key for Google OAuth.&lt;br /&gt;Here is the easiest way to do it.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;step 0&gt; visit &lt;a href="https://www.google.com/accounts/ManageDomains"&gt;Manage Domains Tool&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;step 1&gt; Insert meta tag in your html and upload it server that is running.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HbRZwpPnFNs/TSueaamSGPI/AAAAAAAAAZc/C02l_708N0o/s1600/Webmaster%2BCentral%2B-%2BVerify%2Bownership.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 222px;" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/TSueaamSGPI/AAAAAAAAAZc/C02l_708N0o/s400/Webmaster%2BCentral%2B-%2BVerify%2Bownership.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5560712341572688114" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;step 2&gt; after uploading the page, click verify. And then you'll see a page like this in you google master.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HbRZwpPnFNs/TSuez_laYuI/AAAAAAAAAZk/P31yq1BP86M/s1600/2.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 129px;" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/TSuez_laYuI/AAAAAAAAAZk/P31yq1BP86M/s400/2.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5560712780997878498" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;step 3&gt; Generating keys using OpenSSL. I assume you're using OS X. Do this in your terminal&lt;br /&gt;&lt;br /&gt;&lt;script src="https://gist.github.com/773749.js?file=Generate%20the%20RSA%20keys%20and%20certificate"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;step4&gt; Upload  myrsacert.pem&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HbRZwpPnFNs/TSufvI4TfSI/AAAAAAAAAZs/DSqMmw_Hd1M/s1600/3.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 265px;" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/TSufvI4TfSI/AAAAAAAAAZs/DSqMmw_Hd1M/s400/3.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5560713797105319202" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-6349580726716259129?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/6349580726716259129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/6349580726716259129'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2011/01/how-to-get-oauth-consumer-key-secret.html' title='how to get OAuth Consumer Key / Secret for Google OAuth'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HbRZwpPnFNs/TSueaamSGPI/AAAAAAAAAZc/C02l_708N0o/s72-c/Webmaster%2BCentral%2B-%2BVerify%2Bownership.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-8857605417065505400</id><published>2010-11-11T00:45:00.001+09:00</published><updated>2010-11-11T00:45:19.897+09:00</updated><title type='text'>Resources for learning node.js</title><content type='html'>&lt;div class='posterous_autopost'&gt;&lt;p&gt;&lt;span style="font-family: arial; font-size: small;"&gt;  &lt;div&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&lt;strong&gt;&lt;span style="font-size: large;"&gt;Resources for learning node.js&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;  &lt;p /&gt;  &lt;p /&gt;  &lt;p /&gt;  &lt;p /&gt;  &lt;div&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&lt;strong&gt;Tutorials - Article&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;  &lt;p /&gt;  &lt;div&gt;&lt;span style="font-family: dotum, arial, sans-serif;"&gt;&lt;span style="line-height: 19px;"&gt;&lt;span style="font-family: arial; line-height: normal;"&gt;&lt;a href="http://howtonode.org/"&gt;http://howtonode.org/&lt;/a&gt; &amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif;"&gt;&lt;span style="line-height: 19px;"&gt;&lt;span style="font-family: arial; line-height: normal;"&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;  &lt;p /&gt;  &lt;div&gt;&lt;span style="font-family: dotum, arial, sans-serif;"&gt;&lt;span style="line-height: 19px;"&gt;&lt;span style="font-family: arial; line-height: normal;"&gt;&lt;a href="http://visionmedia.github.com/masteringnode/"&gt;http://visionmedia.github.com/masteringnode/&lt;/a&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif;"&gt;&lt;span style="line-height: 19px;"&gt;&lt;span style="font-family: arial; line-height: normal;"&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;  &lt;p /&gt;  &lt;p /&gt;  &lt;p /&gt;  &lt;p /&gt;  &lt;div&gt;&lt;span style="font-family: dotum, arial, sans-serif;"&gt;&lt;span style="line-height: 19px;"&gt;&lt;strong&gt;Tutorials - Videos&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;  &lt;p /&gt;  &lt;div&gt;&lt;a href="http://vimeo.com/pedroteixeira/videos"&gt;http://vimeo.com/pedroteixeira/videos&lt;/a&gt;&amp;nbsp;&lt;span style="font-family: dotum, arial, sans-serif;"&gt;&lt;span style="line-height: 19px;"&gt;&lt;span style="font-family: arial; line-height: normal;"&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;  &lt;p /&gt;  &lt;div&gt;&lt;a href="http://screenr.com/user/tjholowaychuk"&gt;http://screenr.com/user/tjholowaychuk&lt;/a&gt;&amp;nbsp;&lt;span style="font-family: dotum, arial, sans-serif;"&gt;&lt;span style="line-height: 19px;"&gt;&lt;span style="font-family: arial; line-height: normal;"&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;★&lt;/span&gt;&lt;span style="font-family: dotum, arial, sans-serif; line-height: 19px;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;  &lt;/span&gt;&lt;/p&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://jaigouk.com/resources-for-learning-nodejs"&gt;on the Edge of Complexity&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-8857605417065505400?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8857605417065505400'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8857605417065505400'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2010/11/resources-for-learning-nodejs.html' title='Resources for learning node.js'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-1577770154653753371</id><published>2010-11-05T22:09:00.001+09:00</published><updated>2010-11-05T22:09:25.461+09:00</updated><title type='text'>serving a mp4 via node.js</title><content type='html'>&lt;div class='posterous_autopost'&gt;&lt;p&gt;I'm practicing node.js. It's like early days of Rails. One thing that stops me to jump in this bandwagon is that my lack of knowledge of javascript. Anyway, after mastering node.js world technique, I want to go use event techniques in ruby in the future. I'm sure that ruby's virtual machine will evolve.&amp;nbsp;&lt;/p&gt;   &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://jaigouk.com/serving-a-mp4-via-nodejs"&gt;on the Edge of Complexity&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-1577770154653753371?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1577770154653753371'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1577770154653753371'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2010/11/serving-mp4-via-nodejs.html' title='serving a mp4 via node.js'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-235394849431931428</id><published>2010-09-27T12:32:00.001+09:00</published><updated>2010-09-27T12:32:22.725+09:00</updated><title type='text'>Untitled</title><content type='html'>&lt;div class='posterous_autopost'&gt;&lt;p&gt;Step1&amp;gt;&lt;/p&gt;  &lt;script src="http://gist.github.com/598558.js?file=STEP1%3E%20Install"&gt;&lt;/script&gt;  &lt;p&gt;Step2&amp;gt;&lt;/p&gt;  &lt;script src="http://gist.github.com/598558.js?file=STEP2%3E%20change_erb_ruby_testrb_irb_rake_etc"&gt;&lt;/script&gt;  &lt;p&gt;Step3&amp;gt;&lt;/p&gt;  &lt;script src="http://gist.github.com/598558.js?file=STEP3%3E%20install%20rspec"&gt;&lt;/script&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://jaigouk.com/29041741"&gt;on the Edge of Complexity&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-235394849431931428?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/235394849431931428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/235394849431931428'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2010/09/untitled.html' title='Untitled'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-9141563804621859239</id><published>2010-09-21T17:45:00.001+09:00</published><updated>2010-09-21T17:45:14.272+09:00</updated><title type='text'>Installing jspec, rspec textmate bundles</title><content type='html'>&lt;div class='posterous_autopost'&gt;&lt;script src="http://gist.github.com/589406.js?file=Textmate%20bundle%20install"&gt;&lt;/script&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://jaigouk.com/installing-jspec-rspec-textmate-bundles-0"&gt;on the Edge of Complexity&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-9141563804621859239?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/9141563804621859239'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/9141563804621859239'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2010/09/installing-jspec-rspec-textmate-bundles_21.html' title='Installing jspec, rspec textmate bundles'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-2994023530031982334</id><published>2010-09-21T17:44:00.001+09:00</published><updated>2010-09-21T17:44:39.690+09:00</updated><title type='text'>Installing jspec, rspec textmate bundles</title><content type='html'>&lt;div class='posterous_autopost'&gt;&lt;p&gt;&lt;span style="font-family: helvetica, arial, freesans, clean, sans-serif; font-size: 11px; line-height: 14px;"&gt;  &lt;div class="CodeRay"&gt; &lt;div class="code"&gt;&lt;pre&gt;Install RVM textmate bundle http://rvm.beginrescueend.com/integration/textmate/cd /Library/Application\ Support/TextMate/Bundles/git clone git://github.com/rspec/rspec-tmbundle.git RSpec.tmbundleit clone git://github.com/visionmedia/jspec.tmbundle.gitosascript -e 'tell app &amp;quot;TextMate&amp;quot; to reload bundles'&lt;/pre&gt;&lt;/div&gt; &lt;/div&gt;   &lt;/span&gt;&lt;/p&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://jaigouk.com/installing-jspec-rspec-textmate-bundles"&gt;on the Edge of Complexity&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-2994023530031982334?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/2994023530031982334'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/2994023530031982334'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2010/09/installing-jspec-rspec-textmate-bundles.html' title='Installing jspec, rspec textmate bundles'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-450879874508534471</id><published>2010-02-28T07:38:00.001+09:00</published><updated>2010-02-28T07:38:57.957+09:00</updated><title type='text'>My first visit to IDC</title><content type='html'>&lt;div class='posterous_autopost'&gt;&lt;a href='http://posterous.com/getfile/files.posterous.com/jaigouk/COSornylF2Y3RQ1U25XjU5T7GkTMXFDtMKgbtUQGqYEsO2CSFyTEEXNAulDJ/IMG_0091.jpeg'&gt;&lt;img src="http://posterous.com/getfile/files.posterous.com/jaigouk/TErgAOhmnzSjKIeqS781jd8JRUMv16s4EHDaKXZzLXAMU90xb8dm2kB0jFtZ/IMG_0091.jpeg.scaled.500.jpg" width="500" height="375"/&gt;&lt;/a&gt; &lt;a href='http://posterous.com/getfile/files.posterous.com/jaigouk/dqFTmEsLabzqVCO4FDLtrwczUMZDMDxjqE7UAFLWUVZzC98XZbu7rDfWINVI/IMG_0092.jpeg'&gt;&lt;img src="http://posterous.com/getfile/files.posterous.com/jaigouk/nHDHcFnqDrWPOlalmP9ySfjnft8fB9ah5hNuBdBy7G3aNQPvhjQYZvO8e3e6/IMG_0092.jpeg.scaled.500.jpg" width="500" height="375"/&gt;&lt;/a&gt; &lt;div&gt;&lt;a href='http://jaigouk.posterous.com/my-first-visit-to-idc'&gt;See and download the full gallery on posterous&lt;/a&gt;&lt;/div&gt;&lt;p&gt;These guys at IDC are really serious about security! I guess my XServe was the only OS X in the whole building&lt;/p&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://jaigouk.posterous.com/my-first-visit-to-idc"&gt;on the Edge of Complexity&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-450879874508534471?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/450879874508534471'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/450879874508534471'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2010/02/my-first-visit-to-idc.html' title='My first visit to IDC'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-8642795886897583201</id><published>2010-02-28T07:07:00.001+09:00</published><updated>2010-02-28T07:07:49.140+09:00</updated><title type='text'>TentCot</title><content type='html'>&lt;div class='posterous_autopost'&gt;&lt;img src="http://posterous.com/getfile/files.posterous.com/jaigouk/v8rna2T7KAkZkgkkzeMwmu4RSdH3bNHUxdybOVsVF2RGaq3tpHhwldae13rw/IMG_0121.jpg" width="427" height="320"/&gt; &lt;p&gt;I didn't want to use this. But project schedule is so tight.&lt;/p&gt; &lt;p style="font-size: 10px;"&gt; &lt;a href="http://posterous.com"&gt;Posted via email&lt;/a&gt;  from &lt;a href="http://jaigouk.posterous.com/tentcot"&gt;on the Edge of Complexity&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-8642795886897583201?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8642795886897583201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8642795886897583201'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2010/02/tentcot.html' title='TentCot'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-8710311434621515990</id><published>2009-10-17T07:04:00.010+09:00</published><updated>2009-10-17T07:30:49.144+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cappuccino'/><title type='text'>Cappuccino - animated segment controller</title><content type='html'>I was trying to implement segmented controller with Cappuccino extension. I've succeeded to make CPTrackingController work. But it seem that LPKit is better than mine. It works with animation effect. The working example is uploaded at github. (http://github.com/jaigouk/Cappuccino_merb-visual-api_ui)&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br /&gt;&lt;object width="400" height="300"&gt;&lt;param name="allowfullscreen" value="true" /&gt;&lt;param name="allowscriptaccess" value="always" /&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=7106529&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" /&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=7106529&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;p&gt;&lt;a href="http://vimeo.com/7106529"&gt;LPKit enabled Cappuccino toolbar&lt;/a&gt; from &lt;a href="http://vimeo.com/user1159066"&gt;jaigouk&lt;/a&gt; on &lt;a href="http://vimeo.com"&gt;Vimeo&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-8710311434621515990?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8710311434621515990'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8710311434621515990'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2009/10/cappuccino.html' title='Cappuccino - animated segment controller'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-7768260420097639719</id><published>2009-01-30T17:37:00.037+09:00</published><updated>2009-02-07T13:15:46.812+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='couchdb'/><category scheme='http://www.blogger.com/atom/ns#' term='merb'/><title type='text'>Rest with Merb: CouchDB resources</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HbRZwpPnFNs/SYK8i3q8e0I/AAAAAAAAAXM/vpduf6f-zcE/s1600-h/rest_with_merb.png"&gt;&lt;img style="cursor: pointer; width: 211px; height: 189px;" src="http://4.bp.blogspot.com/_HbRZwpPnFNs/SYK8i3q8e0I/AAAAAAAAAXM/vpduf6f-zcE/s400/rest_with_merb.png" alt="" id="BLOGGER_PHOTO_ID_5297003418986773314" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I've been studying couchdb. There are several ways to use couchDB with merb. CouchRest, dm-couchdb-adapter, relaxdb. At the beginning, I've focussed on dm-couchdb-adapter. Because there is a good example, the muddle. It works on my local machine too. I looked into the source codes, and it was not easy to understand them. My head was full of relational database concepts, and it prevented me to go further. I decided to spend more time on couchDB. I asked @merbist via twitter that which would be the proper way to use couchDB. And he answered that "Couchrest for sure, the 2 other ones don't use couch properly"&lt;br /&gt;&lt;br /&gt;These are the resources to start.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.infoq.com/presentations/katz-couchdb-and-me"&gt;CouchDB and Me(Jan 31, 2009): Damien Katz explains what drove him to create CouchDB&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://videos.sapo.pt/ntViNvMENhyUtvmPO02g"&gt;codebits2008 presentation by jan lehnardt(Nov 27, 2008) : good introduction&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://peepcode.com/products/couchdb-with-rails"&gt;Peepcode screencast(Sep 23, 2008) : goes deeper and shows how to use couchrest. It is little bit outdated.(couchview -&gt; couchapp) But example app works!&lt;br /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://jchris.mfdz.com/posts/122"&gt;CouchRest::Model - ORM, the CouchDB way(Sep, 2008)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://atlruby.org/altrux/posts/85-Merbday-Isshen-Solutions-Merb-couchdb"&gt;Atlanta Ruby Group, merbday presentation(Dec 12, 2008)&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;There is a ruby interface written by jchris, Couchrest. He has a plan to launch Couchrest::Model seperately &lt;a href="http://groups.google.com/group/couchrest/browse_thread/thread/fe83daccf26128d8#"&gt;[link].&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And Couchview has been replaced by &lt;span style="font-weight: bold;"&gt;couchapp&lt;/span&gt; &lt;a href="http://github.com/jchris/couchapp"&gt;[link]&lt;/a&gt;(I've followed Peepcode screencast, and spent some time to figure out why "couchview" command is not working.)&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;$ &lt;b&gt;couchapp&lt;/b&gt;&lt;br /&gt;Usage: /opt/local/bin/couchapp [options] (push|generate)&lt;br /&gt;-q, —quiet                      Omit extra debug info&lt;br /&gt;-h, —help                       Display detailed help and exit&lt;br /&gt;-v, —version                    Display version number&lt;br /&gt;&lt;br /&gt;Here is what jchris said about couchapp at &lt;a href="http://groups.google.com/group/couchrest/browse_thread/thread/351ed1b9ae08b0a1"&gt;couchrest google group[link]&lt;/a&gt;&lt;br /&gt;====================&lt;br /&gt;&lt;span class="fixed_width"  style="font-family:Courier,Monospaced;"&gt;Couchapp is equivalent to couchview, except for a few details about&lt;br /&gt;how it expects to see documents stored on the filesystem.&lt;br /&gt;&lt;/span&gt;&lt;p&gt;&lt;span class="fixed_width"  style="font-family:Courier,Monospaced;"&gt;If I recall correctly, couchview takes something like this&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="fixed_width"  style="font-family:Courier,Monospaced;"&gt;views/test-map.js&lt;br /&gt;views/test-reduce.js&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="fixed_width"  style="font-family:Courier,Monospaced;"&gt;and pushes it to the views member of a design doc, which you'd specify&lt;br /&gt;on the command line, with a default of falling back to a directory name. Couchview does that job just fine, but it is no generalized to handle the other functions that can be stored in a design doc.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="fixed_width"  style="font-family:Courier,Monospaced;"&gt;the CouchApp script takes a filesystem and pushes it transparently to a design doc, so the on-disk layout it expects is a little different:&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="fixed_width"  style="font-family:Courier,Monospaced;"&gt;views/test/map.js&lt;br /&gt;views/test/reduce.js&lt;br /&gt;validate_doc_update.js&lt;br /&gt;shows/post.js&lt;br /&gt;lists/index.js&lt;br /&gt;_attachments/images/example.png&lt;br /&gt;_attachments/foo/bar.html&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="fixed_width"  style="font-family:Courier,Monospaced;"&gt;you are free to leave any of that out (so if you only care about views then you should be able to use it just fine.)&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;span class="fixed_width"  style="font-family:Courier,Monospaced;"&gt;currently the python version of couchapp also has the ability to "clone" from a url. I'm working on getting the ruby version back up to speed, but for now you might be happiest installing the python version. &lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Things move so fast around couchDB and couchrest that one article is not proper to summarize them. I will post time to time about it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-7768260420097639719?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7768260420097639719'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7768260420097639719'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2009/01/rest-with-merb-couchdb-resources.html' title='Rest with Merb: CouchDB resources'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HbRZwpPnFNs/SYK8i3q8e0I/AAAAAAAAAXM/vpduf6f-zcE/s72-c/rest_with_merb.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-8316231550715217981</id><published>2009-01-27T00:46:00.005+09:00</published><updated>2009-01-27T21:15:55.400+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='merb'/><title type='text'>merb pagination</title><content type='html'>&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;written by billturner #merb freenode irc channel.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Q. "@current_page = (params[:page] || 1).to_i " what does that refers to?&lt;br /&gt;A. billturner&gt; when you use the pagination, and the &lt;%= paginate(..) %&gt; stuff, it gives you links like /posts/index?page=2&lt;br /&gt;A. billturner&gt; so, if there's no "page=X" then it will pull the first page of results&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="http://pastie.org/371098.js"&gt;&lt;/script&gt;&lt;/billturner&gt;&lt;/billturner&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-8316231550715217981?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8316231550715217981'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8316231550715217981'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2009/01/merb-pagination.html' title='merb pagination'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-8033140875669023211</id><published>2009-01-23T10:01:00.006+09:00</published><updated>2009-02-03T22:15:36.970+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nginx'/><title type='text'>502 Bad Gateway</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HbRZwpPnFNs/SXkXGxPGTbI/AAAAAAAAAXE/NFeCJ3XZh04/s1600-h/502_bad_gateway001.png"&gt;&lt;img style="cursor: pointer; width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/SXkXGxPGTbI/AAAAAAAAAXE/NFeCJ3XZh04/s400/502_bad_gateway001.png" alt="" id="BLOGGER_PHOTO_ID_5294288242014047666" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Recently, I've changed my server from mod-passenger to nginx because of the &lt;a href="http://groups.google.com/group/merb/browse_thread/thread/112443c7c713d25a/dbcbd1480e180d1e?lnk=gst&amp;amp;q=passenger#dbcbd1480e180d1e"&gt;comment at merb google groups&lt;/a&gt;&lt;a href="http://groups.google.com/group/merb/browse_thread/thread/112443c7c713d25a/dbcbd1480e180d1e?lnk=gst&amp;amp;q=passenger#dbcbd1480e180d1e"&gt;[link]&lt;/a&gt;. Passenger was fit for me. It makes deployment more easier than before. However, merb's way of handling processes seems complicated and advanced &lt;a href="http://brainspl.at/articles/2008/12/07/merb-master-worker-monit-control-setup"&gt;as Ezra said[link]&lt;/a&gt;. And it is not fully compatible with passenger now.&lt;br /&gt;&lt;br /&gt;So I came back to nginx. I thought it would be easy. But it took some time to run my small app. I 've seen a lot of "502 Bad Gateway" page. I guessed that compiling was wrong at first time. It wasn't nginx but my logic in the codes. So the best way to check what's wrong, just type "merb" on the server. I haven't installed necessary gems and libraries. Yes, it is very basic stuff but easy to miss.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-8033140875669023211?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8033140875669023211'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8033140875669023211'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2009/01/502-bad-gateway.html' title='502 Bad Gateway'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HbRZwpPnFNs/SXkXGxPGTbI/AAAAAAAAAXE/NFeCJ3XZh04/s72-c/502_bad_gateway001.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-4207295454504480891</id><published>2009-01-16T13:02:00.059+09:00</published><updated>2009-02-05T12:11:59.501+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='merb'/><title type='text'>Twitter on Merb : Merb flat app Walkthrough</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HbRZwpPnFNs/SXQvnA6nBDI/AAAAAAAAAW0/XUdSL3l9z6E/s1600-h/Twitter+on+merb.png"&gt;&lt;img style="cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/SXQvnA6nBDI/AAAAAAAAAW0/XUdSL3l9z6E/s400/Twitter+on+merb.png" alt="" id="BLOGGER_PHOTO_ID_5292907809374405682" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HbRZwpPnFNs/SXQwWLjfGBI/AAAAAAAAAW8/z_Pk-bGLASY/s1600-h/commits.png"&gt;&lt;img style="cursor: pointer; width: 400px; height: 300px;" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/SXQwWLjfGBI/AAAAAAAAAW8/z_Pk-bGLASY/s400/commits.png" alt="" id="BLOGGER_PHOTO_ID_5292908619684059154" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:180%;" &gt;Description&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-size:130%;"&gt;site : &lt;a href="http://merb.kicks-ass.org/"&gt;merb.kicks-ass.org &lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:130%;"&gt;codes : &lt;a href="http://jaigouk.github.com/twitter-on-merb/"&gt;jaigouk.github.com/twitter-on-merb&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:130%;"&gt;server: slicehost Ubuntu 8.1, nginx, merb version 1.0.8.1, dm version 0.9.10&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:130%;"&gt;purpose: aggreate github commits feeds and post them to twitter @edgemerb&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:130%;"&gt;todo: &lt;span style="font-family:monospace;"&gt;eager cache&lt;/span&gt;&lt;code&gt;&lt;/code&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:180%;" &gt;Motivation&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I’m a newbie in merb community. Since “the merger”, I needed correct and reliable reference and so was other newbies in the community. I started to translate merb-book in Korean. But it was not enough for us .I thought that learning merb would be easier if I build an app what I really need such as tracking recent changes. It was easy since there are good tutorials and tools. And scraping nightly version of &lt;span class="caps"&gt;README&lt;/span&gt; file could be helpful too. Because merb core team members are too busy to write guides and tutorials.&lt;br /&gt;&lt;br /&gt;I laid aside scraping the &lt;span class="caps"&gt;README&lt;/span&gt; files for now. I just aggregated merb commits rss and send them to twitter. I use TwitterFox as twitter client on my desktop. Whenever a new message comes, It shows the message in a brief moment. It's really handy.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HbRZwpPnFNs/SXAG6dsiJ2I/AAAAAAAAAWE/ytEc0JsBEG0/s1600-h/twittbin_is_useful.png"&gt;&lt;img style="cursor: pointer; width: 400px; height: 279px;" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/SXAG6dsiJ2I/AAAAAAAAAWE/ytEc0JsBEG0/s400/twittbin_is_useful.png" alt="" id="BLOGGER_PHOTO_ID_5291737163633928034" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:180%;" &gt;&lt;br /&gt;Generating a flat app&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="http://gist.github.com/47806.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;This is what I did at first time. As you see, It is really small and shows basic structure how merb works. If you want to learn more about internals of merb, visit here(http://github.com/michaelklishin/merb-internals-handbook)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;span style="font-weight: bold;"&gt;Using Model in a flat app&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I edited config/framework.rb file. Because I could not use twitter_search gem to verify the message is unique or not. This is same as twitter timeline api. It seems that they use cache. Therefore I had to add a model to check the message I'm sending is unique or not.&lt;br /&gt;&lt;br /&gt;&lt;script src="http://gist.github.com/44598.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;First, I added   one line :model =&gt; Merb.root / "models" in config/frameworks.rb file. And then, wrote dependencies in init.rb file.&lt;br /&gt;&lt;br /&gt;$merb-gen model tweet&lt;br /&gt;&lt;br /&gt;&lt;script src="http://gist.github.com/44599.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;$rake db:automigrate&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;span style="font-weight: bold;"&gt;Scraping with nokogiri&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Since merb flat app has a single controller file, It was easy to start. But the twitter api and nokogiri took some time to use. I was not familiar with nokogiri, I googled and found this tutorial. (http://www.robertsosinski.com/2008/12/08/scraping-pages-made-easy-with-ruby-and-nokogiri/).&lt;br /&gt;And I better use a well designed web site template.  I picked one of the recommended templates from samshmagazine.(http://www.smashingmagazine.com/2008/12/01/100-free-high-quality-xhtmlcss-templates/)&lt;br /&gt;&lt;br /&gt;There were 3 or 4 ruby libraries for twitter. And twitter4r has more documents than the others. It took much time to discover that timeline api and search api use cache. I just forgot about the cache. Anyway I installed necessary gems.&lt;br /&gt;&lt;br /&gt;$sudo gem install twitter4r twitter nokogiri shorturl&lt;br /&gt;&lt;br /&gt;And then I eddited index.html.erb file. In the controller, it only needs render method.  I just wanted to use feedtools and feedupdater gem. But there were not enough document to reference and as merb-book says, I better not use codes that I don't understand. Scraping pages with nokogiri is easy but my app would be fragile.&lt;br /&gt;&lt;br /&gt;&lt;script src="http://gist.github.com/44610.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;I know the codes above is not that beautiful. But I hope this code help another rubist who want  a scraping example through nokogiri. As you see above, k.content which was return by nokogiri's search method was Hash. This is why i used to_s method.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;span style="font-weight: bold;"&gt;Scheduling background works&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HbRZwpPnFNs/SXQoOjbxjNI/AAAAAAAAAWs/FSjGscbDuwI/s1600-h/starling-process.png"&gt;&lt;img style="cursor: pointer; width: 400px; height: 293px;" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/SXQoOjbxjNI/AAAAAAAAAWs/FSjGscbDuwI/s400/starling-process.png" alt="" id="BLOGGER_PHOTO_ID_5292899692562189522" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And posting a message to twitter was tricky for me. Because of increasing popularity of twitter, posting throuth api was too fast for twitter sometimes. Posting messages takes much time and that code block needs to sleep. In the initial codes, I wrapped the block with run_later. But I found that I need to schedule the tasks. There would be several way to acheive scheduling the daemons. In version 0.0.1.4(Twitter-on-Merb), I used crontab and rake. But the codes were dirty and it did not work as I expected. I talked about this with lakteck via tiwtter, and I remembered that I've seen rufus-scheduler at &lt;a href="http://www.igvita.com/2007/03/29/scheduling-tasks-in-ruby-rails/"&gt;igvita.com[link]&lt;/a&gt;. It was really easy to implement scheduler with rufus-scheduler gem. The scheduler scrapes web sites on every 10 minutes. And I made a starling consumer daemon. I referenced &lt;a href="http://www.pragprog.com/titles/fr_arr/source_code"&gt;"Advanced Rails Recipes #42"&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;rufus-scheduler github repo &lt;a href="http://github.com/jmettraux/rufus-scheduler/tree/master"&gt;[link]&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;rufus-scheduler rdoc &lt;a href="http://rufus.rubyforge.org/rufus-scheduler/"&gt;[link]&lt;/a&gt;&lt;/li&gt;&lt;li&gt;starling github repo &lt;a href="http://github.com/starling/starling/tree/master"&gt;[link]&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;confing/init.rb&lt;br /&gt;&lt;script src="http://gist.github.com/51419.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;lib/daemons/starling_consumer.rb file&lt;br /&gt;&lt;script src="http://gist.github.com/48582.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;lib/daemons/starling_consumer_ctl.rb file&lt;br /&gt;&lt;script src="http://gist.github.com/48584.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;config/consumer.god file. Daemons are started after "cap:deploy".&lt;br /&gt;&lt;script src="http://gist.github.com/48900.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:180%;"&gt;&lt;span style="font-weight: bold;"&gt;Cache&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;My flat app was too slow, and it was time to implement cache.  I referenced,&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;&lt;a style="color: rgb(255, 102, 0);" href="http://github.com/benburkert/community_shelf"&gt;Keep a hot cache with merb-cache&lt;/a&gt; &lt;/span&gt;by &lt;span style="font-weight: bold;"&gt;Ben Burkert&lt;/span&gt; at &lt;a style="font-weight: bold; color: rgb(255, 102, 0);" href="http://merbcamp.com/video/burkert.mp4"&gt;MerbCamp&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a style="color: rgb(255, 102, 0);" href="http://merbunity.com/tutorials/15"&gt;&lt;span style="font-weight: bold;"&gt;Merbunity Tutorial#15&lt;/span&gt;&lt;/a&gt; written by &lt;span style="font-weight: bold;"&gt; Ben Burkert&lt;/span&gt; on Sep 07, 2008&lt;/li&gt;&lt;li&gt;&lt;a style="color: rgb(255, 102, 0);" href="http://gom-jabbar.org/articles/2008/12/19/merb-cache-s-methods"&gt;&lt;span style="font-weight: bold;"&gt;Merb-cache's methods&lt;/span&gt; &lt;/a&gt;written by &lt;span style="font-weight: bold;"&gt;Guillaume Maury(a.k.a giom)&lt;/span&gt; on Dec 19, 2008&lt;/li&gt;&lt;/ul&gt;Here's quick introduction &lt;a href="http://gist.github.com/616"&gt;[original gist document link]&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;== Quick intro&lt;br /&gt;With fragment caching, you can mix dynamic and static content.&lt;br /&gt;&lt;br /&gt;With action caching, the whole template is cached&lt;br /&gt;but the before filters are still processed.&lt;br /&gt;&lt;br /&gt;With page caching, the whole template is put in html files in a special&lt;br /&gt;directory in order to be handled directly without triggering Merb.&lt;br /&gt;&lt;br /&gt;by Dan Kubb  on July 22, 2008&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="http://gist.github.com/47858.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;But my init file was wrong at that time and throws erros whenever I run "rake db:automigrate" since I set up the cache(http://gist.github.com/44702). I really didn't know how to fix this. At first, I guessed that datamapper version could be the reason why causes it. After updating the gems, error were still there. Fortunately I have known Guillaume Maury(giom) recently via twitter. He helped to get out of this. This code was not familiar with me. I thought I knew the way to setup the cache.&lt;br /&gt;The codes were already in his article (http://gom-jabbar.org/articles/2008/12/14/example-nginx-configuration-for-merb-with-page-caching-using-the-file-store). I run my apps on passenger so I simply skipped it. :)  I highly recommend his blog if you are  in Merb2 or Rails3. Here is the snippet written by him. (The initial flat app with plain dependency line did not work.)&lt;br /&gt;&lt;script src="http://pastie.org/356279.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;And I referenced here.&lt;br /&gt;http://blog.evanweaver.com/files/doc/fauna/memcached/files/README.html&lt;br /&gt;&lt;br /&gt;$ wget  http://download.tangent.org/libmemcached-0.25.tar.gz&lt;br /&gt;$ tar -xzvf libmemcached-0.25.tar.gz&lt;br /&gt;$ cd libmemcached-0.25.tar.gz&lt;br /&gt;$ ./configure&lt;br /&gt;$ make &amp;amp;&amp;amp; sudo make install&lt;br /&gt;$ sudo gem install memcached&lt;br /&gt;$ irb&lt;br /&gt;&gt; require 'rubygems'&lt;br /&gt;&gt; require 'memcached'&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:180%;" &gt;Deploy&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;$cap deploy:setup&lt;br /&gt;$scp -r database.yml  to server&lt;br /&gt;$scp -r twitter.yml  to server&lt;br /&gt;&lt;br /&gt;$rake db:create&lt;br /&gt;$rake db:automigrate&lt;br /&gt;$cap deploy&lt;br /&gt;&lt;br /&gt;this is my deploy.rb file.&lt;br /&gt;&lt;script src="http://gist.github.com/47821.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:180%;" &gt;tip&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;And if you have problems after your deployment, check if config.ru(must be 'config.ru', not 'Config.ru') file exists and the permissions are correct(chmod 755 -R).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-4207295454504480891?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4207295454504480891'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4207295454504480891'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2009/01/twitter-on-merb-merb-flat-app.html' title='Twitter on Merb : Merb flat app Walkthrough'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HbRZwpPnFNs/SXQvnA6nBDI/AAAAAAAAAW0/XUdSL3l9z6E/s72-c/Twitter+on+merb.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-1943198210219856578</id><published>2009-01-02T15:20:00.009+09:00</published><updated>2009-01-06T08:41:29.720+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='merb'/><title type='text'>Free merb screen casts</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HbRZwpPnFNs/SV20z4BZnpI/AAAAAAAAAVw/GUzHHl7n6sM/s1600-h/Atlanta.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 279px;" src="http://4.bp.blogspot.com/_HbRZwpPnFNs/SV20z4BZnpI/AAAAAAAAAVw/GUzHHl7n6sM/s400/Atlanta.png" alt="" id="BLOGGER_PHOTO_ID_5286580340907417234" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#1 &lt;a href="http://merbcamp.com/video"&gt;MerbCamp&lt;/a&gt; - Yes, all merbists have seen it.&lt;br /&gt;#2 &lt;a href="http://merbcamp.com/video"&gt;Merbunity&lt;/a&gt; - It's maintained by hassox!&lt;br /&gt;#3 &lt;a href="http://atlruby.com/"&gt;Atlanta ruby user  &lt;/a&gt;- I found this site recently. I think it's worth to see.&lt;br /&gt;#4 &lt;a href="http://splendificent.com/2008/12/merb-dependencies-and-bundler-conquered-screencast/"&gt;Merb Dependencies and Bundler&lt;/a&gt; - by &lt;span class="author"&gt;Carl Lerche&lt;/span&gt;&lt;br /&gt;#5 &lt;a href="http://peepcode.com/products/meet-merb-pdf-draft"&gt;peepcode&lt;/a&gt; (well, not free. but it's 9$) - The screencast was recorded on merb 0.9 but it still is a good one.&lt;br /&gt;&lt;br /&gt;And there are good tutorials.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.theamazingrando.com/blog/?p=41"&gt;HOWTO: Getting a sidebar in Merb&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://uipoet.com/read/3"&gt;Merb on Slicehost &lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://scottmotte.com/"&gt;Merb subdomains&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://gom-jabbar.org/articles/2008/12/19/merb-cache-s-methods"&gt;Advanced merb-cache articles&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://github.com/ck/cookbook"&gt;cookbook&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://github.com/mattetti/merb-book"&gt;merb-book&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-1943198210219856578?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1943198210219856578'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1943198210219856578'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2009/01/free-merb-screen-casts.html' title='Free merb screen casts'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HbRZwpPnFNs/SV20z4BZnpI/AAAAAAAAAVw/GUzHHl7n6sM/s72-c/Atlanta.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-3541020997901470391</id><published>2008-12-24T08:34:00.033+09:00</published><updated>2009-02-08T02:33:15.702+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rails'/><category scheme='http://www.blogger.com/atom/ns#' term='merb'/><title type='text'>Merb + Rails merger</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HbRZwpPnFNs/SVRQGOmTlaI/AAAAAAAAAVU/hidRMbnvShs/s1600-h/where_is_rails_300_400.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 300px; height: 400px;" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/SVRQGOmTlaI/AAAAAAAAAVU/hidRMbnvShs/s400/where_is_rails_300_400.png" alt="" id="BLOGGER_PHOTO_ID_5283936330740635042" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Update(2009.2.8)&lt;br /&gt;"Merb in Action" =&gt; "Rails3 in Action"&lt;br /&gt;http://www.manning.com/katz/&lt;br /&gt;&lt;br /&gt;Table of Contents&lt;br /&gt; 1. Building Your First Rails 3.0 Application&lt;br /&gt; 2. Overview of the Rails stack(s) + architecture&lt;br /&gt; 3. Creating Rails Applications&lt;br /&gt; 4. Using DataMapper for Models&lt;br /&gt; 5. Using ActiveRecord for Models&lt;br /&gt; 6. Other Choices for Models&lt;br /&gt; 7. Processing Requests&lt;br /&gt; 8. Routing in Rails 3&lt;br /&gt; 9. Customizing Views&lt;br /&gt;10. Working on the Client Side&lt;br /&gt;11. Supporting Characters&lt;br /&gt;12. Using the Plugin API&lt;br /&gt;13. Testing Your Applications&lt;br /&gt;14. Deploying a Rails Application&lt;br /&gt;15. Scaling Rails&lt;br /&gt;&lt;br /&gt;Appendix A Just enough advanced Ruby&lt;br /&gt;Appendix B The migration story&lt;br /&gt;Appendix C Rails 2 to Rails 3&lt;br /&gt;Appendix D Merb 1 to Rails 3&lt;br /&gt;&lt;br /&gt;Update(2009.2.5)&lt;br /&gt;&lt;span class="fixed_width"  style="font-family:Courier,Monospaced;"&gt;&lt;a href="http://groups.google.com/group/merb/browse_thread/thread/9a3513804b2855ba/815e4298f681a405#815e4298f681a405"&gt;Rails 3 will have mountable applications, not engines or slices&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Update(2009.1.16)&lt;br /&gt;I just got an email from manning about "Merb in Action".&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Rails becomes more modular&lt;/span&gt;, by building on rails-core with the ability to opt in or out of specific components and making it possible to replace parts of Rails without disturbing other parts.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Merb performance improvements flow into Rails&lt;/span&gt;, including benchmarking applications so developers can see which optimizations have real-world impact.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0);"&gt;A defined public API with a test suite&lt;/span&gt;, so users and plugin developers have a stable API to build against.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0);"&gt;A "core" version of Rails, like Merb's current core generator&lt;/span&gt;, that makes it easy to select just the parts that are important for your app.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;DataMapper and Sequel support as first-class ORMs&lt;/span&gt;, along with ActiveRecord as the default.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Rack support in Rails 3&lt;/span&gt;, to improve the state of modular, sharable logic between applications. &lt;/li&gt;&lt;/ul&gt;Update(2008/12/26)&lt;br /&gt;So far, it seems that &lt;a style="color: rgb(255, 102, 0); font-weight: bold;" href="http://groups.google.com/group/merb/"&gt;merb google group&lt;/a&gt; is the best source. And &lt;a style="font-weight: bold; color: rgb(255, 102, 0);" href="http://merbist.com/2008/12/25/merb-rails-merge-or-why-should-merbists-be-happy/"&gt;Matt Aimonetti&lt;/a&gt; answers all the concerns.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Yehuda Katz&lt;/span&gt; says&lt;br /&gt;"If you want to learn Merb for modularity and power that is not currently present in Rails, stick with Merb. &lt;span style="font-weight: bold;"&gt;We'll provide a good upgrade path to Rails3&lt;/span&gt; (and feel free to contact me personally to keep me honest on that promise), and you'll have a leg-up when the same power makes its way into Rails. While Rails3 will still be very similar to Rails2 for current Rails users, it will look a lot like Merb for those users who are currently drawn to Merb."&lt;br /&gt;&lt;br /&gt;"We always said that there would be breaking changes in Merb 2.0. &lt;span style="font-weight: bold;"&gt;Now, some of those breaking changes will be in tandem with the Rails3 merger&lt;/span&gt;. However, we will treat them like any other breaking changes, and make sure the deprecation notices flow freely and the transition path is clean. Make sense?"&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Matt Aimonetti&lt;/span&gt; says,&lt;br /&gt;"The great advantage of using merb now, is that it has a public API so we will be able to easily migrate it to the new 3.0 API. Concretely, we are planning on being able to&lt;span style="font-weight: bold;"&gt; replace merb-core by rails-core&lt;/span&gt; in your merb app and to use merb-helpers and other plugins with rails-core." &lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;I think "Merb in Action" would take longer than expected. And it's required to rewrite the whole chapters that are published. Of course, book's title will not be changed but I'm just worried about Merb. It would be called Rails3.0 by many other people, especially inside Rails community.&lt;br /&gt;&lt;br /&gt;As Ezra said, &lt;blockquote&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Merb is dead&lt;/span&gt;&lt;/span&gt;, long live Merb(Rails-3.0)!&lt;br /&gt;&lt;/blockquote&gt;Matt Aimonetti said,&lt;br /&gt;&lt;blockquote&gt;I don't think Ezra is right. Merb isn't dead. First off, merb will still be around until the next release (rails 3.0) and we will keep on supporting it even after that (maintenance).&lt;/blockquote&gt;So many merbists are disappointed by this news but there is nothing can be done. Engin Yard's decision looks solid.  I've accepted it, after all. I've read many articles enough to say that I will stick with Merb. There were some people who even want to switch to Django. I decided to practice Merb more than before. Because Merb would be the core changes in Rails3. And it could happen that Merb core team is too busy. But evangelist like  Matt Aimonetti will help us. I hope taking this path would be natural to Merb2.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-3541020997901470391?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3541020997901470391'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3541020997901470391'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/12/merb-rails-merge.html' title='Merb + Rails merger'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HbRZwpPnFNs/SVRQGOmTlaI/AAAAAAAAAVU/hidRMbnvShs/s72-c/where_is_rails_300_400.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-4132779244713675239</id><published>2008-12-20T01:53:00.023+09:00</published><updated>2009-01-04T23:34:57.961+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='merb'/><category scheme='http://www.blogger.com/atom/ns#' term='eLearning'/><title type='text'>오픈소스 merb-book 한국어 번역</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HbRZwpPnFNs/SUvTN7Z2e-I/AAAAAAAAAUk/zcf_ChK_9-4/s1600-h/merb.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 136px; height: 54px;" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/SUvTN7Z2e-I/AAAAAAAAAUk/zcf_ChK_9-4/s400/merb.png" alt="" id="BLOGGER_PHOTO_ID_5281547224259918818" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Now, merb has many resources to learn.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HbRZwpPnFNs/SUvTek5_QyI/AAAAAAAAAUs/H75HHX7I6sg/s1600-h/merbcamp.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 134px; height: 71px;" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/SUvTek5_QyI/AAAAAAAAAUs/H75HHX7I6sg/s320/merbcamp.gif" alt="" id="BLOGGER_PHOTO_ID_5281547510278472482" border="0" /&gt;&lt;/a&gt;튜토리얼 및 기타 소개 동영상들 : MerbCamp videos,&lt;br /&gt;스크린캐스트 : http://merbunity.com/screencasts&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;and there is open source merb-book which is started by &lt;a title="Matt Aimonetti" href="http://www.linkedin.com/in/mattaimonetti" target="_blank"&gt;Matt Aimonetti.&lt;br /&gt;&lt;/a&gt; Well, I saw Chinese and Japanese but no Korean one. I think that there are probably not enough rubists in Korea. Anyway I sent a message to him that I want to start if there is no one. And &lt;a href="http://github.com/jaigouk/merb-book/tree/korean"&gt;here &lt;/a&gt;it is.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://book.merbist.com/"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 272px;" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/SU9AfUssXkI/AAAAAAAAAU0/zFlJY9pWPLQ/s320/merb-book.png" alt="" id="BLOGGER_PHOTO_ID_5282511794805169730" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;Update(12/22/2008)&lt;br /&gt;I've completed "Merb-More" Chapter. But there are still unfinished chapters in English.&lt;br /&gt;Merb-More 챕터까지 모두 한국어로 번역을 완료했지만, 영어로 된 원본이 아직 빈 곳이 많습니다. 번역하는데에는 네이버 단어장, 구글번역기, 바벨피쉬, 그리고 제 경험을 최대한 살려서 번역했습니다. 많이 부족하므로 오타나 잘못된 번역을 알려주시면 고치도록 하겠습니다. 한글로 된 merb 책이 나오려면 아직 오래 걸릴 것 같습니다. (영어 책도 아직 출판되지 않았습니다.) 참여를 원하시는 분은 메일 보내주시기 바랍니닷.&lt;br /&gt;&lt;br /&gt;Update(12/23/2008)&lt;br /&gt;I finished the translation.&lt;br /&gt;현재까지 작성된 영어 원본에 대한 번역은 마쳤습니다. 제 생각에는 본격적으로 책들이 쏟아지는 2009년 전반에는 이 오픈소스 책도 많은 개선이 있을 것 같습니다.&lt;br /&gt;&lt;br /&gt;Update(12/24/2008)&lt;br /&gt;Rails와 Merb가 합쳐지는 이 시점에서, Pragmatic Bookshelf, Apress 등에서 나온 책들은 의미가 희석되었다고 생각합니다. 워낙 빠르게 변하다보니 책들이 따라가지 못하고 있습니다. 오픈소스 책의 발안자인 Matt Aimonetti가 Rails 코어팀에 합류했기 때문에 이 책이 그나마 현재 나온 책중에서는 가장 참고할만한 책이 되지 않을까 싶습니다. Rails3.0에선 Merb의 기능들을 흡수할 예정이기 때문입니다.&lt;br /&gt;&lt;br /&gt;update(2009.1.4)&lt;br /&gt;제가 실수로 master 브렌치에 작업내용을 합치질 않았었습니다. -_-;;;&lt;br /&gt;이제 github에서 다운받으셔서 정상적으로 보실 수 있습니다. 업데이트 내용은 4번째 장인 "데이터베이스와 상호작용" 부분입니다. 현재까지 작업된 영어원본까지 모두 작업완료되었습니다. 책을 받아서 보시는 분들이 계시다면, 오타나 의역에 무리가 있는 부분을 지적해주세요. :)&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;오픈소스 merb 책이 나왔지만 한국어 번역이 없어 매트에게 해보겠다고 메세지를 보냈습니다. 흔쾌히 해보라해서 현재 작업중이고 getting started/mvc까지 작업완료했습니다. 이제와서 보니 일본어나 프랑스, 중국 번역판에 비해 늦은 것은 아니었습니다.&lt;br /&gt;&lt;br /&gt;&lt;span class="postbody"&gt;------------------------------&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;책을 보는 방법&lt;/span&gt;&lt;br /&gt;------------------------------&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;필요조건 : &lt;/span&gt;&lt;br /&gt;a. ruby, gem&lt;br /&gt;b. git&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;스텝 :&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1. 먼저 제 github 저장소에서 merb-book을 로컬 pc로 복사합니다.&lt;br /&gt;$git clone &lt;a href="mailto:git@github.com"&gt;git@github.com&lt;/a&gt;:jaigouk/merb-book.git&lt;br /&gt;&lt;br /&gt;2. 다운받은 merb-book 루트 디렉토리에서 다음을 실행해 주시면 됩니다.&lt;br /&gt;$./bin/merb&lt;br /&gt;&lt;br /&gt;3. 브라우저에서 &lt;a href="http://localhost:4000/" target="_blank"&gt;http://localhost:4000&lt;/a&gt; 주소로 가면 책을 보실 수 있습니다. 목차 맨위에 보시면 각 언어들 링크가 있는데 한국어를 선택하시면 됩니다.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="postbody"&gt;------------------&lt;/span&gt;&lt;span class="postbody"&gt;-&lt;/span&gt;&lt;span class="postbody"&gt;-&lt;/span&gt;&lt;span class="postbody"&gt;-&lt;/span&gt;&lt;span class="postbody"&gt;-&lt;/span&gt;&lt;span class="postbody"&gt;-&lt;/span&gt;&lt;span class="postbody"&gt;-----------&lt;br /&gt;Chapter별 완성도(2009/1/4): 좋음(○),  미흡(△), 없음(X)&lt;br /&gt;&lt;/span&gt;&lt;span class="postbody"&gt;-----------------------&lt;/span&gt;&lt;span class="postbody"&gt;-&lt;/span&gt;&lt;span class="postbody"&gt;-&lt;/span&gt;&lt;span class="postbody"&gt;-&lt;/span&gt;&lt;span class="postbody"&gt;-&lt;/span&gt;&lt;span class="postbody"&gt;-------&lt;/span&gt;&lt;br /&gt;&lt;ol class="available-for-translation" id="toc"&gt;&lt;li&gt; &lt;p&gt;&lt;a href="http://localhost:4000/front-matter"&gt;서문&lt;/a&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;a href="http://localhost:4000/front-matter/foreword"&gt;머리말 By Yehuda Katz&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/front-matter/preface"&gt;서문 by Matt Aimonetti&lt;span class="postbody"&gt;(○)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/front-matter/contributors"&gt;공헌자들&lt;span class="postbody"&gt;(○)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt; &lt;/li&gt;&lt;li&gt; &lt;p&gt;&lt;a href="http://localhost:4000/introduction"&gt;소개&lt;/a&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;a href="http://localhost:4000/introduction/ruby"&gt;Ruby 언어&lt;span class="postbody"&gt;(○)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/introduction/merb"&gt;Merb 웹프레임웍&lt;span class="postbody"&gt;(○)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/introduction/datamapper"&gt;DataMapper ORM&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/introduction/rspec"&gt;RSpec 테스팅 프레임웍&lt;span class="postbody"&gt;(○)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt; &lt;/li&gt;&lt;li&gt; &lt;p&gt;&lt;a href="http://localhost:4000/getting-started"&gt;시작하기&lt;/a&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;a href="http://localhost:4000/getting-started/install-instructions"&gt;설치방법&lt;span class="postbody"&gt;(○)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/getting-started/generate-an-application"&gt;어플리케이션 생성하기&lt;span class="postbody"&gt;(○)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/getting-started/project-structure"&gt;프로젝트 구조&lt;span class="postbody"&gt;(○)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/getting-started/mvc"&gt;MVC&lt;span class="postbody"&gt;(○)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/getting-started/controllers"&gt;컨트롤러&lt;span class="postbody"&gt;(○)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/getting-started/views"&gt;뷰&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/getting-started/models"&gt;모델&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span&gt;&lt;a href="http://localhost:4000/getting-started/controllers"&gt;&lt;span class="postbody"&gt;(○)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/getting-started/request-path"&gt;리퀘스트 패스&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span&gt;&lt;a href="http://localhost:4000/getting-started/controllers"&gt;&lt;span class="postbody"&gt;(○)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/getting-started/router"&gt;라우터&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt; &lt;/li&gt;&lt;li&gt; &lt;p&gt;&lt;a href="http://localhost:4000/interacting-with-the-database"&gt;데이터베이스와 상호작용&lt;/a&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/up"&gt;DataMapper 세팅&lt;span class="postbody"&gt;(&lt;/span&gt;○&lt;span class="postbody"&gt;)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/schema"&gt;데이터베이스 스키마&lt;span class="postbody"&gt;(&lt;/span&gt;△&lt;span class="postbody"&gt;)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/queries"&gt;데이터베이스 쿼리&lt;span class="postbody"&gt;(&lt;/span&gt;○&lt;span class="postbody"&gt;)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/relationships"&gt;모델 관계&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/migrations"&gt;데이터베이스 마이그레이션&lt;span class="postbody"&gt;(&lt;/span&gt;○&lt;span class="postbody"&gt;)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/validations"&gt;유효성 검증&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt; &lt;/li&gt;&lt;li&gt; &lt;p&gt;&lt;a href="http://localhost:4000/testing-your-application"&gt;어플리케이션 테스팅&lt;/a&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;a href="http://localhost:4000/testing-your-application/why"&gt;테스트를 하는 이유&lt;span class="postbody"&gt;(△)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/testing-your-application/models"&gt;모델 테스팅&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/validations"&gt;&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/testing-your-application/requests"&gt;리퀘스트 테스팅&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/validations"&gt;&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/testing-your-application/cucumber"&gt;RSpec Cucumber를 사용한 통합테스팅&lt;/a&gt;&lt;a href="http://localhost:4000/testing-your-application/why"&gt;&lt;span class="postbody"&gt;(△)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt; &lt;/li&gt;&lt;li&gt; &lt;p&gt;&lt;a href="http://localhost:4000/merb-more"&gt;Merb More&lt;/a&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;a href="http://localhost:4000/merb-more/authentication"&gt;인증&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span&gt;&lt;span&gt;&lt;a href="http://localhost:4000/getting-started/controllers"&gt;&lt;span class="postbody"&gt;(○)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/merb-more/mailer"&gt;메일러&lt;/a&gt;&lt;span&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/validations"&gt;&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/merb-more/caching"&gt;캐싱&lt;/a&gt;&lt;span&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/validations"&gt;&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/merb-more/exceptions"&gt;예외처리&lt;/a&gt;&lt;span&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/validations"&gt;&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/merb-more/slices"&gt;슬라이스&lt;/a&gt;&lt;span&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/validations"&gt;&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt; &lt;/li&gt;&lt;li&gt; &lt;p&gt;&lt;a href="http://localhost:4000/recipes"&gt;레시피&lt;/a&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;a href="http://localhost:4000/recipes/simple-blog"&gt;간단한 블로그&lt;/a&gt;&lt;span&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/validations"&gt;&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/recipes/blog-slice"&gt;블로그 슬라이스 만들기&lt;/a&gt;&lt;span&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/validations"&gt;&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt; &lt;/li&gt;&lt;li&gt; &lt;p&gt;&lt;a href="http://localhost:4000/deployment"&gt;배치&lt;/a&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;a href="http://localhost:4000/deployment/passenger"&gt;Passenger&lt;/a&gt;&lt;a href="http://localhost:4000/testing-your-application/why"&gt;&lt;span class="postbody"&gt;(△)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/deployment/nginx"&gt;nginx&lt;/a&gt;&lt;a href="http://localhost:4000/testing-your-application/why"&gt;&lt;span class="postbody"&gt;(△)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/deployment/jruby"&gt;JRuby 와 Glassfish&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span&gt;&lt;span&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/validations"&gt;&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/deployment/bundle"&gt;어플리케이션 번들링&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span&gt;&lt;span&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/validations"&gt;&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt; &lt;/li&gt;&lt;/ol&gt;  &lt;ul id="appendices"&gt;&lt;li&gt; &lt;p&gt;&lt;a href="http://localhost:4000/appendix"&gt;부록&lt;/a&gt;&lt;/p&gt;  &lt;ol&gt;&lt;li&gt;&lt;a href="http://localhost:4000/appendix/hints-tips"&gt;힌트와 팁/Tips&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span&gt;&lt;span&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/validations"&gt;&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/appendix/slices"&gt;사용가능한 슬라이스들&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span&gt;&lt;span&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/validations"&gt;&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://localhost:4000/appendix/gems"&gt;유용한 Gem들&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span&gt;&lt;span&gt;&lt;a href="http://localhost:4000/interacting-with-the-database/validations"&gt;&lt;span class="postbody"&gt;(X)&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt; &lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-4132779244713675239?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4132779244713675239'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4132779244713675239'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/12/merb-book.html' title='오픈소스 merb-book 한국어 번역'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_HbRZwpPnFNs/SUvTN7Z2e-I/AAAAAAAAAUk/zcf_ChK_9-4/s72-c/merb.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-7817701904340632331</id><published>2008-12-17T20:21:00.003+09:00</published><updated>2008-12-17T20:33:33.087+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='idea'/><title type='text'>garage sale like notes</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HbRZwpPnFNs/SUjjZafYopI/AAAAAAAAAUA/B6C9-chMQSE/s1600-h/omz:software_sketchbox.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 254px; height: 190px;" src="http://4.bp.blogspot.com/_HbRZwpPnFNs/SUjjZafYopI/AAAAAAAAAUA/B6C9-chMQSE/s320/omz:software_sketchbox.png" alt="" id="BLOGGER_PHOTO_ID_5280720588839101074" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HbRZwpPnFNs/SUjjZBxweUI/AAAAAAAAAT4/EkWu8tBzyjI/s1600-h/Scribble.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 197px; height: 320px;" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/SUjjZBxweUI/AAAAAAAAAT4/EkWu8tBzyjI/s320/Scribble.png" alt="" id="BLOGGER_PHOTO_ID_5280720582205274434" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img style="width: 489px; height: 343px;" src="http://farm4.static.flickr.com/3275/3114628217_fe72831a40.jpg" alt="onenote.png" title="onenote.png" align="bottom" /&gt;&lt;br /&gt;&lt;br /&gt;iPhone, and desktop notes are hard to see them all in a big picture as Roam said.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HbRZwpPnFNs/SUjgwGCld4I/AAAAAAAAATw/4X04TKjkTGM/s1600-h/garage_sale.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_HbRZwpPnFNs/SUjgwGCld4I/AAAAAAAAATw/4X04TKjkTGM/s320/garage_sale.jpg" alt="" id="BLOGGER_PHOTO_ID_5280717679951705986" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-7817701904340632331?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7817701904340632331'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7817701904340632331'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/12/garage-sale-like-notes.html' title='garage sale like notes'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HbRZwpPnFNs/SUjjZafYopI/AAAAAAAAAUA/B6C9-chMQSE/s72-c/omz:software_sketchbox.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-4920217953825639561</id><published>2008-12-17T18:54:00.009+09:00</published><updated>2008-12-17T19:17:44.616+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby 3d'/><title type='text'>3D desktop and ruby</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HbRZwpPnFNs/SUjO0bK9bdI/AAAAAAAAATg/mNNTdiXviUY/s1600-h/apple_3d_desktop_patent.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 226px;" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/SUjO0bK9bdI/AAAAAAAAATg/mNNTdiXviUY/s320/apple_3d_desktop_patent.png" alt="" id="BLOGGER_PHOTO_ID_5280697963134152146" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;As &lt;a href="http://www.macrumors.com/2008/12/11/apple-exploring-3d-desktop-and-application-interfaces/"&gt;the rumor&lt;/a&gt; says, it is obvious that Apple is developing next OSX. 3D environment is the critical difference. Bumptop desktop could be similar with it. Trends are really clear. Wiimote, Jeff Han's Ted demo, and Ubuntu Compiz fusion. The new era of HCI has come. But there're little apps which are appropriate with these environments. Adobe launched AIR, and it is still early for general users. But it is certain that adoptions are growing.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HbRZwpPnFNs/SUjPB_hT7hI/AAAAAAAAATo/zZdWbs2AyAg/s1600-h/k3_lglass_gallery3.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 256px;" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/SUjPB_hT7hI/AAAAAAAAATo/zZdWbs2AyAg/s320/k3_lglass_gallery3.gif" alt="" id="BLOGGER_PHOTO_ID_5280698196229877266" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now, we see java 3d OS. Where is shining, rich ruby desktop environment! Do we need to learn Air to mimic 3d actions?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-4920217953825639561?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4920217953825639561'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4920217953825639561'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/12/3d-desktop-and-ruby.html' title='3D desktop and ruby'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HbRZwpPnFNs/SUjO0bK9bdI/AAAAAAAAATg/mNNTdiXviUY/s72-c/apple_3d_desktop_patent.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-6253699675228688388</id><published>2008-12-09T19:16:00.001+09:00</published><updated>2008-12-09T19:33:55.048+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='idea'/><title type='text'>morganstanley - Presentation from Web 2.0 Summit</title><content type='html'>&lt;div style="width: 425px; text-align: left;" id="__ss_725248"&gt;&lt;a style="margin: 12px 0pt 3px; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; display: block; text-decoration: underline;" href="http://www.slideshare.net/hblodget/mary-meeker-web-20-presentation-presentation?type=powerpoint" title="Mary Meeker Web 2.0 Presentation"&gt;Mary Meeker Web 2.0 Presentation&lt;/a&gt;&lt;a style="left: 0px ! important; top: 0px ! important;" title="Adblock Plus로 이 객체를 차단하려면 여기를 누르십시오." class="abp-objtab-03433276582795671 visible" href="http://static.slideshare.net/swf/ssplayer2.swf?doc=techtrendsweb2110508-1225933600339539-9&amp;amp;stripped_title=mary-meeker-web-20-presentation-presentation"&gt;&lt;/a&gt;&lt;a style="left: 0px ! important; top: 0px ! important;" title="Adblock Plus로 이 객체를 차단하려면 여기를 누르십시오." class="abp-objtab-03433276582795671 visible" href="http://static.slideshare.net/swf/ssplayer2.swf?doc=techtrendsweb2110508-1225933600339539-9&amp;amp;stripped_title=mary-meeker-web-20-presentation-presentation"&gt;&lt;/a&gt;&lt;object style="margin: 0px;" height="355" width="425"&gt;&lt;param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=techtrendsweb2110508-1225933600339539-9&amp;amp;stripped_title=mary-meeker-web-20-presentation-presentation"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=techtrendsweb2110508-1225933600339539-9&amp;amp;stripped_title=mary-meeker-web-20-presentation-presentation" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size: 11px; font-family: tahoma,arial; height: 26px; padding-top: 2px;"&gt;View SlideShare &lt;a style="text-decoration: underline;" href="http://www.slideshare.net/hblodget/mary-meeker-web-20-presentation-presentation?type=powerpoint" title="View Mary Meeker Web 2.0 Presentation on SlideShare"&gt;presentation&lt;/a&gt; or &lt;a style="text-decoration: underline;" href="http://www.slideshare.net/upload?type=powerpoint"&gt;Upload&lt;/a&gt; your own. (tags: &lt;a style="text-decoration: underline;" href="http://slideshare.net/tag/trends"&gt;trends&lt;/a&gt; &lt;a style="text-decoration: underline;" href="http://slideshare.net/tag/web"&gt;web&lt;/a&gt;)&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Motorola hired 350 people for Android.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-6253699675228688388?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/6253699675228688388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/6253699675228688388'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/12/morganstanley-presentation-from-web-20.html' title='morganstanley - Presentation from Web 2.0 Summit'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-3264801318514453226</id><published>2008-12-05T12:23:00.000+09:00</published><updated>2009-01-17T09:13:06.111+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='idea'/><title type='text'>Paul Hughes: Design Thinking's photostream</title><content type='html'>&lt;object width="400" height="300"&gt; &lt;param name="flashvars" value="&amp;offsite=true&amp;amp;lang=en-us&amp;page_show_url=%2Fphotos%2Fpaulhughes%2Fshow%2F&amp;page_show_back_url=%2Fphotos%2Fpaulhughes%2F&amp;user_id=21296916@N03&amp;jump_to="&gt;&lt;/param&gt; &lt;param name="movie" value="http://www.flickr.com/apps/slideshow/show.swf?v=63961"&gt;&lt;/param&gt; &lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/slideshow/show.swf?v=63961" allowFullScreen="true" flashvars="&amp;offsite=true&amp;amp;lang=en-us&amp;page_show_url=%2Fphotos%2Fpaulhughes%2Fshow%2F&amp;page_show_back_url=%2Fphotos%2Fpaulhughes%2F&amp;user_id=21296916@N03&amp;jump_to=" width="400" height="300"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-3264801318514453226?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3264801318514453226'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3264801318514453226'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/12/paul-hughes-design-thinkings.html' title='Paul Hughes: Design Thinking&apos;s photostream'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-6186433616531761639</id><published>2008-12-03T20:43:00.007+09:00</published><updated>2009-01-02T13:39:44.301+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='idea'/><title type='text'>look, see, imagine</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Recently I've read "The Back of the Napkin". And Here is what I'm thinking.&lt;br /&gt;I think it is really hard to see the big picture in these days. There are just too many informations to catch up.&lt;br /&gt;&lt;img style="max-width: 800px;" src="http://lh5.ggpht.com/_HbRZwpPnFNs/STZLRiSA12I/AAAAAAAAASY/lWeuWHTB2-Y/%5BUNSET%5D.jpg?imgmax=800" /&gt;&lt;br /&gt;&lt;br /&gt;We're gathering informations by emails, RSS, twitter, conversations and so on. But have you really gone through all the star-marked articles? Well, I haven't.&lt;br /&gt;&lt;br /&gt;&lt;img style="max-width: 800px;" src="http://lh4.ggpht.com/_HbRZwpPnFNs/STZLYoq3zzI/AAAAAAAAASc/mNEfHJgCuec/%5BUNSET%5D.jpg?imgmax=800" /&gt;&lt;br /&gt;&lt;br /&gt;And there are web apps that makes me do extra things. Some apps look promising to me except I don't have a mac.&lt;br /&gt;&lt;div class="youtube-video"&gt;&lt;a style="left: 0px ! important; top: 0px ! important;" title="Adblock Plus로 이 객체를 차단하려면 여기를 누르십시오." class="abp-objtab-0058575608755113806 visible ontop" href="http://www.youtube.com/v/i_ncr1Ee9e8&amp;amp;rel=0&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;/a&gt;&lt;a style="left: 0px ! important; top: 0px ! important;" title="Adblock Plus로 이 객체를 차단하려면 여기를 누르십시오." class="abp-objtab-0058575608755113806 visible ontop" href="http://www.youtube.com/v/i_ncr1Ee9e8&amp;amp;rel=0&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;/a&gt;&lt;a style="left: 0px ! important; top: 0px ! important;" title="Adblock Plus로 이 객체를 차단하려면 여기를 누르십시오." class="abp-objtab-0058575608755113806 visible ontop" href="http://www.youtube.com/v/i_ncr1Ee9e8&amp;amp;rel=0&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;/a&gt;&lt;a style="left: 0px ! important; top: 0px ! important;" title="Adblock Plus로 이 객체를 차단하려면 여기를 누르십시오." class="abp-objtab-0058575608755113806 visible ontop" href="http://www.youtube.com/v/i_ncr1Ee9e8&amp;amp;rel=0&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;/a&gt;&lt;a style="left: 0px ! important; top: 0px ! important;" title="Adblock Plus로 이 객체를 차단하려면 여기를 누르십시오." class="abp-objtab-0058575608755113806 visible ontop" href="http://www.youtube.com/v/i_ncr1Ee9e8&amp;amp;rel=0&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;/a&gt;&lt;a style="left: 0px ! important; top: 0px ! important;" title="Adblock Plus로 이 객체를 차단하려면 여기를 누르십시오." class="abp-objtab-029854344656011766 visible ontop" href="http://www.youtube.com/v/i_ncr1Ee9e8&amp;amp;rel=0&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;/a&gt;&lt;a style="left: 0px ! important; top: 0px ! important;" title="Adblock Plus로 이 객체를 차단하려면 여기를 누르십시오." class="abp-objtab-029854344656011766 visible ontop" href="http://www.youtube.com/v/i_ncr1Ee9e8&amp;amp;rel=0&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;/a&gt;&lt;a style="left: 0px ! important; top: 0px ! important;" title="Adblock Plus로 이 객체를 차단하려면 여기를 누르십시오." class="abp-objtab-029854344656011766 visible ontop" href="http://www.youtube.com/v/i_ncr1Ee9e8&amp;amp;rel=0&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;/a&gt;&lt;a style="left: 0px ! important; top: 0px ! important;" title="Adblock Plus로 이 객체를 차단하려면 여기를 누르십시오." class="abp-objtab-029854344656011766 visible ontop" href="http://www.youtube.com/v/i_ncr1Ee9e8&amp;amp;rel=0&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;/a&gt;&lt;object height="344" width="425"&gt;&lt;param value="http://www.youtube.com/v/i_ncr1Ee9e8&amp;amp;rel=0&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1" name="movie"&gt; &lt;param value="true" name="allowFullScreen"&gt; &lt;embed allowfullscreen="true" type="application/x-shockwave-flash" src="http://www.youtube.com/v/i_ncr1Ee9e8&amp;amp;rel=0&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;feature=player_embedded&amp;amp;fs=1" height="344" width="425"&gt;&lt;/embed&gt; &lt;/object&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;After reading Alan Greenspun's "The Age of Turbulence", I'm sure that the global economy's speed is really fast like  light. It's out of control in this hot, flat, crowded world even for FRB.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;How can we catch up all these informations? May be, no one can. But they only pay their attentions on something meaningful to them. &lt;a href="http://www.mckinseyquarterly.com/Googles_view_on_the_future_of_business_An_interview_with_CEO_Eric_Schmidt_2229?pagenum=1#interactive_google_schmidt"&gt;As Eric Schmidt says&lt;/a&gt;, most of us focus on the head, not the tail. Why? Because there is so little time to spend on reading, studying, and even eating. Most of people do what they have been doing. But there are specific needs. And they start to google it or to digg it. They already have established their information sources. It could be friends, social networking sites,  ranking sites, or a RSS reader. Here it comes, "Look, see, imagine".&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HbRZwpPnFNs/STdXyEXjJCI/AAAAAAAAASw/gMWIV4c3FWY/s1600-h/long-tail-graph.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 198px; height: 143px;" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/STdXyEXjJCI/AAAAAAAAASw/gMWIV4c3FWY/s400/long-tail-graph.gif" alt="" id="BLOGGER_PHOTO_ID_5275782006165414946" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HbRZwpPnFNs/STdblaTawFI/AAAAAAAAAS4/o95P80Mvz84/s1600-h/multitouch-jeff_han.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 190px; height: 142px;" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/STdblaTawFI/AAAAAAAAAS4/o95P80Mvz84/s400/multitouch-jeff_han.jpg" alt="" id="BLOGGER_PHOTO_ID_5275786186761879634" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I don't have enough room to post every data that I've gathered. And it would consume a lot of ink and papers. Why there is no software that help me to see the big picture?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-6186433616531761639?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/6186433616531761639/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/12/look-see-imagine_03.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/6186433616531761639'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/6186433616531761639'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/12/look-see-imagine_03.html' title='look, see, imagine'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_HbRZwpPnFNs/STZLRiSA12I/AAAAAAAAASY/lWeuWHTB2-Y/s72-c/%5BUNSET%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-783104891121474242</id><published>2008-11-20T13:37:00.001+09:00</published><updated>2008-11-20T18:38:45.585+09:00</updated><title type='text'>Comment on Google CEO Interview</title><content type='html'>&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;    &lt;br /&gt;    &lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;    1. 지금 구글은 안드로이드와 기존의 플랫폼을 연계, GPS를 활용한 광고 등을 사용하여 기기 자체는 거의 공짜로 공급하는 것을 생각중     &lt;br&gt;&lt;br /&gt; 2. 롱테일 관점에서 80%를 차지하는 부분이 더 가속화. 브랜드가 강화될 것. 물론 테일 부분도 놓치면 안됨 &lt;br&gt;&lt;br /&gt;3. 애플의 모바일미는 시기상조였음. 서비스 자체가 단조롭고 진짜로 도움이 되질 않음. 별반 다를게 없었던 것&lt;br&gt;&lt;br /&gt;4. 먼저 웹상에서 탄탄한 기반을 가지고 나서야 모바일 서비스의 의미가 있을 것임.&lt;br&gt;&lt;br /&gt;5. RFID, GPS, Sensor network 등이 갖춰졌을때 에릭슈미트가 이야기하는 서비스들이 나올 것. 그 전까지는 현재의 스마트폰이나 아이팟처럼 컨텐츠를 데스크탑에서 다운받아서 싱크하는 형태로 2-3년간 지속될 가능성이 큼.&lt;br&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div id="eu5x" style="padding: 1em 0pt; text-align: left;"&gt;&lt;img style="width: 502px; height: 422px;" src="http://docs.google.com/File?id=dgqskm5q_24frj9gngh_b"&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;6. 애플의 플랫폼이냐 구글의 플랫폼이냐는 좀 더 두고봐야 하겠지만 서비스가 웹상에서 먼저 정착이 되야 하므로 기다리면서 관망하는 것도 가능. (구글이 블로거를 인수하긴 했지만 블로깅에서는 워드프레스가 우위 )&lt;br&gt;&lt;br /&gt;7. 애플 아이폰이 선전하고 있으나 전체 마켓쉐어는 아직 멀었음. &lt;br&gt;&lt;br /&gt;8. 애플은 아이튠즈를 통한 어플리케이션 시장을 벌써 형성했음. 이에 반해 구글은 이제 막 안드로이드를 정착시켜나가야 하는 형태. 만약 구글이 노키아나 삼성, 모토롤라를 아우르는 협력을 끌어내어 안드로이드를 장착시킨다면 이야기가 달라짐. &lt;br&gt;&lt;br /&gt;&lt;ul&gt;&lt;/ul&gt;&lt;br /&gt;9. 위의 경우는 쉽지 않을 것. 각 업체들이 원하는 바를 통합시키는 것에 대한 시간이 걸릴 것. 그런면에서 애플이 타이밍이나 속도면에서 우위임.&lt;br&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-783104891121474242?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/783104891121474242/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/11/comment-on-google-ceo-interview_9417.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/783104891121474242'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/783104891121474242'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/11/comment-on-google-ceo-interview_9417.html' title='Comment on Google CEO Interview'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-6735965590896248869</id><published>2008-08-22T13:40:00.001+09:00</published><updated>2008-08-22T13:40:23.622+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sprout'/><title type='text'>me.com simple UI</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;&lt;img height='283' width='406' src='http://lh5.ggpht.com/jaigouk/SK5BibMdlWI/AAAAAAAAANc/hFGUU8TUkG8/%5BUNSET%5D.png' style='max-width: 800px;'/&gt;&lt;br/&gt;&lt;br/&gt;&lt;img height='283' width='407' src='http://lh5.ggpht.com/jaigouk/SK5BvrQAKMI/AAAAAAAAANg/JPMgdUvTPNc/%5BUNSET%5D.png' style='max-width: 800px;'/&gt;&lt;br/&gt;&lt;br/&gt;&lt;img height='284' width='409' src='http://lh5.ggpht.com/jaigouk/SK5B8kMIPRI/AAAAAAAAANk/3Pu0Elwe924/%5BUNSET%5D.png' style='max-width: 800px;'/&gt;&lt;br/&gt;&lt;br/&gt;&lt;img height='273' width='406' src='http://lh3.ggpht.com/jaigouk/SK5CHC4QcFI/AAAAAAAAANo/OGeJ3Llcock/%5BUNSET%5D.png' style='max-width: 800px;'/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Well, on my ubuntu 8.04 file attachment was not working properly. It seems that the UI is so simple that it even makes me feels paying for this app is expensive. &lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-6735965590896248869?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/6735965590896248869/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/08/mecom-simple-ui.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/6735965590896248869'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/6735965590896248869'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/08/mecom-simple-ui.html' title='me.com simple UI'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/jaigouk/SK5BibMdlWI/AAAAAAAAANc/hFGUU8TUkG8/s72-c/%5BUNSET%5D.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-2251870316425298682</id><published>2008-08-22T07:47:00.013+09:00</published><updated>2009-01-17T09:12:03.204+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><title type='text'>Rails 2.1 OSX Finder like ColumnNav.</title><content type='html'>&lt;img id="BLOGGER_PHOTO_ID_5237110930105117042" alt="" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/SK30pL47KXI/AAAAAAAAAL4/v-F_3LfWXlk/s400/ColumNav.png" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" border="0" /&gt;original google code : http://columnav.googlecode.com/svn/trunk/index.html&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;b&gt;Update(22/8/2008)&lt;/b&gt;:&lt;br /&gt;Since ResponseHeader was "applicatoin/json &lt;b&gt;;utf8&lt;/b&gt; ",&lt;br /&gt;The original code does not work.&lt;br /&gt;&lt;br /&gt;in columnav.js,&lt;br /&gt;&lt;i&gt;&lt;u&gt;Before&lt;/u&gt;:&lt;/i&gt;&lt;br /&gt;var contentType = o.getResponseHeader['Content-Type'];&lt;br /&gt;      if ('application/json' == contentType.replace(/\s+$/,'')) {&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;u&gt;After:&lt;/u&gt;&lt;/i&gt;&lt;br /&gt;var contentType = o.getResponseHeader['Content-Type'];&lt;br /&gt;      var compareString = contentType.replace(/\s+$/,'')&lt;br /&gt;      if (compareString.include('application/json')) {&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;                                                        &lt;br /&gt;&lt;br /&gt;It was not easy to implement "finder" with extjs. And furthermore, my codes were getting ugly. Almost hard to see. So I abandoned Extjs on the user-view. I've decided to use it on admin pages.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;ColumNav is a hierarchical menu implementation utilizing Bill Scott's &lt;a href="http://developer.yahoo.com/yui/"&gt;Yahoo UI&lt;/a&gt; &lt;a href="http://billwscott.com/carousel/"&gt;Carousel component&lt;/a&gt;. Content is loaded from an unordered list and displayed in a scrollable viewport, similar to Column View in the &lt;a href="http://en.wikipedia.org/wiki/Image:Finder1.png"&gt;Mac OS X Finder&lt;/a&gt;.&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Features include:&lt;/strong&gt;&lt;/p&gt;&lt;strong&gt; &lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;infinite extensibility using Ajax to build sub-menus&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;instantiation from DOM or JSON data sources&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;a highly customizable look and feel using CSS&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;support for multiple columns&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;support for keyboard-only navigation (&lt;kbd&gt;CTRL&lt;/kbd&gt; + arrow keys)&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;cross-browser compatibility&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;strong&gt;&lt;br /&gt;App/views/Categories/index.html&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre rows="15" class="javascript:nogutter:collapse" name="code" cols="40"&gt;&lt;br /&gt;&lt;% content_for :head do%&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;%= stylesheet_link_tag 'cssbits_notice' %&gt;&lt;br /&gt; &lt;%= stylesheet_link_tag 'columnav', 'columnav_apply' %&gt;&lt;br /&gt; &lt;%= javascript_include_tag :defaults %&gt;&lt;br /&gt; &lt;%= javascript_include_tag "columnav/yui/yahoo-min" %&gt;&lt;br /&gt; &lt;%= javascript_include_tag "columnav/yui/utilities" %&gt;&lt;br /&gt; &lt;%= javascript_include_tag "columnav/yui/container_core-min" %&gt;&lt;br /&gt;  &lt;br /&gt; &lt;%= javascript_include_tag "columnav/carousel_min" %&gt;&lt;br /&gt; &lt;%= javascript_include_tag "columnav/columnav" %&gt;&lt;br /&gt; &lt;%= javascript_include_tag "columnav/columnav_json_parsing" %&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;% javascript_tag do %&gt;&lt;br /&gt; try { document.execCommand('BackgroundImageCache', false, true); } catch(e) {}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; function init() {&lt;br /&gt;     var cn_cfg = {&lt;br /&gt;       numVisible: 3,&lt;br /&gt;       prevElement: 'columnav-prev',&lt;br /&gt;       datasource: '/categories/columntree/1.json'&lt;br /&gt;     };&lt;br /&gt;     var cn = new YAHOO.extension.ColumNav('columnav', cn_cfg);&lt;br /&gt; }&lt;br /&gt; YAHOO.util.Event.addListener(window, 'load', init);&lt;br /&gt;&lt;% end %&gt;&lt;br /&gt;  &lt;br /&gt;&lt;% end %&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="prevButton"&gt;&lt;br /&gt; &lt;a href="javascript:void(0)" id="columnav-prev"&gt;&amp;lt; back&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div id="columnav" class="carousel-component"&gt;&lt;br /&gt; &lt;div class="carousel-clip-region"&gt;&lt;br /&gt;   &lt;ul class="carousel-list"&gt;&lt;br /&gt;   &lt;/ul&gt;&lt;br /&gt; &lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;App/controllers/Categories_controller.rb&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;pre rows="15" class="ruby:nogutter:collapse" name="code" cols="40"&gt;&lt;br /&gt;&lt;br /&gt;def columntree(id = params[:id])&lt;br /&gt; categories = Category.find_all_by_parent_id(id)&lt;br /&gt;&lt;br /&gt; data = get_tree(categories, id)&lt;br /&gt; respond_to do |format|&lt;br /&gt;   format.json { render :text =&gt; data[0].to_json, :layout =&gt; false  }&lt;br /&gt; end &lt;br /&gt;end  &lt;br /&gt;&lt;br /&gt;                        &lt;br /&gt;def get_tree(categories, parent_id) &lt;br /&gt;   parent = Category.find_by_id(parent_id)&lt;br /&gt;   data = Array.new&lt;br /&gt;   data.concat([ "ul" =&gt; insert(categories, parent) ])&lt;br /&gt;  return data &lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;def insert(categories, parent)&lt;br /&gt; result = Array.new&lt;br /&gt; result.concat(["li" =&gt; insert_data(categories, parent) ])&lt;br /&gt;return result[0]&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;def insert_data(categories, parent)&lt;br /&gt; iterated = Array.new&lt;br /&gt;categories.each { |category|&lt;br /&gt;    if !category.leaf?   &lt;br /&gt;    iterated.concat(["a" =&gt; {"#text" =&gt; category.text, "@href" =&gt; "/categories/columntree/"+category.id.to_s+".json", "@rel" =&gt; "ajax"}, "id" =&gt; category.id]) # "@rel" =&gt; "ajax" 면 폴더로 인식.&lt;br /&gt;    else &lt;br /&gt;      iterated.concat(["a" =&gt; {"#text" =&gt; category.text, "@href" =&gt; "http://peepcode.com"}, "id" =&gt; category.id])  &lt;br /&gt;    end &lt;br /&gt;  }&lt;br /&gt;return iterated&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;app/models/category.rb&lt;br /&gt;&lt;br /&gt;&lt;pre rows="15" class="javascript:nogutter:collapse" name="code" cols="40"&gt;&lt;br /&gt;class Category &lt; dependent =""&gt; :nullify&lt;br /&gt; has_many :portfolios, :dependent =&gt; :nullify&lt;br /&gt;&lt;br /&gt; acts_as_nested_set&lt;br /&gt;&lt;br /&gt; validates_presence_of :text&lt;br /&gt;&lt;br /&gt;has_attached_file :photo,&lt;br /&gt; :styles =&gt; { :medium =&gt; "220x180#", :thumb =&gt; "100x82#" },&lt;br /&gt; :path =&gt; "#{RAILS_ROOT}/public/images/category_photos/:id/:style_:basename.:extension",&lt;br /&gt; :url =&gt; "/images/category_photos/:id/:style_:basename.:extension",&lt;br /&gt; :default_url =&gt; "/images/category_photos/missing.png",&lt;br /&gt; :whiny_thumbnails =&gt; true&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#liquid&lt;br /&gt;liquid_methods :text&lt;br /&gt;&lt;br /&gt;# extjs를 위한 코드임&lt;br /&gt;&lt;br /&gt; def self.root_nodes&lt;br /&gt;   find(:all, :conditions =&gt; 'parent_id IS NULL')&lt;br /&gt; end&lt;br /&gt;&lt;br /&gt; def self.find_children(start_id = nil)&lt;br /&gt;   start_id.to_i == 0 ? root_nodes : find(start_id).direct_children&lt;br /&gt; end&lt;br /&gt; &lt;br /&gt; def children&lt;br /&gt;   Category.find_all_by_parent_id(self.id)&lt;br /&gt; end&lt;br /&gt;&lt;br /&gt; def self.find_level1&lt;br /&gt;  find_all_by_parent_id(1)&lt;br /&gt; end&lt;br /&gt;    &lt;br /&gt;  def leaf&lt;br /&gt;   unknown? || children_count == 0&lt;br /&gt; end&lt;br /&gt;&lt;br /&gt; def leaf?&lt;br /&gt;    unknown? || children_count == 0&lt;br /&gt; end&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; def to_json_with_leaf(options = {})&lt;br /&gt;   self.to_json_without_leaf(options.merge(:methods =&gt; :leaf))&lt;br /&gt; end&lt;br /&gt; alias_method_chain :to_json, :leaf&lt;br /&gt; private&lt;br /&gt;end&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-2251870316425298682?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/2251870316425298682/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/08/rails-21-osx-finder-like-columnnav.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/2251870316425298682'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/2251870316425298682'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/08/rails-21-osx-finder-like-columnnav.html' title='Rails 2.1 OSX Finder like ColumnNav.'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_HbRZwpPnFNs/SK30pL47KXI/AAAAAAAAAL4/v-F_3LfWXlk/s72-c/ColumNav.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-2963869003600693015</id><published>2008-08-19T20:00:00.001+09:00</published><updated>2008-08-19T20:02:59.388+09:00</updated><title type='text'>business-model-innovation-matter</title><content type='html'>&lt;div style="width: 425px; text-align: left;" id="__ss_546052"&gt;&lt;a style="margin: 12px 0pt 3px; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; display: block; text-decoration: underline;" href="http://www.slideshare.net/Alex.Osterwalder/business-model-innovation-matter?src=embed" title="Business Model Innovation Matters"&gt;Business Model Innovation Matters&lt;/a&gt;&lt;object style="margin: 0px;" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=businessmodelinnovationmatters-1218145513554762-9&amp;amp;stripped_title=business-model-innovation-matter"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=businessmodelinnovationmatters-1218145513554762-9&amp;amp;stripped_title=business-model-innovation-matter" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size: 11px; font-family: tahoma,arial; height: 26px; padding-top: 2px;"&gt;View SlideShare &lt;a style="text-decoration: underline;" href="http://www.slideshare.net/Alex.Osterwalder/business-model-innovation-matter?src=embed" title="View Business Model Innovation Matters on SlideShare"&gt;presentation&lt;/a&gt; or &lt;a style="text-decoration: underline;" href="http://www.slideshare.net/upload?src=embed"&gt;Upload&lt;/a&gt; your own. (tags: &lt;a style="text-decoration: underline;" href="http://slideshare.net/tag/osterwalder"&gt;osterwalder&lt;/a&gt; &lt;a style="text-decoration: underline;" href="http://slideshare.net/tag/alex"&gt;alex&lt;/a&gt;)&lt;/div&gt;&lt;/div&gt;&lt;img style="visibility: hidden; width: 0px; height: 0px;" src="http://counters.gigya.com/wildfire/IMP/CXNID=2000002.11NXC/bT*xJmx*PTEyMTkxNDM1MzA3ODImcHQ9MTIxOTE*MzUzNzc*MiZwPTEwMTkxJmQ9Jm49Jmc9Mg==.gif" border="0" width="0" height="0" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-2963869003600693015?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/2963869003600693015/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/08/business-model-innovation-matter.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/2963869003600693015'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/2963869003600693015'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/08/business-model-innovation-matter.html' title='business-model-innovation-matter'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-8238171290131378082</id><published>2008-08-14T20:18:00.003+09:00</published><updated>2009-01-17T09:12:03.204+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='merb'/><category scheme='http://www.blogger.com/atom/ns#' term='sprout'/><title type='text'>SproutCore !!</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;a href="http://3.bp.blogspot.com/_HbRZwpPnFNs/SKQUybqj1TI/AAAAAAAAAK8/705n4EzlR1s/s1600-h/sprout_test.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img id="BLOGGER_PHOTO_ID_5234331523563640114" alt="" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/SKQUybqj1TI/AAAAAAAAAK8/705n4EzlR1s/s400/sprout_test.png" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_HbRZwpPnFNs/SKQUyzRLp8I/AAAAAAAAALE/zOCucMelPiU/s1600-h/welcome.png" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img id="BLOGGER_PHOTO_ID_5234331529899648962" alt="" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/SKQUyzRLp8I/AAAAAAAAALE/zOCucMelPiU/s400/welcome.png" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;For about 2 weeks, I studied and struggled to use extjs on my recent project.&lt;br /&gt;As time goes, It became a mess. Because of javascript codes that are not organized well. For example, I wanted to make a browser like Finder which is default file browser on OSX. I had to find some way embed erb code in javascript(I used extscaffold plugin and I personally added some codes) By using extjs It was so hard that I almost thought it is time to move on. And I clicked on Sprout and dug into it while searching for snippets on google search results. I barely knew about beauty of it by the time I saw the test screen. You better see it by yourself. It's really awesome.&lt;br /&gt;&lt;br /&gt;But one thing that bothers me is that it still does not support IE6, and IE7. I think it would take 3 or 4 months to be stable. And there will be "Merb in Action". It would be great to use Sproutcore with Merb. :)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-8238171290131378082?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/8238171290131378082/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/08/sproutcore.html#comment-form' title='2개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8238171290131378082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8238171290131378082'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/08/sproutcore.html' title='SproutCore !!'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_HbRZwpPnFNs/SKQUybqj1TI/AAAAAAAAAK8/705n4EzlR1s/s72-c/sprout_test.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-4010723581234021421</id><published>2008-08-07T06:29:00.003+09:00</published><updated>2008-08-22T10:38:50.237+09:00</updated><title type='text'>interesting ted.com video.</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;&lt;div class='youtube-video'&gt;&lt;object height='285' width='432' align='middle' classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0' id='VE_Player'&gt;&lt;param name='movie' value='http://static.videoegg.com/ted2/flash/loader.swf'&gt; &lt;/param&gt;&lt;param name='FlashVars' value='bgColor=FFFFFF&amp;amp;file=http://static.videoegg.com/ted/movies/KevinKelly_2007P-embed-EG_high.flv&amp;amp;autoPlay=false&amp;amp;fullscreenURL=http://static.videoegg.com/ted/flash/fullscreen.html&amp;amp;forcePlay=false&amp;amp;logo=&amp;amp;allowFullscreen=true'&gt; &lt;/param&gt;&lt;param name='quality' value='high'&gt; &lt;/param&gt;&lt;param name='allowScriptAccess' value='always'&gt; &lt;/param&gt;&lt;param name='bgcolor' value='#FFFFFF'&gt; &lt;/param&gt;&lt;param name='scale' value='noscale'&gt; &lt;/param&gt;&lt;param name='wmode' value='window'&gt; &lt;/param&gt;&lt;embed height='285' width='432' align='middle' src='http://static.videoegg.com/ted2/flash/loader.swf' flashvars='bgColor=FFFFFF&amp;amp;file=http://static.videoegg.com/ted/movies/KevinKelly_2007P-embed-EG_high.flv&amp;amp;autoPlay=false&amp;amp;fullscreenURL=http://static.videoegg.com/ted/flash/fullscreen.html&amp;amp;forcePlay=false&amp;amp;logo=&amp;amp;allowFullscreen=true' quality='high' allowscriptaccess='always' bgcolor='#FFFFFF' scale='noscale' wmode='window' name='VE_Player' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer'&gt; &lt;/embed&gt;  &lt;/object&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-4010723581234021421?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/4010723581234021421/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/08/interesting-tedcom-video.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4010723581234021421'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4010723581234021421'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/08/interesting-tedcom-video.html' title='interesting ted.com video.'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-1716953560171547243</id><published>2008-07-22T14:23:00.001+09:00</published><updated>2008-07-22T14:24:38.853+09:00</updated><title type='text'>404 fetching http://gems.datamapper.org/yaml</title><content type='html'>&lt;code&gt;&lt;br /&gt;$ sudo gem sources -r http://gems.datamapper.org&lt;br /&gt;Bulk updating Gem source index for: http://gems.rubyforge.org/&lt;br /&gt;ERROR:  While executing gem ... (Gem::RemoteSourceException)&lt;br /&gt;HTTP Response 404 fetching http://gems.datamapper.org/yaml&lt;br /&gt;&lt;br /&gt;$ sudo nano ~/.gemrc&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-1716953560171547243?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/1716953560171547243/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/07/404-fetching-httpgemsdatamapperorgyaml.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1716953560171547243'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1716953560171547243'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/07/404-fetching-httpgemsdatamapperorgyaml.html' title='404 fetching http://gems.datamapper.org/yaml'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-8514986238560729181</id><published>2008-07-22T07:10:00.002+09:00</published><updated>2009-01-17T09:12:03.204+09:00</updated><title type='text'>Capistrano, git, rails again.</title><content type='html'>set :use_sudo, false&lt;br /&gt;# ====================================================&lt;br /&gt;# CUSTOM OPTIONS&lt;br /&gt;# ====================================================&lt;br /&gt;set :user, "deploy"&lt;br /&gt;set :runner, user&lt;br /&gt;set :application, "go.go.com"&lt;br /&gt;set :domain, "xx.xx.xx.xx."&lt;br /&gt;&lt;br /&gt;role :app, application&lt;br /&gt;role :web, application&lt;br /&gt;role :db,  application, :primary =&gt; true&lt;br /&gt;&lt;br /&gt;# ====================================================&lt;br /&gt;# DATABASE OPTIONS&lt;br /&gt;# ====================================================&lt;br /&gt;set :rails_env,       "production"&lt;br /&gt;&lt;br /&gt;# ====================================================&lt;br /&gt;# DEPLOY TO&lt;br /&gt;# ====================================================&lt;br /&gt;set :deploy_to, "/home/#{user}/public/#{application}"&lt;br /&gt;&lt;br /&gt;# ====================================================&lt;br /&gt;# REPOSITORY&lt;br /&gt;# ====================================================&lt;br /&gt;set :scm, :git&lt;br /&gt;set :deploy_via,  :remote_cache&lt;br /&gt;set :repository,  "ssh://deploy@xx.xx.xx.xx:xxxx/var/git/ext_kocm.git"&lt;br /&gt;set :repository_cache, "git_cache"&lt;br /&gt;&lt;br /&gt;# ====================================================&lt;br /&gt;# REPOSITORY&lt;br /&gt;# ====================================================&lt;br /&gt;set :ssh_options, { :forward_agent =&gt; true }&lt;br /&gt;default_run_options[:pty] = true&lt;br /&gt;set :port, 30003 #ssh port&lt;br /&gt;&lt;br /&gt;# ====================================================&lt;br /&gt;# Tasks&lt;br /&gt;# ====================================================&lt;br /&gt;namespace :deploy do&lt;br /&gt;  desc "Restarting mod_rails with restart.txt"&lt;br /&gt;  task :restart, :roles =&gt; :app, :except =&gt; {:no_release =&gt; true} do&lt;br /&gt;    run "touch ${current_path}/tmp/restart.txt"&lt;br /&gt;  end&lt;br /&gt; &lt;br /&gt;  [:start, :stop].each do |t|&lt;br /&gt;    desc "#{t} task is a no-op with modrails"&lt;br /&gt;    task t, :roles =&gt; :app do; end&lt;br /&gt;  end&lt;br /&gt;end&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-8514986238560729181?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8514986238560729181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8514986238560729181'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/07/capistrano-git-rails-again.html' title='Capistrano, git, rails again.'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-7040950511429623005</id><published>2008-07-08T00:44:00.004+09:00</published><updated>2008-07-08T00:56:24.401+09:00</updated><title type='text'>Ubuntu Hardy Intel graphics dual monitor on LG XNote LW25</title><content type='html'>1. xorg.conf&lt;br /&gt;&lt;br /&gt;http://www.thinkwiki.org/wiki/Installing_Ubuntu_6.06.1_on_a_ThinkPad_R60e#Intel_945GM_with_the_xorg_Intel_driver&lt;br /&gt;&lt;br /&gt;2.&lt;br /&gt;&lt;pre&gt;&lt;code style="white-space: nowrap; color: rgb(73, 89, 136); background-color: white;"&gt;$  xrandr -q &lt;/code&gt;&lt;br /&gt;&lt;code style="white-space: nowrap; color: rgb(73, 89, 136); background-color: white;"&gt;$ xrandr  --output LVDS --auto&lt;/code&gt;&lt;br /&gt;&lt;code style="white-space: nowrap; color: rgb(73, 89, 136); background-color: white;"&gt;$  xrandr --output LVDS --mode 1024x768 --output VGA --off &lt;/code&gt;&lt;br /&gt;&lt;code style="white-space: nowrap; color: rgb(73, 89, 136); background-color: white;"&gt;  $ xrandr --output VGA --right-of LVDS --mode 1024x768&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;3.&lt;br /&gt;&lt;a href="http://tombuntu.com/index.php/2008/03/25/toggle-compiz-with-fusion-icon-in-ubuntu-804/"&gt;compiz-switch howto&lt;/a&gt;&lt;br /&gt;&lt;em&gt;sudo apt-get install fusion-icon&lt;/em&gt;&lt;/pre&gt;&lt;p&gt;You can run Fusion-icon immediately by opening the &lt;strong&gt;Run Applications&lt;/strong&gt; dialog with Alt-F2 and typing &lt;em&gt;fusion-icon&lt;/em&gt;. Note that this will cause Compiz to restart.&lt;/p&gt; &lt;p&gt;To start Fusion-icon whenever you log in, add it to the &lt;strong&gt;Startup Programs&lt;/strong&gt; list in &lt;em&gt;System-&gt;Preferences-&gt;Sessions&lt;/em&gt;.&lt;/p&gt; &lt;p&gt;&lt;img src="http://tombuntu.com/wp-content/uploads/2008/03/fusion-icon2.jpg" alt="adding Fusion-icon to startup programs" /&gt;&lt;/p&gt; &lt;p&gt;I haven’t found a package for Ubuntu 7.10, but those who are waiting until the final 8.04 release to upgrade can also use the similar &lt;a href="http://tombuntu.com/index.php/2008/01/07/toggle-desktop-effects-with-compiz-switch/"&gt;Compiz-Switch application&lt;/a&gt; instead.&lt;/p&gt; &lt;p&gt;[&lt;strong&gt;update&lt;/strong&gt;] emiligene has posted a Ubuntu 7.10 repository for Fusion-icon in the comments:&lt;br /&gt;&lt;em&gt;deb http://ppa.launchpad.net/maco.m/ubuntu gutsy main restricted universe multiverse&lt;/em&gt;&lt;br /&gt;Thanks!&lt;/p&gt; &lt;p&gt;[&lt;strong&gt;update&lt;/strong&gt;] An anonymous commenter has pointed out that running &lt;em&gt;fusion-icon -n&lt;/em&gt; will prevent the application from unnecessarily restarting Compiz when it starts. You should use this command instead.&lt;/p&gt;&lt;pre&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-7040950511429623005?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.thinkwiki.org/wiki/Installing_Ubuntu_6.06.1_on_a_ThinkPad_R60e#Intel_945GM_with_the_xorg_Intel_driver' title='Ubuntu Hardy Intel graphics dual monitor on LG XNote LW25'/><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/7040950511429623005/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/07/ubuntu-hardy-intel-graphics-dual.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7040950511429623005'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7040950511429623005'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/07/ubuntu-hardy-intel-graphics-dual.html' title='Ubuntu Hardy Intel graphics dual monitor on LG XNote LW25'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-5188753662182981830</id><published>2008-02-08T03:36:00.000+09:00</published><updated>2008-02-09T15:56:28.186+09:00</updated><title type='text'>scrubyt on rails EOFERROR</title><content type='html'>&lt;div&gt;I'm using scrubyt on rails2.0.2 and development / running evironment is cygwin. &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;Problem :&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Everytime I run my extractor which is located lib and included in controller, &lt;/div&gt;&lt;div&gt;it runs properly just once. From second time, I saw EOFError and &lt;/div&gt;I've searched scrubyt forum. and included this file in lib. &lt;div&gt;&lt;br /&gt;----------------------------&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   line-height: 18px; font-family:verdana;font-size:13px;"&gt;&lt;br /&gt;&lt;pre style="background-color: rgb(238, 238, 238); padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; font-size: 11px; "&gt;&lt;code&gt;usr/lib/ruby/1.8/net/protocol.rb:133:in `sysread'&lt;br /&gt;/usr/lib/ruby/1.8/net/protocol.rb:133:in `rbuf_fill'&lt;br /&gt;/usr/lib/ruby/1.8/timeout.rb:56:in `timeout'&lt;br /&gt;/usr/lib/ruby/1.8/timeout.rb:76:in `timeout'&lt;br /&gt;/usr/lib/ruby/gems/1.8/gems/http_configuration-1.0.2/lib/http_configuration.rb:23:in `timeout'&lt;/code&gt;&lt;/pre&gt;&lt;/span&gt;&lt;/div&gt;----------------------------&lt;div&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;Why :&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;I've googled about this problem enough. The problem is not on rails, nor on ruby. It's mechanize.&lt;/span&gt; &lt;/div&gt;&lt;div&gt;&lt;a href="http://rubyforge.org/tracker/index.php?func=detail&amp;amp;aid=13319&amp;amp;group_id=1453&amp;amp;atid=5709"&gt;Here&lt;/a&gt; is the explanation about the bug.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="  white-space: pre;font-family:'Lucida Grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="  white-space: pre;font-family:'Lucida Grande';"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;Solve :&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="white-space: pre; font-family:'Lucida Grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;C:\cygwin\lib\ruby\gems\1.8\gems\scrubyt-0.3.4\lib\scrubyt\core\navigation\fetch_action.rb&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="white-space: pre; font-family:'Lucida Grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;I've added just one line to the fetch_action.rb&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="white-space: pre; font-family:'Lucida Grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="white-space: pre; font-family:'Lucida Grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;  module FetchAction     &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="white-space: pre; font-family:'Lucida Grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;@@current_doc_url = nil     &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="white-space: pre; font-family:'Lucida Grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;@@current_doc_protocol = nil     &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="white-space: pre; font-family:'Lucida Grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;@@base_dir = nil     &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="white-space: pre; font-family:'Lucida Grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;@@host_name = nil     &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="white-space: pre; font-family:'Lucida Grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;@@agent = WWW::Mechanize.new    &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="white-space: pre; font-family:'Lucida Grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; @@history = [] &lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 0, 0);"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="  font-weight: bold; white-space: pre;font-family:'Lucida Grande';"&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 0, 0);"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; @@agent.keep_alive = false&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="  white-space: pre;font-family:'Lucida Grande';font-size:12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-5188753662182981830?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/5188753662182981830/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/02/scrubyt-on-rails-eoferror.html#comment-form' title='2개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5188753662182981830'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5188753662182981830'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/02/scrubyt-on-rails-eoferror.html' title='scrubyt on rails EOFERROR'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-5390778459963643841</id><published>2008-02-07T16:16:00.001+09:00</published><updated>2008-02-07T17:49:54.348+09:00</updated><title type='text'>My gem list</title><content type='html'>&lt;div&gt;I'm developing rails app on cygwin environment. And these are the list of my gems.  mongrel and thin are really run differently. It seems monrel consumes more memory. So I poked thin server. The result was slightly dissapoint, because thin server was not stable and was not capable of handling large size file uploading.  Anyway it's a dilema.&lt;/div&gt;&lt;div&gt;update -- thin0.6.2 is ok with my app now. It's really fast and stable.&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;abstract (1.0.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;actionmailer (2.0.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;actionpack (2.0.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;activerecord (2.0.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;activeresource (2.0.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;activesupport (2.0.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;acts_as_ferret (0.4.3)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;archive-tar-minitar (0.5.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;archive-tarsimple (1.1.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;aws-s3 (0.4.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;beanstalk-client (0.6.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;builder (2.1.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;capistrano (2.1.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;capserverext (0.0.5)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;cgi_multipart_eof_fix (2.5.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;coderay (0.7.4.215)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;color (1.4.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;daemons (1.0.9)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;deprec (1.9.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;erubis (2.5.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;eventmachine (0.10.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;fastercsv (1.2.3)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;fastthread (1.0.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ferret (0.11.6)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;flickraw (0.4.4)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;flvtool2 (1.0.6)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;gchart (0.4.2, 0.4.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;gem_plugin (0.2.3)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;gemsonrails (0.7.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;geoip_city (0.1.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;gettext (1.10.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;googletranslate (0.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;highline (1.4.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;hobo (0.7.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;hoe (1.5.0, 1.4.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;hpricot (0.6)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;json_pure (1.1.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;mailfactory (1.2.3)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;mechanize (0.7.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;merb (0.5.3)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;mime-types (1.15)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;mini_magick (1.2.3)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;mocha (0.5.6)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;mongrel (1.1.3)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;mongrel_cluster (1.0.5)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;mongrel_send_file (0.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;needle (1.3.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;net-sftp (1.1.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;net-ssh (1.1.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;oauth (0.2.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ParseTree (2.1.1, 1.7.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ParseTreeReloaded (0.0.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;pdf-writer (1.1.7)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;piston (1.3.3)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;rack (0.2.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;radiant (0.6.4)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;rails (2.0.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;railsmachine (1.0.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;rake (0.8.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;RedCloth (3.0.4)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;reliable-msg (1.1.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;rfacebook (0.9.8)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;right_aws (1.4.3)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;right_http_connection (1.2.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;rme2day (1.0.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;rubigen (1.1.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ruby-debug (0.10.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ruby-debug-base (0.10.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ruby-hmac (0.3.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ruby-openid (2.0.3)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ruby-prof (0.5.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ruby-yadis (0.3.4)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ruby2ruby (1.1.8, 1.1.6)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;rubyforge (0.4.4)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;rubygems-update (1.0.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;RubyInline (3.6.3)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;RubyInlineAcceleration (0.0.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;rubyzip (0.9.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ruport (1.4.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ruport-util (0.12.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;rvideo (0.9.3)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;scrapi (1.2.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;scrubyt (0.3.4)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;simple-daemon (0.1.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;slave (1.2.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;sources (0.0.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;springnote_resources (0.5)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;sqlite3-ruby (1.2.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;superredcloth (1.160)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;syntax (1.0.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;termios (0.9.4)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;thin (0.6.1)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;tidy (1.1.2)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;transaction-simple (1.4.0)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;tzinfo (0.3.6)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;uuid (1.0.4)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;xml-simple (1.0.11)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-5390778459963643841?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/5390778459963643841/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/02/my-gem-list.html#comment-form' title='1개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5390778459963643841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5390778459963643841'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/02/my-gem-list.html' title='My gem list'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-4846799000972986737</id><published>2008-02-01T06:15:00.000+09:00</published><updated>2008-02-01T06:17:14.071+09:00</updated><title type='text'>backgroudrb small tip.</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(42, 42, 42); font-family: Verdana; font-size: 23px; "&gt;gerate worker thread (&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Verdana; font-size: 23px; "&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 102, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;B&lt;/span&gt;&lt;/span&gt;&lt;code style="font-size: 1.1em; "&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 102, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;oo&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 102, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt; is capitalize&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(42, 42, 42); font-family: Verdana; font-size: 23px; "&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 153, 0);"&gt;d&lt;/span&gt;&lt;/span&gt;)&lt;strong&gt;&lt;code style="font-size: 1.1em; "&gt; &lt;/code&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(42, 42, 42); font-family: Verdana; font-size: 23px; "&gt;&lt;strong&gt;&lt;code style="font-size: 1.1em; "&gt;$ script/generate worker &lt;span class="Apple-style-span" style="font-family: verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 0, 0);"&gt;B&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;oo&lt;/code&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(42, 42, 42); font-family: 굴림; font-size: 25px; font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: 12px; white-space: pre; "&gt;http://jacqueschirag.wordpress.com/2007/09/12/setting-up-backgrounddrb/&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-4846799000972986737?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/4846799000972986737/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/02/backgroudrb-small-tip.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4846799000972986737'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4846799000972986737'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/02/backgroudrb-small-tip.html' title='backgroudrb small tip.'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-410060143396612948</id><published>2008-01-27T03:55:00.000+09:00</published><updated>2008-01-27T03:57:20.766+09:00</updated><title type='text'>geoip_city</title><content type='html'>&lt;div&gt;tested on cygwin. runs smoothly..&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;original article :&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: 12px; white-space: pre; "&gt;http://blog.hungrymachine.com/2007/10/31/super-fast-ip-to-lat-lng-in-rails-part-2&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'lucida grande'; font-size: 12px; "&gt;&lt;div class="CodeRay" style="border-top-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(169, 169, 169); border-bottom-color: rgb(169, 169, 169); border-left-color: rgb(169, 169, 169); border-right-width: 1px; border-right-style: dotted; border-right-color: rgb(169, 169, 169); background-color: rgb(169, 169, 169); margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; position: relative; font-size: 14px; overflow-x: auto; overflow-y: auto; width: 657px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; z-index: 1; "&gt;&lt;div class="code" style="width: 100%; "&gt;&lt;pre style="white-space: pre-wrap; word-wrap: break-word; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: rgb(238, 238, 238); overflow-x: auto; overflow-y: auto; font: normal normal normal 12px/normal 'bitstream vera sans mono', monaco, 'lucida console', 'courier new', courier, serif; margin-top: 0.9em; margin-right: 0px; margin-bottom: 0.9em; margin-left: 0px; padding-top: 8px; padding-right: 8px; padding-bottom: 8px; padding-left: 8px; background-position: initial initial; "&gt;wget http&lt;span style="color: rgb(170, 102, 0); "&gt;:/&lt;/span&gt;/www.maxmind.com/download/geoip/api/c/&lt;span style="color: rgb(0, 51, 102); font-weight: bold; "&gt;GeoIP&lt;/span&gt;.tar.gz tar -zxvf &lt;span style="color: rgb(0, 51, 102); font-weight: bold; "&gt;GeoIP&lt;/span&gt;.tar.gz cd &lt;span style="color: rgb(0, 51, 102); font-weight: bold; "&gt;GeoIP&lt;/span&gt; ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install  wget http&lt;span style="color: rgb(170, 102, 0); "&gt;:/&lt;/span&gt;/rubyforge.org/frs/download.php/&lt;span style="color: rgb(0, 0, 221); font-weight: bold; "&gt;27077&lt;/span&gt;/geoip_city&lt;span style="color: rgb(102, 0, 238); font-weight: bold; "&gt;-0.1&lt;/span&gt;.gem sudo gem install geoip_city&lt;span style="color: rgb(102, 0, 238); font-weight: bold; "&gt;-0.1&lt;/span&gt;.gem wget http&lt;span style="color: rgb(170, 102, 0); "&gt;:/&lt;/span&gt;/www.maxmind.com/download/geoip/database/&lt;span style="color: rgb(0, 51, 102); font-weight: bold; "&gt;GeoLiteCity&lt;/span&gt;.dat.gz gunzip &lt;span style="color: rgb(0, 51, 102); font-weight: bold; "&gt;GeoLiteCity&lt;/span&gt;.dat.gz sudo mkdir &lt;span style="background-color: rgb(255, 240, 255); "&gt;&lt;span style="color: rgb(68, 0, 68); "&gt;/&lt;/span&gt;&lt;span style="color: rgb(136, 0, 136); "&gt;usr&lt;/span&gt;&lt;span style="color: rgb(68, 0, 68); "&gt;/&lt;/span&gt;&lt;/span&gt;local/share/&lt;span style="color: rgb(0, 51, 102); font-weight: bold; "&gt;GeoIP&lt;/span&gt; sudo mv &lt;span style="color: rgb(0, 51, 102); font-weight: bold; "&gt;GeoLiteCity&lt;/span&gt;.dat &lt;span style="background-color: rgb(255, 240, 255); "&gt;&lt;span style="color: rgb(68, 0, 68); "&gt;/&lt;/span&gt;&lt;span style="color: rgb(136, 0, 136); "&gt;usr&lt;/span&gt;&lt;span style="color: rgb(68, 0, 68); "&gt;/&lt;/span&gt;&lt;/span&gt;local/share/&lt;span style="color: rgb(0, 51, 102); font-weight: bold; "&gt;GeoIP&lt;/span&gt;/&lt;span style="color: rgb(0, 51, 102); font-weight: bold; "&gt;GeoLiteCity&lt;/span&gt;.dat&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;Then the ruby part:&lt;div class="CodeRay" style="border-top-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(169, 169, 169); border-bottom-color: rgb(169, 169, 169); border-left-color: rgb(169, 169, 169); border-right-width: 1px; border-right-style: dotted; border-right-color: rgb(169, 169, 169); background-color: rgb(169, 169, 169); margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; position: relative; font-size: 14px; overflow-x: auto; overflow-y: auto; width: 657px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; z-index: 1; "&gt;&lt;div class="code" style="width: 100%; "&gt;&lt;pre style="white-space: pre-wrap; word-wrap: break-word; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: rgb(238, 238, 238); overflow-x: auto; overflow-y: auto; font: normal normal normal 12px/normal 'bitstream vera sans mono', monaco, 'lucida console', 'courier new', courier, serif; margin-top: 0.9em; margin-right: 0px; margin-bottom: 0.9em; margin-left: 0px; padding-top: 8px; padding-right: 8px; padding-bottom: 8px; padding-left: 8px; background-position: initial initial; "&gt;&gt;&gt; require &lt;span style="background-color: rgb(255, 240, 240); "&gt;&lt;span style="color: rgb(119, 17, 0); "&gt;'&lt;/span&gt;&lt;span style="color: rgb(221, 34, 0); "&gt;geoip_city&lt;/span&gt;&lt;span style="color: rgb(119, 17, 0); "&gt;'&lt;/span&gt;&lt;/span&gt; &gt;&gt; g = &lt;span style="color: rgb(0, 51, 102); font-weight: bold; "&gt;GeoIPCity&lt;/span&gt;::&lt;span style="color: rgb(0, 51, 102); font-weight: bold; "&gt;Database&lt;/span&gt;.new(&lt;span style="background-color: rgb(255, 240, 240); "&gt;&lt;span style="color: rgb(119, 17, 0); "&gt;'&lt;/span&gt;&lt;span style="color: rgb(221, 34, 0); "&gt;/usr/local/share/GeoIP/GeoLiteCity.dat&lt;/span&gt;&lt;span style="color: rgb(119, 17, 0); "&gt;'&lt;/span&gt;&lt;/span&gt;) &gt;&gt; res = g.look_up(&lt;span style="background-color: rgb(255, 240, 240); "&gt;&lt;span style="color: rgb(119, 17, 0); "&gt;'&lt;/span&gt;&lt;span style="color: rgb(221, 34, 0); "&gt;4.2.2.2&lt;/span&gt;&lt;span style="color: rgb(119, 17, 0); "&gt;'&lt;/span&gt;&lt;/span&gt;) &gt;&gt; puts &lt;span style="background-color: rgb(255, 240, 240); "&gt;&lt;span style="color: rgb(119, 17, 0); "&gt;"&lt;/span&gt;&lt;span style="color: rgb(221, 34, 0); "&gt;lat: &lt;/span&gt;&lt;span style="background-color: rgb(255, 240, 240); "&gt;&lt;span style="color: rgb(119, 17, 0); "&gt;#{&lt;/span&gt;res[&lt;span style="color: rgb(170, 102, 0); "&gt;:latitude&lt;/span&gt;]&lt;span style="color: rgb(119, 17, 0); "&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(221, 34, 0); "&gt; lng: &lt;/span&gt;&lt;span style="background-color: rgb(255, 240, 240); "&gt;&lt;span style="color: rgb(119, 17, 0); "&gt;#{&lt;/span&gt;res[&lt;span style="color: rgb(170, 102, 0); "&gt;:longitude&lt;/span&gt;]&lt;span style="color: rgb(119, 17, 0); "&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(119, 17, 0); "&gt;"&lt;/span&gt;&lt;/span&gt; lat: &lt;span style="color: rgb(102, 0, 238); font-weight: bold; "&gt;38.0&lt;/span&gt; lng: &lt;span style="color: rgb(102, 0, 238); font-weight: bold; "&gt;-97.0&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-410060143396612948?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/410060143396612948/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/01/geoipcity.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/410060143396612948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/410060143396612948'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/01/geoipcity.html' title='geoip_city'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-1960545936507721940</id><published>2008-01-25T23:06:00.000+09:00</published><updated>2009-01-17T09:14:31.726+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='openid2'/><category scheme='http://www.blogger.com/atom/ns#' term='rails'/><category scheme='http://www.blogger.com/atom/ns#' term='open_id_authentication'/><title type='text'>cygwin, Rails2, OpenID 2</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HbRZwpPnFNs/R5nxgOumgyI/AAAAAAAAAKw/bCWcZ7G8yHw/s1600-h/openid+worked1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/R5nxgOumgyI/AAAAAAAAAKw/bCWcZ7G8yHw/s400/openid+worked1.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5159420384141280034" /&gt;&lt;/a&gt;&lt;div style="text-align: center;"&gt;Hi, I've been googling about a week to solve a ruby-openid problem. And found a working example on Rama McIntosh's blog. http://myutil.com/2007/12/29/openid-2-0-2-with-rails-2-0-2&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;At first, I thought rails Ticket #10604 patch worked. But it was more complicated than that. Since Rails, ruby-openid, and open_id_authentication plugin versions were not consistent. And Rama McIntosh went through all. You can find Dr. Nick’s example application fully ported to rails 2.0.2.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Here is my development environment. &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;------------------------------------------------------------&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;LG LW25 advanced laptop IntelCore2 T5600, Mem 2G&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;XP Pro version2002 SP2&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;Cygwin + CygPutty &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;Ruby ruby 1.8.6 (2007-03-13 patchlevel 0) [i386-cygwin]&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;Rails 2.0.2&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;ruby-openid (2.0.3)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;rake (0.8.1)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;mongrel (1.1.3)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;mongrel_cluster (1.0.5)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;ruby-yadis (0.3.4)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;app db : sqlite3&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;------------------------------------------------------------&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Besides his README, some extra typing was needed to run the app.&lt;/div&gt;&lt;div&gt;1.&lt;span class="Apple-style-span" style="color: rgb(255, 102, 0);"&gt; svn co http://drnicwilliams.com/svn/openid/demos/apps/openidauth_multiopenid/trunk openidauth_multiopen&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 102, 0);"&gt;id&lt;/span&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;2. Do not erase some svn directories because he made some rake tasks related with svn.&lt;/div&gt;&lt;div&gt;3. rake freeze TWICE!&lt;/div&gt;&lt;div&gt;4. mkdir log&lt;/div&gt;&lt;div&gt;5. require_gem =&gt; &lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span"  style="font-size:x-large;"&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 102, 0);"&gt;gem&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;openidauth_multiopenid/vendor/gems/ruby-openid-1.1.4/lib/openid/&lt;span class="Apple-style-span" style="color: rgb(255, 0, 0);"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;service.rb&lt;/span&gt;&lt;/span&gt;:7&lt;/div&gt;&lt;div&gt;openidauth_multiopenid/vendor/gems/ruby-openid-1.1.4/lib/openid/&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 0, 0);"&gt;discovery.rb&lt;/span&gt;&lt;/span&gt;:8:&lt;/div&gt;&lt;div&gt;6 rake db:create&lt;/div&gt;&lt;div&gt;7. gem install mocha&lt;/div&gt;&lt;div&gt;8. rake test&lt;/div&gt;&lt;div&gt;9. config/environment.rb&lt;/div&gt;&lt;div&gt;  config.action_controller.session = { :session_key =&gt; "_openidauth_multiopenid_session", :secret =&gt; "mocramagic" }&lt;/div&gt;&lt;div&gt;  &lt;/div&gt;&lt;div&gt;  Replace to other {key, secret} like this,&lt;/div&gt;&lt;div&gt;  &lt;/div&gt;&lt;div&gt;    config.action_controller.session = {&lt;/div&gt;&lt;div&gt;    :session_key =&gt; '_foo_session',&lt;/div&gt;&lt;div&gt;    :secret      =&gt; '4747ba80asdfqwertwertwee5y4365345ertf gadrtvrwebterwvd653b65tyt93c45cb53242eb43'&lt;/div&gt;&lt;div&gt;  }&lt;/div&gt;&lt;div&gt;10. mongrel_rails start!!&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-1960545936507721940?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/1960545936507721940/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/01/cygwin-rails2-openid-2.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1960545936507721940'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1960545936507721940'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/01/cygwin-rails2-openid-2.html' title='cygwin, Rails2, OpenID 2'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HbRZwpPnFNs/R5nxgOumgyI/AAAAAAAAAKw/bCWcZ7G8yHw/s72-c/openid+worked1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-2905451651421018947</id><published>2008-01-23T00:46:00.001+09:00</published><updated>2008-01-30T15:52:07.018+09:00</updated><title type='text'>IT WORKS!!!</title><content type='html'>How I deployed to my slice. &lt;div&gt;1. Peepcode tutorials &lt;/div&gt;&lt;div&gt;capistrano and git screencast helped me. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2.&lt;span class="Apple-style-span"  style="font-size:x-large;"&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 102, 0);"&gt;&lt;a href="http://jointheconversation.org/railsgit/"&gt;Scott Chacon's tutorial screencast.&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;He really help me out. Any one who's struggling with capistrano &amp;amp; git, I higly recommand his tutorial. I was able to deploy my app via Cygwin.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-2905451651421018947?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/2905451651421018947/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/01/it-works.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/2905451651421018947'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/2905451651421018947'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/01/it-works.html' title='IT WORKS!!!'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-2281778120784545854</id><published>2008-01-23T00:34:00.000+09:00</published><updated>2008-01-23T00:38:39.599+09:00</updated><title type='text'>IT'S PRODUCTION MODE!!</title><content type='html'>&lt;div&gt;1. In environment.rb, uncomment &lt;/div&gt;&lt;div&gt;RAILS_GEM_VERSION = '2.0.2' unless defined? RAILS_GEM_VERSION&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. deploy.rb&lt;/div&gt;&lt;div&gt;&lt;div&gt;set :mongrel_servers, 3&lt;/div&gt;&lt;div&gt;set :mongrel_port, xxxx&lt;/div&gt;&lt;div&gt;set :rails_env, 'production'&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. /u/apps/appname/current/config/mongrel_cluster.rb&lt;/div&gt;&lt;div&gt;&lt;div&gt;---&lt;/div&gt;&lt;div&gt;user: deploy&lt;/div&gt;&lt;div&gt;group: deploy&lt;/div&gt;&lt;div&gt;log_file: log/mongrel.log&lt;/div&gt;&lt;div&gt;cwd: /u/apps/appname/current&lt;/div&gt;&lt;div&gt;port: xxxx&lt;/div&gt;&lt;div&gt;environment: production&lt;/div&gt;&lt;div&gt;pid_file: tmp/pids/mongrel.pid&lt;/div&gt;&lt;div&gt;address: 127.0.0.1&lt;/div&gt;&lt;div&gt;servers: 3&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;4. cap deploy:migrate RAILS_ENV=production&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-2281778120784545854?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/2281778120784545854/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/01/its-production-mode.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/2281778120784545854'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/2281778120784545854'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/01/its-production-mode.html' title='IT&apos;S PRODUCTION MODE!!'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-8830386991043987409</id><published>2008-01-22T21:08:00.000+09:00</published><updated>2008-01-23T00:29:27.290+09:00</updated><title type='text'>grep mongrel pid</title><content type='html'>&lt;div&gt; ps -ef | grep mongrel&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;kill -9 xxx&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;OR&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(119, 119, 119); font-family: 굴림; line-height: 19px; "&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;ps aux | grep [m]ongrel&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(119, 119, 119); font-family: 굴림; line-height: 19px; "&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(119, 119, 119); font-family: 굴림; font-size: 26px; line-height: 19px;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;ps aux | grep [m]ongrel | awk '{ print $2 }' | xargs kill -9&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-8830386991043987409?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/8830386991043987409/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/01/grep-mongrel-pid.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8830386991043987409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8830386991043987409'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/01/grep-mongrel-pid.html' title='grep mongrel pid'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-4424465750347987614</id><published>2008-01-21T17:50:00.000+09:00</published><updated>2008-01-21T17:52:05.863+09:00</updated><title type='text'>ActiveRecord::StatementInvalid (Could not find table '</title><content type='html'>&lt;span class="Apple-style-span" style="color: rgb(27, 27, 27); font-family: Verdana; font-size: 19px; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; "&gt;&lt;pre ondblclick="with (this.style) { overflow = (overflow == 'auto' || overflow == '') ? 'visible' : 'auto' }" style="margin-top: 0px; margin-right: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; overflow-x: auto; overflow-y: auto; width: 100%; margin-bottom: 1.5em; "&gt;&lt;span class="co" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;ActiveRecord&lt;/span&gt;::&lt;span class="co" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;Base&lt;/span&gt;.allow_concurrency = &lt;span class="pc" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; color: rgb(139, 0, 0); "&gt;true&lt;/span&gt;&lt;/pre&gt;&lt;pre ondblclick="with (this.style) { overflow = (overflow == 'auto' || overflow == '') ? 'visible' : 'auto' }" style="margin-top: 0px; margin-right: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; overflow-x: auto; overflow-y: auto; width: 100%; margin-bottom: 1.5em; "&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: 'Lucida Grande'; font-size: 12px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; "&gt;http://blog.defv.be/2006/9/21/activerecord-ruby-and-threads&lt;/span&gt;&lt;/pre&gt;&lt;pre ondblclick="with (this.style) { overflow = (overflow == 'auto' || overflow == '') ? 'visible' : 'auto' }" style="margin-top: 0px; margin-right: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; overflow-x: auto; overflow-y: auto; width: 100%; margin-bottom: 1.5em; "&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: 'Lucida Grande'; font-size: 12px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; "&gt;http://blog.ardes.com/archives/2006/12&lt;/span&gt;&lt;/pre&gt;&lt;pre ondblclick="with (this.style) { overflow = (overflow == 'auto' || overflow == '') ? 'visible' : 'auto' }" style="margin-top: 0px; margin-right: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; overflow-x: auto; overflow-y: auto; width: 100%; margin-bottom: 1.5em; "&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: 'Lucida Grande'; font-size: 12px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px;"&gt;It's just amazing that the bug is still there...&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;script src="http://digg.com/tools/diggthis.js" type="text/javascript"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-4424465750347987614?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/4424465750347987614/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/01/activerecordstatementinvalid-could-not.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4424465750347987614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4424465750347987614'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/01/activerecordstatementinvalid-could-not.html' title='ActiveRecord::StatementInvalid (Could not find table &apos;'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-1042791796957487205</id><published>2008-01-18T09:18:00.000+09:00</published><updated>2008-01-21T16:44:10.598+09:00</updated><title type='text'>cygwin ssh.</title><content type='html'>&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 102, 0);"&gt;If you're using capistrano or webistrano and developing on cygwin environment, you better set server's ssh port to 22. Capistrano does not change it's port number when cap deploy:cold. I googled this problem for 3 days. And this is what I got so far.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;edit .git/hooks/pre-commit and comment out the following lines:&lt;/div&gt;&lt;div&gt;if (/\s$/) {&lt;/div&gt;&lt;div&gt;bad_line("trailing whitespace", $_);&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;below article was written by stevie, at capistrano : google groups.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;----------------------------------------------------------------&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;A better Cygwin package manager: &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;1. run setup.exe again, but this time use the GUI and install only &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;wget (if you're installing Cygwin on a bunch of machines, it would &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;probably be easier to install wget on one machine and then copy over &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;then necessary files for wget on the others so you're not having to &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;fire up the GUI on each machine) &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;2. get Stephen Jungels' apt-cyg and copy it into /bin:  wget &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;http://stephenjungels.com/jungels.net/projects/apt-cyg/apt-cyg &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;3. Now you can install any cygwin package with a "&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;apt-cyg install &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 102, 255);"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;package_name&gt;&lt;/package_name&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;".  *MUCH* easier than using that horrible GUI. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;----------------------------------------------------------------------------------&lt;/div&gt;&lt;div&gt;&lt;div&gt;one cent tips&lt;/div&gt;&lt;div&gt;---------------------------------------------------------------------------------&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. Can't see the welcome page?&lt;/div&gt;&lt;div&gt;sudo chown -R www-data:www-data /var/www/rails/learnkorean.kr/current&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. If you cannot deploy production mode, try this&lt;/div&gt;&lt;div&gt;%&gt; RAILS_ENV=production rake db:migrate&lt;/div&gt;&lt;div&gt;or&lt;/div&gt;&lt;div&gt;%&gt; set RAILS_ENV=production&lt;/div&gt;&lt;div&gt;%&gt; rake db:migrate&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-1042791796957487205?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/1042791796957487205/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/01/cygwin-ssh.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1042791796957487205'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1042791796957487205'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/01/cygwin-ssh.html' title='cygwin ssh.'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-3820255769097205540</id><published>2008-01-16T08:46:00.000+09:00</published><updated>2009-01-17T09:14:31.726+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rails'/><category scheme='http://www.blogger.com/atom/ns#' term='nginx'/><title type='text'>Gusty, Nginx, Rails and Mongrel_cluster howto</title><content type='html'>Here are the articles where I learned proper way to do this.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span"  style=" line-height: 23px; font-family:Helvetica;"&gt;&lt;a href="http://andrzejonsoftware.blogspot.com/2008/01/guide-to-deploying-rails-applications.html"&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 102, 0); "&gt;&lt;span class="Apple-style-span" style="font-weight: bold; "&gt;Andrzej Krzywda&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span"  style=" white-space: pre; font-family:'Lucida Grande';"&gt;&lt;a href="http://www.railsjitsu.com/installing-and-configuring-nginx-and-mongrel-for-rails"&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 102, 0); "&gt;&lt;span class="Apple-style-span" style="font-weight: bold; "&gt;railsjitsu&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://articles.slicehost.com/2007/11/29/ubuntu-gutsy-mongrel-clusters-and-surviving-a-reboot"&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 102, 0); "&gt;&lt;span class="Apple-style-span" style="font-weight: bold; "&gt;Slice host tutorial by PickledOnion &lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;sudo cp /usr/lib/ruby/gems/1.8/gems/mongrel_cluster-1.0.5/resources/mongrel_cluster /etc/init.d/mongrel_cluster&lt;br /&gt;&lt;br /&gt;Next, add a path statement to mongrel_cluster file just above the CONF_DIR variable:&lt;br /&gt;sudo vi /etc/init.d/mongrel_cluster&lt;br /&gt;&lt;br /&gt;PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local:/usr/local/sbin:/usr/local/bin&lt;br /&gt;USER=mongrel to &lt;span class="Apple-style-span" style="color: rgb(51, 51, 255);"&gt;USER=www-data&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;sudo chmod +x /etc/init.d/mongrel_cluster&lt;br /&gt;sudo update-rc.d mongrel_cluster defaults&lt;br /&gt;&lt;br /&gt;In our rails app directory we need to create our mongrel config and then symlink it to where our mongrel config directory located at /etc/mongrel_cluster.&lt;br /&gt;&lt;br /&gt;nano config/mongrel_cluster.yml&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 51, 255);"&gt;cwd: /var/www/rails/coredrill&lt;br /&gt;log_file: log/mongrel.log&lt;br /&gt;port: 8000&lt;br /&gt;environment: production&lt;br /&gt;group: www-data&lt;br /&gt;user: mongrel&lt;br /&gt;address: 127.0.0.1&lt;br /&gt;pid_file: tmp/pids/mongrel.pid&lt;br /&gt;servers: 3  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;ln -s /var/www/rails/coredrill/config/mongrel_cluster.yaml /etc/mongrel_cluster/coredrill.yaml&lt;br /&gt;&lt;br /&gt;Starting nginx: 2008/01/15 23:17:19 [warn] 3238#0: conflicting server&lt;br /&gt;name "coredrill.wowdns.com" on 37.208.125.80:80, ignored&lt;br /&gt;==&gt;&lt;br /&gt;You have to add this to your default vhost:&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-family:'lucida grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 0, 0);"&gt;&lt;span class="Apple-style-span"  style="font-family:'lucida grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;server_name _ *;&lt;br /&gt;listen 8080 default;   &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'lucida grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;&lt;br /&gt;&lt;br /&gt;Finally, check your vhost config.&lt;br /&gt;server&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'lucida grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;{ &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:'lucida grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'lucida grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt; listen &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'lucida grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;&lt;span class="Apple-style-span"  style=" ;font-family:Georgia;"&gt;37.208.125.80&lt;/span&gt;:80; =&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: rgb(255, 0, 0);"&gt;&lt;span class="Apple-style-span"  style="font-family:'lucida grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;  listen 8080;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'lucida grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;&lt;span class="Apple-style-span"  style="font-family:'lucida grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:'lucida grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;...&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'lucida grande';"&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;mongrel_rails start -d -e production -p 8000 -P log/mongrel8000.pid &lt;br /&gt;mongrel_rails start -d -e production -p 8001 -P log/mongrel8001.pid &lt;br /&gt;mongrel_rails cluster::start &lt;br /&gt;mongrel_cluster_ctl status&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-3820255769097205540?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/3820255769097205540/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/01/gusty-nginx-rails-howto.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3820255769097205540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3820255769097205540'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/01/gusty-nginx-rails-howto.html' title='Gusty, Nginx, Rails and Mongrel_cluster howto'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-4912689723677855558</id><published>2008-01-15T16:28:00.001+09:00</published><updated>2008-12-09T06:57:20.977+09:00</updated><title type='text'>another logo</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HbRZwpPnFNs/R4xgqL2XBpI/AAAAAAAAAKg/iVwlOaV-gEU/s1600-h/Core+Drill.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/R4xgqL2XBpI/AAAAAAAAAKg/iVwlOaV-gEU/s400/Core+Drill.png" alt="" id="BLOGGER_PHOTO_ID_5155601951283938962" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="http://digg.com/tools/diggthis.js" type="text/javascript"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-4912689723677855558?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/4912689723677855558/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/01/another-logo.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4912689723677855558'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4912689723677855558'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/01/another-logo.html' title='another logo'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HbRZwpPnFNs/R4xgqL2XBpI/AAAAAAAAAKg/iVwlOaV-gEU/s72-c/Core+Drill.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-4597605216053177002</id><published>2008-01-15T16:19:00.001+09:00</published><updated>2008-12-09T06:57:21.076+09:00</updated><title type='text'>Core Drill</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HbRZwpPnFNs/R4xe6L2XBoI/AAAAAAAAAKY/xi_uQAhrFCU/s1600-h/coredrill.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/R4xe6L2XBoI/AAAAAAAAAKY/xi_uQAhrFCU/s400/coredrill.jpg" alt="" id="BLOGGER_PHOTO_ID_5155600027138590338" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Well, I'm developing a site with my friend. My rails stack is on Xen(slicehost).&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Ubuntu 7.1.0 Gusty&lt;/li&gt;&lt;li&gt;NGINX&lt;/li&gt;&lt;li&gt;Mogrel_cluster&lt;/li&gt;&lt;li&gt;Capistrano&lt;/li&gt;&lt;li&gt;Rails2.0.2&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;script src="http://digg.com/tools/diggthis.js" type="text/javascript"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-4597605216053177002?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/4597605216053177002/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/01/core-drill.html#comment-form' title='1개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4597605216053177002'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4597605216053177002'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/01/core-drill.html' title='Core Drill'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HbRZwpPnFNs/R4xe6L2XBoI/AAAAAAAAAKY/xi_uQAhrFCU/s72-c/coredrill.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-8607855173067343283</id><published>2008-01-10T07:06:00.000+09:00</published><updated>2008-01-10T07:07:46.053+09:00</updated><title type='text'>one cent tip.</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: arial; font-size: 12px; "&gt;&lt;div&gt;Fount this from google groups&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; white-space: pre; "&gt;http://groups.google.com/group/rubyonrails-talk/browse_thread/thread/e0fcc4720ee59ba8/5bd3f77e610925b3%235bd3f77e610925b3&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt; I installed mini magick correctly and &lt;br /&gt;thumbnails are still not generated.&lt;/span&gt;&lt;script src="http://digg.com/tools/diggthis.js" type="text/javascript"&gt;&lt;/script&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: arial; font-size: 12px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: arial; font-size: 12px;"&gt;You need to have a 'parent_id' column in your photos table.  This one &lt;br /&gt;had me scratching my head for a few hours too until I stumbled across &lt;br /&gt;this requirement of the plugin. &lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-8607855173067343283?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/8607855173067343283/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/01/one-cent-tip.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8607855173067343283'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8607855173067343283'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/01/one-cent-tip.html' title='one cent tip.'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-5074908910018764255</id><published>2008-01-10T04:51:00.000+09:00</published><updated>2009-01-17T09:14:31.727+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rails'/><title type='text'>attachment_fu on Windows</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: 굴림; font-size: 14px; white-space: nowrap;"&gt;&lt;span class="Apple-style-span" style="font-family: arial; font-size: 19px; white-space: normal; "&gt;&lt;div class="code_foldbox"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: 12px; font-weight: normal; white-space: pre; "&gt;http://railsforum.com/viewtopic.php?id=6307&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="code_foldbox"&gt;&lt;b&gt;Code :   &lt;/b&gt;- &lt;a href="http://railsforum.com/viewtopic.php?id=6307#" onclick="document.getElementById('code_2').className='folded'; return false;" style="color: rgb(221, 0, 0); "&gt;fold&lt;/a&gt; - &lt;a href="http://railsforum.com/viewtopic.php?id=6307#" onclick="document.getElementById('code_2').className='unfolded'; return false;" style="color: rgb(221, 0, 0); "&gt;unfold&lt;/a&gt;&lt;div class="unfolded" id="code_2" style="border-top-width: 1px; border-top-style: solid; border-top-color: black; visibility: visible; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; font-family: monospace; white-space: pre; font-size: 9pt; height: auto; "&gt; &lt;div class="code-box"&gt;&lt;ol class="pretty-code" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; list-style-position: inside; overflow-x: auto; overflow-y: auto; width: 100%; max-height: 50em; font-family: monospace; font-size: 9pt; "&gt;&lt;li class="orow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: rgb(217, 234, 243); background-position: initial initial; "&gt;      def uploaded_data=(file_data)&lt;/li&gt;&lt;li class="erow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: white; background-position: initial initial; "&gt;        return nil if file_data.nil? || file_data.size == 0&lt;/li&gt;&lt;li class="orow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: rgb(217, 234, 243); background-position: initial initial; "&gt;        self.size = file_data.size&lt;/li&gt;&lt;li class="erow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: white; background-position: initial initial; "&gt;        self.content_type = file_data.content_type&lt;/li&gt;&lt;li class="orow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: rgb(217, 234, 243); background-position: initial initial; "&gt;        self.filename     = file_data.original_filename if respond_to?(:filename)&lt;/li&gt;&lt;li class="erow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: white; background-position: initial initial; "&gt;        if file_data.is_a?(StringIO)&lt;/li&gt;&lt;li class="orow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: rgb(217, 234, 243); background-position: initial initial; "&gt;          file_data.rewind&lt;/li&gt;&lt;li class="erow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: white; background-position: initial initial; "&gt;          self.temp_data = file_data.read&lt;/li&gt;&lt;li class="orow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: rgb(217, 234, 243); background-position: initial initial; "&gt;        else&lt;/li&gt;&lt;li class="erow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: white; background-position: initial initial; "&gt;          self.temp_path = file_data.path&lt;/li&gt;&lt;li class="orow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: rgb(217, 234, 243); background-position: initial initial; "&gt;        end&lt;/li&gt;&lt;li class="erow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: white; background-position: initial initial; "&gt;      end&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt; &lt;/div&gt;&lt;/div&gt;&lt;span class="puntext"&gt;and added conditionals for the size&lt;br /&gt;      &lt;/span&gt;&lt;br /&gt;&lt;div class="code_foldbox"&gt;&lt;b&gt;Code :   &lt;/b&gt;- &lt;a href="http://railsforum.com/viewtopic.php?id=6307#" onclick="document.getElementById('code_3').className='folded'; return false;" style="color: rgb(221, 0, 0); "&gt;fold&lt;/a&gt; - &lt;a href="http://railsforum.com/viewtopic.php?id=6307#" onclick="document.getElementById('code_3').className='unfolded'; return false;" style="color: rgb(221, 0, 0); "&gt;unfold&lt;/a&gt;&lt;div class="unfolded" id="code_3" style="border-top-width: 1px; border-top-style: solid; border-top-color: black; visibility: visible; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; font-family: monospace; white-space: pre; font-size: 9pt; height: auto; "&gt; &lt;div class="code-box"&gt;&lt;ol class="pretty-code" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; list-style-position: inside; overflow-x: auto; overflow-y: auto; width: 100%; max-height: 50em; font-family: monospace; font-size: 9pt; "&gt;&lt;li class="orow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: rgb(217, 234, 243); background-position: initial initial; "&gt;      def set_size_from_temp_path&lt;/li&gt;&lt;li class="erow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: white; background-position: initial initial; "&gt;          self.size = File.size(temp_path) if save_attachment? &amp;amp;&amp;amp; (self.size == 0 || self.size.nil?)&lt;/li&gt;&lt;li class="orow" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 1em; white-space: nowrap; background-image: initial; background-repeat: initial; background-attachment: initial; -webkit-background-clip: initial; -webkit-background-origin: initial; background-color: rgb(217, 234, 243); background-position: initial initial; "&gt;      end&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="white-space: nowrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="white-space: nowrap;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; font-size: 13px; white-space: normal; "&gt;&lt;div class="info" style="font-size: 0.9em; "&gt;&lt;div class="author" style="display: inline; "&gt;Posted by &lt;span class="name"&gt;Adam (Guest) &lt;/span&gt;&lt;/div&gt;&lt;div class="date" style="display: inline; "&gt;on 10.04.2007 01:34&lt;/div&gt;&lt;/div&gt;&lt;div class="text" style="font-size: 12px; "&gt;&lt;pre&gt;&lt;span class="Apple-style-span" style="font-family: 'Lucida Grande'; "&gt;http://www.ruby-forum.com/topic/99870&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;To get things working with S3 and windows, I changed:        def temp_data         if save_attachment?           f = File.new( temp_path )           f.binmode           return f.read         else           return nil         end       end (before, the method body was save_attachment? ? File.read( temp_path ) :  nil  ) &lt;/span&gt;&lt;/pre&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 굴림; white-space: pre;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-5074908910018764255?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/5074908910018764255/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/01/attachmentfu-on-windows.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5074908910018764255'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5074908910018764255'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/01/attachmentfu-on-windows.html' title='attachment_fu on Windows'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-1604923824558172454</id><published>2008-01-09T06:35:00.000+09:00</published><updated>2009-01-17T09:14:31.727+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='S3'/><category scheme='http://www.blogger.com/atom/ns#' term='rails'/><category scheme='http://www.blogger.com/atom/ns#' term='heroku'/><title type='text'>Rails2.0 and heroku the awesome rails app hosting</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HbRZwpPnFNs/R4P0LL2XBnI/AAAAAAAAAKQ/ZlsDyzlOYQU/s1600-h/heroku_import.JPG"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/R4P0LL2XBnI/AAAAAAAAAKQ/ZlsDyzlOYQU/s400/heroku_import.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5153230871638509170" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://heroku.com/images/core/thumb_edit.gif?1194386533"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px;" src="http://heroku.com/images/core/thumb_edit.gif?1194386533" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Check it out. It's free and looks cool. I was frustrated by googling free rails hosting all day. Of course there're many hosting sites with shining options. But for testing, it's too expensive. Anyway I found the heroku.com. With Rails2.0 and Amazon S3, this site will dominate all the other hosting sites. Why? because they'll support&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; &lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;a href="http://blog.heroku.com/archives/2007/12/22/gems_plugins_manager/"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;Gems &amp;amp; Plugins Manager&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt; which made me annoying.&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;There're also some screencasts. &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;So, for now you'd better freeze your gems by using Dr Nic's &lt;span class="Apple-style-span"   style="letter-spacing: -1px;font-family:'lucidamac bold';font-size:20;"&gt;Gems on Rails.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="font-weight: bold; letter-spacing: -1px;font-family:'lucidamac bold';font-size:20;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span"   style="font-weight: normal;font-family:'lucida grande';font-size:12;"&gt;&lt;p style="margin: 0px 0px 1.2em; line-height: 15px; font-size: 14px;"&gt;To install the plugin:&lt;/p&gt;&lt;pre style="margin: 1em 0px; padding: 10px 10px 2em; font-family: 'bitstream vera sans mono',monaco,'lucida console','courier new',courier,serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal; color: rgb(238, 238, 238); background-color: rgb(0, 0, 0); overflow-x: auto; width: 500px;"&gt;&gt; gem install gemsonrails &gt; cd rails-app-folder &gt; gemsonrails &lt;/pre&gt;&lt;p style="margin: 0px 0px 1.2em; line-height: 15px; font-size: 14px;"&gt;Usage:&lt;/p&gt;&lt;pre style="margin: 1em 0px; padding: 10px 10px 2em; font-family: 'bitstream vera sans mono',monaco,'lucida console','courier new',courier,serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal; color: rgb(238, 238, 238); background-color: rgb(0, 0, 0); overflow-x: auto; width: 500px;"&gt;rake gems:freeze   GEM=gem_to_freeze rake gems:link     GEM=gem_to_link rake gems:unfreeze GEM=gem_to_unfreeze_or_unlink&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span"   style="font-weight: normal; line-height: 15px;font-family:'lucida grande';font-size:13;"&gt;&lt;pre style="margin: 1em 0px; padding: 10px 10px 2em; font-family: 'bitstream vera sans mono',monaco,'lucida console','courier new',courier,serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal; color: rgb(238, 238, 238); background-color: rgb(0, 0, 0); overflow-x: auto; width: 500px;"&gt;gem install gemsonrails cd app-folder gemsonrails rake gems:freeze GEM=ruby-net-ldap&lt;/pre&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;(Though freezed gem does not work properly now)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-1604923824558172454?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/1604923824558172454/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2008/01/rails20-and-heroku-awesome-rails-app.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1604923824558172454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1604923824558172454'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2008/01/rails20-and-heroku-awesome-rails-app.html' title='Rails2.0 and heroku the awesome rails app hosting'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HbRZwpPnFNs/R4P0LL2XBnI/AAAAAAAAAKQ/ZlsDyzlOYQU/s72-c/heroku_import.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-3191130777599046087</id><published>2007-11-23T15:03:00.000+09:00</published><updated>2007-11-23T15:23:42.765+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3d Papervision3D'/><title type='text'>Papervision3D</title><content type='html'>&lt;strong&gt;&lt;a href="http://osflash.org/papervision3d" target="_blank"&gt;Papervision3D&lt;/a&gt;&lt;/strong&gt; is now part of the &lt;strong&gt;&lt;a href="http://osflash.org/" target="_blank"&gt;OSFlash&lt;/a&gt;&lt;/strong&gt; family.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://osflash.org/tutorials&lt;br /&gt;http://blog.papervision3d.org/&lt;br /&gt;http://aralbalkan.com/850&lt;br /&gt;&lt;br /&gt;&lt;a href="http://osflash.org/papervision3d"&gt;Papervision3D&lt;/a&gt; (also see &lt;a href="http://papervision3d.org/"&gt;PaperVision.org&lt;/a&gt;) is a high-performance 3D engine for Flash 8 and Flash 9. It was started and is led by &lt;a href="http://blog.noventaynueve.com/"&gt;Carlos Ulloa&lt;/a&gt; and the &lt;a href="http://blog.noventaynueve.com/2006/10/29/papervision3d-osflash/"&gt;process of open sourcing it&lt;/a&gt; began around the end of October, last year. Once open-sourced&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.rockonflash.com/demos/pv3d/macworld/demo/as3/index.html"&gt;3D Star Wars demo&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3 id="post-78"&gt;&lt;a href="http://blog.papervision3d.org/2007/10/04/tinks-papervision3d-effects-for-flex/" rel="bookmark" title="Permanent Link to Tink’s Papervision3D Effects for Flex"&gt;Tink’s Papervision3D Effects for Flex&lt;/a&gt;&lt;/h3&gt; integrating &lt;strong&gt;Papervision3D&lt;/strong&gt; with Flex in a clean and seamless way.&lt;div class="entry"&gt;&lt;div class="snap_preview"&gt; &lt;p&gt;Tink starts with &lt;strong&gt;&lt;a href="http://www.tink.ws/blog/files/flex/CubeExample.html" target="_blank"&gt;Cube&lt;/a&gt;&lt;/strong&gt;, &lt;strong&gt;&lt;a href="http://www.tink.ws/blog/files/flex/FlipExample.html" target="_blank"&gt;Flip&lt;/a&gt;&lt;/strong&gt;, &lt;strong&gt;&lt;a href="http://www.tink.ws/blog/files/flex/RotateExample.html" target="_blank"&gt;Rotate&lt;/a&gt;&lt;/strong&gt; and &lt;strong&gt;&lt;a href="http://www.tink.ws/blog/files/flex/ZoomExample.html" target="_blank"&gt;Zoom&lt;/a&gt;&lt;/strong&gt;, but most importantly he lays the foundation for anyone to do their own effects in a matter of minutes. Certainly the easiest way to incorporate 3D effects in your Flex application.&lt;/p&gt;&lt;h2&gt;&lt;a href="http://www.lfpug.com/pv3d-effects-for-flex/" rel="bookmark" title="Permanent Link: PV3D Effects for Flex"&gt;PV3D Effects for Flex&lt;/a&gt;&lt;/h2&gt;&lt;/div&gt;&lt;/div&gt;&lt;span style="font-family:Arial;"&gt;Presentation: &lt;a href="http://www.lfpug.com/presentations/2007_09_27_tink/PV3D_Effects_for_Flex.pdf"&gt;PDF&lt;/a&gt;.&lt;br /&gt;Source: see &lt;a href="http://www.tink.ws/blog/papervision3d-effects-for-flex-source/"&gt;Papervision3D Effects for Flex Source&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="http://digg.com/tools/diggthis.js" type="text/javascript"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-3191130777599046087?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/3191130777599046087/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/11/papervision3d.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3191130777599046087'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3191130777599046087'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/11/papervision3d.html' title='Papervision3D'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-3875064664125591563</id><published>2007-11-10T00:22:00.000+09:00</published><updated>2008-12-09T06:57:21.423+09:00</updated><title type='text'>like mac.. lol</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HbRZwpPnFNs/RzR70BTW-mI/AAAAAAAAAKI/oQk8Q_Pc8jA/s1600-h/%ED%98%84%EC%9E%AC+%EB%B0%94%ED%83%95%ED%99%94%EB%A9%B4.PNG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 622px; height: 388px;" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/RzR70BTW-mI/AAAAAAAAAKI/oQk8Q_Pc8jA/s400/%ED%98%84%EC%9E%AC+%EB%B0%94%ED%83%95%ED%99%94%EB%A9%B4.PNG" alt="" id="BLOGGER_PHOTO_ID_5130862009114884706" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script src="http://digg.com/tools/diggthis.js" type="text/javascript"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-3875064664125591563?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/3875064664125591563/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/11/like-mac-lol.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3875064664125591563'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3875064664125591563'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/11/like-mac-lol.html' title='like mac.. lol'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HbRZwpPnFNs/RzR70BTW-mI/AAAAAAAAAKI/oQk8Q_Pc8jA/s72-c/%ED%98%84%EC%9E%AC+%EB%B0%94%ED%83%95%ED%99%94%EB%A9%B4.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-3680981501934476794</id><published>2007-11-06T02:09:00.000+09:00</published><updated>2008-12-09T06:57:21.822+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='web2'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Oracle and rails. Begginers' error screen.</title><content type='html'>While I was doing db:migrate, I got this message. I've made several sites on the same db and typed db:migrate again.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HbRZwpPnFNs/Ry9Oz2ojbFI/AAAAAAAAAJw/H0dH68ZycVo/s1600-h/error+and+success.JPG"&gt;&lt;img style="cursor: pointer; width: 413px; height: 268px;" src="http://4.bp.blogspot.com/_HbRZwpPnFNs/Ry9Oz2ojbFI/AAAAAAAAAJw/H0dH68ZycVo/s400/error+and+success.JPG" alt="" id="BLOGGER_PHOTO_ID_5129405153344187474" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ORA-00955 Error. You can solve this problem by drop table xxxx_seq;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HbRZwpPnFNs/Ry9PamojbGI/AAAAAAAAAJ4/oYilnabQ0jA/s1600-h/drop.JPG"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/Ry9PamojbGI/AAAAAAAAAJ4/oYilnabQ0jA/s400/drop.JPG" alt="" id="BLOGGER_PHOTO_ID_5129405819064118370" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Yes. It is a begginers' mistake. And now it works fine with Oracle after&lt;br /&gt;dropping ****_seq table.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HbRZwpPnFNs/Ry9QkWojbHI/AAAAAAAAAKA/MCmLMomjJ-0/s1600-h/fine.JPG"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/Ry9QkWojbHI/AAAAAAAAAKA/MCmLMomjJ-0/s400/fine.JPG" alt="" id="BLOGGER_PHOTO_ID_5129407086079470706" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-3680981501934476794?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/3680981501934476794/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/11/oracle-and-rails-begginers-error-screen.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3680981501934476794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3680981501934476794'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/11/oracle-and-rails-begginers-error-screen.html' title='Oracle and rails. Begginers&apos; error screen.'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HbRZwpPnFNs/Ry9Oz2ojbFI/AAAAAAAAAJw/H0dH68ZycVo/s72-c/error+and+success.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-5518671122053273251</id><published>2007-10-28T01:41:00.001+09:00</published><updated>2008-12-09T06:57:22.579+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><title type='text'>-_-)/  I want a macbook...</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HbRZwpPnFNs/RyNqimoja_I/AAAAAAAAAJA/WtVEO_B2uCo/s1600-h/%EC%8A%AC%EB%9D%BC%EC%9D%B4%EB%93%9C1.JPG"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/RyNqimoja_I/AAAAAAAAAJA/WtVEO_B2uCo/s400/%EC%8A%AC%EB%9D%BC%EC%9D%B4%EB%93%9C1.JPG" alt="" id="BLOGGER_PHOTO_ID_5126057943596493810" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HbRZwpPnFNs/RyNqjGojbAI/AAAAAAAAAJI/AK9hFMiUAG8/s1600-h/%EC%8A%AC%EB%9D%BC%EC%9D%B4%EB%93%9C2.JPG"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/RyNqjGojbAI/AAAAAAAAAJI/AK9hFMiUAG8/s400/%EC%8A%AC%EB%9D%BC%EC%9D%B4%EB%93%9C2.JPG" alt="" id="BLOGGER_PHOTO_ID_5126057952186428418" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HbRZwpPnFNs/RyNqjWojbBI/AAAAAAAAAJQ/GQVh_kDXd7w/s1600-h/%EC%8A%AC%EB%9D%BC%EC%9D%B4%EB%93%9C3.JPG"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/RyNqjWojbBI/AAAAAAAAAJQ/GQVh_kDXd7w/s400/%EC%8A%AC%EB%9D%BC%EC%9D%B4%EB%93%9C3.JPG" alt="" id="BLOGGER_PHOTO_ID_5126057956481395730" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/bLLhchumuXc&amp;amp;rel=1"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/bLLhchumuXc&amp;amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HbRZwpPnFNs/RyNqjmojbCI/AAAAAAAAAJY/bKp4WGiaWRM/s1600-h/%EC%8A%AC%EB%9D%BC%EC%9D%B4%EB%93%9C4.jpg"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/RyNqjmojbCI/AAAAAAAAAJY/bKp4WGiaWRM/s400/%EC%8A%AC%EB%9D%BC%EC%9D%B4%EB%93%9C4.jpg" alt="" id="BLOGGER_PHOTO_ID_5126057960776363042" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HbRZwpPnFNs/RyNqj2ojbDI/AAAAAAAAAJg/RHdRDXmTnxk/s1600-h/%EC%8A%AC%EB%9D%BC%EC%9D%B4%EB%93%9C5.JPG"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_HbRZwpPnFNs/RyNqj2ojbDI/AAAAAAAAAJg/RHdRDXmTnxk/s400/%EC%8A%AC%EB%9D%BC%EC%9D%B4%EB%93%9C5.JPG" alt="" id="BLOGGER_PHOTO_ID_5126057965071330354" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HbRZwpPnFNs/RyNqrmojbEI/AAAAAAAAAJo/3iyW6jo30XI/s1600-h/%EC%8A%AC%EB%9D%BC%EC%9D%B4%EB%93%9C6.JPG"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/RyNqrmojbEI/AAAAAAAAAJo/3iyW6jo30XI/s400/%EC%8A%AC%EB%9D%BC%EC%9D%B4%EB%93%9C6.JPG" alt="" id="BLOGGER_PHOTO_ID_5126058098215316546" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-5518671122053273251?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/5518671122053273251/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/10/i-want-macbook.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5518671122053273251'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5518671122053273251'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/10/i-want-macbook.html' title='-_-)/  I want a macbook...'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_HbRZwpPnFNs/RyNqimoja_I/AAAAAAAAAJA/WtVEO_B2uCo/s72-c/%EC%8A%AC%EB%9D%BC%EC%9D%B4%EB%93%9C1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-3060954295805699186</id><published>2007-10-08T21:23:00.000+09:00</published><updated>2008-12-09T06:57:23.514+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='friends'/><title type='text'>Seoul subway guide(From Dongnimmun to Samgakji)</title><content type='html'>&lt;span class="ct lh"&gt;Hi. I made this for my friend Ronald. I thought that this can help others&lt;br /&gt;who are planning to visit Seoul. &lt;span style="font-weight: bold; color: rgb(255, 153, 0);"&gt;To see the larger image, click each one please.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HbRZwpPnFNs/RwokO3qKaJI/AAAAAAAAAIo/cwCzO453n7I/s1600-h/Page_1.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/RwokO3qKaJI/AAAAAAAAAIo/cwCzO453n7I/s400/Page_1.jpg" alt="" id="BLOGGER_PHOTO_ID_5118943764337551506" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HbRZwpPnFNs/RwokC3qKaII/AAAAAAAAAIg/gAC6zfujxQY/s1600-h/Page_2.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/RwokC3qKaII/AAAAAAAAAIg/gAC6zfujxQY/s400/Page_2.jpg" alt="" id="BLOGGER_PHOTO_ID_5118943558179121282" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_HbRZwpPnFNs/Rwoj2HqKaHI/AAAAAAAAAIY/BUpyFW092Ew/s1600-h/Page_3.jpg"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/Rwoj2HqKaHI/AAAAAAAAAIY/BUpyFW092Ew/s400/Page_3.jpg" alt="" id="BLOGGER_PHOTO_ID_5118943339135789170" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HbRZwpPnFNs/RwojsnqKaGI/AAAAAAAAAIQ/r2C5IDVvCHc/s1600-h/Page_4.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/RwojsnqKaGI/AAAAAAAAAIQ/r2C5IDVvCHc/s400/Page_4.jpg" alt="" id="BLOGGER_PHOTO_ID_5118943175927031906" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HbRZwpPnFNs/Rwo1OnqKaLI/AAAAAAAAAI4/bcoTeE_1wik/s1600-h/Page_5.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/Rwo1OnqKaLI/AAAAAAAAAI4/bcoTeE_1wik/s400/Page_5.jpg" alt="" id="BLOGGER_PHOTO_ID_5118962451740256434" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HbRZwpPnFNs/Rwov2nqKaKI/AAAAAAAAAIw/vzsVoMGOepw/s1600-h/Page_6.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/Rwov2nqKaKI/AAAAAAAAAIw/vzsVoMGOepw/s400/Page_6.jpg" alt="" id="BLOGGER_PHOTO_ID_5118956541865257122" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-3060954295805699186?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/3060954295805699186/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/10/seoul-subway-guidefrom-dongnimmun-to.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3060954295805699186'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3060954295805699186'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/10/seoul-subway-guidefrom-dongnimmun-to.html' title='Seoul subway guide(From Dongnimmun to Samgakji)'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HbRZwpPnFNs/RwokO3qKaJI/AAAAAAAAAIo/cwCzO453n7I/s72-c/Page_1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-7485664239128232476</id><published>2007-09-22T01:54:00.000+09:00</published><updated>2008-12-09T06:57:23.763+09:00</updated><title type='text'>Creating a database on Oracle 10g.</title><content type='html'>&lt;script src="http://digg.com/tools/diggthis.js" type="text/javascript"&gt;&lt;/script&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_HbRZwpPnFNs/RvP3qXqKaBI/AAAAAAAAAHo/dezNQ-usKFk/s1600-h/%EA%B7%B8%EB%A6%BC2.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/RvP3qXqKaBI/AAAAAAAAAHo/dezNQ-usKFk/s400/%EA%B7%B8%EB%A6%BC2.jpg" alt="" id="BLOGGER_PHOTO_ID_5112702309273069586" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HbRZwpPnFNs/RvP3qHqKaAI/AAAAAAAAAHg/OOyWIFCe-Mw/s1600-h/%EA%B7%B8%EB%A6%BC1.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_HbRZwpPnFNs/RvP3qHqKaAI/AAAAAAAAAHg/OOyWIFCe-Mw/s400/%EA%B7%B8%EB%A6%BC1.jpg" alt="" id="BLOGGER_PHOTO_ID_5112702304978102274" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;While creating a database on Oracle 10g, I've got this f*****g message.&lt;br /&gt;It was time zone problem. And here is the solution.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://download-uk.oracle.com/docs/cd/B19306_01/install.102/b14316/postcfg.htm#BABFAEIG"&gt;http://download-uk.oracle.com/docs/cd/B19306_01/install.102/b14316/postcfg.htm#BABFAEIG&lt;/a&gt;):&lt;br /&gt;&lt;br /&gt;1. Log on as a batch job&lt;br /&gt;2. Act as part of the operating system&lt;br /&gt;3. Adjust memory quotas for a process&lt;br /&gt;4. Replace a process level token&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-7485664239128232476?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/7485664239128232476/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/09/creating-database-on-oracle-10g.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7485664239128232476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7485664239128232476'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/09/creating-database-on-oracle-10g.html' title='Creating a database on Oracle 10g.'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_HbRZwpPnFNs/RvP3qXqKaBI/AAAAAAAAAHo/dezNQ-usKFk/s72-c/%EA%B7%B8%EB%A6%BC2.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-7287411453515514619</id><published>2007-09-10T23:52:00.000+09:00</published><updated>2007-12-30T18:22:09.021+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='simulation'/><category scheme='http://www.blogger.com/atom/ns#' term='math'/><title type='text'>ruby-gsl on windows - cygwin howto</title><content type='html'>&lt;script src="http://digg.com/tools/diggthis.js" type="text/javascript"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;I wanted to use gruff. But it seems that doesn't support complex math functions. So I decided to choose gnuplot and gsl which turned out pretty confusing, especially on cygwin. I googled all day to find out how to invoke gem command on cygwin(Yeah. I was fool.) Anyway here is what I've found. I hope this will help you too.&lt;br /&gt;&lt;br /&gt;1. installing cygwin including gnuplot and gsl&lt;br /&gt; (http://www2.warwick.ac.uk/fac/sci/moac/currentstudents/peter_cock/cygwin/part5/)&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-weight: bold;"&gt;Default permissions&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;As mentioned in http://cygwin.com/ml/cygwin/2006-01/msg00257.html, the default permissions for a Cygwin installation are rwxrwxrwx. Even if you don't care about the security implications, Ruby does. You might get sick of seeing Ruby make complaints like:&lt;br /&gt;&lt;br /&gt;warning: Insecure world writable dir /usr/local/bin, mode 040777&lt;br /&gt;&lt;br /&gt;The directory and exact mode may differ, but you'll need to chmod o-w the directory in question. Here's the minimal set of changes I needed to make to keep Ruby quiet:&lt;br /&gt;&lt;br /&gt;chmod o-w /usr/local/bin&lt;br /&gt;chmod o-w /usr/local&lt;br /&gt;chmod o-w /usr&lt;br /&gt;chmod o-w /etc&lt;br /&gt;chmod o-w /usr/sbin&lt;br /&gt;chmod o-w /usr/bin&lt;br /&gt;chmod o-w /usr/X11R6/bin&lt;br /&gt;chmod o-w /usr/X11R6&lt;br /&gt;chmod o-w /cygdrive/c&lt;br /&gt;&lt;br /&gt;Of course, this still leaves every binary on your system world-writable. Strangely, Ruby's happy to run world-writable binaries, as long as the directory they're in isn't world-writable. &lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. If your want to use gem properly on cygwin, you need to alias commands.&lt;br /&gt;home/.bashrc contains a set of aliases&lt;br /&gt;&lt;br /&gt; # Force the c:/ruby version to be found first&lt;br /&gt; PATH=/cygdrive/c/ruby/bin:$PATH&lt;br /&gt;&lt;br /&gt; alias autotest='ruby /ruby/bin/autotest'&lt;br /&gt; alias cap='ruby /ruby/bin/cap'&lt;br /&gt; alias gem='ruby /ruby/bin/gem'&lt;br /&gt; alias rake='ruby /ruby/bin/rake'&lt;br /&gt; alias rcov='ruby /ruby/bin/rcov'&lt;br /&gt; alias ruby='/cygdrive/c/ruby/bin/ruby'&lt;br /&gt; alias specrb='ruby /ruby/bin/specrb'&lt;br /&gt;&lt;br /&gt;3. installing ruby-gsl&lt;br /&gt;http://ruby-gsl.sourceforge.net/&lt;br /&gt;- download ruby-gsl&lt;br /&gt;- ./configure&lt;br /&gt;-  make&lt;br /&gt;-  make install&lt;br /&gt;&lt;br /&gt;4. Happy coding.&lt;br /&gt;&lt;br /&gt;If you have some troubles such as "permission denied" while installing plotutils,&lt;br /&gt;check this article =&gt;&lt;br /&gt;http://ptolemy.eecs.berkeley.edu/~cxh/ptpub/nt/ptntinstall.html&lt;br /&gt;&lt;br /&gt;I've installed gem on cygwin.&lt;br /&gt;&lt;pre&gt;unset RUBYOPT&lt;br /&gt;chmod -R a+w /usr/lib/ruby/site_ruby/1.8/rubygems&lt;br /&gt;ruby setup.rb&lt;br /&gt;(no more permission denied Errorno:EACCES)&lt;br /&gt;&lt;br /&gt;And I followed this article.&lt;br /&gt;http://www.gfd-dennou.org/arch/ruby/&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-7287411453515514619?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/7287411453515514619/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/09/ruby-gsl-on-windows-cygwin-howto.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7287411453515514619'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7287411453515514619'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/09/ruby-gsl-on-windows-cygwin-howto.html' title='ruby-gsl on windows - cygwin howto'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-3350314536045496281</id><published>2007-06-20T03:19:00.000+09:00</published><updated>2007-06-20T03:21:09.608+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cats'/><title type='text'>airborne cats</title><content type='html'>&lt;object width="425" height="350"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Ndd1w801FSU"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/Ndd1w801FSU" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;This is from &lt;a href="http:/junku.blog58.fc2.com"&gt;airborne cats&lt;/a&gt;. His photoes are famous among cat lovers.&lt;br /&gt;&lt;br /&gt;&lt;script src="http://digg.com/tools/diggthis.js" type="text/javascript"&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-3350314536045496281?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/3350314536045496281/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/06/airborne-cats.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3350314536045496281'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3350314536045496281'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/06/airborne-cats.html' title='airborne cats'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-7506792196790759420</id><published>2007-04-11T15:13:00.000+09:00</published><updated>2007-04-11T15:58:21.474+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><title type='text'>Why (-9.5).round isn't -9?</title><content type='html'>Ruby&lt;br /&gt;Why (-9.5).round isn't -9?&lt;br /&gt;From irb console, if you type (-9.5).round, you'll get -10 as a result.Why this occur? You can see same answer from Microsoft Excel.So I searched RDoc. And here's the answer.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;span style="font-family:lucida grande;color:#666666;"&gt;1. &lt;strong&gt;num.round&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-family:lucida grande;color:#666666;"&gt; =&gt; integerRounds num to the nearest integer. Numeric implements&lt;br /&gt;this by converting itself to a Float and invoking Float#round. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:lucida grande;color:#666666;"&gt;&lt;br /&gt;2. &lt;strong&gt;flt.round&lt;/strong&gt; =&gt; integerRounds flt to the nearest integer. Equivalent to:&lt;br /&gt;&lt;br /&gt;def round &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:lucida grande;color:#666666;"&gt;return (self+0.5).floor if self &gt; 0.0 &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:lucida grande;color:#666666;"&gt;return (self-0.5).ceil if self &lt;0.0&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:lucida grande;color:#666666;"&gt;return 0 &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:lucida grande;color:#666666;"&gt;end&lt;br /&gt;&lt;br /&gt;1.5.round #=&gt; 2&lt;br /&gt;(-1.5).round #=&gt; -2&lt;/span&gt;&lt;/p&gt;&lt;span style="font-family:lucida grande;color:#666666;"&gt;&lt;p&gt;&lt;br /&gt;3. &lt;strong&gt;num.ceil&lt;/strong&gt; =&gt; integerReturns the smallest Integer greater than or equal to num. Class Numeric achieves this by converting itself to a Float then invoking Float#ceil.&lt;br /&gt;&lt;br /&gt;1.ceil #=&gt; 1&lt;br /&gt;1.2.ceil #=&gt; 2&lt;br /&gt;(-1.2).ceil #=&gt; -1&lt;br /&gt;(-1.0).ceil #=&gt; -1&lt;/p&gt;&lt;p&gt;&lt;br /&gt;4. flt.ceil =&gt; integerReturns the smallest Integer greater than or&lt;br /&gt;equal to flt.&lt;br /&gt;1.2.ceil #=&gt;2&lt;br /&gt;2.0.ceil #=&gt; 2&lt;br /&gt;-1.2).ceil #=&gt; -1&lt;br /&gt;(-2.0).ceil #=&gt; -2&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/span&gt;&lt;br /&gt;If you want real answer for that, use (-9.5).ceil&lt;br /&gt;&lt;br /&gt;(-9.49999999999999999999999999).round #=&gt; -10&lt;br /&gt;(-9.49999999999999999999999999).ceil #=&gt; -9&lt;br /&gt;(9.49).round #=&gt; 9&lt;br /&gt;(9.49999999999999999999).round #=&gt; 10&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:lucida grande;color:#666666;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-7506792196790759420?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/7506792196790759420/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/04/why-95round-isnt-9.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7506792196790759420'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7506792196790759420'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/04/why-95round-isnt-9.html' title='Why (-9.5).round isn&apos;t -9?'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-5363634877580731175</id><published>2007-04-08T17:48:00.001+09:00</published><updated>2009-02-07T10:18:33.505+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='simulation'/><title type='text'>Buffon's Needle Simulation through Ruby</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_HbRZwpPnFNs/Rhm_zZ5nXkI/AAAAAAAAAG4/LQjPT1-SjUY/s1600-h/Buffon_Needle13.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5051279346919497282" style="" alt="" src="http://4.bp.blogspot.com/_HbRZwpPnFNs/Rhm_zZ5nXkI/AAAAAAAAAG4/LQjPT1-SjUY/s400/Buffon_Needle13.JPG" border="0" /&gt;&lt;/a&gt; &lt;div&gt;&lt;a href="http://1.bp.blogspot.com/_HbRZwpPnFNs/Rhm_up5nXjI/AAAAAAAAAGw/X0_ng7PIU5M/s1600-h/Buffon_Needle14.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5051279265315118642" style="" alt="" src="http://1.bp.blogspot.com/_HbRZwpPnFNs/Rhm_up5nXjI/AAAAAAAAAGw/X0_ng7PIU5M/s400/Buffon_Needle14.JPG" border="0" /&gt;&lt;/a&gt; &lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_HbRZwpPnFNs/Rhm_p55nXiI/AAAAAAAAAGo/wjmmP8rTMAs/s1600-h/Buffon_Needle15.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5051279183710740002" style="" alt="" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/Rhm_p55nXiI/AAAAAAAAAGo/wjmmP8rTMAs/s400/Buffon_Needle15.JPG" border="0" /&gt;&lt;/a&gt; &lt;div&gt;&lt;a href="http://4.bp.blogspot.com/_HbRZwpPnFNs/Rhm_lZ5nXhI/AAAAAAAAAGg/Eljt4tu6OeQ/s1600-h/Buffon_Needle16.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5051279106401328658" style="" alt="" src="http://4.bp.blogspot.com/_HbRZwpPnFNs/Rhm_lZ5nXhI/AAAAAAAAAGg/Eljt4tu6OeQ/s400/Buffon_Needle16.JPG" border="0" /&gt;&lt;/a&gt; &lt;div&gt;&lt;a href="http://4.bp.blogspot.com/_HbRZwpPnFNs/Rhm_hZ5nXgI/AAAAAAAAAGY/pBAoBZ5M2Ak/s1600-h/Buffon_Needle17.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5051279037681851906" style="" alt="" src="http://4.bp.blogspot.com/_HbRZwpPnFNs/Rhm_hZ5nXgI/AAAAAAAAAGY/pBAoBZ5M2Ak/s400/Buffon_Needle17.JPG" border="0" /&gt;&lt;/a&gt; &lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_HbRZwpPnFNs/Rhm_dJ5nXfI/AAAAAAAAAGQ/uey-b8av-yQ/s1600-h/Buffon_Needle18.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5051278964667407858" style="" alt="" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/Rhm_dJ5nXfI/AAAAAAAAAGQ/uey-b8av-yQ/s400/Buffon_Needle18.JPG" border="0" /&gt;&lt;/a&gt; &lt;div&gt;&lt;span style="font-family:verdana;"&gt;I'm reading "Beautiful Evidence" written by &lt;a href="http://www.edwardtufte.com/tufte/index"&gt;Edward Tufte&lt;/a&gt;. His view point about information is very amusing. Because we are currently facing tons of informations that forms our decisions. &lt;/span&gt;&lt;span style="font-family:verdana;"&gt;Too much informations lead us to simple conclusions that we didn't intend("&lt;a href="http://video.google.com/videoplay?docid=6127548813950043200"&gt;Paradox of choice&lt;/a&gt;" written by Barry Schwartz). So it's important to consume informations properly. In this context, "Beautiful Evidence" is crucial for us as far as I think. I've done some coding through Ruby to get PI. And visualized it by Gruff. This fundamental simulation is just beginning of my simualtion work. This ruby code isn't polished yet. But you can test Gruff. Thanks Geoffey!&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Installing Gruff.&lt;br /&gt;&lt;/span&gt;&lt;a href="http://nubyonrails.com/pages/gruff"&gt;&lt;span style="font-family:verdana;"&gt;http://nubyonrails.com/pages/gruff&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:verdana;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. Install imagemagick.&lt;br /&gt;Download file at &lt;/span&gt;&lt;a href="ftp://ftp.kddlabs.co.jp/graphics/ImageMagick/linux/SRPMS/"&gt;&lt;span style="font-family:verdana;"&gt;ftp://ftp.kddlabs.co.jp/graphics/ImageMagick/linux/SRPMS/&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:verdana;"&gt;&lt;br /&gt;&lt;br /&gt;2. Install RMagick&lt;br /&gt;From &lt;/span&gt;&lt;a href="http://rubyforge.org/frs/?group_id=12" target="_blank" name="autolink"&gt;&lt;span style="font-family:verdana;"&gt;http://rubyforge.org/frs/?group_id=12&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:verdana;"&gt;&lt;br /&gt;download rmagick-1.15.5.gem and then type&lt;br /&gt;&gt; gem install rmagick-1.15.5.gem --local&lt;br /&gt;&lt;br /&gt;3. Install Gruff 설치&lt;br /&gt;Just type&lt;br /&gt;&gt; gem install gruff&lt;br /&gt;While installing it will ask you to install dependency files. Just say yes&lt;br /&gt;&lt;br /&gt;&gt; gem install sparklines&lt;br /&gt;&lt;br /&gt;4.You need ariel font to use Gruff.&lt;br /&gt;If you don't have it on your system, follow the specific steps from here.&lt;br /&gt;&lt;/span&gt;&lt;a href="http://tomcopeland.blogs.com/juniordeveloper/2006/02/charts_and_grap.html" target="_blank" name="autolink"&gt;&lt;span style="font-family:verdana;"&gt;http://tomcopeland.blogs.com/juniordeveloper/2006/02/charts_and_grap.html&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-5363634877580731175?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/5363634877580731175/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/04/buffons-needle-simulation-thruogh-ruby.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5363634877580731175'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5363634877580731175'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/04/buffons-needle-simulation-thruogh-ruby.html' title='Buffon&apos;s Needle Simulation through Ruby'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HbRZwpPnFNs/Rhm_zZ5nXkI/AAAAAAAAAG4/LQjPT1-SjUY/s72-c/Buffon_Needle13.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-7522602340847687852</id><published>2007-03-22T09:43:00.000+09:00</published><updated>2007-03-22T09:51:34.126+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><title type='text'>Ruby script 2 exe</title><content type='html'>&lt;a href="http://www.erikveen.dds.nl/rubyscript2exe/index.html"&gt;http://www.erikveen.dds.nl/rubyscript2exe/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Someone already made script to make exe file. It's so easy.&lt;br /&gt;Just type&lt;br /&gt;&lt;br /&gt;ruby rubyscript2exe.rb application.rb[w] [parameters]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-7522602340847687852?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/7522602340847687852/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/03/ruby-script-2-exe.html#comment-form' title='1개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7522602340847687852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7522602340847687852'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/03/ruby-script-2-exe.html' title='Ruby script 2 exe'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-2175333816055974837</id><published>2007-03-04T23:53:00.000+09:00</published><updated>2008-12-09T06:57:25.032+09:00</updated><title type='text'>IDEO Method Cards</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_HbRZwpPnFNs/RerdZ3R8t1I/AAAAAAAAADE/3weR5R9Bzq4/s1600-h/picture.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5038082569573021522" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_HbRZwpPnFNs/RerdZ3R8t1I/AAAAAAAAADE/3weR5R9Bzq4/s400/picture.jpg" border="0" /&gt;&lt;/a&gt; IDEO Method Cards shows 51 ways of prtotyping thinking. I think programmers also need this card deck. Why ruby is so popular? One reason could be fast prtotyping...&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-2175333816055974837?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/2175333816055974837/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/03/ideo-method-cards.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/2175333816055974837'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/2175333816055974837'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/03/ideo-method-cards.html' title='IDEO Method Cards'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HbRZwpPnFNs/RerdZ3R8t1I/AAAAAAAAADE/3weR5R9Bzq4/s72-c/picture.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-3316612796185793372</id><published>2007-02-13T04:45:00.000+09:00</published><updated>2007-02-13T05:23:55.557+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><category scheme='http://www.blogger.com/atom/ns#' term='dream'/><title type='text'>Minority Report</title><content type='html'>&lt;embed src="http://services.brightcove.com/services/viewer/federated_f8/271543545" bgcolor="#FFFFFF" flashVars="videoId=422563006&amp;playerId=271543545&amp;viewerSecureGatewayURL=https://services.brightcove.com/services/amfgateway&amp;servicesURL=http://services.brightcove.com/services&amp;cdnURL=http://admin.brightcove.com&amp;domain=embed&amp;autoStart=true&amp;" base="http://admin.brightcove.com" name="flashObj" width="486" height="412" seamlesstabbing="false" type="application/x-shockwave-flash" swLiveConnect="true" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"&gt;&lt;/embed&gt;&lt;br&gt;&lt;br /&gt;The world is waiting to see Minority Report. And it's so close. Jeff Han's Perceptive Pixel is gaining the market share. He will speak at Ted talk in this year too. I'm longing to see his next presentation. It seems that Apple's "Pile" interface is integrated with this one. May be, new mac would be a giant display(wall size?) pc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-3316612796185793372?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://fastcompany.com/video/general/perceptivepixel.html' title='Minority Report'/><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/3316612796185793372/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/02/minority-report.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3316612796185793372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3316612796185793372'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/02/minority-report.html' title='Minority Report'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-6940469075344377333</id><published>2007-02-12T20:09:00.000+09:00</published><updated>2008-12-09T06:57:25.348+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2'/><title type='text'>Everyware: The Dawning Age of Ubiquitous Computing</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_HbRZwpPnFNs/RdMKP4v39HI/AAAAAAAAACo/D8t3qHohrf8/s1600-h/Everyware.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5031376476750476402" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_HbRZwpPnFNs/RdMKP4v39HI/AAAAAAAAACo/D8t3qHohrf8/s400/Everyware.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;A book recommended by DLD07 Video podcast "Interface and design" session.&lt;br /&gt;And you can buy it at &lt;a href="http://www.yes24.com/Goods/FTGoodsView.aspx?goodsNo=1927945&amp;CategoryNumber=002"&gt;http://www.yes24.com/Goods/FTGoodsView.aspx?goodsNo=1927945&amp;amp;CategoryNumber=002&lt;/a&gt;&lt;br /&gt;These are some resources that Adam Greenfield suggests&lt;br /&gt;&lt;a href="http://v-2.org/bookshelf.php"&gt;http://v-2.org/bookshelf.php&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.v-2.org/"&gt;http://www.v-2.org/&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-6940469075344377333?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://v-2.org' title='Everyware: The Dawning Age of Ubiquitous Computing'/><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/6940469075344377333/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/02/everyware-dawning-age-of-ubiquitous.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/6940469075344377333'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/6940469075344377333'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/02/everyware-dawning-age-of-ubiquitous.html' title='Everyware: The Dawning Age of Ubiquitous Computing'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HbRZwpPnFNs/RdMKP4v39HI/AAAAAAAAACo/D8t3qHohrf8/s72-c/Everyware.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-3364564912268789353</id><published>2007-02-12T17:53:00.000+09:00</published><updated>2007-02-12T17:54:19.971+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><title type='text'>Apple "Pile"</title><content type='html'>&lt;object height="350" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/SWe-TIy2Lbs"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/SWe-TIy2Lbs" type="application/x-shockwave-flash" wmode="transparent" height="350" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;table width="100%"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td align="left" width="50%"&gt;&lt;b&gt;United States Patent Application&lt;/b&gt;&lt;/td&gt;  &lt;td align="right" width="50%"&gt;&lt;b&gt;20070033537 &lt;/b&gt;&lt;/td&gt; &lt;/tr&gt;   &lt;tr&gt;&lt;td align="left" valign="top" width="50%"&gt;&lt;b&gt;Kind Code&lt;/b&gt;   &lt;/td&gt;&lt;td align="right" width="50%"&gt;                       &lt;b&gt;A1 &lt;/b&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td align="left" width="50%"&gt;&lt;b&gt; Mander; Richard ;   et al.&lt;/b&gt; &lt;/td&gt;&lt;td align="right" width="50%"&gt; &lt;b&gt; February 8, 2007 &lt;/b&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;hr /&gt; &lt;span style="font-size:+1;"&gt;Method and apparatus for organizing information in a computer system &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;b&gt;Abstract&lt;/b&gt;&lt;/center&gt; &lt;p&gt;A method and apparatus for organizing information in a computer filing      system. The method and apparatus include the creation of a pile      comprising a collection of documents and displaying a graphical      representation of the collection of documents. The method and apparatus      further include browsing the collection of documents by pointing a cursor      at a particular item in the collection of documents to reveal an indicia      for the particular item in the collection of documents. The filing system      can automatically divide a pile (e.g. a collection of documents from an      electronic mail network) into subpiles on the basis of the content of      each document in the pile, and the filing system, at the users request      can automatically file away documents into existing piles in the computer      system on the basis of a similarity match between the content (or other      internal representation) of the document and the content (or other      internal representation) of existing piles in the computer system. The      filing system can also create a pile from a sample document by using the      internal representation of the document as the internal representation of      the new pile. The computer filing system provides various interfaces in      connection with piles to the user of the system to provide feedback and      other information to the user, including information concerning the      documents and piles in the computer's filing system. &lt;/p&gt; &lt;hr /&gt; &lt;table width="100%"&gt; &lt;tbody&gt;&lt;tr&gt; &lt;td align="left" valign="top" width="10%"&gt;Inventors:&lt;/td&gt; &lt;td align="left" width="90%"&gt;  &lt;b&gt;Mander; Richard&lt;/b&gt;; &lt;i&gt;(Palo Alto, CA)&lt;/i&gt; &lt;b&gt;; Rose; Daniel E.&lt;/b&gt;; &lt;i&gt;(San Jose, CA)&lt;/i&gt; &lt;b&gt;; Salomon; Gitta&lt;/b&gt;; &lt;i&gt;(Palo Alto, CA)&lt;/i&gt; &lt;b&gt;; Wong; Yin Yin&lt;/b&gt;; &lt;i&gt;(Menlo Park, CA)&lt;/i&gt; &lt;b&gt;; Oren; Timothy&lt;/b&gt;; &lt;i&gt;(Sunnyvale, CA)&lt;/i&gt; &lt;b&gt;; Booker; Susan&lt;/b&gt;; &lt;i&gt;(San Carlos, CA)&lt;/i&gt; &lt;b&gt;; Houde; Stephanie&lt;/b&gt;; &lt;i&gt;(Cambridge, MA)&lt;/i&gt;  &lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt;&lt;td align="left" valign="top" width="10%"&gt;Correspondence Name and Address:   &lt;/td&gt;&lt;td align="left" width="90%"&gt;   &lt;b&gt;&lt;pre&gt;    BLAKELY SOKOLOFF TAYLOR &amp; ZAFMAN&lt;br /&gt;   12400 WILSHIRE BOULEVARD&lt;br /&gt;   SEVENTH FLOOR&lt;br /&gt;   LOS ANGELES&lt;br /&gt;   CA&lt;br /&gt;   90025-1030&lt;br /&gt;   US&lt;br /&gt;&lt;/pre&gt;&lt;/b&gt;   &lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td align="left" nowrap="nowrap" valign="top" width="10%"&gt;Serial No.: &lt;/td&gt;&lt;td align="left" width="90%"&gt;                     &lt;b&gt;497460&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;   &lt;tr&gt;&lt;td align="left" valign="top" width="10%"&gt;Series Code:   &lt;/td&gt;&lt;td align="left" width="90%"&gt;                       &lt;b&gt;11 &lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;   &lt;tr&gt;&lt;td align="left" valign="top" width="10%"&gt;Filed:   &lt;/td&gt;&lt;td align="left" width="90%"&gt;                       &lt;b&gt;July 31, 2006&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;p&gt; &lt;table width="100%"&gt;   &lt;tbody&gt;&lt;tr&gt;&lt;td align="left" valign="top" width="40%"&gt;&lt;b&gt;U.S. Current Class:&lt;/b&gt;&lt;/td&gt;   &lt;td align="right" valign="top" width="60%"&gt;&lt;b&gt;715/764&lt;/b&gt;; 707/100; 715/810  &lt;/td&gt;&lt;/tr&gt;     &lt;tr&gt;&lt;td align="left" valign="top" width="40%"&gt;&lt;b&gt;U.S. Class at Publication:&lt;/b&gt;&lt;/td&gt;   &lt;td align="right" valign="top" width="60%"&gt;&lt;b&gt;715/764&lt;/b&gt;; 715/810; 707/100  &lt;/td&gt;&lt;/tr&gt;   &lt;tr&gt;&lt;td align="left" valign="top" width="40%"&gt;&lt;b&gt;Intern'l Class: &lt;/b&gt;&lt;/td&gt;   &lt;td align="right" valign="top" width="60%"&gt;G06F 3/00 20060101 G06F003/00; G06F 17/00 20060101 G06F017/00; G06F 7/00 20060101 G06F007/00&lt;/td&gt;&lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt; &lt;/p&gt;&lt;hr /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-3364564912268789353?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://appft1.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&amp;Sect2=HITOFF&amp;p=1&amp;u=%2Fnetahtml%2FPTO%2Fsearch-bool.html&amp;r=1&amp;f=G&amp;l=50&amp;co1=AND&amp;d=PG01&amp;s1=%22Apple+Computer%22&amp;OS=' title='Apple &quot;Pile&quot;'/><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/3364564912268789353/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/02/apple-pile.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3364564912268789353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3364564912268789353'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/02/apple-pile.html' title='Apple &quot;Pile&quot;'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-3598370780326169049</id><published>2007-02-05T19:53:00.000+09:00</published><updated>2008-12-09T06:57:25.482+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='web2'/><title type='text'>PHP vs Java vs Ruby</title><content type='html'>I linked the original article. Anyway it really was fun to read the article.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_HbRZwpPnFNs/RccM-2eievI/AAAAAAAAACA/LSpl6OH5xTc/s1600-h/bray-intrinsics.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5028001782897474290" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/RccM-2eievI/AAAAAAAAACA/LSpl6OH5xTc/s400/bray-intrinsics.png" border="0" /&gt;&lt;/a&gt; &lt;div&gt;Bray, who is Director of Web Technologies at Sun Microsystems, co-creator of the XML 1.0 and XML Namespace standards, co-founder of Open-Text, and contributor to the Atom Publishing standard (whew!) spoke in a presentation entitled “How to combine PHP technology with Java based on Enterprise Systems” &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;“Mostly because there’s less code. &lt;strong&gt;The fact that Ruby forces MVC on you helps too&lt;/strong&gt;, also the fact that the templating and [Object Relational Mapping (ORM)] and testing and application code are all so tightly integrated helps. Bear in mind that we still don’t know how well Rails is going to work outside of the CRUD-centered greenfield app space where it shines.”&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-3598370780326169049?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.cmswire.com/cms/industry-news/php-vs-java-vs-ruby-000887.php' title='PHP vs Java vs Ruby'/><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/3598370780326169049/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/02/php-vs-java-vs-ruby.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3598370780326169049'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3598370780326169049'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/02/php-vs-java-vs-ruby.html' title='PHP vs Java vs Ruby'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_HbRZwpPnFNs/RccM-2eievI/AAAAAAAAACA/LSpl6OH5xTc/s72-c/bray-intrinsics.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-6488678061210146134</id><published>2007-02-04T22:16:00.000+09:00</published><updated>2008-12-09T06:57:25.576+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2'/><title type='text'>My thoughts about web 2.0</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_HbRZwpPnFNs/RccMj2eieuI/AAAAAAAAAB0/XtUf4RiCaAc/s1600-h/images.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5028001319041006306" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/RccMj2eieuI/AAAAAAAAAB0/XtUf4RiCaAc/s400/images.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;As a result, web is about seeing entertainment stuffs, and other informations that you want. As a platform, it is moving to small devices. But seeing is equivalent element. So imaging technology is core aspect. I think Adobe's stategy about this would conquer the debate around ajax technologies. They're currently focusing on integrating PDF and Flash format. Soon we'll see the results. &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-6488678061210146134?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.nytimes.com/packages/khtml/2006/04/02/business/20060402_SECTOR_GRAPHIC.html' title='My thoughts about web 2.0'/><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/6488678061210146134/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/02/my-thoughts-about-web-20.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/6488678061210146134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/6488678061210146134'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/02/my-thoughts-about-web-20.html' title='My thoughts about web 2.0'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_HbRZwpPnFNs/RccMj2eieuI/AAAAAAAAAB0/XtUf4RiCaAc/s72-c/images.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-5752005157787001333</id><published>2007-02-03T00:44:00.000+09:00</published><updated>2008-12-09T06:57:26.044+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='math'/><title type='text'>Algorithms in the Attic</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_HbRZwpPnFNs/RcNc4meietI/AAAAAAAAABo/dlDyd-Na4cQ/s1600-h/Alogrithms-HBR.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5026963736546671314" style="FLOAT: left; MARGIN: 0pt 10px 10px 0pt; CURSOR: pointer" alt="" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/RcNc4meietI/AAAAAAAAABo/dlDyd-Na4cQ/s400/Alogrithms-HBR.JPG" border="0" /&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;This article was posted on HBR this month.&lt;br /&gt;&lt;br /&gt;One reason why math is important at this timing.&lt;br /&gt;&lt;br /&gt;"For a powerful perspective on future business, take a hard look at mathematics past. As computing gets ever faster and cheaper, yesterday’s abstruse equations are becoming platforms for tomorrow’s breakthroughs. Companies in several industries are now dusting off these formulas and putting them in the service of new products and processes."&lt;br /&gt;&lt;br /&gt;"Why should past work, often quite theoretical, be so useful now? Done in the absence of high-speed, low-cost computational capacity, that work put a premium on imaginative quantitative thinking. With today’s high-powered processors and broadband networks, those abstractions can point the way to practical software that leaps over current operational constraints.Disruptive opportunities abound."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-5752005157787001333?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/5752005157787001333/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/02/algorithms-in-attic.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5752005157787001333'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5752005157787001333'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/02/algorithms-in-attic.html' title='Algorithms in the Attic'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HbRZwpPnFNs/RcNc4meietI/AAAAAAAAABo/dlDyd-Na4cQ/s72-c/Alogrithms-HBR.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-7768519727419105103</id><published>2007-02-01T16:26:00.000+09:00</published><updated>2008-12-09T06:57:26.115+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='eLearning'/><title type='text'>Podcast list</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_HbRZwpPnFNs/RcGWhGeiesI/AAAAAAAAABY/ilPF-lsxsB8/s1600-h/podcast-list.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5026464154540735170" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/RcGWhGeiesI/AAAAAAAAABY/ilPF-lsxsB8/s400/podcast-list.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt; &lt;/p&gt;This is pocast list that I listen. The speed of changing is so fast that It's impossilbe to catch it with alone. So you share your view points with friends. This list may help you to build that view points. (Many poeple may already knows about these lists) I captured the list for my friends who are not yet familiar with iTunes. I thought providing raw datas that are quoted many times from news and bloggers would be another advice for my friends than "my poit of view". Web 2.0 Summit podcast was brilliant. I recommand it if you are interested in Web2.0 and the Long tail stories.&lt;p&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-7768519727419105103?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/7768519727419105103/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/02/podcast-list.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7768519727419105103'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7768519727419105103'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/02/podcast-list.html' title='Podcast list'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HbRZwpPnFNs/RcGWhGeiesI/AAAAAAAAABY/ilPF-lsxsB8/s72-c/podcast-list.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-7784649272981559810</id><published>2007-01-28T11:08:00.000+09:00</published><updated>2008-12-09T06:57:26.191+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='math'/><title type='text'>Doing math.</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_HbRZwpPnFNs/RbwI0wfsA3I/AAAAAAAAABE/zyIiUlFWCcI/s1600-h/mathematics.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5024900986702660466" style="margin: 0px auto 10px; display: block; text-align: center;" alt="" src="http://2.bp.blogspot.com/_HbRZwpPnFNs/RbwI0wfsA3I/AAAAAAAAABE/zyIiUlFWCcI/s400/mathematics.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;Well, it's not that easy to say I'm not good at math. Since I realized math is the core of Alogrithm, I had to study it from the basic(actually, from highschool level). When I first gone through downloaded course which was about differential and integral calcus, I was so humiliated by my ignorance about math. For math is a tool for analyzing agolrithms, it's inevitable to study them. &lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-7784649272981559810?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/7784649272981559810/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/01/stuying-math.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7784649272981559810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7784649272981559810'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/01/stuying-math.html' title='Doing math.'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_HbRZwpPnFNs/RbwI0wfsA3I/AAAAAAAAABE/zyIiUlFWCcI/s72-c/mathematics.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-7351515648070226628</id><published>2007-01-01T23:57:00.000+09:00</published><updated>2008-12-09T06:57:26.345+09:00</updated><title type='text'>Need time..</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_HbRZwpPnFNs/RZvLvRypI2I/AAAAAAAAAA4/MbwlLnS2EPs/s1600-h/quiet_time_1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_HbRZwpPnFNs/RZvLvRypI2I/AAAAAAAAAA4/MbwlLnS2EPs/s400/quiet_time_1.jpg" alt="" id="BLOGGER_PHOTO_ID_5015826623097283426" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I need time to improve my learnings including rubyonrails and math.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-7351515648070226628?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/7351515648070226628/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2007/01/need-time.html#comment-form' title='2개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7351515648070226628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/7351515648070226628'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2007/01/need-time.html' title='Need time..'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_HbRZwpPnFNs/RZvLvRypI2I/AAAAAAAAAA4/MbwlLnS2EPs/s72-c/quiet_time_1.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-6613021986475493093</id><published>2006-12-09T18:06:00.000+09:00</published><updated>2008-12-09T06:57:26.555+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><title type='text'>mac osx on intel core2duo laptop</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_HbRZwpPnFNs/RXp8zf3pkPI/AAAAAAAAAAM/8tk_KqmYnK4/s1600-h/main_banner.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5006451159945810162" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_HbRZwpPnFNs/RXp8zf3pkPI/AAAAAAAAAAM/8tk_KqmYnK4/s320/main_banner.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;I'm currently making effort to install osx on my laptop (LG LW25 Advanced). I installed it through vmware 5.5. Installing was quite easy comparing with Windows XP. But the problem was drivers. The notebook native keyboard was usb and touchpad was ps/2. It have to be use same interfaces in order to work. As a result, I had to plug another usb keyboard. OSX was really beutiful. Now I know why people are fallen love with apple. If you want to use it, go to forum.insanelymac.com and x86osx.com.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-6613021986475493093?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/6613021986475493093/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2006/12/mac-osx-on-intel-core2duo-laptop.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/6613021986475493093'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/6613021986475493093'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2006/12/mac-osx-on-intel-core2duo-laptop.html' title='mac osx on intel core2duo laptop'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_HbRZwpPnFNs/RXp8zf3pkPI/AAAAAAAAAAM/8tk_KqmYnK4/s72-c/main_banner.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-5698601839503422418</id><published>2006-11-29T10:00:00.000+09:00</published><updated>2006-11-29T10:03:37.480+09:00</updated><title type='text'>Beginning Ruby on Rails E-Commerce</title><content type='html'>&lt;a href="http://weblog.rubyonrails.org/2006/11/13/beginning-ruby-on-rails-e-commerce"&gt;Beginning Ruby on Rails E-Commerce&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.apress.com/ApressCorporate/supplement/1/10178/1590597362-3926.pdf"&gt;Sample Chapter&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-5698601839503422418?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/5698601839503422418/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2006/11/beginning-ruby-on-rails-e-commerce.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5698601839503422418'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5698601839503422418'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2006/11/beginning-ruby-on-rails-e-commerce.html' title='Beginning Ruby on Rails E-Commerce'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-3662196448126935457</id><published>2006-11-24T10:33:00.000+09:00</published><updated>2006-11-26T14:20:05.229+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2'/><category scheme='http://www.blogger.com/atom/ns#' term='english class'/><title type='text'>web2.0 submit video link</title><content type='html'>&lt;a href="http://photos1.blogger.com/x/blogger2/3049/760960375341110/1600/720760/220px-Kevinrose.jpg"&gt;&lt;img style="margin: 0px 10px 10px 0px; float: left;" alt="" src="http://photos1.blogger.com/x/blogger2/3049/760960375341110/320/832903/220px-Kevinrose.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a class="image" title=" " href="http://en.wikipedia.org/wiki/Image:Kevinrose.jpg"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Kevin Rose is the famous people of this year as far as I think.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;He is the founder and chief architect of &lt;a href="http://digg.com/"&gt;digg&lt;/a&gt;, where he oversees all aspects of the management and development of the digg web site. The basic idea is not that unique though, the interface of the site is easy to grasp. He's 2 years older than me.&lt;br /&gt;digg.com is based on bloggers' participations.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.web2con.com/pub/w/49/conversations.html"&gt;http://www.web2con.com/pub/w/49/conversations.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-3662196448126935457?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/3662196448126935457/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2006/11/web20-submit-video-link.html#comment-form' title='1개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3662196448126935457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/3662196448126935457'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2006/11/web20-submit-video-link.html' title='web2.0 submit video link'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-8812711611576839942</id><published>2006-11-08T12:45:00.000+09:00</published><updated>2006-11-13T16:21:03.596+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='english class'/><title type='text'>tourist attraction</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger2/3049/760960375341110/1600/exhibition%20of%20invention%20for%20visitors_%3F%3F%3F_3.jpg"&gt;&lt;img style="WIDTH: 316px; CURSOR: pointer; HEIGHT: 446px" alt="" src="http://photos1.blogger.com/blogger2/3049/760960375341110/400/exhibition%20of%20invention%20for%20visitors_%3F%3F%3F_3.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Well, I've never been abroad so far. And one region that I want to be is Swiss. They're invention exhibition once a year.(web search needed here). Of course I can see the major contents though, seeing is better.&lt;br /&gt;May be learning is experiencing new things like kids doing. So the main purpose of tour is learning. Some part of learning would be get fresh ideas. In this aspect, going to a design gallery is exactly the samething for me. When I see creative works done by designers reminds me to think and act out of box. Such break-through *** can be learned as far as I think. But unfortunately I haven't get much free time to take a trip, I've tried to see fresh galleries. It's not like eat fastfoods. Anyway I hope to be in Swiss someday. Are there a site that shows me greate inspiring videos? Yes. The Ausraila **** site does. Here is the link. Nature is another source of creativity. Why creativity is crucial for me? Now it's changing too fast that only parianoids survive.&lt;br /&gt;&lt;br /&gt;Basically I fully agree with "The World is Flat". So if you want to survive, you have to creative and know where my strengths are. Traveling and communicate various people based on multi cultures will broaden(?) my limits so that make you flexible.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-8812711611576839942?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.inventions-geneva.ch/cgi-bin/gb-index.php' title='tourist attraction'/><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/8812711611576839942/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2006/11/tourist-attraction.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8812711611576839942'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8812711611576839942'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2006/11/tourist-attraction.html' title='tourist attraction'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-9095942043252620352</id><published>2006-11-01T14:29:00.000+09:00</published><updated>2006-11-03T16:53:46.696+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='english class'/><title type='text'>leisure</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger2/3049/760960375341110/1600/bungee.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger2/3049/760960375341110/200/bungee.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger2/3049/760960375341110/1600/kid.jpg"&gt;&lt;/a&gt;What I most hate leisure would be bungee jumping that I never tried before though. At my leisure time, I usually watch movies and animations that I downloaded from internet. And read new articles through google reader. I rarely do physical activities. Some day I should give a shot for in-line skating. May be I do not make social contacts in these days. Or my friends are too busy currently. It's easier to say than to act. Most of us knows what we should do but we do not make something to action. Bungee jumping is one of those things for me. Well, I could be the one who do not like changes. Uncommon things are avoided. I want to be a man with a strength who got no fear to fail. But as I said, it's not that easy to get a character like that. When I first learned to ride a bicycle, I learned for myselef. It was unavoidable not to fall for me. &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-9095942043252620352?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/9095942043252620352/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2006/11/leisure.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/9095942043252620352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/9095942043252620352'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2006/11/leisure.html' title='leisure'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-5291379467334874864</id><published>2006-11-01T09:05:00.000+09:00</published><updated>2006-11-03T09:30:58.362+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><title type='text'>ruby on rails</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger2/3049/760960375341110/1600/serverside_script.0.png"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger2/3049/760960375341110/400/serverside_script.0.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;strong&gt;&lt;span style="color:#3366ff;"&gt;PHP, &lt;/span&gt;&lt;span style="color:#cc0000;"&gt;ASP&lt;/span&gt;, &lt;/strong&gt;&lt;strong&gt; &lt;span style="color:#ff9900;"&gt;JSP, &lt;/span&gt; &lt;span style="color:#33cc00;"&gt;RUBY&lt;/span&gt;&lt;/strong&gt;&lt;span style="color:#33cc00;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://photos1.blogger.com/blogger2/3049/760960375341110/1600/serverside_script.png"&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Well, ruby is not that popular though, I'm planning to digg it further. There're only one ruby-on-rails hosting site in Korea. So I paid them for my school web project. For now, we didn't make any significant progress. Still working on it. But the codes of ruby is so beautiful that I just can't resist to use and learn it. May be that could be one reason that ruby manias are after it. The address of our site is &lt;a href="http://jaigouk.koruby.com/prisonbreak/public"&gt;http://jaigouk.koruby.com/prisonbreak/public&lt;/a&gt; . In the future user applications would be based on web. Without learning web technologies like ajax, it would be hard to survive as a programmer. There're already plenty of API mesh-up sites(&lt;a onclick="return top.js.OpenExtLink(window,event,this)" href="http://www.programmableweb.com/matrix" target="_blank"&gt;http://www.programmableweb.com/matrix&lt;/a&gt;). Now it's time to ignite your ideas. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-5291379467334874864?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.programmableweb.com/matrix' title='ruby on rails'/><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/5291379467334874864/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2006/11/ruby-on-rails.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5291379467334874864'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5291379467334874864'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2006/11/ruby-on-rails.html' title='ruby on rails'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-1195384420643733304</id><published>2006-10-11T12:29:00.000+09:00</published><updated>2006-10-13T19:54:00.736+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='english class'/><title type='text'>About hobbies</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger2/3049/760960375341110/1600/matrix.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 177px; HEIGHT: 139px" alt="" src="http://photos1.blogger.com/blogger2/3049/760960375341110/320/matrix.jpg" border="0" /&gt;&lt;/a&gt; I don't usually go to theatre for it's a costly way of killing time comparing with internet downloading. My love of films is in the crime and thriller genre. Favorites movie lists are Matrix, The Seven, The usual suspects, Fight Club, Lock Stock and Two Smoking Barrels, Snatch, Prison Break, and japan animations like Ghost in the shell.&lt;br /&gt;&lt;br /&gt;People, including myself, like stories. They love storytellers. In internet era, it isn't easy to find &lt;span style="COLOR: rgb(255,153,0);font-size:130%;" &gt;&lt;span style="FONT-WEIGHT: bold"&gt;original&lt;/span&gt;&lt;/span&gt; stories. It's highly possible to confront copies. If you want to grab real source of the article, you would do googling. And then narrow down your search results. This isn't that easy as to say.&lt;br /&gt;&lt;br /&gt;In my free time, I surf the web in order to catch up on the recent edge-tech, interesting business stories. It's not about the money but about the &lt;span style="COLOR: rgb(255,153,0);font-size:180%;" &gt;&lt;span style="FONT-WEIGHT: bold"&gt;stories&lt;/span&gt;&lt;/span&gt; that everybody would enjoy such as StarWars or HarryPotter. There are many other web-surfers like me who want to grab real original stuffs. To help those people, some guys devleoped &lt;span style="COLOR: rgb(255,153,0);font-size:180%;" &gt;&lt;span style="FONT-WEIGHT: bold"&gt;filters&lt;/span&gt;&lt;/span&gt; using web2.0 technologies. This could be one reason why blogging is spread so widely in these days. &lt;span style="COLOR: rgb(255,153,0);font-size:180%;" &gt;&lt;span style="FONT-WEIGHT: bold"&gt;The Long tail theory&lt;/span&gt;&lt;/span&gt; is all about these filters. Bright ideas are come from a few people, and you can visit his / her blog.&lt;br /&gt;&lt;br /&gt;You can go to my favorite blogs right side bar on this blog. There are venture capitalist blog and the other blogs related with web2.0. I recommand you to visit Life Hacker and TED.com. At Life Hacker, you will find s/w, web sites reviews that make your life more productive. The TED (Technology, Entertainment, Design) conference is an annual event where leading thinkers and doers gather for inspiration. The TEDBlog covers the same ground, on a rather more frequent basis. Here is one of those. Malcolm Gladwell, the author of "The tipping point", on TEDTalks.&lt;br /&gt;&lt;br /&gt;&lt;object id="VE_Player" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=" height="285" width="320" align="middle" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"&gt;&lt;param name="_cx" value="8467"&gt;&lt;param name="_cy" value="7541"&gt;&lt;param name="FlashVars" value=""&gt;&lt;param name="Movie" value="http://static.videoegg.com/ted/flash/loader.swf"&gt;&lt;param name="Src" value="http://static.videoegg.com/ted/flash/loader.swf"&gt;&lt;param name="WMode" value="Window"&gt;&lt;param name="Play" value="0"&gt;&lt;param name="Loop" value="-1"&gt;&lt;param name="Quality" value="High"&gt;&lt;param name="SAlign" value="LT"&gt;&lt;param name="Menu" value="-1"&gt;&lt;param name="Base" value=""&gt;&lt;param name="AllowScriptAccess" value="always"&gt;&lt;param name="Scale" value="NoScale"&gt;&lt;param name="DeviceFont" value="0"&gt;&lt;param name="EmbedMovie" value="0"&gt;&lt;param name="BGColor" value="FFFFFF"&gt;&lt;param name="SWRemote" value=""&gt;&lt;param name="MovieData" value=""&gt;&lt;param name="SeamlessTabbing" value="1"&gt;&lt;param name="Profile" value="0"&gt;&lt;param name="ProfileAddress" value=""&gt;&lt;param name="ProfilePort" value="0"&gt;&lt;param name="AllowNetworking" value="all"&gt;&lt;br /&gt;&lt;embed src="http://static.videoegg.com/ted/flash/loader.swf" flashvars="bgColor=FFFFFF&amp;file=http://static.videoegg.com/ted/movies/MALCOLMGLADWELL_high.flv&amp;autoPlay=false&amp;fullscreenURL=http://static.videoegg.com/ted/flash/fullscreen.html&amp;forcePlay=false&amp;logo=&amp;allowFullscreen=true" quality="high" allowscriptaccess="always" bgcolor="#FFFFFF" scale="noscale" wmode="window" width="320" height="285" name="VE_Player" align="middle" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"&gt;&lt;br /&gt;&lt;/embed&gt;&lt;br /&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-1195384420643733304?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/1195384420643733304/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2006/10/about-hobbies.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1195384420643733304'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1195384420643733304'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2006/10/about-hobbies.html' title='About hobbies'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-4666159942532082890</id><published>2006-10-04T17:38:00.000+09:00</published><updated>2006-10-04T17:39:55.044+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='english class'/><category scheme='http://www.blogger.com/atom/ns#' term='dream'/><title type='text'>Dream</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger2/3049/760960375341110/1600/eminem.0.jpg"&gt;&lt;img style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 221px; CURSOR: hand; HEIGHT: 170px" height="173" alt="" src="http://photos1.blogger.com/blogger2/3049/760960375341110/320/eminem.0.jpg" width="261" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:180%;"&gt;L&lt;/span&gt;ife isn't that long if you think more deeply. And it's not always happy. Once you get your goals in your hand, soon it turns out boring . Nothing goes forever. So what's &lt;span style="font-size:180%;color:#ffcc00;"&gt;&lt;strong&gt;really&lt;/strong&gt;&lt;/span&gt; important in life? I mean literally real stuffs by your heart. Let's think about this just a few minutes with me.&lt;br /&gt;&lt;br /&gt;Though it would be variable depend on your sense of values about life, working is one of them. Because you can plan something interesting to you, and then see it's outcomes. How things would end? &lt;span style="font-size:180%;color:#ffcc00;"&gt;Curiosity&lt;/span&gt; could be one reason for that. However if you've chosen something boring , there would be no curiosities and pleasures. Have you seen a movie "The Matrix"? You've got to choose only one pill. Red one? Blue one? It's up to you. Take whatever you want. But you may end your life chasing the money. I encourage you to get out of "the matrix" and live your own life. Of course it's not that easy. Reality isn't sweet. Though I say &lt;span style="font-size:180%;color:#ffcc00;"&gt;choise&lt;/span&gt; is crucial to begin your journey to freedom.&lt;br /&gt;&lt;br /&gt;Are you following me? Now it's time to talk about the ways to accomplish our goal. It seems like gather pirate companies who are eager to take risks for &lt;span style="font-size:180%;color:#ffcc00;"&gt;treasures&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-4666159942532082890?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/4666159942532082890/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2006/10/dream.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4666159942532082890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4666159942532082890'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2006/10/dream.html' title='Dream'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-1868126023118932981</id><published>2006-10-03T16:58:00.000+09:00</published><updated>2006-10-03T17:00:27.622+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='eLearning'/><title type='text'>Free Science and Video Lectures Online!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger2/3049/760960375341110/1600/blackhole120.png"&gt;&lt;img style="FLOAT: left; MARGIN: 0pt 10px 10px 0pt; CURSOR: pointer" alt="" src="http://photos1.blogger.com/blogger2/3049/760960375341110/320/blackhole120.png" border="0" /&gt;&lt;/a&gt;&lt;a href="http://freescienceonline.blogspot.com/2006/06/free-computer-science-video-lecture_24.html"&gt;Entire college COURSES on computer science&lt;/a&gt;.&lt;br /&gt;Computer Architecture, Operating System Analysis, Programming Languages, the list goes on and on. Spread the love! It's like getting a full college education for free. Originally posted on digg.com. You will find it's quite useful.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;SUBJECTS LIST&lt;/span&gt;&lt;br /&gt;=======================================&lt;br /&gt;Web Applications&lt;br /&gt;Structure and Interpretation of Computer Programs&lt;br /&gt;Data Structures&lt;br /&gt;Machine Structures&lt;br /&gt;Programming Languages&lt;br /&gt;Principles of Software Engineering&lt;br /&gt;Object Oriented Program Design&lt;br /&gt;Algorithms&lt;br /&gt;Computer System Engineering&lt;br /&gt;Graduate Computer Architecture&lt;br /&gt;Operating Systems and System Programming&lt;br /&gt;Performance Analysis&lt;br /&gt;Database Management Systems&lt;br /&gt;Transaction Processing for E-Commerce&lt;br /&gt;Practical Aspects of Modern Cryptography&lt;br /&gt;Theory of Computation&lt;br /&gt;Artificial Intelligence (4 lectures)&lt;br /&gt;Applications of Artificial Intelligence&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-1868126023118932981?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/1868126023118932981/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2006/10/free-science-and-video-lectures-online.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1868126023118932981'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1868126023118932981'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2006/10/free-science-and-video-lectures-online.html' title='Free Science and Video Lectures Online!'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-5286601218327772397</id><published>2006-10-03T15:16:00.000+09:00</published><updated>2006-10-03T15:36:25.221+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='friends'/><category scheme='http://www.blogger.com/atom/ns#' term='english class'/><title type='text'>Best Friends</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger2/3049/760960375341110/1600/pirates.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://photos1.blogger.com/blogger2/3049/760960375341110/320/pirates.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;My best friends are now running a business in NY. They are eager to deliver bright ideas to reality. Somehow they got funded. It's not easy to get in touch with them for now. Some day I'll go to NY to see them. A few years ago, I've tried to launch an idea related in RFID which was closed without any outputs. It's always  hard to  overcome  the barriers in real world. However without any adventures, life is boring enough. My friends and I likes to take risks to enjoy our life. That's me. And that's my real friends having no fear to embrace the hard facts that lies infront of us. In a way, we are pirates who went to unknown sea to discover tresures. I'm currently in South Korea studying computer science for now. It will take about 2 years to finish it. I hope to join my friends soon...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-5286601218327772397?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/5286601218327772397/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2006/10/best-friends.html#comment-form' title='1개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5286601218327772397'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/5286601218327772397'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2006/10/best-friends.html' title='Best Friends'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-8972035287039498496</id><published>2006-09-15T09:33:00.000+09:00</published><updated>2006-09-15T10:51:52.650+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><title type='text'>Web programming class - project team logo</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger2/3049/760960375341110/1600/PrisonBreakrBETA.png"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger2/3049/760960375341110/320/PrisonBreakrBETA.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;I'm attending a web programming class which need a project team. Team name is "Prison Break", I made a web2.0 style logo via &lt;a href="http://msig.info/web2.php"&gt;http://msig.info/web2.php&lt;/a&gt;. This site automaticaly generate Flickr style logos. I thought this solution is just appropriate for us. &lt;/p&gt;&lt;p&gt;I requested a free web hosting at &lt;a href="http://www.freeonrails.com/"&gt;http://www.freeonrails.com/&lt;/a&gt;. Still waiting the administrator's answer. I'm plannig to use &lt;strong&gt;&lt;span style="font-size:130%;color:#ff9900;"&gt;Ruby on Rails&lt;/span&gt;&lt;/strong&gt; as our web server framework. Here is the message that I posted.&lt;/p&gt;&lt;p&gt;================================================&lt;/p&gt;&lt;p&gt;Hello. I'm a student majoring in computer science in Korea.My friends and I are studying Ruby on Rails and ajax. By googling I found freeonrails, and registered without hesitating. For now we want to make a project site. In class, we are practicing javascript. It wan't easy to find a hosting site which give little sapce with Ruby on Rails capability in Korea. I'm 28 years old, and interested in Web2, Long Tail theory. I think there still are posibilities to start a biz through web. Ideas are flowing everywhere, and changes are too fast to catch. Agile development with Ruby on Rails would help at this point. I'm looking forward your permission.Thank you.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-8972035287039498496?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/8972035287039498496/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2006/09/web-class.html#comment-form' title='1개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8972035287039498496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/8972035287039498496'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2006/09/web-class.html' title='Web programming class - project team logo'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-1047577368203851847</id><published>2006-09-14T23:52:00.000+09:00</published><updated>2006-09-15T00:06:05.997+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2'/><title type='text'>Future of Web Apps</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger2/3049/760960375341110/1600/990422.jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: pointer; TEXT-ALIGN: center" alt="" src="http://photos1.blogger.com/blogger2/3049/760960375341110/320/990422.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a style="COLOR: rgb(153,153,153)" href="http://www.plasticbag.org/" target="_blank"&gt;Tom Coates&lt;/a&gt;&lt;span style="COLOR: rgb(153,153,153)"&gt; gave one of the best conference presentations ever today at &lt;/span&gt;&lt;a style="COLOR: rgb(153,153,153)" href="http://www.carsonworkshops.com/summit/" target="_blank"&gt;The Future of Web Apps&lt;/a&gt;&lt;span style="COLOR: rgb(153,153,153)"&gt; in San Francisco. It doesn't look like his slides are online, but you can see his presentation from the &lt;/span&gt;&lt;i style="COLOR: rgb(153,153,153)"&gt;last&lt;/i&gt;&lt;span style="COLOR: rgb(153,153,153)"&gt; Future of Web Apps conference &lt;/span&gt;&lt;a style="COLOR: rgb(153,153,153)" href="http://www.plasticbag.org/archives/2006/02/my_future_of_web_apps_slides/" target="_blank"&gt;here&lt;/a&gt;&lt;span style="COLOR: rgb(153,153,153)"&gt;. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;How can I add value to the Aggregate Web?&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:trebuchet ms;" &gt;A web of &lt;span style="FONT-WEIGHT: bold;color:#ff9900;" &gt;data sources&lt;/span&gt;, &lt;span style="FONT-WEIGHT: bold; COLOR: rgb(255,102,0)"&gt;&lt;span style="font-size:180%;"&gt;services for exploring and&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;font-size:180%;" &gt; &lt;/span&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:trebuchet ms;" &gt;&lt;span style="FONT-WEIGHT: bold"&gt;manipulating data&lt;/span&gt;,&lt;br /&gt;and &lt;span style="FONT-WEIGHT: bold"&gt;ways that users can&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;font-size:130%;" &gt; &lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;font-size:130%;color:#ff9966;"  &gt;connect them together&lt;/span&gt;&lt;span style="FONT-WEIGHT: bold;font-size:130%;" &gt;&lt;span style="color:#ff9966;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;Native to a Web of Data&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:trebuchet ms;font-size:100%;"  &gt;1. Look to add value to the Aggregate Web of data&lt;br /&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:trebuchet ms;font-size:100%;"  &gt;2. Build for normal users, developers and machines&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:trebuchet ms;font-size:100%;"  &gt;3. Start designing with data, not with pages&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:trebuchet ms;font-size:100%;"  &gt;4. Identify your first order objects and make them addressable&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:trebuchet ms;font-size:100%;"  &gt;5. Use readable, reliable and hackable URLs&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:trebuchet ms;font-size:100%;"  &gt;6. Correlate with external identifier schemes&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:trebuchet ms;font-size:100%;"  &gt;7. Build list views and batch manipulation interfaces&lt;br /&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:trebuchet ms;font-size:100%;"  &gt;8. Create parallel data services using standards&lt;br /&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:trebuchet ms;font-size:100%;"  &gt;9. Make your data as discoverable as possible&lt;/span&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:trebuchet ms;" &gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-1047577368203851847?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/1047577368203851847/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2006/09/future-of-web-apps.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1047577368203851847'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/1047577368203851847'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2006/09/future-of-web-apps.html' title='Future of Web Apps'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6233787394794376169.post-4303283972945025754</id><published>2006-09-14T19:48:00.000+09:00</published><updated>2006-09-14T19:50:22.660+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='job'/><category scheme='http://www.blogger.com/atom/ns#' term='english class'/><title type='text'>Starting your job - making good impression</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger2/3049/760960375341110/1600/first_impressions.0.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0pt 10px 10px 0pt; CURSOR: pointer" alt="" src="http://photos1.blogger.com/blogger2/3049/760960375341110/320/first_impressions.0.jpg" border="0" /&gt;&lt;/a&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:trebuchet ms;" &gt;&lt;span style="COLOR: rgb(102,102,102);font-size:130%;" &gt;G&lt;/span&gt;ood first impression comes from the attitude and your answers. Those are rooted on your &lt;strong&gt;&lt;span style="COLOR: rgb(255,102,0);font-size:130%;" &gt;thoughts&lt;/span&gt;&lt;/strong&gt; about the way you look at other people. So before you make some actions, consider about yourself. How do you think about other people? With &lt;strong&gt;&lt;span style="COLOR: rgb(255,153,0);font-size:180%;" &gt;respect&lt;/span&gt;&lt;/strong&gt; of someone else, even though some people look naive to you, you can speak and behave nice. You don't have to rethink about your behaviors are appropriate or not. Without such mind, you may make some mistakes by accident. Having respects for others guides you to &lt;strong style="COLOR: rgb(102,102,102)"&gt;&lt;span style="COLOR: rgb(204,102,0);font-size:130%;" &gt;open but affirmative&lt;/span&gt;&lt;/strong&gt; view points. Because you accept others' opinions, you will not underestimate any little possibilities. Hence your &lt;strong&gt;&lt;span style="COLOR: rgb(255,153,0);font-size:180%;" &gt;ideas grow richer&lt;/span&gt;&lt;/strong&gt;. Though a company has its own corporate culture, they need new ideas. Because they're always seeking new business models. With your out-of-box mind, feed them your &lt;strong&gt;&lt;span style="COLOR: rgb(255,102,0);font-size:130%;" &gt;imaginations&lt;/span&gt;&lt;/strong&gt;. You will be welcomed.&lt;/span&gt; &lt;span style="COLOR: rgb(102,102,102);font-family:trebuchet ms;" &gt;Your unique view points about recent social topics will help you to go on conversations with new co-workers. If you have gone to army, such experiences would be one choice among general topics to break the ice. Now you can reinforce your impressions with little more skills such as memorizing your team members' names, and sparkling eye contacts.&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:Trebuchet MS;" &gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(102,102,102);font-family:Trebuchet MS;" &gt;&lt;strong&gt;&lt;span style="COLOR: rgb(255,153,0)"&gt;Trust&lt;/span&gt;&lt;/strong&gt; and &lt;strong&gt;&lt;span style="COLOR: rgb(255,153,0)"&gt;reliability&lt;/span&gt;&lt;/strong&gt; needs some time. Therefore check your mind time to time not to lose it. First good impressions are crucial for your job. But long-living reputations are more critical for your future. When you start to feel that you're losing such minds, go to kindergarten and talk with kids. Soon you'll find how kids are creative and smart. There's no limit. Once you get back to this respect-oriented mind, your behaviors will be appropriate.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6233787394794376169-4303283972945025754?l=jaigouk.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jaigouk.blogspot.com/feeds/4303283972945025754/comments/default' title='댓글'/><link rel='replies' type='text/html' href='http://jaigouk.blogspot.com/2006/09/starting-your-job-making-good.html#comment-form' title='0개의 덧글'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4303283972945025754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6233787394794376169/posts/default/4303283972945025754'/><link rel='alternate' type='text/html' href='http://jaigouk.blogspot.com/2006/09/starting-your-job-making-good.html' title='Starting your job - making good impression'/><author><name>on the edge of Complexity</name><uri>http://www.blogger.com/profile/11692594157379801516</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://1.bp.blogspot.com/_HbRZwpPnFNs/SZwJRJtWDrI/AAAAAAAAAXc/sZ3aqYy0R2g/S220/for_profile.jpg'/></author><thr:total>0</thr:total></entry></feed>
