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

<channel>
	<title>Gudasoft &#187; English</title>
	<atom:link href="http://www.gudasoft.com/category/english/feed" rel="self" type="application/rss+xml" />
	<link>http://www.gudasoft.com</link>
	<description>Impossible is nothing</description>
	<lastBuildDate>Thu, 06 Oct 2011 07:17:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.5</generator>
		<item>
		<title>uptimed and uprecords</title>
		<link>http://www.gudasoft.com/english/linux/administration-linux/09/15/1384/uptimed-and-uprecords/2011</link>
		<comments>http://www.gudasoft.com/english/linux/administration-linux/09/15/1384/uptimed-and-uprecords/2011#comments</comments>
		<pubDate>Thu, 15 Sep 2011 10:22:01 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Administration]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1384</guid>
		<description><![CDATA[Nice! As I am maniac of  uptime here is nice utility found at http://www.linuxjournal.com/content/tracking-server-uptimes uptimed. It is similar to the utility that most of us have heard of, uptime, except that it runs as a daemon and logs the system&#8217;s uptime instead of just reading info that is lost on a reboot. Uptimed provides a [...]]]></description>
			<content:encoded><![CDATA[<p>Nice! As I am maniac of  uptime here is nice utility found at <a href="http://www.linuxjournal.com/content/tracking-server-uptimes">http://www.linuxjournal.com/content/tracking-server-uptimes</a></p>
<p><a href="http://podgorny.cz/moin/Uptimed" target="_blank">uptimed</a>. It is similar to the utility that most of us have heard of, uptime, except that it runs as a daemon and logs the system&#8217;s uptime instead of just reading info that is lost on a reboot. Uptimed provides a secondary command called uprecords</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/linux/administration-linux/09/15/1384/uptimed-and-uprecords/2011/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title></title>
		<link>http://www.gudasoft.com/english/development/rails-development/08/23/1374/1374/2011</link>
		<comments>http://www.gudasoft.com/english/development/rails-development/08/23/1374/1374/2011#comments</comments>
		<pubDate>Tue, 23 Aug 2011 13:08:50 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1374</guid>
		<description><![CDATA[If you have a lot of readings then Struct is the winner. If you have equal read/write then Hash And forget for OpenStruct Here is why and how I benchmark all those methods ﻿﻿﻿ guda: ~/vanilla_ui/vanilla_properties  (v2 *$ u=) ∴ irb ruby-1.8.7-p330 :001 &#62; require &#8216;benchmark&#8217; =&#62; true ruby-1.8.7-p330 :002 &#62; require &#8216;ostruct&#8217; =&#62; false [...]]]></description>
			<content:encoded><![CDATA[<p>If you have a lot of readings then Struct is the winner.</p>
<p>If you have equal read/write then Hash</p>
<p>And forget for OpenStruct</p>
<p>Here is why and how I benchmark all those methods</p>
<p>﻿﻿﻿</p>
<div id="_mcePaste">guda: ~/vanilla_ui/vanilla_properties  (v2 *$ u=) ∴ irb</div>
<div id="_mcePaste">ruby-1.8.7-p330 :001 &gt; require &#8216;benchmark&#8217;</div>
<div id="_mcePaste">=&gt; true</div>
<div id="_mcePaste">ruby-1.8.7-p330 :002 &gt; require &#8216;ostruct&#8217;</div>
<div id="_mcePaste">=&gt; false</div>
<div id="_mcePaste">ruby-1.8.7-p330 :003 &gt; n = 5000000</div>
<div id="_mcePaste">=&gt; 5000000</div>
<div id="_mcePaste">ruby-1.8.7-p330 :004 &gt;</div>
<div id="_mcePaste">ruby-1.8.7-p330 :005 &gt;   puts &#8220;convertions&#8221;</div>
<div id="_mcePaste">convertions</div>
<div id="_mcePaste">=&gt; nil</div>
<div id="_mcePaste">ruby-1.8.7-p330 :006 &gt;</div>
<div id="_mcePaste">ruby-1.8.7-p330 :007 &gt;   Benchmark.bm do |x|</div>
<div id="_mcePaste"><span style="color: #339966;">ruby-1.8.7-p330 :008 &gt;      x.report(&#8220;Struct init at start&#8221;) { CustomerOne = Struct.new(:name, :age);  s = CustomerOne.new(&#8216;a&#8217;);   n.times do s.name; end }</span></div>
<div id="_mcePaste"><span style="color: #339966;">ruby-1.8.7-p330 :009?&gt;    x.report(&#8220;Struct with write op&#8221;) { CustomerTwo = Struct.new(:name, :age);  s = CustomerTwo.new;  s.name = &#8216;a&#8217;; n.times do s.name; end }</span></div>
<div id="_mcePaste"><span style="color: #339966;">ruby-1.8.7-p330 :010?&gt;    x.report(&#8220;Hash&#8221;) {  s = Hash.new;  s[:name] = &#8216;a&#8217;; n.times do   ; s[:name]; end }</span></div>
<div id="_mcePaste"><span style="color: #339966;">ruby-1.8.7-p330 :011?&gt;    x.report(&#8220;OpenStruct&#8221;) { s = OpenStruct.new;  s.name = &#8216;a&#8217;; n.times do   ;  s.name; end }</span></div>
<div id="_mcePaste">ruby-1.8.7-p330 :012?&gt;   end</div>
<div id="_mcePaste">user     system      total        real</div>
<div id="_mcePaste">Struct init at start</div>
<div id="_mcePaste"><span style="color: #ff0000;">1.160000   0.000000   1.160000 (  1.155457)</span></div>
<div id="_mcePaste"><span style="color: #ff0000;">Struct with write op  1.200000   0.000000   1.200000 (  1.208754)</span></div>
<div id="_mcePaste"><span style="color: #ff0000;">Hash  1.510000   0.000000   1.510000 (  1.507588)</span></div>
<div id="_mcePaste"><span style="color: #ff0000;">OpenStruct  5.990000   0.000000   5.990000 (  5.999714)</span></div>
<div id="_mcePaste">=&gt; true</div>
<div id="_mcePaste"></div>
<div>Lets do some = operations</div>
<div id="_mcePaste"><span style="color: #339966;">ruby-1.8.7-p330 :015 &gt;   Benchmark.bm do |x|</span></div>
<div id="_mcePaste"><span style="color: #339966;">ruby-1.8.7-p330 :016 &gt;      x.report(&#8220;Struct init at start&#8221;) { CustomerMale = Struct.new(:name, :age);  n.times do s = CustomerMale.new(&#8216;a&#8217;);  s.name; end }</span></div>
<div id="_mcePaste"><span style="color: #339966;">ruby-1.8.7-p330 :017?&gt;    x.report(&#8220;Hash&#8221;) { n.times do   ; s = Hash.new;  s[:name] = &#8216;a&#8217;; s[:name]; end }</span></div>
<div id="_mcePaste"><span style="color: #339966;">ruby-1.8.7-p330 :018?&gt;    x.report(&#8220;Struct with write op&#8221;) { CustomerFemale = Struct.new(:name, :age);  n.times do s = CustomerFemale.new;  s.name = &#8216;a&#8217;; s.name; end }</span></div>
<div id="_mcePaste"><span style="color: #339966;">ruby-1.8.7-p330 :019?&gt;    x.report(&#8220;OpenStruct&#8221;) { n.times do   ; s = OpenStruct.new;  s.name = &#8216;a&#8217;; s.name; end }</span></div>
<div id="_mcePaste"><span style="color: #339966;">ruby-1.8.7-p330 :020?&gt;   end</span></div>
<div id="_mcePaste"><span style="color: #ff0000;">user     system      total        real</span></div>
<div id="_mcePaste"><span style="color: #ff0000;">Struct init at start  9.930000   0.000000   9.930000 (  9.943670)</span></div>
<div id="_mcePaste"><span style="color: #ff0000;">Hash 11.090000   0.000000  11.090000 ( 11.127766)</span></div>
<div id="_mcePaste"><span style="color: #ff0000;">Struct with write op 12.230000   0.000000  12.230000 ( 12.243452)</span></div>
<div id="_mcePaste"><span style="color: #ff0000;">OpenStruct still working &#8230;.</span></div>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/rails-development/08/23/1374/1374/2011/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>to_i or to_s is faster?</title>
		<link>http://www.gudasoft.com/english/development/rails-development/08/04/1371/to_i-or-to_s-is-faster/2011</link>
		<comments>http://www.gudasoft.com/english/development/rails-development/08/04/1371/to_i-or-to_s-is-faster/2011#comments</comments>
		<pubDate>Thu, 04 Aug 2011 14:46:16 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1371</guid>
		<description><![CDATA[require 'benchmark' n = 500000 puts "convertions" Benchmark.bm do &#124;x&#124; x.report("to_i") { n.times do   ; "123456789".to_i; end } x.report("to_s") { n.times do   ; 1234567890.to_s; end } x.report("to_sym") { n.times do   ; 1234567890.to_sym; end } end user     system      total        real to_i  0.310000   0.000000   0.310000 (  0.315844) to_s  0.490000   0.000000   0.490000 (  0.490607) to_sym  0.170000   0.000000   0.170000 [...]]]></description>
			<content:encoded><![CDATA[<pre>require 'benchmark'
n = 500000

puts "convertions"
Benchmark.bm do |x|
 x.report("to_i") { n.times do   ; "123456789".to_i; end }
 x.report("to_s") { n.times do   ; 1234567890.to_s; end }
 x.report("to_sym") { n.times do   ; 1234567890.to_sym; end }
end

user     system      total        real
to_i  0.310000   0.000000   0.310000 (  0.315844)
to_s  0.490000   0.000000   0.490000 (  0.490607)
to_sym  0.170000   0.000000   0.170000 (  0.171511)

Benchmark.bm(30) do |x|
 x.report("string.to_i == number") { n.times do   ; "123456789".to_i == 1234567890; end }
 x.report("number.to_s == string") { n.times do   ; 1234567890.to_s == '1234567890'; end }
 x.report("string.to_sym == string.to_sym") { n.times do   ; '1234567890'.to_sym == '1234567890'.to_sym; end }
 x.report("num.to_sym == string.to_sym") { n.times do   ; 1234567890.to_sym == '1234567890'.to_sym; end }
 x.report("number.sym == number.sym") { n.times do   ; 1234567890.to_sym == 1234567890.to_sym; end }
end

user     system      total        real
string.to_i == number           0.400000   0.000000   0.400000 (  0.401863)
number.to_s == string           0.740000   0.000000   0.740000 (  0.744603)
string.to_sym == string.to_sym  0.560000   0.000000   0.560000 (  0.574106)
num.to_sym == string.to_sym     0.460000   0.000000   0.460000 (  0.459292)
number.sym == number.sym        0.400000   0.000000   0.400000 (  0.399014)</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/rails-development/08/04/1371/to_i-or-to_s-is-faster/2011/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rails tip of the day</title>
		<link>http://www.gudasoft.com/english/development/rails-development/04/12/1346/rails-tip-of-the-day/2011</link>
		<comments>http://www.gudasoft.com/english/development/rails-development/04/12/1346/rails-tip-of-the-day/2011#comments</comments>
		<pubDate>Tue, 12 Apr 2011 17:06:30 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1346</guid>
		<description><![CDATA[Generating random string ActiveSupport::SecureRandom.hex(16)]]></description>
			<content:encoded><![CDATA[<p>Generating random string</p>
<pre>ActiveSupport::SecureRandom.hex(16)</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/rails-development/04/12/1346/rails-tip-of-the-day/2011/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Autoicrement the serial in bind zone files</title>
		<link>http://www.gudasoft.com/english/linux/administration-linux/09/02/1334/autoicrement-the-serial-in-bind-zone-files/2010</link>
		<comments>http://www.gudasoft.com/english/linux/administration-linux/09/02/1334/autoicrement-the-serial-in-bind-zone-files/2010#comments</comments>
		<pubDate>Thu, 02 Sep 2010 15:06:06 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Administration]]></category>
		<category><![CDATA[bind]]></category>
		<category><![CDATA[named]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1334</guid>
		<description><![CDATA[Argh. 30+ zone files and I have to increment all numbers by hand&#8230;no way. Usage:  ./inc.rb in the current directory with all db files. #!/usr/bin/ruby Dir.glob("*.db") do &#124;file_name&#124; new_zone = [] File.open(file_name) do &#124;file&#124; while (line = file.gets) line.chomp! if line =~ /Serial/ line =~ /(\s*?)(\d+)(\s*?)(;.*)/ serial = $2.to_i serial += 1 puts "#{file_name} serial [...]]]></description>
			<content:encoded><![CDATA[<p>Argh. 30+ zone files and I have to increment all numbers by hand&#8230;no way.</p>
<p>Usage:  ./inc.rb in the current directory with all db files.</p>
<pre>#!/usr/bin/ruby

Dir.glob("*.db") do |file_name|
 new_zone = []<span id="more-1334"></span>
 File.open(file_name) do |file|
 while (line = file.gets)
 line.chomp!
 if line =~ /Serial/
 line =~ /(\s*?)(\d+)(\s*?)(;.*)/
 serial = $2.to_i
 serial += 1
 puts "#{file_name} serial line:  #{$1} #{$2} #{$3} #{$4} -&gt; #{$1}#{serial}#{$3}#{$4}"
 line = "#{$1}#{serial}#{$3}#{$4}"
 end
 new_zone &lt;&lt; line
 end
 end

 File.open(file_name, "w") do |new_file|
 new_file.write(new_zone.join("\n"));
 end
end</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/linux/administration-linux/09/02/1334/autoicrement-the-serial-in-bind-zone-files/2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wireframing for faster website development</title>
		<link>http://www.gudasoft.com/english/development/08/29/1323/wireframing-for-faster-website-development/2010</link>
		<comments>http://www.gudasoft.com/english/development/08/29/1323/wireframing-for-faster-website-development/2010#comments</comments>
		<pubDate>Sun, 29 Aug 2010 18:55:47 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1323</guid>
		<description><![CDATA[I have tried the approach listed in &#8220;Getting Real&#8221; by 37signals and I have great results. The client was very happy because he can imagine his website. Now I am considering to buy or make such nice tools :) http://www.uistencils.com/website-stencil-kit.html http://www.mstonerblog.com/index.php/blog/comments/return_of_the_paper_wireframes/ 1. Pencil Pencil (free) is a Firefox plugin that professes to enable you to [...]]]></description>
			<content:encoded><![CDATA[<p>I have tried the approach listed in &#8220;Getting Real&#8221; by 37signals and I have great results.</p>
<p>The client was  very happy because he can imagine his website.</p>
<p>Now I am considering to buy or make such nice tools :)</p>
<p>http://www.uistencils.com/website-stencil-kit.html</p>
<p><img class="alignnone" src="http://cdn.shopify.com/s/files/1/0042/9602/products/android-cover-2.jpg?1282832512" alt="" width="225" height="302" /><img class="alignnone" src="http://cdn.shopify.com/s/files/1/0042/9602/products/ipad-main-1.jpg?1282832512" alt="" width="225" height="302" /><img class="alignnone" src="http://cdn.shopify.com/s/files/1/0042/9602/products/iphone_1.jpg?1282832512" alt="" width="225" height="302" /></p>
<h5><a href="http://www.mstonerblog.com/index.php/blog/comments/return_of_the_paper_wireframes/">http://www.mstonerblog.com/index.php/blog/comments/return_of_the_paper_wireframes/</a></h5>
<h5>1. Pencil</h5>
<p><a href="http://www.evolus.vn/Pencil/">Pencil</a> (free) is a Firefox plugin that professes to enable you to build  wireframes and prototypes. As a prototyping tool it’s quite good,  allowing you to quickly put together a reasonably high fidelity mockup.  However, be aware you’ll still need to produce the visual design  elements for Pencil, as it relies on dragging and dropping pre-made  graphical elements.</p>
<p>The output wireframe elements that ship with Pencil do tend to be  based on the look and feel of a Windows desktop application. This really  is undesirable for a web application, however you could modify this  with your own page elements.</p>
<p>Another downside of Pencil is that its export functionality provides  only a few image formats. This means that Pencil falls short of being a  real interactive prototype development tool.</p>
<h5>Balsamiq Mockups</h5>
<p><a href="http://www.balsamiq.com/products/mockups">Balsamiq Mockups</a> (price:$US79, demo available) is an interesting product running on  Adobe AIR. Its representation of the interface elements has a refreshing  hand-drawn, sketch-like quality to them. This does help promote the  degree of changeability of the wireframes, as they look very much like a  draft. If you lack the skills to create hand-drawn sketches then  Balsamiq is a useful tool, as it allows you to produce quality roughs.  Balsamiq also offers a standard collection of interactive screen  elements, which is helpful to start off with.</p>
<p>http://gomockingbird.com/ is like balsamia</p>
<p>https://www.jumpchart.com/ &#8211; for very simple pages- I cant find how to change the layout.</p>
<p>Denim</p>
<p>A java based.</p>
<p><a rel="nofollow" href="http://dub.washington.edu:2007/denim/">http://dub.washington.edu:2007/denim/</a></p>
<p>Eclipse based plugin &#8211; http://wireframesketcher.com/</p>
<p>And a nice topic in stackoverflow http://stackoverflow.com/questions/55363/best-tools-for-creating-website-wireframes</p>
<p>iphone</p>
<p><a href="http://iphonemockup.lkmc.ch/">http://iphonemockup.lkmc.ch/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/08/29/1323/wireframing-for-faster-website-development/2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Software development</title>
		<link>http://www.gudasoft.com/english/development/08/28/1316/software-development/2010</link>
		<comments>http://www.gudasoft.com/english/development/08/28/1316/software-development/2010#comments</comments>
		<pubDate>Sat, 28 Aug 2010 20:36:49 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1316</guid>
		<description><![CDATA[After my blog post about the junior software developers I have very bright idea of how the world could get benefit from them. When you catch a junior in mistake &#8211; let him contribute to the open source community. Not with coding. With translating. Take some open project and translate it to your native language. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.gudasoft.com/wp-content/uploads/2010/08/medical-coder.jpg"><img class="alignleft size-thumbnail wp-image-1320" title="medical coder" src="http://www.gudasoft.com/wp-content/uploads/2010/08/medical-coder-150x150.jpg" alt="" width="103" height="103" /></a>After my blog post <a href="http://www.gudasoft.com/english/development/07/24/1292/hiring-juniors/2010">about the junior software developers</a> I have very bright idea of how the world could get benefit from them.</p>
<p>When you catch a junior in mistake &#8211; let him contribute to the open source community. Not with coding. With translating. Take some open project and translate it to your native language.</p>
<p>Maybe after all the junior will release that he is much happier to translate than coding :)</p>
<p>win-win condition.</p>
<p>N.B. On the picture &#8211; Young coder is coding in Word.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/08/28/1316/software-development/2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hash to encode iso-8859-1 (western) to html entities</title>
		<link>http://www.gudasoft.com/english/development/08/25/1314/hash-to-encode-iso-8859-1-western-to-html-entities/2010</link>
		<comments>http://www.gudasoft.com/english/development/08/25/1314/hash-to-encode-iso-8859-1-western-to-html-entities/2010#comments</comments>
		<pubDate>Wed, 25 Aug 2010 11:05:12 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[encoding]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1314</guid>
		<description><![CDATA[ENTITIES = { 'À' =&#62; '&#38;#192;', 'Á' =&#62; '&#38;#193;', 'Â' =&#62; '&#38;#194;', 'Ã' =&#62; '&#38;#195;', 'Ä' =&#62; '&#38;#196;', 'Å' =&#62; '&#38;#197;', 'Æ' =&#62; '&#38;#198;', 'Ç' =&#62; '&#38;#199;', 'È' =&#62; '&#38;#200;', 'É' =&#62; '&#38;#201;', 'Ê' =&#62; '&#38;#202;', 'Ë' =&#62; '&#38;#203;', 'Ì' =&#62; '&#38;#204;', 'Í' =&#62; '&#38;#205;', 'Î' =&#62; '&#38;#206;', 'Ï' =&#62; '&#38;#207;', 'Ð' =&#62; '&#38;#208;', 'Ñ' [...]]]></description>
			<content:encoded><![CDATA[<pre>ENTITIES = {
 'À' =&gt; '&amp;#192;',
 'Á' =&gt; '&amp;#193;',
 'Â' =&gt; '&amp;#194;',<span id="more-1314"></span>
 'Ã' =&gt; '&amp;#195;',
 'Ä' =&gt; '&amp;#196;',
 'Å' =&gt; '&amp;#197;',
 'Æ' =&gt; '&amp;#198;',
 'Ç' =&gt; '&amp;#199;',
 'È' =&gt; '&amp;#200;',
 'É' =&gt; '&amp;#201;',
 'Ê' =&gt; '&amp;#202;',
 'Ë' =&gt; '&amp;#203;',
 'Ì' =&gt; '&amp;#204;',
 'Í' =&gt; '&amp;#205;',
 'Î' =&gt; '&amp;#206;',
 'Ï' =&gt; '&amp;#207;',
 'Ð' =&gt; '&amp;#208;',
 'Ñ' =&gt; '&amp;#209;',
 'Ò' =&gt; '&amp;#210;',
 'Ó' =&gt; '&amp;#211;',
 'Ô' =&gt; '&amp;#212;',
 'Õ' =&gt; '&amp;#213;',
 'Ö' =&gt; '&amp;#214;',
 'Ø' =&gt; '&amp;#216;',
 'Ù' =&gt; '&amp;#217;',
 'Ú' =&gt; '&amp;#218;',
 'Û' =&gt; '&amp;#219;',
 'Ü' =&gt; '&amp;#220;',
 'Ý' =&gt; '&amp;#221;',
 'Þ' =&gt; '&amp;#222;',
 'ß' =&gt; '&amp;#223;',
 'à' =&gt; '&amp;#224;',
 'á' =&gt; '&amp;#225;',
 'â' =&gt; '&amp;#226;',
 'ã' =&gt; '&amp;#227;',
 'ä' =&gt; '&amp;#228;',
 'å' =&gt; '&amp;#229;',
 'æ' =&gt; '&amp;#230;',
 'ç' =&gt; '&amp;#231;',
 'è' =&gt; '&amp;#232;',
 'é' =&gt; '&amp;#233;',
 'ê' =&gt; '&amp;#234;',
 'ë' =&gt; '&amp;#235;',
 'ì' =&gt; '&amp;#236;',
 'í' =&gt; '&amp;#237;',
 'î' =&gt; '&amp;#238;',
 'ï' =&gt; '&amp;#239;',
 'ð' =&gt; '&amp;#240;',
 'ñ' =&gt; '&amp;#241;',
 'ò' =&gt; '&amp;#242;',
 'ó' =&gt; '&amp;#243;',
 'ô' =&gt; '&amp;#244;',
 'õ' =&gt; '&amp;#245;',
 'ö' =&gt; '&amp;#246;',
 'ø' =&gt; '&amp;#248;',
 'ù' =&gt; '&amp;#249;',
 'ú' =&gt; '&amp;#250;',
 'û' =&gt; '&amp;#251;',
 'ü' =&gt; '&amp;#252;',
 'ý' =&gt; '&amp;#253;',
 'þ' =&gt; '&amp;#254;',
 'ÿ' =&gt; '&amp;#255;',

 =&gt; '&amp;#160;',
 '¡' =&gt; '&amp;#161;',
 '¢' =&gt; '&amp;#162;',
 '£' =&gt; '&amp;#163;',
 '¤' =&gt; '&amp;#164;',
 '¥' =&gt; '&amp;#165;',
 '¦' =&gt; '&amp;#166;',
 '§' =&gt; '&amp;#167;',
 '¨' =&gt; '&amp;#168;',
 '©' =&gt; '&amp;#169;',
 'ª' =&gt; '&amp;#170;',
 '«' =&gt; '&amp;#171;',
 '¬' =&gt; '&amp;#172;',
 ­    =&gt; '&amp;#173;',
 '®' =&gt; '&amp;#174;',
 '¯' =&gt; '&amp;#175;',
 '°' =&gt; '&amp;#176;',
 '±' =&gt; '&amp;#177;',
 '²' =&gt; '&amp;#178;',
 '³' =&gt; '&amp;#179;',
 '´' =&gt; '&amp;#180;',
 'µ' =&gt; '&amp;#181;',
 '¶' =&gt; '&amp;#182;',
 '·' =&gt; '&amp;#183;',
 '¸' =&gt; '&amp;#184;',
 '¹' =&gt; '&amp;#185;',
 'º' =&gt; '&amp;#186;',
 '»' =&gt; '&amp;#187;',
 '¼' =&gt; '&amp;#188;',
 '½' =&gt; '&amp;#189;',
 '¾' =&gt; '&amp;#190;',
 '¿' =&gt; '&amp;#191;',
 '×' =&gt; '&amp;#215;',
 '÷' =&gt; '&amp;#247;',
 }
</pre>
<p>check more here http://www.elizabethcastro.com/html/extras/entities.html</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/08/25/1314/hash-to-encode-iso-8859-1-western-to-html-entities/2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Is Rails going down?</title>
		<link>http://www.gudasoft.com/english/development/rails-development/08/23/1312/is-rails-going-down/2010</link>
		<comments>http://www.gudasoft.com/english/development/rails-development/08/23/1312/is-rails-going-down/2010#comments</comments>
		<pubDate>Mon, 23 Aug 2010 17:21:14 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1312</guid>
		<description><![CDATA[The first Rails framework was fast. then it become slow, big and the idea of convetion over configuration becomes more poisoned. Currently to start with Rails you have to learn a lot of stuff which are added just now and is not sure how long they will stay. Also Rails is not targeting the developers [...]]]></description>
			<content:encoded><![CDATA[<p>The first Rails framework was fast. then it become slow, big and the idea of convetion over configuration becomes more poisoned.</p>
<p>Currently to start with Rails you have to learn a lot of stuff which are added just now and is not sure how long they will stay.</p>
<p>Also Rails is not targeting the developers to be fast but is targeting to be the perfect framework.</p>
<p>The price for that is that almost a year and a half there is no new version while the they refactor it.</p>
<p>No goodies like scafolding, only enterprise stuff around.</p>
<p>That is my personal opinion on this framework.</p>
<p>As I like to say &#8211; you cant leave your followers without food for such long time.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/rails-development/08/23/1312/is-rails-going-down/2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Piece of wizdom</title>
		<link>http://www.gudasoft.com/english/development/rails-development/08/22/1310/piece-of-wizdom/2010</link>
		<comments>http://www.gudasoft.com/english/development/rails-development/08/22/1310/piece-of-wizdom/2010#comments</comments>
		<pubDate>Sun, 22 Aug 2010 06:54:49 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1310</guid>
		<description><![CDATA[The original code &#60;%= select(&#8220;city&#8221;,&#8221;kind&#8221;, t(:place_types).map.map!.each{&#124;key, value&#124; [value, key]}, {:include_blank =&#62; t(:chose), :selected =&#62; @city.kind}) %&#62; The bad code t(:place_types).map.map!.each{&#124;key, value&#124; [value, key]}, {:include_blank =&#62; t(:chose), :selected =&#62; @city.kind}) the replacement key_values = t(:place_types).collect{&#124;key, value&#124; [value.to_s, key.to_s, ]} Rails.ouch.ouch.omg!]]></description>
			<content:encoded><![CDATA[<p>The original code</p>
<p>&lt;%= select(&#8220;city&#8221;,&#8221;kind&#8221;, t(:place_types).map.map!.each{|key, value| [value, key]}, {:include_blank =&gt; t(:chose), :selected =&gt; @city.kind}) %&gt;</p>
<p>The bad code</p>
<p>t(:place_types).map.map!.each{|key, value| [value, key]}, {:include_blank =&gt; t(:chose), :selected =&gt; @city.kind})</p>
<p>the replacement</p>
<p>key_values = t(:place_types).collect{|key, value| [value.to_s, key.to_s, ]}</p>
<p>Rails.ouch.ouch.omg!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/rails-development/08/22/1310/piece-of-wizdom/2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10 Questions From Modern Web Designers: Answered</title>
		<link>http://www.gudasoft.com/english/development/08/20/1306/10-questions-from-modern-web-designers-answered/2010</link>
		<comments>http://www.gudasoft.com/english/development/08/20/1306/10-questions-from-modern-web-designers-answered/2010#comments</comments>
		<pubDate>Fri, 20 Aug 2010 05:28:04 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1306</guid>
		<description><![CDATA[This article is talking on designers but I think most of the things there apply for coders also. If you read it now and get it &#8211; you will be ok, else you will learn all those rules by own in the future. Read the full article here&#8230; http://www.onextrapixel.com/2010/08/18/10-questions-from-modern-web-designers-answered/comment-page-1/#comment-7981]]></description>
			<content:encoded><![CDATA[<p>This article is talking on designers but I think most of the things there apply for coders also.</p>
<p>If you read it now and get it &#8211; you will be ok, else you will learn all those rules by own in the future.</p>
<p>Read the full article here&#8230;</p>
<p>http://www.onextrapixel.com/2010/08/18/10-questions-from-modern-web-designers-answered/comment-page-1/#comment-7981</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/08/20/1306/10-questions-from-modern-web-designers-answered/2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Search Logic and whats wrong with it</title>
		<link>http://www.gudasoft.com/english/development/rails-development/07/31/1300/search-logic-and-whats-wrong-with-it/2010</link>
		<comments>http://www.gudasoft.com/english/development/rails-development/07/31/1300/search-logic-and-whats-wrong-with-it/2010#comments</comments>
		<pubDate>Sat, 31 Jul 2010 19:16:29 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1300</guid>
		<description><![CDATA[The idea of the Searchlogic is to save you time and give flexibility. The first time I saw this gem  I was very excited about it. With only a few lines of code an you have the whole search done. I have start using it. Once I want to apply it to a complicated search. [...]]]></description>
			<content:encoded><![CDATA[<p>The idea of the <a href="http://github.com/binarylogic/searchlogic">Searchlogic</a> is to save you time and give flexibility.</p>
<p>The first time I saw this gem  I was very excited about it.</p>
<p>With only a few lines of code an you have the whole search done. I have start using it.</p>
<p>Once I want to apply it to a complicated search. The problem was that I have to write more code and &#8220;patches&#8221; in order to keep the Searchlogic working&#8230;.</p>
<p>So my advice is &#8211; don&#8217;t use such boosters if you can apply your own solution. There will be aways a time when you want to extend your search and you will loose a lot of time search how to do it with the 3rd party solution.</p>
<p>Do it yourself.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/rails-development/07/31/1300/search-logic-and-whats-wrong-with-it/2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hiring Juniors</title>
		<link>http://www.gudasoft.com/english/development/07/24/1292/hiring-juniors/2010</link>
		<comments>http://www.gudasoft.com/english/development/07/24/1292/hiring-juniors/2010#comments</comments>
		<pubDate>Sat, 24 Jul 2010 16:02:31 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1292</guid>
		<description><![CDATA[Starting a company or a team If you think that by hiring juniors you will save money and will get working application &#8211; you are wrong. You will loose much more than money. Yes they are low cost, but read the rest of the post to be not tricked. Forget for nice and reliable code [...]]]></description>
			<content:encoded><![CDATA[<h2>Starting a company or a team</h2>
<p>If you think that by hiring juniors you will save money and will get working application &#8211; you are wrong.<br />
You will loose much more than money.</p>
<p>Yes they are low cost, but read the rest of the post to be not tricked.<span id="more-1292"></span></p>
<h3>Forget for nice and reliable code</h3>
<p>Most of  the time the developing is done by using some standard patterns which  the experienced developers apply without even thinking. You don&#8217;t have this from a junior &#8211; you will have &#8220;private&#8221; code which in the best case will NOT work. In the worst case it will work only in one way and you will have to fix this code at the end of the project when your time is less. DO NOT give them to commit code &#8211; leave them for years working the most misarable work that you can find untill they show that they deserve to trust them.</p>
<h3>Rewrite their code</h3>
<p>Most of them produce code that have to been rewritten. All the code they  write is code that is invented. They hope their code will work but  their vision is limited because of their experience.  To know where  might your code will fail you have to been working for years in this  field.</p>
<p>If a developer writes a code the chance that it will be ideologically wrong is very small. But if a junior write a code &#8211; then be prepared to rewrite big portions of your application. Things get worse when you discover this late &#8211; near the time your customer waits his applications.</p>
<h3>Good working environment</h3>
<p>They take the power from the experienced developers by asking them questions. And instead your powerful developers to work at full power they get distracted from work and the those with the leak souls start to believe that they are The One (by answering easy questions from the newbies). Your good developers will become like the juniors.</p>
<h3>Prestige of the company</h3>
<p>If you work in a company which have a name &#8211; imagine what will other think if some junior says that he learned this (code) in your company!</p>
<h3>You are responsible for them</h3>
<p>If something breaks -  you are the one which is responsible for their actions.</p>
<p>I have been working with juniors for 2 years before I realize that this is not working. In case you have already juniors &#8211; make them suffer until they go away or become real pro :)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/07/24/1292/hiring-juniors/2010/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to access a server via sftp with ssh tunnel</title>
		<link>http://www.gudasoft.com/english/linux/administration-linux/06/29/1260/how-to-access-a-server-via-sftp-with-ssh-tunnel/2010</link>
		<comments>http://www.gudasoft.com/english/linux/administration-linux/06/29/1260/how-to-access-a-server-via-sftp-with-ssh-tunnel/2010#comments</comments>
		<pubDate>Tue, 29 Jun 2010 08:18:38 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Administration]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1260</guid>
		<description><![CDATA[Here is what we want to do We have the following case: Developer workstation windows with putty Spider.bg &#8211; a host which has access to the www.psspy.se server www.psspy.se &#8211; firewalled host &#8211; we want to put files here via sftp What we want to do is to use spider.bg host as a proxy and [...]]]></description>
			<content:encoded><![CDATA[<p>Here is what we want to do</p>
<p>We have the following case:</p>
<p>Developer workstation windows with putty</p>
<p>Spider.bg &#8211; a host which has access to the www.psspy.se server</p>
<p>www.psspy.se &#8211; firewalled host &#8211; we want to put files here via sftp</p>
<p>What we want to do is to use spider.bg host as a proxy and connect to the psspy.se machine.</p>
<p>Tools that are used -</p>
<ul>
<li>download putty from <a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html">here</a></li>
<li>winscp &#8211; <a href="http://winscp.net/eng/download.php" target="_blank">http://winscp.net/eng/download.php</a></li>
</ul>
<p>Here are the screenshots with the steps &#8230;.</p>
<p><span id="more-1260"></span>
<a href='http://www.gudasoft.com/english/linux/administration-linux/06/29/1260/how-to-access-a-server-via-sftp-with-ssh-tunnel/2010/attachment/step-0' title='step-0'><img width="150" height="150" src="http://www.gudasoft.com/wp-content/uploads/2010/06/step-0-150x150.jpg" class="attachment-thumbnail" alt="step-0" title="step-0" /></a>
<a href='http://www.gudasoft.com/english/linux/administration-linux/06/29/1260/how-to-access-a-server-via-sftp-with-ssh-tunnel/2010/attachment/step-1' title='step-1'><img width="150" height="150" src="http://www.gudasoft.com/wp-content/uploads/2010/06/step-1-150x150.jpg" class="attachment-thumbnail" alt="step-1" title="step-1" /></a>
<a href='http://www.gudasoft.com/english/linux/administration-linux/06/29/1260/how-to-access-a-server-via-sftp-with-ssh-tunnel/2010/attachment/step-2' title='step-2'><img width="150" height="150" src="http://www.gudasoft.com/wp-content/uploads/2010/06/step-2-150x150.jpg" class="attachment-thumbnail" alt="step-2" title="step-2" /></a>
<a href='http://www.gudasoft.com/english/linux/administration-linux/06/29/1260/how-to-access-a-server-via-sftp-with-ssh-tunnel/2010/attachment/step-3' title='step-3'><img width="150" height="150" src="http://www.gudasoft.com/wp-content/uploads/2010/06/step-3-150x150.jpg" class="attachment-thumbnail" alt="step-3" title="step-3" /></a>
<a href='http://www.gudasoft.com/english/linux/administration-linux/06/29/1260/how-to-access-a-server-via-sftp-with-ssh-tunnel/2010/attachment/step-4' title='step-4'><img width="150" height="150" src="http://www.gudasoft.com/wp-content/uploads/2010/06/step-4-150x150.jpg" class="attachment-thumbnail" alt="step-4" title="step-4" /></a>
<a href='http://www.gudasoft.com/english/linux/administration-linux/06/29/1260/how-to-access-a-server-via-sftp-with-ssh-tunnel/2010/attachment/step-5' title='step-5'><img width="150" height="150" src="http://www.gudasoft.com/wp-content/uploads/2010/06/step-5-150x150.jpg" class="attachment-thumbnail" alt="step-5" title="step-5" /></a>
<a href='http://www.gudasoft.com/english/linux/administration-linux/06/29/1260/how-to-access-a-server-via-sftp-with-ssh-tunnel/2010/attachment/step-6' title='step-6'><img width="150" height="150" src="http://www.gudasoft.com/wp-content/uploads/2010/06/step-6-150x150.jpg" class="attachment-thumbnail" alt="step-6" title="step-6" /></a>
<a href='http://www.gudasoft.com/english/linux/administration-linux/06/29/1260/how-to-access-a-server-via-sftp-with-ssh-tunnel/2010/attachment/step-7' title='step-7'><img width="150" height="150" src="http://www.gudasoft.com/wp-content/uploads/2010/06/step-7-150x150.jpg" class="attachment-thumbnail" alt="step-7" title="step-7" /></a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/linux/administration-linux/06/29/1260/how-to-access-a-server-via-sftp-with-ssh-tunnel/2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Publishing article with SEO rules</title>
		<link>http://www.gudasoft.com/english/seo/05/26/1248/publishing-article-with-seo-rules/2010</link>
		<comments>http://www.gudasoft.com/english/seo/05/26/1248/publishing-article-with-seo-rules/2010#comments</comments>
		<pubDate>Wed, 26 May 2010 12:38:05 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Search Engine Optimization]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1248</guid>
		<description><![CDATA[As I want to keep this post secret as possible I will not follow those rules here :) which keywords I need to have into the title of the article which additional keywords I need to have into the subtitle which text I want to promote to Heading or make it strong check the most [...]]]></description>
			<content:encoded><![CDATA[<p>As I want to keep this post secret as possible I will not follow those rules here :)</p>
<ol>
<li>which keywords I need to have into the title of the article</li>
<li>which additional keywords I need to have into the subtitle</li>
<li>which text I want to promote to Heading or make it strong</li>
<li>check the most important text in the article that has nice keyword  density around my important information.</li>
<li>if there are abbreviations &#8211; add the acronym tag to describe them.</li>
<li>all images should have nice alt/title/file name text, When  possible add link to the image to relevant information.</li>
<li>links:
<ol>
<li>which are my important links (containing keywords)</li>
<li>which links should be interesting to be linked on psspy/dagens archive for  more news</li>
<li>does all links have title / alt tags, what keywords can I add  there?</li>
</ol>
</li>
<li>do I want to provide a box with related news on this article</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/seo/05/26/1248/publishing-article-with-seo-rules/2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Argh&#8230;this rmagick gem &#8211; aways difficult to install/maintain.</title>
		<link>http://www.gudasoft.com/english/development/05/11/1241/god-bless-google/2010</link>
		<comments>http://www.gudasoft.com/english/development/05/11/1241/god-bless-google/2010#comments</comments>
		<pubDate>Tue, 11 May 2010 14:12:28 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1241</guid>
		<description><![CDATA[I have recently upgraded to Ubuntu 10.04 and I got this nasty rmagick gem error: RMagick2.so: This installation of RMagick was configured with ImageMagick 6.5.5 but ImageMagick 6.5.7-8 is in use. (RuntimeError) google for This installation of RMagick was configured with ImageMagick 6.5.5 but ImageMagick 6.5.7-8 is in use. (RuntimeError) then found this page in [...]]]></description>
			<content:encoded><![CDATA[<p>I have recently upgraded to Ubuntu 10.04 and I got this nasty rmagick gem error:</p>
<p>RMagick2.so: This installation of RMagick was configured with ImageMagick 6.5.5 but ImageMagick 6.5.7-8 is in use. (RuntimeError)</p>
<p>google for <a href="http://www.google.com/search?hl=en&amp;q=t++This+installation+of+RMagick+was+configured+with+ImageMagick+6.5.5+but+ImageMagick+6.5.7-8+is+in+use.+%28RuntimeError%29&amp;aq=f&amp;aqi=&amp;aql=&amp;oq=&amp;gs_rfai=">This installation of RMagick was configured with ImageMagick 6.5.5 but ImageMagick 6.5.7-8 is in use. (RuntimeError)</a></p>
<p>then found <a href="http://uperro.blogspot.com/2010/05/after-upgrading-ubuntu-904-to-1004-lts.html">this page</a> in mixed English/Chinees</p>
<p>and finally got a <a href="http://adelio.org/redmine-lauft-nach-upgrade-auf-ubuntu-10-04-lucid-lynx-nicht-mehr/comment-page-1/">page</a> in German :)</p>
<p>Then I decide to write this post in English and slightly modify the solution</p>
<p>instead of putting</p>
<p>RMAGICK_BYPASS_VERSION_TEST = true in the deploy.rb</p>
<p>I have put this in the development.rb</p>
<p>and all it works &#8211; this way on the production I will be forced to use real compatible library or at least check again for another solution or gem.</p>
<p>AUCH! This solution doesn&#8217;t work even in development I got weird core dumps :( &#8230;so here it is another try</p>
<h1>Here is the real working  solution:</h1>
<pre>su -
git clone http://github.com/rmagick/rmagick.git
cd rmagick/
ruby setup.rb
ruby setup.rb  install</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/05/11/1241/god-bless-google/2010/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Nice code</title>
		<link>http://www.gudasoft.com/english/development/rails-development/04/20/1237/nice-code/2010</link>
		<comments>http://www.gudasoft.com/english/development/rails-development/04/20/1237/nice-code/2010#comments</comments>
		<pubDate>Tue, 20 Apr 2010 15:51:35 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1237</guid>
		<description><![CDATA[I have just finished one method and I was not happy with the code. Then I put a comment on top of the method &#8220;Far from perfect&#8230;.&#8221;. Then I read the class &#8211; it was ugly. here is the before def validate return if is_email == false found = InternetComunicatorType.find(:first, :conditions =&#62; { :is_email =&#62; [...]]]></description>
			<content:encoded><![CDATA[<p>I have just finished one method and I was not happy with the code. Then I put a comment on top of the method &#8220;Far from perfect&#8230;.&#8221;.</p>
<p>Then I read the class &#8211; it was ugly.</p>
<p>here is the before</p>
<pre>def validate
 return if is_email == false
 found = InternetComunicatorType.find(:first, :conditions =&gt; {
 :is_email =&gt; true,
 })

 return unless found

 if found.id != id
 errors.add(:is_email, "We have already email type")
 return
 end
end
</pre>
<p>here is the after</p>
<pre>def validate
  if is_email
    found = InternetComunicatorType.find(:first, :conditions =&gt; {
      :is_email =&gt; true,
    })

    if found and found.id != id
      errors.add(:is_email, "We have already email type")
    end
  end
end</pre>
<p>The result is much far readable</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/rails-development/04/20/1237/nice-code/2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mongoid presentations</title>
		<link>http://www.gudasoft.com/english/development/04/15/1235/mongoid-presentations/2010</link>
		<comments>http://www.gudasoft.com/english/development/04/15/1235/mongoid-presentations/2010#comments</comments>
		<pubDate>Thu, 15 Apr 2010 19:54:10 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[mongoid]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1235</guid>
		<description><![CDATA[When starting with mongoid I have missed a lot some demo source code. How it works with controllers, does it plays nice with nested attributes, such things. Here is presentation of mongo  and here are some slides]]></description>
			<content:encoded><![CDATA[<p>When starting with mongoid I have missed a lot some demo source code.</p>
<p>How it works with controllers, does it plays nice with nested attributes, such things.</p>
<p>Here is <a href="http://vimeo.com/9864311">presentation</a> of mongo  and here are <a href="http://www.slideshare.net/jsmestad/mongodb-mongoid-with-rails">some slides</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/04/15/1235/mongoid-presentations/2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mongoid</title>
		<link>http://www.gudasoft.com/english/development/rails-development/04/01/1233/mongoid/2010</link>
		<comments>http://www.gudasoft.com/english/development/rails-development/04/01/1233/mongoid/2010#comments</comments>
		<pubDate>Thu, 01 Apr 2010 19:09:12 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1233</guid>
		<description><![CDATA[I writing this post for those who start using Mongo in their rails applications. I want to share my experience. First I discovered mongoid but then i saw mongo_mapper  &#8211; so I decide to go with the crowd. But! I was wrong. I there is no documentation for mongo_mapper but some blog posts arround, the [...]]]></description>
			<content:encoded><![CDATA[<p>I writing this post for those who start using Mongo in their rails applications. I want to share my experience. First I discovered mongoid but then i saw mongo_mapper  &#8211; so I decide to go with the crowd. But! I was wrong. I there is no documentation for mongo_mapper but some blog posts arround, the examples are not aways working and you have to fight with all the code &#8211; I don&#8217;t maybe I have found some old documentation. When you dive in the code &#8211; again no documentation and not clear behaviour. Maybe it is a good solution but for me it doesn&#8217;t work. I lost 1.5 days experimenting and hoping that the things will go.</p>
<p>Then I give a try with mongoid. It has wonderfull <a href="http://mongoid.org/docs/associations">documentation</a> for starters also it seems at first glance that the code in mongoid is more readably and human friendly. It took me 2hours to port all my models to mongoid.</p>
<p>The guy developing mongoid seems pretty active.</p>
<p>last words &#8211; it is pleasure to work with mongoid &#8211; I recommend it to all.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/rails-development/04/01/1233/mongoid/2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Four websites in a two weeks</title>
		<link>http://www.gudasoft.com/english/development/12/14/1190/two-websites-in-a-week/2009</link>
		<comments>http://www.gudasoft.com/english/development/12/14/1190/two-websites-in-a-week/2009#comments</comments>
		<pubDate>Mon, 14 Dec 2009 10:59:43 +0000</pubDate>
		<dc:creator>guda</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://www.gudasoft.com/?p=1190</guid>
		<description><![CDATA[A lot of work last weeks. Check those The interesting think is that two of them are on Rails (www.mebelicomfort.com, shop.djibutzo.com) , one of them is on WordPress and the last one is on some custom PHP framework. And meanwhile we are doing a lot of refactoring on our company website psspy.se, which finally is [...]]]></description>
			<content:encoded><![CDATA[<p>A lot of work last weeks.</p>
<p>Check those</p>

<a href='http://www.gudasoft.com/english/development/12/14/1190/two-websites-in-a-week/2009/attachment/mebeli' title='mebeli'><img width="150" height="150" src="http://www.gudasoft.com/wp-content/uploads/2009/12/mebeli-150x150.png" class="attachment-thumbnail" alt="mebeli" title="mebeli" /></a>
<a href='http://www.gudasoft.com/english/development/12/14/1190/two-websites-in-a-week/2009/attachment/next' title='next'><img width="150" height="150" src="http://www.gudasoft.com/wp-content/uploads/2009/12/next-150x150.png" class="attachment-thumbnail" alt="next" title="next" /></a>
<a href='http://www.gudasoft.com/english/development/12/14/1190/two-websites-in-a-week/2009/attachment/orient' title='orient'><img width="150" height="150" src="http://www.gudasoft.com/wp-content/uploads/2009/12/orient-150x150.png" class="attachment-thumbnail" alt="orient" title="orient" /></a>
<a href='http://www.gudasoft.com/english/development/12/14/1190/two-websites-in-a-week/2009/attachment/sxy' title='sxy'><img width="150" height="150" src="http://www.gudasoft.com/wp-content/uploads/2009/12/sxy-150x150.png" class="attachment-thumbnail" alt="sxy" title="sxy" /></a>

<p>The interesting think is that two of them are on Rails (<a href="http://www.mebelicomfort.com">www.mebelicomfort.com</a>, <a href="http://shop.djibutzo.com">shop.djibutzo.com</a>) , one of <a href="http://www.nextlevel-broker.com">them</a> is on WordPress and the last one is on some custom PHP framework.</p>
<p>And meanwhile we are doing a lot of refactoring on our company website psspy.se, which finally is starting to look good.</p>
<p>&nbsp;</p>
<p style="text-align: center;"><a href="http://www.gudasoft.com/wp-content/uploads/2009/12/psspy.png"><img class="aligncenter size-thumbnail wp-image-1205" title="psspy" src="http://www.gudasoft.com/wp-content/uploads/2009/12/psspy-150x150.png" alt="psspy" width="150" height="150" /></a></p>
<p>After so much work I think that I will be tired but I am ready now for 6 websites for 1 week.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gudasoft.com/english/development/12/14/1190/two-websites-in-a-week/2009/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

