<?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-7788396377703623641</id><updated>2011-04-21T21:35:33.814-03:00</updated><category term='linux'/><category term='libgnomedb'/><category term='SoC2007'/><category term='libgda'/><category term='travel'/><category term='manga'/><category term='Debian'/><category term='books'/><category term='upload'/><category term='bug-triage'/><category term='anime'/><category term='btsutils'/><category term='mergeant'/><category term='bugtaf'/><category term='bzutils'/><category term='computers'/><category term='work'/><category term='rant'/><title type='text'>Gustavo's Blog</title><subtitle type='html'>Welcome to my blog. This blog was created mainly to help track my progress in Google's &lt;a href="http://code.google.com/soc"&gt;Summer of Code&lt;/a&gt; 2007, on which I've started implementing the &lt;a href="http://code.google.com/soc/debian/appinfo.html?csaid=C730AABBE86B38D8"&gt;Bug Triage and Forward Tool&lt;/a&gt; for the &lt;a href="http://www.debian.org/"&gt;Debian Project&lt;/a&gt;. Currently I use it to write what I'm doing on free software projects or whatever is in my mind when I get some time/spirit to write.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>54</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-586555517909042926</id><published>2009-02-18T22:35:00.003-03:00</published><updated>2009-02-18T22:52:44.971-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='books'/><title type='text'>Book: Blood and Gold</title><content type='html'>&lt;p&gt;Blood and Gold is yet another book in &lt;a href="http://en.wikipedia.org/wiki/Anne_rice"&gt;Anne Rice&lt;/a&gt;'s &lt;a href="http://en.wikipedia.org/wiki/Vampire_Chronicles"&gt;Vampire Chronicles&lt;/a&gt;. There, an old vampire named Thorne wakes from his long sleep and is greeted by Marius, which tells his history: how he was transformed in a vampire, got the mission to protect the first vampires, his life in various places and ages, his loves, allies and enemies, etc.&lt;/p&gt;

&lt;p&gt;It did take some time for me to get immersed in this book. In the beginning, it seemed kind of slow/boring. However, as Marius history advances, some more interesting things start to happen, and by the middle of the book it starts to have the "what will happen next? guess I'll read just one more page" effect.&lt;/p&gt;

&lt;p&gt;As with &lt;a href="http://grmontesino.blogspot.com/2008/03/mennoch-devil.html"&gt;Mennoch the Devil&lt;/a&gt;, I believe the earlier titles of the series are more interesting. If you've read them and like Rice's works, then this one might be a very interesting reading.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;PS: Big thanks for the friend which lent me the book&lt;/i&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-586555517909042926?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/586555517909042926/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=586555517909042926' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/586555517909042926'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/586555517909042926'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2009/02/book-blood-and-gold.html' title='Book: Blood and Gold'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-173130252150508554</id><published>2009-02-15T08:36:00.000-03:00</published><updated>2009-02-15T08:36:50.326-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><title type='text'>Travel: Campos do Jordão</title><content type='html'>&lt;p&gt;I've been to Campos do Jordão, a well-know tourist city, to pass a small honeymoon (my weeding was at Nov 21st last year, which explains in part the lack of posts on this blog for some months :P). Some quick pointers about the city:&lt;/p&gt;

&lt;h4&gt;1. The Way&lt;/h4&gt;

&lt;p&gt;From Sao Paulo, take the Ayrton Senna Highway until the end (or the Dutra as an alternative). Follow the signalization and you'll end up on SP-123, which goes until the city's beautiful portal.&lt;/p&gt;

&lt;p&gt;The Ayrton Senna is a nice highway managed by the private sector. It's a large and well taken care of, which IMHO pays for the (somewhat expansive) toll road. Nevermind the fact I managed to have my windshield hit by an ~ 10cm wood plate that came from nowhere; somehow it got unscratched. Also it isn't any news, but some people don't drive as one should in a highway there.&lt;/p&gt;

&lt;p&gt;SP-123, by the other hand, is your typical government-managed road. One lane, few passing points, highly irregular paving. It goes up on the Serra da Mantiqueira, so it's also full of dangerous curves and can have fog. Drive carefully around there, respect the speed limits (specially if you don't know the region) and be aware of idiots.&lt;/p&gt;

&lt;h4&gt;2. The City&lt;/h4&gt;
&lt;ul&gt;
  &lt;li&gt;The architecture is beautiful&lt;/li&gt;
  &lt;li&gt;Cold, rainy climate. This can be really bad if you stay there only a few days, as the rain can keep you from doing some of the interesting things&lt;/li&gt;
  &lt;li&gt;The city has a main avenue with two small centers (comercial and touristic). Outside these centers the streets are mostly not paved and usually irregular.&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;3. Accomodations&lt;/h4&gt;

&lt;p&gt;There are a lot of places to stay (most, if not all of them, on the expansive side of the scale. It's a tourism-heavy city after all...). We've stayed in a place called &lt;a href="http://www.umailhanamontanha.com.br/"&gt;&lt;i&gt;Uma ilha na montanha&lt;/i&gt;&lt;/a&gt; (&lt;i&gt;An island in the mountain&lt;/i&gt;). It's an interesting, nice and quiet place if you don't mind staying away from the city's center, in a pretty remote location accessible only by scary non-paved roads which aren't on google maps (yet).&lt;/p&gt;

&lt;h4&gt;4. Some interesting places and stuff to do&lt;/h4&gt;
&lt;ul&gt;
  &lt;li&gt;Train trips to nearby cities, passing through the beautiful landscape views on the &lt;i&gt;Serra da Mantiqueira&lt;/i&gt;.&lt;/li&gt;
  &lt;li&gt;Lots of places to buy small souvenirs (I recommend the chocolate-flavored beverages).&lt;/li&gt;
  &lt;li&gt;Foundue rodizio (fixed price, each as much as you want foundue). It was my first time eating foundue, and I've liked it a lot. Restaurant Krokodilla, at Av. Senador Roberto Simonsem, 1350, Capivari. Just follow the signals for the &lt;i&gt;Ducha de Prata&lt;/i&gt; (something like &lt;i&gt;silver shower&lt;/i&gt;)&lt;/li&gt;
  &lt;li&gt;A cool Japanese restaurant (I just have to find one of these everywhere I go): Restaurant Kouguem, at Trav. Isola Orsi, 47, Capivari, near the train and tramway stations.&lt;/li&gt;
  &lt;li&gt;A well-known aerial tramway on which I unfortunately was unable to ride, thanks to the rain.&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;More Info&lt;/h4&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://www.camposdojordao.com.br/"&gt;http://www.camposdojordao.com.br&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-173130252150508554?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/173130252150508554/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=173130252150508554' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/173130252150508554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/173130252150508554'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2009/02/travel-campos-do-jordao.html' title='Travel: Campos do Jordão'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-1488236659802728710</id><published>2009-02-12T06:52:00.001-02:00</published><updated>2009-02-13T13:47:15.432-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><title type='text'>Friday 13th; Unix Time: 1234567890</title><content type='html'>&lt;p&gt;Tomorrow will be Friday 13th. To make this the coolest friday 13th ever, at 23:31:30 UTC (in São Paulo daylight savings time that would be 21:31:30), Unix Time&lt;sup&gt;1&lt;/sup&gt; will be "1234567890". Cool, isn't it ^_^&lt;/p&gt;

&lt;p&gt;Thanks to that, I've seen what might be the coolest programing joke I've ever seen on the &lt;a href="http://tech.slashdot.org/article.pl?sid=09/02/08/2043206&amp;from=rss"&gt;slashdot history&lt;/a&gt; comments:

&lt;blockquote&gt;
  Every day is a long day, because 86400 seconds won't fit in a short."&lt;sup&gt;2&lt;/sup&gt;
  &amp;mdash; FooAtWFU,
&lt;/blockquote&gt;

&lt;hr&gt;

&lt;p&gt;1: Unix systems keep the time by storing the amount of seconds which elapsed since midnight of January 1st, 1970.&lt;/p&gt;

&lt;p&gt;2: a (unsigned) short in programming is a variable which can keep a value from 0 to 65525 (aka 2&lt;sup&gt;16&lt;/sup&gt;-1).&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-1488236659802728710?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/1488236659802728710/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=1488236659802728710' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1488236659802728710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1488236659802728710'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2009/02/friday-13th-unix-time-1234567890.html' title='Friday 13th; Unix Time: 1234567890'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-1466236150617249140</id><published>2009-02-10T08:38:00.003-02:00</published><updated>2009-02-15T08:04:05.061-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='manga'/><title type='text'>Manga: Bleach 19 with colored pages!</title><content type='html'>&lt;p&gt;I've had a pleasant surprise yesterday: The people at Panini have included some colored pages in Bleach 19. AFAIK&lt;sup&gt;1&lt;/sup&gt;, this was the first manga released on Brazil with colored pages. thumbs up ^_^&lt;/p&gt;

&lt;p&gt;BTW&lt;sup&gt;2&lt;/sup&gt;, It's interesting how Panini has been releasing good mangas lately... To think not so long ago JBC was the best manga publisher around there... They have lost themselves somewhere, I hope they can recover.&lt;/p&gt;

&lt;p&gt;&lt;i&gt;&lt;b&gt;Edit:&lt;/b&gt; As nee-chan pointed out, indeed Chobbits had colored pages before Bleach&lt;/i&gt;&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;
  1: AFAIK = As Far As I Know
  &lt;br&gt;
  2: BTW = By The Way
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-1466236150617249140?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/1466236150617249140/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=1466236150617249140' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1466236150617249140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1466236150617249140'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2009/02/manga-bleach-19-with-colored-pages.html' title='Manga: Bleach 19 with colored pages!'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-8395815331766574839</id><published>2008-11-06T08:33:00.003-02:00</published><updated>2008-11-06T08:38:52.496-02:00</updated><title type='text'>Stuff to keep in mind (part 1?)</title><content type='html'>&lt;img src="http://imgs.xkcd.com/comics/internet_argument.png" alt="Internet Argument" width="440" /&gt;

&lt;q&gt;It's easier to be an asshole to words than to people&lt;/q&gt;

Courtesy of &lt;a href="http://www.xkcd.org/"&gt;xkcd&lt;/a&gt; (&lt;a href="http://xkcd.com/438/"&gt;#438&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-8395815331766574839?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/8395815331766574839/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=8395815331766574839' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/8395815331766574839'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/8395815331766574839'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/11/stuff-to-keep-in-mind-part-1.html' title='Stuff to keep in mind (part 1?)'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-8720351331798079552</id><published>2008-09-08T22:07:00.007-03:00</published><updated>2009-02-03T09:08:23.474-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='work'/><title type='text'>HP Laserjet P3005d</title><content type='html'>&lt;p&gt;We have acquired a new HP Laserjet P3005d printer at work some months ago, to replace an aging HP laserjet 2300dn which was consistently jamming on duplex jobs. The new printer just doesn't feel as good as the older one though... Anyway, there are some notes about problems I've found with it for reference.&lt;/p&gt;

&lt;h4&gt;CUPS, driver and advanced options/booklet printing&lt;/h4&gt;

&lt;p&gt;The printer was conected by USB to a Debian GNU/Linux server. With the 2300, running the setup allowed one to choose "client setup", tell the URI of the printer and have it just work out of the box with all the resources enabled. Unfortunately, this option isn't available in the 3005 driver (maybe HP people want to sell more network modules for the printers?).&lt;/p&gt;

&lt;p&gt;To work around this issue while getting advanced options, such as booklet, working, one needs to install the printer as if it was connected on the computer, and create a new "local port" with the printer samba URI as "name" when asked about the printer port. (If such advanced options aren't needed, following the steps on the samba howto to install the printer driver on the server works well).&lt;/p&gt;

&lt;h4&gt;Strange printing anomalies after changing the toner&lt;/h4&gt;

&lt;p&gt;After replacing the toner with a new one, there was some horizontal bars and strange bubble-like stains on the printings. Took some time to figure out that the basic mandate of the computing would solve this one: just turn the printer off, give it some small time and turn it back on.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-8720351331798079552?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/8720351331798079552/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=8720351331798079552' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/8720351331798079552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/8720351331798079552'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/09/hp-laserjet-p3005d.html' title='HP Laserjet P3005d'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-3662283481281345949</id><published>2008-08-17T21:59:00.005-03:00</published><updated>2009-02-03T09:10:06.291-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rant'/><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='work'/><title type='text'>How to NOT make a web form</title><content type='html'>&lt;p&gt;The 2009 trainee's program of the multinational &lt;i&gt;Unilever&lt;/i&gt; are open. As I've graduated recently, and heard some people say very good things about employment there, I've decided to apply myself.&lt;/p&gt;

&lt;p&gt;With that in mind, I've followed the links on the &lt;i&gt;Unilever&lt;/i&gt; page to the register myself. This brought me to an interesting web-based form, apparently designed by &lt;i&gt;Cia de Talentos&lt;/i&gt;, an recruitment agency around there: Instead of using standard html selection boxes (ie, &lt;code&gt;select&lt;/code&gt; elements), they just got creative and decided to reinvent the well using &lt;code&gt;input&lt;/code&gt; elements and some &amp;quot;nice&amp;quot; down arrow images, on which you can click to get a &amp;quot;lovely&amp;quot; popup on which you can select you choice, which then gets dutifully copyed back to the &lt;code&gt;input&lt;/code&gt;. Of course, they also set the choice's code on an hidden &lt;code&gt;input&lt;/code&gt; element, presumably to easy their parsing later... Oh, and some of them even have the proper code, using &lt;code&gt;select&lt;/code&gt; element, commented above them (for easing of legibility, I suppose...)&lt;/p&gt;

&lt;p&gt;Now that I've let everyone anxious to see such beautiful art of the web programming, I'll let you see a snippets of the code:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&amp;lt;input type="text" name="Text_CodPais_cand" size="30" value="" onFocus="SetSav('SavRegioes'); SetSav('SavCand'); mudaFoco('Nome_cand',-1)" style="color: #0000FF; background-color: #EEEEEE; font-size: 8pt; font-family: verdana; width: 260px"&amp;gt;
&amp;lt;img src="img/SetaCombo.gif" align="absmiddle" onClick="SetSav('SavRegioes');SetSav('SavCand');setCmb('un país', 'CodPais_cand',-1,280,260,0,'Nome_cand',-1)"&amp;gt;
&amp;lt;input type="hidden" type="text" name="CodPais_cand" value="31"&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;I haven't really parsed all of their javascript (it's long, messy...), but it seems to make some &amp;quot;clever&amp;quot; stuff like create the full html of the popup using &lt;code&gt;document.write&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;They also seem unable to keep track of your language around the multipage form, so I also had to guess some Spanish stuff to be able to fill it fully (and got wondering in what language I should fill some fields also... settled on keeping everything in Portuguese.&lt;/p&gt;

&lt;p&gt;To make this long history short, the main lessons I would take from this on the top of my head:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Never ever make a fake &lt;code&gt;select&lt;/code&gt; by using &lt;code&gt;input&lt;/code&gt; and &lt;code&gt;img&lt;/code&gt;. If you think it's the solution to your problem &lt;b&gt;You're doing it wrong&lt;/b&gt;. Trust me, You'll look foolish, and some moron (or not) with so much time (or not) will make sure to tell the whole, lazy web on his blog.&lt;/li&gt;
  &lt;li&gt;Keep the language of your web pages consistent.&lt;/li&gt;
  &lt;li&gt;Be careful if you're going to outsource something. Some times people might notice it wasn't you which has done the foolish thing, some times not. Independently, they might chose to do business with you, or might think you aren't worth it if you can't even get a simple webpage done right. &lt;b&gt;Either way it will damage your image if someone does something so messed up in your name&lt;/b&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Just for the record, in this case in particular I've chosen to register myself anyway; as I've got some really good references about &lt;i&gt;Unilever&lt;/i&gt;. But I'm worried if this is the competence to be expected from their IT sector (which is also the sector I would work) - even if this wasn't their doing, there should be someone watching the quality of their outsourced work...&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-3662283481281345949?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/3662283481281345949/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=3662283481281345949' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/3662283481281345949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/3662283481281345949'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/08/how-to-not-make-web-form.html' title='How to NOT make a web form'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-4741018003636554774</id><published>2008-07-30T20:29:00.003-03:00</published><updated>2009-02-03T09:10:42.883-02:00</updated><title type='text'>College Finished ^_^</title><content type='html'>&lt;p&gt;I've finally graduated from college course recently (something like a month ago, actually). I've made a four year technological graduation course on &lt;i&gt;Data Processing&lt;/i&gt; at the São Paulo campus of &lt;i&gt;FATEC&lt;/i&gt;, a somewhat renowned public college around there.&lt;/p&gt;

&lt;p&gt;The course itself is, as the name (which was recently changed) suggests, a bit outdated. It's purpose is to teach IT with focus on how it's used on the real, work life, and is partially successful at th at, even though an update to more modern technologies (such as better coverage of OOP practices in place of the over-emphasized structured analysis) would be good. As with every graduation course, it shows the tip of the iceberg, and the students need to learn the rest by themselves. No news on the teachers side also: a few very good teachers, some average ones and some really bad ones, besides a few which are so bad that calling them teachers should be a crime.&lt;/p&gt;

&lt;p&gt;The strongest point about FATEC, and the reason that its name stay high even though the course itself isn't anything above what I believe to be the average is, in my opinion (and of some others I've talked about it) the students themselves. The high competition on the entrance exams, plus the hard classes of math right at the start of the course, makes sure that only people intelligent enough to handle themselves and learn whatever they need (plus a few flukes, of course) graduate.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-4741018003636554774?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/4741018003636554774/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=4741018003636554774' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4741018003636554774'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4741018003636554774'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/07/college-finished.html' title='College Finished ^_^'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-5303511536823763624</id><published>2008-06-20T20:50:00.003-03:00</published><updated>2009-02-03T09:11:25.731-02:00</updated><title type='text'>Accident at the Barra Funda Metro Station</title><content type='html'>&lt;p&gt;About two hours ago, there was an accident in São Paulo's Barra Funda Metro Station. I can't say I really know what happened, but it seems that an user (a women apparently) fell on the rails and was run by an incoming metro (or got some body part stuck between the platform and the incoming, most likely moving, train). Either way, by the actions of the metro agents, I would guess the victim has died from the accident (they where trying to make the rescue operations fast, and them clearly got stopped with the hurry, as if there wasn't anything that could be done anymore). Considering that the services where restored fast, without time to any kind of forensics, I would guess the victim's body wasn't too much lacerated; but all this are just speculation as I didn't see (nor wanted to) the accident scene.&lt;/p&gt;

&lt;p&gt;I have seen some interesting things about the operations, though:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;They seem to call this kind of accident of &lt;i&gt;code A&lt;/i&gt;&lt;/li&gt;
  &lt;li&gt;All the medical stuff was behind a locked door. It took some time (at least one minute and a half) to one agent get there with the key, while there where already other agents waiting&lt;/li&gt;
  &lt;li&gt;Worst of all, one of security agents hit an user which tried to take a photo (or more specifically, the user's camera). Even if taking a photo in such circumstances might be of debatable taste, this reaction seems completely unacceptable in a free, democratic country which should mean people has press liberties to report whatever happens.&lt;/li&gt;
  &lt;li&gt;No news outlet seems to report this kind of accident; everything seems to be done in order to keep those hidden. This might support some theories I've heard that these are frequent.&lt;/li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-5303511536823763624?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/5303511536823763624/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=5303511536823763624' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5303511536823763624'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5303511536823763624'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/06/accident-at-barra-funda-metro-station.html' title='Accident at the Barra Funda Metro Station'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-1811087869246781907</id><published>2008-06-18T21:28:00.004-03:00</published><updated>2009-02-03T09:12:21.261-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='work'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Hardware failures...</title><content type='html'>&lt;h4&gt;The Bad:&lt;/h4&gt;

&lt;p&gt;When I got to work today, I've found our server (white box with Debian etch responsible for networking, files, printers, etc) powered off - most likely the UPS' battery didn't survive a power outage during the night. When I turned the server on I was greeted by all those nice lines telling me I had a hard disk problem.&lt;/p&gt;

&lt;h4&gt;The Ugly:&lt;/h4&gt;

&lt;p&gt;Instead off marking the disk showing the read errors as bad, the RAID stack (device mapper?) somehow concluded the "good" disk of the RAID 1 array wasn't synched and kicked it out...&lt;/p&gt;

&lt;h4&gt;The good&lt;/h4&gt;

&lt;p&gt;The bad sectors did take only some unimportant &lt;code&gt;collectd&lt;/code&gt; status files with them. After some poking with &lt;code&gt;dd&lt;/code&gt; trying to force the HD to redirect the bad sectors, the read errors vanished and the Reallocated Sector Count didn't increase according to &lt;code&gt;smartctl&lt;/code&gt;, which seems like a good signal.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-1811087869246781907?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/1811087869246781907/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=1811087869246781907' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1811087869246781907'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1811087869246781907'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/06/hardware-failures.html' title='Hardware failures...'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-1156646686686443264</id><published>2008-06-08T18:44:00.005-03:00</published><updated>2009-02-03T09:13:08.796-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='books'/><title type='text'>Book: The Servant</title><content type='html'>&lt;p&gt;Last week I've got the portuguese translated version of the &lt;i&gt;The Servant&lt;/i&gt; book (the title was adapted to &lt;i&gt;O Monge e o Executivo&lt;/i&gt;, which would translate back to &lt;i&gt;The Monk and the Executive&lt;/i&gt;). &lt;/p&gt;

&lt;p&gt;The book brings a lot of principles which seem to be incredible useful to leading people on this new world, where the people aren't seem (or shouldn't be seem) as discardable, easily replaceable pawns. Even though it focus is on leading, some of the principles of the books can also be applied to more general relationships.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-1156646686686443264?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/1156646686686443264/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=1156646686686443264' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1156646686686443264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1156646686686443264'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/06/book-servant.html' title='Book: The Servant'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-3153576505541627032</id><published>2008-06-07T08:44:00.005-03:00</published><updated>2009-02-03T09:53:18.441-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='manga'/><title type='text'>Manga: Karekano</title><content type='html'>&lt;p&gt;
  Volumes: 21 (original size)&lt;br&gt;
  Rating: A&lt;br&gt;
  Strong points: Character depth, useful life lessons&lt;br&gt;
  Weak points: Drawing could be better, some times it's hard to identify the characters&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;Karekano is a classic series by Masami Tsuda, whose manga has been published in Brazil - one of the best ones, IMHO.&lt;/p&gt;

&lt;p&gt;For those who don't know, it's a shoujo based on the history of &lt;i&gt;Miyazawa&lt;/i&gt;, a girl who has always made everything to keep an apparency of "best student". She had no problems with this until she meets &lt;i&gt;Arima&lt;/i&gt;, which not only shows to be a natural top-spot holder, but also ends up uncovering Miyazawa secrets (but also has its dark secrets).&lt;/p&gt;

&lt;p&gt;The history goes around those two characters and their friends; what makes it a great manga is the depth to which each character is modeled. Even though it's all exaggerated for comic purposes, anyone who stops to think about the history will probably identify himself with some traits of the characters (and likely find out acting like that isn't really a good idea). To summarize in one line, it's a life lesson disfarced in a comedy.&lt;/p&gt;

&lt;p&gt;For those who have watched the anime, the manga doesn't hold it's main flaw: There aren't big senseless retrospectives on every episode/volume. The history also goes on a lot after the place where the anime ends.&lt;/p&gt;

&lt;p&gt;Highly recommended for shoujo or manga fans in general (and to those who throw their life concentrating only on studies and the other "serious" things).&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-3153576505541627032?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/3153576505541627032/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=3153576505541627032' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/3153576505541627032'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/3153576505541627032'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/06/manga-karekano.html' title='Manga: Karekano'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-5992147524937224287</id><published>2008-05-31T18:56:00.005-03:00</published><updated>2009-02-03T09:14:35.941-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>Moving and resizing partitions</title><content type='html'>&lt;p&gt;Earlier today I've migrated all the data from a 80 GB HD to a new one of 250 GB. It was a pleasing surprise to see how far the support for these kinds of things have gone.&lt;/p&gt;

&lt;p&gt;The old HD had 4 partitions: The first two for Windows XP on NTFS (not my computer...), the third a small linux swap and the last a ext3 root partition for ubuntu.&lt;/p&gt;

&lt;p&gt;The process was quite simple: Set the jumper on the new (samsung) HD, as the motherborad has one of the VIA chipsets without support for the 3Gbps models, connect both of them, boot with an ubuntu live CD, &lt;code&gt;dd&lt;/code&gt; everything from the old HD to the new one, disconnect the old HD, boot with the live cd again and finally expand the partitions on the new HD using gparted.&lt;/p&gt;

&lt;p&gt;The big surprise came in the last step above: I really didn't expect resizing NTFS partitions through Linux to work, and it went flawless (actually, I had a small glitch on resizing the ext3 filesystem, which forced to run &lt;code&gt;resize2fs&lt;/code&gt; by hand with the force [&lt;code&gt;-f&lt;/code&gt;] flag, as it kept asking for fsck).&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-5992147524937224287?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/5992147524937224287/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=5992147524937224287' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5992147524937224287'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5992147524937224287'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/05/moving-and-resizing-partitions.html' title='Moving and resizing partitions'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-5682894293639502746</id><published>2008-05-22T09:44:00.006-03:00</published><updated>2009-02-03T09:45:43.459-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rant'/><title type='text'>Notice to parents: Please take care of your children</title><content type='html'>&lt;p&gt;I've been getting more and more irritated by a trend which seems to be developing down there on Brazil (and in particular São Paulo): People have children and don't take care of them; allowing them to do whatever they want.&lt;/p&gt;

&lt;p&gt;To illustrate, yesterday I was passing by Higienopolis Avenue (on one of the most rich &lt;a href="http://en.wikipedia.org/wiki/Bairro"&gt;&lt;i&gt;Bairros&lt;/i&gt;&lt;/a&gt; of the city), and three women were talking happily &lt;b&gt;while the son of one of them demonstrated how stupid he was by kicking a public trash can!!!&lt;/b&gt; Of course, I've approached them and asked them to make their children stop.&lt;/p&gt;

&lt;p&gt;Now, WTF guys! It's common sense. If you've children, you're responsible on educating them. You have to teach your son why he can't go around kicking things. If you can't make it or don't wish to spend your time on it just &lt;b&gt;don't have children&lt;/b&gt;. Period.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;PS:&lt;/b&gt; Whenever you go to shopping, please don't let your children roaming around and hitting other people while you eat also. This one is even more wildspread...&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-5682894293639502746?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/5682894293639502746/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=5682894293639502746' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5682894293639502746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5682894293639502746'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/05/notice-to-parents-please-take-care-of.html' title='Notice to parents: Please take care of your children'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-7275194934322747844</id><published>2008-05-18T21:14:00.003-03:00</published><updated>2009-02-03T09:46:25.150-02:00</updated><title type='text'>Sosaku Gueidan Requios</title><content type='html'>&lt;p&gt;Yesterday, I've watched an eisa/taiko/shishimai presentation by the Sosaku Gueidan Requios, a group from Okinawa which came to Brazil as part of the comemoration for the 100 years of the Japanese immigration. Along with the singer Hidekatsu Kamei, also from Okinawa, and some local groups, they've made a great show. &lt;/p&gt;

&lt;p&gt;Highly recommended ^_^&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-7275194934322747844?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/7275194934322747844/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=7275194934322747844' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7275194934322747844'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7275194934322747844'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/05/sosaku-gueidan-requios.html' title='Sosaku Gueidan Requios'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-666802597559347914</id><published>2008-05-11T22:25:00.006-03:00</published><updated>2009-02-03T09:48:50.256-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='anime'/><title type='text'>Anime: Naruto Shippuden Movie</title><content type='html'>&lt;p&gt;
  Episodes: 1 Movie&lt;br&gt;
  Rating: D&lt;br&gt;
  Strong points: None&lt;br&gt;
  Weak points: weak plot
&lt;p&gt;

&lt;p&gt;It's a known fact that I'm not a fan of Naruto, but even I got really surprised on how they did manage to mess this thing up. This movie is about some stupid guys which are trying to ressurect a (very human looking) monster, which in turn would raise some ghost army (made of golems, not ghosts...) and pwn&lt;a href="#foot1"&gt;&lt;sup&gt;1&lt;/sup&gt;&lt;/a&gt; the word.&lt;/p&gt;

&lt;p&gt;Of course, there is one &lt;i&gt;Miko&lt;/i&gt; (priestess) which can seal this guy away. Only one. In the entire word. And no one ever thought on teaching the &lt;i&gt;jutsu&lt;/i&gt; (technique) to someone else (and they say free software bus factor&lt;a href="#foot2"&gt;&lt;sup&gt;2&lt;/sup&gt;&lt;/a&gt; is bad...).&lt;/p&gt;

&lt;p&gt;And then, to add insult to the injury (hope I got this one right), Konoha just sent the lamest team of &lt;i&gt;Shinobi&lt;/i&gt; (ninja) &amp;mdash; aka the Naruto team; this time lead by Neji &amp;mdash; to escort such irreplaceable person to the ultra dangerous place where she would have to confront and seal the monster's soul. Mix some cliché about premonitions and the old "is there a predefined destiny?" stuff and you got what the movie is about.&lt;/p&gt;

&lt;p&gt;And that's all. Not even the fights, which sometimes are good on Naruto, are worth this time. If you really need to watch anything which has Naruto on the name go ahead, otherwise I'm sure you can find better things to do.&lt;/p&gt;

&lt;hr style="width: 5%" align="left"&gt;
&lt;p&gt;&lt;a name="foot1"&gt;1&lt;/a&gt;: &lt;code&gt;pwn&lt;/code&gt; is a computer/leetspeak slang to defeat, dominate and similars, derived from &lt;q&gt;own&lt;/q&gt;. &lt;a href="http://en.wikipedia.org/wiki/Pwn"&gt;See more on wikipedia&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a name="foot2"&gt;2&lt;/a&gt;: &lt;code&gt;bus factor&lt;/code&gt; is the number of persons which need to be hit by a bus to kill a project.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-666802597559347914?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/666802597559347914/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=666802597559347914' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/666802597559347914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/666802597559347914'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/05/anime-naruto-shippuden-movie.html' title='Anime: Naruto Shippuden Movie'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-5422507477831355194</id><published>2008-05-10T15:56:00.005-03:00</published><updated>2009-02-03T09:49:46.631-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>More RAM 2</title><content type='html'>&lt;p&gt;Note to self: Whenever &lt;a href="http://grmontesino.blogspot.com/2008/05/more-ram.html"&gt;adding RAM&lt;/a&gt;, besides looking for the correct count on POST, it seems to be a good idea to see also on kernel's boot logs if the kernel found and can use all the available memory.&lt;/p&gt;

&lt;p&gt;In this case, I had to recompile the kernel with HIGHMEM enabled. Well, the kernel I had running (2.6.18) was starting to get old anyway, so now I've got 2.6.24.7, which seems to be the latest one on which the nvidia binary drivers will compile.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-5422507477831355194?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/5422507477831355194/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=5422507477831355194' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5422507477831355194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5422507477831355194'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/05/more-ram-2.html' title='More RAM 2'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-3334509886433689388</id><published>2008-05-09T19:16:00.008-03:00</published><updated>2009-02-03T09:50:20.306-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><title type='text'>More RAM</title><content type='html'>&lt;p&gt;Just added 1GB of RAM on my desktop, which had been crawling with 512MB; just 'cause there should be at least one good news even on bad days.&lt;/p&gt;

&lt;p&gt;Hopefully Eclipse will be usable now.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-3334509886433689388?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/3334509886433689388/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=3334509886433689388' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/3334509886433689388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/3334509886433689388'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/05/more-ram.html' title='More RAM'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-4540784174967051642</id><published>2008-05-02T21:40:00.006-03:00</published><updated>2009-02-03T09:51:20.054-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='anime'/><title type='text'>Anime: H2</title><content type='html'>&lt;p&gt;
  Episodes: 41&lt;br&gt;
  Rating: D&lt;br&gt;
&lt;p&gt;

&lt;p&gt;H2 is an old sports anime (from 1995, according to &lt;a href="http://www.animenfo.com/animetitle,638,goigqy,h2.html"&gt;AnimeNFO&lt;/a&gt;) which tells the history of three baseball fanatic friends and their quest to go to the Japanese national high school tournament.&lt;/p&gt;

&lt;p&gt;The history is mostly your average school sports anime, and it just ends early without really telling what happens. It's not unwatchable, but there are certainly more interesting animes out there.&lt;/p&gt;

&lt;p&gt;BTW, even though I'm thankful by the efforts of the ILA fansub team for the release, I must advise anyone who watches it to take the subtitling with a big truck of salt.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-4540784174967051642?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/4540784174967051642/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=4540784174967051642' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4540784174967051642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4540784174967051642'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/05/anime-h2.html' title='Anime: H2'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-4865355286232176107</id><published>2008-04-14T23:43:00.003-03:00</published><updated>2009-02-03T09:22:18.934-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><category scheme='http://www.blogger.com/atom/ns#' term='libgda'/><category scheme='http://www.blogger.com/atom/ns#' term='upload'/><title type='text'>libgda3 3.0.2-4</title><content type='html'>&lt;p&gt;This new Debian release of libgda moves gtk-doc and related packages back to &lt;code&gt;build-depends-indep&lt;/code&gt;, and add some makefile logic on &lt;code&gt;debian/rules&lt;/code&gt; to detect if gtk-doc is installed (looking for gtk-doc.pc) and enable or not documentation (re)generation on-the-fly.&lt;/p&gt;

&lt;p&gt;Of course, I've also been bitten by the sha1 checksums on the changes files, as I had a new version of dpkg-dev and an old devscripts/debsign installed. It took me some time to figure how to fix this one.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-4865355286232176107?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/4865355286232176107/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=4865355286232176107' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4865355286232176107'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4865355286232176107'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/04/libgda3-302-4.html' title='libgda3 3.0.2-4'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-7864082847304360051</id><published>2008-04-06T22:03:00.006-03:00</published><updated>2009-02-03T09:25:23.708-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='anime'/><title type='text'>Anime: Tsubasa Chronicles Tokyo Revelations</title><content type='html'>&lt;p&gt;
  Episodes: 3 OVAs&lt;br&gt;
  Rating: B&lt;br&gt;
  Strong points: Characters depth&lt;br&gt;
  Weak Points: Drawing could be better on a anime from CLAMP&lt;br&gt;
&lt;p&gt;

&lt;p&gt;Tsubasa Chronicles tells the journey of Syaoran, Sakura, Kurogane and Fay as they travel around different words to collect the memories of Sakura, which got scattered during an enemy attack against the Clow Kingdom. On the first two TV series, they visit a lot of worlds, recover some of the feathers which hold/represent Sakura's memories, and meet an amazing amount of characters from other CLAMP animes.&lt;/p&gt;

&lt;p&gt;Even though the TV series gave some small hints, tips and insights around the characters histories and objectives, the Tokyo Revelations OVA series finally dive in to tell in more depth why all of this is happening, why each of the characters fight, what they hide... This was certainly very welcome, as they took a long time to get to this interesting part of the history.&lt;/p&gt;

&lt;h4 style="color:red;"&gt;*** WARNING: spoilers below! ***&lt;/h4&gt;

&lt;p&gt;It was pretty sad, however, to see what has happened to Syaoran. Watching as he fought with all he got for Sakura during the TV series, even though she wouldn't remember the moments the two shared togheter, was very inspiring. Now the true Syaoran got the half of his hearth which was on the clone Syaroan back, and all this strong feeling Syaroan had seem to have gone &amp;mdash; it seems the true Syaroan is right when he says those feelings were somehow developed by the cloned Syaoran; however it seems to be gone, and the cloned Syaoran acted really bad after losing the half heart...&lt;/p&gt;

&lt;p&gt;Now, if it's going to have a continuation (I think/hope so), and if CLAMP is going to follow the &lt;i&gt;cliché&lt;/i&gt; route, I would guess at the end they will confirm the feelings indeed came from the clone Syaoran, which somehow developed a personality by himself, and he will get these feelings back somehow in the middle of some crazy fight (most likely after being touched by Sakura tears or somesuch). Them they will likely live happy forever. Or so the story says, but if it gets to that, one has to think: could someone like (clone) Syaoran really live happy knowing what he has done against Fay, which has given him such support?&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-7864082847304360051?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/7864082847304360051/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=7864082847304360051' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7864082847304360051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7864082847304360051'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/04/anime-tsubasa-chronicles-tokyo.html' title='Anime: Tsubasa Chronicles Tokyo Revelations'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-4806894138347905525</id><published>2008-04-01T23:22:00.003-03:00</published><updated>2008-04-01T23:37:58.333-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><category scheme='http://www.blogger.com/atom/ns#' term='libgda'/><category scheme='http://www.blogger.com/atom/ns#' term='upload'/><title type='text'>libgda3 3.0.2-3</title><content type='html'>Earlier today I've just made my first package upload to the Debian archives (and no, this isn't an April 1st. joke :P). It was a debian revision of libgda3, with the following changes:
&lt;ul&gt;
  &lt;li&gt;Updated the section of the doc-base file. For future reference, recent versions of the doc-base package install a list of valid sections on &lt;code&gt;/usr/share/doc-base/data/section.list&lt;/code&gt;. BTW, there is an &lt;a href="http://lintian.debian.org/reports/tags/doc-base-unknown-section.html"&gt;impressive number of packages&lt;/a&gt; which need to update their doc-base files, which is a very simple change.&lt;/li&gt;
  &lt;li&gt;Updated the copyright file with a cooler machine-readable one; added some copyright info which was missing (about the GFDL'ed docs) and made lintian happier by using proper copyright lines&lt;/li&gt;
  &lt;li&gt;Added a patch to fix an ia64 failure on the documentation building process (Thanks again, Steve and Chris).&lt;/li&gt;
&lt;/ul&gt;
Now the bad news: The building still fails in ia64... and I have no idea way. Below is an excerpt from the &lt;a href="http://buildd.debian.org/fetch.cgi?pkg=libgda3;ver=3.0.2-3;arch=ia64;stamp=1207045346"&gt;full build log&lt;/a&gt;:
&lt;pre&gt;&lt;code&gt;        
Writing ch18.html for chapter
I/O error : No such file or directory
I/O error : No such file or directory
runtime error: file file:///usr/share/xml/docbook/stylesheet/nwalsh/html/chunker.xsl line 202 element document
xsltDocumentElem: unable to save to ch18.html
&lt;/code&gt;&lt;/pre&gt;
I'm not sure when I'll have time to try debugging this, so any help would be greatly appreciated.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-4806894138347905525?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/4806894138347905525/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=4806894138347905525' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4806894138347905525'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4806894138347905525'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/04/libgda3-302-3.html' title='libgda3 3.0.2-3'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-5037079486025087528</id><published>2008-03-30T21:31:00.008-03:00</published><updated>2009-02-03T09:21:01.846-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='anime'/><title type='text'>Anime: Shigofumi</title><content type='html'>&lt;p&gt;
  Episodes: 13&lt;br&gt;
  Rating: C&lt;br&gt;
  Strong points: Original plot&lt;br&gt;
  Weak Points: Slow start, strange ending
&lt;/p&gt;

&lt;p&gt;Shigofumi's main character, Fumika, has the job of delivering letters which dead people can send to the alive ones, which are called "shigofumi".&lt;/p&gt;

&lt;p&gt;The first episodes show Fumika doing her work, and somewhere by the middle of show it starts to enter in some interesting details of Fumika's life: What is her past? Why she's the only "postal worker" which ages, as all "postal workers" are already dead? What are her relationships with her father?&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-5037079486025087528?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/5037079486025087528/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=5037079486025087528' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5037079486025087528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5037079486025087528'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/03/anime-shigofumi.html' title='Anime: Shigofumi'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-4542815892764262297</id><published>2008-03-26T00:18:00.003-03:00</published><updated>2009-02-03T09:19:10.330-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Blogger and comments</title><content type='html'>&lt;p&gt;To my surprise, I've recently discovered that Blogger doesn't defaults to sending the comments to the blog owner (ie, myself) by e-mail.&lt;/p&gt;

&lt;p&gt;This means I've missed a lot of good feedback during my SoC project last year. Thanks for everyone who has posted comments, and sorry for not noticing/using/answering them before.&lt;/p&gt;

&lt;p&gt;/me wonders if it's time to think about moving to some other blog platform... maybe a free one...&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-4542815892764262297?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/4542815892764262297/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=4542815892764262297' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4542815892764262297'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4542815892764262297'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/03/blogger-and-comments.html' title='Blogger and comments'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-7770368624652188483</id><published>2008-03-23T21:16:00.006-03:00</published><updated>2009-02-03T09:17:49.027-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='anime'/><title type='text'>H2O ~Footprints in the Sand~</title><content type='html'>&lt;p&gt;Just finished watching the last episode of the &lt;a href="http://en.wikipedia.org/wiki/H2O:_Footprints_in_the_Sand#Anime"&gt;H2O ~Footprints in the Sand~&lt;/a&gt; &lt;a href="http://en.wikipedia.org/wiki/Anime"&gt;anime&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;H2O's plot goes around the main character, &lt;i&gt;Hirose Takuma&lt;/i&gt;, which is blind but gets to see (or not? ...) thanks to the powers of wind's spirit &lt;i&gt;Otoha&lt;/i&gt;; &lt;i&gt;Kagura Hinata&lt;/i&gt;, whose family is the most influent on the village and &lt;i&gt;Kohinata Hayami&lt;/i&gt;, whose family is hated by everyone.&lt;/p&gt;

&lt;p&gt;Takuma undertakes the hard task of making everyone on the village get around together, while also fighting against his dark past.&lt;/p&gt;

&lt;p&gt;At first, it seems to be one of animes with average story and pretty graphics which are getting somewhat common. However, the plot gets more interesting and full of twists (and WTF moments) later.&lt;/p&gt;

&lt;p&gt;Recommended watching :)&lt;/p&gt;

&lt;p&gt;Oh, by the way, I've watched the 720p fansub from the BakaWolf and m.3.3.w guys. It's pretty high quality stuff, thanks guys.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-7770368624652188483?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/7770368624652188483/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=7770368624652188483' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7770368624652188483'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7770368624652188483'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/03/h2o-footprints-in-sand.html' title='H2O ~Footprints in the Sand~'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-1108789995894458934</id><published>2008-03-21T08:28:00.003-03:00</published><updated>2009-02-03T09:16:57.991-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rant'/><category scheme='http://www.blogger.com/atom/ns#' term='computers'/><title type='text'>Dear Itautec,</title><content type='html'>&lt;p&gt;Please don't glue the processor on the heathsink with tape.&lt;/p&gt;

&lt;p&gt;Thanks.&lt;/p&gt;

&lt;p&gt;PS: If you ever get something like this, take the processor/heathsink out of the socket before trying to separate them, or you might end up pulling the processor out of the socket with it locked (like I did), which means a lot of bent pins.&lt;/p&gt;

&lt;p&gt;PPS: It was an ancient computer (Itautec Transglobe 1001; AMD K6-II 450), they most likely don't do it anymore - I guess it would mess the heat dissipation on modern processors. Anyway, I don't think it was a great idea back then also...&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-1108789995894458934?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/1108789995894458934/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=1108789995894458934' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1108789995894458934'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1108789995894458934'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/03/dear-itautec.html' title='Dear Itautec,'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-4250061871289179765</id><published>2008-03-09T07:30:00.005-03:00</published><updated>2009-02-03T09:16:06.988-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='books'/><title type='text'>Mennoch the Devil</title><content type='html'>&lt;p&gt;I've finished reading &lt;a href="http://en.wikipedia.org/wiki/Anne_rice"&gt;Anne Rice&lt;/a&gt;'s &lt;a href="http://en.wikipedia.org/wiki/Memnoch_the_Devil"&gt;Mennoch the Devil&lt;/a&gt; (released as just Mennoch in Brazil... I guess devil is a word too strong by here...), the fifth book in her &lt;a href="http://en.wikipedia.org/wiki/Vampire_Chronicles"&gt;Vampire Chronicles&lt;/a&gt;. I haven't read &lt;i&gt;The Tale of the Body Thief&lt;/i&gt; yet, so some references where a bit puzzling, but it was readable nevertheless.&lt;/p&gt;

&lt;p&gt;The book was very interesting, particularly Mennoch's version of the history of the creation (it probably can be quite offensive for the religious though). Roger's history also wasn't bad, but I feel that Dora's could've been better. I find her reactions after getting the veil to have been very strange and out-of-character. I also wonder if Lestat shouldn't have accepted Mennoch's proposal...&lt;/p&gt;

&lt;p&gt;All said, I would recommend the book to anyone looking for a good fictional history which haven't problems with some blasphemy and have already read the previous book. For those who haven't, I would recommend reading them instead, as it would make more sense and AFAIR* they are better anyway.&lt;/p&gt;

&lt;hr&gt;
* For the non-initiated, AFAIR = As Far As I Remember&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-4250061871289179765?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/4250061871289179765/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=4250061871289179765' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4250061871289179765'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4250061871289179765'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/03/mennoch-devil.html' title='Mennoch the Devil'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-1725497517834618812</id><published>2008-02-23T15:46:00.003-03:00</published><updated>2008-02-23T15:54:39.610-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><category scheme='http://www.blogger.com/atom/ns#' term='libgnomedb'/><category scheme='http://www.blogger.com/atom/ns#' term='libgda'/><title type='text'>Debian bits</title><content type='html'>&lt;ul&gt;
  &lt;li&gt;I'm now a Debian Maintainer. Yay :)&lt;/li&gt;
  &lt;li&gt;New releases of libgda3 and libgnomedb3  were uploaded. On both of them, I've added the Dm-Upload-Allowed, VCS-* and Homepage fields, updated the standards version and fixed FTBFSes on BDFH's dirty chroot, along with some other minor bugfixes.&lt;/li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-1725497517834618812?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/1725497517834618812/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=1725497517834618812' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1725497517834618812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1725497517834618812'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2008/02/debian-bits.html' title='Debian bits'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-7443659967297310337</id><published>2007-12-09T18:22:00.000-02:00</published><updated>2007-12-09T18:32:30.357-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='bug-triage'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Hacking on bug-triage</title><content type='html'>A lot has happened after the Summer of Code has ended, and I haven't been able to work on bug-triage after that, in part due to "Real Life", in part due to laziness. Anyway, I've finally got some time to work a bit on it today.

First, I've taken care of Debian's 452918, where the reporter said that using "pending" on bug status meaning open might cause confusion with the pending tag. Actually, pending is the word used internally by debbugs to mean open bugs, and its also what is returned by the debbugs' SOAP interface (bugs tagged pending get the status pending-fixed instead). Anyway, I've just mapped the internal/SOAP debbugs status to the ones used by pkgreport.cgi, that should avoid misunderstandings.

While at it, I also took some time to add a feature I've missed while using bug-triage myself: When browsing upstream bugs in search of a match for a Debian bug, it's necessary to read the upstream bug log; now double-clicking on a upstream bug on bug-triage will open it's log on a browser (the same way that selecting a Debian bug and clicking "Go to" in the toolbar works).

It's only small changes by now, and I'm not sure if I'll be able to dedicate myself much more to this in the (near) future, but I'll try my best.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-7443659967297310337?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/7443659967297310337/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=7443659967297310337' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7443659967297310337'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7443659967297310337'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/12/hacking-on-bug-triage.html' title='Hacking on bug-triage'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-5909789965980832219</id><published>2007-11-25T12:31:00.000-02:00</published><updated>2007-11-29T08:59:08.941-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mergeant'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>mergeant 0.67-1</title><content type='html'>The newest version of mergeant, a GNOME GUI for database manipulation, has hit the Debian archives earlier this week (hmm... actually last week, as today is sunday). Thanks Loïc for the sponsorship.

This version was a minor one, the biggest change being the use of a library to allow the binary to find its resources in different directories on runtime, which was disabled on the Debian package as the user isn't supposed to move its files around anyway.

Another change was the migration of the mime data to the newer shared mime/freedesktop style. It took me some time to figure out that I had to install the mime file through dh_installmime to have it add the mime snippets on the maintainer scripts, as dh_installmime is called before dh_install on CDBS (I wonder if there is some reason for the calling order...)

&lt;span style="font-weight: bold;"&gt;Update: &lt;/span&gt;I've missed that &lt;package&gt;.sharedmime isn't a list of files to install like, say, &lt;package&gt;.install; it is the file to install itself.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-5909789965980832219?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/5909789965980832219/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=5909789965980832219' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5909789965980832219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5909789965980832219'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/11/mergeant-067-1.html' title='mergeant 0.67-1'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-7118411139859979096</id><published>2007-09-30T10:18:00.000-03:00</published><updated>2007-09-30T10:27:26.818-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='mergeant'/><category scheme='http://www.blogger.com/atom/ns#' term='bug-triage'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Mergeant 0.66-1</title><content type='html'>The latest version of mergeant, a GNOME GUI for database manipulation, has finally reached the Debian archives, closing all bugs which were open against the previous one. Thanks, Loïc, for the sponsorship.

As a side note, this version of mergeant has got an implicit pointer conversion bug due to missing includes in two different files. This was my first chance to test the bug forwarding feature of the Bug Triaging and Forwarding Tool (my project in Google's Summer of Code 2007). It isn't as comprehensible as I would like due to limitations on bugzilla, but was pretty handy nevertheless.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-7118411139859979096?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/7118411139859979096/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=7118411139859979096' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7118411139859979096'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7118411139859979096'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/09/mergeant-066-1.html' title='Mergeant 0.66-1'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-1458771333926626756</id><published>2007-09-09T18:45:00.001-03:00</published><updated>2007-09-09T19:04:31.122-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><title type='text'>September 7th</title><content type='html'>Last friday was a national holiday here on Brazil (independence day). Even though there were lots of problems (my car got damaged while in the parking lot during the week, our planned paths were closed due to independece parties two times, etc), this was a very cool day.

I've joined some friends and have gone to Holambra, 135km away from São Paulo, to see the famous &lt;a href="http://www.expoflora.com.br"&gt;expoflora&lt;/a&gt; - an exposition of flowers. It's aways nice to pass some time with good friends, forgetting the boring daily routines.

The exposition was very interesting. They had (of course) a lot of flowers, one of the coolest being the "rainbow roses" - roses with various colors. Maybe I'll get some photos up sometime... Besides the flowers, they also had some exhibitions of Netherlands traditions, and of old rural stuff. The only downside goes to the organization; sometimes it was hard to find the way on the place (and to the place also), there should have been a lot of extra signs around.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-1458771333926626756?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/1458771333926626756/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=1458771333926626756' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1458771333926626756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1458771333926626756'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/09/september-7th.html' title='September 7th'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-7861093167689887537</id><published>2007-08-25T12:57:00.000-03:00</published><updated>2007-08-25T13:47:27.495-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>SoC Final Report</title><content type='html'>The Google Summer of Code coding period has ended earlier this week, so it seems to be a good time to stop and look what was done (and what wasn't). Let's start with an objective analysis, following the list of planned features:

&lt;span style="font-weight: bold;"&gt;Advanced query of bugs on the Debian BTS&lt;/span&gt;

In a 1-10 scale, I would give myself something like 6 or 7 here. bug-triage can query bugs by number, source package, package, maintainer and submitter. These parameters can be combined to make an query (reports must match all parameters) and more than one query may be added, subtracted and and'ed. A clearly missing feature is querying by usertag, support for it has been added on btsutils already and is just a question of adding a new input box on the query builder dialog (it should work if you enter the query manually in the bug-triage query line AFAICT).

&lt;span style="font-weight: bold;"&gt;Show all the information related to a bug report&lt;/span&gt;

bug-triage has a "goto" button which opens the bug in the user's preferred browser. Missing is the support to open the bug in a MUA, which I have promissed to Loïc.

&lt;span style="font-weight: bold;"&gt;Send additional information to a bug report&lt;/span&gt;

bug-triage has a "followup" button which opens the user's MUA with the right address. Maybe setting the subject would be nice...

&lt;span style="font-weight: bold;"&gt;Manipulate the tags of a bug report&lt;/span&gt;

I haven't had time to implement this at all. I've started it, the bugs have a context-sensitive menu which have each of the available tags as checkboxes on the right current status, but clicking on them does nothing currently.

&lt;span style="font-weight: bold;"&gt;Search for similar bugs in upstream developer BTS&lt;/span&gt;

This one would value something like 3 or 4 in a 1-10 scale. It searches upstream bugzillas by product and component, but doesn't do any cool trick like searching words in the bug subjects. The plus is that it does support KDE bugzilla, even though I haven't been brave enough to promisse it before SoC :P

&lt;span style="font-weight: bold;"&gt;Forward a bug report to the upstream developer BTS&lt;/span&gt;

There isn't really a good interface to report bugs programatically on GNOME bugzilla, which was disappointing. &amp;lt;rant&amp;gt;There is the bug-buddy xmlrpc(?) interface, but the developers say they will actively break anything using it, which I find very free-software-unlike.&amp;lt;/rant&amp;gt;. The current bug-triage solution opens a browser with some of the fields filled. It would be nice to fill the full bug description, but its limited by the maximum size of an URL, so it fills only an introductory text (something like This bug was filled on Debian BTS #XXX) currently. Let's hope bugzilla 3 get on the GNOME world soon.

&lt;span style="font-weight: bold;"&gt;Conclusions&lt;/span&gt;

Unfortunately, this project hasn't evolved as much as I would like in the second half of the GSoC. As I said elsewhere, a lot of stuff has happened, some good, some bad, but on the end everything I hadn't been able to dedicate myself to anything I should. Even so, I think the project may be considered sucessful.

Maybe the more interesting product of this project, at least currently, is still on python-btsutils. As I said in the middle-term report, it'll be integrated in the debian_bundle soon, and might be powering important stuff like the devscripts in the future.

The bug-triage application has a lot to evolve yet, but is also an interesting tool IMHO. There are a lot of hurdles in the way to get different BTSes integrated, but the effort will for sure pay in the future. I plan to keep developing it (evon though keeping the GSoC pace is impossible) and am anxious to see the results ;)

Finally, as I said before, one of the main things on GSoC for me was the potential to learn cool stuff. The best choice I've made during all of this was to use Python. Even though it's still a new language for me, and i still have to search embarassingly simple things in the tutorial/reference, it was a lot more productive than if I was developing in C. Learning to use git was also a great. This goal was the more fulfilled one, I've really learnt a lot of things which will surely be useful in the future. BTOH, I still can't get used to glade :/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-7861093167689887537?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/7861093167689887537/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=7861093167689887537' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7861093167689887537'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7861093167689887537'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/08/soc-final-report.html' title='SoC Final Report'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-2974646127998998413</id><published>2007-08-18T15:33:00.000-03:00</published><updated>2007-08-18T15:48:19.274-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='bug-triage'/><category scheme='http://www.blogger.com/atom/ns#' term='btsutils'/><category scheme='http://www.blogger.com/atom/ns#' term='bzutils'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Final SoC releases</title><content type='html'>I've just finished releasing new versions of all modules related to my Summer of Code project, the Bug Triage and Forward Tool. If my mentor doesn't find any serious bug, these will be the last releases under the SoC flag. Thanks again, Google, for this great program and the progress it brings to Free Software.

The releases:

bzutils 0.2:
&lt;ul&gt;&lt;li&gt;&lt;a href="http://lists.alioth.debian.org/pipermail/bug-triage-devel/2007-August/000006.html"&gt;Announcement&lt;/a&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://alioth.debian.org/frs/download.php/2112/bzutils-0.2.tar.gz"&gt;Source .tar.gz&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;btsutils 0.3:
&lt;ul&gt;&lt;li&gt;&lt;a href="http://lists.alioth.debian.org/pipermail/bug-triage-devel/2007-August/000005.html"&gt;Announcement&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://alioth.debian.org/frs/download.php/2111/btsutils-0.3.tar.gz"&gt;Source .tar.gz&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;bug-triage 0.2.2:
&lt;ul&gt;&lt;li&gt;&lt;a href="http://lists.alioth.debian.org/pipermail/bug-triage-devel/2007-August/000007.html"&gt;Announcement&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://alioth.debian.org/frs/download.php/2116/bug-triage-0.2.2.tar.gz"&gt;Source .tar.gz&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Debian packages should hit the archive as soon as they get evaluated and sponsored. Of course, a full status report will also be posted during the evaluation time.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-2974646127998998413?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/2974646127998998413/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=2974646127998998413' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/2974646127998998413'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/2974646127998998413'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/08/final-soc-releases.html' title='Final SoC releases'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-2536894371348303674</id><published>2007-08-11T21:38:00.000-03:00</published><updated>2007-08-11T21:46:12.552-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='btsutils'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Iterating over lists in Python</title><content type='html'>Note to self: It's a bad idea to change a list in the middle of a loop iterating over it. The following doesn't work:

&lt;pre&gt;
for item in list:
    if foo:
        list.remove(list)
&lt;/pre&gt;

And must be replaced with:

&lt;pre&gt;
for item in list[:]:
    if foo:
        list.remove(list)
&lt;/pre&gt;

On the wrong way, the loop doesn't execute on items positioned immediately after the removed ones. This has cost me a big amount of debugging time...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-2536894371348303674?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/2536894371348303674/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=2536894371348303674' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/2536894371348303674'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/2536894371348303674'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/08/iterating-over-lists-in-python.html' title='Iterating over lists in Python'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-2570266796848769226</id><published>2007-08-02T22:54:00.001-03:00</published><updated>2008-06-01T22:07:51.455-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rant'/><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Goodbye vacation</title><content type='html'>It has been some time since my last blog post... The thing is, my university vacations ended this week, and overall left a bad taste. Unfortunately, complications ranging from buying a very big new toy from some reasonably strong illness have made an already tight schedule simple impossible to follow. On the end, I haven't dedicated enough time for anything I wanted to during these vacations: Didn't sleep as much as I would like, didn't dedicate enough time to my gf, didn't advance my Summer of Code project anything near as much as I wanted, didn't help a friend to get a Linux install in his shining new laptop, didn't fix my work's server RAID array, didn't package the newest mergeant... The list goes on...

I guess what I wanted to say is: sorry. I know I'm owing a lot of stuff for a lot of people, and I'm really sorry I haven't been able to deliver what I should. I hope to fix all of these ASAP (maybe excluding the sleeping one, seems like a lost cause :P)

Now if just the Sao Paulo's metro stopped this stupid strike...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-2570266796848769226?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/2570266796848769226/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=2570266796848769226' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/2570266796848769226'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/2570266796848769226'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/08/goodbye-vacation.html' title='Goodbye vacation'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-3042720579057532183</id><published>2007-07-23T21:00:00.000-03:00</published><updated>2007-07-23T21:22:20.822-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='bug-triage'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Glade</title><content type='html'>Dear lazyweb,

Is there any reasonable way to reorder the tabs of a GtkNotebook in glade-3?

I needed to do it to add a tab on a configuration dialog, and couldn't find any. I worked around it by editing the XML file by hand, but it just feels counter-productive and ugly...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-3042720579057532183?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/3042720579057532183/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=3042720579057532183' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/3042720579057532183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/3042720579057532183'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/07/glade.html' title='Glade'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-1663191747215854033</id><published>2007-07-19T22:17:00.000-03:00</published><updated>2007-07-19T22:22:05.438-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='bug-triage'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>bug-triage Debian Packages</title><content type='html'>Thanks to the timely efforts of Loïc Minier, a more usable (even though still featureless) bug-triage version (0.1-2) has found its way to the Debian Archive, alongside with the shining new btsutils 0.2-1. Now it does return something on queries...

The development is also progressing, the current version in git can already show the upstream bugs for a given Debian package whose upstream uses bugzilla.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-1663191747215854033?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/1663191747215854033/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=1663191747215854033' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1663191747215854033'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/1663191747215854033'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/07/bug-triage-debian-packages.html' title='bug-triage Debian Packages'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-881208246253314837</id><published>2007-07-16T22:05:00.000-03:00</published><updated>2007-07-16T22:19:03.765-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='btsutils'/><category scheme='http://www.blogger.com/atom/ns#' term='bzutils'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><category scheme='http://www.blogger.com/atom/ns#' term='libgnomedb'/><title type='text'>btsutils 0.2 release</title><content type='html'>For what can be read on Planet SoC, computer problems seems to be the norm between SoC students... I've got my part of this cake today with a power cut and some strange /dev permissions when my PC got back...

Fortunately it was somewhat easy to solve (I believe it was the udev upgrade which did the trick), so I've been able to release btsutils 0.2. Please take a look on the &lt;a href="http://lists.alioth.debian.org/pipermail/bug-triage-devel/2007-July/000003.html"&gt;announcement&lt;/a&gt; for more details.

Still on the SoC side, thanks to the great work from the Debian ftpmaster team and Loïc Minier, the packages python-btsutils and python-bzutils have made their way through the NEW queue and are on the Debian official archive.

And finally, on Debian side, Loïc Minier also uploaded libgnomedb3 3.0.0-2, a bug fix release for libgnomedb closing two bugs. Thanks, Loïc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-881208246253314837?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/881208246253314837/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=881208246253314837' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/881208246253314837'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/881208246253314837'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/07/btsutils-02-release.html' title='btsutils 0.2 release'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-2526689086927958483</id><published>2007-07-09T08:10:00.000-03:00</published><updated>2007-07-09T08:18:36.373-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Summer of Code mid-term report</title><content type='html'>&lt;span style="font-weight:bold;"&gt;I. Introduction&lt;/span&gt;

Today, the mid-term evaluations of the Google Summer of Code starts. It means it's a good for a comprehensive summary of what I've done so far.

For those who don't remember, My GSoC project is the Bug Triaging and Forwarding Tool, whose aim is to help triaging of Debian bug reports. On my proposal, I had included the following timeline:
&lt;ul&gt;
  &lt;li&gt;April - May: Study of the resources available for use in the project
    (Debian BTS SOAP/LDAP interface, Bugzilla interaction resources, etc)
    and the design of the tool. Request needed unavailable features,
    if any, with patches if possible&lt;/li&gt;
  &lt;li&gt;May - July: Development of initial interface and code to interact with
    Debian BTS&lt;/li&gt;
  &lt;li&gt;August: Development of Bugzilla plugin&lt;/li&gt;
&lt;/ul&gt;
During the proposals evaluations and the community bounding period, it was pointed to me that there's already a lot of good tools to handle bug reports, so I've changed this a bit and already started to work on BTS-Bugzilla interaction, which seems to be the more novel part of the
tool.

The development has been fragmented in three modules: btsutils, bzutils and bug-triage.

&lt;span style="font-weight:bold;"&gt;II. btsutils&lt;/span&gt;

The btstutils is a python module to interact with the Debian Bug Track System. Currently, it can query the bts by bug number, package, source package, maintainer, submitter and usertag. For each bug, it returns bug number, package, summary, status, severity, submitter and tags. Support for returning usertags is under way.

Ths btsutils can use html or soap to access the bug data, and has also a backend-agnostic module wwith tries the best method and, if that fails, tries the other.

Steffano Zacchiroli has offered me to include the btsutils on the debian-bundle, a bundle of python modules for dealing with Debian infrastrcture. I'm very excited by this idea, and believe that if all or at least some of the Debian tools which interact with BTS end using a standardized module for access, this might end up being the major contribution of my GSoC project for the Debian community.

&lt;span style="font-weight:bold;"&gt;III. bzutils&lt;/span&gt;

The bzutils is similar to the bzutils, but is to interact with bugzillas instead. Currently it can do queries based on GNOME's bugzilla boogle and the more generic boolean charts. The later works (at least) on GNOME, KDE and standard bugzilla (i.e., landfill). For each bug, it returns bug id,
product, component, status, resolution, reporter, assignee, summary, priority and severity.

&lt;span style="font-weight:bold;"&gt;IV. bug-triage&lt;/span&gt;

The bug-triage is the Bug triaging and forwarding tool. It's being developed using python, gtk and glade.

Currently, it can query the BTS using any of the btsutils' supported fields (even though the usertags aren't really accessible through the interface yet). It can also launch one of the returned bug reports in a web browser.

Integration with bugzillas is under development. It already has an interface to establish links between Debian packages and upstream bugzilla's address, product and component. The next steps will be to add an upstream button in the toolbar/menu and make it show the bugs selected through these info, allowing the user to mark the bug as forwarded to one of them.

&lt;span style="font-weight:bold;"&gt;V. The future&lt;/span&gt;

After that, I'll work on these features (in no particular order): filling a  new upstream bug using the Debian bug data as a starting point, more advanced filtering options to filter the upstream bugs (such as filtering by words in the bug summary, and maybe through backtraces if available) and more ways to manipulate the BTS through the interface.

To be sincere, it seems this project won't be as advanced as I would like on the end of the GSoC. There are some new, unexpected (and good ^_^) things going on my life, which are taking some of the time I expected to dedicate to GSoC, which means I'll likely keep the current pace until the end of the project (I expected to increase it during July). Even so, I believe the
project is going on a good path, and I hope it'll be very useful for the Debian community.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-2526689086927958483?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/2526689086927958483/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=2526689086927958483' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/2526689086927958483'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/2526689086927958483'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/07/summer-of-code-mid-term-report.html' title='Summer of Code mid-term report'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-8477094866654742400</id><published>2007-07-05T18:31:00.000-03:00</published><updated>2007-07-05T18:41:12.829-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='btsutils'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Debbugs, SOAP and Usertags</title><content type='html'>A small bit of info that can be hard to find: It's possible to call debbugs' SOAP get_usertag function passing only an user as argument, to get all usertags set for this user and all bugs with each of these tags, like this:
&lt;pre&gt;
&gt;&gt;&gt; import SOAPpy
&gt;&gt;&gt; proxy = SOAPpy.SOAPProxy("http://bugs.debian.org/cgi-bin/soap.cgi", "Debbugs/SOAP/V1")
&gt;&gt;&gt; proxy.get_usertags("bts-link-upstream@lists.alioth.debian.org")
&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-8477094866654742400?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/8477094866654742400/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=8477094866654742400' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/8477094866654742400'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/8477094866654742400'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/07/debbugs-soap-and-usertags.html' title='Debbugs, SOAP and Usertags'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-3122161512412627041</id><published>2007-07-03T18:39:00.000-03:00</published><updated>2007-07-03T19:07:48.511-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='btsutils'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Debbugs SOAP</title><content type='html'>Following the hints by Bastian Venthur, which &lt;a href="http://blog.venthur.de/2007/07/01/python-osfork-webbrowser-and-debbugs/"&gt;answered&lt;/a&gt; my last post (thanks, Bastian), and some suspicious &lt;a href="http://lists.debian.org/debian-debbugs/2007/06/msg00055.html"&gt;mails&lt;/a&gt; to debian-debbugs, I've finally gotten to know that the debbugs' SOAP get_bugs is finally fixed. Of course, this means that btsutils has just got its query function implemented in SOAP besides the html parsing stuff.

Also great news on the debbugs' SOAP camp is that get_status now works on more than one bug per call. Yay! Debbugs people rocks. I'm not realy in place to ask something more drom these great folks, but it would be great if those cool features they keep adding were announced somewhere.

Now, the downside: Querying through SOAP is still quite slower than parsing the html. According to Python's timeit, getting a list with the bugs on all packages maintained by me takes about 17 seconds, while the same operation through HTML parsing takes about 10 seconds. I believe this differences comes from accessing the server one time on the HTML parsing and two times (get_bugs and get_status) on the SOAP.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-3122161512412627041?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/3122161512412627041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=3122161512412627041' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/3122161512412627041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/3122161512412627041'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/07/debbugs-soap.html' title='Debbugs SOAP'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-4019242672253759366</id><published>2007-07-01T18:37:00.000-03:00</published><updated>2007-07-01T19:04:31.755-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='bug-triage'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Exception handling on PyGTK applications</title><content type='html'>A feature I've been wanting to implement on bug-triage for some time now is to have unhandled exceptions shown in a gtk message dialog instead of getting lost on the terminal. And I've finally got it working now.

At first, I had some vague impression of having read about changing the default exception handler on Python. Maybe I've just mixed things up, but I couldn't find anything about that today (maybe it was Java?). Instead, I found out some information about Python decorators.

This is the first time I've seen anything like the decorators, and I must say this is a concept a bit hard to get used to, at least for me. Basically, if is a function that gets a callable (ie, a function or anything else that can be called) and returns another callable to be used in its place -- usually the original one with some nice extra.

I've created a python decorator to wrap the function call it decorates inside a try statement, whose except clause show some info about any exception it gets. The code can be seen on the &lt;a href="http://git.debian.org/?p=bug-triage/bug-triage.git;a=blob;f=src/lib/ui/gtk/msg_exception.py;h=d547d1f8da5e6a11068e1793496871a69392d804;hb=HEAD"&gt;bug-triage git repository&lt;/a&gt;.

On the linked file, &lt;tt&gt;errorhandler&lt;/tt&gt; is the decorator and &lt;tt&gt;msg_exception&lt;/tt&gt; takes an exception as argument and shows a message dialog. Applying the decorator to a function is simple, import it and add an &lt;tt&gt;@errorhandler&lt;/tt&gt; just before its declaration.

Some references on decorators:
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.python.org/dev/peps/pep-0318/"&gt;PEP 318 - Decorators for functions and methods&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/408937"&gt;Python Cookbook: Basic exception handling idiom using decorators&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://zephyrfalcon.org/weblog2/arch_e10_00610.html#e610"&gt;zephyrfalcon.org's "Decorate This"&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;PS: I just got really happy to discover that this blogger/blogspot draft autosaving stuff works...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-4019242672253759366?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/4019242672253759366/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=4019242672253759366' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4019242672253759366'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4019242672253759366'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/07/exception-handling-on-pygtk.html' title='Exception handling on PyGTK applications'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-4933327422816685759</id><published>2007-06-30T13:26:00.000-03:00</published><updated>2007-06-30T13:42:28.164-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Python, os.fork() and GSoC</title><content type='html'>This one was a bit tricker to find, so I'm going to post it here: if you use os.fork() on Python, you will want to use os._exit() on the child process, or it will clean stuff it shouldn't and you will have segfaults with doubled memory free.

That said, python's webbrowser module is quite useful; check it if you ever has to open a browser from a Python script/program. The only downside I see on it is exactly that it doesn't takes care of the forking stuff for you. I'm using it on bug-triage to show a bug report on the user browser.

Talking about GSoC, during the last week the Debian BTS was updated, breaking, between other things, btsutils' 0.1 version. The current development version of btsutils, which uses BeautifulSoup to parse the HTML stuff more realiable, wasn't affected by the update.

That's all for now, time to code.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-4933327422816685759?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/4933327422816685759/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=4933327422816685759' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4933327422816685759'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/4933327422816685759'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/06/python-osfork-and-gsoc.html' title='Python, os.fork() and GSoC'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-8865488011835993948</id><published>2007-06-24T10:38:00.001-03:00</published><updated>2007-06-24T10:43:06.740-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='bug-triage'/><category scheme='http://www.blogger.com/atom/ns#' term='bugtaf'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>bug-triage 0.1</title><content type='html'>Yet another GSoC release; it's the first release of the real tool this time. From the release announcement sent to &lt;a href="http://lists.alioth.debian.org/mailman/listinfo/bug-triage-devel"&gt;bug-triage-devel&lt;/a&gt;:

----

&lt;tt&gt;I'm pleased to announce the release of bug-triage 0.1.&lt;/tt&gt;

&lt;tt&gt;bug-triage is a tool to help triaging Debian bugs.&lt;/tt&gt;

&lt;tt&gt;Current features:&lt;/tt&gt;

&lt;tt&gt;  * Show all bugs which match a given bug number, source package,&lt;/tt&gt;
&lt;tt&gt;    package, maintainer or submitter&lt;/tt&gt;

&lt;tt&gt;  * Show details about one of the returned bugs on the user's&lt;/tt&gt;
&lt;tt&gt;    web browser&lt;/tt&gt;

&lt;tt&gt;The source code for bug-triage is available at&lt;/tt&gt;
&lt;tt&gt;&lt;a href="http://bug-triage.alioth.debian.org/"&gt;http://bug-triage.alioth.debian.org/&lt;/a&gt;&lt;/tt&gt;

&lt;tt&gt;Debian packages are being worked on and should be available soon.&lt;/tt&gt;&lt;tt&gt;&lt;/tt&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-8865488011835993948?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/8865488011835993948/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=8865488011835993948' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/8865488011835993948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/8865488011835993948'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/06/bug-triage-01.html' title='bug-triage 0.1'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-2601741975642936583</id><published>2007-06-18T22:11:00.000-03:00</published><updated>2007-06-18T22:41:47.506-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='bzutils'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>The world is full of (different) bugzillas....</title><content type='html'>... but the KDE's wins the strangeness award so far...

&lt;pre&gt;
&gt;&gt;&gt; import urllib2
&gt;&gt;&gt; opener = urllib2.build_opener()
&gt;&gt;&gt; f = opener.open("http://bugs.kde.org")
&gt;&gt;&gt; print f.read()

[...]

&amp;lt;h1&amp;gt;Page not found&amp;lt;/h1&amp;gt;

&amp;lt;p&amp;gt;KDE has switched to bugzilla. Please go to the &amp;lt;a href="/"&amp;gt;main page&amp;lt;/a&amp;gt;
to search for your bug.&amp;lt;/p&amp;gt;

[...]

&gt;&gt;&gt; opener.addheaders = [("User-agent", "bzutils")]
&gt;&gt;&gt; f = opener.open("http://bugs.kde.org")
&gt;&gt;&gt; print f.read()

[...]

&amp;lt;h1&amp;gt;KDE Bug Tracking System&amp;lt;/h1&amp;gt;
&amp;lt;p&amp;gt;This is KDE's bug tracking system which files details of wishes, bugs and crashes
reported by users and developers.  Each report is given a number, and is kept on file until it is
marked as having been dealt with. For participating you need a personal account which will gain
you the ability to post reports and comments as well as voting for specific reports and observe
development. You'll need to enable cookies for this site for staying logged in.&amp;lt;/p&amp;gt;
&lt;/pre&gt;

Questions:
1) Why does kde bugzilla require user-agent to work?
2) Why it doesn't return something more descriptive?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-2601741975642936583?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/2601741975642936583/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=2601741975642936583' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/2601741975642936583'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/2601741975642936583'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/06/world-is-full-of-different-bugzillas.html' title='The world is full of (different) bugzillas....'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-305564057864743211</id><published>2007-06-16T16:51:00.000-03:00</published><updated>2007-06-16T16:55:32.897-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>bzutils 0.1</title><content type='html'>Following with the Summer of Code, I've just released bzutils 0.1. The release announcement:

---

I'm pleased to announce the release of bzutils 0.1.

bzutils is a python module to interact with bugzilla servers.

Current features:

* Query bug reports through boogle (gnome's bugzilla search improvements)
or boolean charts.

* For each bug report, gets the following metadata: id, product, component,
status, resolution, reporter, assignee, summary, priority and severity

The source code for bzutils 0.1 is available at
&lt;a href="http://bug-triage.alioth.debian.org/"&gt;http://bug-triage.alioth.debian.org/&lt;/a&gt;

Debian packages are being worked on and should be available soon.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-305564057864743211?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/305564057864743211/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=305564057864743211' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/305564057864743211'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/305564057864743211'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/06/bzutils-01.html' title='bzutils 0.1'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-5447106379883664960</id><published>2007-06-14T22:08:00.000-03:00</published><updated>2007-06-14T22:21:17.266-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='btsutils'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>BeautifulSoup: Parsing html in Python</title><content type='html'>Parsing HTML to get the information you need can be a very hard task if you take complex pages like the ones generated by the Debian Bug Track System, which I need to do on my GSoC project while the debbugs people doesn't finish the SOAP interface. I was doing it through regular expressions, heavily based on the reportbug-ng code, when my mentor (thanks, Loïc) mentioned BeautifulSoup, a python module (with a strange name :P) to parse html.

If you ever need to parse html code in python, I strongly suggest you take a look on it. As usual with python stuff, it's very well documented, and it has a very good set of features which allows one to easily find anything inside a html document. It also has a xml module, which I haven't tried (yet).

BTW, did I already say I think GSoC is a great learning experience? Even I'm surprised by how fast I'm being able to apply GSoC-acquired knowledge in other activities, as I'm already using BeautifulSoup in another project.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-5447106379883664960?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/5447106379883664960/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=5447106379883664960' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5447106379883664960'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5447106379883664960'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/06/beautifulsoup-parsing-html-in-python.html' title='BeautifulSoup: Parsing html in Python'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-8750496137107514534</id><published>2007-06-14T07:18:00.001-03:00</published><updated>2008-06-01T22:08:24.195-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rant'/><title type='text'>Sao Paulo's Metro Strike</title><content type='html'>I live in São Paulo, The most important (IMO) city of Brazil. It's also the fifth most populous metropolitan region of the world.

One of the main public transportation systems in São Paulo is its metro, which was once regarded as a transportation city of major quality. Lately, however, it has been sinking. Fast. Very fast. It just can't keep up with the demand; the trains are getting more and more full, and the timings are getting more irregular as time passes.

If this isn't enough; the syndicate of metro workers seems to be formed by a bunch of selfish clowns. So, today, 3,3 million of people are without transport, because these clowns want 13% of income increase.

Now, where are the laws which state that this kind of public service can't be paralyzed? The government should just send these clowns back to the circus they fled from. This brings us to another topic: the pathetic laws that regulates public/government workers . They can just work (or not work) however they want, and can't be fired. The ultimate job security here is to get into a government job.

Finally, the solution for the (metro) problems: just privatize the damn thing already.

Well, rant done, so let's go on with our daily schedules (or what is possible of it without metro, for the paulistans)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-8750496137107514534?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/8750496137107514534/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=8750496137107514534' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/8750496137107514534'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/8750496137107514534'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/06/sao-paulos-metro-strike.html' title='Sao Paulo&apos;s Metro Strike'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-7199222238256554927</id><published>2007-06-10T09:56:00.000-03:00</published><updated>2007-06-10T10:11:03.200-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='btsutils'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>btsutils 0.1.1</title><content type='html'>I've recently released the first version of btsutils, a python module to interact with debbugs servers (such as the Debian Bug Tracking System). The btsutils is part of my Google Summer of Code project, the bug triage and forward tool.

Currnetly, the btsutils can query the bts based on bug number, source package, package, maintainer or submitter.

A Debian package of btsutils 0.1.1 is already waiting to be processed on the NEW queue.

Some useful links:
&lt;ul&gt;&lt;li&gt;&lt;a href="http://lists.alioth.debian.org/pipermail/bug-triage-devel/2007-June/000000.html"&gt;Release announce on bug-triage-devel&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://alioth.debian.org/frs/download.php/2000/btsutils-0.1.1.tar.gz"&gt;Source tarball&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-7199222238256554927?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/7199222238256554927/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=7199222238256554927' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7199222238256554927'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7199222238256554927'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/06/btsutils-011.html' title='btsutils 0.1.1'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-7737898184991361607</id><published>2007-06-02T18:28:00.000-03:00</published><updated>2007-06-02T23:24:22.055-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Python Soul</title><content type='html'>I find it very interesting how different programming languages have different styles. My Google Summer of Code project, the Bug Triage and Forward Tool, is my first Python software; and working on  it on the last few days, I've got the feeling that the way I've been using to structure the code doesn't fit very well with the way python packages/namespace works. I already wished to separate the project in three independent codebases, so I'll go ahead and do that. These codebases will be:
 &lt;ul&gt;&lt;li&gt;&lt;b&gt;python-btsutils&lt;/b&gt;: python module to interact with the Debian BTS / Debbugs servers&lt;/li&gt;
 &lt;li&gt;&lt;b&gt;python-bugzilla&lt;/b&gt;: python module to interact with Bugzilla&lt;/li&gt;
 &lt;li&gt;&lt;b&gt;bug-triage&lt;/b&gt;: The tool itself.
&lt;/li&gt;&lt;/ul&gt;BTW, I'm just loving python :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-7737898184991361607?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/7737898184991361607/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=7737898184991361607' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7737898184991361607'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/7737898184991361607'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/06/python-soul.html' title='Python Soul'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-5405152347504727968</id><published>2007-05-27T22:39:00.000-03:00</published><updated>2007-05-27T23:07:21.714-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='bugtaf'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Two weeks later...</title><content type='html'>It has been two weeks from my last post there... due to this end of semester being a bit thougher than the last ones in my university I couldn't do everything I wanted, particularly on the Summer of Code front.

&lt;span style="font-weight:bold;"&gt;Summer of Code&lt;/span&gt;

I believe this blog should be on SoC's planet by now. Hello, planet :) I hope the SoC can be a great time for all of the people involved.

Today, I finally got some time to make code to talk with debbugs (Debian's bug tracking system software). Thanks to the help of Don Armstrong on debian-debbugs, I have been able to get a python function to get informations from a given bug report through SOAP, but unfortunately it doesn't handle non-ascii characters. I've also made a similar function parsing the debbugs-generated HTML pages; but parsing html doesn't sound reliably at all. BTW, the code to parse HTML was mostly taken from Bastian Venthur's reportbug-ng; thanks Bastian. Free Software rocks because you don't have to rewrite the wheel.

&lt;span style="font-weight:bold;"&gt;Debian Packages&lt;/span&gt;

On the Debian Packaging front, libgda 3.0.1-1 was uploaded recently (thanks, Loïc Minier). Also, my patch to use libgcrypt instead of openssl was commited on libgnomedb upstream's repository (this time, the thanks goes to Vivien Malerba); I hope a new upstream release is made soon.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-5405152347504727968?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/5405152347504727968/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=5405152347504727968' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5405152347504727968'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/5405152347504727968'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/05/two-weeks-later.html' title='Two weeks later...'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-8634348829045213226</id><published>2007-05-12T12:27:00.000-03:00</published><updated>2007-05-12T12:52:01.661-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='bugtaf'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Bug Triage and Forward: The Beginning</title><content type='html'>I've got some free time over the last two days, so I've started to write some code for my Summer of Code project, the &lt;a href="http://bug-triage.alioth.debian.org/"&gt;Bug Triage and Forward Tool&lt;/a&gt; (bugtaf). As I had only a laptop without internet connection in hand, it wasn't possible to implement anything on the tracker integration part, so I've started the user interface.

This is the first python application I'm writing, and so far it seems to be a great language. The biggest difficulty I've had so far with it was to find how to call the parent class constructor. I got stuck there yesterday when making QueryBuilder (derived from gtk.Dialog), but today (with internet), I found the answear on &lt;a href="http://www.diveintopython.org/"&gt;Dive Into Python&lt;/a&gt;. It's pretty straightforward BTW, I guess I need to sleep more.

The pyGTK stuff is pretty simple; there, the background with C GTK programming helps a lot. The only quirk I had there is that calling set_border_width on a already packaged GtkBox (eg, on an Dialog's vbox) doesn't work :(

After all that, I've git pushed it to alioth, and git pulled on my desktop. Just then I remembered I had created an ui branch, as I wasn't sure on how my first try with python/pyGTK would be and wished to test the git branching. It took me some fight with git, but everything seems to be properly merged in the master branch now.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-8634348829045213226?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/8634348829045213226/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=8634348829045213226' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/8634348829045213226'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/8634348829045213226'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/05/bug-triage-and-forward-beginning.html' title='Bug Triage and Forward: The Beginning'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7788396377703623641.post-2495928562112672552</id><published>2007-05-06T22:22:00.000-03:00</published><updated>2007-06-02T18:51:47.622-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SoC2007'/><category scheme='http://www.blogger.com/atom/ns#' term='bugtaf'/><category scheme='http://www.blogger.com/atom/ns#' term='Debian'/><title type='text'>Playing with alioth and git</title><content type='html'>I've been playing a bit with &lt;a href="http://alioth.debian.org"&gt;alioth&lt;/a&gt;'s git support. I didn't find the full procedure to create a new git repository on alioth anywhere (of course, I didn't search a lot though), so I'll post how I did it here.

First of all, I asked for a git repository on the Site Admin &lt;a href="http://alioth.debian.org/tracker/?atid=200001&amp;group_id=1&amp;func=browse"&gt;Support Requests Tracker&lt;/a&gt;. They created a directory with the right permissions in git.debian.org/git/bug-triage (bug-triage is the name of my alioth project).

After that, I loged on git.debian.org through ssh (the ssh keys registered on alioth work fine) and initialized a new empty git repository there:

&lt;code&gt;
$ mkdir /git/bug-triage/bug-triage.git; cd /git/bug-triage/bug-triage.git
$ git --bare init-db --shared 
&lt;/code&gt;

Then, I logged out of git.debian.org and created a git repository on my machine, with an empty README file, and tested pushing it to git.debian.org, which worked fine:

&lt;code&gt;
$ mkdir ~/bug-triage; cd ~/bug-triage; touch README
$ git init
$ git add README
$ git commit -m "Add an empty README"
$ git push --all ssh://grm-guest@git.debian.org/git/bug-triage/bug-triage.git
&lt;/code&gt;

Finally, I've set an origin remote entry on my machine's repository, so that I can use push, fetch and pull without typing the git.debian.org path:

&lt;code&gt;
$ git remote add origin ssh://grm-guest@git.debian.org/git/bug-triage/bug-triage.git
&lt;/code&gt;

To test that, I've edited the README file and "commited" the change to git.debian.org.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7788396377703623641-2495928562112672552?l=grmontesino.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://grmontesino.blogspot.com/feeds/2495928562112672552/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7788396377703623641&amp;postID=2495928562112672552' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/2495928562112672552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7788396377703623641/posts/default/2495928562112672552'/><link rel='alternate' type='text/html' href='http://grmontesino.blogspot.com/2007/05/playing-with-alioth-and-git.html' title='Playing with alioth and git'/><author><name>Gustavo R. Montesino</name><uri>http://www.blogger.com/profile/09970441539611167278</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
