tag:blogger.com,1999:blog-58380860681041688982024-03-14T03:20:17.714-07:00Mi Blog TécnicoEste blog es mi registro de tecnologías y dominios de conocimiento. Tanto los que he estudiado, trabajado y también los que me provocan curiosidad...raquelmshttp://www.blogger.com/profile/13066816227313846381noreply@blogger.comBlogger9125tag:blogger.com,1999:blog-5838086068104168898.post-34277641208112127702010-04-06T13:24:00.001-07:002010-04-06T13:36:10.054-07:00HistoriaSun sun = new Sun( 1982 ); <br />sun.create( "SunSparc", "Solaris", "Java", "OpenOffice" ); <br />sun.buy( "MySQL"); <br />oracle.buy( sun, 2010 ); <br />oracle.getPatents( sun ); <br />oracle.fireStaff( sun ); <br />oracle.eat( sun ); <br />sun = null; <br />System.gc(); :o(<br /><br />hoy me dí cuenta que me estoy poniendo vieja. Alguna charla de pasillo y este breve código (*) que presenta un montón de eventos que han sucedido desde que nací, me hicieron darme cuenta que el tiempo pasa... aún recuerdo haber sido conejito de indias (hace más de 10 años!!!) cuando se empezaba a usar java y haber visto varias máquinas de escritorio sun.<br /><br />(*)- gracias a Mauricio por publicarlo, y porque me lleva ventaja :Draquelmshttp://www.blogger.com/profile/13066816227313846381noreply@blogger.com0tag:blogger.com,1999:blog-5838086068104168898.post-80164168866518227502008-10-15T13:20:00.001-07:002008-10-15T13:21:38.132-07:00sigo, frases célebres...... o en este caso no tanto.<br />La ví en la firma de un post en un foro técnico (sobre linux).<br /><br />Remember: amateurs built the ark... professionals built the Titanic <br /><br />Se podrían discutir horas y horas por esta frase tan corta, pero a mí me hizo<br />reir mucho :Draquelmshttp://www.blogger.com/profile/13066816227313846381noreply@blogger.com0tag:blogger.com,1999:blog-5838086068104168898.post-68509462409189423172007-11-01T14:00:00.000-07:002007-11-01T14:01:57.322-07:00frases célebresacabo de leer una frase inspiradora, o por lo menos cuestionadora:<br />"cada vez que instalas un windows de onda, Dios mata un pinguino" - orasio dixit<br /><br />simplemente dejo registro, para en algún momento ampliar...raquelmshttp://www.blogger.com/profile/13066816227313846381noreply@blogger.com0tag:blogger.com,1999:blog-5838086068104168898.post-92048286438632818982007-10-23T13:29:00.000-07:002007-10-23T13:42:13.940-07:00Alberto Mendelzon Workshop 2007El año pasado se realizó en Chile el primer <a href="http://grupoweb.upf.es/bd-web/"> Workshop en honor de Alberto Mendelzon</a>, <br />un argentino que tuvo mucho que ver con la creación de la carrera de Computación en Uruguay. <br />Este año se repite el evento en Uruguay: el<a href="http://www.fing.edu.uy/inco/grupos/csi/AMW07/"> Segundo Alberto Mendelzon Workhop</a>, desde hoy hasta el próximo viernes 26 de octubre.<br />Simplemente una gran oportunidad para conocer trabajos de investigación en el área de Base de Datos y la Web.<br />De paso nos sacrificamos y pasamos unos días en <a href="http://www.visit-uruguay.com/puntadeleste.htm">Punta del Este</a>, disfrutando de la vista del Hotel Las Cumbres.raquelmshttp://www.blogger.com/profile/13066816227313846381noreply@blogger.com0tag:blogger.com,1999:blog-5838086068104168898.post-82228238927452450032007-10-11T12:51:00.000-07:002007-10-17T20:06:44.886-07:00Reflexiones sobre TestingActualmente estoy estudiando académicamente algunos conceptos de Testing. Como nadie está a salvo de cometer errores, asumimos que los programas que hacemos tienen errores. Entonces se desarrollan varios tipos de técnicas para descubrir esos errores lo más pronto posible y resolverlos de forma de dejar el programa lo más libre de errores posible.<br /><br />En testing también hay áreas de trabajo para ver cómo se comportará un sistema si es sobrecargado e incluso si recibe ataques de seguridad. Estás son las áreas avanzadas y son realmente muy complejas. <br /><br />Pensando en el proceso de desarrollo más simple: <br />1)- tenemos un Cliente que le dice a nuestro Analista el programa que quiere (en el medio el Analista tiene que comprender el lugar donde el cliente usará ese programa, organización, tareas, etc.).<br /><br />2)- El analista escribe los Requerimientos (que valida con el Cliente) y se los da a un Arquitecto de Software (suponiendo que lo tenemos). Generalmente allí va la información de qué debe hacer el sistema. El Arquitecto hace la Arquitectura, el diseño de alto nivel.<br /><br />3)- El Arquitecto entrega la Arquitectura y asiste al Programador para hacer el diseño de bajo nivel. A partir de este diseño el Programador implementa el programa.<br /><br />4)- El Programador entrega el sistema al Testeador, que revisará que el sistema cumpla con los Requerimentos pedidos.<br /><br />Sé que en casos pequeños este proceso es demasiado "idealizado". Es muy probable que los roles de Analista, Arquitecto, Programador y Testeador los realice la misma persona. En ese caso, probablemente se documente poco en el camino, y haya menos errores debido a que tiene todo el conocimiento. Pero, ¿Qué pasa cuando cada uno de estos roles los cumple una o varias personas? ¿Cuántas instancias de comunicación encontramos? <br /><br />Independientemente de los errores que cada integrante de un equipo puede cometer en sus tareas, muchos de los errores en software provienen de fallas en comunicación entre las personas que participan en su producción. Ahora la gran pregunta es cuáles<br />y cómo detectarlos(o prevenirlos)?<br /><br />En Testing están apareciendo los errores de software, y además de entregar un software libre de errores, la sistematización del testing nos permite aprender a tener menos errores. Eso es válido si reflexionamos sobre los errores que cometemos...<br /><br />En fin... el tema puede ser muy largo... el día gris me puso reflexiva, aunque también colaboró este sitio que encontré por ahí:<br /><a href="http://www.testingreflections.com/">Testing Reflections</a>raquelmshttp://www.blogger.com/profile/13066816227313846381noreply@blogger.com0tag:blogger.com,1999:blog-5838086068104168898.post-45844703307259868052007-09-18T15:05:00.000-07:002007-09-18T17:45:12.796-07:00Como instalar Postgres en Linux sin rootHace un par de años trabajé en desarrollo en una máquina Linux, y realmente fui muy feliz :D Aunque todos mis compañeros directamente trabajaban con root, yo tenía mi propio usuario para trabajar y pasaba a root cuando tenía que instalar algo en particular. De todos modos mi usuario era parte del grupo root, así que mi vida era realmente fácil.<br />Debido a las vueltas de la vida, últimamente andaba medio oxidada en estos asuntos de instalaciones en Linux, pero en mi tarea docente, probando el ambiente en el que trabajan mis estudiantes, me tocó instalar Postgres en Fedora, con un usuario común y corriente. Justamente en la lista de correo de postgres hoy recibo un mail que dice "acaban de salir los RPM para Fedora y Red Hat". Bárbaro, pensé... instalo los rpm y listo!! pero no, porque los rpm los tiene que instalar root.<br />Entonces gracias a nuestro querido amigo Google encontré en el sitio <br /><a href="http://www.webexperto.com/articulos/art/136/instalacion-de-un-servidor-postgresql-bajo-linux/">Web Experto</a> un detallado tutorial de como instalar postgres en linux. Luego de leerlo a conciencia (a pesar de que las primeras instrucciones decían: cree el usuario postgres, cree carpetas en áreas del sistema), decidí que era suficientemente fiable, ajustando algunas cosas a mi ambiente.<br /><br />Antes que nada comentar que logré tener éxito en mi instalación, la cuál está pensada para desarrollo, con lo que no es traumático que haya que levantar la base cada vez que se comienza a trabajar y se baja al terminarse los procesos del usuario.<br />Dicho esto paso a comentar las adaptaciones que hice al tutorial de Web Experto.<br /><br /><em>Preparación</em><br />Dado que Postgres correrá en la cuenta del usuario común que tengo, no necesito crear el usuario postgres. <br /><i><br />Pero antes de continuar estableceremos algunas variables de entorno necesarias para el uso del servidor. En el directorio "home" del usuario editamos el archivo ".bashrc", si no existe lo creamos, y le agregamos las siguientes lineas:<br /><br />PATH=$PATH:~/pgsql/bin<br />MANPATH=$MANPATH:~/pgsql/man<br />PGLIB=~/pgsql/lib<br />PGDATA=~/pgsql/data<br />LC_COLLATE=C<br />LC_CTYPE=C<br />LC_COLLATE=C<br />export PATH MANPATH PGLIB PGDATA LC_COLLATE LC_CTYPE LC_COLLATE<br /><br />Aquí modifiqué las rutas para que estuvieran dentro de los directorios de mi usuario.<br /><br />Lo primero que debemos hacer es conseguir los fuentes del software, los podemos bajar gratuitamente de http:/www.postgresql.org/<br /><br />Una vez que tenemos el fuente, debemos descomprimirlo en un directorio desde donde lo compilaremos. En mi caso uso ~/postgres/ para bajar <br /><br />En mi directorio de usuario<br /># cd<br />Creamos el directorio donde se compilará el software<br /># mkdir postgres<br />Creamos el directorio donde se instalara el software una vez compilado<br /># mkdir pgsql<br /><br />Ya tenemos los directorios donde ubicaremos el cógido fuente a compilar y los binarios y demas archivos necesarios para el uso del serividor una vez que este compilado e instalado.<br /><br />Ubicarnos en el directorio base (~/postgres)<br /># cd postgres<br />Finalmente debemos descomprimir el archivos con:<br /># tar xvfz postgresql-6.5.tar.gz<br /><br />Con esto obtenemos un directorio llamado: postgresql-8.2.5 que es la base del árbol de directorios conteniendo el código fuente, la documentación y demás archivos necesarios.<br /><br />Configuración<br /><br />Previo a la compilación en si, se debe configurar el código fuente para nuestra plataforma en particular, en este proceso entra como factor de gran importancia la designación del directorio donde se instalará PostgreSQL, esto se hace mediante la variable "prefix".<br /><br /># cd ~/postgres/postgresql-8.2.5/src<br /># ./configure --prefix=~/pgsql <br /><br />Este script ajustará la compilación a nuestro ambiente, donde prefix es el directorio base donde se instalara el servidor una vez compilado, si obviamos este parámetro por defecto toma el directorio /usr/local/psql<br /><br />Compilación<br /><br />El proceso de compilación es idéntico a cualquier otro programa. En esta caso la documentación recomienda una secuencia algo distinta pero con el mismo resultado.<br /><br /># gmake all >& make.log &<br /># tail -f make.log<br /><br />Si todo salió como es de esperar, tail nos muestra la ultima linea del archivo de log, la que dice:<br /><br />All of PostgreSQL is successfully made.<br />Ready to install.<br /><br />Instalación de binarios<br /><br />Procedemos ahora a instalar los binarios y archivos adicionales. Si ya nos encontramos en el directorio "~/pgsql/postgresql-8.2.5/src" pasamos directamente a la segunda línea de la secuencia.<br /><br /># cd ~/pgsql/postgresql-8.2.5/src<br /># gmake install >& make.install.log &<br /># tail -f make.install.log<br /><br />Luego de unos cuantos segundos en el monitor veremos la siguiente línea, esto nos indica que ya termino la instalación del servidor.<br /><br />Thank you for choosing PostgreSQL, the most advanced open source database engine.<br /><br />Nota: en mi instalación no apareció esta línea, pero sé que terminó exitosamente.<br /><br />Instalación de la Documentación<br /><br />Solo nos resta instalar la documentación, para ello debemos posisionarnos en el directorio "~/pgsql/postgresql-8.2.5/doc" y ejecutar:<br /><br /># make install<br /><br />Librerías<br /><br />Dado que este paso de instalar las librerías para el sistema lo tenía que hacer root, directamente me lo saltee.<br /><br />Creación de las bases de datos<br /><br />El siguiente paso es crear las bases de datos básicas para el funcionamiento del servidor de SQL. Esto se hace con los scripts que quedaron en el directorio bin de instalación del postgres: ~/pgsql/bin<br /><br /># initdb<br /><br />Prueba<br /><br />Bien, ahora vamos a ver si todo salio como es de esperar, primero vamos a lanzar el servidor de SQL de PostgreSQL<br /><br /># postgres -D ~/pgsql/data &<br /><br />Creamos la base de datos de prueba con la siguiente linea de comando:<br /># createdb<br />Finalmente nos conectamos al servidor con el cliente:<br /># psql<br /></i><br /><br />Luego de esto tendrán que seguir sus manuales de postgres (y psql) para crear sus usuarios de la base, sus bases de datos, etc...<br />Suerte!raquelmshttp://www.blogger.com/profile/13066816227313846381noreply@blogger.com0tag:blogger.com,1999:blog-5838086068104168898.post-60611582214026227242007-09-12T11:57:00.000-07:002008-11-12T18:20:05.866-08:00Software Freedom Day: 15 de setiembreCortita y al pie... aunque tenemos carteles a la vuelta no los leemos, así que dejo otro cartel más.<br />El 15 de setiembre se festeja a nivel mundial el <a href="http://softwarefreedomday.org/"> Software Freedom Day </a>: Día del Software Libre en criollo. Este día la comunidad del software libre lo toma para hacer difusión (o evangelizar :) <br />A veces se maneja el término "Software Libre" sin saber bien de qué se trata, he notado que la gente tiene el concepto de "el Software Libre es bueno porque no tengo que pagar licencias", lo que es cierto, pero no es todo el punto del Software Libre.<br /><br />En Uruguay la <a href="http://www.comunidad.org.uy/">Comunidad de Software Libre</a> organiza una Jornada de Charlas y Actividades, con el apoyo de muchos grupos de usuarios y demás (que coincidencia, algunos son los presentados en mi anterior post).<br /><br />La Jornada será en la <a href="http://www.fing.edu.uy/">Facultad de Ingeniería</a> de la <a href="http://www.universidad.edu.uy/">Universidad de la República</a>, con el apoyo del <a href="http://www.cei.fing.edu.uy/"> Centro de Estudiantes de Ingeniería</a>. <br />Dirección: J.Herrera y Reissig 565.<br />Horario: de 10 a 18hs.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrqu64C0EtCrE3GluzuzaYD44hSyUQ379h0k_JluU1ihn0gk8aT7OsDZVW4gUvPsPIDIMRTcJZzNefQdz3UAFJ4x1zRwsJcwi_l7EwBgJAnumMZEhst6iHO0sJQ8zZPcayciicjOv5J232/s1600-h/sfdpostera3.jpg"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrqu64C0EtCrE3GluzuzaYD44hSyUQ379h0k_JluU1ihn0gk8aT7OsDZVW4gUvPsPIDIMRTcJZzNefQdz3UAFJ4x1zRwsJcwi_l7EwBgJAnumMZEhst6iHO0sJQ8zZPcayciicjOv5J232/s400/sfdpostera3.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5109402252140050626" /></a>raquelmshttp://www.blogger.com/profile/13066816227313846381noreply@blogger.com1tag:blogger.com,1999:blog-5838086068104168898.post-75095795844377365722007-08-23T18:59:00.000-07:002007-08-23T19:32:26.933-07:00Montevideo LibreDesde hace unos cuantos años que conozco al <a href="http://www.linux.net.uy/"> Grupo de Usuarios Linux del Uruguay (UYLUG)</a>, he estado en algunas de las charlas que han dado y hasta en una "Fiesta de Instalación Linux" que realizaron en la <a href="http://www.fing.edu.uy">Facultad de Ingeniería</a>: traiga su máquina y se la lleva con Linux instalado (realmente estuvo muy buena, aunque no llevé mi máquina :).<br />Hace poco se creó el <a href="http://www.juguy.org/">Grupo de Usuarios Java del Uruguay</a>, que viene creciendo a pasos agigantados, sobre todo gracias a sus charlas y el próximo "Tech Days 2007" (ver página www.juguy.org). Ahora siguiendo links me encontré con el sitio de la <a href="http://www.comunidad.org.uy/">Comunidad de Software Libre del Uruguay</a>, cosa que me sorprendió gratamente, ya que creía que el movimiento del Software Libre en Uruguay era algo muy aislado, basado en pequeños núcleos y sin mucha organización.<br />A todo esto, en el sitio de la Comunidad me encontré con una iniciativa que me sorprendió más aún y que me parece muy interesante: <a href="http://www.montevideolibre.org/">Montevideo Libre.</a><br />Montevideo Libre es un movimiento para instalar una WAN inalámbrica comunitaria en la ciudad de Montevideo. El grupo parece tener poco tiempo de trabajo, pero tiene una buena cantidad de <a href="http://www.montevideolibre.org/integrantes">integrantes.</a> (todos varones, ¿por qué será? :). <br />Bueno, personalmente me parece una propuesta interesante, ¿Qué opinan ustedes?raquelmshttp://www.blogger.com/profile/13066816227313846381noreply@blogger.com0tag:blogger.com,1999:blog-5838086068104168898.post-74213396926573335182007-08-16T09:40:00.000-07:002007-08-16T10:29:07.300-07:00Recapitulación...Mirando un poquito para atrás me doy cuenta que he estado en contacto con un montón de tecnologías y dominios de conocimiento. Por algunos estuve de pasada, por un proyecto, trabajo, hasta hobbie... los famosos estudios extra-curriculares... y en otros temas llevo bastante tiempo.<br />Por miedo a olvidarme de algo es que inicio este blog... para recordarlos, dejar registro y de repente servirle a alguien de referencia, y hasta para contactarnos.<br /><br />Arranquemos el cuento en sus comienzos... allá por 1990... siendo una niña de 10 años escribí mis primeros algoritmos, en LOGO!!! Luego de probar los comandos en consola (y obtener un mensaje de "tortuga confundida" al superar los límites de los parámetros de los comandos), pasábamos al editor dónde se hacían secuencias e iteraciones (a esta altura no recuerdo si tenía condicionales).<br />Al año siguiente avancé a QBasic, nuemerando filas (de 10 en 10 por que en caso de tener que agregar alguna instrucción no teníamos que renumerar todo el programa). Luego durante un par de años aprendí sobre Wordstar, Lotus 1-2-3, dBase III Plus y por supuesto DOS (épocas dónde llevaba todos mis trabajos y estas aplicaciones en diskettes de 5 1/4!!!!!). A todo esto estaba por aparecer Win 3.11, así que hice el curso de operador avanzado Win 3.11... con el bendito "Administrador de Archivos" (tatarabuelo del actual Explorer). No recuerdo que haya sido para nada traumática la introducción del ratón... <br /><br />Al terminar con todos los cursos de operador en ese pequeño instituto comencé con los cursos de programación en Pascal... 3 niveles que comenzamos 10 estudiantes, pero que terminamos 2 o 3. Y finalmente me aceptaron en el curso de Analista Programador de 3 años, a pesar de no tener 4to año de secundaria. Lamentablemente el instituto cerró antes de que comenzara el tercer año. Algo gracioso es que muchos años después me dí cuenta qué significaba el nombre del instituto: Linker.<br /><br />Recién a estas alturas tuve mi primer computadora... al estar cursando los últimos años del bachillerato, ojo, por descarte: no me gustó historia en 4to, no me gustó biología en 4to y no me gustó dibujo en 5to, ergo, la única opción posible Ingeniería. <br />Así fue como terminé en la carrera Ingeniería en Computación, luego de llamar a las escuelas de enfermería y que no me aceptaran por ser menor de edad :Draquelmshttp://www.blogger.com/profile/13066816227313846381noreply@blogger.com0