<?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-25639311</id><updated>2011-07-31T00:04:12.025-05:00</updated><category term='linux'/><category term='ruby'/><category term='spanish'/><category term='python programming'/><category term='facepalm.jpg'/><category term='movies'/><category term='php'/><category term='politics'/><category term='programming'/><category term='random'/><category term='sqlalchemy'/><category term='ubuntu software'/><category term='mexico'/><category term='games'/><category term='photos'/><category term='quiz'/><category term='copyright'/><category term='desktop'/><category term='python'/><category term='unix'/><category term='religion'/><category term='webdev'/><category term='ubuntu'/><category term='slashdot'/><category term='google'/><category term='elixir'/><title type='text'>import random</title><subtitle type='html'>Competing against entropy 4TW</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>rgz</name><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>75</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-25639311.post-5073275833876658874</id><published>2010-07-11T16:34:00.006-05:00</published><updated>2010-07-16T15:34:31.287-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><title type='text'>Exposición de artesanías</title><content type='html'>Recientemente fui a una exposición de artesanías. No es mucho pero quería mostrar algunas cosas:&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UxXsQIPZ5Lw/TEC-4e5mBZI/AAAAAAAAAFE/D2jFnWXkKjU/s1600/Imagen040.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 150px;" src="http://2.bp.blogspot.com/_UxXsQIPZ5Lw/TEC-4e5mBZI/AAAAAAAAAFE/D2jFnWXkKjU/s200/Imagen040.jpg" alt="" id="BLOGGER_PHOTO_ID_5494601422968587666" border="0" /&gt;&lt;/a&gt;Alebrijes, que en Mexicano quiere decir un montón de monstruos feos. Dos cosas me soprenden, una es la fértil imaginación que creo este ecosystema de criaturas mágicas. La segunda es, que tienen demasiado color, simplemente no son de mi gusto pero sin son algo interesantes.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/TEDAMITFoYI/AAAAAAAAAFM/zs4BKPesTBY/s1600/Imagen039.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 150px;" src="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/TEDAMITFoYI/AAAAAAAAAFM/zs4BKPesTBY/s200/Imagen039.jpg" alt="" id="BLOGGER_PHOTO_ID_5494602860010512770" border="0" /&gt;&lt;/a&gt;Llamas. Que rayos están haciendo aquí? Las llamas no son de México o si?&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UxXsQIPZ5Lw/TEDAcal-QvI/AAAAAAAAAFU/J0oyI0WU7B8/s1600/Imagen038.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 150px;" src="http://2.bp.blogspot.com/_UxXsQIPZ5Lw/TEDAcal-QvI/AAAAAAAAAFU/J0oyI0WU7B8/s200/Imagen038.jpg" alt="" id="BLOGGER_PHOTO_ID_5494603139799466738" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Koopas. O bueno eso fue lo que pensé, instintivamente, que quieren Mario Bros. fue mi infancia!&lt;br /&gt;&lt;br /&gt;Es todo, las imágenes tienen muy poca calidad. También había collares de caballitos de mar disecados y chapulines adobados pero ya no les tome fotos.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-5073275833876658874?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/5073275833876658874/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=5073275833876658874' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5073275833876658874'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5073275833876658874'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2010/07/exposicion-de-artesanias.html' title='Exposición de artesanías'/><author><name>rgz</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_UxXsQIPZ5Lw/TEC-4e5mBZI/AAAAAAAAAFE/D2jFnWXkKjU/s72-c/Imagen040.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-25639311.post-2114890514952310503</id><published>2010-04-26T15:25:00.004-05:00</published><updated>2010-04-26T15:54:07.870-05:00</updated><title type='text'>Crouching Trigger Hidden Warrant Void?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.acteck.com/web/prod_dt.php?ITEM_NO=UEGA-024"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 183px; height: 184px;" src="http://www.acteck.com/web/img/spec/uega-024.jpg" alt="" border="0" /&gt;&lt;/a&gt;Aparentemente hay pocas posibilidades de recuperar o cambiar este control de Acteck (click in the picture) que se me rompió a los dos meses de uso.&lt;br /&gt;&lt;br /&gt;Tiene una excelente textura antiderrape pese a sus colores chillones a lo s que finalmente le agarre cariño (lo bautise spiderman).&lt;br /&gt;&lt;br /&gt;Sin embargo los botones 6 y 8 (R1 y R2 en un Dualshock) se terminaron venciendo por el uso, dado que no cumplio ni con el año de garantia pensaba devolverlo a la tienda.&lt;br /&gt;&lt;br /&gt;El personal de &lt;a href="http://www.pcenlinea.com/"&gt;PCenlinea&lt;/a&gt; fue muy amable y me prometieron hacer llegar la queja a acteck, sin embargo no me dieron esperanzas de que acteck me escuchara.&lt;br /&gt;&lt;br /&gt;Este es el segundo control que les compro, el otro es tambien un acteck, un &lt;a href="http://www.acteck.com/web/prod_dt.php?ITEM_NO=UEGA-028"&gt;AGJ-3200&lt;/a&gt; compatible con xbox.&lt;br /&gt;&lt;br /&gt;Voy a usarlo más seguido para ver si se descompone tan rapido como el anterior aunque este es un poco más solido.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-2114890514952310503?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/2114890514952310503/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=2114890514952310503' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/2114890514952310503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/2114890514952310503'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2010/04/crouching-trigger-hidden-warrant-void.html' title='Crouching Trigger Hidden Warrant Void?'/><author><name>rgz</name><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-25639311.post-197684245752902054</id><published>2010-04-14T00:47:00.004-05:00</published><updated>2010-07-16T15:12:30.887-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='quiz'/><title type='text'>My color is... wait...</title><content type='html'>Very often...&lt;br /&gt;&lt;p style="font-family: arial;" align="center"&gt;&lt;a href="http://www.wizards.com/magic/playmagic/whatcolorareyou.asp" target="_blank"&gt;&lt;img src="http://www.wizards.com/magic/images/whatcolor_iswhite.jpg" border="0" /&gt;&lt;br /&gt;&lt;b&gt;Take the Magic: The Gathering 'What Color Are You?' Quiz.&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;...quizzes are all wrong. I don't think any of the available answers really applied to me, nor I think they are consistent, but there you go.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-197684245752902054?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/197684245752902054/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=197684245752902054' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/197684245752902054'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/197684245752902054'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2010/04/my-color-is-wait.html' title='My color is... wait...'/><author><name>rgz</name><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-25639311.post-765108863434488651</id><published>2010-03-10T21:06:00.003-06:00</published><updated>2010-07-16T15:12:07.494-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>DreamPie</title><content type='html'>&lt;a href="http://dreampie.sourceforge.net/"&gt;DreamPie&lt;/a&gt;, check it out it &lt;span style="font-weight: bold;"&gt;is&lt;/span&gt; as good as they put it. It is &lt;span style="font-weight: bold;"&gt;the&lt;/span&gt; best python shell ever and I'm intent on using it for all my local python tinkering.&lt;br /&gt;&lt;br /&gt;But... if only it worked over ssh! These days I spend 99% of the time working remotely meaning I can't use this gem. Also, locally it still doesn't beat ipython's &lt;span style="font-style: italic;"&gt;"sh" &lt;/span&gt;profile, so for the time being, I'll be using ipython as my main shell as usual but for local stuff I completely recommend it over anything including the incredible ipython and that is hard to accomplish.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-765108863434488651?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/765108863434488651/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=765108863434488651' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/765108863434488651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/765108863434488651'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2010/03/dreampie.html' title='DreamPie'/><author><name>rgz</name><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-25639311.post-5755816136767460993</id><published>2010-03-10T20:32:00.004-06:00</published><updated>2010-04-14T00:41:11.052-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webdev'/><title type='text'>Stupid, useful web apps</title><content type='html'>Sometimes I'm amazed by the fact that there are some web applications for very simple stuff one would assume one can do without, and this time I'm gonna post about two of them.&lt;br /&gt;&lt;br /&gt;The firt one is this the &lt;a href="http://www.nakedalarmclock.com/"&gt;naked alarm clock&lt;/a&gt;. I'm not sure what's so naked about it, it's just a simple, yet highly configurable alarm clock for when you don't have a timer at hand.&lt;br /&gt;&lt;br /&gt;The second one is more surprising &lt;a href="http://www.metronomeonline.com/"&gt;Metronome Online&lt;/a&gt; is exactly what reads on the tin. So if you are trying to play some instrument or, in my case a game, then that's the perfect tool to keep your rhythm. I'm honestly surprised, now I have a metronome whenever I have a net connection.&lt;br /&gt;&lt;br /&gt;The game I was playing was "&lt;a href="http://armorgames.com/play/4918/the-company-of-myself"&gt;The Company of myself&lt;/a&gt;" an excellent flash game I recommend to all of you. Only one level actually required timing enough for me to seek a metronome, but when you get that level you'll have just the tool for the work.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-5755816136767460993?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/5755816136767460993/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=5755816136767460993' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5755816136767460993'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5755816136767460993'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2010/03/stupid-useful-web-apps.html' title='Stupid, useful web apps'/><author><name>rgz</name><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-25639311.post-8524757155989983009</id><published>2010-03-10T18:46:00.013-06:00</published><updated>2010-03-10T20:32:02.533-06:00</updated><title type='text'>the bisigi project</title><content type='html'>I haven't feel like updating recently but I though I'd post about what desktop themes I'm currently using. So I decided to install all the themes and give each of them a try for about a week. And post about them.&lt;br /&gt;&lt;br /&gt;Except I forgot about posting so, here's everything in one post.&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://www.bisigi-project.org/"&gt;bisigi project&lt;/a&gt; is a set of free, high quality gnome themes. Visit the &lt;a href="http://www.bisigi-project.org/?page_id=6&amp;amp;lang=en"&gt;themes page&lt;br /&gt;&lt;/a&gt; to see some gorgeous thumbnails.&lt;br /&gt;&lt;br /&gt;And well this is my experience with them so far...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/S5hGSiE7RiI/AAAAAAAAAC4/aPKqSYmwmfk/s1600-h/thb_screenshot_003.png"&gt;&lt;img style="cursor: pointer; width: 200px; height: 112px;" src="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/S5hGSiE7RiI/AAAAAAAAAC4/aPKqSYmwmfk/s200/thb_screenshot_003.png" alt="" id="BLOGGER_PHOTO_ID_5447181033503671842" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Airlines&lt;br /&gt;&lt;/div&gt;This one is one of the best in the bisigi project. The most exciting part about the theme is that all buttons are rounded, that really changes the feeling of the theme, it's one I'd use again.&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/S5hHXqv_j3I/AAAAAAAAADA/5XjmiWy-K1A/s1600-h/thb_screenshot_005.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 112px;" src="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/S5hHXqv_j3I/AAAAAAAAADA/5XjmiWy-K1A/s200/thb_screenshot_005.png" alt="" id="BLOGGER_PHOTO_ID_5447182221242765170" border="0" /&gt;&lt;/a&gt;aquadreams&lt;br /&gt;&lt;/div&gt;A Mac-ish theme, like aqua, but green.&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/S5hLuOG54ZI/AAAAAAAAADo/GWkcv4qqmK0/s1600-h/thb_screenshot_014.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 112px;" src="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/S5hLuOG54ZI/AAAAAAAAADo/GWkcv4qqmK0/s200/thb_screenshot_014.png" alt="" id="BLOGGER_PHOTO_ID_5447187006737736082" border="0" /&gt;&lt;/a&gt;Tropical&lt;br /&gt;&lt;/div&gt;A gray theme with a solid feel, a dark bars and green highlights.&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/S5hHyw5uUQI/AAAAAAAAADI/FIsNlwoOA0Y/s1600-h/thb_screenshot_007.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 112px;" src="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/S5hHyw5uUQI/AAAAAAAAADI/FIsNlwoOA0Y/s200/thb_screenshot_007.png" alt="" id="BLOGGER_PHOTO_ID_5447182686750658818" border="0" /&gt;&lt;/a&gt;balanzan&lt;br /&gt;&lt;/div&gt;This theme just screams "ubuntu" in general and "koala" in particular, it has a very similar feeling to the original koala themes but doens't beat neither humanity nor dust sand. So it's not a very good impression at all, nice wallpaper tho.&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_UxXsQIPZ5Lw/S5hKtP2kSBI/AAAAAAAAADQ/UF4oQytn6hw/s1600-h/thb_screenshot_008.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 112px;" src="http://3.bp.blogspot.com/_UxXsQIPZ5Lw/S5hKtP2kSBI/AAAAAAAAADQ/UF4oQytn6hw/s200/thb_screenshot_008.png" alt="" id="BLOGGER_PHOTO_ID_5447185890514585618" border="0" /&gt;&lt;/a&gt;Exotic&lt;br /&gt;&lt;/div&gt;This is just like tropical but with orange highlights, at this point I'm starting to get bored.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/S5hLETRQS2I/AAAAAAAAADY/TL_BZk_fwxY/s1600-h/thb_screenshot_010.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 112px;" src="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/S5hLETRQS2I/AAAAAAAAADY/TL_BZk_fwxY/s200/thb_screenshot_010.png" alt="" id="BLOGGER_PHOTO_ID_5447186286568819554" border="0" /&gt;&lt;/a&gt;Ellanna&lt;br /&gt;&lt;/div&gt;And this one is just like aquadreams but pink, I do have to mention the attention to detail, look at the ladybugs in the icon theme.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/S5hSN_JOeNI/AAAAAAAAAD4/Mi9lsbLj02c/s1600-h/screenshot_011.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 158px; height: 131px;" src="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/S5hSN_JOeNI/AAAAAAAAAD4/Mi9lsbLj02c/s200/screenshot_011.png" alt="" id="BLOGGER_PHOTO_ID_5447194149546522834" border="0" /&gt;&lt;/a&gt;Isn't that cute? But it's just not for me.&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_UxXsQIPZ5Lw/S5hLUpoGRWI/AAAAAAAAADg/vQi9fSj5prk/s1600-h/thb_screenshot_013.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 112px;" src="http://3.bp.blogspot.com/_UxXsQIPZ5Lw/S5hLUpoGRWI/AAAAAAAAADg/vQi9fSj5prk/s200/thb_screenshot_013.png" alt="" id="BLOGGER_PHOTO_ID_5447186567448118626" border="0" /&gt;&lt;/a&gt;sunrise&lt;br /&gt;&lt;/div&gt;Another theme that screams "ubuntu", another nice wallpaper, another too much orange theme. The engine has a nice murrina feel about it, it definitively is murrina based but subdued. I may use this one again but with different colors.&lt;br /&gt;&lt;br /&gt;I haven't tried Wild-Shine long enough but it is basically Tropical with yellow highlights. Well I'll post more once I get tired of Wild Shine.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8524757155989983009?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8524757155989983009/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8524757155989983009' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8524757155989983009'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8524757155989983009'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2010/03/bisigi-project.html' title='the bisigi project'/><author><name>rgz</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_UxXsQIPZ5Lw/S5hGSiE7RiI/AAAAAAAAAC4/aPKqSYmwmfk/s72-c/thb_screenshot_003.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-25639311.post-1415431819586992515</id><published>2009-12-26T13:03:00.002-06:00</published><updated>2009-12-26T13:05:40.281-06:00</updated><title type='text'>Adult ADHD Test</title><content type='html'>&lt;a href="http://psychcentral.com/quizzes/adultaddquiz.htm"&gt;&lt;br /&gt;&lt;img src="http://psychcentral.com/images/adhd_serious.gif" width="200" height="90" border="0"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-1415431819586992515?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/1415431819586992515/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=1415431819586992515' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/1415431819586992515'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/1415431819586992515'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/12/adult-adhd-test.html' title='Adult ADHD Test'/><author><name>rgz</name><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-25639311.post-2496555094436253831</id><published>2009-12-18T22:42:00.002-06:00</published><updated>2009-12-18T22:48:43.792-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>Yggdrasil Linux</title><content type='html'>Recently I changed my hostname, that is, the host name of my desktop machine for something shorter.&lt;br /&gt;&lt;br /&gt;I have been using 'yggdrasil' as a hostname for 4 years, I got it from the universal computer in Ah Megami-sama, so I googled to see if anyone else was using or refering to their linux box as yggdrasil, it turns out it is a popular name for a linux machine, so much that there is a distribution named just like that, &lt;a href="http://en.wikipedia.org/wiki/Yggdrasil_Linux/GNU/X"&gt;Yggdrasil Linux&lt;/a&gt;, small world indeed.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-2496555094436253831?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/2496555094436253831/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=2496555094436253831' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/2496555094436253831'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/2496555094436253831'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/12/yggdrasil-linux.html' title='Yggdrasil Linux'/><author><name>rgz</name><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-25639311.post-8770393972297886936</id><published>2009-12-11T23:17:00.000-06:00</published><updated>2009-12-11T23:17:00.697-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Object/Relational Mapping is the Vietnam of Computer Science</title><content type='html'>Let me add myself to the multitude of people who found &lt;a href="http://blogs.tedneward.com/2006/06/26/The+Vietnam+Of+Computer+Science.aspx"&gt;this&lt;/a&gt; enlightening:&lt;br /&gt;&lt;br /&gt;"Object/Relational Mapping is the Vietnam of Computer Science. It represents a quagmire which starts well, gets more complicated as time passes, and before long entraps its users in a commitment that has no clear demarcation point, no clear win conditions, and no clear exit strategy." -- &lt;a href="http://blogs.tedneward.com/2006/06/26/The+Vietnam+Of+Computer+Science.aspx"&gt;Ted Neward&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8770393972297886936?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8770393972297886936/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8770393972297886936' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8770393972297886936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8770393972297886936'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/12/objectrelational-mapping-is-vietnam-of.html' title='Object/Relational Mapping is the Vietnam of Computer Science'/><author><name>rgz</name><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-25639311.post-1202536776136356275</id><published>2009-12-03T22:53:00.002-06:00</published><updated>2009-12-03T22:56:59.497-06:00</updated><title type='text'>Software Developer Personality Type</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_UxXsQIPZ5Lw/SxiWiooADFI/AAAAAAAAACo/Im1O8SUinZQ/s1600-h/compromise.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 223px; height: 320px;" src="http://1.bp.blogspot.com/_UxXsQIPZ5Lw/SxiWiooADFI/AAAAAAAAACo/Im1O8SUinZQ/s320/compromise.jpg" alt="" id="BLOGGER_PHOTO_ID_5411240474050563154" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Did &lt;a href="http://pro20.sgizmo.com/survey.php?SURVEY=OBFQN1IMT9AOQWMAM5BURQDW4Z2ODF-207415-54673790"&gt;this one&lt;/a&gt; and got this:&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Given the choice, The Pragmatist appreciates clear, comprehensive objectives and strategies. However, The Pragmatists accepts that this is not always possible and will accept uncertainty where necessary. The Pragmatist likes to work things out in advance, but only when this planning is legitimate - not just a convenient fiction for the sole purpose of satisfying a manager or sticking to a method. &lt;/p&gt;  &lt;p&gt;In a software development project, The Pragmatist expects to make the big decisions up front, but is content to work out the details while writing the code. He or she views methods, models and frameworks as tools to be used as long as they help and abandoned when they cease to be useful. The Pragmatist will say “don’t fix what’s not broken,” but only as long as it’s really not broken! The Pragmatist understands where the project is not only by referring to the plan, but also by considering the project’s goals and feedback from stakeholders (e.g., users, marketing).&lt;/p&gt;  &lt;p&gt;The Pragmatist may experience conflict with team members who either 1) want to stick with plans or methods even if they don’t seem to be working, or 2) prefer to jump straight into coding without any planning at all.&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-1202536776136356275?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/1202536776136356275/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=1202536776136356275' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/1202536776136356275'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/1202536776136356275'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/12/software-developer-personality-type.html' title='Software Developer Personality Type'/><author><name>rgz</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_UxXsQIPZ5Lw/SxiWiooADFI/AAAAAAAAACo/Im1O8SUinZQ/s72-c/compromise.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-25639311.post-9002263526690169647</id><published>2009-11-18T19:10:00.003-06:00</published><updated>2009-11-18T20:02:01.138-06:00</updated><title type='text'>Quick template update</title><content type='html'>Ok I made a quick template update, specifically I removed the atheist bus banner because it felt kinda old, and the sense about science petition because I don't have readers from the UK and the Video Games Live button because I'm never going to get there. I also changed the ubuntu button for an official one hosted at ubuntu.com and switched to the small version of the ubuntu counter.&lt;br /&gt;&lt;br /&gt;Getting ready to post some more later...&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://www.videogameslive.com"&gt;&lt;img border="0" alt="VGL ticket" src="http://i63.photobucket.com/albums/h143/rgzz/ticketmaster_small_final.gif" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.senseaboutscience.org.uk/freedebate"&gt;&lt;img border="0" width="180" alt="free debate" src="http://www.senseaboutscience.org.uk/images/sas-libel-2.png" height="66" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-9002263526690169647?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/9002263526690169647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=9002263526690169647' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/9002263526690169647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/9002263526690169647'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/11/quick-template-update.html' title='Quick template update'/><author><name>rgz</name><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-25639311.post-49231262890360356</id><published>2009-11-02T22:42:00.007-06:00</published><updated>2009-11-02T23:20:46.698-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>[SOLVED] Compiz window title bars missing.</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_UxXsQIPZ5Lw/Su-2LMXpDsI/AAAAAAAAACQ/2UkFNsrdeoI/s1600-h/screenshot_012.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 180px;" src="http://3.bp.blogspot.com/_UxXsQIPZ5Lw/Su-2LMXpDsI/AAAAAAAAACQ/2UkFNsrdeoI/s320/screenshot_012.png" alt="" id="BLOGGER_PHOTO_ID_5399734781655715522" border="0" /&gt;&lt;/a&gt;&lt;span style="color: rgb(102, 102, 102);font-size:85%;" &gt;Yes, orange, got any problems?&lt;/span&gt;&lt;/div&gt;Another post I should have made ages ago, a week and a half to be precise. I upgraded to the new Ubuntu 9.10 and I haaaappy, lot's of new software in the repos and a lot of shiny polish and also the first time I actually feel like sticking with the default theme for once!&lt;br /&gt;&lt;br /&gt;How ever I ran into an issues with compiz, either I could not enable it at all or the window decorations ( that's the name of the title bars for you). In order to solve this I had to change a setting in compiz and that means installing &lt;span style="font-weight: bold;"&gt;Compiz Settings Manager&lt;/span&gt;. Just go to the Ubuntu Software Center and install it if you haven't installed it yet.&lt;br /&gt;&lt;br /&gt;Now open it and look for "Window Decorations"&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/Su-6LcxVGiI/AAAAAAAAACY/VYaUW2aUVbI/s1600-h/screenshot_005.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px; height: 112px;" src="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/Su-6LcxVGiI/AAAAAAAAACY/VYaUW2aUVbI/s200/screenshot_005.png" alt="" id="BLOGGER_PHOTO_ID_5399739184104938018" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;There change the command to "compiz --replace"&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UxXsQIPZ5Lw/Su-6zUmz8CI/AAAAAAAAACg/W9gQ9ql7xNY/s1600-h/screenshot_008.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px; height: 112px;" src="http://2.bp.blogspot.com/_UxXsQIPZ5Lw/Su-6zUmz8CI/AAAAAAAAACg/W9gQ9ql7xNY/s200/screenshot_008.png" alt="" id="BLOGGER_PHOTO_ID_5399739869108105250" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;That solved my problems. Good luck!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-49231262890360356?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/49231262890360356/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=49231262890360356' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/49231262890360356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/49231262890360356'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/11/solved-compiz-window-title-bars-missing.html' title='[SOLVED] Compiz window title bars missing.'/><author><name>rgz</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_UxXsQIPZ5Lw/Su-2LMXpDsI/AAAAAAAAACQ/2UkFNsrdeoI/s72-c/screenshot_012.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-25639311.post-8488989815273834821</id><published>2009-11-02T20:47:00.015-06:00</published><updated>2009-11-02T23:18:09.638-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='desktop'/><category scheme='http://www.blogger.com/atom/ns#' term='photos'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>New Monitor</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UxXsQIPZ5Lw/Su-lzlPKeSI/AAAAAAAAABY/zWAroyuvqBA/s1600-h/P1000601ed.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_UxXsQIPZ5Lw/Su-lzlPKeSI/AAAAAAAAABY/zWAroyuvqBA/s320/P1000601ed.JPG" alt="" id="BLOGGER_PHOTO_ID_5399716783828138274" border="0" /&gt;&lt;/a&gt;&lt;span style="color: rgb(102, 102, 102);font-size:85%;" &gt;I'm not overcompensating for anything, I swear!&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;I should have posted this a week ago but here it is, this is my new monitor.&lt;br /&gt;&lt;br /&gt;Nice isn't it? I've always wanted an LCD monitor and finally got one and a big one to boot!&lt;br /&gt;&lt;br /&gt;The weird thing about this monitor is that it is changing the way I use the desktop, which in a way is good. On one hand some applications with a lot of panels that used to be a pain to use now are really easy to use! For instance Filezilla is finally usable with all panels rolled out.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UxXsQIPZ5Lw/Su-mHkQaJLI/AAAAAAAAABg/wYllL2hZkfQ/s1600-h/screenshot_009.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 180px;" src="http://2.bp.blogspot.com/_UxXsQIPZ5Lw/Su-mHkQaJLI/AAAAAAAAABg/wYllL2hZkfQ/s320/screenshot_009.png" alt="" id="BLOGGER_PHOTO_ID_5399717127162307762" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;The only way to file! (transfering... protocoling...)&lt;/span&gt;&lt;/span&gt; &lt;/div&gt;&lt;br /&gt;On the other hand I find myself using unmaximized windows most of the time.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_UxXsQIPZ5Lw/Su-m9Lo5v3I/AAAAAAAAABo/Tw4OR-d4_hE/s1600-h/screenshot_010.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 180px;" src="http://3.bp.blogspot.com/_UxXsQIPZ5Lw/Su-m9Lo5v3I/AAAAAAAAABo/Tw4OR-d4_hE/s320/screenshot_010.png" alt="" id="BLOGGER_PHOTO_ID_5399718048267091826" border="0" /&gt;&lt;/a&gt;&lt;span style="color: rgb(102, 102, 102);font-size:85%;" &gt;Gee thanks and it only took you 4 years...&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;The only thing I kind of lament is that most of my huge wallpaper collection no longer matches my desktop. Any way I was meaning to delete most of them, except the lame ones I made, here are two of my first wallpapers that didn't involve MS Paint, actually I'm just showing off the GIMP in wide screen.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UxXsQIPZ5Lw/Su-nuJi0nvI/AAAAAAAAABw/zbKqv4Cf0D4/s1600-h/screenshot_011.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 180px;" src="http://2.bp.blogspot.com/_UxXsQIPZ5Lw/Su-nuJi0nvI/AAAAAAAAABw/zbKqv4Cf0D4/s320/screenshot_011.png" alt="" id="BLOGGER_PHOTO_ID_5399718889518309106" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;andnothingofvaluewaslost&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;But I guess now I'm going to start appreciating widescreen walls. A less obvious problem is that I can't hang key-chains on my monitor anymore, nor I can put any plushies  on top of it either, which means that I'm storing away some of my toys. For instance, these guys  used to hang in the first row, you are out.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UxXsQIPZ5Lw/Su-qBnbCFWI/AAAAAAAAACA/LVFdU0sIADc/s1600-h/P1000604ed.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_UxXsQIPZ5Lw/Su-qBnbCFWI/AAAAAAAAACA/LVFdU0sIADc/s320/P1000604ed.JPG" alt="" id="BLOGGER_PHOTO_ID_5399721422979470690" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Not cool brother, not cool at all&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;And only one of these is gonna make it.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_UxXsQIPZ5Lw/Su-plV8OC-I/AAAAAAAAAB4/HnLcTUWWdlY/s1600-h/P1000603ed.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_UxXsQIPZ5Lw/Su-plV8OC-I/AAAAAAAAAB4/HnLcTUWWdlY/s320/P1000603ed.JPG" alt="" id="BLOGGER_PHOTO_ID_5399720937250491362" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;From right to left, Burro the eevee, Pietrr the giraffe and Kirby the kirby.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;Kuro Mokona rules supreme however, I can't dump him or he will tell Yuuko!&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_UxXsQIPZ5Lw/Su-qB2zeK2I/AAAAAAAAACI/1e7w6yD9JiE/s1600-h/P1000608ed.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_UxXsQIPZ5Lw/Su-qB2zeK2I/AAAAAAAAACI/1e7w6yD9JiE/s320/P1000608ed.JPG" alt="" id="BLOGGER_PHOTO_ID_5399721427108506466" border="0" /&gt;&lt;/a&gt;&lt;span style="color: rgb(102, 102, 102);font-size:85%;" &gt;Also, bring more sake!&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;Wait was this a &lt;a href="http://myanimelist.net/forum/?topicid=23255"&gt;guy or a girl&lt;/a&gt;? Actually the official answer is "no".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8488989815273834821?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8488989815273834821/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8488989815273834821' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8488989815273834821'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8488989815273834821'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/11/new-monitor.html' title='New Monitor'/><author><name>rgz</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_UxXsQIPZ5Lw/Su-lzlPKeSI/AAAAAAAAABY/zWAroyuvqBA/s72-c/P1000601ed.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-25639311.post-3440307126651472458</id><published>2009-10-13T17:04:00.001-05:00</published><updated>2009-10-13T17:04:29.015-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>directhex deleted my comments</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I had two long running discussions with &lt;a href='http://www2.apebox.org/wordpress/'&gt;Microsoft apologist&lt;/a&gt; directhex, one about whether &lt;a href='http://www2.apebox.org/wordpress/rants/124/'&gt;mono should be used for new applications&lt;/a&gt; and one about whether &lt;a href='http://www2.apebox.org/wordpress/rants/93/'&gt;the BSD license is really more free than the GPL&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;We agreed in some terms and disagreed in others but I respected his honesty, I really though he was being honest and seriously wanted to discuss the matters. Then he deleted my comments.&lt;br/&gt;&lt;br/&gt;Way to loose my respect directhex, and yes I respected you even tough I thought you suffered a heavy case of double standarism. Now I know exactly what kind of person you are.&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=46335eec-9901-8c1a-8fde-884055f0bcb9' alt='' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-3440307126651472458?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/3440307126651472458/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=3440307126651472458' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/3440307126651472458'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/3440307126651472458'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/10/directhex-deleted-my-comments.html' title='directhex deleted my comments'/><author><name>rgz</name><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-25639311.post-4003335748898635104</id><published>2009-10-09T19:46:00.003-05:00</published><updated>2009-10-13T00:46:36.959-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><title type='text'>Atheist clubs, where?</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Where? Chicago Illinois, USA! &lt;a href="http://www.samharris.org/site/full_text/atheist-clubs-are-springing-up-in-american-high-schools-warns-head-of-us-ca/"&gt;Sam Harris reports that the Cardinal Francis George reports&lt;/a&gt; that Atheist clubs are appearing in high schools.&lt;br /&gt;&lt;br /&gt;The spin is that they call us fundamentalist, evangelical and intolerant. Cool! We managed to turn fundamentalist and evangelical into bad words, a few decades ago they'll be proud of calling themselves fundamentalist or evangelicals.&lt;br /&gt;&lt;br /&gt;What we are not is intolerant, we are not putting religious messages in your money, we are not forcing you to pledge "under god" nor  are we forcing your kids to pray at what ever you think we worship. We just ask for equal treatment and we ask you to get your religion out of the science classroom.&lt;br /&gt;&lt;div class="zemanta-pixie"&gt;&lt;img src="http://img.zemanta.com/pixy.gif?x-id=6df22552-a6ba-82e2-94a9-89982c0aeb37" alt="" class="zemanta-pixie-img" /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-4003335748898635104?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/4003335748898635104/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=4003335748898635104' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/4003335748898635104'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/4003335748898635104'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/10/atheist-clubs-where_09.html' title='Atheist clubs, where?'/><author><name>rgz</name><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-25639311.post-8757786408892536856</id><published>2009-10-06T19:00:00.002-05:00</published><updated>2009-10-13T00:45:36.148-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Miguel de Icaza, Microsoft Apologist</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;You know I read a lot and I mean a lot on MS corruption and the hypocrisy of Microsoft apologists. And I'm not only reading one side, I try to listen to them, resisting the pain, and it's simply clear they are out there just to spread disinformation in a concerted attempt to prop Microsoft and divert attention from the Free Software movement and if they can diss RMS in they process you can bet they'll try.&lt;br /&gt;&lt;br /&gt;In the end it wasn't working so they flip floped and now pretend to be a bastion of idealism (sure...) with a new fake open source foundation/corporation.&lt;br /&gt;&lt;br /&gt;I'm not making this up, Miguel himself comments that Microsoft actually founded two organizations with the same name, one comercial, one non-profit, both Microsoft Staffed.&lt;br /&gt;&lt;br /&gt;Really I can't gather enough energy to recap all I read so I'll just link to this excelent article which condensates the whole matter in a couple pages of text: &lt;a href="http://www.groklaw.net/article.php?story=20090927151401988"&gt;On Mono, Miguel, Stallman and Fusion with Microsoft&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="zemanta-pixie"&gt;&lt;img src="http://img.zemanta.com/pixy.gif?x-id=c6d895b2-d7d0-8887-9e46-7267941c09dd" alt="" class="zemanta-pixie-img" /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8757786408892536856?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8757786408892536856/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8757786408892536856' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8757786408892536856'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8757786408892536856'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/10/miguel-de-icaza-microsoft-apologist.html' title='Miguel de Icaza, Microsoft Apologist'/><author><name>rgz</name><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-25639311.post-8059791951887695752</id><published>2009-09-14T21:08:00.006-05:00</published><updated>2009-10-13T00:47:37.659-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python programming'/><title type='text'>Class Constructor Decorator</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;While Python is already very terse there are still some repetition that can be worked out. I'm going to talk about class constructors here. Many a class init method is little else but adding the init parameters as instance attributes, I have written a constructor that takes care of that, this preliminary version dumps everything as public attributes in the instance. IFF I need more customization, I'll write the full implementation I was meaning yesterday:&lt;br /&gt;&lt;br /&gt;constructor.py&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;#!/usr/bin/env python&lt;br /&gt;"""&lt;br /&gt;@author rgz&lt;br /&gt;A decorator for converting the constructor arguments into instance attributes automatically.&lt;br /&gt;"""&lt;br /&gt;import decorator&lt;br /&gt;import inspect&lt;br /&gt;@decorator.decorator&lt;br /&gt;def constructor(init, *args, **kwargs):&lt;br /&gt;"""Converts the constructor arguments into instance attributes automatically"""&lt;br /&gt;names, args_name, kwargs_name, defaults = inspect.getargspec(init)&lt;br /&gt;assert len(names) &amp;gt; 0, "Methods should have at least 1 argument!"&lt;br /&gt;for i, name in enumerate(names):&lt;br /&gt;    if i:&lt;br /&gt;        setattr(self, name, args[i])&lt;br /&gt;    else:&lt;br /&gt;        self = args[i]&lt;br /&gt;if args_name:&lt;br /&gt;    setattr(self, args_name, args[i + 1:])&lt;br /&gt;if kwargs_name:&lt;br /&gt;    setattr(self, kwargs_name, kwargs)&lt;br /&gt;init(*args, **kwargs)&lt;br /&gt;__all__ = ['constructor']&lt;br /&gt;if __name__ == '__main__':&lt;br /&gt;class Spam(object):&lt;br /&gt;    @constructor&lt;br /&gt;    def __init__(&lt;br /&gt;            self,&lt;br /&gt;            positional_argument_1,&lt;br /&gt;            positional_argument_2,&lt;br /&gt;            default_argument = 'default value',&lt;br /&gt;            *variable_arguments,&lt;br /&gt;            **keyword_arguments&lt;br /&gt;        ):&lt;br /&gt;        self.variable_arguments = list(self.variable_arguments) # Attributes already set&lt;br /&gt;spam = Spam(&lt;br /&gt;    'first argument',&lt;br /&gt;    'second argument',&lt;br /&gt;    'non default value',&lt;br /&gt;    'first variable value',&lt;br /&gt;    'second variable value',&lt;br /&gt;    keyword_argument_1 = 'first keyword value',&lt;br /&gt;    keyword_argument_2 = 'second keyword value',&lt;br /&gt;)&lt;br /&gt;assert spam.positional_argument_1 == 'first argument'&lt;br /&gt;assert spam.positional_argument_2 == 'second argument'&lt;br /&gt;assert spam.default_argument == 'non default value'&lt;br /&gt;assert type(spam.variable_arguments) is list&lt;br /&gt;assert spam.variable_arguments[0] == 'first variable value'&lt;br /&gt;assert spam.variable_arguments[1] == 'second variable value'&lt;br /&gt;assert spam.keyword_arguments['keyword_argument_1'] == 'first keyword value'&lt;br /&gt;assert spam.keyword_arguments['keyword_argument_2'] == 'second keyword value'&lt;/pre&gt;&lt;br /&gt;Update: &lt;a href="http://www.reddit.com/r/programming/comments/9knb7/import_random_class_constructor_decorator/"&gt;I posted this on reddit because&lt;/a&gt; I wanted to know if someone needed something like that but apparently I must have done something really bad, I've been modded -1 and have received no comments.&lt;br /&gt;&lt;div class="zemanta-pixie"&gt;&lt;img src="http://img.zemanta.com/pixy.gif?x-id=96b5a084-0a78-861c-ad6b-cc42245307bd" alt="" class="zemanta-pixie-img" /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8059791951887695752?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8059791951887695752/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8059791951887695752' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8059791951887695752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8059791951887695752'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/09/class-constructor-decorator.html' title='Class Constructor Decorator'/><author><name>rgz</name><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-25639311.post-8236210212344147800</id><published>2009-09-13T06:52:00.001-05:00</published><updated>2009-09-13T06:52:19.330-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Misc stuff and Programmers day.</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Today is programmers day! In Russia. Anyway I have not been commenting for a long time so I'm trying to get into it again.&lt;br/&gt;&lt;br/&gt;Do you guys remember when I said I spend to much time reading atheist blogs? Well I find now I find myself watching to much atheist channels in youtube, the upside is that I watch them more for the humor than actual debating. Debating creationists is seems more and more with each day.&lt;br/&gt;&lt;br/&gt;In the same spirit it feels like I'm always feeding the trolls in slashdot because the posts that deserve to be replied the most are almost always made by irrational people.&lt;br/&gt;&lt;br/&gt;One interesting post I wanted to share: &lt;a href='http://pythonic.pocoo.org/2009/9/12/interpolation-surprise'&gt;Interpolation surprise&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;And finally let's celebrate the apology from the British government to &lt;a href='http://www.number10.gov.uk/Page20571'&gt;Alan Turing&lt;/a&gt;! This is just great really.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=bdf7202b-1455-8577-b1ea-3fb9e1e0369e' alt='' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8236210212344147800?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8236210212344147800/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8236210212344147800' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8236210212344147800'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8236210212344147800'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/09/misc-stuff-and-programmers-day.html' title='Misc stuff and Programmers day.'/><author><name>rgz</name><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-25639311.post-311619591519233896</id><published>2009-06-08T11:40:00.002-05:00</published><updated>2009-06-08T11:41:19.652-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Keep libel laws out of science</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Ok this is bad, a scientist, Singh, criticizes the The British Chiropractic Association because they insist they can cure ear infections among many other &lt;b&gt;bogus claims&lt;/b&gt;. Those were his words&lt;br/&gt;&lt;br/&gt;In the world of science when somebody criticizes the proper response is to show your research. Not for the BCA, they sued him for libel, the most ridiculous part is that right now the Singh is losing because the judge decided that when Singh sayd &lt;b&gt;bogus claims &lt;/b&gt;he meant they are knowingly fraudulent, and Singh can't posibliy know that.&lt;br/&gt;&lt;br/&gt;Yes that's right the BCA best defense against criticism is that you can't prove you are knowingly fraudulent.&lt;br/&gt;&lt;br/&gt;And you kown what it means? It means I'm adding another button to my blog.&lt;br/&gt;&lt;br/&gt;There. See ya later!&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-311619591519233896?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/311619591519233896/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=311619591519233896' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/311619591519233896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/311619591519233896'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/06/leep-libel-laws-out-of-science.html' title='Keep libel laws out of science'/><author><name>rgz</name><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-25639311.post-4270520119668184360</id><published>2009-05-27T19:02:00.004-05:00</published><updated>2009-05-27T19:23:42.090-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>ObjectMap</title><content type='html'>I like how Python ensures no library messes with my built-ins. The fact that neither I can monkey patch built-ins  is however a pain, interestingly while built-ins can't be extended they can be decorated/overriden, and lo I present unto you, ObjectMap.&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;class ObjectMap(object):&lt;br /&gt;  def __init__(self):&lt;br /&gt;      """Did you look what I did there?"""&lt;br /&gt;      self.map = map&lt;br /&gt;  def __call__(self, *args, **kwargs):&lt;br /&gt;      """The original map call"""&lt;br /&gt;      return self.map(*args, **kwargs)&lt;br /&gt;  def __getattr__(self, name):&lt;br /&gt;      """map.name(sequence, args) == [item.name(args) for item in sequence]&lt;br /&gt;      Here is the fun part"""&lt;br /&gt;      def fn(seq, *args, **kwargs):&lt;br /&gt;          return self.map(lambda item: getattr(item, name)(*args, **kwargs) , seq )&lt;br /&gt;      return fn&lt;br /&gt;map = ObjectMap():&lt;br /&gt;words = "red green blue".split()&lt;br /&gt;WORDS1 = map(lambda word: word.upper(), words)&lt;br /&gt;WORDS2 = [word.upper() for word in words]&lt;br /&gt;WORDS3 = map.upper(words)&lt;br /&gt;assert WORDS1 == WORDS2 == WORDS3&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Needless to say, this shouldn't be used in production code (so use it copiously).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-4270520119668184360?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/4270520119668184360/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=4270520119668184360' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/4270520119668184360'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/4270520119668184360'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/05/objectmap.html' title='ObjectMap'/><author><name>rgz</name><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-25639311.post-7701395920978258942</id><published>2009-05-17T23:15:00.001-05:00</published><updated>2009-05-17T23:15:22.490-05:00</updated><title type='text'>CriticalExistenceFailure</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Dicese del fenomeno que ocurre cuando un personaje de videojuego al que le queda un punto de vida muere inmediatamente al sufrir el mas minimo daño, pese a que estaba corriendo brincando y peleando perfectamente bien un instante antes...&lt;br/&gt;&lt;br/&gt;Metal Gear Solid is legendary for a particular use of this - Solid Snake has cigarettes, which allow him to see hidden laser traps and keep his hands steady while sniping, at the cost of his HP bleeding down slowly. It's impossible for Snake to smoke himself to death - a small blip of health will always remain - but then, if he gets so much as touched, he dies (presumably of spontaneous lung cancer). &lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-7701395920978258942?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/7701395920978258942/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=7701395920978258942' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/7701395920978258942'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/7701395920978258942'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/05/criticalexistencefailure.html' title='CriticalExistenceFailure'/><author><name>rgz</name><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-25639311.post-8454076427156026748</id><published>2009-05-05T00:56:00.001-05:00</published><updated>2009-05-05T00:56:34.411-05:00</updated><title type='text'>The hairy dilemas of SF</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; I read an &lt;a href='http://www.squaremans.com/?p=63'&gt;awesome post&lt;/a&gt; about SF as a genre, specifically about how the terms Space Opera and Hard SF are often misused.&lt;br/&gt;&lt;br/&gt; The author mentions that Ian M. Banks' &lt;b&gt;The Culture&lt;/b&gt; is mislabeled as Hard SF because it seems well written, but fails at teaching you any science.&lt;br/&gt;&lt;br/&gt; I was going to argue but after making an excellent case I now concur with the author.&lt;br/&gt;&lt;br/&gt; There are only a couple points of disagreement. At some point the author suggests that the difference between a Science Fiction story  and a "Space Fantasy" story, like Star Wars is that a real Science Fiction story is one that cannot be told in a different context, actually, I'll quote it:&lt;br/&gt;&lt;br/&gt;&lt;blockquote&gt;&lt;font face='sans-serif'&gt;I submit the critical test of whether a story is Science Fiction is; “Could you tell this same story in another genre?” If the answer is “no,” then it’s Science Fiction.&lt;/font&gt;&lt;br/&gt;&lt;/blockquote&gt;&lt;br/&gt;There, so, this is the part that bugs me, because, &lt;a href='http://en.wikipedia.org/wiki/Clarke%27s_three_laws'&gt;Clarke's Third Law&lt;/a&gt; implies that any story can be easily ported from one genre to the other. So, it's not that simple. You can replace any SciFi element with a Fantasy analogy. The question is not if you &lt;i&gt;can&lt;/i&gt;, but, if you &lt;i&gt;want&lt;/i&gt;. That to me is one of the great things about SciFi. SciFi is not different from Fantasy for the way it accomplishes its "magic" but because what particular "magic tricks" it chooses to use.&lt;br/&gt;&lt;br/&gt;The thing is, science is a sportspoil. Compared with the infinite flexibility of Fantasy, science will force you to go certain routes that make storitelling awkwards for some writers.&lt;br/&gt;&lt;br/&gt;For instance, let's say you preffer swords to guns. Thaks to Clarke's Third Law you can make the laser o magical swords, and you can make contrived explanationsfor why the characters aren't using guns in &lt;i&gt;any&lt;/i&gt; setting. But in a SciFi setting, it wouldn't be believeable, it wouldn't be &lt;i&gt;realistic&lt;/i&gt;. &lt;br/&gt;&lt;br/&gt;SciFi has to be realistic and that puts a huge burden on what you can or have to do. Depending of the time frame and setting, good SciFi &lt;i&gt;forces&lt;/i&gt; you to consider bioterrorism or AI or transhumanism, and at the same time &lt;i&gt;prevents&lt;/i&gt; you from using cool stuff like swords.&lt;br/&gt;&lt;br/&gt;This is to me the key difference between Science Fiction and Space Fantasy.&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=88b99a6d-b0fb-81a6-a2dd-5c3691667667' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8454076427156026748?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8454076427156026748/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8454076427156026748' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8454076427156026748'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8454076427156026748'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/05/hairy-dilemas-of-sf.html' title='The hairy dilemas of SF'/><author><name>rgz</name><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-25639311.post-7213051013223856093</id><published>2009-05-03T00:53:00.001-05:00</published><updated>2009-05-03T00:53:45.097-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu software'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Ubuntu file renamers</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; I was planning to do an in-deep review of file renaming tools for Ubuntu, but instead I'll do a quick review.&lt;br/&gt;&lt;br/&gt; The best opensource file renamer for Gnome is &lt;a href='http://file-folder-ren.sourceforge.net/index.php?page=Main'&gt;Mètamorphose&lt;/a&gt;. It's hosted in Sourceforge, not the Ubuntu repositories, but still open source so it's cool, there is a deb file so it's super easy to install.&lt;br/&gt;&lt;br/&gt; It does, everything. It only lacks an scripting language but then again if you have python (or specially ipython) you have unlimited power, provided you are ready to write your own scripts and do your own rollbacks.&lt;br/&gt;&lt;br/&gt; It even does time  and date based renaming. And has plenty of options for special case selecting/unselecting, sorting, etc...&lt;br/&gt;&lt;br/&gt; It also has the best file browser, it doesn't have a context menu option in nautiulus but you can make your own one with the Nautilus Actions Configuration Tool.&lt;br/&gt;&lt;br/&gt; The only weird thing I've found is that trimming/croping is done with the options Search&amp;gt;Position&amp;gt;Replace&amp;gt;(empty string), but that's all.&lt;br/&gt;&lt;br/&gt; Now if you don't want to use software outside of the repositories (but it's worth it!) use PyRenamer.&lt;br/&gt;&lt;br/&gt; PyRenamer's file browser does use the theme icons but it doesn't show dot files/folders, it doesn't do regex. It has most of the options you could need, really, I do a lot of heavy duty renaming so PyRenamer was not enough for me, but it could be all you need.&lt;br/&gt;&lt;br/&gt; But, just the better file browser is enough to pick Mètamorphose.&lt;br/&gt;&lt;br/&gt; GPRename is a Perl/GTK+ option, but it's inferior to PyRenamer in every way, it doesn't do regexes, doesn't use icons at all, it can't HIDE dot files, this makes the file browser useless, it can't process directories and files at the same time, it has less options. Just no.&lt;br/&gt;&lt;br/&gt; Purr is the cutest of the file renamers here, it uses a little window with drag and drop support, which is cute and actually allows you to do renaming of files in disparate directories.&lt;br/&gt;&lt;br/&gt; But is doesn't provide any dynamic text modification options. It can add indexes without zero pading, it can change all extensions to another one, and it can replace every file name with a fixed string (plus an index number) it's simply not useful.&lt;br/&gt;&lt;br/&gt; So there it goes, after 221 days of delaying it I'm blogging about file renamers in Ubuntu.&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=a5a2c22f-e44e-871b-bfa2-96eb3939d56f' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-7213051013223856093?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/7213051013223856093/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=7213051013223856093' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/7213051013223856093'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/7213051013223856093'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/05/ubuntu-file-renamers.html' title='Ubuntu file renamers'/><author><name>rgz</name><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-25639311.post-3244690547134620768</id><published>2009-05-02T21:10:00.001-05:00</published><updated>2009-05-02T21:10:39.274-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><title type='text'>Morality Quiz</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;&lt;div style='border: 1px solid gray; padding: 6px; width: 320px; font-family: arial,verdana,sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal; color: black; background-color: white;'&gt;&lt;b style='color: black; font-family: &amp;apos;Times New Roman&amp;apos;,serif; font-style: normal; font-variant: normal; font-weight: bold; font-size: 20px; line-height: normal; font-size-adjust: none; font-stretch: normal; display: block; margin-bottom: 8px;'&gt;Your morality is 0% in line with that of the bible.&lt;/b&gt; &lt;div style='border: 1px solid black; background: white none repeat scroll 0% 0%; width: 200px; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; text-align: left;'&gt;&lt;div style='background: red none repeat scroll 0% 0%; width: 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; font-size: 8px; line-height: 8px;'&gt; &lt;/div&gt;&lt;/div&gt;&lt;p style='border: medium none ; margin: 10px; background: white none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: black;'&gt;Damn you heathen!  Your book learnin' has done warped your mind.  You shall not be invited next time I sacrifice a goat.&lt;br/&gt;&lt;br/&gt;&lt;b&gt;&lt;a style='color: blue;' href='http://www.gotoquiz.com/do_you_have_biblical_morals'&gt;Do You Have Biblical Morals?&lt;/a&gt;&lt;br/&gt;&lt;a style='color: blue;' href='http://www.gotoquiz.com/'&gt;Take More Quizzes&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;&lt;/div&gt;&lt;br/&gt;&lt;br/&gt;What can I say, I'm only doing my best.&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=a1296d8c-067f-86ff-b94b-8e31685e48f6' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-3244690547134620768?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/3244690547134620768/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=3244690547134620768' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/3244690547134620768'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/3244690547134620768'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/05/morality-quiz.html' title='Morality Quiz'/><author><name>rgz</name><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-25639311.post-6535690278591486011</id><published>2009-05-02T20:57:00.001-05:00</published><updated>2009-05-02T20:57:16.965-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>About men in skirts</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; This is a response to &lt;a href='http://persephonesboxblog.blogspot.com/2006/03/men-in-skirts.html'&gt;an interesting post by Sage&lt;/a&gt;. I wrote it many moons ago and forgot about it.&lt;br/&gt;&lt;br/&gt; In short Sage states that, due to sexism, women's occupations, hobbies and wardrobe are considered inferior, ironically imposing limitations in what men can wear.&lt;br/&gt;&lt;br/&gt; As examples she mentions her current husband, who used to wear a long skirt long ago, she though he looked hot. And her son, who liked to imitate his older sister --including wearing dresses-- when he was about 4 years old.&lt;br/&gt;&lt;br/&gt; That's fine and all but these are extremely rare exceptions I think.&lt;br/&gt;&lt;br/&gt; While it's true that sexism, limits men options, in regard to what they can do for a living (male hair dressers, baby sitters or nurses can be bullied for their choice of job), I don't think skirts have that much to do with sexism and a lot to do with female sexuality.&lt;br/&gt;&lt;br/&gt; If you remember, there was a very popular &lt;a href='http://www.nytimes.com/2008/06/12/fashion/12bisex.html?_r=2&amp;amp;ref=fashion&amp;amp;oref=slogin'&gt;study&lt;/a&gt; that claimed that women aren't particularly aroused by men looks. This has profound effects. Simply put, you never find women hunting around for men in miniskirts to jump their bones. If they did, you could bet we would be wearing skirts, high heels, make up, you name it. But no, men wearing skirts are far more likely to attract &lt;b&gt;other&lt;/b&gt; men before attracting women. As a sexual reproductive tactic, cross-dressing doesn't work for men, so cross-dressing is naturally selected out by female sexual preferences, more than any male prejudices.&lt;br/&gt;&lt;br/&gt; This is the reason there are more male nurses every year, and more and more male baby sitters, but hardly any men in skirts, there is no push for it.&lt;br/&gt;&lt;br/&gt; The truth is that male and female dressing code serves completely different roles. Feminine dressing aims to attract the gazes. Nowhere is this more obvious than in a formal events where the worst a woman can do is have the same dress than another woman. In contrast men practically wear uniforms, they are also sending a visual message, but it is one of status and rank, they are relatively simple an unremarkable whereas women dresses are elaborate and colorful.&lt;br/&gt;&lt;br/&gt; Now, one could insist that this only applies to flashy skirts and does not explain why men avoid simple long skirts, but its the same story all over, simply by wearing a long skirt a man advertises that he is &lt;b&gt;not&lt;/b&gt; interesting in attracting females, so if you want to see men in skirts you have to get girls to like it first, evolution will take care of the rest.&lt;br/&gt;&lt;br/&gt; This was post was written for you and for a friend who actually loves cross-dressing so she is already doing her part. Cheers.&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=8197487a-989a-8c3c-9bfd-d05754145bdd' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-6535690278591486011?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/6535690278591486011/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=6535690278591486011' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/6535690278591486011'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/6535690278591486011'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/05/about-men-in-skirts.html' title='About men in skirts'/><author><name>rgz</name><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-25639311.post-8703476542594906208</id><published>2009-05-02T15:29:00.002-05:00</published><updated>2009-05-02T16:13:43.257-05:00</updated><title type='text'>Social networking chores.</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Chores:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;I'm ditching Diqus from my template, it doesn't work well and I can't even comment in my own blog, it sucks.&lt;/li&gt;&lt;li&gt;Fucking Facebook has been bugging me recently even tough I tried deactivating my account. I'm reactivating to show facebook some "love".&lt;/li&gt;&lt;li&gt;Also because I learned that I have to untag me from my friends pictures, which also sucks.&lt;/li&gt;&lt;li&gt;I've to write to an old friend to ask WTF is he doing in NY! Hope he's having fun.&lt;/li&gt;&lt;li&gt;Some guy who hates me requested to be my friend in (fucking XD) facebook. There you have the very definition of WTF.&lt;/li&gt;&lt;li&gt;Write a (hopefully short) rant on SciFi.&lt;/li&gt;&lt;li&gt;Write a (hopefully short) rant on gender equality and dress codes for Sage.&lt;/li&gt;&lt;li&gt;Show some other blogger whose name I forgot, who was looking for a pythonic XML writing tool, one little script I made.&lt;/li&gt;&lt;li&gt;Maybe, just maybe, write that software review for file renamers in Ubuntu I had planned since the begining of time (actually 220 days ego, exatcly, creepy uh?)&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="zemanta-pixie"&gt;&lt;img src="http://img.zemanta.com/pixy.gif?x-id=6c0807b9-edfd-89ee-826d-2ddedba38b95" class="zemanta-pixie-img" /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8703476542594906208?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8703476542594906208/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8703476542594906208' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8703476542594906208'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8703476542594906208'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/05/social-networking-chores.html' title='Social networking chores.'/><author><name>rgz</name><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-25639311.post-8874428393518272850</id><published>2009-04-29T21:41:00.001-05:00</published><updated>2009-04-29T21:41:18.582-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><title type='text'>Lady Hopes Lies</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; Purging some links from toBlog list, first comes this: the myth of Darwin turning Christian in his death bed.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt; &lt;a href='http://www.stephenjaygould.org/ctrl/ladyhope.html'&gt;The Lady Hope Story: A Widespread Falsehood&lt;/a&gt;&lt;br/&gt;&lt;br/&gt; In summary Lady Hope, a hag that didn't even met Darwin said that she visited Darwin in his last moments, where he confessed to Christ and recanted his scientific research.&lt;br/&gt;&lt;br/&gt; Bullshit.&lt;br/&gt;&lt;br/&gt; Debunked first by Darwin's daughter who WAS with him in his last moments, then by his son who knew him well. Also in the many letters he wrote to friends, his agnosticism is more than evident.&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=98a56341-cff9-8ae6-ba19-99a8bfecdd99' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8874428393518272850?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8874428393518272850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8874428393518272850' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8874428393518272850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8874428393518272850'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/04/lady-hopes-lies.html' title='Lady Hopes Lies'/><author><name>rgz</name><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-25639311.post-5111374322125715984</id><published>2009-04-18T23:52:00.002-05:00</published><updated>2009-04-19T00:02:31.881-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><title type='text'>Blog name change / Cambio de nombre</title><content type='html'>I bumped into a blog named "cat /dev/random", hey that's my blog! Wait no, a &lt;a href="http://www.google.com/search?q=%22cat+%2Fdev%2Frandom%22+blog"&gt;quick google search&lt;/a&gt; reveals this is a fairly usual blog name among unix users.&lt;br /&gt;&lt;br /&gt; So I decided to change the name of this blog into "import random", to fit my Python bias, it &lt;a href="http://www.google.com/search?q=%22import+random%22+blog"&gt;seems&lt;/a&gt; there arent any blogs with this name so I'm original and unique again! ...for the time being...&lt;br /&gt;&lt;br /&gt;---&lt;br /&gt;&lt;br /&gt; Me topé con otro blog llamado "cat /dev/random", hey ese es mi blog! No, esperen, una &lt;a href="http://www.google.com/search?q=%22cat+%2Fdev%2Frandom%22+blog"&gt;rápida busqueda en google&lt;/a&gt; revela que este es un nombre para blog común entre usuarios de unix.&lt;br /&gt;&lt;br /&gt;Asi que decidi cambiar el nombre de este blog por "import random", adecuado para mi gusto por  Python &lt;a href="http://www.google.com/search?q=%22import+random%22+blog"&gt;parece&lt;/a&gt; que no hay blogs con este nombre asi que soy original y único de nuevo! ...por el momento...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-5111374322125715984?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/5111374322125715984/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=5111374322125715984' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5111374322125715984'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5111374322125715984'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/04/blog-name-change-cambio-de-nombre.html' title='Blog name change / Cambio de nombre'/><author><name>rgz</name><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-25639311.post-8625905925633565231</id><published>2009-04-18T22:02:00.002-05:00</published><updated>2009-04-18T22:22:00.743-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='sqlalchemy'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='elixir'/><title type='text'>IntegerDateTime</title><content type='html'>So I try once and again to get into the Python ORM wave, this time with the elegant Elixir library.&lt;br /&gt;&lt;br /&gt;The way I see it, Elixir/SqlAlchemy or any of the other ORM libraries can make a lot for you, provided you do the right things from the beginning. Integrating it into my current work flow is just too much work and I'm in constant fear everything will crumble down at some point and I'll have to rewrite everything.&lt;br /&gt;&lt;br /&gt;Anyway the problem I had, which I pasted into &lt;a href="http://stackoverflow.com/questions/762750/defining-a-table-with-sqlalchemy-with-a-mysql-unix-timestamp"&gt;stackoverflow&lt;/a&gt; involved our consistent use of integer columns instead of datetime columns in mysql, if I wanted to make a table wrapper I needed to cover that case so in the end I wrote my own schalchem data type (also pasted at stackoverflow)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;import datetime, time&lt;br /&gt;from sqlalchemy.types import TypeDecorator, DateTime&lt;br /&gt;class IntegerDateTime(TypeDecorator):&lt;br /&gt;  """a type that decorates DateTime, converts to unix time on&lt;br /&gt;  the way in and to datetime.datetime objects on the way out."""&lt;br /&gt;  impl = DateTime&lt;br /&gt;  def process_bind_param(self, value, engine):&lt;br /&gt;      """Assumes a datetime.datetime"""&lt;br /&gt;      assert isinstance(value, datetime.datetime)&lt;br /&gt;      return int(time.mktime(value.timetuple()))&lt;br /&gt;  def process_result_value(self, value, engine):&lt;br /&gt;      return datetime.datetime.fromtimestamp(float(value))&lt;br /&gt;  def copy(self):&lt;br /&gt;      return IntegerDateTime(timezone=self.timezone)&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt; In the end tough, it wasn't very useful because I don't have another table to which I can link this one so the main reason to write a wrapper for this class was void. Also, the query syntax was &lt;span style="font-weight: bold;"&gt;less&lt;/span&gt; nice than the SqlSoup auto-generated one so I should probably just use SqlSoup.&lt;br /&gt;&lt;br /&gt; I still think Elixir/SqlAlchemy mappers are great, I understand they do a lot of stuff for you, like data definition centralization. But I just can't get a chance to use them where they aren't a hindrance!&lt;br /&gt;&lt;br /&gt; So sad...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8625905925633565231?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8625905925633565231/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8625905925633565231' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8625905925633565231'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8625905925633565231'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/04/integerdatetime.html' title='IntegerDateTime'/><author><name>rgz</name><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-25639311.post-993034475400063530</id><published>2009-04-18T21:43:00.003-05:00</published><updated>2009-04-18T22:02:24.460-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Batch Iterator and obscure Python details</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; I love Python generators and iterators, when they aren't making the easy trivial they are making the impossible possible.&lt;br /&gt;&lt;br /&gt; I specially like to use iterators in streaming situations, like when reading from very large files or a database, because you don't have to traverse the sequence twice.&lt;br /&gt;&lt;br /&gt; However in very large sequences I have had the need to perform some action every &lt;b&gt;n&lt;/b&gt; items. I had the idea of using an special iterator that could split a sequence in sub-sequences but then I have to step over every item twice, once to pack it into the sub-sequence and once again to process it. Using &lt;b&gt;islice&lt;/b&gt; was my first idea, but I needed to, somehow, comunicate to the "outer" iterator that the sequence has been exhausted or else I'd be stuck in an infinite loop iterating over empty subsequences.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; I tough about adding an &lt;b&gt;is_exhausted&lt;/b&gt; property to the sub, sequences, then I found out something interesting, &lt;b&gt;you can't stuff properties into standard iterators, including those you get with generator expressions&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; i = iter([])&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; i.is_exhausted = True&lt;br /&gt;Traceback (most recent call last):&lt;br /&gt;  File "&amp;lt;pyshell#1&amp;gt;", line 1, in &amp;lt;module&amp;gt;&lt;br /&gt;    i.is_exhausted = True&lt;br /&gt;AttributeError: 'listiterator' object has no attribute 'is_exhausted'&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; def generator():&lt;br /&gt;    yield True  &lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; g = generator()&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; g.is_exhausted = True&lt;br /&gt;Traceback (most recent call last):&lt;br /&gt;  File "&amp;lt;pyshell#6&amp;gt;", line 1, in &amp;lt;module&amp;gt;&lt;br /&gt;    g.is_exhausted = True&lt;br /&gt;AttributeError: 'generator' object has no attribute 'is_exhausted'&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt; No prob, I though, I can make everything inside a single generator! Actually I can't, once a generator raises &lt;b&gt;StopIteration&lt;/b&gt; it can't do anything else.&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; def anotherGenerator():&lt;br /&gt;    yield 1&lt;br /&gt;    yield 2&lt;br /&gt;    raise StopIteration&lt;br /&gt;    yield 3&lt;br /&gt;    yield 4&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; a = anotherGenerator()&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; a.next()&lt;br /&gt;1&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; a.next()&lt;br /&gt;2&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; a.next()&lt;br /&gt;Traceback (most recent call last):&lt;br /&gt;  File "&amp;lt;pyshell#16&amp;gt;", line 1, in &amp;lt;module&amp;gt;&lt;br /&gt;    a.next()&lt;br /&gt;  File "&amp;lt;pyshell#12&amp;gt;", line 4, in anotherGenerator&lt;br /&gt;    raise StopIteration&lt;br /&gt;StopIteration&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; a.next()&lt;br /&gt;Traceback (most recent call last):&lt;br /&gt;  File "&amp;lt;pyshell#17&amp;gt;", line 1, in &amp;lt;module&amp;gt;&lt;br /&gt;    a.next()&lt;br /&gt;StopIteration&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; a.next()&lt;br /&gt;Traceback (most recent call last):&lt;br /&gt;  File "&amp;lt;pyshell#18&amp;gt;", line 1, in &amp;lt;module&amp;gt;&lt;br /&gt;    a.next()&lt;br /&gt;StopIteration&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt; Ok, so I thought about using a custom class for the sub-sequences, one that stored a reference to the "parent" iterator, but then I thought, Why making two new classes if the parent is simply returning iterators why don't return &lt;b&gt;self&lt;/b&gt;? This lead to the first working implementation:&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;class ibatch(object):&lt;br /&gt;    """A batch iterator by rgz"""&lt;br /&gt;    def __init__(self, sequence, size):&lt;br /&gt;        """ibatch(iterable, size) -&amp;gt; sequence of iterables&lt;br /&gt;        splits an iterable into groups of 'size' items lazily"""&lt;br /&gt;        self.__sequence = iter(sequence)&lt;br /&gt;        self.__size = size&lt;br /&gt;        self.__counter = 0&lt;br /&gt;    def __repr__(self):&lt;br /&gt;        return "&amp;lt;batch iterator at %s&amp;gt;" % hex(id(self))&lt;br /&gt;    def __iter__(self):&lt;br /&gt;        return self&lt;br /&gt;    def next(self):&lt;br /&gt;        if self.__counter:&lt;br /&gt;            if self.__counter &amp;gt; self.__size:&lt;br /&gt;                self.__counter = 0&lt;br /&gt;                raise StopIteration&lt;br /&gt;            else:&lt;br /&gt;                self.__counter += 1&lt;br /&gt;                # When this raises StopIteration, it's the end.&lt;br /&gt;                return self.__sequence.next()&lt;br /&gt;        else:&lt;br /&gt;            self.__counter = 1&lt;br /&gt;            return self&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;This one uses two magic constants internally but is overall nice and compact, this is a demonstration of how it runs:&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; for enum, items in enumerate(ibatch(xrange(10), 3)):&lt;br /&gt;    print "Block #%s" % enum&lt;br /&gt;    for item in items:&lt;br /&gt;        print item,&lt;br /&gt;    print '\n--'&lt;br /&gt;  &lt;br /&gt;Block #0&lt;br /&gt;0 1 2&lt;br /&gt;--&lt;br /&gt;Block #1&lt;br /&gt;3 4 5&lt;br /&gt;--&lt;br /&gt;Block #2&lt;br /&gt;6 7 8&lt;br /&gt;--&lt;br /&gt;Block #3&lt;br /&gt;9&lt;br /&gt;--&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt; Pretty nice, as long as the number of items isn't exactly divisible by the size of the sub-sequence, when that happen we get an empy sub-sequence complete with empty header and footer sections:&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; for enum, items in enumerate(ibatch(xrange(9), 3)): # 9 items intead of 10...&lt;br /&gt;    print "Block #%s" % enum&lt;br /&gt;    for item in items:&lt;br /&gt;        print item,&lt;br /&gt;    print '\n--'&lt;br /&gt;&lt;br /&gt;   &lt;br /&gt;Block #0&lt;br /&gt;0 1 2&lt;br /&gt;--&lt;br /&gt;Block #1&lt;br /&gt;3 4 5&lt;br /&gt;--&lt;br /&gt;Block #2&lt;br /&gt;6 7 8&lt;br /&gt;--&lt;br /&gt;Block #3&lt;br /&gt;&lt;br /&gt;--&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt; See that empty block? We can't get rid of it, because we don't know if the current sub-sequence is empty unless we try to get an item from it. This breaks a little of the conceptual cleanness of iterators, if the header depends on the sequence to not be opened first. However most of the time it is not a problem and it is very convenient, what we do is that we preload the first item in the sub-sequence to find out if the sequence is empty or not:&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; class ibatch(object):&lt;br /&gt;    """A batch iterator by rgz"""&lt;br /&gt;    def __init__(self, sequence, size, preloading = False):&lt;br /&gt;        """ibatch(iterable, size) -&amp;gt; sequence of iterables splits an iterable&lt;br /&gt;        into groups of 'size' items lazily"""&lt;br /&gt;        self.__sequence = iter(sequence)&lt;br /&gt;        self.__size = size&lt;br /&gt;        self.__counter = 0&lt;br /&gt;        if preloading:&lt;br /&gt;            self.next = self._next_preloading&lt;br /&gt;        else:&lt;br /&gt;            self.next = self._next&lt;br /&gt;        assert self.next&lt;br /&gt;    def __repr__(self):&lt;br /&gt;        return "&amp;lt;batch iterator at %s&amp;gt;" % hex(id(self))&lt;br /&gt;    def __iter__(self):&lt;br /&gt;        return self&lt;br /&gt;    def _next(self):&lt;br /&gt;        if self.__counter:&lt;br /&gt;            if self.__counter &amp;gt; self.__size:&lt;br /&gt;                self.__counter = 0&lt;br /&gt;                raise StopIteration&lt;br /&gt;            else:&lt;br /&gt;                self.__counter += 1&lt;br /&gt;                # When this raises StopIteration, it's the end.&lt;br /&gt;                return self.__sequence.next()&lt;br /&gt;        else:&lt;br /&gt;            self.__counter = 1&lt;br /&gt;            return self&lt;br /&gt;    def _next_preloading(self):&lt;br /&gt;        if self.__counter == 0:&lt;br /&gt;            self.__preloaded = self.__sequence.next()       &lt;br /&gt;            self.__counter = 1&lt;br /&gt;            return self&lt;br /&gt;        elif self.__counter == 1:&lt;br /&gt;            self.__counter = 2&lt;br /&gt;            return self.__preloaded&lt;br /&gt;        elif self.__counter &amp;lt;= self.__size:&lt;br /&gt;            self.__counter += 1&lt;br /&gt;            # When this raises StopIteration, it's the end.&lt;br /&gt;            return self.__sequence.next()&lt;br /&gt;        else:&lt;br /&gt;            self.__counter = 0&lt;br /&gt;            raise StopIteration           &lt;br /&gt; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt; So this class takes a &lt;b&gt;preloading&lt;/b&gt; argument and choses the apropiate next method, &lt;i&gt;I'm soo clever!&lt;/i&gt; Except it doesn't work.&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; for enum, items in enumerate(ibatch(xrange(9), 3)):&lt;br /&gt;    print "Block #%s" % enum&lt;br /&gt;    for item in items:&lt;br /&gt;        print item,&lt;br /&gt;    print '\n--'&lt;br /&gt;&lt;br /&gt;   &lt;br /&gt;Traceback (most recent call last):&lt;br /&gt;  File "&amp;lt;pyshell#43&amp;gt;", line 1, in &amp;lt;module&amp;gt;&lt;br /&gt;    for enum, items in enumerate(ibatch(xrange(9), 3)):&lt;br /&gt;TypeError: iter() returned non-iterator of type 'ibatch'&lt;br /&gt; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Wait what? how is it not an iterator? The minimal requisites for the iteration protocol are the &lt;b&gt;__iter__&lt;/b&gt; and &lt;b&gt;next&lt;/b&gt; methods and it has both right? Unless &lt;b&gt;iter()&lt;/b&gt; expects &lt;i&gt;the class&lt;/i&gt; to have a next method, so I added it to the &lt;b&gt;ibatch&lt;/b&gt; class:&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;def next(self):&lt;br /&gt;    pass&lt;br /&gt; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;This still doesn't work, but for an entirely different reason...&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; for enum, items in enumerate(ibatch(xrange(9), 3)):&lt;br /&gt;    print "Block #%s" % enum&lt;br /&gt;    for item in items:&lt;br /&gt;        print item,&lt;br /&gt;    print '\n--'&lt;br /&gt;&lt;br /&gt;   &lt;br /&gt;Block #0&lt;br /&gt;Traceback (most recent call last):&lt;br /&gt;  File "&amp;lt;pyshell#48&amp;gt;", line 3, in &amp;lt;module&amp;gt;&lt;br /&gt;    for item in items:&lt;br /&gt;TypeError: 'NoneType' object is not iterable&lt;br /&gt; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;What &lt;b&gt;NoneType&lt;/b&gt;? It is talking about the return of the &lt;b&gt;next&lt;/b&gt; method, so it is calling the next method &lt;i&gt;in the class&lt;/i&gt;! Now it makes sense that &lt;b&gt;iter()&lt;/b&gt; looks for it in the class definition, in other words the &lt;b&gt;for statement&lt;/b&gt; doesn't call &lt;b&gt;foo.next()&lt;/b&gt;, it calls &lt;b&gt;foo.__class__.next(foo)&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt; I understand why they don't want to use method resolution over and over in each iteration but grabbing a reference to the &lt;b&gt;next&lt;/b&gt; method in the instance is the right thing to do, in my opinion.  A dirty fix is calling the instance method in the class method like this:&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;def next(self):&lt;br /&gt;    return self.next()&lt;br /&gt; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt; But that's innefficient, the most readable solution seems to be using two clases like this:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;FINAL VERSION&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;class ibatch(object):&lt;br /&gt;    """A batch iterator by rgz that doesn't creates empty batches"""&lt;br /&gt;    def __init__(self, sequence, size):&lt;br /&gt;        """ibatch(iterable, size) -&amp;gt; sequence of iterables&lt;br /&gt;        splits an iterable into groups of 'size' items lazily"""&lt;br /&gt;        self.__sequence = iter(sequence)&lt;br /&gt;        self.__size = size&lt;br /&gt;        self.__counter = 0&lt;br /&gt;    def __iter__(self):&lt;br /&gt;        return self&lt;br /&gt;    def next(self):&lt;br /&gt;        if self.__counter == 0:&lt;br /&gt;            self.__preloaded = self.__sequence.next()       &lt;br /&gt;            self.__counter = 1&lt;br /&gt;            return self&lt;br /&gt;        elif self.__counter == 1:&lt;br /&gt;            self.__counter = 2&lt;br /&gt;            return self.__preloaded&lt;br /&gt;        elif self.__counter &amp;lt;= self.__size:&lt;br /&gt;            self.__counter += 1&lt;br /&gt;            # When this raises StopIteration, it's the end.&lt;br /&gt;            return self.__sequence.next()&lt;br /&gt;        else:&lt;br /&gt;            self.__counter = 0&lt;br /&gt;            raise StopIteration           &lt;br /&gt;&lt;br /&gt;class ibatch_strict(object):&lt;br /&gt;    """A batch iterator by rgz"""&lt;br /&gt;    def __init__(self, sequence, size, preloading = False):&lt;br /&gt;        """ibatch(iterable, size) -&amp;gt; sequence of iterables&lt;br /&gt;        splits an iterable into groups of 'size' items lazily&lt;br /&gt;        it is strict because it doesn't open the subsequence&lt;br /&gt;        before the header is procesed but in turn it can leave&lt;br /&gt;        an empty batch at the end if (len(sequence) % size) == 0"""&lt;br /&gt;        self.__sequence = iter(sequence)&lt;br /&gt;        self.__size = size&lt;br /&gt;        self.__counter = 0&lt;br /&gt;    def __iter__(self):&lt;br /&gt;        return self&lt;br /&gt;    def next(self):&lt;br /&gt;        if self.__counter:&lt;br /&gt;            if self.__counter &amp;gt; self.__size:&lt;br /&gt;                self.__counter = 0&lt;br /&gt;                raise StopIteration&lt;br /&gt;            else:&lt;br /&gt;                self.__counter += 1&lt;br /&gt;                # When this raises StopIteration, it's the end.&lt;br /&gt;                return self.__sequence.next()&lt;br /&gt;        else:&lt;br /&gt;            self.__counter = 1&lt;br /&gt;            return self&lt;br /&gt; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt; As you can see I removed the __repr__ methods since they have nothing interesting to say, I also decided to make preloading the default class because I like it better ^^. Here is how it runs:&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;&amp;gt;&amp;gt;&amp;gt; for enum, items in enumerate(ibatch(xrange(9), 3)):&lt;br /&gt;    print "Block: %s" % enum&lt;br /&gt;    for item in items:&lt;br /&gt;        print item,&lt;br /&gt;    print "\n--"&lt;br /&gt;&lt;br /&gt;Block: 0&lt;br /&gt;0 1 2&lt;br /&gt;--&lt;br /&gt;Block: 1&lt;br /&gt;3 4 5&lt;br /&gt;--&lt;br /&gt;Block: 2&lt;br /&gt;6 7 8&lt;br /&gt;--&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt; So the lesson of today is: "python iterators use &lt;b&gt;foo.__class__.next(foo) not foo.next()&lt;/b&gt;"&lt;br /&gt; I'll try not forgetting that.&lt;br /&gt;&lt;br /&gt; I hope this class is usefull for someone.&lt;br /&gt;&lt;br /&gt;&lt;div class="zemanta-pixie"&gt;&lt;img src="http://img.zemanta.com/pixy.gif?x-id=958429ae-84af-81c2-bb4f-4a86d39e96ee" class="zemanta-pixie-img" /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-993034475400063530?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/993034475400063530/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=993034475400063530' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/993034475400063530'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/993034475400063530'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/04/batch-iterator-and-obscure-python.html' title='Batch Iterator and obscure Python details'/><author><name>rgz</name><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-25639311.post-6883322412298241319</id><published>2009-03-12T13:14:00.001-06:00</published><updated>2009-03-12T13:14:34.146-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='movies'/><title type='text'>Please don't ruin Taken</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; &lt;a href='http://www.nukethefridge.com/index.php?option=com_content&amp;amp;view=article&amp;amp;id=1369:a-sequel-to-taken-is-in-the-works&amp;amp;catid=10:news&amp;amp;Itemid=39#comments'&gt;Nuke the Fridge Reports&lt;/a&gt; that a sequel to Taken. Now Taken was a bad-ass movie but the plot doesn't let itself to sequels. I can't tell for sure this is gonna suck but I get the impression that Hollywood just can't help but make sequels of anything until it sucks.&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=20d99da8-df05-4701-9ac2-3b7e396750ff' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-6883322412298241319?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/6883322412298241319/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=6883322412298241319' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/6883322412298241319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/6883322412298241319'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/03/please-don-ruin-taken.html' title='Please don&amp;#39;t ruin Taken'/><author><name>rgz</name><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-25639311.post-3026097775243838499</id><published>2009-03-11T01:49:00.001-06:00</published><updated>2009-03-11T01:49:13.921-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><title type='text'>Stepping down from the battle field.</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; I'm going to stop reading about religion and those BS factories known as apologists. News about old ladies getting beaten by the religious police or about 9 year old rape victims excommunicated from their church and communities for seeking abortion even though the doctors say that giving birth to her twins will surely kill her... are just too depressing.&lt;br/&gt;&lt;br/&gt; And apologists have to be the most stubborn, and cheating liers in the world. You can read them passages straight from the Bible with all needed context and they'll insist this is not what the Bible says completely making shit up as necessary.&lt;br/&gt;&lt;br/&gt; It's just too tiring and I need to concentrate on work and the brighter side of life for a good, long time. I'll pick just one from my very favorite atheist blogs...&lt;br/&gt;&lt;br/&gt; &lt;a href='http://scienceblogs.com/pharyngula/'&gt;Pharyngula&lt;/a&gt; is very fun but very high traffic and lots of noise.&lt;br/&gt; &lt;a href='http://debunkingchristianity.blogspot.com/'&gt;Debunking Christianity&lt;/a&gt; is exactly the kind of stuff I'm trying to avoid.&lt;br/&gt; &lt;a href='http://godisimaginary.com/comics/'&gt;Atheist Comics&lt;/a&gt; and &lt;a href='http://bythebookcomics.blogspot.com/'&gt;By the Book Comics&lt;/a&gt; are somewhat funny but its fluff and I'm meaning to trim my feeds.&lt;br/&gt; &lt;a href='http://blog.evangelicalrealism.com/'&gt;Evangelical Realism&lt;/a&gt; is &lt;b&gt;&lt;i&gt;AWESOME&lt;/i&gt;&lt;/b&gt;, one of my favorite blogs, its about a guy who's practically making a religion about believing the truth. It's like a masters degreein making sense and being consistent. Yet it is exactly because of these awesome stuff I get lost into the discussion so much.&lt;br/&gt; &lt;a href='http://dwindlinginunbelief.blogspot.com/'&gt;Dwindling In Unbelief&lt;/a&gt; is hilarious, its a collection of lots of goofy killings made by God, including failed murder attepts by God (no kidding) or fun stuff as when the Bible described God as a redhead by proxy.&lt;br/&gt; &lt;a href='http://richarddawkins.net/'&gt;richarddawkins.net&lt;/a&gt; is a forum and its news are very derivative, it could be my chosen blog simply because it's low traffic and boring but&lt;br/&gt; &lt;a href='http://skeptico.blogs.com/skeptico/'&gt;Skeptico&lt;/a&gt; is also low traffic and essasay oriented and while it covers good topics they are a little too basic for me.&lt;br/&gt; &lt;a href='http://www.daylightatheism.org/'&gt;Daylight Atheism&lt;/a&gt; is also kinda boring (sorry Evangelical Realism has me spoiled) so I'm simply give it up.&lt;br/&gt; &lt;a href='http://whywontgodhealamputees.com'&gt;Why wont God heal amputees?: The blog&lt;/a&gt; is very good in balance between informative and succintness.&lt;br/&gt; &lt;a href='http://atheistmedia.blogspot.com/'&gt;Atheist Media Blog&lt;/a&gt; is excellent! More iinformative and more succint, except because I'm meaning to avoid video blogs, but simply knowing what's goping on is all I care about now.&lt;br/&gt;&lt;br/&gt; In the end the winner is Atheist Media Blog, however something that bothers me is that the page tends to slow my browser, but using Brief the problems are berable.&lt;br/&gt;&lt;br/&gt; Next is the Python blogs, must are nothing but a bother...&lt;br/&gt; &lt;br/&gt; &lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=8cbe8c23-fe5b-45b8-8f4f-04acb7a598fc' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-3026097775243838499?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/3026097775243838499/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=3026097775243838499' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/3026097775243838499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/3026097775243838499'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/03/stepping-down-from-battle-field.html' title='Stepping down from the battle field.'/><author><name>rgz</name><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-25639311.post-6739747617759299098</id><published>2009-03-11T00:53:00.000-06:00</published><updated>2009-03-11T00:53:00.420-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><title type='text'>Morality takes you a long way</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; I was reading about the "deconversion" story of a man who came to doubt his faith when he started reading about history, biology and geology and realized the Bible was wrong. I found it interesting that it was the loss of faith in biblical inerrancy that made him an agnostic, for me it was morality....&lt;br/&gt;&lt;br/&gt; I realized these problems before age 10, I figured out that God made the world in a deceitful way. I also knew of the contradictions in the Bible but again God himself said he wanted smart people to get lost (Mat 11:25).&lt;b&gt;&lt;a name='25'/&gt;&lt;/b&gt;&lt;br/&gt;&lt;br/&gt; For me it was the sheer immorality of God what disgusted me to no end. Reading the Bible was an exercise in outrage, now, the Bible contains ass-covering clauses, but I could see they were cop outs, so I began reading apologetics too, not so much interested in science (I was very interested in science but Christian literature is appalling in that subject).&lt;br/&gt;&lt;br/&gt; Of course the apologetic garbage was a HUGE TANGLE OF COP OUTS some of them incredibly ridiculous like the ontological principle. I realized there was zero sustainable truths in christianity. Then I looked around and found people of many religions buried in the same circularly logical beliefs. Then I simply detached of any belief in Gods.&lt;br/&gt;&lt;br/&gt; Fear of God and belief in souls and afterlife lasted for longer though. &lt;br/&gt;&lt;br/&gt; Fear of God was instilled in me by brainwashing, but I knew it was irrational, for many weeks before going to sleep I found myself wondering "What if...?" but then I remembered "Are you afraid of Allah, Zeus, Quetzalcoatl? Of course no..." You grow out of that fear eventually.&lt;br/&gt;&lt;br/&gt; Belief in souls or afterlife is even more sticky, but my interest in science eventually lead me to neuroscience...&lt;br/&gt;&lt;br/&gt; Knowing enough about your brain shatters many conceptions of "self" let alone souls.&lt;br/&gt;&lt;br/&gt; The last problem was a problem of attitude. I was emotionally attached to the concept of souls, I found my new soulless yet pure model of reality unsatisfactory. It was dualism what was holding me back somehow. The problem is realizing that dualism is pointless.&lt;br/&gt;&lt;br/&gt; It doesn't matter if your soul is made of meat or ectoplasm, it is still a fragile -and malleable- piece of clockwork that can be tampered.&lt;br/&gt;&lt;br/&gt; If dualism doesn't protect your "self" what is the point of holding into it? especially when you consider it is false anyway.&lt;br/&gt;&lt;br/&gt; I'm, now, free :)&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=f01b8c68-661b-43f7-8416-7b2e4f87c21e' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-6739747617759299098?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/6739747617759299098/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=6739747617759299098' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/6739747617759299098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/6739747617759299098'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/03/morality-takes-you-long-way.html' title='Morality takes you a long way'/><author><name>rgz</name><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-25639311.post-460138949311524599</id><published>2009-03-07T20:07:00.001-06:00</published><updated>2009-03-07T20:07:49.702-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><category scheme='http://www.blogger.com/atom/ns#' term='movies'/><title type='text'>Immortal la pelicula</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; Immortal es una película aparentemente independiente pero con altos valores de producción. La historia.&lt;br/&gt;&lt;br/&gt; Kenrro me la recomendó hace poco, según dicen será la segunda blade runner, hará historia y será epica.&lt;br/&gt;&lt;br/&gt; No me convenció. &lt;br/&gt;&lt;br/&gt; Este a película tiene 4 puntos relucientes.&lt;br/&gt;&lt;br/&gt; 1) El diseño. Es excelente, todo es muy elaborado, no esperen algo agradable, ya que este es un mundo distópico, pero en su afan de ser moustroso o simplemente no-humano, todo ha sido diseño para verse muy diferente al presente, si bien el unico personaje que parece sacado directamente de nuestra epoca, de hecho viene de nuestra epoca.&lt;br/&gt;&lt;br/&gt; 2) El mundo futuristico. Es de hecho, nada fuera de lo común, es un futuro distópico megaurbano con aliens, mutantes, cyrborgs/humanos. Pese a las muchas insinuaciones de que este es un mundo muy complejo, y pese a la megacorporacion "Eugenics" aparentemente tramando algo sombrio la historia no desarrolla ese elemento, es simplemente decoracion. &lt;br/&gt;&lt;br/&gt; Lo más relevnte es que hace mucho tiempo, un hombre llamado Nikopol era un caudillo de los no-humanos y como resultado parece haberse convertido en un che guevara, con reveldes esparciendo graffitts holográficos proclamando sus ideales por toda la ciudad. Nikopol regresa a la sociedad y es uno de los personajes principales pero de nuevo, es simplemente decoracion y no llega a nada.&lt;br/&gt;&lt;br/&gt; 3) Efectos especiales. Muy buenos, buen uso de la computadora. Pero en el 2009 buenos efectos especiales ya no son una razón para ir a ver una película.&lt;br/&gt;&lt;br/&gt; 4) Combinacion de animación y filme. La pelicula tiene secciones enteramente hechas por CG incluyendo a toda la gente y de hecho la mayoría de los personajes son CG es como ver una version futurista de Sherk. Pero una buena parte de los personajes son actores reales.&lt;br/&gt;&lt;br/&gt; No se nos dio ningúna explicaciones de esto, se supone que todo esto ocurre en un mismo universo, en si, quicieron ahorrarse actores con CG, realmente patetico.&lt;br/&gt;&lt;br/&gt; Calificacion final 2.5 extrellas.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=862b4daf-31af-4756-bf25-ba5f5d107d86' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-460138949311524599?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/460138949311524599/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=460138949311524599' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/460138949311524599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/460138949311524599'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/03/immortal-la-pelicula.html' title='Immortal la pelicula'/><author><name>rgz</name><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-25639311.post-5356885061237581259</id><published>2009-03-05T00:11:00.001-06:00</published><updated>2009-03-05T00:11:50.786-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><category scheme='http://www.blogger.com/atom/ns#' term='movies'/><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><title type='text'>Obras canonicas de los infieles</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; Acabo de leer el libro de Dawkins "El espejismo de Dios"y de ver dos películas, "El Dios que no estaba" y "Religulous" (Juego de palabras de Religioso y ridículo"&lt;br/&gt;&lt;br/&gt; Todo fue excelente y las recomiendo a aquellos que esten tentados a caer en la supersticion y la religión. Lamentablemente ninguna de estas obras puede penetrar la dura cabeza de alguien que cree ciegamente, aunque El espejismo de Dios, podria, en teoría.&lt;br/&gt;&lt;br/&gt; Al fin de cuentas lo importante es hacer conciencia, la religion triunfa, entre otras muchas cosas, por el concentimiento silencioso de las masas ateas.&lt;br/&gt;&lt;br/&gt; Oh, y fue muy divertido.&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=272d88f6-3a0d-4cb7-b036-7c64622bcbe1' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-5356885061237581259?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/5356885061237581259/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=5356885061237581259' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5356885061237581259'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5356885061237581259'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/03/obras-canonicas-de-los-infieles.html' title='Obras canonicas de los infieles'/><author><name>rgz</name><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-25639311.post-5608060491138517215</id><published>2009-02-28T18:15:00.001-06:00</published><updated>2009-02-28T18:15:39.486-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><title type='text'>Heaten canon works</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; I just got th read The God Delusion, an watched two movies, "Religulous" and "The God who wasn't there"&lt;br/&gt;&lt;br/&gt; It all excellent and I recommend them to people who feel tempted by superstition and religion. Sadly none of them can really pierce through the thick skull of a blind believer, although The God Delusion could in theory.&lt;br/&gt;&lt;br/&gt; In the end the important thing is to rise conscientiousness, religion thumps because, among other things, the silent consent of the atheist mases.&lt;br/&gt;&lt;br/&gt; Oh and it was a lot of fun.&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=80a3a6b4-ab82-4e82-a6c5-58605fc9f163' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-5608060491138517215?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/5608060491138517215/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=5608060491138517215' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5608060491138517215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5608060491138517215'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/02/heaten-canon-works.html' title='Heaten canon works'/><author><name>rgz</name><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-25639311.post-5706764690946501107</id><published>2009-02-28T17:26:00.001-06:00</published><updated>2009-02-28T17:26:28.668-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><category scheme='http://www.blogger.com/atom/ns#' term='movies'/><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Reseña de Quiciera se un millionario (Slumdog Millionaire)</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; Es buena, vallan a verla.&lt;br/&gt;&lt;br/&gt; Para ciertas &lt;a href='http://magueweblog.blogspot.com/'&gt;audiencias especializadas&lt;/a&gt;, la película no será demasiado original. Es acerca de un niño muy, muy pobre que se vuelve aun más pobre, debido a un trágico evento, pero de alguna manera sobrevive. Sobrevive, no esta ni cerquitas de volverse millonario hasta que se metió en un programa de concursos en la televisión. &lt;br/&gt;&lt;br/&gt; La cosa es que nadie cree que un pobre como el pueda haber contestado tantas respuestas bien, así que el nos relata la historia de su vida, y como aprendió las respuestas a algunas de estas preguntas debido a trágicos eventos.&lt;br/&gt;&lt;br/&gt; Es básicamente otra pelicula sobre crecer en la miseria, y de alguna forma, es cautivadora, tiene accón, drama e incluso romance sin verse forzado en la historia. La mejor parte es conocer sobre la cultura de la India, especialmente los barrios bajos.&lt;br/&gt;&lt;br/&gt; Cinco estrellas.&lt;br/&gt;&lt;br/&gt; Bonus Post: Chai Wallah.&lt;br/&gt;&lt;br/&gt; Esta frase se me pego mucho, lo tradujeron como, chico del té. Viene de:&lt;br/&gt; Chai: Té&lt;br/&gt; Wallah: Prestador servicios.&lt;br/&gt;&lt;br/&gt; Reconocí la palabra chai inmediatamente, lei un comentario hace mucho tiempo, que la palabra "cha" para decir "té" es universal en asia. En la india se dice chai, y en algunas partes de china se dice chi, pero en general todo el mundo reconoce "cha" para decir té, eso nos demuestra lo importancia y antiguedad del té en la cultura oriental.&lt;br/&gt;&lt;br/&gt; Más aun, quedé sorprendido al ver el tipo de té que se usa en la india, es cafe claro pero opaco, parecido más al... café, es decir la bebida.&lt;br/&gt;&lt;br/&gt; Sucede que no es cualquier té es Masala Chai, el tipo de té más común en el sur de la India, lleva pimienta negra, clavo, canela, anís y una hierba rara que jamás he probado, cardamomo.&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=963d7b51-4858-4c70-bd5d-5577c9423b34' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-5706764690946501107?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/5706764690946501107/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=5706764690946501107' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5706764690946501107'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5706764690946501107'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/02/resena-de-quiciera-se-un-millionario.html' title='Reseña de Quiciera se un millionario (Slumdog Millionaire)'/><author><name>rgz</name><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-25639311.post-1027275579799238501</id><published>2009-02-28T16:26:00.001-06:00</published><updated>2009-02-28T17:36:47.986-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='movies'/><title type='text'>Review of Slumdog Millionaire</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;It's good, it really is, go watch it.&lt;br/&gt;&lt;br/&gt; For some, very &lt;a href='http://magueweblog.blogspot.com'&gt;specialized audiences&lt;/a&gt;, the movie won't be very original. It's about a very very poor kid who gets even poorer by tragic accidents and some how survives. Surviving, that's it, he actually isn't anywhere near becoming a millionaire until he gets into a Questions &amp;amp; answers TV Show.&lt;br/&gt;&lt;br/&gt; Thing is nobody believes a slumdog like him has gotten so much answers right, so he explains the story of his life, and how he came to know the answers he has got right out of tragic events.&lt;br/&gt;&lt;br/&gt; Its basically yet another movie about growing up in the slums, and its somehow captivating, it has action, tragedy, and even a love story without feeling stuffed. The greatest thing about the movie is taking a peek into the Indian culture, particularly the slums.&lt;br/&gt;&lt;br/&gt; Five stars.&lt;br/&gt;&lt;br/&gt; Bonus Post: Chai Wallah.&lt;br/&gt;&lt;br/&gt; I got really fond of this phrase, translated as "Tea boy", comes from:&lt;br/&gt; Chai: Tea&lt;br/&gt; Wallah: Worker&lt;br/&gt;&lt;br/&gt;  I recongnozied the world chai immediately, long ago I read a comment about how the word "cha" is universal in Asia. It's prinounced "chai" in India and "chi" in some regions of China, but in Japan and most of asia is "cha", so we get an idea of how important and acient tea is in asian culture.&lt;br/&gt;&lt;br/&gt; I was even more suprised to see that this Indian, it's light brown and opaque, like coffe with milk.&lt;br/&gt;&lt;br/&gt; It happens to be Masala Chai, the most common type of tea in south India, it contains  cinnamon, ginger, star anise, peppercorn, cloves and a herv I've never tasted before, cardamom.&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=0dbfbff9-1481-4ea7-8812-2ca486fcdcd0' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-1027275579799238501?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/1027275579799238501/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=1027275579799238501' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/1027275579799238501'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/1027275579799238501'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/02/review-of-slumdog-millionaire.html' title='Review of Slumdog Millionaire'/><author><name>rgz</name><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-25639311.post-1555629167990454337</id><published>2009-02-28T16:12:00.001-06:00</published><updated>2009-02-28T16:12:08.920-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><title type='text'>Alguien me odia</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; Meh, no tiene caso decir quien, pero alguien me escribió para decirme que me odiaba solo omitió los detalles de porque y no se a dignado a decirme porque quiere tumbarme los dientes.&lt;br/&gt;&lt;br/&gt; LAME&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=7c49b02f-5a76-4cff-a9bf-ad846c866305' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-1555629167990454337?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/1555629167990454337/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=1555629167990454337' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/1555629167990454337'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/1555629167990454337'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/02/alguien-me-odia.html' title='Alguien me odia'/><author><name>rgz</name><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-25639311.post-9061621518081496211</id><published>2009-02-28T16:11:00.001-06:00</published><updated>2009-02-28T16:11:58.273-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Penn Says but I can't hear him</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; For some reason his flash player doesn't work right in ubuntu and his posts aren't as good as his show anyway so I'm unsubscribing to his feed, it's not a bad feed actually pay him some attention: http://crackle.com/c/Penn_Says&lt;br/&gt;&lt;br/&gt; He's Penn famous for the Penn &amp;amp; Teller magic stuns in las Vegas and his show "Bullshit!" which I can't recommend enough.&lt;br/&gt;&lt;br/&gt; By the way, he should tie his hair up, he looks like and old lady like this, and don't look at me like this, the first one to admit it.&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=3442003b-70ca-4a5d-8e67-e111bb26cb15' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-9061621518081496211?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/9061621518081496211/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=9061621518081496211' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/9061621518081496211'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/9061621518081496211'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/02/penn-says-but-i-can-hear-him.html' title='Penn Says but I can&amp;#39;t hear him'/><author><name>rgz</name><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-25639311.post-1012260978775157201</id><published>2009-02-28T16:03:00.001-06:00</published><updated>2009-02-28T16:03:35.218-06:00</updated><title type='text'>Many a thing to blog</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; Got so much to blog I made a post about it. Today subject are:&lt;br/&gt;&lt;br/&gt; Somebody hates me&lt;br/&gt; Penn Says hates linux (not really)&lt;br/&gt; Slumdog millionaire&lt;br/&gt; Heathen canon works&lt;br/&gt; Morality Quiz results.&lt;br/&gt; Lotsa replies to blogs and stuff, I've beeen collecting losts of feeds and they in turn give lots of cool things to comment about.&lt;br/&gt; &lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=7e3f6be9-c01d-4090-b93a-26b0743acec3' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-1012260978775157201?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/1012260978775157201/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=1012260978775157201' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/1012260978775157201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/1012260978775157201'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/02/many-thing-to-blog.html' title='Many a thing to blog'/><author><name>rgz</name><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-25639311.post-8269074773786380661</id><published>2009-02-17T01:07:00.001-06:00</published><updated>2009-02-17T01:07:03.127-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu software'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Hello Bespin</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; Last week Mozilla announced &lt;a href='http://bespin.mozilla.com'&gt;Bespin - the web development environment.&lt;/a&gt; &lt;br/&gt;&lt;br/&gt; Bespin is a web-application, you install it on your server. In a private domain I suppose. &lt;br/&gt;&lt;br/&gt; Its entirely written in javascript and instead of writing directly to the DOM it uses the not so-recent-but-not-very-popular-anyway canvas DOM element.&lt;br/&gt;&lt;br/&gt; They actually implemented a canvas/javascript GUI toolkit for this application, namely "Thunderhead"&lt;br/&gt;&lt;br/&gt; What's hot?&lt;br/&gt; - Portable environment.&lt;br/&gt; - Real-time collaboration over the net.&lt;br/&gt; - Project management for free.&lt;br/&gt; - Streamlined extensibility, extensions are installed with a single click.&lt;br/&gt; - Ubiquity like commands (i mean Quicksilver/Katapult/Launchbox/Launchy/Do/Krunner style)&lt;br/&gt; &lt;br/&gt; Now, the first concern for a javascript editor is, is it fast? It looks fast in the screencast, in fact they brag a lot about the speed provided by canvas.&lt;br/&gt;&lt;br/&gt; But that was running in a clean Safari, my heavily extended Ubuntu Firefox was sluggish as hell.&lt;br/&gt;&lt;br/&gt; Now Mozilla neglects Fiefox in Linux and I know I'm running too many extensions. I could install Epiphany but being a Mozilla product I can't believe they aren't going to laverage that advantage. &lt;br/&gt;&lt;br/&gt; On the other hand in Windows I have no option but Firefox, except closed source Opera. &lt;br/&gt;&lt;br/&gt; On an slithly unrelated note Epiphany-webkit crashes as soon as I try to visit any website so that's outta question too.&lt;br/&gt;&lt;br/&gt; I can't help but compare it to KomodoEdit. KomodoEdit has been my editor for over 2 years and I love it, but the open source version is stalled on features, and may never grow them as it eats into the market  of its closed source parent KomodoIDE.&lt;br/&gt;&lt;br/&gt; If Bespin gets more of the code inspection features that KomodoEdit is lacking I'll definitively switch, with the amusing implication that I'll have to use either multiple profiles or different browsers for bespin and my web surfing because of sluggishness.&lt;br/&gt; &lt;br/&gt; But with the new that Firefox 4 Will try to use artificial inteligense and natural language processing I think I'll finally leave Firefox after so many years.&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=4b202a2e-2595-4cc4-a7ca-25eba5f9b2d2' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8269074773786380661?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8269074773786380661/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8269074773786380661' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8269074773786380661'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8269074773786380661'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/02/hello-bespin.html' title='Hello Bespin'/><author><name>rgz</name><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-25639311.post-4451887918957042623</id><published>2009-02-13T16:44:00.003-06:00</published><updated>2009-02-13T16:55:33.235-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>import time</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt; Today is a special date, well actually an special &lt;i&gt;UNIX&lt;/i&gt; date, according to the UNIX calendar -which is measured in seconds after January 1 1970- we are approaching date 1234567890 at precisely 18:31:30.&lt;br /&gt;&lt;br /&gt; So in anticipation, let's write a little clock script:&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;import time&lt;br /&gt;while True:&lt;br /&gt;    print int(time.time())&lt;br /&gt;    time.sleep(1)&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt; Or if you prefer a countdown clock like myself:&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;import time&lt;br /&gt;t = True&lt;br /&gt;while t:&lt;br /&gt;    t = 123456789 - int(time.time())&lt;br /&gt;    print t&lt;br /&gt;    time.sleep(1)&lt;br /&gt;else:&lt;br /&gt;    print "Happy valentine ^_^!"&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="zemanta-pixie"&gt;&lt;img src="http://img.zemanta.com/pixy.gif?x-id=d8654db9-f1e8-410b-b8c4-a91c0c6bdfd8" class="zemanta-pixie-img" /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-4451887918957042623?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/4451887918957042623/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=4451887918957042623' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/4451887918957042623'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/4451887918957042623'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/02/import-time.html' title='import time'/><author><name>rgz</name><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-25639311.post-8000135451108010166</id><published>2009-02-12T18:05:00.001-06:00</published><updated>2009-02-12T18:05:18.757-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Net Neutrality is good Tinyurl is wrong</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; I'm very sad to discover Tinyurl is spreading lies against net neutrality in a site I won't dignify by linking to it.&lt;br/&gt;&lt;br/&gt;&lt;big&gt;&lt;font face='sans-serif'&gt;Net neutrality in an nutshell&lt;/font&gt;&lt;/big&gt;&lt;br/&gt; &lt;br/&gt; Internet usage can be measured, its unit is the &lt;b&gt;bit/s&lt;/b&gt; or bits per second. The companies that built and/or manage the connection are called ISP for Internet Service Provider, everybody else is a user, you, me, Google, Yahoo, etc.&lt;br/&gt; &lt;br/&gt; Of course Google, Yahoo et al pay a lot more to their ISP because they transmit a lot more &lt;b&gt;bit/s&lt;/b&gt;. &lt;br/&gt; &lt;br/&gt; The issue is, the ISP want to charge them more &lt;b&gt;for each bit/s&lt;/b&gt; and that's the problem.&lt;br/&gt;&lt;br/&gt; ...at least half of it, the other problem is that ISP want to compete with them with their own services and are using their privileged position to slow down the competition, soon you'll find that YouTube is getting much slower than that brand new ISPTube, why could it be?[/sarcasm]&lt;br/&gt; &lt;br/&gt; And that's why net neutrality is so important. I don't care how much Google pays for each bit per second or each bit per month as long as they pay at the same rate than everybody else and specially, at the same rate than the ISP own services as well.&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=9a6c3f44-f564-47e0-92c7-af4fcd0cedb8' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8000135451108010166?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8000135451108010166/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8000135451108010166' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8000135451108010166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8000135451108010166'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/02/net-neutrality-is-good-tinyurl-is-wrong.html' title='Net Neutrality is good Tinyurl is wrong'/><author><name>rgz</name><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-25639311.post-51829587024241027</id><published>2009-02-02T11:29:00.001-06:00</published><updated>2009-02-02T11:29:56.463-06:00</updated><title type='text'>The best questions against atheism</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; Creationist Lee Strobel wanting to pretend to be objective made a poll asking what should it take to make them Christians (actually non atheists but i disgress):&lt;br/&gt;&lt;br/&gt;&lt;blockquote&gt;"What argument is most convincing to plant the seeds of doubt (or, rather, faith)?"&lt;/blockquote&gt; Several high profile atheists answered with rather easy to disprove questions, granted, they didn't say they believed it but that they could be used to make an atheist hesitate.&lt;br/&gt;&lt;br/&gt; Personally I find this to be the best argument in favor or christianity:&lt;br/&gt;&lt;br/&gt;&lt;blockquote&gt; "What if you are being deceived by the devil? Maybe all the evidence that dinosaurs lived millions of years ago is fabricated, maybe the stupidity that the universe was necessarily created by a superman ghost that doesn't need to be created actually makes sense, maybe all of God's carnages and slaughtering of innocent  children is actually a pretty cool thing and the only reason you think hurting people is wrong is because you are possessed by Satan?"&lt;br/&gt;&lt;/blockquote&gt;&lt;br/&gt; I wish I was kidding, this is the best argument in favor of faith I can come up with.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-51829587024241027?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/51829587024241027/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=51829587024241027' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/51829587024241027'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/51829587024241027'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/02/best-questions-against-atheism.html' title='The best questions against atheism'/><author><name>rgz</name><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-25639311.post-3812360846730585748</id><published>2009-01-29T02:38:00.001-06:00</published><updated>2009-01-29T02:38:46.113-06:00</updated><title type='text'>The Dark Night, review pending...</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; I've just seen Batman The Dark Night, the best thing I can say about it is that I can't say anything about it yet, for an amateur cinephile it is a mouth full to analyse!&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-3812360846730585748?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/3812360846730585748/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=3812360846730585748' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/3812360846730585748'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/3812360846730585748'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/dark-night-review-pending.html' title='The Dark Night, review pending...'/><author><name>rgz</name><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-25639311.post-4015370680925303604</id><published>2009-01-24T19:09:00.002-06:00</published><updated>2009-01-24T19:13:16.364-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='copyright'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Melancholy Elephants</title><content type='html'>This is a truly inspirational story, what better way to get our point across than by writing a fine SciFi story?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.spiderrobinson.com/melancholyelephants.html"&gt;Melancholy Elephants by Spider Robinson&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-4015370680925303604?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/4015370680925303604/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=4015370680925303604' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/4015370680925303604'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/4015370680925303604'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/melancholy-elephants.html' title='Melancholy Elephants'/><author><name>rgz</name><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-25639311.post-8574258126452830712</id><published>2009-01-24T18:54:00.004-06:00</published><updated>2009-01-24T20:10:08.219-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='random'/><title type='text'>The literal version.</title><content type='html'>I have many random stuff I'd like to share, many are youtube vids, but I don't because I'd like to space out a little so my "readers" can keep up with them, except I don't have any readers any way let me talk you about "literal versions videos".&lt;br /&gt;&lt;br /&gt;A literal version video is a music video where the lyrics have been replaced by literal descriptions of the music video itself. Personally I thin it's genius.&lt;br /&gt;&lt;br /&gt;Instead of embedding a bunch of videos and make the page lag I'll just link them from here. I'll also add them to my del.icio.us.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.youtube.com/watch?v=Kr2jlCyCJBI"&gt;Rick Roll: The Literal Version&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.youtube.com/watch?v=DIbK4m6Hkq4"&gt;U2 - I Still Haven't Found What I'm looking For&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.youtube.com/watch?v=lnjYrP5J6rE"&gt;A-Ha - Take on Me&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.youtube.com/watch?v=w0TYun-Nq1Q"&gt;Head Over Heels: Literal Video Version&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.youtube.com/watch?v=a0noMxjEbR8"&gt;Harry Potter and the Order of the Phoenix&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;That last one is a literal version trailer but it's just as funny.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8574258126452830712?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8574258126452830712/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8574258126452830712' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8574258126452830712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8574258126452830712'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/literal-version.html' title='The literal version.'/><author><name>rgz</name><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-25639311.post-3383631081270959</id><published>2009-01-22T17:14:00.001-06:00</published><updated>2009-01-22T17:14:49.885-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='random'/><title type='text'>Garfield Minus Garfield</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; I stumbled upon "&lt;a href='http://garfieldminusgarfield.net/'&gt;&lt;em&gt;Garfield minus Garfield&lt;/em&gt;&lt;/a&gt;" a parody of Garfield that features John talking alone to his imaginary cat. Go figure, even if Garfield was there the truth of the matter is that this guy is talking to his cat as if he was a person, the result is eerily funny. I'll keep on feeding that random tag.&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-3383631081270959?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/3383631081270959/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=3383631081270959' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/3383631081270959'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/3383631081270959'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/garfield-minus-garfield.html' title='Garfield Minus Garfield'/><author><name>rgz</name><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-25639311.post-5119064841019194752</id><published>2009-01-20T08:18:00.001-06:00</published><updated>2009-01-20T08:18:19.226-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Bye bye Bush!</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; Today is the day, today we celebrate. &lt;div class='youtube-video'&gt;&lt;object width='425' height='355'&gt;&lt;param value='http://www.youtube.com/v/2vTFesgMkzk' name='movie'&gt; &lt;/param&gt;&lt;param value='transparent' name='wmode'&gt; &lt;/param&gt;&lt;embed width='425' height='355' wmode='transparent' type='application/x-shockwave-flash' src='http://www.youtube.com/v/2vTFesgMkzk'&gt; &lt;/embed&gt; &lt;/object&gt;&lt;/div&gt;&lt;br/&gt;&lt;br/&gt;8 Years Of Bush in 8 Minutes! ~Olbermann&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-5119064841019194752?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/5119064841019194752/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=5119064841019194752' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5119064841019194752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5119064841019194752'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/bye-bye-bush.html' title='Bye bye Bush!'/><author><name>rgz</name><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-25639311.post-3966972214487334805</id><published>2009-01-18T15:37:00.001-06:00</published><updated>2009-01-18T15:37:36.413-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='games'/><category scheme='http://www.blogger.com/atom/ns#' term='random'/><title type='text'>The perfect SCV rush</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Gotta feed that random tag here is the acclaimed SCV rush (starcraft).&lt;br/&gt;&lt;br/&gt;&lt;div class='youtube-video'&gt;&lt;object width='425' height='344'&gt;&lt;param value='http://www.youtube.com/v/Jen46qkZVNI&amp;amp;hl=en&amp;amp;fs=1' name='movie'&gt; &lt;/param&gt;&lt;param value='true' name='allowFullScreen'&gt; &lt;/param&gt;&lt;param value='always' name='allowscriptaccess'&gt; &lt;/param&gt;&lt;embed width='425' height='344' allowfullscreen='true' allowscriptaccess='always' type='application/x-shockwave-flash' src='http://www.youtube.com/v/Jen46qkZVNI&amp;amp;hl=en&amp;amp;fs=1'&gt; &lt;/embed&gt; &lt;/object&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-3966972214487334805?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/3966972214487334805/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=3966972214487334805' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/3966972214487334805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/3966972214487334805'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/perfect-scv-rush.html' title='The perfect SCV rush'/><author><name>rgz</name><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-25639311.post-8485786534624706930</id><published>2009-01-18T15:12:00.002-06:00</published><updated>2009-01-18T15:38:44.447-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Don't talk to the police!</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;This is kinda old but priceless. I wish México had a 5th Amendment analogue, in fact I'm gonna ask a lawyer next time I see one.&lt;br /&gt;&lt;br /&gt;&lt;embed type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" style="width: 400px; height: 326px;" src="http://video.google.com/googleplayer.swf?docid=8167533318153586646&amp;amp;hl=en&amp;amp;fs=true" id="VideoPlayback"&gt;&lt;/embed&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8485786534624706930?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8485786534624706930/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8485786534624706930' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8485786534624706930'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8485786534624706930'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/don-talk-to-police.html' title='Don&amp;#39;t talk to the police!'/><author><name>rgz</name><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-25639311.post-8312300514323522261</id><published>2009-01-17T21:16:00.001-06:00</published><updated>2009-01-17T21:16:36.517-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Ubuntu fixes Click of Death</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;&lt;br/&gt; Slashdot &lt;a href='http://it.slashdot.org/article.pl?sid=09/01/17/2127254'&gt;reports&lt;/a&gt; that Ubuntu has implemented a workaround the manufacturers windows oriented configuration that resulted in dead hard drives, the so called click of death.&lt;br/&gt;&lt;br/&gt; This and the news that Ubuntu 9.04 can boot in &lt;a href='http://linux.slashdot.org/article.pl?sid=09%2F01%2F14%2F2152200&amp;amp;from=rss'&gt;about 20 seconds&lt;/a&gt; on some systems are taking my hope of running Ubuntu in my netbook much closer.&lt;br/&gt;&lt;br/&gt; Now if only they made it sleep properly I'll be sold.&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8312300514323522261?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8312300514323522261/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8312300514323522261' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8312300514323522261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8312300514323522261'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/ubuntu-fixes-click-of-death.html' title='Ubuntu fixes Click of Death'/><author><name>rgz</name><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-25639311.post-5232958624535780692</id><published>2009-01-17T09:29:00.005-06:00</published><updated>2009-01-18T04:53:45.570-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><title type='text'>Let the bus driver alone!! [/emo]</title><content type='html'>Everybody is making a fuss about the bus driver that refused to drive a bus with a (very positive and polite)  atheist banner. Now honestly if I were asked to drive a bus with banner that said...&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 153, 255);"&gt; &lt;span style="font-weight: bold;"&gt;YOU MUST GO TO HELL YOU DAMN INFIDEL&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;span style="color: rgb(255, 102, 102); font-weight: bold;"&gt;UNLESS YOU FORGO FREE THINKING&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;span style="color: rgb(255, 204, 51); font-weight: bold;"&gt;AND SUBMIT YOURSELF TO THE CHURCH&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I'd also refuse to do it. He must be fired, its fair, I'll be fired too if I did that, but I don't question the morality of his reaction, just the rationality (or even the morality) of his faith.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-5232958624535780692?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/5232958624535780692/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=5232958624535780692' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5232958624535780692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5232958624535780692'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/let-bus-driver-alone-emo.html' title='Let the bus driver alone!! [/emo]'/><author><name>rgz</name><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-25639311.post-5497588255378158705</id><published>2009-01-17T01:41:00.001-06:00</published><updated>2009-01-17T01:41:30.751-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Linux Keyboards</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; I found these keyboards made by ZaReason with &lt;a href='http://www.zareason.com/shop/image.php?id=92&amp;amp;type=D'&gt;Ubuntu&lt;/a&gt; and &lt;a href='http://www.zareason.com/shop/product.php?productid=16189&amp;amp;cat=0&amp;amp;page=1'&gt;Tux&lt;/a&gt; logos instead of Windows logos in their Super/Meta keys, personally I think a more conservative and subtle logo is more fit for these keys, the original meta key used a solid diamond. There is no official Super logo, but a star was proposed and I think it would look great.&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-5497588255378158705?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/5497588255378158705/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=5497588255378158705' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5497588255378158705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5497588255378158705'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/linux-keyboards.html' title='Linux Keyboards'/><author><name>rgz</name><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-25639311.post-6337528072572558896</id><published>2009-01-16T00:59:00.004-06:00</published><updated>2009-01-16T01:06:47.581-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><title type='text'>Christian cowardice</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;  Haven't you noticed that christian blogs rarely have public comments? And that when they do they censor dissent anyway?&lt;br /&gt;&lt;br /&gt; &lt;a href="http://dawkinswatch.wordpress.com/2009/01/15/why-are-you-an-atheist" target="_blank"&gt;Here&lt;/a&gt; is a blog post asking why are we atheists, including his list of suspected reasons:&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;-  You read the works of Voltaire and became a convert?&lt;/p&gt;&lt;p&gt;- You are a secret Luciferian posing as an Atheist.&lt;/p&gt;&lt;p&gt;- You are a Communist?&lt;/p&gt;&lt;p&gt;_ You went to church when you were younger but never experienced God?&lt;/p&gt;&lt;p&gt;- You want to make yourself God and do not like competition?&lt;/p&gt;&lt;p&gt;-You are a postmodernisand you believe that that there is no ultimate truth?&lt;/p&gt;&lt;p&gt;-You read the works of Charles Darwin and are writing manuscripts of the next “My Atheist Struggle”?&lt;/p&gt;&lt;p&gt;- A Catholic Priest made a pass at you and you blame God?&lt;/p&gt;&lt;p&gt;- You are secretly in love with Richard Dawkins and have not told your parents that you are not like other men?&lt;/p&gt;&lt;p&gt;- You are not convinced evil exists.&lt;/p&gt;&lt;p&gt;_ You believe the ten commandments are harmful to the well being of human kind.&lt;/p&gt;&lt;p&gt;_ You are following a trend?&lt;/p&gt;&lt;/blockquote&gt; Here is my reply which I doubt he will post:&lt;br /&gt;&lt;blockquote&gt;  My separation from christianity came in stages, first I rejected God when I read the bible and found God was nonsensical:&lt;br /&gt;&lt;br /&gt; ...an all mighty omniscient being taking any actions? creating light without stars? embedding spiritual beings into physical bodies when simple spirits suffice? eternally punishing weak and ignorant beings without understanding of evil? Using his magic to stuff billions of species into a tiny boat so his magical flood kills everybody in the planet instead of, you know vanishing them in a microsecond with his magic?...&lt;br /&gt;&lt;br /&gt; and evil:&lt;br /&gt;&lt;br /&gt;...since he already knew Abraham would accept to kill his son, the total result of the exercise was to make Abraham have a hell of an afternoon, whats up with all the slavery, bigotry, misogynism, homophobia and ultimately all the authoritarianism and insistence in obedience against any ethical concerns one might have? Why does he demands we believe without any doubt that he will answer our prayers while at the same times makes no guarantee that he will actually answer them? and then pretends that taking no action and letting matters take its logical course constitutes an answer?...&lt;br /&gt;&lt;br /&gt; and poorly defended:&lt;br /&gt;&lt;br /&gt; Lack of evidence? Just believe it!&lt;br /&gt; Makes no sense? Just believe it!&lt;br /&gt; There are better explanations! Don't listen, its the Devil!&lt;br /&gt;But that's not fair! Do you want to discuss that in hell?...&lt;br /&gt;&lt;br /&gt; But I didn't became an agnostic until I found that there are many other religions and that their followers are sincere.&lt;br /&gt;&lt;br /&gt; I became an atheist when I found out that all of them are based on false claims that must be taken on faith.&lt;br /&gt;&lt;br /&gt; Only science make a rigorous attempt to reach truth.&lt;br /&gt;&lt;br /&gt; I finally cased believing in my soul and the afterlife when I learned about neurology (and evolutionary psychology, but mostly neurology).&lt;br /&gt;&lt;br /&gt; It's simple, the mind is the brain, no brain no mind, we can actually predict what part of your mind you will lose if we remove specific part of your brain, etc.&lt;br /&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-6337528072572558896?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/6337528072572558896/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=6337528072572558896' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/6337528072572558896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/6337528072572558896'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/christian-cowardice_16.html' title='Christian cowardice'/><author><name>rgz</name><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-25639311.post-6114414686343325369</id><published>2009-01-12T22:18:00.004-06:00</published><updated>2009-01-12T22:49:19.756-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu software'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>Unix assumed</title><content type='html'>I was reading over the documentation for Jinja2 when I realized that they assume you are running a Unix with sudo installed. No instructions for Windows or for installing from tarballs are given.&lt;br /&gt;&lt;br /&gt;This means that that every day more and more developers are using unix as a platform.&lt;br /&gt;Now I'm aware that MacOS X also includes sudo, and I suppouse some flavor of BSD does too,&lt;br /&gt;so this doesn't count as a victory for linux, much less Ubuntu, but at least is not a defeat, its progress overall for the future of free desktops.&lt;br /&gt;&lt;br /&gt; You know what makes me really happy? And apt line ^_^!&lt;br /&gt;&lt;br /&gt;Anyway, shouldn't there be a way to automate the inclusion of  a repostory and installation of software? What happened to &lt;a href="http://klik.atekon.de/"&gt;klick&lt;/a&gt;, &lt;a href="http://autopackage.org/"&gt;autopackage&lt;/a&gt; and &lt;a href="http://0install.net/"&gt;0install&lt;/a&gt;? Those are very good proposals that haven't got enough momentum. However I think whatever default mechanism for installation  Ubuntu adopts will become the default for desktop oriented distros, that's the momentum Ubuntu has in the linux community.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-6114414686343325369?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://jinja.pocoo.org/2/documentation/intro#installation' title='Unix assumed'/><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/6114414686343325369/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=6114414686343325369' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/6114414686343325369'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/6114414686343325369'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/unix-assumed.html' title='Unix assumed'/><author><name>rgz</name><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-25639311.post-1088578322128283567</id><published>2009-01-12T14:10:00.001-06:00</published><updated>2009-01-12T14:13:16.265-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='random'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Cutest book cover ever!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_UxXsQIPZ5Lw/SWukD4PWU7I/AAAAAAAAAA8/1sZz0kbsLMM/s1600-h/1548229-1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 333px; height: 400px;" src="http://3.bp.blogspot.com/_UxXsQIPZ5Lw/SWukD4PWU7I/AAAAAAAAAA8/1sZz0kbsLMM/s400/1548229-1.png" alt="" id="BLOGGER_PHOTO_ID_5290502573820105650" border="0" /&gt;&lt;/a&gt;&lt;br /&gt; Prove me wrong.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-1088578322128283567?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.ubuntukungfu.org/' title='Cutest book cover ever!'/><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/1088578322128283567/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=1088578322128283567' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/1088578322128283567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/1088578322128283567'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/cutest-book-cover-ever.html' title='Cutest book cover ever!'/><author><name>rgz</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_UxXsQIPZ5Lw/SWukD4PWU7I/AAAAAAAAAA8/1sZz0kbsLMM/s72-c/1548229-1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-25639311.post-4693047457345368188</id><published>2009-01-12T13:04:00.004-06:00</published><updated>2009-01-12T14:26:36.191-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='random'/><category scheme='http://www.blogger.com/atom/ns#' term='slashdot'/><title type='text'>Middle name</title><content type='html'>Extracted from  from slashdot:&lt;br /&gt;&lt;br /&gt;&amp;lt;dotancohen&amp;gt; Yes, we (the nerds) care about such things. Pedantic is our middle name.&lt;br /&gt;&amp;lt;anonymous coward=""&amp;gt; My middle name is Clive, you insensitive clod!&lt;br /&gt;&amp;lt;jmenzes&amp;gt; Anonymous Clive Coward? Your parents didn't like you very much, did they? :P&lt;br /&gt;&amp;lt;daveime&amp;gt; Rincewind always said his middle name was "Luck" ... unfortunately his first name was "Bad".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-4693047457345368188?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://tech.slashdot.org/comments.pl?sid=1088389&amp;cid=26412211' title='Middle name'/><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/4693047457345368188/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=4693047457345368188' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/4693047457345368188'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/4693047457345368188'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/middle-name.html' title='Middle name'/><author><name>rgz</name><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-25639311.post-7829225004570134523</id><published>2009-01-10T20:43:00.005-06:00</published><updated>2009-01-10T21:00:12.249-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='random'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>New google favicon</title><content type='html'>Google has updated its favicon again!&lt;br /&gt;&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/SWle7HIwrwI/AAAAAAAAAA0/WtUGgnC93HM/s1600-h/newfavicon.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 210px; height: 213px;" src="http://4.bp.blogspot.com/_UxXsQIPZ5Lw/SWle7HIwrwI/AAAAAAAAAA0/WtUGgnC93HM/s400/newfavicon.png" alt="" id="BLOGGER_PHOTO_ID_5289863606944444162" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;I think it looks great, anyway, better that the prior favicon. I still don't like that the favicon and the logo have so little in common, perhaps Google is planning on upgrading their main logo as well. However given how strong a brand Google is right now I doubt it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-7829225004570134523?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/7829225004570134523/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=7829225004570134523' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/7829225004570134523'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/7829225004570134523'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/new-google-favicon.html' title='New google favicon'/><author><name>rgz</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_UxXsQIPZ5Lw/SWle7HIwrwI/AAAAAAAAAA0/WtUGgnC93HM/s72-c/newfavicon.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-25639311.post-2619465161860830249</id><published>2009-01-09T03:20:00.002-06:00</published><updated>2009-01-09T03:22:42.585-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><title type='text'>A la mitad de la noche</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Mi gameboy (nombre provisional de mi netbook) desperto de hibernacion y busco la wireless a las 3:00. Será el antivirus? Cuando la forcé a apagarse dijo que otros usuarios tambien estaban conectados, tendra que ver con la carpeta compartida? Todo esto me recuerda que el 75% de los equipos en esta casa corren windows. &lt;br /&gt;&lt;br /&gt; Tal vez debería apresurarme a cambiar a linux la netbook pero como dije, su killer app es lo facil que es dormirla y despertarla.&lt;br /&gt;&lt;br /&gt; En fin. ahora para algo completamente diferente, decidi borrar 8 archivos (82MB) de los libros (gratuitos) que estaba dispuesto a leer sobre economia. Es simplemente demasiado, Aun me quedan 10 (85MB) los cuales no creo leerlos todos.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-2619465161860830249?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/2619465161860830249/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=2619465161860830249' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/2619465161860830249'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/2619465161860830249'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/la-mitad-de-la-noche.html' title='A la mitad de la noche'/><author><name>rgz</name><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-25639311.post-9119047675363877352</id><published>2009-01-03T18:03:00.001-06:00</published><updated>2009-01-03T20:22:50.416-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><category scheme='http://www.blogger.com/atom/ns#' term='random'/><title type='text'>The Matrix runs on windows</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Bueno pues el titulo es cat /dev/random no? voy  a postear cosas más estupidas más seguido. Y depués hanlare de filosofía y programación.&lt;br /&gt;&lt;br /&gt;&lt;div class='youtube-video'&gt;&lt;object height='355' width='425'&gt;&lt;param value='http://www.youtube.com/v/yX8yrOAjfKM' name='movie'&gt; &lt;/param&gt;&lt;param value='transparent' name='wmode'&gt; &lt;/param&gt;&lt;embed height='355' width='425' wmode='transparent' type='application/x-shockwave-flash' src='http://www.youtube.com/v/yX8yrOAjfKM'&gt; &lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br/&gt;&lt;br/&gt;The Matrix Runs on Windows&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-9119047675363877352?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/9119047675363877352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=9119047675363877352' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/9119047675363877352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/9119047675363877352'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2009/01/matrix-rin-on-windows.html' title='The Matrix runs on windows'/><author><name>rgz</name><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-25639311.post-890336598877803284</id><published>2008-12-24T20:10:00.000-06:00</published><updated>2008-12-24T20:11:53.921-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='random'/><title type='text'>Merry christmas you liberal scum!</title><content type='html'>&lt;div class="youtube-video"&gt;&lt;a href="http://www.youtube.com/v/P8Lxgww4kcM"&gt;&lt;/a&gt;&lt;div class="youtube-video"&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/P8Lxgww4kcM"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/P8Lxgww4kcM" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt; &lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;"A Merry American Christmas" by Roy Zimmerman&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-890336598877803284?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.youtube.com/watch?v=P8Lxgww4kcM' title='Merry christmas you liberal scum!'/><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/890336598877803284/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=890336598877803284' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/890336598877803284'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/890336598877803284'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2008/12/merry-christmas-you-liberal-scum.html' title='Merry christmas you liberal scum!'/><author><name>rgz</name><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-25639311.post-982083344043183814</id><published>2008-12-19T01:03:00.001-06:00</published><updated>2008-12-19T01:30:00.186-06:00</updated><title type='text'>WoWtF en la Mottocon</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; Bueno pues ya paso agua, pero apenas contando algo de como me fue en la Mottocon.&lt;br/&gt;&lt;br/&gt; Pues principalmente fue la oportunidad de jugar un juego de rol por primera vez. Ademas de otras primeras veces como es comer Okonomiyaki, Takoyaki y Manju (o al menos yo les llamo manju) o estar ahi en el torneo de cosplay que es gratis no como en la CJMC.&lt;br/&gt;&lt;br/&gt; Ah y vi los pockeys más caros del mundo a 5 pesos la barrita (son solo galletas alargadas por amor de Gaia). Le compre varias cosas a los independientes, excepto a Gina de Studio XIII a la que ya le habia comprado algunas cosas en la pasada CJMC.&lt;br/&gt;&lt;br/&gt; Pero bueno lo importante de este post es describir el juego de rol.&lt;br/&gt;&lt;br/&gt; El juego en si era una partida en la version de mesa de World of Warcraft pero conocido como el WoW RPG. El GM era muy amigable y paciente, todos los jugadores eramos nuevos en esto,  yo llegue primero, luego vino una parejita, nos explico un poco de la mecánica y nos dio hojas de personajes prehechas con la opcion de hacer el nuestro si teniamos paciencia. &lt;br/&gt;&lt;br/&gt; El chavo tomó inmediatamente el hechicero. Quedaban tres personajes un guerrero humano,  un panda parlante con clase Improvisadory otro que no vi bien.&lt;br/&gt;&lt;br/&gt; Por la emoción tome al guerrero humano sabiendo que esta clase era probablemente la mas básica y por lo tanto la más sencilla de jugar, debi darle el primer lugar a la chava (peeeerdón) la chava de los que quedaban tomó al panda, acto seguido el GM empezo a explicar las reglas iniciales. Al ver la hoja de personajes vi que el personaje se llamaba "Gataka" revise donde decía "Sexo: M" -Sexo Masculino?- pregunte, el GM me miro pero no respondio... mmm, creo que era M de Mujer, creo que tome el personaje que el GM quería que tomara la chava, oh bueno.&lt;br/&gt;&lt;br/&gt; La partida comienza cuando nosotros tres, junto con algunos otros aldeanos nos encontramos en un barco, huyendo de nuestro continente hogar, lugar que fue conquistado por los Orcos (O eran Ogros?). Llevamos tres dias de viaje y faltan otros tres dias más, la tripulación es experimentada y hay buen clima.  &lt;br/&gt;&lt;br/&gt; Durante la siguiente hora y media recorremos el barco, hablamos con la tripulacion vimos el horizonte, avistamos niebla etc, yo fui a la cocina donde el cocinero me ofrecio un odre con ron, yo representaba un guerrero practico y callado asi que estaba esperando una oportunidad de que me preguntaran mi nombre. La parejita empezo a interactuar enseguida y ni siquiera se presentaron como personajes. &lt;br/&gt;&lt;br/&gt; El Panda resulto un personaje bastante ocurrente, convencio al cocinero que el barco corria peligro de ser atacado por piratas al punto que hizo que el cocinero y el capitan se pelearan, despues suplanto al cocinero y nos sirvio la cena siguio tratando de en general tomar el control de las cosas e incluso convencio al hechicero (usando su habilidad de convencimiento) de congelar la punta del barco suponiendo que el barco iria tal vez mas rápido (WTF). Mi personaje se dedicaba principalmente a regañar al panda y pedirle al hechicero que hiciera entrar a su amigo en razón. &lt;br/&gt;&lt;br/&gt; Cuando el hechicero estaba a punto de atacar la punta del barco fui por el capitan para alertarlo,  llegamos justo a tiempo para ver al hechicero fallar el tiro (saco un 2). El capitan amenazó al hechicero con su espada, yo hice lo mismo con el panda, pidiendoles entrar en razón.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt; El panda ataca! Pero tengo buena evacion y falla. El capitán pide refuerzos, sujetan al panda, el hechicero levita, salto para sujetarlo de un pie tratando de hacerlo bajar cuando de pronto somos atacados por 3 'nagas' o sea, hombres pez.&lt;br/&gt;&lt;br/&gt; El hechicero congela a uno, yo savo 18 y decapito al segundo y el panda ya liberado mata de un zarpazo al tercro... y decide comerselo.&lt;br/&gt;&lt;br/&gt; Aqui se termino el timepo de la partida. El GM estaba atacado de la risa, cuando la parejita se retiro le pregunte -Porque rayos ataco el panda?- -No se! Yo tampoco lo podía creer!- dijo el GM.&lt;br/&gt;&lt;br/&gt; La verdad, que onda con ese panda?&lt;br/&gt;&lt;br/&gt; Fue divertido.&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-982083344043183814?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/982083344043183814/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=982083344043183814' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/982083344043183814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/982083344043183814'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2008/12/wowtf-en-la-mottocon.html' title='WoWtF en la Mottocon'/><author><name>rgz</name><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-25639311.post-5119560178376018767</id><published>2008-11-27T02:12:00.002-06:00</published><updated>2008-11-27T17:34:32.170-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Python vs Ruby on beautiful code, Red Beauty, Green Beauty</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt; Comparing Python vs Ruby is kind of a sport, this time I'll talk about code beauty. Python's huge advantages are its mature and insightful libraries and its faster run time. Grammar-wise, they are awfully similar. &lt;br/&gt;&lt;br/&gt; Ruby is basically an slower Python where there are no functions; methods can't be freely passed around and are called on reference without parens; lambdas can be defined in-line (blocks); monkey-patching runs wild and has a virtually endless stock of little conveniences and shortcuts.&lt;br/&gt;&lt;br/&gt; Its actually no small loot, the niceties cut the character count and the more obscure shortcuts you know the more compact you can make your code. You can see dramatic differences on code length between beginner and expert Ruby devs.&lt;br/&gt;&lt;br/&gt; This is what I call &lt;font color='red'&gt;&lt;b&gt;Red Beauty&lt;/b&gt;&lt;/font&gt;: Ruby focuses on making code easier to write.&lt;br/&gt;&lt;br/&gt; Some of the features are simple trade-offs and I feel Python makes the right choices more often, I prefer the slot based philosophy of object orientation and having to use parens on methods is an small price to pay.&lt;br/&gt;&lt;br/&gt; Functions vs blocks are a false dichotomy, multiline lambdas could solve both problems but if I have to choose I prefer first class function objects, you can't pass more than one block to a method in Ruby.&lt;br/&gt;&lt;br/&gt; The near ban on monkey-patching can be painful, mostly in your pride, since its cooler to use your own methods on strings than wrappers, but I'll argue that its thanks to this Python has better libraries. Python libraries will always be superior period, expect me to byte my tongue in six years, but I think the philosophies of Python make for better module writing.&lt;br/&gt;&lt;br/&gt; So what about the niceties and shortcuts? Well its a mixed bag... I miss string interpolation but that's about it. The different ways to turn an string into a hash actually bother me because it means I have to learn many ways to do something to understand somebody else's code and code written using spacial case shortcuts can need complete re-writing when the specs change.&lt;br/&gt;&lt;br/&gt; So this is what I call &lt;font color='green'&gt;&lt;b&gt;Green Beauty&lt;/b&gt;&lt;/font&gt;: Python focuses on making code easier to maintain.&lt;br/&gt;&lt;br/&gt; So which is more beautiful? Both, they just have a different shade of beauty.&lt;br/&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-5119560178376018767?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/5119560178376018767/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=5119560178376018767' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5119560178376018767'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5119560178376018767'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2008/11/python-vs-ruby-on-beautiful-code-red.html' title='Python vs Ruby on beautiful code, Red Beauty, Green Beauty'/><author><name>rgz</name><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-25639311.post-825217161667557676</id><published>2008-11-24T03:22:00.002-06:00</published><updated>2008-11-24T11:18:10.950-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='random'/><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><title type='text'>The Bible is bullshit</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I know it, you know it, they know it, but they're damn funny while knowing it, enjoy:&lt;br/&gt;&lt;br/&gt;&lt;div class='youtube-video'&gt;&lt;object width='425' height='355'&gt;&lt;param name='movie' value='http://www.youtube.com/v/8RV46fsmx6E'&gt; &lt;/param&gt;&lt;param name='wmode' value='transparent'&gt; &lt;/param&gt;&lt;embed src='http://www.youtube.com/v/8RV46fsmx6E' type='application/x-shockwave-flash' wmode='transparent' width='425' height='355'&gt; &lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br/&gt;&lt;br/&gt;Penn &amp;amp; Teller; The Bible is Bullshit.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-825217161667557676?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/825217161667557676/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=825217161667557676' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/825217161667557676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/825217161667557676'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2008/11/bible-is-bullshit.html' title='The Bible is bullshit'/><author><name>rgz</name><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-25639311.post-5085645297954365104</id><published>2008-11-15T23:33:00.004-06:00</published><updated>2008-11-17T15:41:38.887-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='facepalm.jpg'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>PHP5 Iterators. MySQL iterator example.</title><content type='html'>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;PHP is stupid, enough said. Recently I wanted to abstract a table printing function so it could work with either arrays and mysql. In Python this is screams iterator and since I heard PHP5 supported iterators I alway wanted to write one. So before get to the PHP let me explain the Python way first:&lt;br /&gt;&lt;br /&gt;&lt;big&gt;The Pythonic Iterator Protocol:&lt;/big&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Take the object to traverse, call its '__iter__()' method to obtain/initialize it&lt;/li&gt;&lt;li&gt;Call its 'next()' to obtain the current item&lt;/li&gt;&lt;li&gt;Exit from the iteration when 'next()' raises the 'StopIteration'&lt;/li&gt;&lt;/ol&gt;Simple isn't it? All the work is done in 'next()' and all it has to do is return a value or raise 'StopIteration'&lt;br /&gt;&lt;br /&gt;&lt;big&gt;&lt;br /&gt;The PHP Iterator Protocol:&lt;/big&gt;&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Call 'rewind()' to make sure we are iterating from the begining.&lt;/li&gt;&lt;li&gt;Call 'valid()', if it returns false exit from the iteration.&lt;/li&gt;&lt;li&gt;Take the first element by calling 'current()' fetching the first element.&lt;/li&gt;&lt;li&gt;Optionally get the key of the first element by calling 'key()'.&lt;/li&gt;&lt;li&gt;Call 'next'()' to do whatever is necesary to fetch next item, ignore the return value.&lt;/li&gt;&lt;li&gt;Call 'valid()', if it returns false exit from the iteration.&lt;/li&gt;&lt;li&gt;Take the next element by calling 'current()'.&lt;/li&gt;&lt;li&gt;Optionally get the key of the next element by calling 'key()'.&lt;/li&gt;&lt;li&gt;Call 'next'()' to do whatever is necesary to fetch next item, ignore the return value.&lt;/li&gt;&lt;li&gt;Repeat steps from 6 to 9.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt; "Wait a minute!" you say "steps 2-5 are the same that steps 6-9!" No they aren't. Steps 6-9 operate in the "next" item, the one 'next()' fetched for us. steps 2-5 operate on some ghostly "first" item that nobody has fetched yet.&lt;br /&gt;&lt;br /&gt; So 'valid()', 'current()' and 'key()' have to behave differently for the first run. In practice it's sufficient with calling 'next()' from within 'valid()' the first time. But the two resons why this is horrible are because...&lt;br /&gt; &lt;br /&gt; &lt;big&gt;OOP and semantic purity are like M. Night Shyamalan and plot twists:&lt;/big&gt;&lt;br /&gt;&lt;br /&gt; One implies the other, and it hurts when it doesn't match our expectatives. In OOP methods are named in a way that you know what they do just from looking at its name. The boolean method 'valid()' suggest a simple procedure to ensure the currently selected item is part of the iteration you don't expect it to also fetch the first item. Another problem is one of efficiency, for an array with N elements 'valid()' will have to make a test N times where it will evaluate the same allways except the very first case.&lt;br /&gt;&lt;br /&gt; No, we have to take the inicialization out of the loop. OOP principles tell us the constructor is the place to make these set ups. But there is a problem, 'rewind()' is called just before the iteration begins! So we find ourselves in a dichcotomy:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Fetch the first item in '__construct()', make 'rewind()' do nothing.&lt;/li&gt;&lt;li&gt;Fetch the first item in 'rewind()', that is, call 'next()' after rewinding.&lt;/li&gt;&lt;/ol&gt; Either way 'rewind()' is a lier because it doesn't do what its name says it does. Now if I have to choose the leser evil, option 2 is the way to go, because it makes the iterator reusable which is the purpose of calling 'rewind()' in the first place. And so hereby I present:&lt;br /&gt;&lt;br /&gt;&lt;big&gt; A simple PHP MySQL Iterator:&lt;/big&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="python"&gt;&lt;br /&gt;class mysqlIter implements Iterator{&lt;br /&gt;    private $resource;&lt;br /&gt;&lt;br /&gt;    private $count = 0;&lt;br /&gt;    private $pos = -1;&lt;br /&gt;    private $valid;&lt;br /&gt;    private $curval;&lt;br /&gt;    public function __construct($resource){&lt;br /&gt;        $this-&amp;gt;resource = $resource;&lt;br /&gt;    }&lt;br /&gt;    public function next(){&lt;br /&gt;        if ($value = mysql_fetch_assoc($this-&amp;gt;resource)){&lt;br /&gt;            $this-&amp;gt;valid = true;&lt;br /&gt;            $this-&amp;gt;curval = $value;&lt;br /&gt;            $this-&amp;gt;pos++;&lt;br /&gt;        } else {&lt;br /&gt;            $this-&amp;gt;valid = false;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    public function valid(){&lt;br /&gt;        return $this-&amp;gt;valid;&lt;br /&gt;    }&lt;br /&gt;    public function current(){&lt;br /&gt;        return $this-&amp;gt;curval;&lt;br /&gt;    }&lt;br /&gt;    public function key(){&lt;br /&gt;        return $this-&amp;gt;pos;&lt;br /&gt;    }&lt;br /&gt;    public function rewind(){&lt;br /&gt;        mysql_data_seek($this-&amp;gt;resource, 0);&lt;br /&gt;        $this-&amp;gt;next();&lt;br /&gt;    }&lt;br /&gt;    public function count(){&lt;br /&gt;        return mysql_num_rows($this-&amp;gt;resource);&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;big&gt; Aftermat.&lt;/big&gt;&lt;br /&gt;&lt;br /&gt; At first I wasn't aware 'next()' was not going to get called until the second leap, then 'rewind()' started to mess up the result, so it took me a little longer to implement the iterator. I blame the PHP way and its documentation.&lt;br /&gt;&lt;br /&gt; A php-head will tell me that this is a case of PHP just being a different language, not stupid but the devil is in the details. For instance it is a good argument to say that there is nothing incosistent on rewind calling next() because it means a manually rewinded iterator is pointing to its first item always but this opens the question, why would you manually access the first item in an iterator? The answer is because you aren't exactly handling an iterator but a data structure that is iterable. Iteration happens direclty to the object, in Pythonland most iterables actually use a proxy iterator object (that's the purpose of '__iter__()') which means, among other things, that iterable objects don't need to contain iterator related attributes o methods.&lt;br /&gt;&lt;br /&gt; Iterable objects in Python don't usually carry an internal pointer or implement next(), they simply have an '__iter__()' method that returns an object that does so.&lt;br /&gt;&lt;br /&gt; Another implication is that, because a new iterator is instantiated on demand every time, the same data structure can be traversed by multiple clients without conflicts unlike PHP iterators.&lt;br /&gt;&lt;br /&gt; But there are other problems with the argument that 'rewind()' calling 'next()' ensures the internal pointer is at the right position. One of them is that, if directly accessing an iterable is so desirable, then one would expect people to access freshly instantiated iterators. That means '__construct()' also should call 'next()', just in case.&lt;br /&gt;&lt;br /&gt; But if an iterator is instantiated and then used (a very common pattern) then the first item would have been fetched twice!!&lt;br /&gt;&lt;br /&gt; In short, iterators in PHP5 suck.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-5085645297954365104?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/5085645297954365104/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=5085645297954365104' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5085645297954365104'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/5085645297954365104'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2008/11/php5-iterators-mysql-iterator-example.html' title='PHP5 Iterators. MySQL iterator example.'/><author><name>rgz</name><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-25639311.post-142041449178352893</id><published>2007-04-11T22:39:00.002-05:00</published><updated>2008-11-17T10:44:35.474-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>no link no roll del.icio.us linkroll no funciona en blogger</title><content type='html'>Soy el unico que tiene problemas para poder insertar un linkroll de del.icio.us en blogger?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-142041449178352893?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://del.icio.us/help/linkrolls' title='no link no roll del.icio.us linkroll no funciona en blogger'/><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/142041449178352893/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=142041449178352893' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/142041449178352893'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/142041449178352893'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2007/04/no-link-no-roll-delicious-linkroll-no.html' title='no link no roll del.icio.us linkroll no funciona en blogger'/><author><name>rgz</name><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-25639311.post-8484012420179308257</id><published>2007-02-17T02:34:00.002-06:00</published><updated>2008-12-11T09:06:06.931-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><title type='text'>Mi encuentro con la ley de la concervacion del movimiento.</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_UxXsQIPZ5Lw/ReP0qaUUtGI/AAAAAAAAAAU/4RMRZHYTKfM/s1600-h/Imagen027.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_UxXsQIPZ5Lw/ReP0qaUUtGI/AAAAAAAAAAU/4RMRZHYTKfM/s400/Imagen027.jpg" alt="" id="BLOGGER_PHOTO_ID_5036137817786594402" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_UxXsQIPZ5Lw/ReP0P6UUtFI/AAAAAAAAAAM/TxLL3hlMELk/s1600-h/Imagen026.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://1.bp.blogspot.com/_UxXsQIPZ5Lw/ReP0P6UUtFI/AAAAAAAAAAM/TxLL3hlMELk/s200/Imagen026.jpg" alt="" id="BLOGGER_PHOTO_ID_5036137362520061010" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Podrá ser una sorpresa para algunos pero yo nunca aprendí a usar una bicicleta, la bicicleta, me decía, es un transporte inútil en el ambiente urbano en el que nos movemos. Mucho mas lento que un auto y mucho mas peligroso que andar a pie, nunca vi un motivo de subirme a una bicicleta.&lt;br /&gt;&lt;br /&gt;Asi, cuando &lt;a href="http://kenrro.blogspot.com/"&gt;Kenrro&lt;/a&gt; me ofrecio prestarme su bicicleta hace unos años se sorprendió cuando le dije que no sabia usarlas. Desde entonces me amenazó con hacerme subir a una, y el dia de la promesa llego hace poco, la semana pasada para ser exactos. &lt;span class="" style="display: block;" id="formatbar_CreateLink" title="Link" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;Lo que nunca se aprende jamás se olvida.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;El lugar del lanzamiento fue el agradable parque Fundidora, llegamos a T - 60 y el equipo costo 40 pesos la hora. El despegue fue lento y peligroso, sorteando a otros ciclistas y niños, logré finalmente tomar velocidad, sin embargo nunca conseguí mantener la bicicleta derecha por mas de 2 segundos. Fue entonces cuando Kenrro me dio un pequeño concejo que estoy seguro todos saben menos yo.&lt;br /&gt;&lt;br /&gt;"Gira para el lado que te estes cayendo, si te caes a la derecha gira a la derecha, y viceversa, creo que es obvio no?"&lt;br /&gt;&lt;br /&gt;No, para mi no. Pero este concejo era todo lo que necesitaba para empezar a, ahora si, usar la bicicleta como se suponque que se deben de usar! Fue como en esas peliculas de viaje a las estrellas donde todo se arregla invirtiendo la polaridad del ocilotropicosubquatico.&lt;br /&gt;&lt;br /&gt;El problema ahora, por supuesto, no era avanzar sino detenerme, me cai unas dos veces de la Bicicleta, más una docena de aterrisajes menos aparatosos, pero no menos vergonzosos.&lt;br /&gt;&lt;br /&gt;En si ahora puedo tachar otro articulo de la lista de las cosas que me separan de la gente normal (aww...)  y obtuve una habilidad nueva que honestamente todavía no acabo de apreciar.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;rgz level up!&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;rgz has learned [[Bicycle]]&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;+1 SP&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;+3 SPEED&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;- 15 HP ouch!!!!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Oh si, las fotos son, una antes del despegue inicial, la otra despúes de la segunda caida (que no fue documentada para la posteridad).&lt;br /&gt;&lt;br /&gt;Quiero darle muchas gracias a mis amigos Mague, Rosy y sobre todo a Kenrro que me convenció de subirme a esa cosa del demonio.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-8484012420179308257?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://xkcd.com/c226.html' title='Mi encuentro con la ley de la concervacion del movimiento.'/><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/8484012420179308257/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=8484012420179308257' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8484012420179308257'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/8484012420179308257'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2007/02/mi-encuentro-con-la-ley-de-la.html' title='Mi encuentro con la ley de la concervacion del movimiento.'/><author><name>rgz</name><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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_UxXsQIPZ5Lw/ReP0qaUUtGI/AAAAAAAAAAU/4RMRZHYTKfM/s72-c/Imagen027.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-25639311.post-115173029876062712</id><published>2006-06-30T23:32:00.002-05:00</published><updated>2008-11-17T10:42:45.782-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><category scheme='http://www.blogger.com/atom/ns#' term='mexico'/><title type='text'>Videos de la corrupción de Calderón</title><content type='html'>&lt;span style="font-size:78%;"&gt;&lt;span style="font-weight: bold;"&gt;[+]tags: Miguel de Icaza, Calderon, Peje &lt;span style="font-style: italic;"&gt;tagging beta&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Reciente mente &lt;a href="http://www.mono-project.com/Main_Page"&gt;Miguel de Icaza&lt;/a&gt; comento sobre la campaña de difamacion contra Andres Manuel López Obrador alias "El Peje".&lt;br /&gt;&lt;br /&gt;Los comentariós son reminicentes del pánico comunista durante la segunda guerra mundial.&lt;br /&gt;&lt;br /&gt;Claro que en realidad solo intentan distraer al público para que olvide que Calderón fue atrapado en un escandalo de corrupción haciendo mal uso de su posición para beneficiarse.&lt;br /&gt;&lt;br /&gt;En especial son tres videos:&lt;br /&gt;   http://www.youtube.com/watch?v=1hOZr3n8XWs&lt;br /&gt;   http://www.youtube.com/watch?v=ijvR5q6jx_Q&lt;br /&gt;   http://www.youtube.com/watch?v=7NYwN1wI8HU&lt;br /&gt;y otros videos aqui: http://www.youtube.com/profile_videos?user=senderodelpeje&lt;br /&gt;&lt;br /&gt;No se dejen engañar, Calderón no va a volverse honesto de la noche a la mañana. Y no olviden votar este Domingo!!&lt;br /&gt;&lt;br /&gt;&gt;&gt;&gt;class boleta(object):&lt;br /&gt;...       __voto = None&lt;br /&gt;...       def setvoto(self,voto):&lt;br /&gt;...           self.__voto = voto&lt;br /&gt;...       def getvoto(self):&lt;br /&gt;...             return "El voto es secreto!!"&lt;br /&gt;...       voto = property(getvoto,setvoto)&lt;br /&gt;&gt;&gt;&gt;MiVoto = boleta()&lt;br /&gt;&gt;&gt;&gt;MiVoto.voto = raw_input("Por quien quieres votar? ")&lt;br /&gt;&gt;&gt;&gt;print MiVoto.voto&lt;br /&gt;El voto es secreto!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-115173029876062712?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.youtube.com/profile_videos?user=senderodelpeje' title='Videos de la corrupción de Calderón'/><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/115173029876062712/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=115173029876062712' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/115173029876062712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/115173029876062712'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2006/06/videos-de-la-corrupcin-de-caldern.html' title='Videos de la corrupción de Calderón'/><author><name>rgz</name><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-25639311.post-114956857826435913</id><published>2006-06-05T22:44:00.003-05:00</published><updated>2008-11-17T10:43:58.617-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><title type='text'>Video Games Live: zOMG!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/6219/2681/1600/ticketmaster_big_final.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/6219/2681/400/ticketmaster_big_final.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:78%;" &gt;[+] games, concerts, awesome (&lt;span style="font-style: italic;"&gt;tagging betta)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;En serio, yo nunca utilizo la expresion "&lt;a href="http://www.encyclopediadramatica.com/index.php/Zomg"&gt;zOMG&lt;/a&gt;" excepto para burlarme de niños pequeños. Pues bien, aqui va: zOMG!! zOMG!! zOMGWNz0r!! Este es el evento que todo gamer ha esperado toda su vida!!! &lt;span style="font-size:78%;"&gt;y me lo voy a perder ^__^ &lt;a href="http://www.sorethumbsonline.com/d/20060501.html"&gt;wiiiiiiiiiiii&lt;/a&gt;!!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Así como &lt;a href="http://www.italiansrus.com/"&gt;Rómulo y Remo&lt;/a&gt; fueron criados por una loba salvaje, así muchos de nosotros fuimos educados por aparatos electrónicos que nos enseñaron lecciones valiosas como: &lt;span style="font-style: italic;"&gt;Todo virus se cura con tres capsulas del mismo color,  nunca patees una concha de tortuga contra una pipa verde, no molestes a los gorilas&lt;/span&gt; y -por supuesto- &lt;span style="font-style: italic;"&gt;entra solito en la casa de un anciando extraño y toma cualquier espada de madera que encuentres, son gratis&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;De que les estoy hablando? Pues verán, la fantástica comunidad de &lt;a href="http://www.ocremix.org/"&gt;OverClocked Remix&lt;/a&gt;, quienes se dedican a la nomble tarea de coleccionar, clasificar y distribuir remixes de la musica de los videojuegos nuevos y de antaño han dado el próximo paso y llevado esto al siguiente nivel.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.videogameslive.com/"&gt;Video Games Live&lt;/a&gt;, es un concierto en vivo, reune varios de los compositores más talentosos de OCRemix y los lleva al rededor del mundo tocando en estadios.&lt;br /&gt;&lt;br /&gt;Pero cuando vienen a México? Al parecer nunca, no tienen planeado venir aqui, y la única forma que me queda de ir al concierto sin gastarme todo mi capital líquido sería conducir 12 hrs hasta &lt;a href="http://www.videogameslive.com/index.php?s=dates"&gt;Houston este 14 de Julio&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Hey! tengo parientes en Houston no? Porque no voy? Pues porque tengo un nuevo trabajo y estoy a prueba, no puedo irme a 10 dias de entrar, además, aún no me han pagado...&lt;br /&gt;&lt;br /&gt;Qué haré? Pues seguir escuchando la música de OCRemix, ya sea bajandola gratuitamente del sitio o escuchando la webcast en &lt;a href="http://oc.ormgas.com/"&gt;Ormgas&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Dénle una oportunidad, bajense algo de musica, es gratis... es una orden!&lt;br /&gt;&lt;br /&gt;&gt;&gt;&gt;import money; money.buy(me,tickets)&lt;br /&gt;Traceback (most recent call last):&lt;br /&gt;File "&lt;stdin&gt;", line 1, in ?&lt;br /&gt;ImportError: No module named money&lt;br /&gt;&gt;&gt;&gt;# :(&lt;br /&gt;&lt;/stdin&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-114956857826435913?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.videogameslive.com/' title='Video Games Live: zOMG!'/><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/114956857826435913/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=114956857826435913' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/114956857826435913'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/114956857826435913'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2006/06/video-games-live-zomg.html' title='Video Games Live: zOMG!'/><author><name>rgz</name><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-25639311.post-114895286839995875</id><published>2006-05-29T20:15:00.002-05:00</published><updated>2008-11-17T10:42:34.070-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><title type='text'>Plaza Qual</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/6219/2681/1600/pq.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://photos1.blogger.com/blogger/6219/2681/200/pq.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:78%;" &gt;[+] 'theatre', 'muppets', 'musical' &lt;/span&gt;&lt;span style="font-style: italic; font-weight: bold;font-size:78%;" &gt;tagging beta&lt;/span&gt;&lt;span style="font-weight: bold;font-size:78%;" &gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Para niños bien crecidos.&lt;br /&gt;&lt;br /&gt;Este fin de semana tuve la oportunidad de ver la presentación de Plaza Qual, una obra musical puesta en escena por Producciones Excalibur, que cuenta la historia de los habitantes de una triste vecindad.&lt;br /&gt;&lt;br /&gt;Como es sabido, tengo un profundo resentimiento contra los musicales, pero Plaza Qual es diferente, sus canciones no son canciones, son crueles himnos contra la humanidad, la honestidad, la decencia y todo lo que es bueno.&lt;br /&gt;&lt;br /&gt;Fue muy divertido. Hablando en serio, Plaza Qual es una obra de humor irreverente que se enfoca en esas pequeñas tragedias sin consecuencia que aquejan la vida de los adultos jóvenes. Recién egresados de licenciatura, estas pobres almas deambulan por el mundo enfrentando tremendos problemas como, ¿y ahora en que trabajo? ¿como pago la cuenta del Internet? y ¿porque mi compañero de cuarto es tan desaseado?&lt;br /&gt;&lt;br /&gt;Con un humor a la vez adulto pero sencillo y sin pretensiones, Plaza Qual es una gran manera de quemar horas libres y recargarte las baterías con humor.&lt;br /&gt;&lt;br /&gt;Peero, desafortunadamente solo se presentó dos días. Estén atentos para la próxima vez, Vean lo!&lt;br /&gt;&lt;br /&gt;Calificación: 4 estrellas (la máxima calificación que jamás le halla dado a un es un musical!!!)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-114895286839995875?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.fotolog.com/excalibur_rjvl' title='Plaza Qual'/><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/114895286839995875/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=114895286839995875' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/114895286839995875'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/114895286839995875'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2006/05/plaza-qual.html' title='Plaza Qual'/><author><name>rgz</name><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-25639311.post-114636549283472668</id><published>2006-04-29T21:30:00.003-05:00</published><updated>2008-11-17T10:41:45.305-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><category scheme='http://www.blogger.com/atom/ns#' term='movies'/><title type='text'>Ultravioleta: Falla total.</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/6219/2681/1600/ultraviolet_v1.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://photos1.blogger.com/blogger/6219/2681/200/ultraviolet_v1.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;h5&gt;[+] 'Ultraviolet', 'Bad movies', 'Milla Jovovich' tagging beta&lt;/h5&gt;&lt;br /&gt;&lt;br /&gt;Para todos aquellos que todavía no han visto "Ultravioleta", como los envidio...&lt;br /&gt;&lt;h3&gt;trama&lt;/h3&gt;&lt;br /&gt;La película es una gran falla. No quiero decir que sea mala -por supuesto que lo es- pero cuando digo que es una falla quiero decir que la pelicula no hace mucho y lo poco que hace lo hace mal.&lt;br /&gt;&lt;br /&gt;Ya se podran imaginar que Ultravioleta, como película de accion que es, sería pobre en trama, eso no es ninguna sorpresa, además tampoco tiene gran desarrollo de personajes y los pocos que hay son en verdad planos. ¿Pero que importa? Uno va a ver Ultravioleta esperando ver peleas impresionantes y ya! ¿no es asi?&lt;br /&gt;&lt;br /&gt;No es asi.&lt;br /&gt;&lt;br /&gt;Las "peleas" en Ultravioleta son muy aburridas. La mayoria de ellas consisten en docenas y centenas de anonimos soldados disparando... que? salvas? Aparentemente estos hombres no podrian acertarle a un elefante aunque lo tuvieran a un metro de la nariz.&lt;br /&gt;&lt;br /&gt;Y los encuentros que uno pensaría que serían más interesantes pasan detras del telon, en cuando Violeta se encuentra rodeada de enemigos la camara da un giro brusco, o adopta un angulo dificil, o se cierran las puertas y cuando se abren los enemigos ya se encuentran el el piso.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;personajes&lt;/h3&gt;&lt;br /&gt;Violeta como todo en Ultravioleta, es sumamente pretensiosa y eso trae varias consecuencias.&lt;br /&gt;&lt;br /&gt;Tal vez la peor es que uno nunca duda que Violeta matara a quien se le interponga. Es decir, uno sabe que el heroe &lt;i&gt;casi siempre&lt;/i&gt; triunfa al final, pero ese &lt;i&gt;casi&lt;/i&gt; nos recuerda que el heroe puede ser vencido, y esa duda crea la emoción en el espectador.&lt;br /&gt;&lt;br /&gt;No en esta pelicula, Violeta matara a sus enemigos, a cada uno de ellos, en cada encuentro, sin derramar una gota de sudor. Lo cual pudiera llegar a ser perdonado, si el personaje de Violeta fuera mas profundo... Violeta perdió un bebe y estuvo internada en un laboratorio, fin de la historia.&lt;br /&gt;&lt;br /&gt;De los demás personajes no vale la pena ni hablar.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;efectos visuales&lt;/h3&gt;&lt;br /&gt;¿La pelicula tiene buenos efectos especiales? Eso creo. Es decir, todo pasa tan rápido y tan cerca de la camara que no se aprecia gran cosa.&lt;br /&gt;&lt;br /&gt;El diseño estético, sumamente futurista, minimalista y simbolista (en ese orden), es lo único rescatable de la película aunque el simbolismo es poco inspirado asi que dejemolso en futirista y minimalista.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;música&lt;/h3&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;No es mala pero tampoco es buena. Normalmente soy bueno para recordar melodías pero no recuerdo una sola de esta película. La musica de Ultravioleta demuestra el gran valor de produccion ($$$) que tiene. Con grandes coros vocales e instrumentos de orquesta, la musica este filme evoca un drama épico, genérico. Si la musica si funciona, si crea un ambiente epico, pero genérico.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;calificación&lt;/h3&gt;&lt;br /&gt;-1: no ver.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-114636549283472668?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.sonypictures.com/movies/ultraviolet/index.html' title='Ultravioleta: Falla total.'/><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/114636549283472668/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=114636549283472668' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/114636549283472668'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/114636549283472668'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2006/04/ultravioleta-falla-total.html' title='Ultravioleta: Falla total.'/><author><name>rgz</name><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-25639311.post-114607595854515184</id><published>2006-04-26T13:16:00.002-05:00</published><updated>2008-11-17T10:41:29.509-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><title type='text'>Nueva direccion</title><content type='html'>Ok, esta es la direccion a la que querrán mandarme correo: &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/6219/2681/1600/mail.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://photos1.blogger.com/blogger/6219/2681/400/mail.png" alt="" border="0" /&gt;&lt;/a&gt;Aprovecho para recomendarles mailas.com/fastmail.fm (y si se suscriben solo pongan mi nombre de usuario en referencia, aunque no es necesario) .&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-114607595854515184?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://mailas.com' title='Nueva direccion'/><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/114607595854515184/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=114607595854515184' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/114607595854515184'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/114607595854515184'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2006/04/nueva-direccion.html' title='Nueva direccion'/><author><name>rgz</name><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-25639311.post-114446648450659279</id><published>2006-04-07T22:02:00.002-05:00</published><updated>2008-11-17T10:41:01.589-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spanish'/><title type='text'>Ok... [+] Linux, Security, zOMG Kittens! (tagging beta)</title><content type='html'>&lt;span style="font-size:78%;"&gt;&lt;span style="font-weight: bold;"&gt;[+] Linux, Security, zOMG Kittens! (&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic; font-weight: bold;font-size:78%;" &gt;tagging beta&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="font-weight: bold;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;No esperabas ver algo interesante en la primera noticia de este blog o si?&lt;br /&gt;&lt;br /&gt;Bueno tal vez pueda disminuir  la decepcion general  de este post si empiezo  por explicar el titulo de mi blog.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;(Linux)&lt;/span&gt; en sistemas basados en unix, (y en particular &lt;a href="http://www.ubuntu.com/"&gt;Ubuntu&lt;/a&gt;) el comando cat sirve para leer desde algún archivo. El "archivo" /dev/random no es un verdadero archivo sino un generador de numeros (pseudo)aleatorios.&lt;br /&gt;&lt;br /&gt;O sea, cat /dev/random devuelve basura aleatoria :P&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;(Security)&lt;/span&gt; Se saben el chiste del usuario que introdujo "cat /dev/random &gt;&gt; hda" en su terminal? Pues no fue un chiste, esto le paso de verdad a un pobre tipo y borro todo su disco duro :(&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;(zOMG Kittens!) &lt;/span&gt;Si tienen alguna obcesion enferma (con diversos grados de gravedad) por los gatos &lt;a href="http://www.kittenwar.com/"&gt;Kittenwar&lt;/a&gt; les recomiendo. La mechanica es simple, les muestran dos gatos y botan por el que mas les guste. Estos sitios serian muy aburridos de no ser porque mis gatos tambien estan concursando. Y estos son&lt;br /&gt;&lt;br /&gt;&gt;&gt;&gt;gatos&lt;br /&gt;['&lt;a href="http://kittenwar.com/kittens/65738/"&gt;bimbo&lt;/a&gt;','&lt;a href="http://kittenwar.com/kittens/65740/"&gt;kikis&lt;/a&gt;','&lt;a href="http://kittenwar.com/kittens/65741/"&gt;dany&lt;/a&gt;']&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/25639311-114446648450659279?l=rgzblog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rgzblog.blogspot.com/feeds/114446648450659279/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=25639311&amp;postID=114446648450659279' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/114446648450659279'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/25639311/posts/default/114446648450659279'/><link rel='alternate' type='text/html' href='http://rgzblog.blogspot.com/2006/04/ok-linux-security-zomg-kittens-tagging.html' title='Ok... [+] Linux, Security, zOMG Kittens! (tagging beta)'/><author><name>rgz</name><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>
