<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7916726</id><updated>2011-12-14T03:54:38.435Z</updated><title type='text'>CodeCruncher</title><subtitle type='html'>Life and "deeds" of a .NET programmer. Not a programming wizard, not a guru, not an überhacker. Your every-day average Joe Programmer, that's me. A worker of the key, as opposed to a key worker. A code-cruncher. We also have a right to speak, haven't we?
&lt;BR&gt;&lt;BR&gt;
&lt;b&gt;NOTA&lt;/B&gt;.- Existe una versión disponible en español:  &lt;a href="http://www.picacodigos.blogspot.com"&gt;Picacodigos&lt;/a&gt;</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default?start-index=101&amp;max-results=100'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>104</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7916726.post-114216571648897654</id><published>2006-03-12T12:12:00.000Z</published><updated>2006-03-12T12:15:16.496Z</updated><title type='text'>Moving out</title><content type='html'>After more than a year, I'm moving this blog. Blogger has given me an excellent service, but I wanted to try new things.&lt;br /&gt;&lt;br /&gt;The main (spanish) version of this blog has its own domain now, (&lt;a href="http://www.picacodigos.com"&gt;picacodigos.com&lt;/a&gt;) and it's done with dasBlog. The new translation is at &lt;a href="http://codecruncher.blogsome.com"&gt;Blogsome&lt;/a&gt;, and uses WordPress 2.0.&lt;br /&gt;&lt;br /&gt;Thanks for all, Blogger!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-114216571648897654?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/114216571648897654/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=114216571648897654' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/114216571648897654'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/114216571648897654'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2006/03/moving-out.html' title='Moving out'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-113640831999766349</id><published>2006-01-04T20:58:00.000Z</published><updated>2006-01-04T20:58:40.036Z</updated><title type='text'>DirectX</title><content type='html'>First (showable) managed C# DirectX test. The results aren't exactly the next generation &lt;b&gt;Quake&lt;/b&gt; engine, but I'm really proud of it:&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;img src="http://static.flickr.com/40/82183179_289a0e11b9_o.jpg"&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;For another project I have in mind (yes, it's a game), I've thought on using DirectX for simulating a six sided dice rolling. The screen capture you see is from an executable file, but I want to convert it to a user control, so anyone can use it on their projects... if there's anyone who sees this as something usable, that is. When it's converted to user control and I had published the code somewhere (I'm thinking CodeProject) I'll post the link here. &lt;br /&gt;&lt;br /&gt;But for now I just wanted to brag a little. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-113640831999766349?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/113640831999766349/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=113640831999766349' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/113640831999766349'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/113640831999766349'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2006/01/directx.html' title='DirectX'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-113373185351790266</id><published>2005-12-04T21:30:00.000Z</published><updated>2005-12-04T21:30:53.576Z</updated><title type='text'>Birthday present</title><content type='html'>Well, today's my birthday. 34 years now, ain't it amazing?&lt;br /&gt;&lt;br /&gt;Anyway, I can't complain. Although I lack some things in my life that some people would consider basic, such as a mortgage of my own, a car, or a girl(*); well, I work in what I love and I'm surrounded by great friends. The very best.&lt;br /&gt;&lt;br /&gt;Besides, I've got &lt;b&gt;a light sabre&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://static.flickr.com/35/70192498_13a400a86e_o.jpg"&gt;&lt;br /&gt;&lt;br /&gt;Who the heck cares about a place of their own, having a light sabre?&lt;br /&gt;&lt;br /&gt;(*) Notes for the not-spanish: Well, it's not that strange being 34 and single, and not having a car (nor a driving license), and still living with your parents in Spain. I know, I know, in the USA for example that's pretty much the nerdiest resume ever, but hey, try buying a house with &lt;i&gt;our&lt;/i&gt; prices and &lt;i&gt;our&lt;/i&gt; salaries.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-113373185351790266?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/113373185351790266/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=113373185351790266' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/113373185351790266'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/113373185351790266'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/12/birthday-present.html' title='Birthday present'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-113338620696920189</id><published>2005-11-30T21:28:00.000Z</published><updated>2005-11-30T21:30:06.980Z</updated><title type='text'>Try Ruby online</title><content type='html'>At &lt;a href="http://tryruby.hobix.com/" target="_blank"&gt;Try Ruby! (in your browser)&lt;/a&gt; you have a Ruby part mini test-drive, mini tutorial. You can see the simplicity of the language, the ease of use and the slight strangeness of its syntax. Oh, well. Just another thing added to the &lt;i&gt;I have to try this!&lt;/i&gt; stack.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-113338620696920189?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/113338620696920189/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=113338620696920189' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/113338620696920189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/113338620696920189'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/11/try-ruby-online.html' title='Try Ruby online'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-112601475872844697</id><published>2005-09-06T14:47:00.000+01:00</published><updated>2005-09-06T14:52:38.733+01:00</updated><title type='text'>Web Messenger</title><content type='html'>No, just to set a difference with all my fellow bloggers out there I'm not going to talk about &lt;a href="http://www.google.com/talk/" target="_blank"&gt;Google Talk&lt;/a&gt;. Yes, I've installed it and tested it. Minimalist, simple, beautiful and everything else.&lt;br /&gt;&lt;br /&gt;But among all the sound and the fury of Google Talk there's another news item that has gone uncovered: Microsoft's &lt;a href="http://webmessenger.msn.com/" target="_blank"&gt;Web Messenger&lt;/a&gt;, which is just now in its first beta version.&lt;br /&gt;&lt;br /&gt;It esentially is, as you can see from its name, a web flavor of its popular instant messaging service, Messenger. It has, logically, some reduced functionality but it works really good towards the basic goal of every IM program: to communicate with your contacts.&lt;br /&gt;&lt;br /&gt;Advantages? You don't have to install anything in your computer, you log in with your Passport email and password (just like in the desktop version) and if you happen to be inside a corporate network full of firewalls and other nuisances, you can still talk without a trouble...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-112601475872844697?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/112601475872844697/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=112601475872844697' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112601475872844697'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112601475872844697'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/09/web-messenger.html' title='Web Messenger'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-112548856402217285</id><published>2005-08-31T12:19:00.000+01:00</published><updated>2005-08-31T12:42:44.030+01:00</updated><title type='text'>Idea</title><content type='html'>As all of you already know, on Web development (be it with PHP, or Java, or .NET or plain HTML) there are some files called Cascade Style Sheets, or CSS, which force all our Web pages to share a coherent and uniform visual style. They are text files one can specify global styles for our pages, so we can specify that all our tables are gonna have a 5 pixel wide yellow border, or the background of all of our pages is gonna be an specified image, etc. It has several undeniable advantages: besides giving a coherent look to all the pages of our application or Web site, it allows us to &lt;i&gt;forget&lt;/i&gt; about the visual aspects of our pages and in order to change the appearance of our Web app we'll only have to edit a single text file form which all our pages will feed automatically. Try &lt;a href="http://www.csszengarden.com/" target="_blank"&gt;CSS Zen Garden&lt;/a&gt; so you can check by yourself the true power of style sheets.&lt;br /&gt;&lt;br /&gt;Why the hell can't we have this for Windows Forms?&lt;br /&gt;&lt;br /&gt;First of all we'd have to design a file (XML, for example) containing the design we want to apply to our forms, text boxes, dropdown lists, grids and so on. Of course, at first our XML based style file (XSS?) would only admit standard .NET controls, but I believe it could be easily extended to third-party controls.&lt;br /&gt;&lt;br /&gt;Having those XSS files as a starting ground, the &lt;i&gt;thing&lt;/i&gt; could work two ways.&lt;br /&gt;&lt;br /&gt;First, as a Visual Studio &lt;b&gt;add-in&lt;/b&gt;, we could have a button in the IDE with which we could select one of our premade XSS files and apply, &lt;b&gt;on design time&lt;/b&gt;, the styles to all the forms and the controls of our application. Of course, if we later on add controls to the forms or forms to the application we should have to push that button again to make the new controls &lt;i&gt;adhere&lt;/i&gt; to the norm. The controls would be saved and compiled with the chosen visual style already implemented on them.&lt;br /&gt;&lt;br /&gt;Second, we could include a DLL made to read XSS files and change the appearance of our Windows application &lt;b&gt;in runtime&lt;/b&gt;. If a user of our &lt;i&gt;add-in&lt;/i&gt; wants the visual styles to be applied on his application at runtime, or wants the user to be able to change between several predefined visual styles (several premade XSS files), he'd only have to reference the DLL that allows him to make this changes.&lt;br /&gt;&lt;br /&gt;First question: what do you think about it?&lt;br /&gt;Second question: do you think there's already something like this avaliable?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-112548856402217285?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/112548856402217285/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=112548856402217285' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112548856402217285'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112548856402217285'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/08/idea.html' title='Idea'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-112548517062506499</id><published>2005-08-31T11:23:00.000+01:00</published><updated>2005-08-31T11:46:10.633+01:00</updated><title type='text'>Holidays?</title><content type='html'>&lt;a href="http://www.imdb.com/title/tt0088286/" target="_blank"&gt;What phony dog poo? &lt;br /&gt;&lt;/a&gt; The more or less a month without writing anything here is not because a roughly equivalent holiday time span, lying down doing nohing on a beach somewhere without a keyboard. &lt;b&gt;My wish&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;IT's mainly because an inordinate amount of work and the lack of commentable news, or the lack of willingness to comment the news, I don't really know.&lt;br /&gt;&lt;br /&gt;But there are a few things I've done worth commenting something, besides working my a$$ out: I (finally!) tried Visual Studio 2005 Beta 2, I'm trying to get my &lt;a href="http://www.microsoft.com/spanish/msdn/comunidad/dce/default.asp" target="_blank"&gt;third star&lt;/a&gt;, I've written my first &lt;a href="http://clikear.com/articulos/proceso.asp?SKU=839" target="_blank"&gt;tech article&lt;/a&gt; (spanish), I've begin to read my four new books and I have finished none, and I've generally tried to get the most out of my time.&lt;br /&gt;&lt;br /&gt;About Visual Studio 2005, after the very little time I've spent with it, I'm impressed. My first thinking about it was that if VS 2003 was a Ferrari, VS 2005 is an X-Wing.&lt;br /&gt;&lt;br /&gt;It includes MS Build, or Microsoft's answer to NAnt, which we'll have to test something more to see if it can really leave &lt;i&gt;unemployed&lt;/i&gt; the amazing NAnt's development group or if we'll have to stick to that tool for our automated building needs. Ditto to NUnit and unit testing, task already included to VS 2005. The IDE includes some of the refactoring capabilities brought by &lt;a href="http://www.jetbrains.com/resharper/" target="_blank"&gt;ReSharper&lt;/a&gt;, which leads me to wonder what ReSharper for 2005 will be able to do, and I'm already grinning. Partial clases are a blast: we'll be able to arrange much more elegantly our source code. If I tell you that Intellisense is simply better I'm making a big understatement. &lt;i&gt;Tooltips&lt;/i&gt; showing you your variable values on runtime are light-years away from VS 2003. IDE toolbar and windows docking handles like a dream. Custom data viewers are simply amazing. The creation and handling of controls on Win Forms has been exponentially improved, so the form grid is not really that useful right now. And I haven't tested it for Web Forms yet (you know is not my favorite programming flavour); but only not needing Internet Information Server on the development machine anymore and having its own application server simplifies the IDE installation procedure &lt;b&gt;big time&lt;/b&gt;, just for starters.&lt;br /&gt;&lt;br /&gt;So when I come to work and I have to fire up VS 2003 I feel almost, almost like the time I had to use VB 6 after having used VS 2003. Obsolete. I'm dying for November.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;font color="FF0000"&gt;[EDITED]&lt;/font&gt;.-&lt;/b&gt; I forgot a VS 2005 detail I haven't liked so much. On all the previous versions of Visual Studio, when you wanted to align several controls, you clicked on them while having the CTRL key pressed down, and the you clicked on any of the alignment buttons on the Form tool bar. The &lt;i&gt;order&lt;/i&gt; on which we selected controls was important: the &lt;b&gt;last&lt;/b&gt; selected control was the leader, so every other selected control was aligned taking that one as a reference. Now, in VS 2005, the leader is the &lt;b&gt;first&lt;/b&gt; selected control, which can create some confusion 'til we get used to this fact. There may be an option to make this behave as always, but I haven't investigated the matter further.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-112548517062506499?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/112548517062506499/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=112548517062506499' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112548517062506499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112548517062506499'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/08/holidays.html' title='Holidays?'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-112315572230495536</id><published>2005-08-04T12:37:00.000+01:00</published><updated>2005-08-04T12:42:02.310+01:00</updated><title type='text'></title><content type='html'>I bought yesterday four books in Amazon, two on the english site and two more on the american mothersite. Such diversification does not respondo to any master plan of mine to save two pennies, it's simply because I followed a link from someone's blog (damn if I remember who) and from there I kept on clicking and ended up four books richer and almost $150 poorer. Amazon socres, no doubt, a 10 in usability: buying stuff there is &lt;b&gt;too easy&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;This are the books I'm awaiting:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/exec/obidos/tg/detail/-/1590592883/002-4110769-0043258?%5Fencoding=UTF8&amp;v=glance"&gt;Developing Application frameworks in .NET&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/exec/obidos/tg/detail/-/1590594851/002-4110769-0043258?%5Fencoding=UTF8&amp;v=glance"&gt;Expert .NET Delivery Using NAnt and CruiseControl.NET&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;br /&gt;&lt;a href="http://www.amazon.co.uk/exec/obidos/ASIN/1590593448/202-1178650-5067841?%5Fencoding=UTF8"&gt;Expert C# Business Objects &lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;br /&gt;&lt;a href="http://www.amazon.co.uk/exec/obidos/ASIN/1590591372/202-1178650-5067841?%5Fencoding=UTF8"&gt;Code Generation in Microsoft .Net&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;I hope those books lift me above &lt;a href="http://haacked.com/archive/2005/08/03/9210.aspx"&gt;Mort's&lt;/a&gt; programming level.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-112315572230495536?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/112315572230495536/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=112315572230495536' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112315572230495536'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112315572230495536'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/08/i-bought-yesterday-four-books-in.html' title=''/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-112265002314539114</id><published>2005-07-29T16:12:00.000+01:00</published><updated>2005-07-29T16:13:43.153+01:00</updated><title type='text'>You are NOT inadequate</title><content type='html'>There are times when I must visit this &lt;a href="http://secretgeek.net/inadequate.asp"&gt;blog entry&lt;/a&gt; from Secret Geek's amazing blog, &lt;i&gt;dot nuts about dot net&lt;/i&gt;. Because there are times when I feel exactly like he describes...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-112265002314539114?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/112265002314539114/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=112265002314539114' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112265002314539114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112265002314539114'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/07/you-are-not-inadequate.html' title='You are NOT inadequate'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-112247918910014675</id><published>2005-07-27T16:43:00.000+01:00</published><updated>2005-07-27T16:46:29.106+01:00</updated><title type='text'>Nini</title><content type='html'>Under so curious a name we find a library for managing configuration files on .NET applications: &lt;a href="http://nini.sourceforge.net/"&gt;Nini&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It allows to handle INI files, XML files, .NET specific configuration files (the &lt;i&gt;.config&lt;/i&gt; files), Windows registry and command line arguments. I'm hoping I'll try this in no time, because it will come really handy for an application I'm doing when I have the time.&lt;br /&gt;&lt;br /&gt;[Via &lt;a href="http://www.versioncero.com/"&gt;Version Cero&lt;/a&gt;]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-112247918910014675?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/112247918910014675/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=112247918910014675' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112247918910014675'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112247918910014675'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/07/nini.html' title='Nini'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-112238583828709704</id><published>2005-07-26T14:49:00.000+01:00</published><updated>2005-07-26T14:50:38.286+01:00</updated><title type='text'>Style over substance</title><content type='html'>Taking about it, as in the previous post, I've found the &lt;a href="http://www.huhcorp.com/index.htm"&gt;Huh? Corporation&lt;/a&gt;, a highly ironic website about how the high level consultancy field works for the most part. You don't wanna miss it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-112238583828709704?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/112238583828709704/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=112238583828709704' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112238583828709704'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112238583828709704'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/07/style-over-substance.html' title='Style over substance'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-112237409224801984</id><published>2005-07-26T11:16:00.000+01:00</published><updated>2005-07-26T15:00:52.563+01:00</updated><title type='text'>Rock stars and programmers</title><content type='html'>On his more recent post, &lt;a href="http://www.joelonsoftware.com/articles/HighNotes.html"&gt;Hitting the high notes&lt;/a&gt;, Joel Spolsky is wrong. There are some things with which I agree. But there are other with which I disagree with a passion. For example:&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;Is software really about artistic high notes? "Maybe some stuff is," you say, "but I work on accounts receivable user interfaces for the medical waste industry." &lt;a href="http://www.joelonsoftware.com/articles/FiveWorlds.html"&gt;Fair enough&lt;/a&gt;. This is a conversation about software companies, shrinkwrap software, where the company's success or failure is directly a result of the quality of their code.&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;So, if you don't work making Office's next version or 3DsMax or McAffee Antivirus; or any other software anyone can buy off the shelf the quality of your code means much less. And there, among other points of view, is where Mr. Spolsky is &lt;b&gt;dead wrong&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;He keeps at it:&lt;br /&gt;&lt;i&gt;&lt;br /&gt;Sadly, this doesn't really apply in non-product software development. Internal, in-house software is rarely important enough to justify hiring rock stars. Nobody hires Dolly Parton to sing at weddings. That's why the most satisfying careers, if you're a software developer, are at actual software companies, not doing IT for some bank.&lt;br /&gt;&lt;/i&gt; &lt;br /&gt;&lt;br /&gt;I &lt;b&gt;absolutely&lt;/b&gt; negate this vision about software development. It may be super-cool at parties to say "I'm the guy who coded MS Excel" or "I made WinZip". Heck, who knows, maybe in some parties if could get you the hoties. That &lt;b&gt;that&lt;/b&gt; shouldn't be the main reason why one wants to be a programmer. If one wants to be famous there are more easy ways, don't you agree?&lt;br /&gt;&lt;br /&gt;Ours, like policemen, should be a calling of &lt;b&gt;service&lt;/b&gt;. And never, &lt;i&gt;ever&lt;/i&gt;, loose track of the final user. If the work we do at a bank, a government agency, or a video-store makes &lt;b&gt;the people&lt;/b&gt; working at that bank, government agency or video-store perform their jobs more efficiently, more quickly or simply better, we've achieved. &lt;b&gt;That&lt;/b&gt; should be our goal when it comes to create software, and not being famous on forums, blogospheres, mailing lists and the rest of the crap that only geeks care about.&lt;br /&gt;&lt;br /&gt;By the way, two of the bloggers I've sindicated have also answered Mr. Spolsky, and way better than me. &lt;a href="http://www.scottcreynolds.com/PermaLink.aspx?guid=839a3eac-29a8-462d-9425-55f946c90a0e"&gt;Scott Reynolds&lt;/a&gt; and &lt;a href="http://haacked.com/archive/2005/07/26/9027.aspx"&gt;Phil Haaack&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;PS&lt;/b&gt;.- Of course Mr. Spolsky keeps talking crap on his post, at least from where I stand, because of the excessive admiration he has for that beautiful piece of crap called iPod. Mr. Spolsky:&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;Or look at the iPod. You can't change the battery. So when the battery dies, too bad. Get a new iPod. Actually, Apple will replace it if you send it back to the factory, but that costs $65.95. Wowza.&lt;br /&gt;&lt;br /&gt;Why can't you change the battery?&lt;br /&gt;&lt;br /&gt;My theory is that it's because Apple didn't want to mar the otherwise perfectly smooth, seamless surface of their beautiful, sexy iPod with one of those ghastly battery covers you see on other cheapo consumer crap, with the little latches that are always breaking and the seams that fill up with pocket lint and all that general yuckiness. The iPod is the most seamless piece of consumer electronics I have ever seen. It's beautiful. It feels beautiful, like a smooth river stone. One battery latch can blow the whole river stone effect.&lt;br /&gt;&lt;br /&gt;Apple made a decision based on style, in fact, iPod is full of decisions that are based on style. And style is not something that 100 programmers at Microsoft or 200 industrial designers at the inaptly-named Creative are going to be able to achieve, because they don't have &lt;a href="http://www.designmuseum.org/design/index.php?id=63"&gt;Jonathan Ive&lt;/a&gt;, and there aren't a heck of a lot of Jonathan Ives floating around.&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;With demonstrates that Joel Spolsky is another member of that &lt;b&gt;sad army of idiots&lt;/b&gt; which prefer style over substance. I can imagine Mr. Spolsky buying a very, &lt;b&gt;very beautiful and sexy&lt;/b&gt; car that cannot be refueled once you finish the factory loaded full deposit; all thanks to a really good (but maybe not very intelligent) designer who has decided that a latch accessing the fuel deposit from the frame would be very &lt;b&gt;ugly&lt;/b&gt; and would utterly ruin the car's sexy design. &lt;b&gt;Please&lt;/b&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-112237409224801984?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/112237409224801984/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=112237409224801984' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112237409224801984'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112237409224801984'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/07/rock-stars-and-programmers.html' title='Rock stars and programmers'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-112185969829843742</id><published>2005-06-27T12:26:00.000+01:00</published><updated>2005-07-20T12:41:38.306+01:00</updated><title type='text'>Giving each one...</title><content type='html'>...it's due, as I-don't-know-who said. &lt;a href="http://www.eclipse.org"&gt;Eclipse&lt;/a&gt; is an IDE primarily focused on Java, although it can be configured to use with another programming languages. In the short interval that I worked with J2EE and used this environment I found good things, and others not so good. &lt;br /&gt;&lt;br /&gt;One of the good things is actually very feeble, but I got so used to it that I decided to bring it to VS 2003. On Microsoft's IDE, if you want to comment away a selected source code block, the default keyboard shortcut is &lt;b&gt;&lt;i&gt;Ctrl + K&lt;/i&gt;&lt;/b&gt; and then &lt;b&gt;&lt;i&gt;Ctrl+C&lt;/i&gt;&lt;/b&gt;. That's, saying it nicely, quite cumbersome compared to the simple and elegant &lt;b&gt;&lt;i&gt;Ctrl + 7&lt;/i&gt;&lt;/b&gt; commenting on/off switch on Eclipse.&lt;br /&gt;&lt;br /&gt;So I've made a custom keyboard layout (VS 2003 doesn't allow you to modify the base layout) which I've called &lt;i&gt;Eclipse&lt;/i&gt;, of course, and I've entered that way of commenting and un-commenting code.&lt;br /&gt;&lt;br /&gt;The procedure is quite simple: at &lt;b&gt;Tools, Options&lt;/b&gt; menu you have to select &lt;b&gt;Keyboard&lt;/b&gt;. On there you search for &lt;b&gt;Edition.SelkectionWithComments&lt;/b&gt; and then you asign the new keyboard combination clicking on &lt;i&gt;Shortcut keys&lt;/i&gt; replacing the one there with your own. It'll ask you how you want to name the new keyboard layout VS is going to create. And that's it. For un-commenting code you'll want to search for &lt;b&gt;Edition.SelectionWithoutComments&lt;/b&gt; and assign the keys combination of your choosing.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;[NOTE]&lt;/b&gt;.- This post is translated from Spanish (as all the rest, this blog's primary language is Spanish). Although I do my best with the translations and do them by hand instead of using Google or Bablefish, I don't have a english copy of VS 2003, so the actual names of menus may change. You have been warned.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-112185969829843742?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/112185969829843742/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=112185969829843742' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112185969829843742'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/112185969829843742'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/06/giving-each-one.html' title='Giving each one...'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111744061480333433</id><published>2005-05-30T09:10:00.000+01:00</published><updated>2005-05-30T09:10:14.853+01:00</updated><title type='text'>I shouldn't do this, but you know: Resistance is Futile</title><content type='html'>&lt;A HREF="http://quiz.ravenblack.net/videogame.pl"&gt;&lt;IMG BORDER=0 ALIGN="LEFT" WIDTH=150 HEIGHT=80 SRC="http://quiz.ravenblack.net/videogame/4.png" ALT="What Video Game Character Are You? I am a Space-invader." /&gt;&lt;/A&gt;&lt;br /&gt;I am &lt;B&gt;a Space-invader&lt;/B&gt;.&lt;br /&gt;I will happily recruit the help of friends to aid me in getting what I want. I have no tolerance for people getting in my way, and I am completely relentless until any threats or opposition are removed. I try to be down-to-earth, but something always seems to get in the way. &lt;br /&gt;&lt;A HREF="http://quiz.ravenblack.net/videogame.pl"&gt;What Video Game Character Are You?&lt;/A&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111744061480333433?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111744061480333433/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111744061480333433' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111744061480333433'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111744061480333433'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/05/i-shouldnt-do-this-but-you-know.html' title='I shouldn&apos;t do this, but you know: Resistance is Futile'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111709405050742910</id><published>2005-05-26T08:54:00.000+01:00</published><updated>2005-05-26T10:03:11.793+01:00</updated><title type='text'>Monoppix</title><content type='html'>If you're like me and you're too lazy (or too incompetent) to install and configure a Linux distro and the Mono implementation of the .NET Framework for Linux but &lt;i&gt;still&lt;/i&gt; are curious to see how it works, look no further:  &lt;a href="http://www.monoppix.com/"&gt;Monoppix&lt;/a&gt;, or Mono + Knoppix. &lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.monoppix.com/images/monoppix.png"&gt;&lt;br /&gt;&lt;br /&gt;Edited: I've learned there's yeat another live CD ready for using Mono. This one's based on Ubuntu: &lt;a href="http://www.mono-live.com/"&gt;Mono-Live&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111709405050742910?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111709405050742910/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111709405050742910' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111709405050742910'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111709405050742910'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/05/monoppix.html' title='Monoppix'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111641400212844733</id><published>2005-05-18T12:00:00.000+01:00</published><updated>2005-05-18T12:00:02.176+01:00</updated><title type='text'>Developer Days: Visual Studio 2005</title><content type='html'>Been there. It's been fun.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111641400212844733?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111641400212844733/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111641400212844733' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111641400212844733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111641400212844733'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/05/developer-days-visual-studio-2005.html' title='Developer Days: Visual Studio 2005'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111583023074685864</id><published>2005-05-11T17:50:00.000+01:00</published><updated>2005-05-11T17:50:30.840+01:00</updated><title type='text'>Contact grouping in GMail</title><content type='html'>Let's say we want to create a group containing three emails: a@a.com, b@b.com y c@c.com. You want the group to be called &lt;i&gt;Buddies&lt;/i&gt;, for example. &lt;br /&gt;What you need to do is create a new contact, just as if you were adding a new email adress to our GMail adresses list, and call it Buddies. In the textbox for the email, you have to insert the following character string:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;a@a.com&amp;gt;,&amp;lt;b@b.com&amp;gt;,&amp;lt;c@c.com&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;As you can see, this means that each email adress you add to this &lt;i&gt;contact&lt;/i&gt; is to be separated with a comma (b&gt;,&lt;/b&gt;) from the next adress and between the lesser than (&lt;b&gt;&amp;lt&lt;/b&gt;) and the greater than (&lt;b&gt;&amp;gt;&lt;/b&gt;) symbols, &lt;b&gt;except&lt;/b&gt; the first and the last email adresses. The frist one doesn't need the &lt;b&gt;&amp;lt;&lt;/b&gt; character at the beginning and the last adress doesn't need the &lt;b&gt;&amp;gt;&lt;/b&gt; character at the end. This is so because GMail automatically adds this two characters to the string you enter as email. &lt;br /&gt;&lt;br /&gt;Once you're finished, &lt;i&gt;presto!&lt;/i&gt; you'll have a contact containing three (or as many as you want) email adresses. =)&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111583023074685864?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111583023074685864/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111583023074685864' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111583023074685864'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111583023074685864'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/05/contact-grouping-in-gmail.html' title='Contact grouping in GMail'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111582000037482915</id><published>2005-05-11T15:00:00.000+01:00</published><updated>2005-07-20T12:23:36.340+01:00</updated><title type='text'></title><content type='html'>The &lt;i&gt;prettier-than-thou&lt;/i&gt; attitude by its owners, that zealot-like misticism, the unsufferable snob and designed stench of this piece of junk and its horde of fanatics, and the no-arguments-possible &lt;b&gt;fact&lt;/b&gt; that there are better and cheaper alternatives in the market; make me join the movement:&lt;br /&gt;&lt;br /&gt;&lt;img src="http://personales.ya.com/carlosmperez/idislikeipod.jpg" height="50%" width="50%"&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;I DISLIKE iPOD&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111582000037482915?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111582000037482915/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111582000037482915' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111582000037482915'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111582000037482915'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/05/prettier-than-thou-attitude-by-its.html' title=''/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111565461150972839</id><published>2005-05-09T17:03:00.000+01:00</published><updated>2005-05-09T17:03:31.640+01:00</updated><title type='text'>Do you know sea navigation?</title><content type='html'>Better start learning, just in &lt;a href="http://www.infobae.com/notas/nota.php?Idx=181779&amp;IdxSeccion=100"&gt;case&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Goddamn bunch of slaver &lt;b&gt;motherfuckers&lt;/b&gt;.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111565461150972839?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111565461150972839/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111565461150972839' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111565461150972839'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111565461150972839'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/05/do-you-know-sea-navigation.html' title='Do you know sea navigation?'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111476858282121251</id><published>2005-04-29T10:56:00.000+01:00</published><updated>2005-04-29T10:56:22.823+01:00</updated><title type='text'>Beta 2 DVD</title><content type='html'>Microsoft has finally released Team Studio 2005 to the european developers. You can order your free DVD &lt;a href="http://www.microsoft.com/emea/msdn/betaexperience/"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111476858282121251?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111476858282121251/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111476858282121251' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111476858282121251'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111476858282121251'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/04/beta-2-dvd.html' title='Beta 2 DVD'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111458957500381189</id><published>2005-04-27T09:12:00.000+01:00</published><updated>2005-04-27T09:12:55.003+01:00</updated><title type='text'>Longhorn @ PCMag</title><content type='html'>PCMag gives us a &lt;a href="http://www.pcmag.com/article2/0,1759,1789345,00.asp"&gt;quick peek at Longhorn&lt;/a&gt; with, of course, screenshots.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111458957500381189?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111458957500381189/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111458957500381189' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111458957500381189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111458957500381189'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/04/longhorn-pcmag.html' title='Longhorn @ PCMag'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111389843824729060</id><published>2005-04-19T09:13:00.000+01:00</published><updated>2005-04-19T09:13:58.246+01:00</updated><title type='text'>Another funny test</title><content type='html'>&lt;table width=400 align=center border=1 bordercolor=black cellspacing=0 cellpadding=2&gt;&lt;br /&gt;&lt;tr&gt;&lt;td align="center" bgcolor="#A8FFB3"&gt;&lt;br /&gt;&lt;h3&gt;Your Linguistic Profile:&lt;/h3&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td bgcolor="#D9FFD8"&gt;&lt;br /&gt;70% General American English&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td bgcolor="#A8FFB3"&gt;&lt;br /&gt;15% Yankee&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td bgcolor="#D9FFD8"&gt;&lt;br /&gt;10% Dixie&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td bgcolor="#A8FFB3"&gt;&lt;br /&gt;5% Upper Midwestern&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td bgcolor="#D9FFD8"&gt;&lt;br /&gt;0% Midwestern&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;a href="http://www.blogthings.com/amenglishdialecttest/"&gt;What Kind of American English Do You Speak?&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111389843824729060?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111389843824729060/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111389843824729060' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111389843824729060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111389843824729060'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/04/another-funny-test.html' title='Another funny test'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111389649911748907</id><published>2005-04-19T08:41:00.000+01:00</published><updated>2005-04-19T11:01:49.756+01:00</updated><title type='text'>Visual Studio 2005 Beta 2</title><content type='html'>It's gone live. You can find &lt;a href="http://lab.msdn.microsoft.com/vs2005/productinfo/productline/default.aspx"&gt;here&lt;/a&gt; a complete breakdown on all the different editions the next Visual Studio will have, and which capabilities will each have. I'm happy to see that the &lt;i&gt;Express&lt;/i&gt; editions, previously mentioned on this same blog, will have &lt;i&gt;official&lt;/i&gt; editions beyond beta stage. And, of course, they also have Express editions for this Beta 2. If you download them (&lt;a href="http://lab.msdn.microsoft.com/express/"&gt;herer&lt;/a&gt;) be &lt;b&gt;&lt;i&gt;very careful&lt;/i&gt;&lt;/b&gt; and uninstall previously all the previous versions, Framework 2 included.&lt;br /&gt;&lt;br /&gt;The Beta 2 edition of Visual Studio 2005 is avaliable for downloading if you are an MSDN subscriber, and &lt;i&gt;free on a DVD edition&lt;/i&gt; if you ask for it nicely. If you're European of African, you'll have to wait till the 25th to ask for it.&lt;br /&gt;&lt;br /&gt;[Edited]&lt;br /&gt;I've just learned that the Express Editions have database connectivity &lt;i&gt;only&lt;/i&gt; to SQL Server 2005 Beta (except for the Web Developer Express Edition). It seems to be an strategyt: by seriously handicapping the Express Editions Microsoft ensures they will only be used as learning tools. This is not a step in the right direction, for several reasons:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Going back&lt;/li&gt;.- Beta 1 editions of the Express IDEs did have connectivity to several databases, including Access, MSDE and the full fledged SQL Server 2000. &lt;b&gt;Removing&lt;/b&gt; functionality in the step from a Beta 1 to a Beta 2 is odd, to say the least.&lt;br /&gt;&lt;li&gt;Marketing&lt;/li&gt;.- It's &lt;b&gt;completely legitimate&lt;/b&gt; from Microsoft to try and make money selling their products. Nobody (at least nobody with a little sense) is going to complain about that. But, and this is a big but, I thought Express Editions were a great tool for us to legally develop applications independently. Most of us are employees of big firms, with the big bucks to pay for the full fledged Visual Studio editions, so that's what we use at work. For those of us who like to program &lt;i&gt;also&lt;/i&gt; in our leisure time, for our little-to-no-profit (or just for fun) endeavors, the Express Editions would be a great tool. Now, we are again &lt;i&gt;compelled&lt;/i&gt; by Microsoft to use P2P to download illegal versions of their software, if we want to use it at all.&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Just plain wrong, and a step back. Same old, same old.&lt;br /&gt;[/Edited]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111389649911748907?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111389649911748907/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111389649911748907' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111389649911748907'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111389649911748907'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/04/visual-studio-2005-beta-2.html' title='Visual Studio 2005 Beta 2'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111357451041301812</id><published>2005-04-15T15:15:00.000+01:00</published><updated>2005-04-15T15:15:10.413+01:00</updated><title type='text'>VB vs C#</title><content type='html'>Excellent &lt;a href="http://www.lacoude.com/docs/public/VBversusCsharp.aspx"&gt;article&lt;/a&gt; by Philippe Lacoude exposing the similarities and differences between VB and C#. Just as we programmer (at least, some of us with a remainder of common sense) been saying for months and project managers, customers and some other &amp;uuml;ber-snob programmer don't want to hear: the differences between the two languages are minimal.&lt;br /&gt;&lt;br /&gt;Paraphrasing Bill Clinton: It's the &lt;i&gt;framework&lt;/i&gt;, stupid.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111357451041301812?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111357451041301812/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111357451041301812' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111357451041301812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111357451041301812'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/04/vb-vs-c.html' title='VB vs C#'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111357423973669721</id><published>2005-04-15T15:10:00.000+01:00</published><updated>2005-04-15T15:10:39.736+01:00</updated><title type='text'>New SharpDevelop version</title><content type='html'>&lt;a href="http://www.icsharpcode.net/OpenSource/SD/"&gt;SharpDevelop&lt;/a&gt;, the free open source IDE for C# has just released a PR of its version 1.1. As the developers warn in the site, this Preview Release is not even a beta, as has some bugs. But we can download it and take a look at the new and exciting possibilities that will make this excellent IDE even better.&lt;br /&gt;&lt;br /&gt;And they are:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;New help system&lt;/li&gt;.- Now SharpDevelop includes an online help, MSDN style. In fact, the help system included in SharpDevelop can be configured to open its own help files, or the Microsoft ones, or any other.&lt;br /&gt;&lt;li&gt;XML edition&lt;/li&gt;.- XML edition has been greatly upgraded in this version. We can, for example, create our own schema and set it as the default schema for every XML created from that point on. It comes complete with a schema validator.&lt;br /&gt;&lt;li&gt;NAnt integration&lt;/li&gt;.- NAnt has been integrated onto the IDE in a most intuitive manner: we can use the open source tool to build our solutions, customize it and so on.&lt;br /&gt;&lt;li&gt;PInvoke integration&lt;/li&gt;.- Personally, this &lt;i&gt;addin&lt;/i&gt; has touched my heart. Thanks to it we'll be able to handle our calls to Win32 or any other unmanaged code, without further problems. It's very similar to the old API editor included in the Visual Basic 6 IDE. Speaking of this, if you're interested in PInvoke and what can you do by invoking unmanaged code (in fact, &lt;i&gt;everything&lt;/i&gt;) add to your bookmarks the following right now: &lt;a href="http://www.pinvoke.net"&gt;PInvoke&lt;/a&gt;, the &lt;i&gt;wiki&lt;/i&gt; specialized in this rather obscure and undocumented characteristic. Complete with examples, it's very, very good.&lt;br /&gt;&lt;li&gt;SharpReport&lt;/li&gt;.- &lt;b&gt;Yes!&lt;/b&gt; At long last somebody has taken the gauntlet: SharpDevelop will have its own addin to create reports, just like Crystal Reports .NET embedded in Visual Studio 2003. Let's hope their tool works better than the crap from Bussines Objects.&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;All these features can be previewed with &lt;a href="http://www.icsharpcode.net/Laputa/"&gt;some videos&lt;/a&gt; the SharpDevelop developers have made avaliable to download from the site. When 1.1 goes from PR to stable, and all this addins are official, SharpDevelop would have taken another step (and a big one!) to establish itself as a serious and viable alternative to Microsoft and its Visual Studio, chiefly among all of us who can't afford a &lt;i&gt;legal&lt;/i&gt; version of VS.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111357423973669721?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111357423973669721/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111357423973669721' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111357423973669721'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111357423973669721'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/04/new-sharpdevelop-version.html' title='New SharpDevelop version'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111209663830624157</id><published>2005-03-29T12:43:00.001+01:00</published><updated>2005-03-29T14:08:37.976+01:00</updated><title type='text'>SharpToolBox</title><content type='html'>A really, really complete list of tools, plugins, IDE extensions and other productivity tools for C#: &lt;a href="http://sharptoolbox.com"&gt;SharpToolBox&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;Comes complete with an RSS feed, too.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111209663830624157?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111209663830624157/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111209663830624157' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111209663830624157'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111209663830624157'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/03/sharptoolbox.html' title='SharpToolBox'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111053256551269590</id><published>2005-03-11T09:16:00.000Z</published><updated>2005-03-11T09:16:05.513Z</updated><title type='text'>Some MVPs</title><content type='html'>Recently, a bunch of &lt;i&gt;nostalgic&lt;/i&gt; MVPs have signed a &lt;a href="http://rblevin.blogspot.com/2005/03/microsoft-mvps-revolt.html"&gt;petition&lt;/a&gt; to Microsoft, asking them to keep supporting Visual Basic 6, discontinued since VB .NET.&lt;br /&gt;&lt;br /&gt;That's their petition.&lt;br /&gt;&lt;br /&gt;And the responses are some, and quite upset some of them. And with no lack of reason: the petition I've linked seems like some people are unable (or unwilling) to grow...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111053256551269590?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111053256551269590/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111053256551269590' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111053256551269590'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111053256551269590'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/03/some-mvps.html' title='Some MVPs'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-111047118803189852</id><published>2005-03-10T16:13:00.000Z</published><updated>2005-03-10T16:13:08.030Z</updated><title type='text'>MyGeneration</title><content type='html'>Not so long I've talked about D4Modelizer, the automatic class generator from databases. With the same functionality, but with much more possibilities (templates, compatibility with &lt;a href="http://nhibernate.sourceforge.net/"&gt;NHibernate&lt;/a&gt; and Microsoft's &lt;a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag2/html/entlib.asp"&gt;Data Access Application Block&lt;/a&gt;, among others) it's &lt;a href="http://www.mygenerationsoftware.com/"&gt;MyGeneration&lt;/a&gt;. It's much more complicated to use, but the results given are &lt;i&gt;lights years away&lt;/i&gt;, literally. D4Modelizer is good enough for small projects (exactly the use I've given it), but MyGeneration is by far a more serious tool.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-111047118803189852?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/111047118803189852/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=111047118803189852' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111047118803189852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/111047118803189852'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/03/mygeneration.html' title='MyGeneration'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110984792579844145</id><published>2005-03-03T11:05:00.000Z</published><updated>2005-03-03T11:05:25.796Z</updated><title type='text'>Must-have tools, reloaded</title><content type='html'>I posted some time ago a MSDN article mentioning the ten must-have tools every self-respecting .NET programmer should download and install (and use) right now. &lt;a href="http://msdn.microsoft.com/msdnmag/issues/04/07/MustHaveTools/default.aspx"&gt;The article&lt;/a&gt; has been redone.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110984792579844145?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110984792579844145/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110984792579844145' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110984792579844145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110984792579844145'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/03/must-have-tools-reloaded.html' title='Must-have tools, reloaded'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110984731204268229</id><published>2005-03-03T10:55:00.000Z</published><updated>2005-03-03T10:55:12.043Z</updated><title type='text'>CodeSmith</title><content type='html'>&lt;a href="http://www.ericjsmith.com/codesmith/overview.aspx"&gt;CodeSmith - FREEWARE template-based code generator with ASP.NET style syntax&lt;/a&gt;. 'Nuff said.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110984731204268229?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110984731204268229/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110984731204268229' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110984731204268229'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110984731204268229'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/03/codesmith.html' title='CodeSmith'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110899629193751142</id><published>2005-02-21T14:31:00.000Z</published><updated>2005-02-21T14:31:31.936Z</updated><title type='text'>I want</title><content type='html'>&lt;a href="http://www.battlechair.com/5.aspx"&gt;this chair&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110899629193751142?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110899629193751142/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110899629193751142' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110899629193751142'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110899629193751142'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/02/i-want.html' title='I want'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110837585311935750</id><published>2005-02-14T10:10:00.000Z</published><updated>2005-02-14T10:10:53.120Z</updated><title type='text'>Accident</title><content type='html'>&lt;center&gt;&lt;br /&gt;&lt;img src="http://personales.ya.com/carlosmperez/long.jpg"&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;I just couldn't resist. Linuxmongers reading (if any), please don't be mad. ;-)&lt;br /&gt;(Via: &lt;a href="http://www.theserverside.net/news/thread.tss?thread_id=31764"&gt;The Server Side&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110837585311935750?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110837585311935750/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110837585311935750' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110837585311935750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110837585311935750'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/02/accident.html' title='Accident'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110812890765875439</id><published>2005-02-11T13:35:00.000Z</published><updated>2005-02-12T16:40:18.386Z</updated><title type='text'>Help! Control wanted! (Edit: Found!)</title><content type='html'>&lt;i&gt;&lt;br /&gt;I'm looking for a user control that gives me the capabilities displayed in this two images:&lt;br /&gt;&lt;img src="http://personales.ya.com/carlosmperez/control1.jpg"&gt; &lt;img src="http://personales.ya.com/carlosmperez/control2.jpg"&gt;&lt;br /&gt;&lt;br /&gt;I have no idea how these kind controls are called. If anyone knows of a control resembling this, being good, pretty and preferably &lt;b&gt;cheap&lt;/b&gt; (it's meant for a RentaCoder project and I wouldn't like to end up losing money), please make a comment in this same blog.&lt;br /&gt;&lt;br /&gt;I'd award GMail accounts if I hadn't the feeling everyone already has one, at least.&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Edit:&lt;/b&gt; Found it! It's included on &lt;a href="http://www.gotdotnet.com/Workspaces/Workspace.aspx?id=167542e0-e435-4585-ae4f-c111fe60ed58"&gt;Visual Basic Power Pack&lt;/a&gt; custom controls, it's called TaskPane, and it offers the exact same functionality I was looking for.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110812890765875439?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110812890765875439/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110812890765875439' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110812890765875439'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110812890765875439'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/02/help-control-wanted.html' title='Help! Control wanted! (Edit: Found!)'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110812692627370021</id><published>2005-02-11T13:02:00.000Z</published><updated>2005-02-11T13:02:06.273Z</updated><title type='text'>FxCop</title><content type='html'>&lt;a href="http://www.gotdotnet.com/team/fxcop/"&gt;FxCop&lt;/a&gt; is a code analysis tool that checks .NET managed code assemblies for conformance to the Microsoft .NET Framework Design Guidelines. It uses reflection, MSIL parsing, and callgraph analysis to inspect assemblies for more than 200 defects in the following areas: &lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Library design&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Localization&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Naming conventions&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Performance&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Security&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;FxCop includes both GUI and command line versions of the tool, as well as an SDK to create custom rules.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110812692627370021?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110812692627370021/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110812692627370021' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110812692627370021'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110812692627370021'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/02/fxcop.html' title='FxCop'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110795919283937177</id><published>2005-02-09T14:26:00.000Z</published><updated>2005-02-09T14:26:32.840Z</updated><title type='text'>ReSharper</title><content type='html'>&lt;b&gt;&lt;a href="http://www.jetbrains.com"&gt;JetBrains&lt;/a&gt;&lt;/b&gt;, the same Russian company that developed the best Java IDE, &lt;a href="http://www.jetbrains.com/idea/"&gt;IntelliJ IDEA&lt;/a&gt; and one of the best news/mail/RSS readers around, &lt;a href="http://www.jetbrains.com/omea/index.html"&gt;Omea Reader&lt;/a&gt;, now brings us C# developers &lt;b&gt;&lt;a href="http://www.jetbrains.com/resharper/"&gt;ReSharper&lt;/a&gt;&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;ReSharper is an add-in for Visual Studio that integrates many of Idea's capabilities to VS; such as refactoring, intelligent code management, an upgraded IntelliSense (not matter how incredible this sounds), real-time compilation of our code (for early detection of warning and errors), templates, and a lot of other features. It's so goiod is almost addictive. As soon as my trial period is finished I'm buying &lt;b&gt;for sure&lt;/b&gt;. At $99, it's a bargain.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110795919283937177?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110795919283937177/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110795919283937177' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110795919283937177'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110795919283937177'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/02/resharper.html' title='ReSharper'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110787762937482641</id><published>2005-02-08T15:47:00.000Z</published><updated>2005-02-08T15:47:09.373Z</updated><title type='text'>Query Commander</title><content type='html'>&lt;a href="http://querycommander.rockwolf.com/"&gt;Query Commander&lt;/a&gt; is an open-source tool, made with &lt;a href="http://www.icsharpcode.net/OpenSource/SD/"&gt;Sharp Develop&lt;/a&gt;; that allows us to connect with several kinds of databases and run queries ans stored procedures with them. The most attractive feature of this tool are its looks, really similar a Visual Studio IDE, and the &lt;b&gt;ability of using IntelliSense on a query&lt;/b&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110787762937482641?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110787762937482641/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110787762937482641' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110787762937482641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110787762937482641'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/02/query-commander.html' title='Query Commander'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110725616665639508</id><published>2005-02-01T11:09:00.000Z</published><updated>2005-02-01T11:09:26.656Z</updated><title type='text'>Phishing</title><content type='html'>As described by &lt;a href="http://en.wikipedia.org/wiki/Phishing"&gt;Wikipedia&lt;/a&gt;, &lt;i&gt;phishing&lt;/i&gt; is fraudulent adquisition, through deception, of sensitive personal information such as passwords and credit card details. At MailFrontier they've made (as a part of an advertising for their product) a &lt;b&gt;test&lt;/b&gt; that won't tell you which ice-cream flavor you are; instead it measures something useful as your resistance level to phishing attempts: &lt;a href="http://survey.mailfrontier.com/survey/quiztest.html"&gt;test&lt;/a&gt;. It has a &lt;a href="http://survey.mailfrontier.com/survey/quiztest.cgi?themailfrontierphishingiqtest"&gt;first part&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110725616665639508?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110725616665639508/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110725616665639508' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110725616665639508'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110725616665639508'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/02/phishing.html' title='Phishing'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110681709739845869</id><published>2005-01-27T09:11:00.000Z</published><updated>2005-01-27T09:11:37.396Z</updated><title type='text'>Science-fiction (double feature)</title><content type='html'>On &lt;a href="http://www.wired.com/news/wiredmag/1,2167,66388,00.html?tw=rss.TOP"&gt;this&lt;/a&gt; Wired article, some Gary Wolf (who must have a high opinion of his own intelligence) writes a science-fiction story: in the near future, Microsoft has hired Linus Torvalds and he writes an internal memo to Bill Gates, complaining about Steve Ballmer's attitude; who just doesn't dig how Microsoft is able to give away its new operative system, the &lt;i&gt;WinX&lt;/i&gt;, and still make money. He also doesn't like having a Linux as the core of Microsoft's new OS.&lt;br /&gt;&lt;br /&gt;The main idea of the article is not bad: Microsoft gives away the OS and charges for the tools. As this science-fiction OS has a Linux core, it sells (excuse me, it's given away) a lot; because it's a widely known &lt;i&gt;fact&lt;/i&gt; that a Linux core is the solution to all the grief in the world, including hunger, plague and bad body odor. &lt;br /&gt;&lt;br /&gt;But I digress: the &lt;i&gt;funniest&lt;/i&gt; thing about the article it's this, and I quote: &lt;i&gt;"With an open, universal operating system, users still crave the familiar look and feel that Microsoft sells them. We've got a suite of applications that work closely together. We've got an application development framework that encourages everybody in the industry to write apps that integrate into our desktop suite - and that increases the market for WinX."&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Wake up and smell the roses, Mr. Wolf: Microsft &lt;b&gt;already has&lt;/b&gt; a suite of applications working closely together, it &lt;b&gt;already has&lt;/b&gt; an application development framework which is &lt;b&gt;light-years ahead&lt;/b&gt; of any other open source competitor. And alas, they've done it all by themselves, without hiring Linus Torvalds. Funny, ain't it?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110681709739845869?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110681709739845869/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110681709739845869' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110681709739845869'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110681709739845869'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/01/science-fiction-double-feature.html' title='Science-fiction (double feature)'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110666909181939173</id><published>2005-01-25T16:04:00.000Z</published><updated>2005-01-25T16:04:51.820Z</updated><title type='text'>Code Heroes</title><content type='html'>For the last two years Microsoft is supporting an ongoing contest: &lt;a href="http://www.windowsforms.net/Default.aspx?tabindex=6&amp;tabid=47"&gt;Windows Forms Code Heroes&lt;/a&gt;. A lot of very useful user controls and source code there, worth checking.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110666909181939173?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110666909181939173/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110666909181939173' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110666909181939173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110666909181939173'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/01/code-heroes.html' title='Code Heroes'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110665180570166509</id><published>2005-01-25T11:16:00.000Z</published><updated>2005-01-25T11:16:45.700Z</updated><title type='text'>SharpChess</title><content type='html'>Peter Hughes has made a complete chess program using C#. You can download it, including the source codem, &lt;a href="http://www.sharpchess.com/"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110665180570166509?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110665180570166509/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110665180570166509' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110665180570166509'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110665180570166509'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/01/sharpchess.html' title='SharpChess'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110664698931303301</id><published>2005-01-25T09:56:00.000Z</published><updated>2005-01-25T09:56:29.313Z</updated><title type='text'>Smart Clients</title><content type='html'>Interesting white paper by Microsoft about &lt;a href="http://msdn.microsoft.com/netframework/programming/winforms/smartclient.aspx"&gt;smart clients&lt;/a&gt;: the article explains not only how to develop .NET Framework 1.1 applications oriented to this model, but also exposes its inherent advantages. I believe I've said it before: I hope Microsoft to make a strong bet on smart clients in the near future, because I consider them the ideal solution for quite some problems, including intranets.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110664698931303301?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110664698931303301/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110664698931303301' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110664698931303301'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110664698931303301'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/01/smart-clients.html' title='Smart Clients'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110655587454624793</id><published>2005-01-24T08:37:00.000Z</published><updated>2005-01-24T08:37:54.546Z</updated><title type='text'>But I had 50 Gbs free yesterday...</title><content type='html'>Nowadays we perform tasks ten years ago (even five) would have seem like science-fiction: we download 800 Mbs (or much bigger) files from the net, we copy DVD images for 4 Gbs each, etc., etc. All that implies that hard disk drives with fantastical (not so long ago, mythical) storage capabilities start feeling like they've got few storage space. &lt;br /&gt;&lt;br /&gt;Thanks to &lt;a href="http://www.codinghorror.com/blog/"&gt;Coding Horror&lt;/a&gt;, I've downloaded two very useful applications to know how much space I have left on my disk and (much more useful) which applications or folders are taking the most: &lt;a href="http://users.forthnet.gr/pat/efotinis/programs/overdisk.html"&gt;Overdisk&lt;/a&gt; and &lt;a href="http://www.jam-software.com/freeware/index.shtml"&gt;TreeSize&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110655587454624793?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110655587454624793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110655587454624793' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110655587454624793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110655587454624793'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/01/but-i-had-50-gbs-free-yesterday.html' title='But I had 50 Gbs free yesterday...'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110633962147268199</id><published>2005-01-21T20:33:00.000Z</published><updated>2005-01-21T20:33:41.473Z</updated><title type='text'>Métro</title><content type='html'>As I've just received word that I'll get my new PDA next week, let's celebrater the good news with an interesting link: &lt;a href="http://nanika.net/metro"&gt;M&amp;eacute;tro&lt;/a&gt;, a free application compatible with a lot of PDA and SmartPhones systems (including, of course, Pocket PC) containing an street guide for a lot of cities, Madrid included.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110633962147268199?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110633962147268199/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110633962147268199' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110633962147268199'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110633962147268199'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/01/mtro.html' title='M&amp;eacute;tro'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110622399626112909</id><published>2005-01-20T12:26:00.000Z</published><updated>2005-01-20T12:26:36.260Z</updated><title type='text'>Minty MP3</title><content type='html'>Via &lt;a href="http://www.pcanete.com.ar/"&gt;Patricio Ca&amp;ntilde;ete's&lt;/a&gt; blog, I still can't &lt;a href="http://web.media.mit.edu/~ladyada/make/minty/"&gt;close my mouth&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110622399626112909?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110622399626112909/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110622399626112909' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110622399626112909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110622399626112909'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/01/minty-mp3.html' title='Minty MP3'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110621453165592278</id><published>2005-01-20T09:48:00.000Z</published><updated>2005-01-20T12:08:11.380Z</updated><title type='text'>New .NET features</title><content type='html'>On &lt;a href="http://www.ondotnet.com/pub/a/dotnet/2004/01/19/longhorn.html"&gt;this&lt;/a&gt; article, Ian Griffiths explains us how it will be like to design Windows Forms for Longhorn using XAML, the new markup standard by Microsoft. Seems simple enough.&lt;br /&gt;&lt;br /&gt;Also, we'll have &lt;a href="http://www.ondotnet.com/pub/a/dotnet/2004/10/04/partialclasses.html"&gt;partial classes&lt;/a&gt;  avaliable: it seems useful for preserving the separate presentation-logical layers philosophy from ASP .NET in Windows Forms. &lt;br /&gt;&lt;br /&gt;It seems that web interfaces are currently the most accepted paradigm for developing: makes your application avaliable everywhere, the client does not need to reinstall anything and maintenance is much simpler. Check the alternative: smart windows forms clients with auto-update capabilities thanks to &lt;a href="http://www.ondotnet.com/pub/a/dotnet/2004/10/11/clickonce.html"&gt;ClickOnce&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;And a third party commercial alternative: now you can write cross-platform applications thanks to &lt;a href="http://www.appforge.com/"&gt;Crossfire&lt;/a&gt;. Yes, that means you can develop .NET Compact Framework applications able to run on a Symbian phone. At a thousand dollar per license, It's a bit on the &lt;b&gt;expensive&lt;/b&gt; side, but considering the huge increase in market opportunities for your product, it could be worthwhile.&lt;br /&gt;&lt;br /&gt;On the other hand, I must apologize for the &lt;b&gt;highly irregular&lt;/b&gt; refresh rate of this blog: I have four projects pending and making 10+ hours turns, I simply don't have the time. I hope to return to normal mode soon; for this blog's sake, my few (but loyal) readers' sake, and for my even fewer neurons' sake.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110621453165592278?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110621453165592278/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110621453165592278' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110621453165592278'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110621453165592278'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/01/longhorn-and-xaml.html' title='New .NET features'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110565642073026446</id><published>2005-01-13T22:45:00.000Z</published><updated>2005-01-13T22:53:49.496Z</updated><title type='text'>Datasets and ListViews</title><content type='html'>Personally, I like the ListView control much better than the DataGrid. That's why articles like &lt;a href="http://www.akadia.com/services/dotnet_listview_sort_dataset.html"&gt;this&lt;/a&gt;, where we get a clear explanation on how to mix a Dataset with a ListView are really good as a learning tool, or a reminder.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110565642073026446?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110565642073026446/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110565642073026446' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110565642073026446'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110565642073026446'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/01/datasets-and-listviews.html' title='Datasets and ListViews'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110543394020299074</id><published>2005-01-11T08:59:00.000Z</published><updated>2005-01-11T08:59:00.203Z</updated><title type='text'>Another tool</title><content type='html'>Its name is &lt;a href="http://www.d4modelizer.com"&gt;D4Modelizer&lt;/a&gt;, it's completely free and very, very useful. This tool performs the modelling of any selected tables of you database to C# classes. The generated classes include the tables' fields as properties, and the needed methods to add, update, delete and get records. D4Modelizer can make class models out of SQL Server (and MSDE, of course), MS Access, DB/2, MySQL, Firebird and PostgreSQL.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110543394020299074?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110543394020299074/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110543394020299074' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110543394020299074'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110543394020299074'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/01/another-tool.html' title='Another tool'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110493699324738627</id><published>2005-01-05T14:56:00.000Z</published><updated>2005-01-05T14:56:33.246Z</updated><title type='text'>Koders</title><content type='html'>A new service to programmers everywhere: &lt;a href="http://www.koders.com"&gt;Koders&lt;/a&gt;, still a beta but already showing a hint of its potential. It's basically a search engine, which looks for the keywords we enter on all the &lt;i&gt;open source&lt;/i&gt; repositories avaliable on the Internet.&lt;br /&gt;&lt;br /&gt;By the way, &lt;a href="http://users-guide.org/index.php?c=text&amp;id=29"&gt;here&lt;/a&gt; you'll see how to make your Firefox browse faster.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110493699324738627?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110493699324738627/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110493699324738627' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110493699324738627'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110493699324738627'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/01/koders.html' title='Koders'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110491862958052625</id><published>2005-01-05T09:50:00.000Z</published><updated>2005-01-05T09:50:29.580Z</updated><title type='text'>KeePass</title><content type='html'>I'm sure you have my same problem. You're using several email lists, BitTorrent trackers, forums, email accounts, intant messaging services, online banks, and a lot of different web sites or services requiring the usual login/password combination. The proper thing to do is to have a different combination for each, but that requires an astounding memory, so the vast mayority of users choose the same solution: same login and same password for a lot of sites. Of course, if that combination should be one day compromised we would be in deep trouble.&lt;br /&gt;&lt;br /&gt;That's the reason why programs such as &lt;a href="http://keepass.sourceforge.net"&gt;KeePass&lt;/a&gt; exist. Thanks to them we can keep all our access codes. There are a lot of them avaliable, but this one if one of the best I've tried: &lt;b&gt;very&lt;/b&gt; secure, really easy to use, with a nice GUI and completely &lt;b&gt;free&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;All our login/passwords are stored on a propietary format and encrypted database. The program open using a central password (which from now on will be the only one to memorize) or using a key disk. The problem from now on will be to keep a constant backup of that database, because if we lose it will be &lt;b&gt;surely fucked&lt;/b&gt;.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110491862958052625?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110491862958052625/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110491862958052625' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110491862958052625'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110491862958052625'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/01/keepass.html' title='KeePass'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110477188091600675</id><published>2005-01-03T17:04:00.000Z</published><updated>2005-01-03T17:04:40.916Z</updated><title type='text'>Temptations</title><content type='html'>I don't know you, but it's &lt;b&gt;really difficult&lt;/b&gt; for me to avoid temptation. Worse even when it's so easy sinning as to buy at &lt;a href="http://www.elcorteingles.com"&gt;El Corte Ingles&lt;/a&gt; website.  Yeah, there are lots of places cheaper, but when you want to spend big dollars on a gadget, I prefer to know that I'll be able to return the gadget if I don't like it and &lt;i&gt;no questions asked&lt;/i&gt;. Besides, this little codecruncher is not precisely a millionaire, and the possibility of financing this purchase is really easy and really tempting.&lt;br /&gt;&lt;br /&gt;And that's all she wrote: this very morning, after some clicks I've bought myself an &lt;a href="http://www.pdabuyersguide.com/iPAQ_rx3715.htm"&gt;iPAQ rx3715&lt;/a&gt;. It looks really, really, &lt;b&gt;really&lt;/b&gt; good. My original idea was to read a lot of PDF files, without having to print them and carry them all around. But, looking how many features and accesories it has, I'll have to refresh my very rusty knowledge about Pocket PC programming, including .NET Compact Framework and the &lt;b&gt;wonderful&lt;/b&gt; third party library &lt;a href="http://www.opennetcf.org"&gt;OpenNet CF&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110477188091600675?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110477188091600675/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110477188091600675' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110477188091600675'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110477188091600675'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2005/01/temptations.html' title='Temptations'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110310450308564063</id><published>2004-12-15T09:55:00.000Z</published><updated>2004-12-15T09:55:03.086Z</updated><title type='text'>FVZA</title><content type='html'>Some people, who must be really bored, have created the &lt;a href="http://www.fvza.org"&gt;FVZA&lt;/a&gt;, or &lt;i&gt;Federal Vampire and Zombie Agency&lt;/i&gt;. A good laugh because, &lt;b&gt;of course&lt;/b&gt;, it's not for real.&lt;br /&gt;&lt;br /&gt;On the other hand, and clicking link after link I'm glad to discover that in the U. S. of A. there's still some &lt;a href="http://www.theregister.co.uk/2004/11/07/blue_state_to_reds/"&gt;intelligent life&lt;/a&gt;, after all.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110310450308564063?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110310450308564063/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110310450308564063' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110310450308564063'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110310450308564063'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/12/fvza.html' title='FVZA'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110309421287976694</id><published>2004-12-15T07:03:00.000Z</published><updated>2004-12-15T07:03:32.880Z</updated><title type='text'>Installing</title><content type='html'>I used to go with the excellent &lt;a href="http://www.wise.com/products.asp"&gt;Wise Installer&lt;/a&gt; for the setup of my applications, both to the &lt;i&gt;freelance&lt;/i&gt; ones as the corporate ones. I liked it so much it made me forgetr the much upgradeable (although, to tell the truth, it's been &lt;i&gt;ages&lt;/i&gt; since I last reviewed it, so I don't really know its capabilities now) &lt;a href="http://www.installshield.com"&gt;Install Shield&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;But Visual Studio 2003 made me forget both tools. What I now usually do when I program a Windows Forms application is to create a solution integrating two projects: one for the application itself and the other one for the application installer program. VS 2003 detects perfectly all the dependencies (at least, that's been my experience until now), including those for Crystal Reports and filth as that; and it adds them to the installation project without further trouble.&lt;br /&gt;&lt;br /&gt;Speaking about this, the following white paper from Microsoft seems very proper: &lt;a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnnetdep/html/vsredistdeploy.asp"&gt;Using Visual Studio .NET to Redistribute the .NET Framework&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110309421287976694?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110309421287976694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110309421287976694' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110309421287976694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110309421287976694'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/12/installing.html' title='Installing'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110303888957708407</id><published>2004-12-14T15:41:00.000Z</published><updated>2004-12-14T15:41:29.576Z</updated><title type='text'>Google keeps at it</title><content type='html'>While you wait for Google to keep its promise to &lt;a href="http://www.internetnews.com/bus-news/article.php/3447531"&gt;open the libraries&lt;/a&gt; of some very important universities, you can check this out:&lt;a href="http://scholar.google.com/"&gt;Google Scholar&lt;/a&gt;, &lt;i&gt;another&lt;/i&gt; Google service in beta testing. As you can read on its &lt;i&gt;About&lt;/i&gt; section, Google Scholar is a Google searcher specialised on academic data searching.&lt;br /&gt;&lt;br /&gt;I don't know you, but the guys at Google are beginning to look a little scary to me,...&lt;br /&gt;&lt;br /&gt;UPDATED: At the same time, Microsoft launches its dsktop search, &lt;a href="http://beta.toolbar.msn.com"&gt;MSN Toolbar suite&lt;/a&gt;. Let's try it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110303888957708407?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110303888957708407/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110303888957708407' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110303888957708407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110303888957708407'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/12/google-keeps-at-it.html' title='Google keeps at it'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110295355627991651</id><published>2004-12-13T15:59:00.000Z</published><updated>2004-12-13T15:59:16.280Z</updated><title type='text'>Eclipsing .NET</title><content type='html'>On &lt;a href="http://www.sys-con.com/webservices/article.cfm?id=360"&gt;this&lt;/a&gt; article, Kyle Gabhart explains to us how to use the plugin developed by &lt;a href="http://www.improve-technologies.com"&gt;Improve Technologies&lt;/a&gt; in order to use &lt;a href="http://www.eclipse.org"&gt;Eclipse&lt;/a&gt; as a C# development platform. It's still a long, &lt;b&gt;long&lt;/b&gt; way from Visual Studio, but it's a start.&lt;br /&gt;&lt;br /&gt;Enough with season gifts and all that crap, it was about time I posted something serious. ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110295355627991651?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110295355627991651/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110295355627991651' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110295355627991651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110295355627991651'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/12/eclipsing-net.html' title='Eclipsing .NET'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110294647410523787</id><published>2004-12-13T14:01:00.000Z</published><updated>2004-12-13T14:02:19.806Z</updated><title type='text'>More suggestions</title><content type='html'>Keeping the seasons spirits (and commercial interests) up, &lt;a href="http://nintendo.co.jp/n10/nwt/dssoft/movie/dssoft.html"&gt;this&lt;/a&gt; also looks good. It comes with a Wi-Fi connection and I've been told that it'll have online playing capabilities. &lt;b&gt;Cool&lt;/b&gt;.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110294647410523787?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110294647410523787/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110294647410523787' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110294647410523787'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110294647410523787'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/12/more-suggestions.html' title='More suggestions'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110267776025154935</id><published>2004-12-10T11:22:00.000Z</published><updated>2004-12-10T11:22:40.250Z</updated><title type='text'>Thinking about Christmas</title><content type='html'>And I &lt;b&gt;hate its guts&lt;/b&gt;. But if any kind person reading this should be so kind as to give me this &lt;a href="http://www.tecnoregalos.com/product_info.php/products_id/419"&gt;geeky silly thing&lt;/a&gt;  as a gift, surely my jolly season spirit would climb up.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110267776025154935?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110267776025154935/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110267776025154935' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110267776025154935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110267776025154935'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/12/thinking-about-christmas.html' title='Thinking about Christmas'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110267756391297757</id><published>2004-12-10T11:19:00.000Z</published><updated>2004-12-10T11:19:23.913Z</updated><title type='text'>3D Developer Studio for Visual Basic .NET</title><content type='html'>And it's &lt;b&gt;free&lt;/b&gt;. You can download it &lt;a href="http://www.download.com/3D-Developer-Studio-for-Visual-Basic-NET/3000-10253_4-10213562.html?tag=pop"&gt;here&lt;/a&gt;. We'll keep you informed about this, as long as the damn Mandrake and RentACoder allows me the time to test it...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110267756391297757?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110267756391297757/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110267756391297757' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110267756391297757'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110267756391297757'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/12/3d-developer-studio-for-visual-basic.html' title='3D Developer Studio for Visual Basic .NET'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110191356859199263</id><published>2004-12-01T15:06:00.000Z</published><updated>2004-12-01T15:06:08.590Z</updated><title type='text'>Anti-stress</title><content type='html'>All of us know how stressing our profession can be: schedule deadlines approaching fast, code bugs we're unable to see, lazy partners, inept analysts, idiot bosses, crybabies users,... you know the picture.&lt;br /&gt;&lt;br /&gt;The traditional remedies against stress included, until now, rubber balls, to go to the bathroom and cry, go to a field and shout your lungs out, etc...That's history: now we have &lt;b&gt;&lt;a href="http://www.soldat.pl"&gt;Soldat&lt;/a&gt;&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;Soldat is a 2D multiplayer shooter utterly vicious: really easy to handle, really fast to set-up and play and completely &lt;b&gt;brutal&lt;/b&gt;. It's perfect for any firm's development team to use that half-hour left of the meal time in wasting adrenalin, de-tox and get ready to face problems with a better attitude.&lt;br /&gt;&lt;br /&gt;Take that for granted if you can get your lazy partners or the inept analysts or the idiot bosses to play. It's always good to be able to &lt;b&gt;kick their guts out&lt;/b&gt;,... virtually speaking, of course.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110191356859199263?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110191356859199263/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110191356859199263' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110191356859199263'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110191356859199263'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/12/anti-stress.html' title='Anti-stress'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110182103638944208</id><published>2004-11-30T13:23:00.000Z</published><updated>2004-11-30T13:23:56.390Z</updated><title type='text'>Road Rage</title><content type='html'>As some of you may know, I'm a happy &lt;a href="http://www.tshirthell.com"&gt;TShirt Hell&lt;/a&gt; customer from some time on. On that site you'll be able to find pretty tshirts with fit and politically correct messages, useful for any social ocasion you'll attend.&lt;br /&gt;&lt;br /&gt;In the same spirit, now they've expanded their business and here you have a very good idea: &lt;a href="http://www.roadragecards.com/index.htm"&gt;car cards&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;Amazing.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110182103638944208?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110182103638944208/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110182103638944208' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110182103638944208'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110182103638944208'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/road-rage.html' title='Road Rage'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110181543623257068</id><published>2004-11-30T11:50:00.000Z</published><updated>2004-11-30T11:50:36.233Z</updated><title type='text'>I hate Oracle</title><content type='html'>And I'm not alone on this: please join the &lt;a href="http://www.thedailywtf.com/ShowForum.aspx?ForumID=17"&gt;club&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110181543623257068?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110181543623257068/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110181543623257068' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110181543623257068'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110181543623257068'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/i-hate-oracle.html' title='I hate Oracle'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110173047595551315</id><published>2004-11-29T12:14:00.000Z</published><updated>2004-11-29T12:14:35.956Z</updated><title type='text'>It's war!</title><content type='html'>I'm utterly convinced there's a bunch of people ready and willing to transform the current controversy in a full blown war between browsers, willing to use the foulest tricks in the universe just to make their chosen option the winner.&lt;br /&gt;&lt;br /&gt;Please indulge me in a little experiment. Let's open the following link, first using Firefox and then using Internet Explorer. It's in spanish, but that's irrelevant.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://bernia.disca.upv.es/~iripoll/seguridad/practicas/programacion/"&gt;Link&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You've realised, of course, how &lt;b&gt;crappy&lt;/b&gt; the page is displayed in Internet Explorer. The link was emailed to me by a friend, as an example on a poorly done page. But I thought something more was going on: it was so badly done it had to be done like that on purpose. And, of course, that's the answer.&lt;br /&gt;&lt;br /&gt;I you open the source code for it we find out the page loads a CSS file, &lt;i&gt;estilo.css&lt;/i&gt;. If we download said file we'll be able to find, just in the BODY instruction a quite suspicious line of code:&lt;b&gt;filter: 'Blur()'&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Well, well, welll,... that seems to be a CSS trait native to Explorer, for displaying text special effects, and not recognised by another browsers. Used &lt;a href="http://www.fred.net/dhark/demos/css/css_filter_examples.html"&gt;wisely&lt;/a&gt; can show really nice looking effects.&lt;br /&gt;&lt;br /&gt;Use it like &lt;b&gt;a bastard&lt;/b&gt; (he can't plead error or incompetence in this case: he's used Blur() without a single parameter, please) it's only use is a &lt;b&gt;pathetic&lt;/b&gt; example of making I don't exactly know which stupid pledge to I don't know which stupid ideals. Or maybe this is the poor excuse of a &lt;i&gt;hacking&lt;/i&gt; this guy knows.&lt;br /&gt;&lt;br /&gt;Luckily, the vast majority of people getting into this crap of a web page using IE (90% of potential users, by the latest polls) instead of investigating why it displays so hideously ugly; they'll use Google to find the same information in another place and everyone happy. If this is somekind of a gesture by this guy, I seems to me an idiocy bordering excellence.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110173047595551315?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110173047595551315/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110173047595551315' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110173047595551315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110173047595551315'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/its-war.html' title='It&apos;s war!'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110172785189032669</id><published>2004-11-29T11:30:00.000Z</published><updated>2004-11-29T11:30:51.890Z</updated><title type='text'>It's so easy</title><content type='html'>I'm learning Oracle, financed by my current firm. Befor ethe anti-Microsoft (and pro-everything else, of course) begin attacking me for this post, I have to say this is not a post against Oracle, far from it. SQLPlus command console is &lt;b&gt;bad as a toothache&lt;/b&gt;, but that's not the objective of this post.&lt;br /&gt;&lt;br /&gt;The curious thing about this course is the teacher. The guy is a clear example of a tendence I'm beginning to notice in colleagues, forum people and technical geek-types in general. Lacking a more scientific term for it, I call this trend (which surely doesn't even exists and it's only a byproduct of my paranoid mind) like this: &lt;i&gt;blame-it-on-Windows&lt;/i&gt;, or &lt;b&gt;bioW&lt;/b&gt; for short.&lt;br /&gt;&lt;br /&gt;Just in the first class of the course, when we were setting everything up for it, the Oracle &lt;i&gt;listener&lt;/i&gt; needed for connecting to one of the test servers was failing. I must say that the machines we're using for the course are the same machines we usually use for work, all of them with Windows XP, even the machines that are to function as servers for the course are Windows XP boxes. Well, all the listener troubles we're meet with the same exact answer from our funny teacher: &lt;i&gt;That's what it happens when you install Oracle on Windows XP, something not recommended by them&lt;/i&gt;(&lt;a href="http://www.oracle.com/technology/tech/windows/faq.html#tune"&gt;untrue&lt;/a&gt;). &lt;i&gt;You don't have this trouble in Linux.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;I'm OK with that. Really. Opinions are like asses and everyone has at least one; even more, everyone has the rigth to have one, no matter how wrong it is. What I'm not OK with is using an opinion as a dogma, or disguising your lack of knowledge with such nonsense. He should have said &lt;i&gt;I don't know how to use Oracle under Windows XP. Setup Linux partitions on every box or I can't work&lt;/i&gt;. Today he's gone as far as saying (and even my anti-Windows colleagues (which are majority, by the way) have blushed hearing this) that &lt;i&gt;the number of concurrent users to a shared network folder on Windows XP depends on the number of licenses purchased of that Windows&lt;/i&gt;. He hasn't even blushed. He also said that he imparted a course on which Windows XP deleted an Oracle's password file and they have to create it from scratch, time and time again. I swear to you I've been with different flavors of Windows for the last ten years and as far as I know the guys at Redmond have not discovered artificial intelligence: the computer or the OS don't delete files on their own, &lt;i&gt;de motu propio&lt;/i&gt;. And the guy just keeps talking: &lt;i&gt;if the database fails it's the fault of the user or Windows&lt;/i&gt;. Literally.&lt;br /&gt;&lt;br /&gt;But let's come back to Oracle, and just for the kick of it, let's say we believe my teacher and that Oracle don't works that good with Windows XP. And XP is to blame? A firm develops a software that, as far as I remember, doesn't state anywhere it is Linux specific or only for server flavors of Windows (if that was the case, why having client tools?). Then the software does not perform as expected, and the OS is to blame? That's like saying that the Packers can never win a game in Washington. The environment can affect the final result, granted, buty a winning team (and a really expensive one) should be able to work on every possible field. Just the same with software.&lt;br /&gt;&lt;br /&gt;And I'm afraid this guy is not alone in his opinions. I'm afraid that the vast majority of Linux advocates (which by default are Windows enemies, something I can't understand) areholding to the easy mantra of &lt;i&gt;since Windows is a piece of crap, this&lt;/i&gt; (change &lt;i&gt;this&lt;/i&gt; for anything) &lt;i&gt;does not perform as expected&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;And just now it's been discovered &lt;a href="http://forums.mozillazine.org/viewtopic.php?t=64341"&gt;spyware in Firefox&lt;/a&gt;. And vulnerabilities in JVM. &lt;br /&gt;&lt;br /&gt;Looks like, after all, &lt;b&gt;nobody's perfect&lt;/b&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110172785189032669?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110172785189032669/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110172785189032669' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110172785189032669'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110172785189032669'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/its-so-easy.html' title='It&apos;s so easy'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110079263542941709</id><published>2004-11-18T15:43:00.000Z</published><updated>2004-11-18T15:43:55.430Z</updated><title type='text'>Sorry, world!</title><content type='html'>From November 2 onward, programming books made in the US of A should replace the &amp;uuml;berfamous string &lt;b&gt;&lt;i&gt;&amp;quot;Hello, world!&amp;quot;&lt;/i&gt;&lt;/b&gt; for &lt;a href="http://www.sorryeverybody.com/"&gt;&lt;b&gt;&lt;i&gt;&amp;quot;Sorry, world!&amp;quot;&lt;/i&gt;&lt;/b&gt;&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110079263542941709?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110079263542941709/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110079263542941709' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110079263542941709'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110079263542941709'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/sorry-world.html' title='Sorry, world!'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110072217974298741</id><published>2004-11-17T20:09:00.000Z</published><updated>2004-11-17T20:09:39.743Z</updated><title type='text'>I wanna buy this</title><content type='html'>&lt;a href="http://www.bose.com/controller?event=DTC_LINKS_TARGET_EVENT&amp;DTCLinkID=3049&amp;perfsourceid=k53698&amp;src=k53698"&gt;Arfs&lt;/a&gt;. I'm drooling.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110072217974298741?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110072217974298741/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110072217974298741' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110072217974298741'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110072217974298741'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/i-wanna-buy-this.html' title='I wanna buy this'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110071221260683072</id><published>2004-11-17T17:23:00.000Z</published><updated>2004-11-17T17:23:32.606Z</updated><title type='text'>Discrimination</title><content type='html'>What at first seemed like a simple trend is being confirmed as a naked fact: VB .NET programmers are paid &lt;a href="http://www.ftponline.com/vsm/2003_06/magazine/features/salarysurvey/page3.aspx"&gt;a 26% less&lt;/a&gt; than C# programmers, on average, on the United States. On the link I've referred you'll see a graphic called&lt;i&gt;C# gets the bick bucks&lt;/i&gt;, where you can see it clearer than crystal water. &lt;br /&gt;&lt;br /&gt;The usual focus over these two languages makes me quite mad. For example: you still see VB and C# as separate &lt;i&gt;course&lt;/i&gt; on tech seminars, courses, bookstores and so on. There are books published over a general .NET framework topic, but they publish it focused on C#, and then they &lt;i&gt;transform&lt;/i&gt; it to VB .NET, or the other way around. &lt;br /&gt;&lt;br /&gt;And beware, I don't believe this to be the publisher's nefarious plan for making more money: I believe they just do what they think the market is asking. Or, to say it clearly, this separating of contents is a clear indicator that bookstores, publishers and seminar-makers believe their customers are too stupid to realize a simple and fundamental truth: &lt;i&gt;the only thing that matters is the framework&lt;/i&gt;. Which language you use to handle that framework is less important.&lt;br /&gt;&lt;br /&gt;If you carefully compare any book about .NET application development either on VB or C#, you'll realize that at least 95% of the given information is identical between both languages. This is a radical change from Visual Studio 6, with that C++ programmers had MFC and ATL: two huge frameworks we VB6 programmers didn't need to know. Here, the framework is &lt;b&gt;one and the same&lt;/b&gt;: the differences are mainly syntactical.&lt;br /&gt;&lt;br /&gt;I started on this field as a VB6 programmer, and I've had to endure a &lt;b&gt;lot of shit&lt;/b&gt; along the years: it's a kiddie's language, all VB programmers are bad programmers, coding VB6 you'll never be &lt;i&gt;l33/&lt;/i&gt;, yadah yadah yadah puke!&lt;br /&gt;&lt;br /&gt;I've had this kind of stupid discrimination for years (as if using a simpler tool made you automatically more stupid), and now it seems it's &lt;b&gt;not over&lt;/b&gt;. Even though VB .NET is &lt;b&gt;not&lt;/b&gt; Visual Basic 7, even though VB .NET is completely and totally object oriented, even though VB .NET is every bit as good, fast and stable as C#,... even though all that, if you prefer VB .NET before C# you're stupid. Or incompetent. Or, simply, you just make less money.&lt;br /&gt;&lt;br /&gt;I learnt the little C# I know the same way I learnt the little VB .NET I know: on my own using books, playing with it at home and working with it at the office. Taking into account my VB6 programming origins, with more than 6 years of VB6 working expertise, which language do you I think I found &lt;b&gt;harder&lt;/b&gt; to learn?&lt;br /&gt;&lt;br /&gt;Visual Basic .NET. Hands down.&lt;br /&gt;&lt;br /&gt;It's syntax is dangerously similar to VB6, so in the beginning you think it's all the same but with more features. And no, it's not the same: you have to learn the framework and change your programming mind set to OOP. Just when you begin understanding this paradigm change, then it's when you start liking the language and the environment. Changing to C# after that is a &lt;b&gt;simple&lt;/b&gt; question of syntax, no more no less.&lt;br /&gt;&lt;br /&gt;For example, as I was learning VB .NET, I had a book with me at all times: &lt;a href="http://www.amazon.com/exec/obidos/tg/detail/-/0735620598/qid=1100711174/sr=1-2/ref=sr_1_2/104-0124451-7189515?v=glance&amp;s=books"&gt;Programming Microsoft Visual Basic .NET&lt;/a&gt;, by Francesco Balena. &lt;br /&gt;It is, hands down, the best and more exhaustive book I've read about .NET. And now, even though the vast majority of the code I write is in C#, it's &lt;b&gt;still&lt;/b&gt; my preferred tech book, and the one I use the most. Even though it's published for a language &lt;i&gt;apparently&lt;/i&gt; different.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110071221260683072?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110071221260683072/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110071221260683072' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110071221260683072'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110071221260683072'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/discrimination.html' title='Discrimination'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110070743618076345</id><published>2004-11-17T16:03:00.000Z</published><updated>2004-11-17T16:03:56.180Z</updated><title type='text'>Beware of what you wish...</title><content type='html'>... because it can get true. If being a videogame programmer implies &lt;a href="http://www.livejournal.com/users/ea_spouse/"&gt;this&lt;/a&gt;, I don't want to make it.&lt;br /&gt;&lt;br /&gt;Of course, we standard codecrunchers &lt;i&gt;also&lt;/i&gt; have crunchs and overtime, and ninety hour weeks; and on top of all that we have to endure the &lt;i&gt;l337&lt;/i&gt; people telling us how &lt;i&gt;mediocre&lt;/i&gt; we are. F*ck 'em!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110070743618076345?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110070743618076345/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110070743618076345' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110070743618076345'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110070743618076345'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/beware-of-what-you-wish.html' title='Beware of what you wish...'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110070618347005679</id><published>2004-11-17T15:43:00.000Z</published><updated>2004-11-17T15:43:03.470Z</updated><title type='text'>VB's daddy</title><content type='html'>Here you have the amazing true &lt;a href="http://www.cooper.com/alan/father_of_vb.html"&gt;story&lt;/a&gt; about &lt;b&gt;Visual Basic's&lt;/b&gt; inception, birth and first steps, told by the creature's own daddy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110070618347005679?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110070618347005679/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110070618347005679' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110070618347005679'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110070618347005679'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/vbs-daddy.html' title='VB&apos;s daddy'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110059312410306877</id><published>2004-11-16T08:18:00.000Z</published><updated>2004-11-16T08:18:44.103Z</updated><title type='text'>Do droids drink synthetic alcohol?</title><content type='html'>Check this out:&lt;br /&gt;&lt;a href="http://www.roboticslab.org/html/modules.php?name=Content&amp;pa=showpage&amp;pid=2"&gt;The Bar Bot&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;By God, there are people with &lt;b&gt;way too much&lt;/b&gt; free time on their hands...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110059312410306877?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110059312410306877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110059312410306877' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110059312410306877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110059312410306877'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/do-droids-drink-synthetic-alcohol.html' title='Do droids drink synthetic alcohol?'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110056397839091596</id><published>2004-11-16T01:12:00.000Z</published><updated>2004-11-16T08:14:46.643Z</updated><title type='text'>Silly tests</title><content type='html'>I don't usually like or do those silly tests so profuse over the Internet of late, but these made me laugh:&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;a href="http://www.bbspot.com/News/2004/10/extension_quiz.php"&gt;&lt;img src="http://www.bbspot.com/Images/News_Features/2004/10/file_extensions/doc.jpg" width="300" height="90" border="0" alt="You are .doc You change from year to year, just to make things tough on your competition.  Only your creator really has a handle on you."&gt;&lt;br&gt;Which File Extension are You?&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://bbspot.com/News/2003/01/os_quiz.php"&gt;&lt;img src="http://www.bbspot.com/Images/News_Features/2003/01/os_quiz/apple_dos.jpg" width="300" height="90" border="0" alt="You are Apple Dos. Simple and primitive with a good understanding of the common man.  You're still a work in progress, but a good start."&gt;&lt;br&gt;Which OS are You?&lt;/a&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;I gotta say I feel very &lt;b&gt;little&lt;/b&gt; identified with the results...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110056397839091596?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110056397839091596/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110056397839091596' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110056397839091596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110056397839091596'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/silly-tests.html' title='Silly tests'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110051523654794399</id><published>2004-11-15T10:40:00.000Z</published><updated>2004-11-15T11:00:57.093Z</updated><title type='text'>Longhorn news</title><content type='html'>Via &lt;a href="http://www.codeproject.com/script/rumor/article.asp?id=309"&gt;CodeProject&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Some interesting links about it:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/Longhorn/default.aspx"&gt;Longhorn Developer Center&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/presspass/default.asp"&gt;Microsoft PressPass&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110051523654794399?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110051523654794399/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110051523654794399' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110051523654794399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110051523654794399'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/longhorn-news.html' title='Longhorn news'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110051057184841878</id><published>2004-11-15T09:22:00.000Z</published><updated>2004-11-15T09:22:51.846Z</updated><title type='text'>Music Plasma</title><content type='html'>Thanks to my pal &lt;b&gt;N&amp;eacute;stor&lt;/b&gt;, I've found a website I didn't know: &lt;a href="http://www.musicplasma.com/"&gt;Music Plasma&lt;/a&gt;, a music &lt;i&gt;mapper&lt;/i&gt;. You enter a band or a singer and it loads a pretty map with its musical relationships. It has some strange things (from Evanescence to Pink on a single step, for example), but it's OK.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110051057184841878?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110051057184841878/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110051057184841878' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110051057184841878'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110051057184841878'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/music-plasma.html' title='Music Plasma'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-110008132081134545</id><published>2004-11-10T10:08:00.000Z</published><updated>2004-11-10T10:08:40.810Z</updated><title type='text'>New Firefox release</title><content type='html'>No, I haven't tested it &lt;b&gt;yet&lt;/b&gt;. Anyway, there's word saying that some extensions are not working properly with the new release. Just in case, &lt;a href="http://www.extensionsmirror.nl/"&gt;here&lt;/a&gt; there's a quite complete extensions site for Firefox, and on the site forums they explain which extensions still work, and which are not compatible with the browseer we're learning to love/hate. &lt;br /&gt;&lt;br /&gt;I've just installed the &lt;a href="http://patsis.freeunixhost.com/extxpi.html"&gt;Link Preview&lt;/a&gt;, a really cool extension: when you hover the mouse over a link it loads a thumbnail of the referred page. The thumbnails are from &lt;a href="http://www.alexa.com"&gt;Alexa&lt;/a&gt;, and it doesn't work with every link, of course: it mainly works with links to main pages.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-110008132081134545?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/110008132081134545/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=110008132081134545' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110008132081134545'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/110008132081134545'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/new-firefox-release.html' title='New Firefox release'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109990508443317599</id><published>2004-11-08T09:11:00.000Z</published><updated>2004-11-08T09:11:24.433Z</updated><title type='text'>Some .NET links</title><content type='html'>OK, I've not updated this for a few days. So waht? &lt;b&gt;Sue me&lt;/b&gt;. No, wait, for that you should actually &lt;b&gt;read me&lt;/b&gt; first.&lt;br /&gt;&lt;br /&gt;Anyway, just for the record:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogs.geekdojo.net/brian/archive/2004/09/09/3085.aspx"&gt;Cropper&lt;/a&gt;, by Brian Scott (a little utility for screen capture).&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.aisto.com/roeder/Frontier/"&gt;Reflector&lt;/a&gt;, by Lutz Roeder.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ultrapico.com"&gt;Expresso&lt;/a&gt;, for building and analysing regular expressions.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.sliver.com/dotnet/SnippetCompiler/"&gt;Snippet Compiler&lt;/a&gt; by Jeff Key. I &lt;b&gt;love&lt;/b&gt; this one: it's for compiling small chunks of code ww want to test without the burden of creating a new project only for them.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.nunit.org/download.html"&gt;NUnit&lt;/a&gt; - Test unit for .NET, just like JUnit.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://ndoc.sourceforge.net/"&gt;NDoc&lt;/a&gt; - Source code documentation generator for .NET, just like Java's XDoclet.&lt;br /&gt;&lt;br /&gt;And another blog reader: &lt;a href="http://www.sharpreader.com/"&gt;SharpReader&lt;/a&gt;, by Luke Hutteman.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109990508443317599?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109990508443317599/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109990508443317599' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109990508443317599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109990508443317599'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/11/some-net-links.html' title='Some .NET links'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109905275002826172</id><published>2004-10-29T13:25:00.000+01:00</published><updated>2004-10-29T13:25:50.026+01:00</updated><title type='text'>This is my clone</title><content type='html'>Strangely enough, &lt;a href="http://www.tshirthell.com/store/product.php?productid=28"&gt;my t-shirt&lt;/a&gt; has ended up being &lt;b&gt;prophetic&lt;/b&gt;: there's a clone of me. Watch this:&lt;br /&gt;&lt;center&gt;&lt;br /&gt;&lt;img src="http://blogs.ya.com/picacodigos/files/clon.jpg" alt="My clone" border="0" width="243" height="72"/&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;The guy is in an alternative band called &lt;i&gt;Iron and Wine&lt;/i&gt;, which I've never had the pleasure to listen to. This has been discovered by the &lt;i&gt;funny guys&lt;/i&gt; of my co-workers at &lt;a href="http://www.apple.com/itunes"&gt;ITunes&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109905275002826172?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109905275002826172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109905275002826172' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109905275002826172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109905275002826172'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/this-is-my-clone.html' title='This is my clone'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109905060468230517</id><published>2004-10-29T12:50:00.000+01:00</published><updated>2004-10-29T12:50:04.683+01:00</updated><title type='text'>Friday's silliness</title><content type='html'>&lt;i&gt;&lt;br /&gt;i don't care if monday's blue&lt;br /&gt;tuesday's grey and wednesday too&lt;br /&gt;thursday i don't care about you&lt;br /&gt;it's friday &lt;a href="http://www.alienware.com/product_detail_pages/Aurora/aurora_features.aspx?SysCode=PC-A51AURORA&amp;SubCode=SKU-DOOM3"&gt;i'm in love&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;monday you can fall apart&lt;br /&gt;tuesday wednesday break my heart&lt;br /&gt;thursday doesn't even start&lt;br /&gt;it's friday &lt;a href="http://www.nyc.gov"&gt;i'm in love&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;saturday wait&lt;br /&gt;and sunday always comes too late&lt;br /&gt;but friday never hesitate...&lt;br /&gt;&lt;br /&gt;i don't care if monday's black&lt;br /&gt;tuesday wednesday heart attack&lt;br /&gt;thursday never looking back&lt;br /&gt;it's friday &lt;a href="http://www2.warnerbros.com/babylon5/home.html"&gt;i'm in love&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;monday you can hold your head&lt;br /&gt;tuesday wednesday stay in bed&lt;br /&gt;or thursday watch the walls instead&lt;br /&gt;it's friday &lt;a href="http://msdn.microsoft.com/vcsharp/"&gt;i'm in love&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;saturday wait&lt;br /&gt;and sunday always comes too late&lt;br /&gt;but friday never hesitate...&lt;br /&gt;&lt;br /&gt;dressed up to the eyes&lt;br /&gt;it's a wonderful surprise&lt;br /&gt;to see your shoes and your spirits rise&lt;br /&gt;throwing out your frown&lt;br /&gt;and just smiling at the sound&lt;br /&gt;and as sleek as a shriek&lt;br /&gt;spinning round and round&lt;br /&gt;always take a big bite&lt;br /&gt;it's such a gorgeous sight&lt;br /&gt;to see you in the middle of the night&lt;br /&gt;you can never get enough&lt;br /&gt;enough of this stuff&lt;br /&gt;it's friday...&lt;br /&gt;&lt;b&gt;&lt;a href="http://www.branderoderick.com"&gt;I'M IN LOVE!!&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;Friday I'm in love&lt;/i&gt;, by &lt;i&gt;The Cure&lt;/i&gt;&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109905060468230517?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109905060468230517/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109905060468230517' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109905060468230517'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109905060468230517'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/fridays-silliness.html' title='Friday&apos;s silliness'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109897178866994934</id><published>2004-10-28T14:56:00.000+01:00</published><updated>2004-10-28T14:56:28.670+01:00</updated><title type='text'>Omea Reader</title><content type='html'>&lt;center&gt;&lt;a href="http://www.jetbrains.com/omea_reader/index.html"&gt;&lt;img src="http://blogs.ya.com/picacodigos/files/omeaReader.gif" alt="" border="0" width="199" height="93"/&gt;&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;You should download this news and XML syndication reader (and some more features) before it stops being &lt;b&gt;free&lt;/b&gt;, on its personal release. On the website they say the license key you get now (and until January 1st) is valid forever, so now it's the time to get one for free. It's &lt;b&gt;very&lt;/b&gt; good. Made with .NET, of course, and with a really clear, intuitive and yet powerful and complete interface.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109897178866994934?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109897178866994934/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109897178866994934' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109897178866994934'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109897178866994934'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/omea-reader.html' title='Omea Reader'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109888953824266346</id><published>2004-10-27T16:05:00.000+01:00</published><updated>2004-10-27T16:05:38.243+01:00</updated><title type='text'>Assembler with ASP .NET?!?!?!?!</title><content type='html'>Yep. Thanks to Dino Esposito's web (you have the link right there on the links section), I've found out that a .NET &lt;i&gt;&amp;uuml;bergeek&lt;/i&gt; has made possible to write assembler code and compile it to MSIL, so you can make ASP .NET web pages in assembler. D'uh!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.viksoe.dk/code/asmil.htm"&gt;&lt;b&gt;Amazing&lt;/b&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;If you look closely the URL, by the way, you'll see it's the same guy I've linked some posts ago about &lt;i&gt;GMail Virtual Drive&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;I'm completely out of words.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109888953824266346?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109888953824266346/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109888953824266346' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109888953824266346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109888953824266346'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/assembler-with-asp-net.html' title='Assembler with ASP .NET?!?!?!?!'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109861725505386424</id><published>2004-10-24T12:27:00.000+01:00</published><updated>2004-10-24T12:33:18.323+01:00</updated><title type='text'>Hardware problems</title><content type='html'>I recently bought a 3Com wireless router and a D-LINK DWL-G650+ PCMCIA WiFi card for my laptop. After installing and configuring a mini-network in my room (and I say &lt;i&gt;mini&lt;/i&gt; because right now my laptop is the only computer in the network) and making as sure as possible that no neighbour enters my network, I began testing and everything was okay. Internet working, mail working, instant messaging and chat programs working. But when I ran Azureus the problems started.&lt;br /&gt;&lt;br /&gt;Azureus is (IMHO) the best software for using BitTorrent's P2P network. It's done in Java, and despite that big handicap, it doesn't eat up too many system resources and has a very good graphic interface. Besides, it's one of the best clients when it comes to update the uploading and downloading statistics, which is a very important feature because some of the trackers I use ban the leechers without remorse.&lt;br /&gt;&lt;br /&gt;The problem was that whenever I ran Azureus the program got the &lt;i&gt;torrents&lt;/i&gt; I was downloading, connected with seeds and started downloading and uploading without the slightest problem. During five minutes, max. Five minutes or so after starting Azureus, my laptop was completely locked up. Frozen. The mouse was not moving, the keyboard not responding, no CTRL+ALT+DEL, no &lt;b&gt;nothing&lt;/b&gt;. Dead. And it did the same everytime I ran Azureus.&lt;br /&gt;&lt;br /&gt;OK, some software or hardware error &lt;i&gt;was afoot&lt;/i&gt;, and I had to find the culprit(s). Making a Sherlock detective work, I began to determine the suspects and to search for alibis:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Azureus&lt;/b&gt;.- The most obvious suspect was the P2P software I was using. I downloaded and installed another program for the BitTorrent P2P network, called BitComet, and after running it I saw it produced exactly the same results. Azureus was &lt;b&gt;innocent&lt;/b&gt;.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;BitTorrent&lt;/b&gt;.- Maybe the culprit was the very BitTorrent P2P network. Something on their protocols or whatever. I tested with eMule and WinMX, which are completely different programs for connecting with completely different networks, and the results were exactly the same. If no P2P network worked, that wasn't the problem. BitTorrent was &lt;b&gt;innocent&lt;/b&gt;.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Router&lt;/b&gt;.- Maybe the problem was with the router. I brought my laptop to my office, where we have a US Robotics WiFi router not generally in use, and I configured everything to connect thru it. Internet OK, email OK, Azureus crashing my computer after more or less five minutes of use. My 3Com router was &lt;b&gt;innocent&lt;/b&gt;.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;Firewall&lt;/b&gt;.- Maybe the built-in firewall was causing me trouble. Instead of trying finesse such as &lt;i&gt;port forwarding&lt;/i&gt;, I opted for a more &lt;i&gt;gordian&lt;/i&gt; approach of the situation: I &lt;b&gt;completely&lt;/b&gt; disabled my router's firewall. Again, the same results: the firewall was &lt;b&gt;innocent&lt;/b&gt;.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;b&gt;WiFi Card&lt;/b&gt;.- The card started to reveal itself as the main suspect. I asked a colleague to lend me a WiFi card from another company (a Conceptronics) and I installed it and configure it against my firm's router and, for my desperation, I got the same results: the D-Link WiFi card was &lt;b&gt;innocent&lt;/b&gt;.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;What can you do in an scenario where all suspects seemed innocent? Ask Google, of course. And after much looking and reading, I find this wonderful forum: &lt;a href="http://www.dslreports.com"&gt;Broadband Reports&lt;/a&gt;. Thanks to it I found out that the D-Link official drivers &lt;b&gt;suck&lt;/b&gt;, quite literally. After some more reading and some more tries, I downloaded and installed the &lt;b&gt;US Robotics&lt;/b&gt; drivers for my &lt;b&gt;D-Link&lt;/b&gt; card and now I'm a happy client of the BitTorrent community, again. Fucking amazing.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;IMPORTANT NOTE&lt;/b&gt;.- Not only the D-LINK drivers are &lt;b&gt;shit&lt;/b&gt;: their customer support &lt;b&gt;SUCKS&lt;/b&gt; too. I sent an email to their Spanish customer support some two weeks ago and I'm still waiting for a reply, even an automated reply stating they've received my mail and are processing my request. I called them the last week, every single day, at least three times a day. The &lt;b&gt;NEVER&lt;/b&gt; picked up the phone, not once. In more than fifteen calls, they were &lt;b&gt;always occupied&lt;/b&gt;. Amazing. Their US customer support at least has vital signs: I sent them an email stating my problem and I got a reply after &lt;i&gt;fifteen minutes&lt;/i&gt;, but sadly it was to tell me that my problem seemed quite complex and they couldn't solve it using mail (&lt;b&gt;?&lt;/b&gt;). I called them and the guy who got my call told me he couldn't help me, that I was a non-US customer so I was to be helped by my local customer support. I explained to him that my local customer support was dead or at a non-stop frat party and he told me he was very sorry, but that was the firm's policy. Anyway.&lt;br /&gt;&lt;br /&gt;As usual, if you want something done, do it yourself.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109861725505386424?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109861725505386424/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109861725505386424' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109861725505386424'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109861725505386424'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/i-recently-bought-3com-wireless-router.html' title='Hardware problems'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109844566939488491</id><published>2004-10-22T12:47:00.000+01:00</published><updated>2004-10-22T12:50:43.013+01:00</updated><title type='text'>Multi-threading in C#</title><content type='html'>A good tutorial about multi-thread programming in C#: &lt;a href="http://www.yoda.arachsys.com/csharp/threads/"&gt;Multi-Threading in C#&lt;/a&gt;, by Jon Skeet. In fact, all the tutorials from Jon's&lt;a href="http://www.yoda.arachsys.com/csharp/index.html"&gt;site&lt;/a&gt; are really good.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109844566939488491?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109844566939488491/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109844566939488491' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109844566939488491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109844566939488491'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/multi-threading-in-c.html' title='Multi-threading in C#'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109843775011797992</id><published>2004-10-22T10:35:00.000+01:00</published><updated>2004-10-22T10:35:50.116+01:00</updated><title type='text'>Eureka!!</title><content type='html'>Yesterday, after several attempts over the &lt;i&gt;years&lt;/i&gt; I finally did it, bwa-ha-ha-ha.&lt;br /&gt;&lt;br /&gt;Do you remember &lt;b&gt;Master of Orion&lt;/b&gt;?&lt;br /&gt;&lt;br /&gt;That game (IMNSHO the best space strategy game of all time), published by Microprose in 1993, has always been able to keep me awake at night much better than Coca-Cola, much better than coffe and much better than Jolt Cola. Fuck next-day's high-school, I was busy planning interstellar wars.&lt;br /&gt;&lt;br /&gt;The game had two sequels and a lot of imitators, neither of them remotely as funny.&lt;br /&gt;&lt;br /&gt;And since Windows is not a shell over MS-DOS I haven't been able to play &lt;b&gt;MoO&lt;/b&gt;. Until now.&lt;br /&gt;&lt;br /&gt;Steps for conquering the galaxy:&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Download the game for free (it's &lt;i&gt;abandonware&lt;/i&gt;) from &lt;a href="http://www.the-underdogs.org/game.php?gameid=688"&gt;Underdogs&lt;/a&gt;. In the same page you have a link for downloading the game's manual, you &lt;b&gt;have&lt;/b&gt; to download because the copy protection is in the manual. Don't forget.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;br /&gt;Next, download &lt;a href="http://dosbox.sourceforge.net/"&gt;DOSBox&lt;/a&gt;, a DOS emulator avaliable for a lot of operative systems.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;br /&gt;DOSBox has no GUI, so get this frontend: &lt;a href="http://members.home.nl/mabus"&gt;D-Fend&lt;/a&gt;. Besides,  Adem&amp;aacute;s, &lt;a href="http://dosbox.sourceforge.net/comp_list.php?showID=43&amp;letter=M&amp;search=orion"&gt;here&lt;/a&gt; you'll find some people's impressions about DOSBox and the game.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;Setting up the frontend and everything else is relatively simple, so I won't keep posting detailed instructions about how to do it,... unless you ask for it. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109843775011797992?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109843775011797992/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109843775011797992' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109843775011797992'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109843775011797992'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/eureka.html' title='Eureka!!'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109843156965267519</id><published>2004-10-22T08:52:00.000+01:00</published><updated>2004-10-22T08:52:49.653+01:00</updated><title type='text'>Mr. Postman</title><content type='html'>A short post, only to bring you the link that Carlos gave us yesterday, very useful for &lt;b&gt;GMail&lt;/b&gt;: &lt;a href="http://www.the13thfloor.org/mrpostman/"&gt;Mr. Postman&lt;/a&gt;. MrPostman is a Java-coded program, which emules a POP3 program on you local adress 127.0.0.1 for accesing to your GMail account. You have to have Mr. Postman running and then run your favourite email reader, &lt;i&gt;any&lt;/i&gt; email reader or so they promise. The link posted contains simple &lt;i&gt;for dummies&lt;/i&gt; instructions for installing and running it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109843156965267519?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109843156965267519/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109843156965267519' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109843156965267519'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109843156965267519'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/mr-postman.html' title='Mr. Postman'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109836752507160164</id><published>2004-10-21T15:05:00.000+01:00</published><updated>2004-10-21T15:05:25.073+01:00</updated><title type='text'>The Matrix Online</title><content type='html'>Yesterday I finally did it. I was thinking about it for some time now, about buying and playing a &lt;a href="http://en.wikipedia.org/wiki/MMORPG"&gt;MMORPG&lt;/a&gt; (or Massively Multiplayer Online Role-Playing Game), but there were some &lt;i&gt;cons&lt;/i&gt; that made me delay the decision.&lt;br /&gt;&lt;br /&gt;First I tell you what they are (just in case you don't know), and then I'll tell you the disadvantages, in my humble opinion. MMORPGs are computer role-playing games (like Diablo or Neverwinter Nights) but played exclusively online. I've never been a great fan of computer RPGs (I'm a more traditionally sort of role-player, I need paper, dice and above all &lt;b&gt;friends&lt;/b&gt; to play); but the online version of the computer RPGs supplies the missing &lt;i&gt;friends&lt;/i&gt; to the equation. In pure theory, I've never really played one, you keep accomplishing missions or quests while you're character keeps growing and developing, while you (the real you) makes some (virtual) friends and enemies. &lt;br /&gt;&lt;br /&gt;As we've seen, it adds a human component to computer RPGs; and it adds a &lt;i&gt;persistence&lt;/i&gt; value to online games (which games like &lt;i&gt;Counter Strike&lt;/i&gt;, for example, lack); another form of telling stories.&lt;br /&gt;&lt;br /&gt;There are &lt;i&gt;a lot&lt;/i&gt; of MMORPGs: &lt;i&gt;Star Wars Galaxies&lt;/i&gt; (with a new expansion for starships just out), &lt;i&gt;The Sims Online&lt;/i&gt; (with its added scandal), &lt;i&gt;Everquest&lt;/i&gt;, &lt;i&gt;Ultima Online&lt;/i&gt;, &lt;i&gt;World of Warcraft&lt;/i&gt;, etc.&lt;br /&gt;&lt;br /&gt;The reasons why I've never played before? Several: first and foremost, because in this damn country of ours, as usual, we &lt;b&gt;just&lt;/b&gt; don't get it. None of the aforementioned games are published in Spain. &lt;b&gt;None&lt;/b&gt;. And I just don't understand it, because both &lt;i&gt;The Sims&lt;/i&gt; and &lt;i&gt;Warcraft&lt;/i&gt;, have sold plenty in Spain. Not to talk about &lt;i&gt;anything&lt;/i&gt; sporting the Star Wars trademarks. But it seems that in this country of ours we feel satisfied having FIFAs and Pro Evolution Soccers.&lt;br /&gt;&lt;br /&gt;The second &lt;b&gt;but&lt;/b&gt; of these games is the price: logically, this games need an enormous hardware infrastructure, and they charge you for it. Besides paying the average price for a recently released game (around $60), 99% of them charge you a monthly cuota for playing.&lt;br /&gt;&lt;br /&gt;The third &lt;b&gt;but&lt;/b&gt; is time: the more you play, the more powerful your character becomes. People (like me) who has to work eight hours a day (that being lucky), not to take into account the three aditional commuting hours (again, being lucky); it all results in not having enough time to play and reach the power levels easily reached by other not-so-burdened people. And that's kinda frustrating.&lt;br /&gt;&lt;br /&gt;The fourth &lt;b&gt;but&lt;/b&gt; is the addiction factor: if besides having little free time left I spend it on this kind of games, I'm lost. I know this games are quite addictive: to the usual addiction factor of any (good) game you have to add the playing community, plus the competition factor. Way too much.&lt;br /&gt;&lt;br /&gt;Pros? In my case, &lt;b&gt;curiosity&lt;/b&gt;: I'm just dying to try one, what the heck.&lt;br /&gt;&lt;br /&gt;Just for finishing, 'cause this is taking too damn long: taking into careful consideration all thos &lt;i&gt;buts&lt;/i&gt; and the quite feeble excuse of a pro I have in mind, I drawed the Visa (damn thing) and I got a pre-order of &lt;a href="http://www.thematrixonline.com"&gt;The Matrix Online&lt;/a&gt;, a MMORPG on which, of course, I'll be able to emule Neo, Trinity and company being just the coolest killer with my virtual sunglasses and my virtual trenchcoat. The game is not yet published and EA keeps promising it's going to be published in Spain, but I'm not gonna wait and see if they're right: I've pre-ordered it and it'll arrive at home when it is published. I'll tell you about it, promised. &lt;br /&gt;&lt;br /&gt;As we've seen, curiosity killed the cat and mauled the Visa. Let's see if satisfaction brings the cat back. &lt;br /&gt;&lt;br /&gt;PS.- And it's a proven thing we won't play a decent MMORPG in this country until we do it ourselves: let's hope my arrogant upstairs neighbours, &lt;a href="http://www.pyrostudios.com"&gt;Pyro Studios&lt;/a&gt;, just get to it. &lt;b&gt;God&lt;/b&gt;, what a country.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109836752507160164?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109836752507160164/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109836752507160164' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109836752507160164'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109836752507160164'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/matrix-online.html' title='The Matrix Online'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109820067421188524</id><published>2004-10-18T16:38:00.000+01:00</published><updated>2004-10-19T16:44:34.213+01:00</updated><title type='text'>VB .NET PowerPack</title><content type='html'>I've always though that I had already blogged this set of utilities for .NET; but I needed the other day and I wasn't able to find them, so I guess I've dreamed about blogging them and finally I didn't. Anyway.&lt;br /&gt;&lt;br /&gt;In the end I've used Google (&lt;b&gt;d'oh!&lt;/b&gt;) and after some working dodging Amazon and ISBN references (there's a book by almost the same title) I found them. It's a &lt;a href="http://www.gotdotnet.com"&gt;GotDotNet&lt;/a&gt; &lt;i&gt;workspace&lt;/i&gt;, which comes to be the .NET equivalent to &lt;a href="http://www.sourceforge.net"&gt;SourceForge&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;The thing is that the &lt;a href="http://www.gotdotnet.com/workspaces/workspace.aspx?id=167542e0-e435-4585-ae4f-c111fe60ed58"&gt;VB PowerPack&lt;/a&gt; is a group of controls &lt;b&gt;REALLY&lt;/b&gt; useful, which I don't know why are not avaliable from .NET out-of-the-box (Folder and File viewers come to mind). This is the full list:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;BlendPanel Control&lt;/li&gt;&lt;br /&gt;&lt;li&gt;UtilityToolbar Control&lt;/li&gt;&lt;br /&gt;&lt;li&gt;ImageButton Control&lt;/li&gt;&lt;br /&gt;&lt;li&gt;NotificationWindow Control&lt;/li&gt;&lt;br /&gt;&lt;li&gt;TaskPane Control&lt;/li&gt;&lt;br /&gt;&lt;li&gt;FolderViewer and FileViewer Controls&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;And just in case, &lt;a href="http://msdn.microsoft.com/vbasic/default.aspx?pull=/library/en-us/dv_vstechart/html/vbpowerpack.asp"&gt;here&lt;/a&gt; you have a quite complete MSDN white paper explaining them.&lt;br /&gt;&lt;br /&gt;Enjoy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109820067421188524?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109820067421188524/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109820067421188524' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109820067421188524'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109820067421188524'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/vb-net-powerpack.html' title='VB .NET PowerPack'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109819975375008894</id><published>2004-10-15T16:24:00.000+01:00</published><updated>2004-10-19T16:32:45.596+01:00</updated><title type='text'>More about GMail...</title><content type='html'>... and we found this: &lt;a href="http://www.viksoe.dk/code/gmail.htm"&gt;GMail Drive&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It's a shell extension (for those of you who don't know, it's a little piece of code that aggregates itself to Windows OS, in this case the File Explorer), and its function is to &lt;i&gt;transform&lt;/i&gt; your GMail account on a 1,000 Mbs virtual drive. Logically, we'll have to have the shell extension installed and running on every machine from which we want to enter our Google &lt;i&gt;hard drive&lt;/i&gt;.&lt;br /&gt; &lt;br /&gt;Esentially it sends an email to our GMail account with the file(s) we want to copy or move there as an attachment. &lt;br /&gt;&lt;br /&gt;Thanks to this little (in size) program we've found another interesting blog: &lt;a href="http://www.aimlesswords.com/"&gt;Aimless Words&lt;/a&gt;, dedicated entirely to GMail.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109819975375008894?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109819975375008894/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109819975375008894' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109819975375008894'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109819975375008894'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/more-about-gmail.html' title='More about GMail...'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109819943961452874</id><published>2004-10-14T16:19:00.000+01:00</published><updated>2004-10-19T16:31:31.080+01:00</updated><title type='text'>GMail</title><content type='html'>&lt;b&gt;At last&lt;/b&gt;, I &lt;b&gt;finally&lt;/b&gt; got my GMail account. I've been surfing the web searching for some interesting tools and tips for it, and I've found a good deal of them, from a new mail notifier (but finally I've installed the GMail notifier the same Google offers on the web-page, as it strikes me as the best) up to some Firefox plugins. No, I'm not gonna publish links for those things here, you &lt;b&gt;terminally-lazy&lt;/b&gt; people: a search for "GMail tools" on Google and you'll get a ton of results.&lt;br /&gt;&lt;br /&gt;Much more interesting is this link: a GMail API for accesing GMail capabilities and program you own applications. &lt;a href="http://johnvey.com/features/gmailapi/"&gt;Here&lt;/a&gt; you are.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109819943961452874?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109819943961452874/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109819943961452874' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109819943961452874'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109819943961452874'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/gmail.html' title='GMail'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109718966449667868</id><published>2004-10-07T23:54:00.000+01:00</published><updated>2004-10-07T23:54:24.496+01:00</updated><title type='text'>Bloggar</title><content type='html'>OK, so maybe I'm not inventing the wheel here, but I just wanted you to know I'm posting this using &lt;a href="http://www.wbloggar.com/"&gt;w.bloggar&lt;/a&gt;, a nifty program. Quite simple to use, quite a friendly interface and quite fast in retrieving and writing new comments.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109718966449667868?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109718966449667868/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109718966449667868' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109718966449667868'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109718966449667868'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/bloggar.html' title='Bloggar'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109709597220835715</id><published>2004-10-06T21:49:00.000+01:00</published><updated>2004-10-06T21:52:52.206+01:00</updated><title type='text'>Googledorks</title><content type='html'>Impressive. I can't think of another way of defining some people's idiocy level. Please take a look here: &lt;a href="http://johnny.ihackstuff.com/index.php?module=prodreviews"&gt;johnny.ihackstuff.com&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Yes, it is what it says: the &lt;b&gt;Google Hacking Database&lt;/b&gt;, or how to hack web sites, or finding PDF or DOC files full of sensible for-your-eyes-only commercial information, o database connection strings and/or parameters, or access to external devices connected to the Internet, or vulnerable servers,... all of them found thanks to Google's searching power and the sheer idiocy of those system's administrators, truth to be told.&lt;br /&gt;&lt;br /&gt;My God.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109709597220835715?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109709597220835715/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109709597220835715' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109709597220835715'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109709597220835715'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/googledorks.html' title='Googledorks'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109709571149243439</id><published>2004-10-04T21:30:00.000+01:00</published><updated>2004-10-06T21:48:56.696+01:00</updated><title type='text'>IDEs</title><content type='html'>As you all should know by now, &lt;b&gt;IDE&lt;/b&gt; is an acronym meaning Integrated Development Environment. Visual Studio's IDE is an IDE RAD too, which means is an Integrated Development Environment for Rapid Application Development. Jeez, I wonder why americans love acronyms &lt;a href="http://www.acronymfinder.com/"&gt;so much&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Let's focus. I firmly believe that the best IDE I've ever layed my mouse on is Visual Studio from Microsoft. Even the one shipped with VS 6 (just before .NET,... and don't tell me you don't remember, it isn't &lt;i&gt;that&lt;/i&gt; old) was spectacularly good, but with the arrival of .NET the environment was on the up and up. And the next one, 2005, it's going to be amazing. Then again, if you don't believe me you can use an scientific approach on this one: download for free the Express versions of your .NET language of choice and see for yourself.&lt;br /&gt;&lt;br /&gt;To be honest, the best Java IDE I've tasted (and although I'm a simple beginner with the language I've tasted a lot of them, maybe compelled by the wishful thinking of finding something remotely similar to the IDE I'm forced to leave); only &lt;b&gt;one&lt;/b&gt; gets somewhere near .NET in terms of usability, interface and everything else. And no, it's not precisely Eclipse.&lt;br /&gt;&lt;br /&gt;I have to thank &lt;a href="http://www.eclipse.org"&gt;Eclipse&lt;/a&gt; for the easiness to install and configure plugins. and that's it. Being made with Java, and being multi-platform is &lt;i&gt;slooooow&lt;/i&gt;: you'll bore to the verge to tears just waiting for it to open. And try writing some stuff on it and wait for its version of Intellisense to appear: you'll grow a beard. It has a ton of configuration options, each and everyone of them equally confusing, disordered and sometimes I suspect, random.&lt;br /&gt;&lt;br /&gt;At least you got to thank the developers the effort of making the IDE ignoring the AWT and using a platform-specific Swing, so at least Eclipse is not as hideously ugly as NetBeans (Eclipse is lightning quick compared to &lt;i&gt;this&lt;/i&gt;, by the way), JBuilder or BlueJ.&lt;br /&gt;&lt;br /&gt;My favourite Java IDE is &lt;a href="http://www.jetbrains.com/idea/"&gt;IntelliJ Idea&lt;/a&gt;, &lt;br /&gt;which is really, really good. It's a drag having to configure it after installing, and stating where do you have all the Java libraries and so on,... but that's not a fault of the IDE, that's a Java fault. It's equivalent to Intellisense is quick, intuitive, plenty of information; its online help is quite good, its configuration panels are &lt;i&gt;understandable&lt;/i&gt; (and they aren't hideously ugly),... All in all, a very, very good IDE. In other words, the next best thing to .NET IDE on Java I've been able to find. &lt;br /&gt;&lt;br /&gt;It has only a &lt;i&gt;little&lt;/i&gt; problem: it costs $500.&lt;br /&gt;&lt;br /&gt;Maybe all the good thing sin this life cost money, even when you're Thinking in Java.&lt;br /&gt;&lt;br /&gt;Oh, no!! Not everything: C# Express is &lt;b&gt;totally free&lt;/b&gt;. Gratis.&lt;br /&gt;&lt;br /&gt;Ironic, ain't it?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109709571149243439?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109709571149243439/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109709571149243439' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109709571149243439'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109709571149243439'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/10/ides.html' title='IDEs'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109709453970144399</id><published>2004-09-29T21:25:00.000+01:00</published><updated>2004-10-06T21:30:16.903+01:00</updated><title type='text'>Generics in C#</title><content type='html'>This is reportedly the most exciting new feature in C# 2.0. Just for starters, take this &lt;a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnvs05/html/csharp_generics.asp"&gt;MSDN white paper&lt;/a&gt; as an introduction.&lt;br /&gt;&lt;br /&gt;Of course, take it with precaution and two aspirins. It's not easy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109709453970144399?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109709453970144399/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109709453970144399' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109709453970144399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109709453970144399'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/09/generics-in-c.html' title='Generics in C#'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109519270668731633</id><published>2004-09-14T21:08:00.000+01:00</published><updated>2004-09-14T21:11:46.686+01:00</updated><title type='text'>Barcelona</title><content type='html'>It's been almost a complete &lt;b&gt;disaster&lt;/b&gt;. Everything, absolutely everything that could gone wrong has gone &lt;b&gt;worst&lt;/b&gt;. I've worked like a mule and it wasn't enough, I'll have to do as McArthur and come back. That's life.&lt;br /&gt;&lt;br /&gt;On a lighter note, just the other day I was browsing the net and found a website that I thought would be perfect for posting here. Today that website has saved my butt. Save it on your Favorites folder, and remember it, cause it's a very, very good site for a quick reminder: &lt;a href="http://www.connectionstrings.com"&gt;ConnectionStrings&lt;/a&gt;.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109519270668731633?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109519270668731633/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109519270668731633' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109519270668731633'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109519270668731633'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/09/barcelona.html' title='Barcelona'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109510573885937022</id><published>2004-09-13T20:25:00.000+01:00</published><updated>2004-09-13T21:02:18.860+01:00</updated><title type='text'>Comfortable</title><content type='html'>I've had to go to an old client today. Ok, it's not exactly &lt;i&gt;ancient&lt;/i&gt;, I was on that client's offices from last March to last June; but taking into account the recent paradigm shift, my holidays and everything else it seemed to me like a thousand years had passed since I last set foot in their offices. &lt;br /&gt;&lt;br /&gt;And that was just my very first (and up to now only one, or at least the only &lt;i&gt;official&lt;/i&gt; (read &lt;b&gt;paid&lt;/b&gt;) one) project in C#. I had to go today to prepare the installation CD and to modify a migration routine, for the setup tomorrow on the final client at Barcelona. By the way, I don't believe I'll be able to post anything here tomorrow, cause I guess I'll be at &lt;i&gt;Barna City&lt;/i&gt; for the better part of the day.&lt;br /&gt;&lt;br /&gt;This post title comes about how &lt;b&gt;very comfortable&lt;/b&gt; I've felt today crunching C# code and handling VS 2003 IDE after almost two weeks of dealing nakedly with Java, Notepad and the command console. &lt;br /&gt;&lt;br /&gt;Ah! Glorious!&lt;br /&gt;&lt;br /&gt;That &lt;b&gt;CAPS+CTRL+B&lt;/b&gt; key combo for compiling, that &lt;b&gt;F5&lt;/b&gt; for running, that long and meaningful error messages, that step-by-step code debugging, and so on. Amazing.&lt;br /&gt;&lt;br /&gt;And I've just realized that, if I keep it this way, I should have to rename this blog: instead of &lt;b&gt;Codecruncher&lt;/b&gt; I should call myself &lt;b&gt;the old moaning lady&lt;/b&gt;. It's over. This is my very last post groaning about my luck.&lt;br /&gt;&lt;br /&gt;Of course, it won't be the last comparing C# with Java.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109510573885937022?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109510573885937022/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109510573885937022' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109510573885937022'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109510573885937022'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/09/comfortable.html' title='Comfortable'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109490185153956282</id><published>2004-09-11T21:25:00.000+01:00</published><updated>2004-09-11T12:24:11.540+01:00</updated><title type='text'>Good news</title><content type='html'>AS of right now, both versions of this blog are &lt;b&gt;up to date&lt;/b&gt;. So there are no more excuses for not posting, and let's hope that from now on I manage to keep a posting ratio of at least 4 posts a week. &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109490185153956282?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109490185153956282/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109490185153956282' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109490185153956282'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109490185153956282'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/09/good-news.html' title='Good news'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109490169146071378</id><published>2004-09-10T19:33:00.000+01:00</published><updated>2004-09-11T12:21:31.460+01:00</updated><title type='text'>I'm making myself a man...</title><content type='html'>... with hair on my chest. Well, in my chest, in my face and in &lt;i&gt;mine arse&lt;/i&gt;. &lt;br /&gt;&lt;br /&gt;It's been two (really, reeeeaaaally long) days (since I've told you that I refused to read that tutorial on Eclipse, Lomboz and JBOSS until I had trhe slightest idea of what I was doing); it's been two days learning Java &lt;b&gt;the hard way&lt;/b&gt;: crunching the code with EditPlus and compiling it on Window's command console. As I've said, I'm goint to grow hair in a lot of places. &lt;br /&gt;&lt;br /&gt;Because Java compiler is, and of course I wouldn't expect otherwise, just a little &lt;b&gt;cryptic&lt;/b&gt;. With concise, very concise error messages such as: &lt;i&gt;cannot resolve symbol&lt;/i&gt;, or &lt;i&gt;illegal start of expression&lt;/i&gt;. Of course, this is like Bryan Ferry's music: boring like hell but very &lt;b&gt;elegant&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;And all the time surfing the web and finding things like &lt;a href="http://www.linuxworld.com/story/44251.htm"&gt;this&lt;/a&gt; about how Java coders unnecessarily complicate &lt;b&gt;everything&lt;/b&gt;. &lt;br /&gt;&lt;br /&gt;The thing that bugs me the most about this paradigm change, the most bugging argument (at least in my particular case) is that my firm wants to use GNU technologies because they are free. OK, they are, point taken. &lt;b&gt;But&lt;/b&gt; up to the extent of my knowledge, Microsoft .NET Framework is completely free. Not a cent of a euro. Of course you can reply me that let's see who's the tough guy that codes a complete .NET Windows forms application using Notepad and the Frameworks compiler (more or less the thing I'm doing with Java, what the heck). But I could reply you that if you want some IDE and not paying a cent, you can always download &lt;a href="http://www.asp.net"&gt;WebMatrix&lt;/a&gt; for developing Web forms applications or any of the several editions of &lt;a href="http://lab.msdn.microsoft.com/express/"&gt;Express&lt;/a&gt; for developing Windows Forms. Not a cent charged. And that only from Microsoft, Im not counting third party initiatives such as &lt;a href="http://www.go-mono.com"&gt;Mono&lt;/a&gt; or Borland's &lt;a href="http://www.borland.com/csharpbuilder/"&gt;C# Builder&lt;/a&gt;. And excuse all you hardcore Java users, but being all of them free C# Express IDE is &lt;b&gt;so much better&lt;/b&gt; than Eclipse and NetBeans, both of them at the same time. &lt;br /&gt;&lt;br /&gt;So I guess I'm doing this migration because I have no other option and because knowing another programming language will be good for me in the long run (as soon as I manage to not forget the things I already know); but in my humble opinion this is a step back just when things are getting really interesting.&lt;br /&gt;&lt;br /&gt;And you don't have the slightest idea how angry this makes me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109490169146071378?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109490169146071378/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109490169146071378' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109490169146071378'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109490169146071378'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/09/im-making-myself-man.html' title='I&apos;m making myself a man...'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109490047758921620</id><published>2004-09-08T18:03:00.000+01:00</published><updated>2004-09-11T12:01:17.590+01:00</updated><title type='text'>Cursing in Java</title><content type='html'>Still alive, although up to &lt;i&gt;here&lt;/i&gt; with the paradigm change: Java is a &lt;b&gt;jungle&lt;/b&gt;!! This last three days I've read more websites, downloading books (legal and free, uh?) and generally soaking myself before starting to work with an specific IDE (and it seems that my firm uses &lt;a href="http://www.eclipse.org"&gt;Eclipse&lt;/a&gt;, with some plugins as &lt;a href="http://www.objectlearn.com"&gt;Lomboz&lt;/a&gt;, and the application server &lt;a href="http://www.jboss.org"&gt;JBOSS&lt;/a&gt;). There's a very good tutorial on using these &lt;a href="http://www.tusc.com.au/tutorial/html/"&gt;here&lt;/a&gt; and &lt;a href="http://www.programacion.com/java/tutorial/jap_aplic_jboss/"&gt;&lt;i&gt;aqui&lt;/i&gt;&lt;/a&gt;. But frankly, I don't think I could start right away programming a &lt;i&gt;Bean&lt;/i&gt; using Eclipse and Lomboz and the rest of the circus: you can't start building a house by the ceiling, no matter the hurry you are in.&lt;br /&gt;&lt;br /&gt;That's why I've decided to learn directly from the best, and I've bought via Amazon this book: &lt;a href="http://www.amazon.com/exec/obidos/tg/detail/-/0131002872/qid=1094630071/sr=8-1/ref=pd_ka_1/103-3573646-9104655?v=glance&amp;s=books&amp;n=507846"&gt;Thinking in Java, 3rd Edition&lt;/a&gt;. Yeah, I know that this book (among others) is avaliable &lt;i&gt;totally for free&lt;/i&gt; &lt;a href="http://64.78.49.204/"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;But even knowing that, and that I'm already reading it on its electronic edition for the last two days, I've spent some $68 on buying it. I still prefer good old paper. But check this out: the book is around $32, I don't remember exactly, and I've payed some $36 &lt;i&gt;only in UPS&lt;/i&gt;, because I've asked for the option of a courier service instead of normal postal service: I made my order yesterday (Sept. 7) and I'll get the book tomorrow, the 9th. I've already received a phone call from the courier offices in Spain to confirm it, in fact. &lt;br /&gt;&lt;br /&gt;And I haven't asked for this kind of delivery because I'm in so much hurry to get the book (I'm not), or because I have my boss hitting my back with a whip for making me learn faster (I haven't). The thing is that the book price plus the courier service is &lt;i&gt;still cheaper&lt;/i&gt; than the cost of an IT book some 1200+ pages on any Spanish bookstore; and that without taking into account that 3rd edition it's still unpublished here, to the extent of my knowledge. So I've made my calculations and I've afford the cockiness.&lt;br /&gt;&lt;br /&gt;Plus, it seems that the guys at Sun are giving the finishing touches of the new version of the JDK (1.5), which comes to mean that a new version of the language is coming, which comes to mean that Eckel is finishing the 4th edition of his book. &lt;i&gt;Ergo&lt;/i&gt;, as the Architect would say, I've bought a little obsolete book.&lt;br /&gt;&lt;br /&gt;On a completely different note (and technology), I was surfing and snorkeling around the web soaking myself in Java and I get this: &lt;a href="http://blogs.msdn.com/rick_schaut/archive/2004/05/19/135315.aspx"&gt;Anatomy of a software bug&lt;/a&gt;. It's an amazing post on Rick Schaut's blog, about how difficult it is to maintain some software projects, by giving us an insider point of view on MS Word's development. Really, &lt;b&gt;really&lt;/b&gt; interesting.&lt;br /&gt;&lt;br /&gt;Keep on reading.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109490047758921620?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109490047758921620/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109490047758921620' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109490047758921620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109490047758921620'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/09/cursing-in-java.html' title='Cursing in Java'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109489901106346472</id><published>2004-08-28T03:47:00.000+01:00</published><updated>2004-09-11T11:36:51.063+01:00</updated><title type='text'>I'm back</title><content type='html'>... one step at a time. I've just landed at home after a holiday week at Lanzarote, and after reviewing some 300+ emails I'm ready to continue.&lt;br /&gt;&lt;br /&gt;The planning includes to use this week (I'm still on holiday) to work for my new RaC customer: the upgrading of an old project to .NET that I've already posted. I've been able to start it at Lanzarote (yes, I'm a &lt;i&gt;&lt;a href="http://en.wikipedia.org/wiki/Workaholic"&gt;workaholic&lt;/a&gt;&lt;/i&gt;, so what?) but I'll have to step on the gas if I want to have it finished by September 15. It's almost a sure thing that I'll need more time than that, as usual, but this client seems understanding and not in a hurry.&lt;br /&gt;&lt;br /&gt;Some pictures:&lt;br /&gt;&lt;img src="http://blogs.ya.com/picacodigos/files/l02.jpg" border="0" alt="Playa Blanca, Lanzarote" width="300"/&gt;&lt;br /&gt;&lt;br /&gt;The wonderful Playa Blanca (&lt;i&gt;White Beach&lt;/i&gt;), at Lanzarote. Someday I'll come back, for sure. And in better company, that's for sure too.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://blogs.ya.com/picacodigos/files/l01.jpg" border="0" alt="Return code 0"/&gt;&lt;br /&gt;&lt;br /&gt;This is me, &lt;i&gt;enjoying&lt;/i&gt; (I'm not exactly thrilled by alcohol) a Tequila Sunrise.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109489901106346472?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109489901106346472/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109489901106346472' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109489901106346472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109489901106346472'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/08/im-back.html' title='I&apos;m back'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109489855147768347</id><published>2004-08-10T07:27:00.000+01:00</published><updated>2004-09-11T11:29:11.476+01:00</updated><title type='text'>Cheated</title><content type='html'>Oh, yeah. My worst fears have come true and that sucker Bryan (my &lt;a href="http://www.rentacoder.com"&gt;RaC&lt;/a&gt; customer gets away and is not going to pay me the pittance of $250 for a complete, full web application he's got; and the net result is that he gets the complete package for a lousy sum of $75. Of course, I only had left the negative rating I've endorsed him on RaC's rating system, so next coders working for him know what to expect from this low-life no-paying scum. Let me copypaste, 'cause I don't wanna keep thinking about this. This is the rating I've posted for him on RaC which sort of comprises the whole story:&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;br /&gt;This buyer has, quite simply, deceived me. My initial bid for him was $150, but he told me it was too high. I told him that I really wanted to do the job and that I was willing to make a bid of $75, but that he was going to give me an aditional $75 bonus when the web application was up, running and giving him some money. My fatal mistake was to propose this via a MSN chat, instead of Rent a Coder's bidding system. &lt;br /&gt;After that, he made a lot of modifications to the interface design, database design, and what the application can do: from a simple candle selling website it became a full-fledged application with email sending capability, rich text editing, users handling, database and content manipulation and so on. &lt;br /&gt;After all that modifications were done or in the works (not before making it, I'm that dumb) I asked him for an aditional $100, to make the total $250. He didn't reply anything, so I thought it was okay with him. I finished the application, uploaded and set it on his server, gave him the source code and helped him with a configuration problem on his computer. And then I waited for him to accept the work as 100% complete, to no avail. I waited for a month. &lt;br /&gt;On another previous project, this guy put me a '1' rating because he couldn't contact me for a week. In this very project, this guy started an arbitration because I told him that I was moving to another country because of work and maybe it was impossible for me to finish it, after all it was only 98% completed. And he put this in arbitration a whole day after I told him the news. Really patient. &lt;br /&gt;And after a month of waiting for him to accept the project (and after seeing him evade me on MSN, and knowing he was logging to RaC and attending other bids except mine), I can't stand it anymore and I put it on arbitration. His response? to accept the work as 100% complete and pay me... my initial bid of $75. When I remind him of our arrangement, he doesn't even take the time to reply me. So this guy now has a full-fledged, complete and working web application for the money I spent in cigarettes last week. &lt;br /&gt;Yes, it's my fault and I've learned my lesson. Learn from my experience, guys, and never, ever make an arrangement with any customer (it doesn't matter how well you think you know them) outside RaC's site. If you do and things go wrong, it's their word against yours, and RaC's facilitators and arbitrators cannot do anything about it. It's that simple.&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Son of a bitch&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;By the way, excuse my &lt;/i&gt;french&lt;/i&gt;, folks; but I'm really, really angry. It won't happen again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109489855147768347?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109489855147768347/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109489855147768347' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109489855147768347'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109489855147768347'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/08/cheated.html' title='Cheated'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109483916695206303</id><published>2004-08-09T19:42:00.000+01:00</published><updated>2004-09-10T19:02:49.586+01:00</updated><title type='text'>Towards a new paradigm?</title><content type='html'>Today I've been grabbed by my technical director and I've had a meeting with him, like that, very early on a Monday morning and without previous notice.&lt;br /&gt;&lt;br /&gt;The thing is that he hasn't see me working before (I've always been working on our client's offices), but he says he likes my working style, my way of investigating and developing, that I'm &lt;a href="http://en.wikipedia.org/wiki/Proactive"&gt; proactive&lt;/a&gt;, which comes to mean that I work like a &lt;i&gt;mule&lt;/i&gt;, but saying it nicely. And I guess that's what firms want nowadays: a guy eager to work on working hours, out of working hours, on weekends, even slept. Jeez. &lt;i&gt;Proactive&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;The thing is that what I've been offered it's not bad: I'm out of the &lt;i&gt;rooster&lt;/i&gt; of programmers avaliable to work on client's offices and I begin to be part of the in-house development team for internal and external projects, whithout leaving the office.&lt;br /&gt;&lt;br /&gt;Doing what? Well, if there's some new .NET project, I'll do that. If there isn't (and that's the trend now, trend that I simply don't understand), I have to migrate to Java. Yuck. &lt;br /&gt;&lt;br /&gt;Right now I'm only thinking on my future holidays (next friday, here I come!) and by September, when I'm back, I'll start again being a &lt;i&gt;junior&lt;/i&gt; programmer, learning Java all by myself. No way they'll pay me some classes, no, it's cheaper (for them) that I'm the one doing the study via internet tutorials, practices, books (that I have to buy from my own money, of course) and banging my head against my desk in frustation every once in a while. Spanish version of IT learning. Nice, uh?&lt;br /&gt;&lt;br /&gt;And I better learn quick, because I'm already enrolled in a team which has to develop an 8-month Java application, using a lot of things that right now sound like Chinese babbling to me. &lt;br /&gt;&lt;br /&gt;I'll try to continue this blog focus on .NET. But don't be frightened if every once in a while I start talking crap like packages instead of namespaces, being unable of multiple inheritance, the complete exercise in &lt;b&gt;frustation&lt;/b&gt; that is trying to debug anything on Eclipse, and so on.&lt;br /&gt;&lt;br /&gt;Oh, my.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109483916695206303?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109483916695206303/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109483916695206303' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109483916695206303'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109483916695206303'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/08/towards-new-paradigm.html' title='Towards a new paradigm?'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109483821378717453</id><published>2004-08-06T22:22:00.000+01:00</published><updated>2004-09-10T18:43:33.786+01:00</updated><title type='text'>VS 2005 Express Betas</title><content type='html'>&lt;a href="http://lab.msdn.microsoft.com/express/default.aspx"&gt;Here&lt;/a&gt; you can download the Beta &lt;i&gt;Express&lt;/i&gt; versions of the several languages of next edition's Visual Studio, .NET 2005. According to Alex Yakhnin on his &lt;a href="http://blog.opennetcf.org/ayakhnin/PermaLink.aspx?guid=3afb318f-9efe-4e3c-9b02-f34362dfaea3"&gt;blog&lt;/a&gt;, Express IDEs could be completely free. That would be a move which could do Microsoft a lot of credit,... and give away a lot of &lt;i&gt;reasons&lt;/i&gt; from a lot of big-mouths.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109483821378717453?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109483821378717453/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109483821378717453' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109483821378717453'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109483821378717453'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/08/vs-2005-express-betas.html' title='VS 2005 Express Betas'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109483766282424673</id><published>2004-08-06T03:30:00.000+01:00</published><updated>2004-09-10T18:44:22.343+01:00</updated><title type='text'>Hangover</title><content type='html'>Well, today has been an interesting day at work. On one hand, although I still have a little &lt;i&gt;hangover&lt;/i&gt; because of yesterday's working excesses, I've &lt;i&gt;discovered&lt;/i&gt; something interesting and I've used a tool that until now I didn't have the opportunity (or the need) to use. Let me explain.&lt;br /&gt;&lt;br /&gt;The .NET CF program that our client wants requires that some functions are done after rotating the desktop: being a mobile application, some guy more intelligent than me thought during design time that it would be nice to be able to rotate the desktop so some screens had a different, sleeker design. Of course, doing this with a 21'' screen is complicated, but with a PDA is done with a simple wrist turn. The thing is that the manufacturer of our chosen PDAs (&lt;a href="http://www.gotive.com"&gt;Gotive&lt;/a&gt;) has kindly sent us (&lt;i&gt;and it's the least they could do, taking into account the price of each of the machines and the amount we've bought&lt;/i&gt;) their propietary SDK, a single DLL file with a CHM help file.&lt;br /&gt;&lt;br /&gt;Taking a look at the help file I realize that the DLL is little else that a &lt;a href="http://en.wikipedia.org/wiki/Wrapper"&gt;&lt;i&gt;wrapper&lt;/i&gt;&lt;/a&gt; for the API functions of Windows CE. A quite complete wrapper, because it includes functions to handle screen rotation, screen backlight, bar-code reading with the integrated reader, and so on. Of all those functions, I only wanted to use the one that changes the screen rotation and the one that returns the current screen rotation angle. How could I call only those functions and forget the rest of the wrapper functions? The answer: &lt;a hef="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cptools/html/cpconmsildisassemblerildasmexe.asp"&gt;ILDASM&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Microsoft's ILDASM is included with VS .NET 2003 (although I believe it was included also in the first version), and allows us to &lt;i&gt;de-compile&lt;/i&gt; an .EXE, .DLL, .OBJ or .LIB file created with any .NET language. Not so fast, kid. This is not going to give you the source code of &lt;i&gt;anything&lt;/i&gt;. What it does is extracting from a compiled file the intermediate language from Microsoft, or MSIL, and display it on screen or to a file.&lt;br /&gt;&lt;br /&gt;Let's do an example: this is an embarrassingly simple piece of code, which just writes on screen a "Hello, World!" string 5 times: &lt;br /&gt;&lt;br /&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System;&lt;br /&gt;&lt;span class="kwrd"&gt;namespace&lt;/span&gt; ILDASM_Test&lt;br /&gt;{&lt;br /&gt;    &lt;span class="kwrd"&gt;class&lt;/span&gt; HiBoring&lt;br /&gt;    {&lt;br /&gt;        [STAThread]&lt;br /&gt;        &lt;span class="kwrd"&gt;static void Main(string&lt;/span&gt;[] args)&lt;br /&gt;        {&lt;br /&gt;            &lt;span class="kwrd"&gt;for(int&lt;/span&gt; i=0; i&amp;lt;5; i++) &lt;br /&gt;            {&lt;br /&gt;                Console.Write(&lt;span class="str"&gt;"Hello, world!!\n"&lt;/span&gt;);&lt;br /&gt;            }&lt;br /&gt;            Console.Write(&lt;span class="str"&gt;"Press any key to finish\n"&lt;/span&gt;);&lt;br /&gt;            Console.ReadLine();&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;We build the solution for obtaining an .EXE file, in this case; and then we open the .NET console. We head for the folder where the .EXE resides and type &lt;i&gt;ildasm &amp;lt;file_name.exe&amp;gt;&lt;/i&gt; where &lt;i&gt;file_name&lt;/i&gt; should be the name of our compiled code. And we get the following window:&lt;br /&gt;&lt;table align="center" border="0"&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;&lt;td&gt;&lt;br /&gt;&lt;img src="http://blogs.ya.com/picacodigos/files/ildasm1.jpg"&gt;&lt;/img&gt;&lt;br /&gt;&lt;/td&gt;&lt;br /&gt;&lt;/tr&gt;&lt;br /&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;On it we can see how from an .EXE we have a namespace called &lt;b&gt;ILDASM_Test&lt;/b&gt;, which contains a class called &lt;b&gt;HiBoring&lt;/b&gt;, with a Main() method which is the one that interests us. If we double-click on the Main() method we get a window with the following code flush:&lt;br /&gt;&lt;br /&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;br /&gt;.method &lt;span class="kwrd"&gt;private hidebysig static void Main(string&lt;/span&gt;[] args) &lt;br /&gt;cil managed&lt;br /&gt;{&lt;br /&gt;  .entrypoint&lt;br /&gt;  .custom instance &lt;span class="kwrd"&gt;void&lt;/span&gt;&lt;br /&gt; [mscorlib]System.STAThreadAttribute::.ctor() = ( 01 00 00 00 ) &lt;br /&gt;  &lt;span class="rem"&gt;// Code size       39 (0x27)&lt;/span&gt;&lt;br /&gt;  .maxstack  2&lt;br /&gt;  .locals init ([0] int32 i)&lt;br /&gt;  IL_0000:  ldc.i4.0&lt;br /&gt;  IL_0001:  stloc.0&lt;br /&gt;  IL_0002:  br.s       IL_0012&lt;br /&gt;  IL_0004:  ldstr      &lt;span class="str"&gt;"Hello, world!!\n"&lt;/span&gt;&lt;br /&gt;  IL_0009:  call       &lt;span class="kwrd"&gt;void&lt;/span&gt; [mscorlib]System.Console::Write(&lt;span class="kwrd"&gt;string&lt;/span&gt;)&lt;br /&gt;  IL_000e:  ldloc.0&lt;br /&gt;  IL_000f:  ldc.i4.1&lt;br /&gt;  IL_0010:  add&lt;br /&gt;  IL_0011:  stloc.0&lt;br /&gt;  IL_0012:  ldloc.0&lt;br /&gt;  IL_0013:  ldc.i4.5&lt;br /&gt;  IL_0014:  blt.s      IL_0004&lt;br /&gt;  IL_0016:  ldstr      &lt;span class="str"&gt;"Press any key to finish\n"&lt;/span&gt;&lt;br /&gt;  IL_001b:  call       &lt;span class="kwrd"&gt;void&lt;/span&gt; [mscorlib]System.Console::Write(&lt;span class="kwrd"&gt;string&lt;/span&gt;)&lt;br /&gt;  IL_0020:  call       &lt;span class="kwrd"&gt;string&lt;/span&gt; [mscorlib]System.Console::ReadLine()&lt;br /&gt;  IL_0025:  pop&lt;br /&gt;  IL_0026:  ret&lt;br /&gt;} // end of method HiBoring::Main&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;As you can see is no crystal-clear code but you can find out interesting things.&lt;br /&gt;&lt;br /&gt;Well, after this mini-class about Microsoft de-compiler, let's get on with it. I opened the .DLL file containing the SDK for our PDA (remember?) and I double-clicked on the method &lt;b&gt;SetRotation()&lt;/b&gt; 'cause my intuition &lt;b&gt;;-)&lt;/b&gt; told me that that method may have something to do with the ability I want to invoke, which is rotating the desktop. And I find out on the MSIL code an obvious P/Invoke API calling to a function located in the DLL &lt;i&gt;lcdapi.dll&lt;/i&gt;. API which, by the way, is not documented and displays no Google results as of today. Luckily, its signature is quite simple, and the needed P/Invoke is like this:&lt;br /&gt;&lt;br /&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;br /&gt;[DllImport(&lt;span class="str"&gt;"lcdapi.dll"&lt;/span&gt;)]&lt;br /&gt;&lt;span class="kwrd"&gt;static extern bool&lt;/span&gt; GLCDSetRotation(&lt;span class="kwrd"&gt;int&lt;/span&gt; Degrees);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Very simple. And &lt;i&gt;voilá&lt;/i&gt;, thanks to this I've saved 52 Kbs of unnecessary DLL file, extracting just the function I need via the de-compiling of a manufacturer's DLL file which is just a wrapper. I've had some curious problems with the function (&lt;i&gt;and which function is problem free on .NET CF?&lt;/i&gt;), but I'll talk about that tomorrow, when it's solved. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Important note:&lt;/b&gt; this post, and the rest containing source code, look so pretty thanks to Jean-Claude Manoli and his amazing on-line tool for C# code formatting, the &lt;a href="http://www.manoli.net/csharpformat/format.aspx"&gt;c# code format&lt;/a&gt;. To each his due.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109483766282424673?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109483766282424673/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109483766282424673' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109483766282424673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109483766282424673'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/08/hangover.html' title='Hangover'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7916726.post-109294493814341327</id><published>2004-08-05T20:47:00.000+01:00</published><updated>2004-08-19T20:48:58.143+01:00</updated><title type='text'>Back in business</title><content type='html'>After some days with no posting, I'm back in business.&lt;br /&gt;&lt;br /&gt;The PDA project is almost (90%) finished, it's already working on the&lt;br /&gt;client and there are only some finishing touches pending. It's been&lt;br /&gt;hard. My schedule report this month is going to be &lt;i&gt;funny&lt;/i&gt;, to&lt;br /&gt;say the very least: last Monday I worked for &lt;b&gt;thirteen and a half&lt;br /&gt;hours&lt;/b&gt;, and on Tuesday the whole &lt;i&gt;enchilada&lt;/i&gt;, &lt;b&gt;24 hours&lt;/b&gt;.&lt;br /&gt;In real time too, no ellipses; just like&lt;br /&gt;&lt;a href="http://www.imdb.com/title/tt0285331/"&gt;in the TV&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Of course, and as a &lt;i&gt;compensation&lt;/i&gt;, I didn't work yesterday:&lt;br /&gt;after all I believe I wouldn't be of much use snoring loudly over my&lt;br /&gt;keyboard, or walking aimlessly like a zombie.&lt;br /&gt;&lt;br /&gt;Anyway, I can now face this project with a much more easy pace: the client&lt;br /&gt;has already &lt;i&gt;some&lt;/i&gt; soft (and hard, we also provide them with the&lt;br /&gt;&lt;a href="http://www.gotive.com/products/H41.htm"&gt;&lt;i&gt;combat&lt;/i&gt; PDAs&lt;/a&gt;); and&lt;br /&gt;they can begin testing and working with that. By the way, I've ended&lt;br /&gt;up feeling a certain love for the damned things. They're rugged, they&lt;br /&gt;have a big screen and their external keys can be very useful. But&lt;br /&gt;above all that, I feel &lt;i&gt;really grateful&lt;/i&gt; for their OS: Windows CE&lt;br /&gt;.NET, which means they have the Compact Framework already incorporated&lt;br /&gt;on the OS, which means installations &lt;b&gt;XCopy&lt;/b&gt; are allowed: you&lt;br /&gt;simply copy the executable file (along any non-CF DLL needed) on a&lt;br /&gt;destination folder on the PDA file system and done.&lt;br /&gt;&lt;br /&gt;I do keep a thorn on my side, though: the &lt;i&gt;login&lt;/i&gt; feature. After&lt;br /&gt;two whole frustrating weeks dedicated to it, without visible results;&lt;br /&gt;in the end the client comes telling us it's a &lt;i&gt;not-so-vital&lt;/i&gt;&lt;br /&gt;feature because, after all, every user is going to have his very own&lt;br /&gt;personal PDA, which means everone of them could store its personal&lt;br /&gt;information on the registry, along with login information and&lt;br /&gt;everything else. If I'd known this, I could have had more time for the&lt;br /&gt;rest of the features and it would have been a much more complete&lt;br /&gt;application. Apart from the failed login code, the more remarkable&lt;br /&gt;features of the applications are the P/Invoke routines for changing&lt;br /&gt;the screen orientation of the PDA, the code for loading application&lt;br /&gt;parameters from a XML file, and the buttons loaded: I had to create&lt;br /&gt;a custom button for this, because CF's current version don't allows&lt;br /&gt;color, font or any change to a button control in run-time. &lt;a&lt;br /&gt;href="http://www.paulyao.com"&gt;Mr. Paul Yao&lt;/a&gt; has told me that CF's&lt;br /&gt;next version will bring many upgraded features, among them a total&lt;br /&gt;control &lt;i&gt;face-lift&lt;/i&gt; and an upgrading of the P/Invoke procedures.&lt;br /&gt;&lt;br /&gt;And it was really necessary, this last one. P/Invoke, or &lt;i&gt;Platform&lt;br /&gt;Invoke&lt;/i&gt;, is the name given to the techniques used for handling&lt;br /&gt;&lt;i&gt;not managed&lt;/i&gt; code; or in other words calling the APIs. The same&lt;br /&gt;thing we've been doing a lot in Visual Basic 6, but more complicated.&lt;br /&gt;&lt;br /&gt;Generally, when you code a Windows desktop application (now called a&lt;br /&gt;WinForms application), you'll only use APIs for really strange and&lt;br /&gt;esoteric functions. In the other hand, with Compact Framework&lt;br /&gt;applications we'll soon discover that API invoking is needed to make&lt;br /&gt;almost everything. For example, if we need that our application to run&lt;br /&gt;others or processes: API. If we want our application to execute&lt;br /&gt;&lt;i&gt;always-on-top&lt;/i&gt;, that is always the first one in the z-order and&lt;br /&gt;not to be overlapped by any other application: API. If we want to&lt;br /&gt;destroy or end another application: API. And a long and painful list&lt;br /&gt;of much more examples.&lt;br /&gt;&lt;br /&gt;It has some logic, if you stop to think about it. There are a lot of&lt;br /&gt;features from the &lt;i&gt;normal&lt;/i&gt; Framework that are not included on the&lt;br /&gt;Compact Framework for a very simple reason: space. You cannot install&lt;br /&gt;the full-blown Framework on the tiny memory space a normal PDA has.&lt;br /&gt;Thus, programming features that are really easy to code with the&lt;br /&gt;Framework turns out to be a very complicated task with the Compact&lt;br /&gt;Framework, just because those Framework functions are not included.&lt;br /&gt;&lt;br /&gt;So it seems logical to think that .NET CF programmers are going to make a&lt;br /&gt;lot of API calling.&lt;br /&gt;&lt;br /&gt;So it seems logical to think that .NET CF programmers will be using&lt;br /&gt;P/Invoke much more that &lt;i&gt;normal&lt;/i&gt; .NET programmers.&lt;br /&gt;&lt;br /&gt;So it seems logical to port the whole P/Invoke classes from .NET&lt;br /&gt;Framework to the CF, or even upgrading them for the CF. After all,&lt;br /&gt;they're much more needed.&lt;br /&gt;&lt;br /&gt;No way.&lt;br /&gt;&lt;br /&gt;They are also diminished: they lack methods, structures and type&lt;br /&gt;conversions. And I frankly can't understand it: I don't believe they&lt;br /&gt;were going to eat up &lt;i&gt;that much&lt;/i&gt; space that its presence would&lt;br /&gt;make the final Compact Framework would be intolerable for PDAs. Its&lt;br /&gt;another of those difficult to understand design decisions from&lt;br /&gt;Microsoft. But anyway, I've been told by Paul Yao (and he's in the&lt;br /&gt;&lt;i&gt;backstage&lt;/i&gt; of all this) that P/Invoking capabilities are going&lt;br /&gt;to be complete (or, at least, much more improved) on the next version&lt;br /&gt;of Visual Studio .NET, &lt;a href="http://msdn.microsoft.com/vstudio/whidbey/default.aspx"&gt;2005&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;We'll see what the boys and girls at Microsoft understand for &lt;i&gt;much&lt;br /&gt;improved&lt;/i&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7916726-109294493814341327?l=codecruncher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codecruncher.blogspot.com/feeds/109294493814341327/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7916726&amp;postID=109294493814341327' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109294493814341327'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7916726/posts/default/109294493814341327'/><link rel='alternate' type='text/html' href='http://codecruncher.blogspot.com/2004/08/back-in-business.html' title='Back in business'/><author><name>CodeCruncher</name><uri>http://www.blogger.com/profile/11886030481922898478</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='22' src='http://blogs.ya.com/picacodigos/files/yo.jpg'/></author><thr:total>0</thr:total></entry></feed>
