<?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-36955276</id><updated>2012-02-16T03:47:27.219-03:00</updated><category term='MapServer'/><category term='Python'/><category term='SIG'/><category term='GDAL'/><category term='PostGIS'/><category term='IR'/><category term='Java'/><category term='Trabajo Final'/><category term='PyQt'/><category term='Linux'/><category term='DIR'/><title type='text'>Camarón BitMap</title><subtitle type='html'>Este blog...ya no es lo que era, ya no es lo que era...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>20</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-36955276.post-4187689773851088141</id><published>2012-01-25T12:21:00.004-03:00</published><updated>2012-01-25T13:12:34.630-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SIG'/><title type='text'>Orfeo Toolbox en Ubuntu</title><content type='html'>&lt;span style="font-family:arial;"&gt;He instalado Orfeo Toolbox en Ubuntu 11.10 siguiendo las instrucciones del sitio de &lt;a href="http://orfeo-toolbox.org/SoftwareGuide/SoftwareGuidech2.html#x14-190002"&gt;OTB&lt;/a&gt;. Solo tuve dificultades con la librería &lt;span style="font-style: italic;"&gt;libotb3.11&lt;/span&gt; porque existen algunos paquetes que dependen de esta: &lt;/span&gt;&lt;span style="font-style: italic; font-family:arial;" &gt;otb-wrapping-python &lt;/span&gt;&lt;span style="font-family:arial;"&gt;y&lt;/span&gt;&lt;span style="font-style: italic; font-family:arial;" &gt; otb-wrapping-java&lt;/span&gt;&lt;span style="font-family:arial;"&gt; y la aplicación Monteverdi depende de la  &lt;span style="font-style: italic;"&gt;libotb3.12&lt;/span&gt;. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Lo que hice fue, desinstalar la &lt;span style="font-family:arial;"&gt; &lt;span style="font-style: italic;"&gt;libotb3.11&lt;/span&gt;&lt;/span&gt; e instalar la &lt;span style="font-family:arial;"&gt; &lt;span style="font-style: italic;"&gt;libotb3.12&lt;/span&gt;&lt;/span&gt; y luego instale el resto de los paquetes &lt;span style="font-style: italic;"&gt;otb-bin, monteverdi&lt;/span&gt;, etc.&lt;br /&gt;&lt;br /&gt;Si al iniciar Monteverdi, este no responde es muy probable que les falte agregar a &lt;span style="font-family:arial;"&gt;LD_LIBRARY_PATH la ubicación de las librerías de &lt;/span&gt;otb. Así que editan /etc/environment y agregan al final:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;LD_LIBRARY_PATH=/usr/lib/otb&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Deberían reiniciar la sesión y listo.&lt;br /&gt;&lt;br /&gt;Así he logrado correr Monteverdi.&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-4187689773851088141?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/4187689773851088141/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=4187689773851088141' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/4187689773851088141'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/4187689773851088141'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2012/01/orfeo-toolbox-en-ubuntu.html' title='Orfeo Toolbox en Ubuntu'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-8444140043250259606</id><published>2010-11-18T10:55:00.003-03:00</published><updated>2011-07-07T16:24:03.577-03:00</updated><title type='text'>Un repo para QGIS</title><content type='html'>Aprovechando que estamos cada vez más empapados con esto del GIS y siguiendo nuestra filosofía de priorizar el desarrollo de software libre hemos publicado un repositorio para plugins de Quamtun GIS.&lt;br /&gt;&lt;br /&gt;Esperamos que de a poco podamos ir creciendo en la cantidad y en calidad de productos para esta fantástica herramienta.&lt;br /&gt;&lt;br /&gt;El repositorio es: &lt;a href="http://geointa.inta.gov.ar/qgis/plugins.xml"&gt;http://geointa.inta.gov.ar/qgis/plugins.xml&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Se esperan comentarios...&lt;br /&gt;&lt;br /&gt;&lt;g:plusone size="medium"&gt;&lt;/g:plusone&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-8444140043250259606?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/8444140043250259606/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=8444140043250259606' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/8444140043250259606'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/8444140043250259606'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2010/11/un-repo-para-qgis.html' title='Un repo para QGIS'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-2202382397329337221</id><published>2010-11-18T10:31:00.004-03:00</published><updated>2010-11-19T17:44:52.922-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PyQt'/><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><title type='text'>Py2Exe, PyQt4... Y los iconos del resource?</title><content type='html'>&lt;div style="text-align: justify;"&gt;Estuve usando el &lt;a href="http://www.py2exe.org/"&gt;Py2Exe&lt;/a&gt; para distribuir una aplicación que debía correr sobre Windows. Con el único problema que me crucé fue al correr mi .exe ya que los  iconos que supuestamente había incluido en mi archivo de recursos .qrc y posteriormente compilado con pyrcc4...no estaban.&lt;br /&gt;&lt;br /&gt;Luego de descargar mi ira contra Qt Designer, el inocente de pyrcc4 y ni hablar de Py2Exe, encontré revolviendo en la web cual era el problema. Luego de correr la compilación con &lt;span style="font-style: italic;"&gt;python setup.py py2exe&lt;/span&gt; hay que agregar las librerias (sí, las dlls) que leen los formatos de imágenes que usamos. Para PyQt4 (en Python 2.6) estas están en: &lt;span style="font-style: italic;"&gt;C:\Python26\Lib\site-packages\PyQt4\plugins&lt;/span&gt; en el directorio que se llama "imageformats".&lt;br /&gt;&lt;br /&gt;Lo que hay hacer es crear un directorio con el mismo nombre dentro de nuestro dist (creado por py2exe) y ahí agregar las librerías de los formatos que estamos usando.&lt;br /&gt;&lt;br /&gt;Y listo!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-2202382397329337221?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/2202382397329337221/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=2202382397329337221' title='2 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/2202382397329337221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/2202382397329337221'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2010/11/py2exe-pyqt4-y-los-iconos-del-resoure.html' title='Py2Exe, PyQt4... Y los iconos del resource?'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-882073995869794840</id><published>2010-03-13T12:53:00.003-03:00</published><updated>2010-03-14T10:23:14.314-03:00</updated><title type='text'>Día Juliano en PostgreSQL</title><content type='html'>&lt;pre name="code" class="sql"&gt;&lt;br /&gt;CREATE OR REPLACE FUNCTION to_julian(f date)&lt;br /&gt;    RETURNS integer AS&lt;br /&gt;$BODY$&lt;br /&gt;BEGIN&lt;br /&gt;    RETURN cast(to_char(f, 'J') as integer);&lt;br /&gt;END;&lt;br /&gt;$BODY$&lt;br /&gt;LANGUAGE 'plpgsql'&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-882073995869794840?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/882073995869794840/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=882073995869794840' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/882073995869794840'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/882073995869794840'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2010/03/dia-juliano-en-postgresql.html' title='Día Juliano en PostgreSQL'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-2948711735259373047</id><published>2010-03-11T13:09:00.002-03:00</published><updated>2010-03-13T00:09:12.526-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='GDAL'/><category scheme='http://www.blogger.com/atom/ns#' term='SIG'/><title type='text'>Cambiar Sistema de Referencia con gdalwarp</title><content type='html'>&lt;a href="http://www.blogger.com/www.gdal.org/gdalwarp.html"&gt;GDALWARP&lt;/a&gt; es una práctica herramienta para cambiar fácilmente de un sistema de referencia a otro.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Usage: gdalwarp [--help-general] [--formats]&lt;br /&gt;   [-s_srs srs_def] [-t_srs srs_def] [-to "NAME=VALUE"]&lt;br /&gt;   [-order n] [-tps] [-rpc] [-geoloc] [-et err_threshold]&lt;br /&gt;   [-te xmin ymin xmax ymax] [-tr xres yres] [-ts width height]&lt;br /&gt;   [-wo "NAME=VALUE"] [-ot Byte/Int16/...] [-wt Byte/Int16]&lt;br /&gt;   [-srcnodata "value [value...]"] [-dstnodata "value [value...]"] -dstalpha&lt;br /&gt;   [-r resampling_method] [-wm memory_in_mb] [-multi] [-q]&lt;br /&gt;   [-cutline datasource] [-cl layer] [-cwhere expression]&lt;br /&gt;   [-csql statement] [-cblend dist_in_pixels]&lt;br /&gt;   [-of format] [-co "NAME=VALUE"]*&lt;br /&gt;   srcfile* dstfile&lt;br /&gt;&lt;br /&gt;Ejemplo:&lt;br /&gt;&lt;br /&gt;#$ gdalwarp -s_srs EPSG:4326 -t_srs EPSG:900913&lt;/span&gt;&lt;span style="font-size:85%;"&gt; input_img.tif&lt;/span&gt;&lt;span style="font-size:85%;"&gt;  output_img.tif&lt;br /&gt;&lt;br /&gt;Donde:&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;-s_srs EPSG:4326 el sistema de referencia de origen&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;-t_srs EPSG:900913 el sistema de referencia de destino&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-2948711735259373047?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/2948711735259373047/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=2948711735259373047' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/2948711735259373047'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/2948711735259373047'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2010/03/cambiar-sistema-de-referencia-con.html' title='Cambiar Sistema de Referencia con gdalwarp'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-5784445416356218128</id><published>2009-05-05T18:30:00.004-03:00</published><updated>2010-03-13T13:43:35.521-03:00</updated><title type='text'>Agregar repositorio RPMForge a Centos 5</title><content type='html'>&lt;p style="text-align: justify;"&gt;Por requerimientos mi trabajo tuve que empezar a trabajar con CentOS, al principio no me resultó muy complicado ya que hacia tiempo usaba GNU Linux aunque venia de Debian/Ubuntu. &lt;br /&gt;Comencé a sentir las diferencias cuando usé el yum y me faltaban paquetes de todo tipo. Googleando un poco encontré que existe RPMForge como repositorio de RedHat, Fedora y CentOS.&lt;br /&gt;&lt;br&gt;Así que instalé el repositorio según los pasos de la &lt;a href="http://wiki.centos.org/AdditionalResources/Repositories/RPMForge"&gt;wiki&lt;/a&gt; del site de CentOS.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Instalar el paquete yum-priorities&lt;/p&gt;&lt;br /&gt;&lt;pre name="code" class="csharp"&gt;&lt;br /&gt;yum install yum-priorities&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;Habilitar el módulos desde /etc/yum/pluginconf.d/priorities.conf&lt;br /&gt;&lt;pre name="code" class="csharp"&gt;&lt;br /&gt;[main]&lt;br /&gt;enabled=1&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/p&gt; &lt;br /&gt;&lt;p&gt;Editar todos los archivos .repo (/etc/yum.repos.d) y agregarles el parámetro&lt;br /&gt;priority=N (N es un número de 1 a 99)&lt;p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;La configuración recomendada es:&lt;br /&gt;&lt;pre name="code" class="csharp"&gt;&lt;br /&gt;[base], [addons], [updates], [extras] ... priority=1&lt;br /&gt;[centosplus],[contrib] ... priority=2&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;En rpmforge el valor de priority=N debe ser mayor a 10&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Instalar el RPM de RPMForge, para eso descargamos según corresponda.&lt;/p&gt;&lt;br /&gt;&lt;pre name="code" class="csharp"&gt;&lt;br /&gt;i386 http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm &lt;br /&gt;x86_64 http://apt.sw.be/redhat/el5/en/x86_64/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;Instalar la DAG's GPG key&lt;/p&gt;&lt;br /&gt;&lt;pre name="code" class="csharp"&gt;&lt;br /&gt;rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;Verificamos el paquete que bajamos&lt;/p&gt;&lt;br /&gt;&lt;pre name="code" class="csharp"&gt;&lt;br /&gt;rpm -K rpmforge-release-0.3.6-1.el5.rf.*.rpm&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;Ahora si, instalamos el rpm&lt;/p&gt;&lt;br /&gt;&lt;pre name="code" class="csharp"&gt;&lt;br /&gt;rpm -i rpmforge-release-0.3.6-1.el5.rf.*.rpm&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;Testear la instalación&lt;/p&gt;&lt;br /&gt;&lt;pre name="code" class="csharp"&gt;&lt;br /&gt;yum check-update&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p style="text-align: justify;"&gt;&lt;br /&gt;Listo, si todo esta bien deberían verificarse las actualizaciones y decir cuantos paquetes hay disponibles.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p style="text-align: justify;"&gt;&lt;b&gt;Bonus:&lt;/b&gt;&lt;br /&gt;A la hora de probar la aplicación tuve problemas de &lt;i&gt;TimeOut: http://fr2.rpmfind.net/linux/dag/redhat/el5/en/x86_64/rpmforge/repodata/primary.xml.gz: [Errno 12] Timeout: &lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Buscando mucho en la Web y después de leer muchas posibles soluciones, encontré la más simple. En el archivo /etc/yum.repos.d/rpmforge.repo se le agrega el parámetro de timeout (que por default son 30 segundos) con 300 (soy muy generozo)&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-5784445416356218128?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/5784445416356218128/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=5784445416356218128' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/5784445416356218128'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/5784445416356218128'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2009/05/agregar-repositorio-rpmforge-centos-5.html' title='Agregar repositorio RPMForge a Centos 5'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-5498229580074750853</id><published>2009-03-30T19:15:00.003-03:00</published><updated>2010-06-11T14:18:17.502-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><title type='text'>Instalando pymssql en Ubuntu</title><content type='html'>Necesitaba leer unos datos que se encontraban en un MS SQL 2005 y recurrí directamente Python. Busqué un par de módulos que hay disponibles y verifiqué en &lt;a href="http://www.python.com.ar/moin"&gt;PyAr&lt;/a&gt; ¿qué usa la gente que sabe? Me baje &lt;a href="http://code.google.com/p/pymssql/"&gt;pymssql 1.0.1&lt;/a&gt;, instale y empecé a renegar.&lt;br /&gt;Googleando un poco encontre que requiere del módulo &lt;a href="http://packages.ubuntu.com/dapper/devel/freetds-dev"&gt;Freetds-dev&lt;/a&gt; que es un protocolo para conectar MS SQL y Sybase sobre TCP/IP.&lt;br /&gt;&lt;br /&gt;Así que &lt;span style="font-size:100%;"&gt;sudo apt-get install freetds-dev&lt;br /&gt;&lt;br /&gt;y después si, instale el pymssql y salio andando.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-5498229580074750853?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/5498229580074750853/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=5498229580074750853' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/5498229580074750853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/5498229580074750853'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2009/03/instalando-pymssql-en-ubuntu.html' title='Instalando pymssql en Ubuntu'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-7390985887439760744</id><published>2009-02-04T13:35:00.002-02:00</published><updated>2009-02-04T20:28:50.739-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><title type='text'>Actualizar versión de Python en Debian</title><content type='html'>1) Instalé en este caso Python 2.5 en Debian Etch con&lt;br /&gt;&lt;br /&gt;  apt-get install python2.5&lt;br /&gt;&lt;br /&gt;2) Modifiqué el archivo /usr/share/python/debian_defaults&lt;br /&gt;&lt;br /&gt;Para que mi python por default sea la esta última versión.&lt;br /&gt;&lt;br /&gt;  [DEFAULT]&lt;br /&gt;  # the default python version&lt;br /&gt;  default-version = &lt;span style="font-weight: bold;"&gt;python2.5&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;  # all supported python versions&lt;br /&gt;  supported-versions = python2.4, &lt;span style="font-weight: bold;"&gt;python2.5&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;  # formerly supported python versions&lt;br /&gt;  old-versions = python2.3&lt;br /&gt;&lt;br /&gt;  # unsupported versions, including older versions&lt;br /&gt;  unsupported-versions = python2.3&lt;br /&gt;&lt;br /&gt;3) Cambié el enlace simbólico /usr/bin/python para que apunte a python2.5&lt;br /&gt;&lt;br /&gt;4) Por último, ejecute&lt;br /&gt;&lt;br /&gt; pycentral updatedefault python2.4 python2.5&lt;br /&gt;&lt;br /&gt;Listo!&lt;br /&gt;&lt;br /&gt;server-0:/# python -V&lt;br /&gt;Python 2.5&lt;br /&gt;&lt;br /&gt;Espero sea de utilidad.&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-7390985887439760744?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/7390985887439760744/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=7390985887439760744' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/7390985887439760744'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/7390985887439760744'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2009/02/actualizar-version-de-python-en-debian.html' title='Actualizar versión de Python en Debian'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-4325437734537646118</id><published>2009-02-02T10:14:00.005-02:00</published><updated>2009-02-04T20:29:18.116-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostGIS'/><category scheme='http://www.blogger.com/atom/ns#' term='SIG'/><title type='text'>Instalación de MapGuide sobre XP con FDO para Postgis</title><content type='html'>&lt;meta name="GENERATOR" content="OpenOffice.org 2.4  (Linux)"&gt; 	&lt;style type="text/css"&gt; 	&lt;!-- 		@page { size: 21cm 29.7cm; margin: 2cm } 		P.sdfootnote { margin-left: 0.5cm; text-indent: -0.5cm; margin-bottom: 0cm; font-size: 10pt } 		P { margin-bottom: 0.21cm } 		A.sdfootnoteanc { font-size: 57% } 	--&gt;&lt;/style&gt;&lt;a href="http://mapguide.osgeo.org/"&gt;MapGuide Open Source&lt;/a&gt; es una plataforma basada en web para desarrollar aplicaciones de GIS. Estuve tratando de instalarlo en un XP UE que corre en vbox sobre Ubuntu y después de muchas idas y vueltas (y a Ramiro y Ronco que me dieron una mano) salió andando. Acá dejo un paso a paso:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-size:85%;"&gt;Instalar MapGuide Server 	(MgServerSetup-x.x.x)&lt;/span&gt;&lt;/p&gt; 	 	&lt;/li&gt;&lt;li&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-size:85%;"&gt;Instalar la extención 	MgWebServerExtensionsSetup-x.x&lt;/span&gt;&lt;/p&gt; 	 	&lt;/li&gt;&lt;li&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-size:85%;"&gt;Agregar el FDO para Postgres 	Postgis&lt;/span&gt;&lt;/p&gt; 	&lt;ol&gt;&lt;li&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-size:85%;"&gt;Reemplazar las librerias que 		están en&lt;/span&gt;&lt;/p&gt; 	&lt;/li&gt;&lt;/ol&gt; &lt;/li&gt;&lt;/ol&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-size:85%;"&gt;		%MAPGUIDE_INSTALL%\bin\FDO\  con las que están en &lt;a href="http://www.geomapgis.com/web/geomap-group/fdo/index.html"&gt;FDOpg33.zip&lt;/a&gt;&lt;a class="sdfootnoteanc" name="sdfootnote1anc" href="http://www.blogger.com/post-edit.do#sdfootnote1sym"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt; &lt;ol&gt;&lt;ol start="2"&gt;&lt;li&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-size:85%;"&gt;Agregar en providers.xml lo 		siguiente:&lt;/span&gt;&lt;/p&gt; 		&lt;ol&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-size:85%;"&gt;&lt;featureprovider&gt;&lt;/featureprovider&gt;&lt;/span&gt;&lt;/p&gt;&lt;/ol&gt; 	&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;FeatureProvider&amp;gt;&lt;br /&gt;     &lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;       &amp;lt;Name&amp;gt;OSGeo.PostGIS.3.3&amp;lt;/Name&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;       &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;DisplayName&amp;gt;OSGeo FDO Provider for PostGIS&amp;lt;/DisplayName&amp;gt;&lt;br /&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;Description&amp;gt;Read/write access to spatial and attribute data in an PostGIS.&amp;lt;/Description&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;        &amp;lt;IsManaged&amp;gt;False&amp;lt;/IsManaged&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;        &amp;lt;Version&amp;gt;3.3.0.0&amp;lt;/Version&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;FeatureDataObjectsVersion&amp;gt;3.3.0.0&amp;lt;/FeatureDataObjectsVersion&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;LibraryPath&amp;gt;.\PostGISProvider.dll&amp;lt;/LibraryPath&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;/FeatureProvider&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-size:85%;"&gt;		&lt;/span&gt;&lt;/p&gt; &lt;ol start="3"&gt;&lt;li&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-size:85%;"&gt;Aplicar el parche para Firefox 3, 	esto si es la versión de mapguide 2.0 en versiones nuevas no es 	necesario.&lt;/span&gt;&lt;/p&gt; 	&lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-size:85%;"&gt;Hay que copiar y reemplazar los 	archivos que están en &lt;a href="http://trac.osgeo.org/mapguide/ticket/378"&gt;FixedFiles.zip&lt;/a&gt;&lt;a class="sdfootnoteanc" name="sdfootnote2anc" href="http://trac.osgeo.org/mapguide/ticket/378"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt; 	&lt;/li&gt;&lt;li&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-size:85%;"&gt;En caso el caso de realizar una 	prueba y que de un error al conectar el con PostGIS probar con 	&lt;a href="http://www.dependencywalker.com/"&gt;DependencyWalker&lt;/a&gt;&lt;a class="sdfootnoteanc" name="sdfootnote3anc" href="http://www.blogger.com/post-edit.do#sdfootnote3sym"&gt;&lt;/a&gt; 	para ver si PostGISProvider.dll requiere alguna dll que no exista.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;/ol&gt; &lt;div id="sdfootnote1"&gt; 	&lt;p class="sdfootnote"&gt;&lt;a class="sdfootnotesym" name="sdfootnote1sym" href="http://www.blogger.com/post-edit.do#sdfootnote1anc"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; &lt;div id="sdfootnote2"&gt; 	&lt;p class="sdfootnote"&gt;&lt;a class="sdfootnotesym" name="sdfootnote2sym" href="http://www.blogger.com/post-edit.do#sdfootnote2anc"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; &lt;div id="sdfootnote3"&gt; 	&lt;p class="sdfootnote"&gt;&lt;a class="sdfootnotesym" name="sdfootnote3sym" href="http://www.blogger.com/post-edit.do#sdfootnote3anc"&gt;&lt;/a&gt;&lt;/p&gt; &lt;/div&gt; &lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-4325437734537646118?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/4325437734537646118/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=4325437734537646118' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/4325437734537646118'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/4325437734537646118'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2009/02/instalacion-de-mapguide-sobre-xp-con.html' title='Instalación de MapGuide sobre XP con FDO para Postgis'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-4568019896151639423</id><published>2009-01-09T10:36:00.005-02:00</published><updated>2010-11-18T10:09:21.684-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostGIS'/><category scheme='http://www.blogger.com/atom/ns#' term='SIG'/><title type='text'>Agregar el template_postgis en PostgreSQL</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;span class="com"&gt;Después de renegar un poquito con mi instalación de postgis en Ubuntu, puntualmente era que no tenia instalado el template_postgis.&lt;/span&gt; &lt;span class="com"&gt;Revolví un poco en google y encontre esto (que es literalmente como se dice un COPY &amp;amp; PASTE!! de &lt;/span&gt;&lt;a href="http://code.google.com/p/geodjango-basic-apps/wiki/GeographicAdminQuickStart"&gt;aquí&lt;/a&gt;). Lo único que tuve que modificar fue la ruta a los archivos &lt;span style="font-style: italic;" class="pln"&gt;lwpostgis&lt;/span&gt;&lt;span style="font-style: italic;" class="pun"&gt;.&lt;/span&gt;&lt;span style="font-style: italic;"&gt;sql&lt;/span&gt; y &lt;span style="font-style: italic;" class="pln"&gt;spatial_ref_sys&lt;/span&gt;&lt;span style="font-style: italic;" class="pun"&gt;.&lt;/span&gt;&lt;span style="font-style: italic;" class="pln"&gt;sql&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;Nota&lt;/span&gt;: el archivo &lt;span style="font-style: italic;" class="pln"&gt;lwpostgis&lt;/span&gt;&lt;span style="font-style: italic;" class="pun"&gt;.&lt;/span&gt;&lt;span style="font-style: italic;"&gt;sql&lt;/span&gt;&lt;span&gt; ta&lt;/span&gt;mbién se puede encontrar como: &lt;span style="font-style: italic;"&gt;postgis.sql&lt;/span&gt;, en mi Ubuntu (Karmic) el directorio donde se encuentran estos archivos es: /usr/share/postgresql/8.4/contrib/postgis-1.5/&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="sql"&gt;&lt;br /&gt;# Create a database with UTF encoding&lt;br /&gt;$ createdb -E UTF8 -O postgres -U postgres template_postgis&lt;br /&gt;&lt;br /&gt;# Load the required language for PostGIS&lt;br /&gt;$ createlang plpgsql -d template_postgis -U postgres&lt;br /&gt;&lt;br /&gt;# Load postgis functions and spatial reference info&lt;br /&gt;# which are sometimes installed in the postgres share directory ($ pg_config --sharedir)&lt;br /&gt;# Also look for lwpostgis.sql and spatial_ref_sys.sql in (/usr/share/  or /usr/local/share/)&lt;br /&gt;&lt;br /&gt;# Once you have found the correct location, load the first sql into your template db:&lt;br /&gt;$ psql -d template_postgis -U postgres -f /usr/share/lwpostgis.sql&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# Note: ignore any NOTICES, like 'psql:/usr/share/lwpostgis.sql:44: NOTICE:  type "histogram2d" is not yet defined'&lt;br /&gt;# You should see output like:&lt;br /&gt;BEGIN&lt;br /&gt;CREATE FUNCTION&lt;br /&gt;CREATE OPERATOR&lt;br /&gt;CREATE TYPE&lt;br /&gt;CREATE AGGREGATE&lt;br /&gt;COMMIT&lt;br /&gt;&lt;br /&gt;# Then load the geographic projection tables&lt;br /&gt;$ psql -d template_postgis -U postgres -f /usr/share/spatial_ref_sys.sql&lt;br /&gt;&lt;br /&gt;# if you get an error about not being able to find  `geos` add /usr/local/lib to /etc/ld.so.conf&lt;br /&gt;# And run:&lt;br /&gt;$ ldconfig # Then restart PostgreSQL&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-4568019896151639423?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/4568019896151639423/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=4568019896151639423' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/4568019896151639423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/4568019896151639423'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2009/01/agregar-el-templatepostgis-en.html' title='Agregar el template_postgis en PostgreSQL'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-5624862917952266316</id><published>2008-08-07T13:04:00.006-03:00</published><updated>2008-08-09T20:58:40.841-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostGIS'/><category scheme='http://www.blogger.com/atom/ns#' term='MapServer'/><category scheme='http://www.blogger.com/atom/ns#' term='SIG'/><title type='text'>MapServer, PostGIS y los OID</title><content type='html'>&lt;p class="MsoNormal" style="text-align: justify;"&gt;Trabajando con estas herramientas me encontré con un problema que me rompió la cabeza. La bug se producía cuando intentaba desplegar unas capas vectoriales que tenía almacenadas en PostGIS donde MapServer me daba el siguiente error:&lt;/p&gt;    &lt;p class="MsoNormal" style="text-align: justify; font-weight: bold;"&gt;&lt;span class="nfakpe"  style="font-size:78%;"&gt;&lt;span lang="EN-US"&gt;prepare_database&lt;/span&gt;&lt;/span&gt;&lt;span  lang="EN-US" style="font-size:78%;"&gt;(): &lt;span class="nfakpe"&gt;Query&lt;/span&gt; &lt;span class="nfakpe"&gt;error&lt;/span&gt;. &lt;span class="nfakpe"&gt;Error&lt;/span&gt; &lt;span class="nfakpe"&gt;executing&lt;/span&gt; &lt;span class="nfakpe"&gt;POSTGIS&lt;/span&gt; &lt;span class="nfakpe"&gt;DECLARE&lt;/span&gt; (&lt;span class="nfakpe"&gt;the&lt;/span&gt; &lt;span class="nfakpe"&gt;actual&lt;/span&gt; &lt;span class="nfakpe"&gt;query&lt;/span&gt;) &lt;span class="nfakpe"&gt;statement&lt;/span&gt;: '&lt;span class="nfakpe"&gt;DECLARE&lt;/span&gt; &lt;span class="nfakpe"&gt;mycursor&lt;/span&gt; &lt;span class="nfakpe"&gt;BINARY&lt;/span&gt; &lt;span class="nfakpe"&gt;CURSOR&lt;/span&gt; &lt;span class="nfakpe"&gt;FOR&lt;/span&gt; &lt;span class="nfakpe"&gt;SELECT&lt;/span&gt; &lt;span class="nfakpe"&gt;asbinary&lt;/span&gt;(&lt;span class="nfakpe"&gt;force_collection&lt;/span&gt;(&lt;span class="nfakpe"&gt;&lt;wbr&gt;force_2d&lt;/span&gt;(the_geom)),'NDR'),&lt;wbr&gt;gid::text from &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify; font-weight: bold;"&gt;&lt;span  lang="EN-US" style="font-size:78%;"&gt;rencana.kawasanbencana WHERE () and (the_geom &amp;amp;&amp;amp; setSRID( 'BOX3D(….)'::BOX3D,1) )' &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify; font-weight: bold;"&gt;&lt;span  lang="EN-US" style="font-size:78%;"&gt;Postgresql reports &lt;span class="nfakpe"&gt;the&lt;/span&gt; &lt;span class="nfakpe"&gt;error&lt;/span&gt; as '&lt;span class="nfakpe"&gt;ERROR&lt;/span&gt;: syntax &lt;span class="nfakpe"&gt;error&lt;/span&gt; at or near ")" LINE 1: ...DR'),gid::text from rencana.kawasanbencana WHERE () and (&lt;span class="nfakpe"&gt;the&lt;/span&gt;... ^ ' &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify; font-weight: bold;"&gt;&lt;span  lang="EN-US" style="font-size:78%;"&gt;More Help: &lt;span class="nfakpe"&gt;Error&lt;/span&gt; with &lt;span class="nfakpe"&gt;POSTGIS&lt;/span&gt; data variable. You specified 'check your .map file'. Standard ways of specifiying are : &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify; font-weight: bold;"&gt;&lt;span  lang="EN-US" style="font-size:78%;"&gt;(1) 'geometry_column from geometry_table' &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-weight: bold;font-size:78%;"  lang="EN-US"&gt;(2) 'geometry_column from (sub &lt;span class="nfakpe"&gt;query&lt;/span&gt;) as foo using unique column name using SRID=srid#' Make sure you put in &lt;span class="nfakpe"&gt;the&lt;/span&gt; 'using unique column name' and 'using SRID=#' clauses in. &lt;span class="nfakpe"&gt;For&lt;/span&gt; more help, please see &lt;/span&gt;&lt;span style="font-weight: bold;font-size:78%;" &gt;&lt;a href="http://postgis.refractions.net/documentation/" target="_blank"&gt;&lt;span style="" lang="EN-US"&gt;http://&lt;span class="nfakpe"&gt;postgis&lt;/span&gt;.refractions.&lt;wbr&gt;net/documentation/&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span  lang="EN-US" style="font-size:9;"&gt;&lt;span style="font-weight: bold;font-size:78%;" &gt;&lt;br /&gt;Mappostgis.c - version of Jan 23/2004.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style="text-align: justify;"&gt;La primera pista para solucionar el problema la encontré en la &lt;a href="http://lists.osgeo.org/mailman/listinfo/mapserver-users"&gt;lista&lt;/a&gt; de MapServer (post del día 6/8/2008), donde dice que el error se debe a que la tabla donde están los datos a mostrar no tiene definido un OID.&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;Por último, del &lt;a href="http://www.carocoops.org/resources/doc/postgis/x556.html"&gt;tutorial&lt;/a&gt; de PostGIS y de la data que me paso mi colega &lt;a href="http://ferbor.blogspot.com/"&gt;Bordignon&lt;/a&gt; encontre que Mapserver requiere un identificador único para cada uno de los registros espaciales y que PostgreSQL usa para eso OID. &lt;/p&gt;  &lt;p style="text-align: justify;"&gt;La solución es crear un índice con el oid que tengamos definido.&lt;/p&gt;  &lt;p style="text-align: justify;"&gt;&lt;span style="font-size:11;"&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;span lang="EN-US"&gt;&lt;span style=""&gt;           &lt;/span&gt;CREATE INDEX [indexname] ON [tablename] ( oid );&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;Otra solución es que la tabla ya tenga definido el oid al momento de la creación. En este &lt;a href="http://tainavn.blogspot.com/2007/10/import-spatial-data-shapefile-into.html"&gt;link&lt;/a&gt; se explica cómo hacerlo.&lt;/p&gt;&lt;p class="MsoNormal" style="text-align: justify;"&gt;Por último, el error también se genera cuando se usa en el archivo .map la instrucción FILTER sin parámetros, es decir FILTER = ''.  Esto produce que el query que se envía a PostgreSQL tenga un WHERE sin argumentos que dispara el error citado.&lt;/p&gt;&lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-5624862917952266316?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/5624862917952266316/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=5624862917952266316' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/5624862917952266316'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/5624862917952266316'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2008/08/mapserver-postgis-y-los-oid.html' title='MapServer, PostGIS y los OID'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-6455426838681627435</id><published>2007-11-15T13:28:00.000-03:00</published><updated>2008-12-11T20:33:02.500-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><category scheme='http://www.blogger.com/atom/ns#' term='Trabajo Final'/><title type='text'>XML con Python y ElementTree</title><content type='html'>Gracias a la sugerencia de un camarada de &lt;a href="http://www.python.com.ar/"&gt;PyAr&lt;/a&gt; probé el módulo &lt;a href="http://effbot.org/zone/element-index.htm"&gt;elementtree&lt;/a&gt; perteneciente a la librería estándar de &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt;, y la verdad que es realmente fácil manipular XML que este módulo.&lt;br /&gt;&lt;br /&gt;Desde Ubuntu lo instale con:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;apt-get install python-elementtree&lt;br /&gt;&lt;br /&gt;Lo usé para parsear XML con la siguiente estructura:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;pre id="line298"&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;br /&gt;&amp;lt;!DOCTYPE feeds SYSTEM "feeds.dtd"&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;feeds&amp;gt;&lt;br /&gt;&amp;lt;ENTRADAS&amp;gt;&lt;br /&gt;&amp;lt;ID&amp;gt;1&amp;lt;/ID&amp;gt;&lt;br /&gt;&amp;lt;TITULO&amp;gt;La Política&amp;lt;/TITULO&amp;gt;&lt;br /&gt;&amp;lt;AUTOR&amp;gt;Groucho Marx&amp;lt;/AUTOR&amp;gt;&lt;br /&gt;&amp;lt;FECHA&amp;gt;1960-04-24&amp;lt;/FECHA&amp;gt;&lt;br /&gt;&amp;lt;HORA&amp;gt;13:34&amp;lt;/HORA&amp;gt;&lt;br /&gt;&amp;lt;TYPE&amp;gt;text/plain&amp;lt;/TYPE&amp;gt;&lt;br /&gt;&amp;lt;DESC&amp;gt;La política es el arte de buscar problemas, encontrarlos,&lt;br /&gt;hacer un diagnóstico falso y aplicar después los remedios equivocados.&amp;lt;/DESC&amp;gt;&lt;br /&gt;&amp;lt;/ENTRADAS&amp;gt;&lt;br /&gt;&lt;br /&gt;(puede haber N entradas)&lt;br /&gt;&lt;br /&gt;&amp;lt;/feeds&amp;gt;&lt;/pre&gt;El código Python para acceder a cada valor de un elemento es el siguiente:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lOJ3Zn5KjPQ/Rz7q-ovFGCI/AAAAAAAAADA/BBav9lmAXoQ/s1600-h/img_ejemplo_py"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_lOJ3Zn5KjPQ/Rz7q-ovFGCI/AAAAAAAAADA/BBav9lmAXoQ/s400/img_ejemplo_py" alt="" id="BLOGGER_PHOTO_ID_5133798987056617506" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Así podría acceder a cada uno de los valores de los elementos. Para este ejemplo sólo muestro los ID.&lt;br /&gt;Lo que no probé, porque no lo necesitaba para esto, es el manejo de Atributos pero por lo que miré al pasar es muy simple.&lt;br /&gt;&lt;br /&gt;Espero les sirva.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-6455426838681627435?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/6455426838681627435/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=6455426838681627435' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/6455426838681627435'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/6455426838681627435'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2007/11/xml-con-python-y-elementtree.html' title='XML con Python y ElementTree'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_lOJ3Zn5KjPQ/Rz7q-ovFGCI/AAAAAAAAADA/BBav9lmAXoQ/s72-c/img_ejemplo_py' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-8371092675649310269</id><published>2007-11-10T10:13:00.000-03:00</published><updated>2007-11-17T10:42:16.601-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><category scheme='http://www.blogger.com/atom/ns#' term='Trabajo Final'/><title type='text'>Ahora si...a full con Python</title><content type='html'>Me puse las pilas y comencé a "programar" algunas cosas en &lt;a href="http://www.python.org/"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Python&lt;/span&gt;&lt;/a&gt;. Si bien no es mi primera experiencia con el lenguaje, ya que en el &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;laburo&lt;/span&gt; estuve modificando unos &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;script&lt;/span&gt;s que vienen con aplicaciones de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;ESRI&lt;/span&gt; (&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;ArcGIS&lt;/span&gt;)... este es mi lanzamiento oficial.&lt;br /&gt;&lt;br /&gt;Como primer paso me suscribí a la lista de &lt;a href="http://www.python.com.ar/"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;Python&lt;/span&gt; Argentina&lt;/a&gt; y la verdad que me han recibido muy bien.&lt;br /&gt;&lt;br /&gt;Mi primer programa es una clase que necesito para mi trabajo final de licenciatura.&lt;br /&gt;&lt;br /&gt;Simplemente lo que tengo que hacer es procesar, en forma &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_6"&gt;periódica&lt;/span&gt;, un lote de archivos &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;XML&lt;/span&gt; que tienen noticias y realizar algunas operaciones sobre esos textos.&lt;br /&gt;&lt;br /&gt;Hasta ahora use los módulos:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;xml.dom.minidom, con el que manipulo los archivos &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;XML&lt;/span&gt;.&lt;/li&gt;&lt;li&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;re&lt;/span&gt;, que uso para expresiones regulares.&lt;/li&gt;&lt;/ul&gt;Por ahora nada más. :-)&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-8371092675649310269?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/8371092675649310269/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=8371092675649310269' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/8371092675649310269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/8371092675649310269'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2007/11/ahora-sia-full-con-python.html' title='Ahora si...a full con Python'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-1353938590839922961</id><published>2007-11-07T08:42:00.000-03:00</published><updated>2007-11-07T09:41:18.347-03:00</updated><title type='text'>...il retorno ! ! !</title><content type='html'>Considerando el dicho popular que dice "...lo bueno se hace esperar" me tome un tiempo para ver si se me ocurria algo, lo único que puedo decir es: no tengan esperanzas de encontrar nada interesante acá. Simplemente porque estoy un poco escaso de ideas hace ya unos...mmm 28, sí 28 años.&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-1353938590839922961?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/1353938590839922961/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=1353938590839922961' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/1353938590839922961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/1353938590839922961'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2007/11/il-retorno.html' title='...il retorno ! ! !'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-1921343469008327760</id><published>2007-05-07T11:38:00.000-03:00</published><updated>2007-05-07T11:49:47.311-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IR'/><category scheme='http://www.blogger.com/atom/ns#' term='DIR'/><title type='text'>Uso de query logs en DIR</title><content type='html'>&lt;span style=";font-family:&amp;quot;;font-size:12;"  lang="ES-TRAD" &gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;Using query logs to establish vocabularies in distributed information retrieval&lt;br /&gt;Por: &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;;" lang="EN-GB"&gt;Milad Shokouhi, Justin Zobel, Saied Tahaghoghi, Falk Scholer&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;"  lang="ES-TRAD" &gt;&lt;br /&gt;&lt;/span&gt;  &lt;p class="MsoNormal"  style="text-align: justify;font-family:arial;"&gt;&lt;span lang="ES-TRAD"&gt;Los autores de este &lt;a href="http://goanna.cs.rmit.edu.au/%7Emilad/shokouhi-ipm07.pdf"&gt;paper&lt;/a&gt; proponen la utilización de logs de queries (LQ) para recuperación de información distribuida. &lt;/span&gt;&lt;span lang="ES-TRAD"  style="font-size:12;"&gt;Según sus estudios los LQ en un motor de búsqueda,&lt;/span&gt;&lt;span lang="ES-TRAD"&gt; son un recurso valioso que puede ser usado para predecir cómo los usuarios interactuan con el sistema de búsqueda. Puntualmente, utilizan los términos de los LQ para guiar búsquedas en ambientes no cooperativos. También es aplicado para desarrollar estrategias de poda utilizando la información de los logs de queries para eliminar términos.&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="text-align: justify;font-family:arial;"&gt;&lt;span lang="ES-TRAD"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span lang="ES-TRAD"  style="font-size:12;"&gt;El objetivo de este trabajo es determinar cómo los logs de queries pueden ser usados para guiar futuras busquedas, en el contexto de la Recuperación de Información Distribuida.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;"  lang="ES-TRAD" &gt;&lt;span style="font-family:arial;"&gt;Que lo disfruten. :-)&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-1921343469008327760?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/1921343469008327760/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=1921343469008327760' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/1921343469008327760'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/1921343469008327760'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2007/05/uso-de-query-logs-en-dir.html' title='Uso de query logs en DIR'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-6158957092421018365</id><published>2007-03-20T10:17:00.000-03:00</published><updated>2007-03-20T10:38:18.451-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IR'/><title type='text'>La clave del éxito según Baeza</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span lang="ES-AR"&gt;Leyendo un post del &lt;a href="http://www.ojobuscador.com/2007/02/14/la-increible-historia-de-fast/"&gt;OjoBuscador&lt;/a&gt; encontré una publicación que analiza un artículo de Ricardo Baeza-Yates donde dice que “&lt;i&gt;Para tener éxito se necesita primero gente visionaria y luego personas decididas a llevar a cabo sus visiones, con calidad y perseverancia. La fortuna es el premio a este tipo de esfuerzos&lt;/i&gt;”&lt;br /&gt;Reflexión interesante viniendo de un maestro como Baeza.  El artículo es &lt;a href="http://www.dcc.uchile.cl/%7Erbaeza/inf/fast.html"&gt;La increíble historia de FAST&lt;/a&gt; ...  disfrútenlo.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-6158957092421018365?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/6158957092421018365/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=6158957092421018365' title='1 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/6158957092421018365'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/6158957092421018365'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2007/03/la-clave-del-xito-segn-baeza.html' title='La clave del éxito según Baeza'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-2293559645456240086</id><published>2007-03-20T09:49:00.000-03:00</published><updated>2007-03-20T10:37:41.990-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Encuesta de DELL sobre preferencias y usos de equipos con Linux</title><content type='html'>La&lt;b&gt; &lt;/b&gt;empresa&lt;b&gt; &lt;a href="http://www.dell.com"&gt;DELL&lt;/a&gt;&lt;/b&gt; acaba de habilitar una &lt;a href="http://www.dell.com/content/topics/global.aspx/corp/linux?s=corp"&gt;encuesta&lt;/a&gt; on-line para obtener información acerca del uso y preferencias de usuarios de Linux.&lt;br /&gt;&lt;br /&gt;Fuente: &lt;a href="http://www.informatica.cl/"&gt;Revista Informatica&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-2293559645456240086?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/2293559645456240086/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=2293559645456240086' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/2293559645456240086'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/2293559645456240086'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2007/03/encuesta-de-dell-sobre-preferencias-y.html' title='Encuesta de DELL sobre preferencias y usos de equipos con Linux'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-2445039450605712887</id><published>2007-03-13T08:56:00.000-03:00</published><updated>2008-12-11T20:33:03.585-02:00</updated><title type='text'>Configurar MySQL para que funcione con JDeveloper 10g  y el contenedor OC4J embebido</title><content type='html'>&lt;span style="font-family:Arial;"&gt;Para configurar el Driver &lt;i style=""&gt;mysql-connector-java-x&lt;/i&gt; hay que descargar el .jar del sitio &lt;a href="http://dev.mysql.com/downloads/connector/j/5.0.html"&gt;www.mysql.com&lt;/a&gt; la versión disponible en la actuallidad es la 5.0  (...apurense) &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style=";font-family:Arial;font-size:10;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;Los pasos a seguir son los siguientes:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top: 0cm;" start="1" type="1"&gt;&lt;li class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;Primero hay que      copiar el driver mysql-connector-java-x.x.x-bin.jar al directorio \j2ee\home\applib      del &lt;/span&gt;&lt;span style="font-family:Arial;"&gt;JDeveloper  &lt;/span&gt;&lt;span style="font-family:Arial;"&gt;para que se integre con el contenedor OC4J.&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;Luego desde el      JDeveloper hay probar la conexión con alguna DB, entonces hay que ir a      View &gt; Connection Navigator. Se crea una nueva conexión haciendo clic      con el botón derecho del mouse en Connections y seleccionando del menú      contextual New Database Connection.&lt;/span&gt; Hay que asignarle un nombre para la conexión y luego en la lista Connection Type escoja &lt;i style=""&gt;Controlador JDBC de Terceros&lt;/i&gt;.&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 35.4pt; text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lOJ3Zn5KjPQ/RfaTlhgSRCI/AAAAAAAAABQ/VPKOVryXhgs/s1600-h/paso2.JPG"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_lOJ3Zn5KjPQ/RfaTlhgSRCI/AAAAAAAAABQ/VPKOVryXhgs/s320/paso2.JPG" alt="" id="BLOGGER_PHOTO_ID_5041379105746076706" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style=";font-family:Arial;font-size:12;"  &gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:351.75pt;"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\Santiago\CONFIG~1\Temp\msohtml1\01\clip_image001.jpg" title="paso1"&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;/span&gt;&lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top: 0cm;" start="3" type="1"&gt;&lt;li class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;Luego hay que autenticarse      para realizar la conexión con &lt;st1:personname productid="la DB." st="on"&gt;la       DB.&lt;/st1:personname&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 35.4pt; text-align: center;" align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lOJ3Zn5KjPQ/RfaUAhgSRDI/AAAAAAAAABY/Ox9sg8jOAVQ/s1600-h/paso2.JPG"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_lOJ3Zn5KjPQ/RfaUAhgSRDI/AAAAAAAAABY/Ox9sg8jOAVQ/s320/paso2.JPG" alt="" id="BLOGGER_PHOTO_ID_5041379569602544690" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 35.4pt; text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top: 0cm;" start="4" type="1"&gt;&lt;li style="text-align: justify;" class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;Luego se completan      los datos del Driver JBDC que manejará las conexiones.&lt;/span&gt;&lt;span style="font-family:Arial;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal" style="margin-left: 35.4pt; text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lOJ3Zn5KjPQ/RfaUaxgSREI/AAAAAAAAABg/YH6RySbhT5E/s1600-h/paso3.JPG"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_lOJ3Zn5KjPQ/RfaUaxgSREI/AAAAAAAAABg/YH6RySbhT5E/s320/paso3.JPG" alt="" id="BLOGGER_PHOTO_ID_5041380020574110786" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 35.4pt; text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;Se debe crear un nuevo Driver con New… se abrirá una ventana que permite registrar el Driver JDBC.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 35.4pt; text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 35.4pt; text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 35.4pt; text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;Ahí se introduce en Driver Class = com.mysql.jdbc.Driver, en Library se coloca el nombre de la librería que se puede buscar desde el botón Browser… Recuerde que la librería estaba en \j2ee\home\applib. Al seleccionar la librería se completa en forma automática la opción de Classpath. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 35.4pt; text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lOJ3Zn5KjPQ/RfaU6xgSRFI/AAAAAAAAABo/atnezhdz7XI/s1600-h/paso4.JPG"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_lOJ3Zn5KjPQ/RfaU6xgSRFI/AAAAAAAAABo/atnezhdz7XI/s320/paso4.JPG" alt="" id="BLOGGER_PHOTO_ID_5041380570329924690" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;  &lt;p class="MsoNormal" style="margin-left: 35.4pt; text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;En la ventana Connection se debe colocar &lt;st1:personname productid="la URL" st="on"&gt;la URL&lt;/st1:personname&gt; jdbc:mysql:&lt;/span&gt;//&lt;dirección&gt;&lt;/dirección&gt;&lt;span style="font-family:Arial;"&gt;&lt;dirección de="" red=""&gt;&lt;dirección&gt;:3306/&lt;mi db=""&gt;&lt;mi&gt; yo, para probar, utilicé la de prueba de MySQL test&lt;o:p&gt;&lt;/o:p&gt;&lt;/mi&gt;&lt;/mi&gt;&lt;/dirección&gt;&lt;/dirección&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style="margin-left: 35.4pt; text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top: 0cm;" start="5" type="1"&gt;&lt;li class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;Al finalizar      presione el botón Test Connection para verificar la conexión.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lOJ3Zn5KjPQ/RfaVyBgSRGI/AAAAAAAAABw/yQl5wlUXoIw/s1600-h/paso6.JPG"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_lOJ3Zn5KjPQ/RfaVyBgSRGI/AAAAAAAAABw/yQl5wlUXoIw/s320/paso6.JPG" alt="" id="BLOGGER_PHOTO_ID_5041381519517697122" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p class="MsoNormal" style="text-align: justify;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 18pt;"&gt;&lt;span style="font-family:Arial;"&gt;Hasta aquí sabemos que el driver está funcionando habría que utilizarlo con alguna aplicación y verificar si el contenedor OC4J funciona correctamente.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-2445039450605712887?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/2445039450605712887/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=2445039450605712887' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/2445039450605712887'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/2445039450605712887'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2007/03/configurar-mysql-para-que-funcione-con.html' title='Configurar MySQL para que funcione con JDeveloper 10g  y el contenedor OC4J embebido'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lOJ3Zn5KjPQ/RfaTlhgSRCI/AAAAAAAAABQ/VPKOVryXhgs/s72-c/paso2.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-598565020552653960</id><published>2007-03-13T00:00:00.000-03:00</published><updated>2007-03-13T00:33:16.094-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='IR'/><title type='text'>Muy pronto en el Camarón BitMap</title><content type='html'>En breve, si las obligaciones me lo permiten... hablare de las pruebas que estoy haciendo con la API Lucene para Java y cómo poder usarla para laburar con documentos en español... (parezco Caseros en Tele Escuela Técnica...).&lt;br /&gt;Hasta pronto. (:-D)&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-598565020552653960?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/598565020552653960/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=598565020552653960' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/598565020552653960'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/598565020552653960'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2007/03/muy-pronto-en-el-camarn-bitmap.html' title='Muy pronto en el Camarón BitMap'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36955276.post-4617975475054256048</id><published>2007-02-19T19:44:00.000-03:00</published><updated>2008-12-11T20:33:03.625-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IR'/><category scheme='http://www.blogger.com/atom/ns#' term='Trabajo Final'/><title type='text'>Propuesta de Plan de Tesis [Versión Entregada]</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Propuesta de Plan de Tesis&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Selección de Recursos Distribuidos&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;en Ambientes Dinámicos Basados en Web&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Tesista: Santiago Banchero&lt;br /&gt;Director: Mg. Gabriel H. Tolosa&lt;br /&gt;Co-Director: Mg. Fernando R. A. Bordignon&lt;br /&gt;&lt;br /&gt;1. Introducción&lt;br /&gt;&lt;br /&gt;El área de Recuperación de Información ha sido pionera en la tarea de buscar y rankear documentos relevantes a partir de una necesidad de información del usuario [1,2], operando sobre grandes volúmenes de información, generalmente en documentos de texto y tradicionalmente bajo esquemas centralizados.&lt;br /&gt;&lt;br /&gt;Con el acentuado crecimiento de las comunicaciones y la expansión de Internet como plataforma de intercambio de información surge la necesidad de integrar distintas fuentes. Nace así la Recuperación de Información Distribuida RID (también llamada Federated Search) [1] que pretende dar respuestas al problema de la Recuperación de Información en un nuevo ambiente ampliado por el crecimiento de repositorios, tanto dentro de las organizaciones FIGURA 1 (a) como de la red global de información FIGURA 1 (b). La RID tiene como objetivo principal desarrollar modelos y estrategias para obtener el mayor beneficio de estas fuentes distribuidas para responder a las distintas necesidades de información de sus usuarios, que perciben al sistema como único, independientemente del número de fuentes que existan. El proceso es totalmente transparente al usuario por lo tanto no percibe la complejidad del mismo.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lOJ3Zn5KjPQ/RdopRYQDI4I/AAAAAAAAAAM/uaiF1U-Rym4/s1600-h/1.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_lOJ3Zn5KjPQ/RdopRYQDI4I/AAAAAAAAAAM/uaiF1U-Rym4/s320/2.bmp" alt="" id="BLOGGER_PHOTO_ID_5033380912084231042" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&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;&lt;br /&gt;&lt;br /&gt;La RID incluye tres subproblemas a estudiar [1, 3, 6]: a) DESCRIPCIÓN DE LOS RECURSOS, es decir, cómo se representa la información que se encuentra distribuida en repositorios, denominados corpus de documentos o bases de datos textuales, b) la SELECCIÓN DE RECURSOS, donde a partir de una necesidad de información y un conjunto de descripciones de éstos se decide cuáles serán los que tengan mayor probabilidad de satisfacer la consulta. Por último, c) la FUSIÓN DE LOS RESULTADOS consiste en la integración de los resultados retornados por las consultas a n bases de datos formando una única lista que presenta el ranking de los resultados.&lt;br /&gt;&lt;br /&gt;El hecho que exista fuentes de información distribuidas trae consigo otros problemas con los que se debe enfrentar la RID algunos relacionados con aspectos tecnológicos. El primero, es la heterogeneidad que se manifiesta en varios aspectos, por ejemplo: la variedad de formatos que se manejan para representar la información, la frecuencia con que estos recursos son actualizados, los contenidos que estos repositorios abarcan, etc. En segundo lugar, no siempre es posible tener un conocimiento completo de los recursos (colecciones, bases de datos), es decir, no hay habitualmente una colaboración de parte de las fuentes a la hora de suministrar información referida a cantidad de documentos, de palabras u otra ayuda que pueda servir a la hora de realizar una consulta[11]. Por último, por tratarse de un ambiente distribuido soportado por una red debe afrontar todos los problemas asociados con éstas como es la disponibilidad del recurso, la latencia de los enlaces, etc.&lt;br /&gt;&lt;br /&gt;También las soluciones que aporta la RID se encuentran altamente condicionadas por las características del ambiente, es decir, si se trata de un entorno cooperativo o no cooperativo. En el primero de los casos, se cuenta con las descripciones de los recursos – vocabulario, estadísticas del corpus  – que se consultarán. Por el contrario, en el segundo, no se cuenta con la información mencionada y sólo es posible realizar consultas y retornar documentos.&lt;br /&gt;&lt;br /&gt;En la actualidad existe un gran número de repositorios Web al alcance de todos los usuarios. Algunos de ellos son periódicos, librerías digitales, blogs, wikis, bibliotecas, repositorios universitarios, etc. También se cuenta con nuevos motores de búsqueda para distintos tipos de fuentes algunos de estos  son: TECHNORATI  que permite realizar búsquedas sobre blogs, SCHOLAR  de Google que permite buscar documentos científicos (papers), BOOK  también de Google que da la posibilidad de buscar libros, entre otros.&lt;br /&gt;&lt;br /&gt;En este trabajo se abordará el problema de la representación y selección de recursos en ambientes dinámicos accesibles vía protocolos de sindicación de contenidos (RSS). Este es un caso particular ya que no es totalmente cooperativo ya que no entrega estadísticas ni descripciones pero publica los nuevos contenidos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2.  Antecedentes y Justificación&lt;br /&gt;&lt;br /&gt;La RID es un tema de investigación que se ha desarrollado de manera sostenida durante los últimos años, básicamente por la masificación de las comunicaciones y el crecimiento de miles de repositorios de información diseminados por el mundo. La red de redes ha sido responsable de este movimiento de expansión tecnológica y su constante evolución obliga a buscar soluciones cada vez más ingeniosas.&lt;br /&gt;&lt;br /&gt;El objetivo los un sistema de RID es proveer una interfaz sencilla para poder acceder a todos los recursos distribuidos, orientar cada necesidad de información del usuario hacia el recurso que mejor la satisfaga y luego fusione lo seleccionado en una única lista de resultados [10]. Un caso clásico en la Web son los metabuscadores (Metasearch , Mamma , etc). Como se ha mencionado estos sistemas tratan con la problemática fundamental de la RID [1].&lt;br /&gt;&lt;br /&gt;La característica principal que justifica el uso de sistemas de RID es que permite realizar búsquedas más exhaustivas que los buscadores tradicionales.  También reducen el tráfico en la red. Esto es posible gracias a que evita tener que realizar una consulta a todos los repositorios ya que se puede contar con una descripción mínima de este y así saber si esta en condiciones de satisfacer esa necesidad de información. De esta manera solo se consultaran aquellas que estén en condiciones de responder.&lt;br /&gt;&lt;br /&gt;Los trabajos realizados hasta la actualidad, y los más interesantes, incluyen algoritmos para la construcción de descripciones de recursos en ambientes no cooperativos como Query Based Sampling [15], Capture-Recapture, etc. Estos algoritmos permiten obtener algunos valores que no están disponibles, por las características del entorno. Por ejemplo, el tamaño de la colección en cantidad de documentos y otros datos estadísticos de estos repositorios que son requeridos a la hora de seleccionar.&lt;br /&gt;&lt;br /&gt;Por otro lado, los algoritmos de selección de recursos [3, 9] que utilizan modelos de espacios vectoriales de IR tradicional como gGLOSS [14], redes de inferencia bayesianas como INQUERY [12], CORI [5], ReDDE [10]. Estos últimos son los más utilizados por la comunidad de investigadores de RID. El objetivo fundamental de estos algoritmos es retornar un pequeño conjunto de bases de datos (recursos) que contengan la mayor cantidad de documentos relevantes para una consulta.&lt;br /&gt;&lt;br /&gt;Los sistemas de RID son también una solución a los problemas de escalabilidad que presentan los  motores de búsqueda tradicionales que deben manejar grandes volúmenes de información y utilizar demasiados recursos de hardware, software y ancho de banda. La solución aportada por la RID es más robusta,  facilita el mantenimiento de índices ya que no utilizan un único índice central sino que se propone la utilización de un índice por cada recurso [16].&lt;br /&gt;&lt;br /&gt;Por otro lado, existe todo un nuevo espacio de publicación que puede ser accesible a través de servicio de sindicación de contenido, que permite trabajar de manera opuesta a la idea original de publicar en un sitio web que los usuarios deban obligatoriamente visitar [13] por ejemplo, diarios como Clarín, La Nación entre otros. También existen buscadores verticales que operan sobre espacios acotados como:  TECHNORATI, GOOGLE BLOG SEARCH , FEEDSTER .&lt;br /&gt;&lt;br /&gt;En este trabajo de investigación se propone la integración de técnicas de RID y las nuevas formas de publicación de contenido. Es decir, la utilización de recursos Web existentes que presten servicio de feeds – RSS, ATOM y RDF – para publicar su contenido. Principalmente se apunta a Blogs y sitios Web personales de iguales características a la hora de publicar contenido. La utilización de estas tecnologías para construir descripciones de recursos constituye una alternativa novedosa ya que conduce a un ambiente de trabajo híbrido donde no hay una cooperación absoluta por parte de la fuente sino que es parcial, y se realiza a través de feeds. Tanto la sindicación de feeds como los Blogs son parte de la evolución de la Web y forman parte de un movimiento conocido como Web 2.0 [4] cuya filosofía es la reutilización de herramientas Web existentes y el aprovechamiento de la inteligencia colectiva.&lt;br /&gt;&lt;br /&gt;Este trabajo se encuentra en el marco del proyecto de investigación “Modelos y Servicios de Información sobre Sistemas Complejos en Espacios Académicos y Científicos” Disposición CDD-CBNº 429-06.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. Objetivos&lt;br /&gt;&lt;br /&gt;El objetivo de este trabajo es integrar y adaptar distintos algoritmos pertenecientes al área de RID para que funcionen conjuntamente con fuentes de información heterogéneas en Ambientes Dinámicos Basados en Web.&lt;br /&gt;&lt;br /&gt;Se trabajará con algoritmos que corresponden al primero y segundo subproblema de RID, descripción de los recursos y selección de recursos, respectivamente.&lt;br /&gt;&lt;br /&gt;Se propondrá un modelo de BD textual y se adaptará un algoritmo de selección de recursos basado en los clásicos como CORI [5] y ReDDE [10].&lt;br /&gt;&lt;br /&gt;Se desarrollará una herramienta que permita generar descripciones de recursos de fuentes heterogéneas en español y que permita el estudio de la evolución del lenguaje de cada fuente. Para poder realizar esto la aplicación deberá recuperar documentos publicados a través de sindicación de documentos.&lt;br /&gt;&lt;br /&gt;A continuación se incluye un gráfico que ilustra la arquitectura del modelo:&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/_lOJ3Zn5KjPQ/Rdop0oQDI5I/AAAAAAAAAAU/EbACCyX1QK4/s1600-h/2.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_lOJ3Zn5KjPQ/Rdop0oQDI5I/AAAAAAAAAAU/EbACCyX1QK4/s320/1.bmp" alt="" id="BLOGGER_PHOTO_ID_5033381517674619794" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. Metodología&lt;br /&gt;&lt;br /&gt;En una primera etapa se realizará un relevamiento bibliográfico sobre Recuperación de Información Distribuida, representación de recursos, selección de recursos,  publicación de feeds a través de tecnología XML (RSS, ATOM y RDF). También se realizará un relevamiento exhaustivo de proyectos relacionados con esta propuesta.&lt;br /&gt;&lt;br /&gt;Se estudiarán y utilizarán técnicas del área de recuperación de información para la construcción de índices que describen recursos como así también técnicas de poda de términos para hacer más eficientes estas descripciones.&lt;br /&gt;&lt;br /&gt;En una siguiente etapa se realizará la modificación del algoritmo de selección de recursos (CORI O ReDDE) y se realizarán pruebas contrastando los resultados con los obtenidos con los conseguidos a través de un search engines opensource. Se trata de una API de desarrollo para indexar y realizar búsquedas.&lt;br /&gt;&lt;br /&gt;Para la creación de las descripciones de recursos se diseñará y codificará una aplicación prototipo.&lt;br /&gt;&lt;br /&gt;Se realizarán reuniones periódicas con el director del proyecto durante el transcurso del trabajo, quién guiará las tareas y aconsejará sobre los pasos metodológicos y técnicos a seguir. El trabajo será realizado en gran parte en las dependencias del Centro Regional  Chivilcoy.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5. Problemas a resolver&lt;br /&gt;&lt;br /&gt;El desarrollo del presente trabajo involucra una serie de problemas a resolver que se detallan a continuación:&lt;br /&gt;&lt;br /&gt;- Desarrollar una aplicación que recupere y almacene documentos XML en formatos de feeds RSS, ATOM y RDF.&lt;br /&gt;- Definir una estructura para almacenar el contenido de cada una de las fuentes.&lt;br /&gt;- Entender y probar el funcionamiento de la API de indexación y búsqueda.&lt;br /&gt;- Realizar las modificaciones al algoritmo de selección de recursos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;6. Plan de Trabajo&lt;br /&gt;&lt;br /&gt;Fase 1 (meses 1 al 2)&lt;br /&gt;&lt;br /&gt;Relevamiento de bibliografía y proyectos existentes en el área de Recuperación de Información Distribuida y sindicación de información mediante RSS, ATOM y RDF.&lt;br /&gt;Identificación de problemas a resolver y relevamiento de técnicas y estrategias para su resolución.&lt;br /&gt;&lt;br /&gt;Fase 2 (meses 3 al 4)&lt;br /&gt;&lt;br /&gt;Plantear una estrategia para gestionar la información obtenida de los recursos Web distribuidos. De qué manera se obtendrán y cómo serán almacenados.&lt;br /&gt;Especificación de requisitos.&lt;br /&gt;Diseño de los componentes del prototipo, su interacción y modos de funcionamiento.&lt;br /&gt;&lt;br /&gt;Fase 3 (meses 5 al 6)&lt;br /&gt;&lt;br /&gt;Codificación y evaluación de un prototipo del sistema ideado.&lt;br /&gt;Identificación, revisión y ajuste de parámetros que afecten la performance del prototipo.&lt;br /&gt;Creación de documentación e informe final.&lt;br /&gt;&lt;br /&gt;Fase 4 (meses 7 al 8)&lt;br /&gt;&lt;br /&gt;Pruebas y comparaciones del prototipo desarrollado con los modelos clásicos utilizados en el área.&lt;br /&gt;Redacción de la documentación e informe final.&lt;br /&gt;&lt;br /&gt;7. Referencias&lt;br /&gt;&lt;br /&gt;[1] J. Callan. Distributed Information Retrieval. In W.B. Croft, editor, Advances in information retrieval, chapter 5, pages 127-150. Kluwer Academic Publishers, 2000.&lt;br /&gt;&lt;br /&gt;[2]   Luo Si , Jamie Callan, Modeling search engine effectiveness for federated search, Proceedings of the 28th annual international ACM SIGIR conference on Research and development in information retrieval, August 15-19, 2005, Salvador, Brazil&lt;br /&gt;&lt;br /&gt;[3] James C. French , Allison L. Powell , Jamie Callan , Charles L. Viles , Travis Emmitt , Kevin J. Prey , Yun Mou, Comparing the performance of database selection algorithms, Proceedings of the 22nd annual international ACM SIGIR conference on Research and development in information retrieval, p.238-245, August 15-19, 1999, Berkeley, California, United States&lt;br /&gt;&lt;br /&gt;[4] Tim O’ Reilly. Presidente y CEO de O’ Reilly Media, INC. Qué es web 2.0. Patrones del diseño y modelos del negocio para la siguiente generación del software.&lt;br /&gt;&lt;br /&gt;[5]   James P. Callan , Zhihong Lu , W. Bruce Croft, Searching distributed collections with inference networks, Proceedings of the 18th annual international ACM SIGIR conference on Research and development in information retrieval, p.21-28, July 09-13, 1995, Seattle, Washington, United States&lt;br /&gt;&lt;br /&gt;[6]   James C. French , Allison L. Powell , Charles L. Viles , Travis Emmitt , Kevin J. Prey, Evaluating database selection techniques: a testbed and experiment, Proceedings of the 21st annual international ACM SIGIR conference on Research and development in information retrieval, p.121-129, August 24-28, 1998, Melbourne, Australia&lt;br /&gt;&lt;br /&gt;[7]   Jinxi Xu , Jamie Callan, Effective retrieval with distributed collections, Proceedings of the 21st annual international ACM SIGIR conference on Research and development in information retrieval, p.112-120, August 24-28, 1998, Melbourne, Australia&lt;br /&gt;&lt;br /&gt;[8]   Luo Si , Jamie Callan, Unified utility maximization framework for resource selection, Proceedings of the thirteenth ACM international conference on Information and knowledge management, November 08-13, 2004, Washington, D.C., USA&lt;br /&gt;&lt;br /&gt;[9]   Luo Si , Jamie Callan, Relevant document distribution estimation method for resource selection, Proceedings of the 26th annual international ACM SIGIR conference on Research and development in informaion retrieval, July 28-August 01, 2003, Toronto, Canada&lt;br /&gt;&lt;br /&gt;[10]   Si, L., &amp;amp; Callan, J. (2003a). Distributed information retrieval with skewed database size distributions. In Proceedings of the national conference on digital government research.&lt;br /&gt;&lt;br /&gt;[11] Milad Shokouhi, Justin Zobel, Falk Scholer, and S. M. M. Tahaghoghi. Capturing collection size for distributed non-cooperative retrieval. In SIGIR ’06: Proceedings of the 29th annual international ACM SIGIR conference on Research and development in information retrieval, pages 316–323, New York, NY, USA, 2006. ACM Press.&lt;br /&gt;&lt;br /&gt;[12] J. P. Callan, W. B. Croft, and S. M. Harding. The INQUERY retrieval system. In Proceedings of the Third International Conference on Database and Expert Systems Applications, pages 78{83, Valencia, Spain, 1992. Springer-Verlag&lt;br /&gt;&lt;br /&gt;[13] Tony Hammond, Timo Hannay, and Ben Lund. The Role of RSS in Science Publishing. Syndication and Annotation on the Web.D-Lib Magazine. Volume 10 Number 12. ISSN 1082-9873. December 2004&lt;br /&gt;&lt;br /&gt;[14] Luis Gravano and Hcctor Garcia-Molina. Generalizing GlOSS to vector-space databases and broker hierarchies. Technical Report STAN-CS-TN-95-21, Stanford University, May 1995. Available as ftp: //db. Stanford.edu/pub/gravano/-1995/stan.cs.tn.95.21.ps&lt;br /&gt;&lt;br /&gt;[15] Callan, J. and Connell, M. (1999). Query-based sampling of text databases. Technical Report IR-180, Center for Intelligent Information Retrieval, Department of Computer Science, University of Massachusetts.&lt;br /&gt;&lt;br /&gt;[16] Ricardo Baeza-Yates, Carlos Castillo, Flavio Junqueira, Vassilis Plachouras and Fabrizio Silvestri. 2007. Challenges in Distributed Information Retrieval (invited paper). In ICDE (Istanbul, Turkey). (April 2007)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;Santiago Banchero (&amp;copy;) 2007&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/36955276-4617975475054256048?l=camaronbitmap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://camaronbitmap.blogspot.com/feeds/4617975475054256048/comments/default' title='Comentarios de la entrada'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36955276&amp;postID=4617975475054256048' title='0 Comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/4617975475054256048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36955276/posts/default/4617975475054256048'/><link rel='alternate' type='text/html' href='http://camaronbitmap.blogspot.com/2007/02/propuesta-de-plan-de-tesis-versin.html' title='Propuesta de Plan de Tesis [Versión Entregada]'/><author><name>S.B.</name><uri>http://www.blogger.com/profile/08613646899422729222</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://lh5.google.com/image/santiagobanchero/RfhvYhgSRII/AAAAAAAAACQ/-dC1KprmhXE/s288/pipo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lOJ3Zn5KjPQ/RdopRYQDI4I/AAAAAAAAAAM/uaiF1U-Rym4/s72-c/2.bmp' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
