tag:blogger.com,1999:blog-37982152009-07-11T05:47:50.036-03:00Sebastian Bassi (aka Bloguero Connor)Soy el bloguero Connor.Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.comBlogger332125tag:blogger.com,1999:blog-3798215.post-75395439338586409192009-07-07T20:03:00.003-03:002009-07-07T20:16:17.851-03:00Otro cuento del tío (otra que el fraude nigeriano)Hoy me llegó un spam con una variación interesante del fraude nigeriano. No quiero saber que harán si contesto que si, que estoy interesado en ir a la conferencia de "<span style="font-weight: bold;">GLOBAL AID ORGANIZATION</span>", en NY y en Senegal. Probablemente pidan gastos por adelantado para trámites. Es gente muy buena (a diferencia de los que me quieren hacer participar en retirar plata clandestinamente de la cuenta de un ex presidente corrupto) porque me pagan el pasaje: "<span style="font-weight: bold;">benevolent donors from across the world and the Organizing Committee will provide round trip air tickets and accommodation for the period of participants Stay in the U.S, to all registered participants.</span>"<br />Lo lamentable es que hay gente que cae en esto :(<br /><br />Mensaje completo:<br /><br /><div id=":1qy" class="ii gt"><div> <p><span style=";font-family:Garamond;font-size:14;" lang="EN-GB" >Dear friend,<br /><br /><br />I am Miss Cynthia.wilfrey. a member of (GLOBAL AID ORGANIZATION) Washington D.C U.S.A. it is my pleasure to invite you to participate in our global combined conferences taking place from 17th – 20th August 2009 at Washington D.C in the United States and in Dakar- Senegal Africa from 24th -27th August 2009.<br /><br />In our request to invite people from various countries around the world, I went in search of e-mails on the Google web site as a means of contacting people and organizations. If you are interested to participate and want to represent your country or your organization, you may contact the conference secretariat of the organizing committee for details and information.<br /><br />Inform them that you were invited to participate by a friend of yours (Miss Cynthia.wilfrey.) who is a staff of the International Committee, of the Red Cross and a member of (GLOBAL AID ORGANIZATION) I believe that we may have the opportunity to meet if you may be willing to participate in this event. The benevolent donors from across the world and the Organizing Committee will provide round trip air tickets and accommodation for the period of participants Stay in the U.S, to all registered participants.<br /><br />If you are a holder of passport that may require visa to enter into the United States you may inform the conference secretariat at the time of registration, as the organizing committee is responsible for all visa arrangements and travel assistances.<br /><br />Below is the contact address of the conference secretariat .By email: </span><span style=";font-family:Garamond;font-size:14;" ><a href="http://us.mc631.mail.yahoo.com/mc/compose?to=g.a.osecretarydesk@post.com" target="_blank"><span lang="EN-GB">g.a.osecretarydesk@post.com</span></a></span><span style=";font-family:Garamond;font-size:14;" lang="EN-GB" ><br /><br />you can also contact me on my private e-mail: </span><span style=";font-family:Garamond;font-size:14;" ><a href="http://us.mc631.mail.yahoo.com/mc/compose?to=cynthia.wilfrey@gmail.com" target="_blank"><span lang="EN-GB">cynthia.wilfrey@gmail.com</span></a></span><span style=";font-family:Garamond;font-size:14;" lang="EN-GB" ><br /><br /><br />Sincerely,<br /><span style="color: rgb(136, 136, 136);"><br />Miss cynthia.wilfrey.</span></span></p></div></div><br /><span style=";font-family:Garamond;font-size:14;" lang="EN-GB" ></span><div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-7539543933858640919?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-51942079543140163262009-07-04T16:22:00.002-03:002009-07-04T16:26:20.077-03:00Muestra de la intolerancia religiosa<div class="nota-LN"><span class="nota-titulo"><a href="http://www.lanacion.com.ar/nota.asp?nota_id=1146562" target="_blank" title="Ir a la nota en LANACION.com">Incidente diplomático entre Francia e Irak por un vino </a></span><p>En su última visita al Palacio del Elíseo en París, el primer ministro iraquí no aceptó sentarse a la mesa porque había vino; finalmente se suspendió la comida</p><div class="path-fecha"><div><span>></span> <a href="http://www.lanacion.com.ar/nota.asp?nota_id=1146562" target="_blank" title="Ir a la nota en lanacion.com">Ir a la nota</a></div><a href="http://www.lanacion.com.ar/"><b>lanacion.com</b></a><b> </b>| Espectáculos | Viernes 3 de julio de 2009</div></div><style>@import "http://www.lanacion.com.ar/css/nocache/notaembed.css";</style><br /><br />Esto es un tema muy menor (que se haya suspendido una cena diplomatica), pero ilustra muy bien de que se trata el fanatismo religioso. Si no te gusta el vino, no lo tomes, pero no molestes a quien lo hace. ¿Es tan dificil de entender?<br />Aclaro que no tomo una gota de alcohol, no me gusta para nada y en año nuevo brindo con Coca-Cola, pero jamas se me pasaria por la cabeza prohibirle a alguien que no tome porque yo no tomo.<div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-5194207954314016326?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com1tag:blogger.com,1999:blog-3798215.post-12972662784942755362009-07-02T05:20:00.003-03:002009-07-02T05:39:50.370-03:00Gané algo!!: La estrella azul<blockquote>Yo no te pido que me bajes<br />una estrella azul<br />sólo te pido que mi espacio<br />llenes con tu luz.<br /></blockquote>Ebay me acaba de otorgar la... Estrella azul:<br /><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/estrellaAZUL-784005.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 221px;" src="http://www.bioinformatica.info/seba/uploaded_images/estrellaAZUL-784002.jpg" alt="" border="0" /></a>Esto es por tener 50 puntos positivos en ebay, donde soy usuario desde al menos 1998. Digamos que 50 puntos en 11 años no es gran cosa, pero por lo que lo uso, para mi si es mucho. En lo que se refiere a compras en el extranjero, pasé momentos dificiles entre el 2002 y el 2007 ya que el cambio no nos favorecia a los argentinos.<br /><br />Para que el post no sea tan al pedo (y para darle un poco al SEO), el video de "Yo no te pido" por Pablo Milanés.<br /><br /><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/hju_pb0Dnnw&hl=en&fs=1&"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/hju_pb0Dnnw&hl=en&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object><div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-1297266278494275536?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-39470367017439732009-06-30T19:45:00.001-03:002009-06-30T19:47:38.844-03:00Gripe A en la UNQEsto mandaron hoy desde la UNQ:<br /><br /><br /><blockquote>From: "Todos UNQ" <<a href="mailto:todosunq@unq.edu.ar">todosunq@unq.edu.ar</a>><br />Date: Tue, 30 Jun 2009 19:13:47 -0300<br />Subject: [Everyone] Gripe A: suspensión de actividades en la UNQ<br /><br />A la comunidad universitaria,<br /><br /><br />Considerando la problemática de la pandemia de Gripe A en nuestro país,<br />las autoridades de la Universidad Nacional de Quilmes (UNQ) resolvieron<br />suspender desde el 1 hasta el 31 julio las actividades académicas de<br />grado y posgrado, así como las actividades de extensión y no formales. Hasta<br />el momento, la UNQ ha sido informada acerca de dos casos de alumnos con<br />diagnóstico clínico de gripe A H1N1 por nexo epidemiológico, pero sin<br />confirmación de laboratorio. Ambos casos fueron recientemente<br />notificados y ya cuentan con alta médica.<br /><br />En este momento, nos encontramos en “etapa de mitigación” de la<br />epidemia, que busca disminuir la tasa de propagación del virus. Se<br />recomienda el autocuidado y la consulta al médico ante la aparición de<br />los síntomas. Las personas enfermas tienen que practicar el autoaislamiento<br />y quedarse en sus domicilios y, en caso de tener que salir, hacerlo con<br />barbijos.<br /><br />A partir de esta medida tomada desde la UNQ, quedan suspendidos<br />parciales, clases, coloquios, integradores y mesas de exámenes de julio. Las<br />actividades de grado programadas para esta semana y la próxima se<br />trasladan a las dos primeras semanas de agosto. El cierre de actas se posterga<br />hasta el 14 de agosto. Una vez normalizadas las actividades se reprogramará la<br />agenda académica, que será comunicada oportunamente.<br /><br />A su vez, los Secretarios y Directores de los Departamentos de la UNQ<br />evaluarán la asistencia de personal docente y administrativo y de<br />servicios, de acuerdo a las necesidades operativas, con el fin de<br />prevenir el aglomeramiento de personas y las posibilidades de contagio.<br /><br />La Universidad asumió el compromiso de informar sobre medidas de<br />prevención de contagio y transmisión de la enfermedad desde el inicio<br />de la campaña lanzada por el Ministerio de Salud de la Nación. Con el<br />objetivo de colaborar en la prevención de la enfermedad, la UNQ realizó<br />un plan de comunicación que apuntó a brindar información sobre la<br />enfermedad, así como charlas para la comunidad con destacados<br />profesionales, entre ellos la Dra. Elsa Baumeister, directora del<br />Servicio de Virus Respiratorios del Instituto Nacional de Enfermedades Infecciosas<br />''Dr. Carlos G. Malbrán''. Estas medidas apuntan a propiciar la<br />precaución pero sin entrar en pánico, ya que el único objetivo es evitar que<br />continúe la diseminación de la enfermedad.<br /><br />La UNQ continuará, durante el período de suspensión de actividades,<br />informando a la comunidad universitaria sobre las acciones a seguir por<br />medio de correos institucionales y a través de la actualización<br />constante del Portal UNQ. Recuerde que durante este período podrá comunicarse<br />vía correo electrónico a prevención_gripeA@unq.edu.ar</blockquote><div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-3947036701743973?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-7021725271450061292009-06-19T23:46:00.003-03:002009-06-20T00:50:44.475-03:00SUBE: ¿Invasión a la privacidad a gran escala?<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/dsc02587ALT-750310.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://www.bioinformatica.info/seba/uploaded_images/dsc02587ALT-750308.jpg" alt="" border="0" /></a><br /><br /><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/img0234a-720635.jpg"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 200px; height: 150px;" src="http://www.bioinformatica.info/seba/uploaded_images/img0234a-720633.jpg" alt="" border="0" /></a><br />Hoy recibí la famosa tarjeta SUBE. Es la tarjeta que servirá para viajar en todos los medios de transporte metropolitanos. No voy a hablar sobre la falta de monedas, sobre promesas incumplidas, ni nada de eso que ya todos en Argentina sabemos (aunque los de la zona AMBA sufrimos la falta de monedas, en el interior no es tan grave).<br /><br /><br /><br />El tema es que para recibir la tarjeta, tuve que completar mis<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/img0280a-751810.jpg"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px; height: 150px;" src="http://www.bioinformatica.info/seba/uploaded_images/img0280a-751808.jpg" alt="" border="0" /></a> datos filiatorios, incluyendo DNI (ademas habia que mostrar el DNI o cedula, sino no te la daban). ¿Que datos pedian? Nombre, Apellido, Fecha de nacimiento, Dirección, Telefono, DNI, email y codigo postal. Algunos datos eran optativos (email y fecha de nacimiento). En la cola que hice, mucha gente se indignaba por la cantidad de datos, pero mas que nada porque le hacian perder el tiempo, no se si era porque tenian conciencia de la <span style="font-weight: bold;">invasión a la privacidad que se supone que es </span><span style="font-weight: bold;">saber todos los datos filiatorios y a eso agregarle poder relacionarlo con nuestros movimientos</span>. Su fuese conspiranoico creeria que esta falta de monedas fue provocada para que pidamos a gritos una solución como esta, cosa que nadie se queje por un "detalle menor" como seria la toma de datos. Pero no creo eso. La falta de monedas no fue planificada, como nada es planificado en este gobierno, sino que las cosas pasan y luego en base a eso actuan o anuncian que actuan, pero creer que hay planificación aca es asumir que tienen una capacidad que no han demostrado.<br /><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/img0295a-785705.jpg"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 200px; height: 150px;" src="http://www.bioinformatica.info/seba/uploaded_images/img0295a-785703.jpg" alt="" border="0" /></a>El porque pedian estos datos variaba segun a la promotora que se le pregunte (por cierto, muy lindas chicas). Algunas decian que era por si se te perdia la tarjeta y necesitaban los datos para mandarte una nueva. O para no perder el crédito si perdemos la tarjeta. O para asegurarse que tengan una tarjeta por persona (porque es gratuita). Lo que es cierto es que era posible obtener mas de una tarjeta, haciendo 2 veces la cola, ya que en cada lugar habia mas de un stand ofreciendo tarjetas. Yo pedi una en Retiro y otra en Constitución, de esa manera tengo una tarjeta para mi y otra para mi esposa, aunque las 2 a mi nombre. Supongo que el titular de la tarjeta a la hora de tomar un subte no importa, no aparece en ningún nado (salvo en la base de datos del Banco Nación que administra esto).<br /><br />Hay que admitir que el tema de la toma de datos fue tenida en cuenta porque en el f<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/img0283a-781984.jpg"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px; height: 150px;" src="http://www.bioinformatica.info/seba/uploaded_images/img0283a-781980.jpg" alt="" border="0" /></a>ormulario habia un disclaimer del tipo que se cumplen los requisitos de la ley de protección de datos personales y que uno podia consultar sus datos hasta una vez cada 6 meses. Lo que no era claro que cosa habia que firmar, porque uno firmaba para recibir la tarjeta, pero en ningún lado decia que uno aceptaba algo o algún contrato, simplemente te pedían la firma. Ante la duda de para que era la firma, la firma que entregué fue una interpretación artística de un pacman. Una firma real con datos filiatorios completos puede ser usada vaya a saber para que.<br /><br />Desde un punto de vista técnicco la tarjeta por un lado tiene una banda magnetica (para los colectivos) y por otro tiene un chip RIFD (para el subte, es como el "<a href="http://www.monedero.com.ar/">Monedero</a>").<br /><br />En definitiva, ¿se sienten cómodos diciendole al gobierno a donde van, cuando y por que medio?<br />De última, siempre tenes la opción de pagar con monedas, si conseguis :)<div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-702172527145006129?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com2tag:blogger.com,1999:blog-3798215.post-54953642681779667552009-06-17T15:57:00.005-03:002009-06-17T17:13:43.500-03:00Como "baypasear" los escaners termicos del aeropuertoSupongamos que tenemos que viajar en avión y tenemos fiebre. Al pasar por el escaner térmico de Ezeiza (o de cualquier aeropuerto internacional), seremos detectados y forzados a hacer tramites, perder tiempo y hasta nos pueden internar compulsivamente. Las medidas a tomar varian según el pais, pero en todo caso es un transtorno para el pasajero. En algunos paises hasta de pueden hacer volver a tu lugar de origen. Demasiado trastorno por lo que por ahora es una gripe inofensiva (tengan en cuenta que muere mas gente con la gripe comun que con la famosa gripe "A").<br /><br />Los famosos escaners termicos (thermal scanners) muestran en una escala de color las distintas temperaturas de los objetos que se ponen adelante. En algunos modelos marcan con una cruz las zonas que tienen un valor de temperatura mayor que un valor pre-determinado(generalmente 37 grados).<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/nec-thermal-scan-705382.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 248px;" src="http://www.bioinformatica.info/seba/uploaded_images/nec-thermal-scan-705380.jpg" alt="" border="0" /></a><br /><br />La manera de bypasear esto es tener una temperatura corporal menor que 37 en el momento de llegar al aeropuerto en cuestión. La manera que se está usando ahora es tomar antipireticos aproximadamente 3 horas antes de la llegada a destino. En ese tiempo es cuando será el pico del efecto (debido a la cinética de distribusión de ese medicamento). ¿Cuales son los antipireticos de venta libre? El mas conocido es el <b>paracetamol</b> o <b>acetaminofén</b> (nombres genericos). A continuación los nombres comerciales (según wikipedia, aunque yo mismo puse algunos ahi):<br /><blockquote>En algunas formulaciones el paracetamol se combina con el <a href="http://es.wikipedia.org/wiki/Opioide" title="Opioide">opioide</a> <a href="http://es.wikipedia.org/wiki/Code%C3%ADna" title="Codeína">codeína</a>, a veces llamado co-codamol, como por ejemplo el <a href="http://es.wikipedia.org/wiki/Algidol" title="Algidol" class="mw-redirect">Algidol</a> (<a href="http://es.wikipedia.org/wiki/Almirall" title="Almirall" class="mw-redirect">Almirall</a>) en España. En los Estados Unidos y Canadá se vende como <span style="font-weight: bold;">Tylenol</span> 1/2/3/4; en los EE.UU. sólo se puede adquirir con receta médica, lo contrario que en <a href="http://es.wikipedia.org/wiki/Canad%C3%A1" title="">Canadá</a>. En el Reino Unido y en otros muchos países, esta combinación se vende como <span style="font-weight: bold;">Tylex CD y Panadeine</span>. Otras marcas disponibles son: <span style="font-weight: bold;">Captin, Disprol, Dymadon, Fensum, Hedex, Mexalen, Nofedol, Pediapirin,atamel y Perfalgan</span>. En España puede adquirirse indistintamente como genérico o como medicamento "de marca", como el muy conocido <i style="font-weight: bold;">Efferalgan</i> de (<a href="http://es.wikipedia.org/wiki/Upsa" title="Upsa" class="mw-redirect">Upsa</a>), <i style="font-weight: bold;">Termalgin</i> (<a href="http://es.wikipedia.org/wiki/Novartis" title="Novartis">Novartis</a>), <i style="font-weight: bold;">Gelocatil</i> o <i style="font-weight: bold;">Frenadol</i> (compuesto con Dextrometorfano, ácido ascórbico y clorfelamina comercializado por <a href="http://es.wikipedia.org/w/index.php?title=McNeil&action=edit&redlink=1" class="new" title="McNeil (aún no redactado)">McNeil</a>).<br /></blockquote>Recuerden de tomarlo aproximadamente 3 horas antes de llegar y que al subir al avión tienen que declarar los medicamentos si estos son con receta y pueden llevar consigo hasta 85 g. (3 oz.), al menos en USA y Europa donde mas rompen con este tema (ver <a href="http://www.tsa.gov/311/index.shtm">TSA</a>). En Argentina es todo un dale que va, en el 2002 viajé con una navaja suiza entre Buenos Aires y Mar del Plata como si nada. Tambien hay que llenar un formulario donde hay que mentir diciendo que no tuvo fiebre ni otros sintomas de gripe, lo cual es un delito porque ese documento es una declaración jurada. Asi que pasar el control tiene sus riesgos, pero es posible.<br /><br />Desde un punto de vista de control epidemiologicos hacer esto es un desastre, pero visto desde la perspectiva de los derechos individuales tiene sentido. Tambien aclaro que esto no es un invento mio, sino que ya <a href="http://news.yahoo.com/s/nm/20090615/od_nm/us_flu_fever;_ylt=Aqfx0y80KQg7bJc.RdUE5iISH9EA">se hizo con exito en Vietnam</a>.<div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-5495364268177966755?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-10960498022231208732009-06-16T16:23:00.003-03:002009-06-16T16:29:00.862-03:00Code sample: Haciendo una base sqlitePara una página que muestra como va progresando la secuenciación del genoma de la mitocondria del tomate, le puse una base SQLite, total es solo select y la consulta solo el grupo de trabajo (como mucho 5 personas), asi que es un ambiente donde SQLite se la tiene que bancar bien.<br />Al principo este codigo eran 5 codigos que fui haciendo a medida que iba creando tablas, pero como esto lo tendré que rehacer cada vez que tenga nuevos datos, lo junté en un solo script:<br /><br /><br /><pre><br /><span style='color: #000000'></span><span style='color: #808080'><i>#!/usr/bin/env python<br /><br /></i></span><span style='color: #ff00ff'>import</span><span style='color: #000000'> sqlite3<br /></span><span style='color: #ff00ff'>import</span><span style='color: #000000'> csv<br /></span><span style='color: #ff00ff'>import</span><span style='color: #000000'> cPickle<br /><br /></span><span style='color: #ff00ff'>from</span><span style='color: #000000'> Bio </span><span style='color: #ff00ff'>import</span><span style='color: #000000'> SeqIO<br /></span><span style='color: #ff00ff'>from</span><span style='color: #000000'> Bio.Sequencing </span><span style='color: #ff00ff'>import</span><span style='color: #000000'> Ace<br /><br />anal </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #dd0000'>"AN"<br /></span><span style='color: #000000'>dbfn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #dd0000'>'/tmp/example6-</span><span style='color: #ff00ff'>%s</span><span style='color: #dd0000'>'</span><span style='color: #ff00ff'>%</span><span style='color: #000000'>anal<br />commondir </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #dd0000'>'/home/sb/ensambleAN/'<br /></span><span style='color: #000000'>clnfn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> commondir</span><span style='color: #ff00ff'>+</span><span style='color: #dd0000'>'allseqs14junNNWD.fasta.cln'</span><span style='color: #000000'> <br />oriseqsfn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> commondir</span><span style='color: #ff00ff'>+</span><span style='color: #dd0000'>'allseqs14junNNWD.fasta'<br /></span><span style='color: #000000'>cleanseqsfn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> commondir</span><span style='color: #ff00ff'>+</span><span style='color: #dd0000'>'allseqs14junNNWDcln'<br /></span><span style='color: #000000'>dictfn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> commondir</span><span style='color: #ff00ff'>+</span><span style='color: #dd0000'>'dict14jun.dmp'</span><span style='color: #000000'> <br />ctgsfn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> commondir</span><span style='color: #ff00ff'>+</span><span style='color: #dd0000'>'allseqs14junNNWDcln.cap.contigs'<br /></span><span style='color: #000000'>coordsfn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> commondir</span><span style='color: #ff00ff'>+</span><span style='color: #dd0000'>'allseqs14jun.coords'<br /></span><span style='color: #000000'>acefn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> commondir</span><span style='color: #ff00ff'>+</span><span style='color: #dd0000'>'allseqs14junNNWDcln.cap.ace'<br /><br /><br /></span><span style='color: #808080'><i># create emptyDB<br /></i></span><span style='color: #000000'>conn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> sqlite3.connect</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>dbfn</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'>c </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> conn.cursor</span><span style='color: #ff00ff'>()<br /></span><span style='color: #808080'><i># CREATE TABLES<br /></i></span><span style='color: #000000'>c.execute</span><span style='color: #ff00ff'>(</span><span style='color: #dd0000'>"CREATE TABLE cleanreport(newID TEXT, perc TEXT, inicoord INTEGER, endcoord INTEGER, ilen INTEGER, trash TEXT, comments TEXT)"</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'>c.execute</span><span style='color: #ff00ff'>(</span><span style='color: #dd0000'>"CREATE TABLE cleanseqs(newID TEXT, cleanseq TEXT)"</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'>c.execute</span><span style='color: #ff00ff'>(</span><span style='color: #dd0000'>"CREATE TABLE ctgs(ctgID TEXT, read TEXT)"</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'>c.execute</span><span style='color: #ff00ff'>(</span><span style='color: #dd0000'>"CREATE TABLE ctgsseq(ctgID TEXT, seqs TEXT, anchtobacco BOOLEAN)"</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'>c.execute</span><span style='color: #ff00ff'>(</span><span style='color: #dd0000'>"CREATE TABLE oriseqs(newID TEXT, oldID TEXT, rawseq TEXT)"</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'>conn.commit</span><span style='color: #ff00ff'>()<br /><br /></span><span style='color: #808080'><i># POPULATE cleanreport<br /></i></span><span style='color: #000000'>fh </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #800000'>open</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>clnfn</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'>lines </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> csv.reader</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>fh,delimiter</span><span style='color: #ff00ff'>=</span><span style='color: #dd0000'>'\t'</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'><b>for</b> line <b>in</b> lines</span><span style='color: #ff00ff'>:<br /></span><span style='color: #000000'> name </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> line</span><span style='color: #ff00ff'>[</span><span style='color: #0000ff'>0</span><span style='color: #ff00ff'>]<br /></span><span style='color: #000000'> perc </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> line</span><span style='color: #ff00ff'>[</span><span style='color: #0000ff'>1</span><span style='color: #ff00ff'>]</span><span style='color: #000000'>.strip</span><span style='color: #ff00ff'>()<br /></span><span style='color: #000000'> i </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #800000'>int</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>line</span><span style='color: #ff00ff'>[</span><span style='color: #0000ff'>2</span><span style='color: #ff00ff'>]</span><span style='color: #000000'>.strip</span><span style='color: #ff00ff'>())<br /></span><span style='color: #000000'> f </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #800000'>int</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>line</span><span style='color: #ff00ff'>[</span><span style='color: #0000ff'>3</span><span style='color: #ff00ff'>]</span><span style='color: #000000'>.strip</span><span style='color: #ff00ff'>())<br /></span><span style='color: #000000'> ilen </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #800000'>int</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>line</span><span style='color: #ff00ff'>[</span><span style='color: #0000ff'>4</span><span style='color: #ff00ff'>]</span><span style='color: #000000'>.strip</span><span style='color: #ff00ff'>())<br /></span><span style='color: #000000'> trash </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> line</span><span style='color: #ff00ff'>[</span><span style='color: #0000ff'>5</span><span style='color: #ff00ff'>]</span><span style='color: #000000'>.strip</span><span style='color: #ff00ff'>()<br /></span><span style='color: #000000'> comm </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> line</span><span style='color: #ff00ff'>[</span><span style='color: #0000ff'>6</span><span style='color: #ff00ff'>]</span><span style='color: #000000'>.strip</span><span style='color: #ff00ff'>()<br /></span><span style='color: #000000'> t </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #ff00ff'>(</span><span style='color: #000000'>name,perc,i,f,ilen,trash,comm</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'> c.execute</span><span style='color: #ff00ff'>(</span><span style='color: #dd0000'>"insert into cleanreport values (?,?,?,?,?,?,?)"</span><span style='color: #000000'>, t</span><span style='color: #ff00ff'>)<br /><br /></span><span style='color: #808080'><i># POPULATE oriseqs<br /># LOAD DICTIONARY<br /></i></span><span style='color: #000000'>fh </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #800000'>open</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>dictfn</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'>old2newnames </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> cPickle.load</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>fh</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'>fh.close</span><span style='color: #ff00ff'>()</span><span style='color: #000000'> <br />new2oldnames </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #ff00ff'>{}<br /></span><span style='color: #000000'><b>for</b> x <b>in</b> old2newnames</span><span style='color: #ff00ff'>:<br /></span><span style='color: #000000'> new2oldnames</span><span style='color: #ff00ff'>[</span><span style='color: #000000'>old2newnames</span><span style='color: #ff00ff'>[</span><span style='color: #000000'>x</span><span style='color: #ff00ff'>]]</span><span style='color: #000000'> </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> x<br /><br />fh </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #800000'>open</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>oriseqsfn</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'><b>for</b> rec <b>in</b> SeqIO.parse</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>fh,</span><span style='color: #dd0000'>'fasta'</span><span style='color: #ff00ff'>):<br /></span><span style='color: #000000'> t </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #ff00ff'>(</span><span style='color: #000000'>rec.</span><span style='color: #800000'>id</span><span style='color: #000000'>,new2oldnames</span><span style='color: #ff00ff'>[</span><span style='color: #000000'>rec.</span><span style='color: #800000'>id</span><span style='color: #ff00ff'>]</span><span style='color: #000000'>,</span><span style='color: #800000'>str</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>rec.seq</span><span style='color: #ff00ff'>))<br /></span><span style='color: #000000'> c.execute</span><span style='color: #ff00ff'>(</span><span style='color: #dd0000'>"insert into oriseqs values (?,?,?)"</span><span style='color: #000000'>,t</span><span style='color: #ff00ff'>)<br /><br /></span><span style='color: #000000'>fh.close</span><span style='color: #ff00ff'>()<br /></span><span style='color: #000000'>conn.commit</span><span style='color: #ff00ff'>()<br /></span><span style='color: #000000'> <br /></span><span style='color: #808080'><i># POPULATE cleanseqs <br /></i></span><span style='color: #000000'>fh </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #800000'>open</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>cleanseqsfn</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'><b>for</b> rec <b>in</b> SeqIO.parse</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>fh,</span><span style='color: #dd0000'>'fasta'</span><span style='color: #ff00ff'>):<br /></span><span style='color: #000000'> t </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #ff00ff'>(</span><span style='color: #000000'>rec.</span><span style='color: #800000'>id</span><span style='color: #000000'>,</span><span style='color: #800000'>str</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>rec.seq</span><span style='color: #ff00ff'>))<br /></span><span style='color: #000000'> c.execute</span><span style='color: #ff00ff'>(</span><span style='color: #dd0000'>"insert into cleanseqs values (?,?)"</span><span style='color: #000000'>,t</span><span style='color: #ff00ff'>)<br /><br /></span><span style='color: #000000'>fh.close</span><span style='color: #ff00ff'>()<br /><br /></span><span style='color: #808080'><i># FOR POPULATE ctgsseq<br /></i></span><span style='color: #000000'>anclados </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> set</span><span style='color: #ff00ff'>()<br /></span><span style='color: #808080'><i># lista de cuales anclan y cuales no!!.<br /></i></span><span style='color: #000000'>fh </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #800000'>open</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>coordsfn,</span><span style='color: #dd0000'>'U'</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'><b>for</b> line <b>in</b> fh</span><span style='color: #ff00ff'>:<br /></span><span style='color: #000000'> <b>if</b> </span><span style='color: #dd0000'>'\t'</span><span style='color: #000000'> <b>in</b> line <b>and</b> </span><span style='color: #dd0000'>'Contig'</span><span style='color: #000000'> <b>in</b> line</span><span style='color: #ff00ff'>[</span><span style='color: #0000ff'>86</span><span style='color: #ff00ff'>:]:<br /></span><span style='color: #000000'> ctgn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> line.split</span><span style='color: #ff00ff'>(</span><span style='color: #dd0000'>'\t'</span><span style='color: #ff00ff'>)[</span><span style='color: #0000ff'>1</span><span style='color: #ff00ff'>]</span><span style='color: #000000'>.replace</span><span style='color: #ff00ff'>(</span><span style='color: #dd0000'>'\n'</span><span style='color: #000000'>,</span><span style='color: #dd0000'>''</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'> anclados.add</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>ctgn</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'>fh.close</span><span style='color: #ff00ff'>()<br /></span><span style='color: #000000'>ctgdict </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #ff00ff'>{}<br /></span><span style='color: #000000'>fh </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #800000'>open</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>ctgsfn</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'><b>for</b> rec <b>in</b> SeqIO.parse</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>fh,</span><span style='color: #dd0000'>'fasta'</span><span style='color: #ff00ff'>):<br /></span><span style='color: #000000'> ctgn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> rec.</span><span style='color: #800000'>id<br /></span><span style='color: #000000'> entra </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #0000ff'>1</span><span style='color: #000000'> <b>if</b> ctgn <b>in</b> anclados <b>else</b> </span><span style='color: #0000ff'>0<br /></span><span style='color: #000000'> <b>if</b> </span><span style='color: #800000'>len</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>ctgn</span><span style='color: #ff00ff'>)==</span><span style='color: #0000ff'>9</span><span style='color: #ff00ff'>:<br /></span><span style='color: #000000'> ctgn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #dd0000'>'Contig'</span><span style='color: #ff00ff'>+</span><span style='color: #000000'>anal</span><span style='color: #ff00ff'>+</span><span style='color: #000000'>ctgn</span><span style='color: #ff00ff'>[-</span><span style='color: #0000ff'>3</span><span style='color: #ff00ff'>:]<br /></span><span style='color: #000000'> <b>elif</b> </span><span style='color: #800000'>len</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>ctgn</span><span style='color: #ff00ff'>)==</span><span style='color: #0000ff'>8</span><span style='color: #ff00ff'>:<br /></span><span style='color: #000000'> ctgn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #dd0000'>'Contig'</span><span style='color: #ff00ff'>+</span><span style='color: #000000'>anal</span><span style='color: #ff00ff'>+</span><span style='color: #dd0000'>'0'</span><span style='color: #ff00ff'>+</span><span style='color: #000000'>ctgn</span><span style='color: #ff00ff'>[-</span><span style='color: #0000ff'>2</span><span style='color: #ff00ff'>:]<br /></span><span style='color: #000000'> <b>elif</b> </span><span style='color: #800000'>len</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>ctgn</span><span style='color: #ff00ff'>)==</span><span style='color: #0000ff'>7</span><span style='color: #ff00ff'>:<br /></span><span style='color: #000000'> ctgn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #dd0000'>'Contig'</span><span style='color: #ff00ff'>+</span><span style='color: #000000'>anal</span><span style='color: #ff00ff'>+</span><span style='color: #dd0000'>'00'</span><span style='color: #ff00ff'>+</span><span style='color: #000000'>ctgn</span><span style='color: #ff00ff'>[-</span><span style='color: #0000ff'>1</span><span style='color: #ff00ff'>]<br /></span><span style='color: #000000'> </span><span style='color: #808080'><i>#print ctgn,str(rec.seq),entra <br /></i></span><span style='color: #000000'> t </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #ff00ff'>(</span><span style='color: #000000'>ctgn,</span><span style='color: #800000'>str</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>rec.seq</span><span style='color: #ff00ff'>)</span><span style='color: #000000'>,entra</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'> c.execute</span><span style='color: #ff00ff'>(</span><span style='color: #dd0000'>"insert into ctgsseq values (?,?,?)"</span><span style='color: #000000'>,t</span><span style='color: #ff00ff'>)<br /><br /></span><span style='color: #000000'>fh.close</span><span style='color: #ff00ff'>()<br /><br /></span><span style='color: #808080'><i># POPULATE ctgs<br /></i></span><span style='color: #000000'>acefilerecord </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> Ace.read</span><span style='color: #ff00ff'>(</span><span style='color: #800000'>open</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>acefn</span><span style='color: #ff00ff'>))<br /></span><span style='color: #000000'><b>for</b> ctg <b>in</b> acefilerecord.contigs</span><span style='color: #ff00ff'>:<br /></span><span style='color: #000000'> ctgn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> ctg.name<br /> allr_s </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> set</span><span style='color: #ff00ff'>()<br /></span><span style='color: #000000'> <b>for</b> read <b>in</b> ctg.reads</span><span style='color: #ff00ff'>:<br /></span><span style='color: #000000'> <b>if</b> read.rd.name <b>not</b> <b>in</b> allr_s</span><span style='color: #ff00ff'>:<br /></span><span style='color: #000000'> </span><span style='color: #808080'><i>#print ctgname,read.rd.name<br /></i></span><span style='color: #000000'> <b>if</b> </span><span style='color: #800000'>len</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>ctgn</span><span style='color: #ff00ff'>)==</span><span style='color: #0000ff'>9</span><span style='color: #ff00ff'>:<br /></span><span style='color: #000000'> ctgn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #dd0000'>'Contig'</span><span style='color: #ff00ff'>+</span><span style='color: #000000'>anal</span><span style='color: #ff00ff'>+</span><span style='color: #000000'>ctgn</span><span style='color: #ff00ff'>[-</span><span style='color: #0000ff'>3</span><span style='color: #ff00ff'>:]<br /></span><span style='color: #000000'> <b>elif</b> </span><span style='color: #800000'>len</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>ctgn</span><span style='color: #ff00ff'>)==</span><span style='color: #0000ff'>8</span><span style='color: #ff00ff'>:<br /></span><span style='color: #000000'> ctgn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #dd0000'>'Contig'</span><span style='color: #ff00ff'>+</span><span style='color: #000000'>anal</span><span style='color: #ff00ff'>+</span><span style='color: #dd0000'>'0'</span><span style='color: #ff00ff'>+</span><span style='color: #000000'>ctgn</span><span style='color: #ff00ff'>[-</span><span style='color: #0000ff'>2</span><span style='color: #ff00ff'>:]<br /></span><span style='color: #000000'> <b>elif</b> </span><span style='color: #800000'>len</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>ctgn</span><span style='color: #ff00ff'>)==</span><span style='color: #0000ff'>7</span><span style='color: #ff00ff'>:<br /></span><span style='color: #000000'> ctgn </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #dd0000'>'Contig'</span><span style='color: #ff00ff'>+</span><span style='color: #000000'>anal</span><span style='color: #ff00ff'>+</span><span style='color: #dd0000'>'00'</span><span style='color: #ff00ff'>+</span><span style='color: #000000'>ctgn</span><span style='color: #ff00ff'>[-</span><span style='color: #0000ff'>1</span><span style='color: #ff00ff'>]<br /></span><span style='color: #000000'> t </span><span style='color: #ff00ff'>=</span><span style='color: #000000'> </span><span style='color: #ff00ff'>(</span><span style='color: #000000'>ctgn,read.rd.name</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'> c.execute</span><span style='color: #ff00ff'>(</span><span style='color: #dd0000'>"insert into ctgs values (?,?)"</span><span style='color: #000000'>,t</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'> allr_s.add</span><span style='color: #ff00ff'>(</span><span style='color: #000000'>read.rd.name</span><span style='color: #ff00ff'>)<br /></span><span style='color: #000000'> <br /> <br />conn.commit</span><span style='color: #ff00ff'>()</span><span style='color: #000000'> <br />c.close</span><span style='color: #ff00ff'>()<br /></span><span style='color: #000000'>conn.close</span><span style='color: #ff00ff'>()<br /><br /></span></pre><div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-1096049802223120873?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-72461639190869317172009-06-13T03:48:00.002-03:002009-06-13T04:10:19.303-03:00DNC LVST (DO NOT CALL, LA VENGANZA SERA TERRIBLE)A las 3.30 AM me acaba de llamar una empresa que vende autos. Por supuesto que era una grabación y como ya la habia escuchado otro dia, hoy no la escuché mas de 2 segundos.<br />En Argentina no hay recurso legal contra esta lacra, asi que haré justicia con mis propias manos y lo cuento aca para dar el ejemplo por si otro lo quiere hacer: La proxima vez que llamen, averiguaré todo lo que pueda de la empresa (si, me escucharé el fucking discurso y hasta me haré pasar por interesado si es necesario). La idea es llegar a obtener nombres y apellidos de empleados y/o del dueño. Luego buscaré los números telefonicos particulares de estas "personas" (por llamarlo de alguna manera) y los llamaré a la hora que se me antoje ofreciendo lo que se me ocurra. Si la llamada de ellos es legal, la mia tambien lo será. Cuando obtenga esa información la postiaré aqui.<br /> He dicho.<div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-7246163919086931717?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-69909655337751415132009-06-12T00:49:00.000-03:002009-06-12T00:49:26.687-03:00Fallo a favor de Google en un amparo pedido por Servini de Cubría - lanacion.com<a href="http://www.lanacion.com.ar/nota.asp?nota_id=1138386">Fallo a favor de Google en un amparo pedido por Servini de Cubría - lanacion.com</a><br /><br />La jueza Servini de Cubría, al igual que otros famosos argentinos, habian demandado a Google porque no les gustaba los resultados que arrojaba la búsqueda de ellos mismos. Hasta ahora los famosos venian ganando las demandas. Por primera vez se empieza a dar vuelta la situación. La idea es que deberian demandar, a lo sumo, a los dueños de los sitios donde está la opinion que merece (si merece) la demanda. No al buscador. Tipico caso de "maten al mensajero".<br />Un poco de justicia de vez en cuando no viene mal...<div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-6990965533775141513?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-14367049809849340402009-06-11T01:57:00.002-03:002009-06-11T02:07:23.177-03:00Atentado gastronomicoHace rato que no comento temas relevantes, asi que hoy voy con algo serio: Sufrí un atentado gastronómico. ¿Comida envenenada? No, sino una comida que es un atentado a la gastronomia. No saqué fotos porque quiero que el blog siga siendo SFW (apto para ver en el trabajo).<br />¿Que era entonces? Un choripan, medio frio y con el pan calentado en el microondas!!. Esto es tan grave que deberia ser delito (o contravencion al menos).<br /><br />Ya que estamos, veamos lo que dice la Wikipedia del choripan:<br /><br /><p></p><blockquote><p>Un <b>choripán</b> (a veces abreviado <i>chori</i>) es un <a href="http://es.wikipedia.org/wiki/S%C3%A1ndwich" title="Sándwich">sándwich</a> de <a href="http://es.wikipedia.org/wiki/Chorizo" title="Chorizo">chorizo</a> de origen <a href="http://es.wikipedia.org/wiki/R%C3%ADo_de_la_Plata" title="Río de la Plata">rioplatense</a>.<sup id="cite_ref-0" class="reference"><a href="http://es.wikipedia.org/wiki/Chorip%C3%A1n#cite_note-0" title=""><span class="corchete-llamada">[</span>1<span class="corchete-llamada">]</span></a></sup> Es típico de la <a href="http://es.wikipedia.org/wiki/Gastronom%C3%ADa_de_Argentina" title="Gastronomía de Argentina">gastronomía argentina</a>, <a href="http://es.wikipedia.org/wiki/Gastronom%C3%ADa_de_Chile" title="Gastronomía de Chile">chilena</a> y <a href="http://es.wikipedia.org/wiki/Gastronom%C3%ADa_de_Uruguay" title="Gastronomía de Uruguay">uruguaya</a>, y también popular en <a href="http://es.wikipedia.org/wiki/Bolivia" title="Bolivia">Bolivia</a>, <a href="http://es.wikipedia.org/wiki/Colombia" title="Colombia">Colombia</a>, <a href="http://es.wikipedia.org/wiki/Paraguay" title="Paraguay">Paraguay</a>, <a href="http://es.wikipedia.org/wiki/Per%C3%BA" title="Perú">Perú</a> y <a href="http://es.wikipedia.org/wiki/Venezuela" title="Venezuela">Venezuela</a>. Consta de un pan, usualmente blanco y del tipo <a href="http://es.wikipedia.org/wiki/Pan_franc%C3%A9s" title="Pan francés" class="mw-redirect">francés</a> o <a href="http://es.wikipedia.org/wiki/Marraqueta" title="Marraqueta">marraqueta</a>, que en su interior contiene un <a href="http://es.wikipedia.org/wiki/Chorizo" title="Chorizo">chorizo</a> asado o la mitad de una <a href="http://es.wikipedia.org/wiki/Longaniza" title="Longaniza">longaniza</a> asada.</p> <p>Se prepara poniendo el <a href="http://es.wikipedia.org/wiki/Embutido" title="Embutido">embutido</a> en el <a href="http://es.wikipedia.org/wiki/Horno" title="Horno">horno</a> o <a href="http://es.wikipedia.org/wiki/Parrilla" title="Parrilla">parrilla</a>, hasta que tome el tipico color del chorizo asado, un rojo oscuro. Una vez que el chorizo toma dicho color, se toma el pan, se pone el chorizo entre las dos capas de pan que quedan conformadas. Se suele condimentar al gusto con <a href="http://es.wikipedia.org/wiki/Chimichurri" title="Chimichurri">chimichurri</a>, en <a href="http://es.wikipedia.org/wiki/Argentina" title="Argentina">Argentina</a> y <a href="http://es.wikipedia.org/wiki/Uruguay" title="Uruguay">Uruguay</a>, y con <a href="http://es.wikipedia.org/wiki/Pebre" title="Pebre">pebre</a> en Chile. Otros condimentos pueden ser catalanes, hongos, pickles, ají, mayonesa, picantina etc.</p> <p>Otra forma de preparar el choripán, aparte de la forma clásica, es la conocida como <i>choripán mariposa</i>, donde se corta el <a href="http://es.wikipedia.org/wiki/Chorizo" title="Chorizo">chorizo</a> longitudinalmente por el medio. En <a href="http://es.wikipedia.org/wiki/Per%C3%BA" title="Perú">Perú</a> es más conocida esta versión de choripán, pero no se le llama <i>mariposa</i> sino <i>choripán</i>, a secas.</p> <p>La mayoría de las veces los choripanes se consumen durante los <a href="http://es.wikipedia.org/wiki/Asado" title="Asado">asados</a> como alimento que antecede a la <a href="http://es.wikipedia.org/wiki/Carne" title="Carne">carne</a>, el <a href="http://es.wikipedia.org/w/index.php?title=Plato_principal&action=edit&redlink=1" class="new" title="Plato principal (aún no redactado)">plato principal</a>, cuyo tiempo de cocción es más lento. Aunque también aparece como platillo principal en lo que los argentinos denominan <i>choriceada</i> o <i>choripaneada</i>, cuyo único plato es el choripán. En Argentina, los choripanes son asociados a la cancha y a los mitines políticos, forman parte de la cultura popular.</p></blockquote><div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-1436704980984934040?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-31638707709858462732009-06-09T00:13:00.002-03:002009-06-09T00:20:45.866-03:00Proyector de la infancia<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/img0204a-717838.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://www.bioinformatica.info/seba/uploaded_images/img0204a-717835.jpg" alt="" border="0" /></a><br />Hoy en un lugar de antigüedades me encontré con un proyector que tenia de chico. Era en terminos de hoy, una porquería, pero me encantaba la pelicula que era como un papel transparente. Ahora lo venden a $200, incomprable con mis ingresos actuales, pero no lo descarto para el futuro, asi que no daré la dirección para que nadie me gane de mano :)<div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-3163870770985846273?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-6556558599689379372009-06-08T18:51:00.004-03:002009-06-08T19:08:53.364-03:00Tengo un top-knol! (What's new in Python 3)Me acabo de enterar que mi knol <a href="http://knol.google.com/k/sebastian-bassi/whats-new-in-python-3-aka-python-3000/3n6vppa21yuw/4">What's new in Python 3</a>, está en la categoria de "<a href="http://knol.google.com/k/knol/system/knol/pages/Badges#badge-pageviewsknol">Top Knol</a>".<br />Son los Knol mas visitados, y según un comentario en el knol sale primero en su búsqueda en Google.<br />Probablemente te preguntes ¿Que carajo es un knol? Un <a href="http://knol.google.com/k/">Knol</a> es según Google, una "unidad de conocimiento" y es un sitio que muchos compararon con la wikipedia, aunque mas miras como funciona un knol, mas diferencias le encontras con la wikipedia. Por el momento creo que la wikipedia es mejor en el sentido que tiene mejores mecanismos para <a href="http://www.elmundo.es/elmundo/2009/05/29/catalejo/1243614785.html">remover basura</a> (a pesar que provocó que <a href="http://www.rebelion.org/noticia.php?id=69058">muchos se quejen</a> y <a href="http://jujuyusl.usla.org.ar/node/546">la acusen de censura</a>), pero eso no quita que pueda haber knols muy buenos, como el mio :)<br />¿Que tal?<div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-655655859968937937?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-31181185384551244312009-06-05T15:24:00.003-03:002009-06-05T15:29:06.939-03:00Cupón de Burger King (para la Stacker!)<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/Cupon2-775998.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 351px; height: 400px;" src="http://www.bioinformatica.info/seba/uploaded_images/Cupon2-775962.jpg" alt="" border="0" /></a><br /><span style="font-size:130%;">Nuevo cupón para Burguer King!</span><br /><br />Esta vez es para la stacker. Entre este y los que salen en los diarios gratis (La Razon y El Argentino) tenemos Burguer King para rato.<div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-3118118538455124431?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-89995715199154025322009-06-04T04:25:00.004-03:002009-06-04T04:37:29.954-03:00DNALinux Python for Bioinformatics<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/screen1-782379.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 125px;" src="http://www.bioinformatica.info/seba/uploaded_images/screen1-782373.jpg" alt="" border="0" /></a><br /><br /><a href="http://www.genesdigitales.com/">GenesDigitales</a> presenta una nueva versión de DNALinux, Virtual Desktop Python for Bioinformatics Edition. DNALinux Py4Bio es una máquina virtual con la distribución Linux Xubuntu y software de bioinformática preinstalado. Esta versión de DNALinux formará parte del libro "<a href="http://www.tinyurl.com/biopython">Python for Bioinformatics</a>" Todo el software explicado en el libro esta incluido en esta versión de DNALinux Virtual Desktop como asi tambien software especifico de bioinformatica. Los programas bioinformáticos incluidos mas destacados son: Biopython, BLAST, Emboss, NCBI toolkit y otros. La lista completa está disponible en <a href="http://www.dnalinux.com/installedsoftware.html" target="_blank">http://www.dnalinux.com/<wbr>installedsoftware.html</a><br />Esta versión reemplaza a la linea "desktop" y "server" ya que tiene ambos tipos de programas. Con DNALinux es posible montar un servidor BLAST sin necesidad de configurar Apache y CGI porque ya viene preconfigurado y listo para usar.<br /><a href="http://www.dnalinux.com/">DNALinux</a> está compuesto por una "distro base" (Xubuntu 8.04) corriendo sobre una maquina virtual (VMWare). La principal ventaja de esta configuración es que su la virtualización no afecta el sistema operativo ya instalado, permitiendo el aprendizaje, testeo y desarrollo de aplicaciones bioinformáticas en un ambiente uniforme.<br />La maquina virtual tiene un tamaño de mas de 12 Gb, aunque se distribuye comprimida con 7zip en un archivo de 2.3Gb. La distribución se realiza con el protocolo bittorrent, motivo por el cual solicitamos a los usuarios que estén en condiciones de "seedear" la imagen el<br />mayor tiempo posible.<br /><br />Para citarlo por si se lo usa en alguna publicación:<br /><br /><i>Bassi, Sebastian and Gonzalez, Virginia. DNALinux Virtual Desktop Edition. Available from Nature Precedings <http://dx.doi.org/10.1038/npre.2007.670.1> (2007)</i><div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-8999571519915402532?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-20001350943709034472009-06-03T15:33:00.004-03:002009-06-03T15:45:39.544-03:00Para Bing, los ladrones son la CasaRosadaEn el nuevo buscador de MS (Bing), en la <a href="http://www.bing.com/?scope=web&setmkt=es-AR&setlang=SET_NULL&uid=5CBA6D50&FORM=W5WA">versión Argentina</a>, al buscar <a href="http://www.casarosada.gov.ar/">ladrones</a>, nos muestra:<br /><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/ladrones-719020.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 164px;" src="http://www.bioinformatica.info/seba/uploaded_images/ladrones-719017.jpg" alt="" border="0" /></a><div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-2000135094370903447?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com1tag:blogger.com,1999:blog-3798215.post-55384819902063075642009-05-21T03:45:00.003-03:002009-05-21T04:33:32.694-03:00Felicidad<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/missinglink-711948.gif"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 300px; height: 125px;" src="http://www.bioinformatica.info/seba/uploaded_images/missinglink-711917.gif" alt="" border="0" /></a>No solo es importante la noticia, sino que el trabajo cientifico que la respalda fue publicado en una revista libre:<br /><a href="http://www.plosone.org/article/info:doi/10.1371/journal.pone.0005723">PLoS One</a><div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-5538481990206307564?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-57407385295776632762009-05-20T00:06:00.004-03:002009-05-20T01:21:20.358-03:00Otra razón para no usar Windows<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/norton2-719415.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 275px;" src="http://www.bioinformatica.info/seba/uploaded_images/norton2-719403.jpg" alt="" border="0" /></a><br /><br />Tengo a mi lado la notebook de mi hermano, se la pedí para hacer una prueba para el <a href="http://www.tinyurl.com/biopython">libro</a>. Es una condicion de la editorial que el CD funcione tambien en Windows.<br />La cuestion es que apareció un cartel del Norton Trail-demo que trae el equipo Compaq y dice:<br /><br />"Subscripcion Vencida. Ud. no está mas protegido contra nuevos virus...etc". Luego dice:<br />"Elija uno de lo siguiente:<br />Renovar ahora (recomendado)<br />Recuerdeme luego"<br /><br />No te dan opcion de: "No, no molestes mas, no quiero saber nunca mas nada de renovar una suscripcion que no pedí". Solo hay un botón de OK y la cruz roja de arriba a la derecha que serviria para cerrar la ventana, <span style="font-weight: bold;">ESTÁ ANULADA</span>.<br />Algunos diran que no es culpa del SO, despues de todo MS no puede controlar lo que haga el Norton. Cierto, pero creanme que en Linux toda esta situación es impensable!. Por empezar no hay que usar antivirus y segundo, los programas no son "invasivos", sino que uno siempre tiene el control total, no se acepta que un programa te quite intencionalmente una opción (pueden faltar opciones porque nadie las programó, pero no te van a cancelar el boton de cerrar la ventana para que compres de prepo un producto). No es la primera vez que me pasa algo asi, pero luego de estar usando Linux durante 3 años diariamente sin usar Windows, me llama mas la atención lo que antes era algo "común" (por ejemplo apretar la cruz para cerrar el MSN y lograr que solo se minimize, o sea, no respetan sus propios principios de usabilidad).<br />Y pensandolo bien, el hecho que un usuario se lo acostumbre a que un programa puede hacer lo que se le canta al fabricante es parte de la cultura que lleva directamente a la pesadilla de inseguridad que es esa plataforma. Si aceptamos que el usuario no puede agregar y quitar programas a voluntad (por culpa de Compaq, Norton o quien sea), está aceptando que él no tiene el control, que siempre depende de un tercero. Realmente no se como se puede solucionar eso, pero para colmo cada cosa que hago en Internet con Windows Vista se la pasa preguntando cosas que no me interesan, siendo muy molesto el uso.<br />De todas maneras el salvapantallas de las burbujitas es muy lindo y para la mayoria de los consumidores eso es lo que realmente importa.<div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-5740738529577663276?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-47255861170066194532009-05-17T00:39:00.003-03:002009-05-17T00:49:35.498-03:00Vuelta a casaEl jueves me levanté 5.10AM. A las 5.30 estaba tomando el 22 para bajarme cerca de la Casa Rosada. Desde ahi (casi 6.30) caminé hasta la estación terminal de la linea A de subterraneo. Hice 4 estaciones hasta Roque Saenz Peña. Desde ahi caminé una cuadra al INTA central. Esperé en el INTA hasta que las 7 AM que llegaba el colectivo que lleva a los trabajadores del INTA a la estación de Castelar. Aproximadamente 8.15 estaba trabajando. Terminé cerca de las 5 PM, cuando el mismo colectivo nos lleva de vuelta. Donde volveria a tomar un subte para luego tomar un colectivo. Cuento esto para que tengan alguna noción de lo que sentí al ver este cartel con todas las letras rojas:<br /><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/img0141a-735844.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://www.bioinformatica.info/seba/uploaded_images/img0141a-735841.jpg" alt="" border="0" /></a><br /><br />Por suerte tenia plata como para emplear medios alternativos, tuve que soportar una cola mas larga que de costumbre en el colectivo y listo, la saqué relativamente barata.<div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-4725586117006619453?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-75539816241636131342009-05-14T23:12:00.002-03:002009-05-14T23:22:21.889-03:00La bahia pirata busca embajadoresEl sitio <a href="http://thepiratebay.org/">The Pirate Bay</a> presentó una "embajada" (<a href="http://www.embassyofpiracy.org/">Embassyofpiracy</a>). Se trata de una piramide para armar, recortar y pegar. La idea es fotografiarla y subirla al sitio. ¿Para que? Ni idea, pero es una buena excusa para hacer una manualidad.<br />La mia <a href="http://embassyofpiracy.org/gallery/">ya está online</a>, y ademas la muestro aca:<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.bioinformatica.info/seba/uploaded_images/dsc02430-737303.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://www.bioinformatica.info/seba/uploaded_images/dsc02430-737025.jpg" alt="" border="0" /></a><br /><br /><br />Despues de ver las fotos, mi nene quiere sacar una foto de la piramide con sus dinosaurios. Cuando la tenga la subire aca.<div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-7553981624163613134?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-67867619228992267782009-05-09T19:20:00.000-03:002009-05-09T19:22:54.866-03:00Todos sabemos...Artículo de Fernando Peña aparecido hoy en <a href="http://criticadigital.com/index.php?secc=nota&nid=23041">Critica</a>:<br /><br />Todos sabemos que es una mafia y que son todos mafiosos. Todos sabemos que el de la esquina es el que afana, que el de la vuelta es el que avisa y que el de al lado es el que la guarda. Todos sabemos que el almacenero le pega a la mujer y que su hijo le hizo un hijo a la de trece de la villa de Boulogne pero también sabemos que el almacenero tiene una 45 que le dio el primo de un amigo que es ex comisario de la primera de San Isidro y que mejor muza. Todos sabemos eso.<br /><br />También todos sabemos que todo es una transa y que son todos transeros. Todos sabemos que el boletero siempre tiene 4 reservadas en la primera fila y que como sos amigo de un tío del productor del actor podés pasar al camarín y darte dique. Todos sabemos eso.<br /><br />Todos sabemos que los médicos hacen humor negro cuando se les muere un cacho de carne y que le llaman cacho de carne al muerto porque quién no tiene un primo de un tío de un amigo que te lo cuenta sin mosquearse… todos sabemos eso. Todos también sabemos que la medicina es una industria y que las obras sociales son proporcionales al precio que pagás o a la familia que la dirige y todos también sabemos que si sos amigo de la familia o sobrino o primo o tío del conocido de un amigo te van a poner en una suite en la parte nueva del Instituto del Diagnóstico seguro… Todos sabemos eso.<br /><br />Todos sabemos que si te quedás sin trabajo podés ir a ver a tal que es amigo de cual y sobrino de zutano que le debe un favor a mengano que le debía otro a perengano que era amigo del abuelo de tu padre. Todos sabemos eso.<br /><br />Todos sabemos que si tenés que renovar un pasaporte, cédula o registro siempre hay un amigo de tu tatarabuela que se la ponía a tu tía que era medio prima del banquero del barrio cerrado de Pilar que conocía al primo que parece que mató a la Belsunce y que es amigote de otro puntero del barrio pobre de enfrente del otro lado de la ruta pero vos callate y tenés el registro en 10 minutos. Todos sabemos eso.<br /><br />Todos sabemos que si te para la cana tenés que llevar la tarjeta del comisario tal o cual que es medio amigo o conocido de tu íntimo amigo y que cuando te paran no sabés dónde puta está la tarjeta entonces llamás a un amigo de un amigo y resulta que atiende tu íntimo amigo y te da el número del comisario que no era aquel que te había dado sino otro que puso un amigo de un amigo de Scioli primo de Posse y zafaste… también sabemos eso.<br /><br />Todos también sabemos que aquél es el “fraile”, el pibito que mató a la prima de la amiga de la hermana del jardinero, también sabemos que es dealer y que tiene porro siempre pero para merca hay que llamarlo un día antes y para éxtasis a partir de los jueves y que hay que llamar de parte de Rosa… Todos sabemos eso.<br /><br />Todos sabemos que los tacheros son casi todos mafiosos y que tienen una trenza con los sindicatos y que te arreglan el reloj y que se cagan en el patrón y que el peón es un ladrón y por poco violador y que la cola de tal o cual parada o aeropuerto está vedada y que mejor no te pares y menos lo tomes y que mejor que te las tomes. Todos sabemos que para poner un negocio si no sos amigo de un conocido de un tío de un amigo de un primo de una prima lesbiana amante de la mujer del gobernador local te mandan matar… Todos sabemos eso.<br /><br />Todos sabemos que si querés tener un crédito en el banco y estás en el Veraz tenés que conocer a un pinche amigo del secretario de un amigo del primo de Ibarra que es amigo de un maquillador de Shakira que comía asado con un asistente de Nacha que se culeaba a un medio sobrino de Perón que tiene dos caniches blancos primos del perro de Susana que son tíos del Pitbull de Tinelli y que juega al fútbol con un asistente de Chávez… Todos sabemos eso.<br /><br />Todos sabemos que si querés encamarte con tal o cual que era amante de la Alfano o del Facha Martel tenés que llamar a un amigo de un taxi boy compañero de yoga de un remisero que lo llevaba a Rial en el 93 cuando trabajaba con Lucho y se la chupaba a no me acuerdo quién… Todos sabemos eso.<br /><br />Todos sabemos que si tenés exceso de peso tenés que ir a ver al chanta de Cormillot y todos sabemos que si tenés otro tipo de exceso algún pez gordo de Aerolíneas te va a salvar y te lo va a dejar pasar. También todos sabemos que si no querés que te pique el mosquito del dengue tenés que hablar con el amigo de tal que es amante de un transexual que tiene una amiga que tiene una peluquería donde venden consoladores por detrás y por izquierda facturados por derecha… Todos sabemos eso.<br /><br />Todos sabemos que si tenemos un juicio tenemos que llamar a aquel que es cuñado del escribano que le hizo la casa al contador que no murió del corazón porque tuvo al personal trainer del arquitecto cual que es socio del amigo de Gaby Álvarez o que mejor… no, llama al testaferro de fulano que se llamá Faena y tiene un telo posta y sabe a quién hay que llamar en esos casos… eso todos también lo sabemos.<br /><br />Todos sabemos por dónde andar y si no sabemos por dónde andar qué importa si total sabemos a quién hay que tocar y a quién hay que llamar si andamos mal.<br /><br />Todos sabemos quién trae, quién invita, quién garpa y quién se hace garpar. Todos sabemos quién jode y quién tiene ganas de joder y todos sabemos quién tiene y jode y quién no tiene y jode igual.<br />Todos sabemos quién miente con un programa de televisión que dice decir la verdad y quién dice la verdad y tiene que mentir para tener un programa de televisión… eso todos lo sabemos.<br /><br />Todos sabemos que estamos todos salvados porque siempre hay un amigo de un primo de un tío de conocido de un amigo que te hace zafar… eso todos lo sabemos.<br /><br />Todos sabemos quién va a ganar… porque todo lo sabemos. Todos sabemos lo que piensa Prat Gay sin saber cómo se pronuncia porque no sabemos si es catalán, inglés u holandés, todos sabemos lo que elucubra De Narváez aconsejado por Mauricio y desaconsejado por Felipe. Todos lo sabemos. También todos sabemos a quién hay que llamar si te querés hacer matar.<br /><br />Todos sabemos todo… porque todo lo sabemos y porque así nos conviene porque si fuera de otra manera no seríamos lo que somos… Todos lo sabemos y por ahora resulta… así que dejate de hinchar… no te quejes que estamos bien… o qué preferís, ¿Suiza, donde no te conoce nadie?…<br /><br />Es mejor así, todo verdad, todo inventado, todo por derecha y por izquierda, todo como sea, pero es, no seas bobo... quedate muza… y cualquier cosa llamame… que yo tengo un amigo de un primo de una vedette que se casó con un galán amante de un chef del canal Gourmet que se acostaba con una que era el culo de tal marca que desfilaba para tal que estaba en la lista de no me acuerdo quién… pucha, ¿quién era?…<br /><br />¡Aaah… era yo!... ¡Llamame a mí!… Pero no me nombres.<div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-6786761922899226778?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-58210947542127317182009-05-09T12:50:00.000-03:002009-05-09T12:51:23.724-03:00Grupo de programación<table border="0" cellpadding="0" cellspacing="10"><tbody><tr valign="top"><td class="fontsize2" align="right"><span name="param.name.s"><b>Group name</b></span></td> <td><div id="name_view" style="display: block;"> Programacion en Español </div> <div id="name_edit" style="display: none;"> <input size="30" maxlength="200" name="param.name" value="Programacion en Español" type="text"> </div></td> </tr> <tr valign="top"> <td class="fontsize2" align="right"><span name="param.desc.s"><b>Description</b></span></td> <td> <div id="desc_view" style="display: block;"> Para intercambiar conocimiento sobre programacion para cualquier plataforma y lenguaje. C, PHP, VB, Perl, Python, Ruby, JAVA, etc. Siempre con respeto de las normas de etiqueta en la red (Netiquette).<br /> </div> <div id="desc_edit" style="display: none;"> <textarea cols="55" rows="8" name="param.desc">Para intercambiar conocimiento sobre programacion para cualquier plataforma y lenguaje. C, PHP, VB, Perl, Python, Ruby, JAVA, etc. Siempre con respeto de las normas de etiqueta en la red (Netiquette).</textarea> </div> </td> </tr> <tr valign="top"> <td class="fontsize2" align="right"><br /></td> <td><br /></td> </tr> <tr valign="top"> <td class="fontsize2" align="right"><span name="param.newaddr.s"><b>Group address</b></span></td> <td>Current web address:<br /> <a href="http://groups.google.com/group/programacion-es">http://groups.google.com/group/<b>programacion-es</b></a><p> Current email address:<br /> <a href="mailto:programacion-es@googlegroups.com"><b>programacion-es</b>@googlegroups.com</a></p></td></tr></tbody></table><div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-5821094754212731718?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-72022122386731451952009-05-07T00:45:00.002-03:002009-05-07T00:56:36.779-03:00Lector de tarjetas anda en Linux<div style="float: right; margin-left: 10px; margin-bottom: 10px;"><a href="http://www.flickr.com/photos/sbassi/3508664305/" title="photo sharing"><img src="http://farm4.static.flickr.com/3628/3508664305_ec8446bcc7_m.jpg" alt="" style="border: solid 2px #000000;" /></a><br /><span style="font-size: 0.9em; margin-top: 0px;"><a href="http://www.flickr.com/photos/sbassi/3508664305/">cajalectortarjetas</a><br />Originally uploaded by <a href="http://www.flickr.com/people/sbassi/">sbassi</a></span></div>Compré un lector de tarjetas. Tiene varias ranuras, le puse todas las que tenia: SD de la Asus eeePC, microSD del celular (A380i) y una Memory Stick Pro DUO de la camara Sony. Todo fue montado correctamente en mi notebook HP con Linux (kernel 2.6.14), como un disco USB mas.<br />Me viene barbaro porque porque mi notebook no tiene lector de SD y asi puedo intercambiar mas facil con la Asus. Lo mas practico es que ahora podre poner peliculas divx en la SD y con este adaptador se lo pongo en la entrada USB del lector/grabador de DVD y listo, no tengo que andar quemando CDs o DVDs para ver algo que tengo en la compu.<br clear="all" /><br /><br /><a href="http://www.flickr.com/photos/sbassi/3508663459/" title="6en1funcionando by sbassi, on Flickr"><img src="http://farm4.static.flickr.com/3339/3508663459_2489ae432f.jpg" width="500" height="375" alt="6en1funcionando" /></a><div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-7202212238673145195?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-91182611624768352832009-05-07T00:25:00.001-03:002009-05-07T00:25:44.579-03:00Vacuna antigripal<div style="float: right; margin-left: 10px; margin-bottom: 10px;"><a href="http://www.flickr.com/photos/sbassi/3508664535/" title="photo sharing"><img src="http://farm4.static.flickr.com/3629/3508664535_32ca571e26_m.jpg" alt="" style="border: solid 2px #000000;" /></a><br /><span style="font-size: 0.9em; margin-top: 0px;"><a href="http://www.flickr.com/photos/sbassi/3508664535/">vacuna antigripal</a><br />Originally uploaded by <a href="http://www.flickr.com/people/sbassi/">sbassi</a></span></div>Ya me puse la vacuna antigripal, esperemos que sirva para algo :)<br />Esta vacuna es para la gripe comun, supuestamente es para la cepa del virus que comun que circula este año. No previene la influenza A, pero podria disminuir los sintomas ("It was proposed that the common neuraminidase antigen, in this case N1, would shorten the duration and lessen the severity of infection of another subtype of influenza A with a different hemagglutinin antigen but with the same neuraminidase"). Con respecto a las vacunas y las gripes, en pocos dias habrá que tomar una decisión dificil. Los laboratorios tienen capacidad para fabricar solo un tipo de vacuna, la estacional o la "pandemica" ("Vaccine makers can make limited amounts of both seasonal flu vaccine and pandemic vaccine though not at the same time but they cannot make massive quantities of both because that exceeds capacity"). El gobierno de USA aun no ha decidido, van a esperar lo maximo que se pueda antes de hacer el pedido ("It<br />would all depend on how the outbreaks and the emergency unfolds,"<br />said Dr. Ruben Donis of the Centers for Disease Control and<br />Prevention, who is heading the U.S. vaccine work.) La fuente de las citas en todos los casos son los boletines epidemiologicos de ProMED, una organizacion no gubernamental que sigue epidemias desde hace muchos años.<br clear="all" /><div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-9118261162476835283?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-73144735767271154582009-05-05T00:17:00.002-03:002009-05-05T00:30:49.835-03:00Gripe A: Botones y banners para evitar el contagio.Los centros de control de las enfermedades de USA (CDC) han publicado unos banners para ayudar a difundir comportamientos que ayuden a prevenir la gripe (tanto la nueva como la "comun"). De todos los carteles a mi me gustó este:<br /><br /><br /><a href="http://www.cdc.gov/h1n1flu/?s_cid=h1n1Flu_outbreak_020" title="Cover your nose with a tissue when you sneeze. Visit www.cdc.gov/h1n1 for more information."><img src="http://www.cdc.gov/images/campaigns/SwineFlu/coverit3_300x600.jpg" style="border: medium none ; width: 300px; height: 600px;" alt="Cover your nose with a tissue when you sneeze. Visit www.cdc.gov/h1n1 for more information." /></a><br /><br />En el CDC hay información mas importante que unos carteles, asi que les recomiendo visitar este sitio si quieren seguir el tema desde una perspectiva seria:<br /><br /><a href="http://www.cdc.gov/h1n1flu/">http://www.cdc.gov/h1n1flu/</a><div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-7314473576727115458?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com0tag:blogger.com,1999:blog-3798215.post-71860432319541605912009-05-04T18:33:00.005-03:002009-05-04T18:45:37.224-03:004 en 1No es el juego, sino que tenia estas 4 lineas de código Python:<br /><pre><span style="font-family:courier new;">fh = open('datos.txt','w')</span><br /><span style="font-family:courier new;">for x in h_set:</span><br /><span style="font-family:courier new;"> fh.write('%s\n'%x)</span><br /><span style="font-family:courier new;">fh.close()</span><br /></pre>Y las converti en una sola:<br /><br /><span style="font-family:courier new;">open('datos.txt','w').write(('%s\n'%x for x in h_set))</span><br /><br /><span style="font-weight: bold;">h_set</span> es un <a href="http://docs.python.org/library/sets.html">set</a>, pero puede ser un iterable cualquiera para el caso.<br />¿Que tal?<div class="blogger-post-footer">Publicidad: Python for Bioinformatics. <a href="http://tinyurl.com/biopython">Amazon.com book page</a>.<img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3798215-7186043231954160591?l=www.bioinformatica.info%2Fseba%2Findex.html'/></div>Sebastianhttp://www.blogger.com/profile/15090340264598657642noreply@blogger.com3