<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/stylesheets/rss.css" type="text/css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Vidul Nikolaev Petrov</title>
    <link>http://www.vidul.com</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description></description>
    <item>
      <title>Search Results</title>
      <description>&lt;p&gt;The search result for &amp;#8216;vidul&amp;#8217; shows some ut2be clip!? (in contrast to the relevant results that I get from yahoo). &amp;#8220;Thank you&amp;#8221; google!&lt;/p&gt;</description>
      <pubDate>Sun, 12 Oct 2008 18:06:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:0fd7856e-89a0-42e1-945f-09930c1c14ad</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/10/12/search-results</link>
      <category>news</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/88</trackback:ping>
    </item>
    <item>
      <title>Custom Google Search</title>
      <description>&lt;p&gt;&lt;a href="http://it-manuals.appspot.com/"&gt;IT manuals (mostly programming)&lt;/a&gt;&lt;/p&gt;


	&lt;p&gt;Yes it takes a lot of time (in my case almost 5 hours) to get into the goog search manuals and goog appengine. But that&amp;#8217;s ok goog is doing fine.&lt;/p&gt;</description>
      <pubDate>Wed, 08 Oct 2008 15:13:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:525c4a84-8f2a-4db9-93cc-99c091bfde72</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/10/08/custom-google-search</link>
      <category>news</category>
      <category>search</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/87</trackback:ping>
    </item>
    <item>
      <title>Quick Scanner (Host/Port)</title>
      <description>&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="comment"&gt;#!/usr/bin/ruby&lt;/span&gt;

&lt;span class="ident"&gt;host_port&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;ARGV&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;0&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt;
&lt;span class="ident"&gt;host&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;host_port&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;split&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;:&lt;/span&gt;&lt;span class="punct"&gt;').&lt;/span&gt;&lt;span class="ident"&gt;first&lt;/span&gt;
&lt;span class="ident"&gt;port&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;host_port&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;split&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;:&lt;/span&gt;&lt;span class="punct"&gt;').&lt;/span&gt;&lt;span class="ident"&gt;last&lt;/span&gt;

&lt;span class="ident"&gt;puts&lt;/span&gt; &lt;span class="punct"&gt;%x[&lt;/span&gt;&lt;span class="string"&gt;nmap -p &lt;span class="expr"&gt;#{port}&lt;/span&gt; &lt;span class="expr"&gt;#{host}&lt;/span&gt;&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

Or just:
&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="comment"&gt;#!/usr/bin/ruby&lt;/span&gt;

&lt;span class="ident"&gt;host&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;port&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;ARGV&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;0&lt;/span&gt;&lt;span class="punct"&gt;].&lt;/span&gt;&lt;span class="ident"&gt;split&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;:&lt;/span&gt;&lt;span class="punct"&gt;')&lt;/span&gt;

&lt;span class="ident"&gt;puts&lt;/span&gt; &lt;span class="punct"&gt;%x[&lt;/span&gt;&lt;span class="string"&gt;nmap -p &lt;span class="expr"&gt;#{port}&lt;/span&gt; &lt;span class="expr"&gt;#{host}&lt;/span&gt;&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

Usage (cli and given that the script is named scan_proxy):
&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="punct"&gt;./&lt;/span&gt;&lt;span class="regex"&gt;scan_proxy 202.105.182.87:808&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <pubDate>Sun, 28 Sep 2008 13:09:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:32b246a1-01ba-4b9e-b32f-2cebcb0348b4</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/09/28/quick-scanner-host-port</link>
      <category>Ruby</category>
      <category>scripts</category>
      <category>scanner</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/86</trackback:ping>
    </item>
    <item>
      <title>Unaliased Fronts and KDE</title>
      <description>&lt;p&gt;All of us (the people that hate vista and apple styled aliased fonts) have seen the ugly fonts in some &lt;span class="caps"&gt;KDE&lt;/span&gt; apps (Firefox for example). But this is not the case with &lt;span class="caps"&gt;XFCE&lt;/span&gt; where evreything works fine.&lt;br /&gt; So here is a fix for &lt;span class="caps"&gt;KDE&lt;/span&gt; (just run the following command):&lt;br /&gt;&lt;/p&gt;


&lt;code&gt;
xfce-mcs-manager
&lt;/code&gt;</description>
      <pubDate>Wed, 24 Sep 2008 11:49:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:d49f3998-bdd9-424e-b803-dd4d33aec3ac</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/09/24/unaliased-fronts-and-kde</link>
      <category>windows</category>
      <category>managers</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/85</trackback:ping>
    </item>
    <item>
      <title>Simple Phonebook Script</title>
      <description>&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;
&lt;span class="comment"&gt;#!/usr/bin/env ruby&lt;/span&gt;

&lt;span class="keyword"&gt;class &lt;/span&gt;&lt;span class="class"&gt;Hash&lt;/span&gt;
  &lt;span class="keyword"&gt;def &lt;/span&gt;&lt;span class="method"&gt;search&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;arg&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
    &lt;span class="constant"&gt;self&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;select&lt;/span&gt; &lt;span class="punct"&gt;{&lt;/span&gt; &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;k&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt;&lt;span class="ident"&gt;v&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt; &lt;span class="ident"&gt;k&lt;/span&gt; &lt;span class="punct"&gt;=~&lt;/span&gt; &lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="regex"&gt;&lt;span class="expr"&gt;#{arg}&lt;/span&gt;&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt; &lt;span class="keyword"&gt;or&lt;/span&gt; &lt;span class="ident"&gt;v&lt;/span&gt; &lt;span class="punct"&gt;=~&lt;/span&gt; &lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="regex"&gt;&lt;span class="expr"&gt;#{arg}&lt;/span&gt;&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt; &lt;span class="punct"&gt;}&lt;/span&gt;
  &lt;span class="keyword"&gt;end&lt;/span&gt;
&lt;span class="keyword"&gt;end&lt;/span&gt;

&lt;span class="ident"&gt;search&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;ARGV&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;0&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt;
&lt;span class="ident"&gt;search&lt;/span&gt; &lt;span class="punct"&gt;=~&lt;/span&gt; &lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="regex"&gt;^[0-9]+&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt; &lt;span class="keyword"&gt;and&lt;/span&gt; &lt;span class="ident"&gt;search&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;search&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;to_i&lt;/span&gt;

&lt;span class="ident"&gt;phones&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;{&lt;/span&gt;
  &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;me&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;        &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;359880101020406&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;,&lt;/span&gt;
  &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;Hitler&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;     &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;+49 666&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;,&lt;/span&gt;
  &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;Van Gog&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;+31&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;,&lt;/span&gt;
  &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;devil&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;      &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;666&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;,&lt;/span&gt;
  &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;God&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;       &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;,&lt;/span&gt;
&lt;span class="punct"&gt;}&lt;/span&gt;

&lt;span class="ident"&gt;phones&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;search&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;search&lt;/span&gt;&lt;span class="punct"&gt;).&lt;/span&gt;&lt;span class="ident"&gt;each&lt;/span&gt; &lt;span class="keyword"&gt;do&lt;/span&gt; &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;person&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt;
  &lt;span class="ident"&gt;print&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;person:&lt;span class="expr"&gt;#{person.first}&lt;/span&gt;&lt;span class="escape"&gt;\t&lt;/span&gt;number:&lt;span class="expr"&gt;#{person.last}&lt;/span&gt;&lt;span class="escape"&gt;\n&lt;/span&gt;&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;
&lt;span class="keyword"&gt;end&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <pubDate>Sat, 20 Sep 2008 08:39:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:091f09cc-faa0-46ff-8596-a55c3bda5c58</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/09/20/simple-phonebook-script</link>
      <category>Ruby</category>
      <category>scripts</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/84</trackback:ping>
    </item>
    <item>
      <title>What Is PHP?</title>
      <description>&lt;p&gt;Technology, which is prohibited by the Geneva Convention. Unfortunately, there are still countries in the world where such technology is used to torture animals and developers.&lt;/p&gt;


	&lt;p&gt;According to the &lt;span class="caps"&gt;FMI&lt;/span&gt; study, 23 monkeys may make random chatter on the keypad to write the language compiler for a maximum of 292 hours.
&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://dreal.net/wiki/index.php/&#1055;&#1098;&#1061;&#1098;&#1055;&#1098;"&gt;the original text (in Bulgarian)&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Mon, 15 Sep 2008 10:58:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:86e956f3-fdd1-485e-8eb6-85031f71c06e</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/09/15/what-is-php</link>
      <category>news</category>
      <category>php</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/83</trackback:ping>
    </item>
    <item>
      <title>Ruby __DATA__ (embedded data)</title>
      <description>&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="keyword"&gt;module &lt;/span&gt;&lt;span class="module"&gt;Kernel&lt;/span&gt;
  &lt;span class="constant"&gt;RE_THIS_DATA&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;lambda&lt;/span&gt;&lt;span class="punct"&gt;{&lt;/span&gt; &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;number&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt; &lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="regex"&gt;^__DATA&lt;span class="expr"&gt;#{number}&lt;/span&gt;__&lt;span class="escape"&gt;\n&lt;/span&gt;&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt; &lt;span class="punct"&gt;}&lt;/span&gt;
  &lt;span class="constant"&gt;RE_THE_DATA&lt;/span&gt;  &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="regex"&gt;^__DATA&lt;span class="escape"&gt;\d&lt;/span&gt;+__&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt;

  &lt;span class="keyword"&gt;def &lt;/span&gt;&lt;span class="method"&gt;__data__&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;num&lt;/span&gt;&lt;span class="punct"&gt;=&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;)&lt;/span&gt;
    &lt;span class="ident"&gt;data&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;File&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;read&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="global"&gt;$0&lt;/span&gt;&lt;span class="punct"&gt;).&lt;/span&gt;&lt;span class="ident"&gt;split&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="constant"&gt;RE_THIS_DATA&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;call&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;num&lt;/span&gt;&lt;span class="punct"&gt;))&lt;/span&gt;
    &lt;span class="ident"&gt;data&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;].&lt;/span&gt;&lt;span class="ident"&gt;split&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="constant"&gt;RE_THE_DATA&lt;/span&gt;&lt;span class="punct"&gt;)[&lt;/span&gt;&lt;span class="number"&gt;0&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt; &lt;span class="keyword"&gt;if&lt;/span&gt; &lt;span class="ident"&gt;data&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt;
  &lt;span class="keyword"&gt;end&lt;/span&gt;
&lt;span class="keyword"&gt;end&lt;/span&gt;

&lt;span class="ident"&gt;puts&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;DATA&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;
&lt;span class="ident"&gt;print&lt;/span&gt; &lt;span class="ident"&gt;__data__&lt;/span&gt;&lt;span class="punct"&gt;()&lt;/span&gt;

&lt;span class="ident"&gt;puts&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;DATA1&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;
&lt;span class="ident"&gt;print&lt;/span&gt; &lt;span class="ident"&gt;__data__&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;

&lt;span class="ident"&gt;puts&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;DATA2&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;
&lt;span class="ident"&gt;print&lt;/span&gt; &lt;span class="ident"&gt;__data__&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="number"&gt;2&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;

&lt;span class="comment"&gt;__END__

__DATA__
data_1
data_2
data_3

__DATA1__
data1_1
data1_2
data1_3

data1_11

__DATA2__
data2_1
data2_2
data2_3

data2_31&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <pubDate>Fri, 22 Aug 2008 10:04:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:5494c1f6-f101-4756-b5d6-6a39578877e8</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/08/22/ruby-__data__-embedded-data</link>
      <category>Ruby</category>
      <category>data</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/82</trackback:ping>
    </item>
    <item>
      <title>Chdir Method with Block</title>
      <description>&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="comment"&gt;# temporary changes the cwd to '/tmp',&lt;/span&gt;
&lt;span class="comment"&gt;# adds content to a file and finally restores cwd&lt;/span&gt;

&lt;span class="ident"&gt;p&lt;/span&gt; &lt;span class="constant"&gt;Dir&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;getwd&lt;/span&gt;

&lt;span class="constant"&gt;Dir&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;chdir&lt;/span&gt;&lt;span class="punct"&gt;(&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;/tmp&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;)&lt;/span&gt; &lt;span class="keyword"&gt;do&lt;/span&gt;
  &lt;span class="ident"&gt;p&lt;/span&gt; &lt;span class="constant"&gt;Dir&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;getwd&lt;/span&gt;
  &lt;span class="constant"&gt;File&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;open&lt;/span&gt;&lt;span class="punct"&gt;(&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;test.txt&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;,&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;a&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;)&lt;/span&gt; &lt;span class="keyword"&gt;do&lt;/span&gt; &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;f&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt;
    &lt;span class="ident"&gt;f&lt;/span&gt; &lt;span class="punct"&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class="constant"&gt;Time&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;now&lt;/span&gt; &lt;span class="punct"&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;&lt;span class="escape"&gt;\n&lt;/span&gt;&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;
  &lt;span class="keyword"&gt;end&lt;/span&gt;
&lt;span class="keyword"&gt;end&lt;/span&gt;

&lt;span class="ident"&gt;p&lt;/span&gt; &lt;span class="constant"&gt;Dir&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;getwd&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <pubDate>Fri, 22 Aug 2008 09:13:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:678b23a3-90e3-46de-a472-ae5a6cde74b9</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/08/22/chdir-method-with-block</link>
      <category>Ruby</category>
      <category>dir</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/81</trackback:ping>
    </item>
    <item>
      <title>Fighting with Opera Bugs</title>
      <description>&lt;p&gt;Thank to Opera plugins&amp;#8217; implementaion I had over 100% &lt;span class="caps"&gt;CPU&lt;/span&gt; laod (dual core).&lt;br /&gt;
The solution: &lt;b&gt;rm /usr/lib/opera/9.52/operaplugincwrapper&lt;/b&gt;&lt;/p&gt;</description>
      <pubDate>Thu, 21 Aug 2008 14:46:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:ba6dd31d-c493-421c-8a2f-c6d42e150632</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/08/21/fightinh-with-opera-bugs</link>
      <category>news</category>
      <category>Opera</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/80</trackback:ping>
    </item>
    <item>
      <title>Random strings</title>
      <description>&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="keyword"&gt;module &lt;/span&gt;&lt;span class="module"&gt;Kernel&lt;/span&gt;
  &lt;span class="keyword"&gt;def &lt;/span&gt;&lt;span class="method"&gt;random_uc&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;size&lt;/span&gt;&lt;span class="punct"&gt;=&lt;/span&gt;&lt;span class="number"&gt;16&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
    &lt;span class="constant"&gt;Array&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;new&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;size&lt;/span&gt;&lt;span class="punct"&gt;){&lt;/span&gt; &lt;span class="ident"&gt;rand&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="number"&gt;26&lt;/span&gt;&lt;span class="punct"&gt;)+&lt;/span&gt;&lt;span class="number"&gt;65&lt;/span&gt; &lt;span class="punct"&gt;}.&lt;/span&gt;&lt;span class="ident"&gt;pack&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;C*&lt;/span&gt;&lt;span class="punct"&gt;')&lt;/span&gt;
  &lt;span class="keyword"&gt;end&lt;/span&gt;
  &lt;span class="keyword"&gt;def &lt;/span&gt;&lt;span class="method"&gt;random_lc&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;size&lt;/span&gt;&lt;span class="punct"&gt;=&lt;/span&gt;&lt;span class="number"&gt;16&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
    &lt;span class="constant"&gt;Array&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;new&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;size&lt;/span&gt;&lt;span class="punct"&gt;){&lt;/span&gt; &lt;span class="ident"&gt;rand&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="number"&gt;26&lt;/span&gt;&lt;span class="punct"&gt;)+&lt;/span&gt;&lt;span class="number"&gt;97&lt;/span&gt; &lt;span class="punct"&gt;}.&lt;/span&gt;&lt;span class="ident"&gt;pack&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;C*&lt;/span&gt;&lt;span class="punct"&gt;')&lt;/span&gt;
  &lt;span class="keyword"&gt;end&lt;/span&gt;
  &lt;span class="keyword"&gt;def &lt;/span&gt;&lt;span class="method"&gt;random_num&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;size&lt;/span&gt;&lt;span class="punct"&gt;=&lt;/span&gt;&lt;span class="number"&gt;16&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
    &lt;span class="constant"&gt;Array&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;new&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;size&lt;/span&gt;&lt;span class="punct"&gt;){&lt;/span&gt; &lt;span class="ident"&gt;rand&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="number"&gt;10&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt; &lt;span class="punct"&gt;}.&lt;/span&gt;&lt;span class="ident"&gt;join&lt;/span&gt;
  &lt;span class="keyword"&gt;end&lt;/span&gt;
&lt;span class="keyword"&gt;end&lt;/span&gt;

&lt;span class="ident"&gt;random_uc&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;HRTWYJBJEZDKYPTJ&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;
&lt;span class="ident"&gt;random_lc&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;onxkvkezqukspmcx&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;
&lt;span class="ident"&gt;random_num&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;5862195932579950&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <pubDate>Tue, 19 Aug 2008 07:06:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:b9aebfde-aaf9-42be-89b2-fa51e8040d1a</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/08/19/random-strings</link>
      <category>Ruby</category>
      <category>random</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/79</trackback:ping>
    </item>
    <item>
      <title>Active Support Date and Time</title>
      <description>&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="ident"&gt;n&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;Time&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;now&lt;/span&gt;

&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;n&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;at_end_of_week&lt;/span&gt; &lt;span class="punct"&gt;-&lt;/span&gt; &lt;span class="ident"&gt;n&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;at_beginning_of_week&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt; &lt;span class="punct"&gt;/&lt;/span&gt; &lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="number"&gt;24&lt;/span&gt; &lt;span class="punct"&gt;*&lt;/span&gt; &lt;span class="number"&gt;3600&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;

&lt;span class="comment"&gt;# 6.99998842592593&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;Shouldn&amp;#8217;t it be &lt;i&gt;7&lt;/i&gt; exactly?&lt;/p&gt;


Probably because the start of a week is &lt;i&gt;00:00:00&lt;/i&gt; and the  end is &lt;i&gt;23:59:59&lt;/i&gt;:
&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="punct"&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;Time&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;now&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;at_beginning_of_week&lt;/span&gt;
&lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;Mon&lt;/span&gt; &lt;span class="constant"&gt;Aug&lt;/span&gt; &lt;span class="number"&gt;04&lt;/span&gt; &lt;span class="number"&gt;00&lt;/span&gt;&lt;span class="punct"&gt;:&lt;/span&gt;&lt;span class="number"&gt;00&lt;/span&gt;&lt;span class="punct"&gt;:&lt;/span&gt;&lt;span class="number"&gt;00&lt;/span&gt; &lt;span class="punct"&gt;+&lt;/span&gt;&lt;span class="number"&gt;0300&lt;/span&gt; &lt;span class="number"&gt;2008&lt;/span&gt;

&lt;span class="punct"&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;Time&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;now&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;at_end_of_week&lt;/span&gt;
&lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;Sun&lt;/span&gt; &lt;span class="constant"&gt;Aug&lt;/span&gt; &lt;span class="number"&gt;10&lt;/span&gt; &lt;span class="number"&gt;23&lt;/span&gt;&lt;span class="punct"&gt;:&lt;/span&gt;&lt;span class="number"&gt;59&lt;/span&gt;&lt;span class="punct"&gt;:&lt;/span&gt;&lt;span class="number"&gt;59&lt;/span&gt; &lt;span class="punct"&gt;+&lt;/span&gt;&lt;span class="number"&gt;0300&lt;/span&gt; &lt;span class="number"&gt;2008&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <pubDate>Sun, 10 Aug 2008 07:38:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:05ed38c2-001d-4272-b3cc-261501473ed5</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/08/10/active-support-date-and-time</link>
      <category>Ruby</category>
      <category>ActiveSupport</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/78</trackback:ping>
    </item>
    <item>
      <title>Setting Core Objects' Methods in RoR</title>
      <description>&lt;p&gt;&lt;i&gt;mkdir -p &lt;span class="caps"&gt;RAILS&lt;/span&gt;_ROOT/vendor/plugins/core_methods&lt;/i&gt;
&lt;br /&gt;
&lt;i&gt;mkdir -p &lt;span class="caps"&gt;RAILS&lt;/span&gt;_ROOT/vendor/plugins/core_methods/init.rb&lt;/i&gt;
&lt;br /&gt;&lt;/p&gt;


The content of &lt;i&gt;init.rb&lt;/i&gt;:
&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="keyword"&gt;module &lt;/span&gt;&lt;span class="module"&gt;Rails&lt;/span&gt;

  &lt;span class="ident"&gt;empty_and_nil&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;%q{&lt;/span&gt;&lt;span class="string"&gt;def empty_and_nil; self.empty?? nil : self end&lt;/span&gt;&lt;span class="punct"&gt;}&lt;/span&gt;

  &lt;span class="constant"&gt;Array&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;send&lt;/span&gt; &lt;span class="symbol"&gt;:class_eval&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;empty_and_nil&lt;/span&gt;
  &lt;span class="constant"&gt;Hash&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;send&lt;/span&gt;  &lt;span class="symbol"&gt;:class_eval&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;empty_and_nil&lt;/span&gt;

&lt;span class="keyword"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;The namespace &lt;i&gt;Rails&lt;/i&gt; isn&amp;#8217;t necessary, it&amp;#8217;s a cosmetic feature.&lt;/p&gt;</description>
      <pubDate>Sat, 09 Aug 2008 06:14:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:2f0f1afa-3194-4a32-9d28-a923afbb000c</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/08/09/setting-core-objects-methods-in-ror</link>
      <category>Ruby</category>
      <category>RoR</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/77</trackback:ping>
    </item>
    <item>
      <title>Getting the Weekday</title>
      <description>&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="comment"&gt;# if the birthdate is 1978-12-03&lt;/span&gt;

&lt;span class="constant"&gt;Time&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;gm&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="number"&gt;1978&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="number"&gt;12&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="number"&gt;3&lt;/span&gt;&lt;span class="punct"&gt;).&lt;/span&gt;&lt;span class="ident"&gt;strftime&lt;/span&gt;&lt;span class="punct"&gt;(&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;%a&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;)&lt;/span&gt; 
&lt;span class="constant"&gt;Time&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;gm&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="number"&gt;1978&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="number"&gt;12&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="number"&gt;3&lt;/span&gt;&lt;span class="punct"&gt;).&lt;/span&gt;&lt;span class="ident"&gt;strftime&lt;/span&gt;&lt;span class="punct"&gt;(&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;%A&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;)&lt;/span&gt; 

&lt;span class="comment"&gt;# the weekday day is &amp;quot;Sun&amp;quot; (%a), &amp;quot;Sunday&amp;quot; (%A)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;&lt;a href="http://www.ruby-doc.org/core/classes/Time.html#M000297"&gt;Ruby core docs&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Sat, 09 Aug 2008 03:50:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:6deb4dff-2685-4c40-afca-85169dcd6277</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/08/09/getting-the-weekday</link>
      <category>Ruby</category>
      <category>time</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/76</trackback:ping>
    </item>
    <item>
      <title>Return nil Instead Of empty Array instance</title>
      <description>&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="keyword"&gt;class &lt;/span&gt;&lt;span class="class"&gt;Array&lt;/span&gt;
  &lt;span class="keyword"&gt;def &lt;/span&gt;&lt;span class="method"&gt;empty_and_nil&lt;/span&gt;
    &lt;span class="constant"&gt;self&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;empty?&lt;/span&gt;&lt;span class="punct"&gt;?&lt;/span&gt; &lt;span class="constant"&gt;nil&lt;/span&gt; &lt;span class="punct"&gt;:&lt;/span&gt; &lt;span class="constant"&gt;self&lt;/span&gt;
  &lt;span class="keyword"&gt;end&lt;/span&gt;
&lt;span class="keyword"&gt;end&lt;/span&gt;

&lt;span class="ident"&gt;result&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt;&lt;span class="number"&gt;2&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt;&lt;span class="number"&gt;3&lt;/span&gt;&lt;span class="punct"&gt;].&lt;/span&gt;&lt;span class="ident"&gt;empty_and_nil&lt;/span&gt; &lt;span class="comment"&gt;# [1, 2, 3]&lt;/span&gt;
&lt;span class="ident"&gt;result&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;[].&lt;/span&gt;&lt;span class="ident"&gt;empty_and_nil&lt;/span&gt;        &lt;span class="comment"&gt;# nil&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <pubDate>Fri, 08 Aug 2008 04:35:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:ae93df8f-3452-4c6f-8ed0-b5899f480c27</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/08/08/return-nil-instead-of-empty-array-instance</link>
      <category>Ruby</category>
      <category>array</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/75</trackback:ping>
    </item>
    <item>
      <title>How false Is nil</title>
      <description>&lt;div class="KonaBody"&gt;
Use &lt;b&gt;nil&lt;/b&gt; when the return is a boolean value.&lt;br /&gt;
Use &lt;b&gt;false&lt;/b&gt; when the return is either &lt;b&gt;false&lt;/b&gt; or not &lt;b&gt;true&lt;/b&gt; object&lt;/i&gt;.&lt;br /&gt;
Otherwise they have pretty much the same semantic:
&lt;/div&gt;
&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="constant"&gt;nil&lt;/span&gt; &lt;span class="punct"&gt;==&lt;/span&gt; &lt;span class="constant"&gt;false&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;false&lt;/span&gt;
&lt;span class="constant"&gt;nil&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;nil?&lt;/span&gt;        &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;true&lt;/span&gt;
&lt;span class="constant"&gt;false&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;nil?&lt;/span&gt;     &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;false&lt;/span&gt;
&lt;span class="constant"&gt;true&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;nil?&lt;/span&gt;      &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;false&lt;/span&gt;

&lt;span class="keyword"&gt;if&lt;/span&gt; &lt;span class="punct"&gt;!&lt;/span&gt;&lt;span class="constant"&gt;nil&lt;/span&gt; &lt;span class="punct"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="punct"&gt;!&lt;/span&gt;&lt;span class="constant"&gt;false&lt;/span&gt;
  &lt;span class="ident"&gt;puts&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;true&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;
&lt;span class="keyword"&gt;end&lt;/span&gt;

&lt;span class="keyword"&gt;if&lt;/span&gt; &lt;span class="constant"&gt;nil&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;nil?&lt;/span&gt; &lt;span class="punct"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="punct"&gt;!&lt;/span&gt;&lt;span class="constant"&gt;true&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;nil?&lt;/span&gt;
  &lt;span class="ident"&gt;puts&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;true&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;
&lt;span class="keyword"&gt;end&lt;/span&gt;

&lt;span class="punct"&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;TrueClass&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;ancestors&lt;/span&gt;
&lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="constant"&gt;TrueClass&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="constant"&gt;Object&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="constant"&gt;Kernel&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt;
&lt;span class="punct"&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;FalseClass&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;ancestors&lt;/span&gt;
&lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="constant"&gt;FalseClass&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="constant"&gt;Object&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="constant"&gt;Kernel&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt;
&lt;span class="punct"&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;NilClass&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;ancestors&lt;/span&gt;
&lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="constant"&gt;NilClass&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="constant"&gt;Object&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="constant"&gt;Kernel&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;&lt;a href="http://www.ruby-doc.org/core/"&gt;Ruby core docs&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Mon, 04 Aug 2008 07:59:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:46c21b9c-0989-44ac-bbaa-f7825b0d51ed</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/08/04/how-false-is-nil</link>
      <category>Ruby</category>
      <category>basis</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/74</trackback:ping>
    </item>
    <item>
      <title>The Most Dangerous Beast</title>
      <description>&lt;div style="overflow:auto; width:540px;"&gt;
&lt;img src="http://www.vidul.com/files/croc_child1.jpg"&gt;
&lt;/div&gt;</description>
      <pubDate>Mon, 04 Aug 2008 02:48:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:7aa436b8-1ee7-4094-bd7f-bd8f5846ac97</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/08/04/the-most-dangerous-beast</link>
      <category>news</category>
      <category>impression</category>
      <enclosure type="image/jpeg" url="http://www.vidul.com/files/croc_child1.jpg" length="158742"/>
      <trackback:ping>http://www.vidul.com/articles/trackback/73</trackback:ping>
    </item>
    <item>
      <title>Remove All Empty Directories</title>
      <description>&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="keyword"&gt;alias&lt;/span&gt; &lt;span class="ident"&gt;_rmdir_empty&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;rmdir * 2&amp;gt;/dev/null&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <pubDate>Mon, 04 Aug 2008 02:41:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:12125fd2-892a-4167-9dcf-ef0a8a7fa794</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/08/04/remove-all-empty-directories</link>
      <category>scripts</category>
      <category>shell</category>
    </item>
    <item>
      <title>Multiplication Table In AoH Structure</title>
      <description>&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="ident"&gt;mt&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;Array&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;new&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="number"&gt;10&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt; &lt;span class="punct"&gt;{&lt;/span&gt; &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;e&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt; &lt;span class="constant"&gt;Hash&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;new&lt;/span&gt; &lt;span class="punct"&gt;{&lt;/span&gt; &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;h&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt;&lt;span class="ident"&gt;k&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt; &lt;span class="ident"&gt;h&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="ident"&gt;k&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;k&lt;/span&gt; &lt;span class="punct"&gt;*&lt;/span&gt; &lt;span class="ident"&gt;e&lt;/span&gt; &lt;span class="punct"&gt;}&lt;/span&gt; &lt;span class="punct"&gt;}&lt;/span&gt;

&lt;span class="ident"&gt;mt&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;][&lt;/span&gt;&lt;span class="number"&gt;2&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="number"&gt;2&lt;/span&gt;
&lt;span class="ident"&gt;mt&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;2&lt;/span&gt;&lt;span class="punct"&gt;][&lt;/span&gt;&lt;span class="number"&gt;2&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="number"&gt;4&lt;/span&gt;
&lt;span class="ident"&gt;mt&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;5&lt;/span&gt;&lt;span class="punct"&gt;][&lt;/span&gt;&lt;span class="number"&gt;4&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="number"&gt;20&lt;/span&gt;
&lt;span class="ident"&gt;mt&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;9&lt;/span&gt;&lt;span class="punct"&gt;][&lt;/span&gt;&lt;span class="number"&gt;5&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="number"&gt;45&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <pubDate>Sun, 03 Aug 2008 12:09:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:baa9aff7-576e-44ff-af98-fd3b97363c20</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/08/03/multiplication-table-in-aoh-structure</link>
      <category>Ruby</category>
      <category>array</category>
      <category>hash</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/71</trackback:ping>
    </item>
    <item>
      <title>Converting Between Numeric Bases</title>
      <description>Sample .bashrc file:
&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="comment"&gt;# decimal to binary&lt;/span&gt;
&lt;span class="keyword"&gt;alias&lt;/span&gt; &lt;span class="ident"&gt;d2b&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;ruby -e &amp;quot;puts ARGV.first.to_i.to_s(2)&amp;quot;&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;
&lt;span class="comment"&gt;# decimal to hexademical&lt;/span&gt;
&lt;span class="keyword"&gt;alias&lt;/span&gt; &lt;span class="ident"&gt;d2h&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;ruby -e &amp;quot;puts ARGV.first.to_i.to_s(16)&amp;quot;&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;
&lt;span class="comment"&gt;# decimal to octal&lt;/span&gt;
&lt;span class="keyword"&gt;alias&lt;/span&gt; &lt;span class="ident"&gt;d2o&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;ruby -e &amp;quot;puts ARGV.first.to_i.to_s(8)&amp;quot;&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;

&lt;span class="comment"&gt;# binary to decimal&lt;/span&gt;
&lt;span class="keyword"&gt;alias&lt;/span&gt; &lt;span class="ident"&gt;b2d&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;ruby -e &amp;quot;puts eval(%q|0b| + ARGV.first)&amp;quot;&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;
&lt;span class="comment"&gt;# binary to hexademical&lt;/span&gt;
&lt;span class="keyword"&gt;alias&lt;/span&gt; &lt;span class="ident"&gt;b2h&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;ruby -e &amp;quot;puts eval(%q|0b| + ARGV.first).to_s(16)&amp;quot;&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;
&lt;span class="comment"&gt;# binary to octal&lt;/span&gt;
&lt;span class="keyword"&gt;alias&lt;/span&gt; &lt;span class="ident"&gt;b2o&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;ruby -e &amp;quot;puts eval(%q|0b| + ARGV.first).to_s(8)&amp;quot;&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;

&lt;span class="comment"&gt;# hexademical to decimal&lt;/span&gt;
&lt;span class="keyword"&gt;alias&lt;/span&gt; &lt;span class="ident"&gt;h2d&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;ruby -e &amp;quot;puts eval(%q|0x| + ARGV.first)&amp;quot;&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;
&lt;span class="comment"&gt;# hexademical to binary&lt;/span&gt;
&lt;span class="keyword"&gt;alias&lt;/span&gt; &lt;span class="ident"&gt;h2b&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;ruby -e &amp;quot;puts eval(%q|0x| + ARGV.first).to_s(2)&amp;quot;&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;
&lt;span class="comment"&gt;# hexademical to octal&lt;/span&gt;
&lt;span class="keyword"&gt;alias&lt;/span&gt; &lt;span class="ident"&gt;h2o&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;ruby -e &amp;quot;puts eval(%q|0x| + ARGV.first).to_s(8)&amp;quot;&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;

&lt;span class="comment"&gt;# octal to decimal&lt;/span&gt;
&lt;span class="keyword"&gt;alias&lt;/span&gt; &lt;span class="ident"&gt;o2d&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;ruby -e &amp;quot;puts eval(%q|0o| + ARGV.first)&amp;quot;&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;
&lt;span class="comment"&gt;# octal to binary&lt;/span&gt;
&lt;span class="keyword"&gt;alias&lt;/span&gt; &lt;span class="ident"&gt;o2b&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;ruby -e &amp;quot;puts eval(%q|0o| + ARGV.first).to_s(2)&amp;quot;&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;
&lt;span class="comment"&gt;# octal to hexademical&lt;/span&gt;
&lt;span class="keyword"&gt;alias&lt;/span&gt; &lt;span class="ident"&gt;o2h&lt;/span&gt;&lt;span class="punct"&gt;='&lt;/span&gt;&lt;span class="string"&gt;ruby -e &amp;quot;puts eval(%q|0o| + ARGV.first).to_s(16)&amp;quot;&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <pubDate>Thu, 31 Jul 2008 23:58:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:9119177d-c089-468c-91d2-9a66ac75d989</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/07/31/converting-between-numeric-bases</link>
      <category>Ruby</category>
      <category>scripts</category>
      <category>alias</category>
      <trackback:ping>http://www.vidul.com/articles/trackback/70</trackback:ping>
    </item>
    <item>
      <title>Google::Translate, A Simple API In Ruby</title>
      <description>&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="ident"&gt;require&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;rubygems&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;
&lt;span class="ident"&gt;require&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;google_translate&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;

&lt;span class="ident"&gt;tr&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;Google&lt;/span&gt;&lt;span class="punct"&gt;::&lt;/span&gt;&lt;span class="constant"&gt;Translate&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;new&lt;/span&gt;

&lt;span class="comment"&gt;# from English to German&lt;/span&gt;
&lt;span class="ident"&gt;tr&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;translate&lt;/span&gt; &lt;span class="symbol"&gt;:from&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;en&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;,&lt;/span&gt; &lt;span class="symbol"&gt;:to&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;de&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;,&lt;/span&gt; &lt;span class="symbol"&gt;:text&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;Hello, World!&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;
 &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;Hallo&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="constant"&gt;Welt&lt;/span&gt;&lt;span class="punct"&gt;!&lt;/span&gt;

&lt;span class="comment"&gt;# from English to Spanish&lt;/span&gt;
&lt;span class="ident"&gt;tr&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;translate&lt;/span&gt; &lt;span class="symbol"&gt;:from&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;en&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;,&lt;/span&gt; &lt;span class="symbol"&gt;:to&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;es&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;,&lt;/span&gt; &lt;span class="symbol"&gt;:text&lt;/span&gt; &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;Hello, World!&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;&lt;/span&gt;
 &lt;span class="punct"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="constant"&gt;Hola&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="constant"&gt;Mundo&lt;/span&gt;&lt;span class="punct"&gt;!&lt;/span&gt;

&lt;span class="comment"&gt;# WWW::Mechanize constructor usage&lt;/span&gt;
&lt;span class="ident"&gt;tr&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;Google&lt;/span&gt;&lt;span class="punct"&gt;::&lt;/span&gt;&lt;span class="constant"&gt;Translate&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;new&lt;/span&gt; &lt;span class="punct"&gt;{&lt;/span&gt; &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;agent&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt; &lt;span class="ident"&gt;agent&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;user_agent_alias&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;Mac Safari&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt; &lt;span class="punct"&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;&lt;a href="http://googletrl.rubyforge.org/"&gt;The project home page&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Thu, 31 Jul 2008 05:03:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:082b4258-3a13-4db7-9bef-d780770eae4e</guid>
      <author>root</author>
      <link>http://www.vidul.com/articles/2008/07/31/google-translate-a-simple-api-in-ruby</link>
      <category>Ruby</category>
      <category>api</category>
    </item>
  </channel>
</rss>
