<?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>Nicolás Brailovsky &#187; WTF</title>
	<atom:link href="http://nicolasb.com.ar/category/wtf/feed/" rel="self" type="application/rss+xml" />
	<link>http://nicolasb.com.ar</link>
	<description>A modern blog</description>
	<lastBuildDate>Tue, 20 Dec 2011 09:00:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Vacations are over</title>
		<link>http://nicolasb.com.ar/2011/08/vacations-are-over/</link>
		<comments>http://nicolasb.com.ar/2011/08/vacations-are-over/#comments</comments>
		<pubDate>Mon, 15 Aug 2011 14:03:15 +0000</pubDate>
		<dc:creator>nico</dc:creator>
				<category><![CDATA[Funny]]></category>
		<category><![CDATA[Meta-post]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://nicolasb.com.ar/?p=1522</guid>
		<description><![CDATA[Long time without updates. I guess I needed vacations from the blog. It was not the first time and it probably won&#8217;t be the last one I take, but I&#8217;m back now with another truckload of C++ ramblings and misc stuff. Like this one:]]></description>
			<content:encoded><![CDATA[<p>Long time without updates. I guess I needed vacations from the blog. It was not the first time and it probably won&#8217;t be the last one I take, but I&#8217;m back now with another truckload of C++ ramblings and misc stuff. Like this one:</p>
<p><a href="http://abstrusegoose.com/387"><img class="aligncenter size-large wp-image-1550" title="parse_error_before_yourass_token" src="http://nicolasb.com.ar/archivos/2011/08/parse_error_before_yourass_token-572x1024.png" alt="" width="572" height="1024" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://nicolasb.com.ar/2011/08/vacations-are-over/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vim: Ni! Ni! Ni! Ni!</title>
		<link>http://nicolasb.com.ar/2011/06/vim-ni-ni-ni-ni/</link>
		<comments>http://nicolasb.com.ar/2011/06/vim-ni-ni-ni-ni/#comments</comments>
		<pubDate>Thu, 02 Jun 2011 10:00:02 +0000</pubDate>
		<dc:creator>nico</dc:creator>
				<category><![CDATA[Funny]]></category>
		<category><![CDATA[Vim Tips]]></category>

		<guid isPermaLink="false">http://nicolasb.com.ar/?p=1314</guid>
		<description><![CDATA[Type :Ni! in Vim and be amazed, it'll reply back: Do you demand a shrubbery?]]></description>
			<content:encoded><![CDATA[<p>Even though I have vim a Vim fan for a long time there still is a lot of stuff which amazes me about this little editor,  and this thing I last learned about it is in the &#8220;ZOMG that&#8217;s so cool I&#8217;m about to pee my pants&#8221; category. Unfortunately, if I were to draw a Venn diagram of the people who may find it cool I&#8217;d have to intersect the group of people reading my blog (yes, very small) with the group of people who like Vim and Monty Python. So, here&#8217;s to the null group:</p>
<p>Type <strong>:Ni!</strong> in Vim and be amazed, it&#8217;ll reply back: <strong>Do you demand a shrubbery?</strong></p>
<p><a href="http://www.imdb.com/title/tt0071853/">Just how cool is that?</a></p>
<p><a href="http://nicolasb.com.ar/archivos/2011/04/Knightni.jpg"><img class="aligncenter size-medium wp-image-1417" title="Knightni" src="http://nicolasb.com.ar/archivos/2011/04/Knightni-300x165.jpg" alt="" width="300" height="165" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://nicolasb.com.ar/2011/06/vim-ni-ni-ni-ni/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Just to remind you</title>
		<link>http://nicolasb.com.ar/2011/05/just-to-remind-you/</link>
		<comments>http://nicolasb.com.ar/2011/05/just-to-remind-you/#comments</comments>
		<pubDate>Thu, 12 May 2011 10:00:46 +0000</pubDate>
		<dc:creator>nico</dc:creator>
				<category><![CDATA[Funny]]></category>
		<category><![CDATA[Vim]]></category>

		<guid isPermaLink="false">http://nicolasb.com.ar/?p=1143</guid>
		<description><![CDATA[It&#8217;s been too long since the last time this image appeared on my blog:]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been too long since the last time this image appeared on my blog:</p>
<p><a href="http://nicolasb.com.ar/archivos/2009/05/success_vim.jpg"><img class="aligncenter size-full wp-image-343" title="success_vim" src="http://nicolasb.com.ar/archivos/2009/05/success_vim.jpg" alt="" width="309" height="339" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://nicolasb.com.ar/2011/05/just-to-remind-you/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Truth be told</title>
		<link>http://nicolasb.com.ar/2011/03/truth-be-told/</link>
		<comments>http://nicolasb.com.ar/2011/03/truth-be-told/#comments</comments>
		<pubDate>Thu, 17 Mar 2011 10:00:55 +0000</pubDate>
		<dc:creator>nico</dc:creator>
				<category><![CDATA[Funny]]></category>

		<guid isPermaLink="false">http://nicolasb.com.ar/?p=645</guid>
		<description><![CDATA[I bet 90% of enterprisey architecture diagrams are more or less like this one. From Geek and Poke]]></description>
			<content:encoded><![CDATA[<p>I bet 90% of enterprisey architecture diagrams are more or less like this one.</p>
<p><img src="http://geekandpoke.typepad.com/.a/6a00d8341d3df553ef0120a64bea22970b-800wi" alt="" /></p>
<p>From <a href="http://geekandpoke.typepad.com">Geek and Poke</a></p>
]]></content:encoded>
			<wfw:commentRss>http://nicolasb.com.ar/2011/03/truth-be-told/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vim Tip: Vigor</title>
		<link>http://nicolasb.com.ar/2011/02/vim-tip-vigor/</link>
		<comments>http://nicolasb.com.ar/2011/02/vim-tip-vigor/#comments</comments>
		<pubDate>Tue, 15 Feb 2011 10:00:29 +0000</pubDate>
		<dc:creator>nico</dc:creator>
				<category><![CDATA[Funny]]></category>
		<category><![CDATA[Vim Tips]]></category>
		<category><![CDATA[WTF]]></category>

		<guid isPermaLink="false">http://nicolasb.com.ar/?p=856</guid>
		<description><![CDATA[Oh man. Just do a search on google images for Vim + Vigor. There are so many WTF images to choose from, I just can&#8217;t decide. Apparently since Vim is the name of sexual enhancement drug or something like that, combining Vim and Vigor is a formula for fun. Well, Vim and Vigor have a [...]]]></description>
			<content:encoded><![CDATA[<table>
<tbody>
<tr>
<td>Oh man. Just do a search on google images for Vim + Vigor. There are so many WTF images to choose from, I just can&#8217;t decide. Apparently since Vim is the name of sexual enhancement drug or something like that, combining Vim and Vigor is a formula for fun.</p>
<p>Well, Vim and Vigor have a different meaning in Linux. Just do an apt-get install vigor, then run it. You&#8217;ll have lots of fun with Vim&#8217;s evil cousing, I promise.</td>
<td><a href="http://nicolasb.com.ar/archivos/2010/08/vim-vigor-large.png"><img class="aligncenter size-full wp-image-1053" title="vim-vigor-large" src="http://nicolasb.com.ar/archivos/2010/08/vim-vigor-large.png" alt="" width="156" height="390" /></a></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://nicolasb.com.ar/2011/02/vim-tip-vigor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Brillant corporate inteligence</title>
		<link>http://nicolasb.com.ar/2010/11/brillant-corporate-inteligence/</link>
		<comments>http://nicolasb.com.ar/2010/11/brillant-corporate-inteligence/#comments</comments>
		<pubDate>Thu, 18 Nov 2010 10:00:33 +0000</pubDate>
		<dc:creator>nico</dc:creator>
				<category><![CDATA[WTF]]></category>

		<guid isPermaLink="false">http://nicolasb.com.ar/?p=998</guid>
		<description><![CDATA[In the I bet somebody got a really nice bonus category, I found this one while trying to compile MySQL++ on Solaris: http://lists.mysql.com/plusplus/7811. Don&#8217;t worry though. Now it&#8217;ll be renamed to #define ORACLE. PS: Kind of related is the story about Oracle breaking everything after a %s/Sun/Oracle in the JVM [1], though in that case [...]]]></description>
			<content:encoded><![CDATA[<p>In the <a href="http://blogs.msdn.com/b/oldnewthing/archive/2006/11/01/922449.aspx">I bet somebody got a really nice bonus</a> category, I found this one while trying to compile MySQL++ on Solaris: <a href="http://lists.mysql.com/plusplus/7811">http://lists.mysql.com/plusplus/7811</a>.</p>
<p>Don&#8217;t worry though. Now it&#8217;ll be renamed to #define ORACLE.</p>
<p>PS: Kind of related is the story about Oracle breaking everything after a %s/Sun/Oracle in the JVM [1], though in that case I&#8217;m more inclined to blame sloppy programmers.</p>
<p>[1] http://it.slashdot.org/story/10/07/28/2121259/Oracles-Java-Company-Change-Breaks-Eclipse</p>
]]></content:encoded>
			<wfw:commentRss>http://nicolasb.com.ar/2010/11/brillant-corporate-inteligence/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Stacktrace or GTFO</title>
		<link>http://nicolasb.com.ar/2010/09/stacktrace-or-gtfo/</link>
		<comments>http://nicolasb.com.ar/2010/09/stacktrace-or-gtfo/#comments</comments>
		<pubDate>Fri, 24 Sep 2010 10:00:49 +0000</pubDate>
		<dc:creator>nico</dc:creator>
				<category><![CDATA[Funny]]></category>

		<guid isPermaLink="false">http://nicolasb.com.ar/?p=1268</guid>
		<description><![CDATA[Remember: Also, because otherwise this post would be empty:]]></description>
			<content:encoded><![CDATA[<p>Remember:</p>
<p><img src="http://i.imgur.com/jacoj.jpg"/></p>
<p>Also, because otherwise this post would be empty:</p>
<p><img src="http://i.imgur.com/1nT6a.jpg"/></p>
]]></content:encoded>
			<wfw:commentRss>http://nicolasb.com.ar/2010/09/stacktrace-or-gtfo/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>C++ linking WTF</title>
		<link>http://nicolasb.com.ar/2010/09/c-linking-wtf/</link>
		<comments>http://nicolasb.com.ar/2010/09/c-linking-wtf/#comments</comments>
		<pubDate>Tue, 07 Sep 2010 10:07:33 +0000</pubDate>
		<dc:creator>nico</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[WTF]]></category>

		<guid isPermaLink="false">http://nicolasb.com.ar/?p=972</guid>
		<description><![CDATA[It is a commonly accepted fact that a succesfuly compiled application serves as enough proof of its correctness, but common wisdom doesn&#8217;t say a thing about linking. If you like linker WTF moments, you&#8217;ll love this snippet. Can you guess why won&#8217;t it compile? struct Foo &#123; &#160; &#160; static const int x = 0; [...]]]></description>
			<content:encoded><![CDATA[<p>It is a commonly accepted fact that a succesfuly compiled application serves as enough proof of its correctness, but common wisdom doesn&#8217;t say a thing about linking. If you like linker WTF moments, you&#8217;ll love this snippet. Can you guess why won&#8217;t it compile?</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="kw4">struct</span> Foo <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw4">static</span> <span class="kw4">const</span> <span class="kw4">int</span> x = <span class="nu0">0</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw4">static</span> <span class="kw4">const</span> <span class="kw4">int</span> y = <span class="nu0">1</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; <span class="kw4">int</span> z<span class="br0">&#40;</span>bool x<span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="br0">&#40;</span>x<span class="br0">&#41;</span>? Foo::<span class="me2">x</span> : Foo::<span class="me2">y</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li2">
<div class="de2"><span class="co2">#include </span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw4">int</span> main<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; Foo z;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; std::<a href="http://www.opengroup.org/onlinepubs/009695399/functions/cout.html"><span class="kw3">cout</span></a> &lt;&lt; z.<span class="me1">z</span><span class="br0">&#40;</span><span class="kw2">true</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">return</span> <span class="nu0">0</span>;</div>
</li>
<li class="li2">
<div class="de2"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
</ol>
</div>
<p>Well, it does compile (gotcha!) but it just won&#8217;t link. Yet it seems so simple&#8230; let&#8217;s add some more mistery to this WTF moment, try this change:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"> &nbsp; &nbsp;<span class="kw4">int</span> z<span class="br0">&#40;</span>bool x<span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">int</span> t = Foo::<span class="me2">x</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="br0">&#40;</span>x<span class="br0">&#41;</span>? t : Foo::<span class="me2">y</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
</ol>
</div>
<p>Holy shit, now it compiles? WTF? Some more strangeness:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"> &nbsp; &nbsp;<span class="kw4">int</span> z<span class="br0">&#40;</span>bool<span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="br0">&#40;</span><span class="kw2">true</span><span class="br0">&#41;</span>? Foo::<span class="me2">x</span> : Foo::<span class="me2">y</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
</ol>
</div>
<p>And again, now it compiles. WTF? I&#8217;ll make a final change, this one should give you a clue about why it won&#8217;t compile. Revert all changes back to the original code but add this two lines after Foo:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw4">const</span> <span class="kw4">int</span> Foo::<span class="me2">x</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw4">const</span> <span class="kw4">int</span> Foo::<span class="me2">y</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
</ol>
</div>
<p>Though weird at first, now you should have a clear picture:</p>
<ul>
<li>The first case doesn&#8217;t compiles: x and y are declared in struct Foo, yet the linker doesn&#8217;t know in which translation unit they should be allocated.</li>
<li>The second and third cases&#8230; well I&#8217;m not sure why does this compiles but it&#8217;s probably because the linker can asume in which translation unit x and y should be allocated. I&#8217;m to lazy to check.</li>
<li>In the last case we explicitly say where should x and y be. According to standard, this is how these two ints should be declared.</li>
</ul>
<p>So, some linker strangeness. Beware, it&#8217;s easy to get trapped by this one.</p>
]]></content:encoded>
			<wfw:commentRss>http://nicolasb.com.ar/2010/09/c-linking-wtf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vim Sexual Care</title>
		<link>http://nicolasb.com.ar/2010/09/vim-sexual-care/</link>
		<comments>http://nicolasb.com.ar/2010/09/vim-sexual-care/#comments</comments>
		<pubDate>Thu, 02 Sep 2010 10:00:00 +0000</pubDate>
		<dc:creator>nico</dc:creator>
				<category><![CDATA[Funny]]></category>
		<category><![CDATA[Vim]]></category>
		<category><![CDATA[Vim Tips]]></category>
		<category><![CDATA[WTF]]></category>

		<guid isPermaLink="false">http://nicolasb.com.ar/?p=978</guid>
		<description><![CDATA[Vim bestows its users all sort of magical properties, among which now we can count increased sexual performance. I bet you didn&#8217;t know, but Vim can help you keep your girl happy for days without end. Don&#8217;t believe me? Check this page.]]></description>
			<content:encoded><![CDATA[<table>
<tbody>
<tr>
<td>Vim bestows its users all sort of magical properties, among which now we can count increased sexual performance. I bet you didn&#8217;t know, but Vim can help you keep your girl happy for days without end. Don&#8217;t believe me? Check <a href="http://www.vitasprings.com/vim-nutrition-supplement-for-sexual-care.html">this page</a>.</td>
<td><a href="http://nicolasb.com.ar/archivos/2010/08/vitasprings_2120_71441477.jpeg"><img class="aligncenter size-full wp-image-1027" title="vitasprings_2120_71441477" src="http://nicolasb.com.ar/archivos/2010/08/vitasprings_2120_71441477.jpeg" alt="" width="108" height="108" /></a></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://nicolasb.com.ar/2010/09/vim-sexual-care/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Date time WTF</title>
		<link>http://nicolasb.com.ar/2010/08/date-time-wtf/</link>
		<comments>http://nicolasb.com.ar/2010/08/date-time-wtf/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 10:00:06 +0000</pubDate>
		<dc:creator>nico</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[WTF]]></category>

		<guid isPermaLink="false">http://nicolasb.com.ar/?p=1208</guid>
		<description><![CDATA[Another one to add to my growing list of bad things about Ubuntu. For some reason my clock froze. I only noticed it when it started to be dark outside, for me the time had frozen at about 17pm.]]></description>
			<content:encoded><![CDATA[<p>Another one to add to my growing list of bad things about Ubuntu. For some reason my clock froze. I only noticed it when it started to be dark outside, for me the time had frozen at about 17pm.</p>
<p><a href="http://nicolasb.com.ar/archivos/2010/08/date_time_wtf.png"><img class="aligncenter size-full wp-image-1209" title="date_time_wtf" src="http://nicolasb.com.ar/archivos/2010/08/date_time_wtf.png" alt="" width="276" height="524" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://nicolasb.com.ar/2010/08/date-time-wtf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

