03 de July de 2009

Comunidad DragonJAR: Seguridad Informática con Software Libre
Cristian Castiblanco

Cristian Castiblanco
Linux, Java y programación feed

A fondo: Tu primer módulo cargable para el Linux kernel

codigo cEsta entrada pretende profundizar los temas aprendidos en el anterior artículo (Tu primer módulo cargable para el Linux kernel), con el fin de clarificar dudas, atar algunos cabos que dejamos sueltos y prepararnos para los siguientes artículos.

¿Puedo usar directamente el árbol del código fuente del kernel?

Sí, por supuesto. Como ya sabes, no es posible compilar un módulo cargable sin al menos parte del código fuente del kernel – esto es, la parte que contiene la infraestructura de construcción general y los archivos de cabecera esenciales. Solo por recordar, un archivo header (con extensión .h), contiene, normalmente, una declaración directa de clases, subrutinas, variables, u otros identificadores; sin la definición de estas, no es posible compilar código que las use.

En cualquier caso, es siempre útil tener una copia completa del código del kernel, y la manera más fácil de obtenerla es usando git:

$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git git-kernel

Además que puedes actualizarlo fácilmente:

$ git pull

Nótese que, al contrario de instalar el paquete oficial de desarrollo del kernel como hicimos en el anterior artículo, usando git no es necesario tener privilegios administrativos para poner todo el código en algún lugar de tu directorio home. Además, si por alguna razón no puedes usarlo, puedes descargarte un archivo tar y funcionará igual; claro, usar git es mucho más cool 8-)

Nota: Seguiremos compilando nuestros módulos contra los archivos que nos proporciona el paquete de desarrollo del kernel; el que descargaste con el git es sólo para propósitos educativos, al menos por el momento.

Urgando en el código fuente: examinando los archivos de cabecera (Header Files)

Recordemos que en el ejemplo del artículo anterior, nuestro código contiene referencias a archivos de cabecera del kernel:

#include <linux/module.h>      // para todos los módulos
#include <linux/init.h>        // para entrada y salida de macros
#include <linux/kernel.h>      // para los macros de prioridad de printk
#include <asm/current.h>       // procesar información, solo por diversión
#include <linux/sched.h>       // para usa la estructura task_struct

Tales referencias son siempre relativas al nivel superior del directorio include/ en el código fuente del kernel, así que un include de, por ejemplo, <linux/module.h>, se refiere al archivo de cabecera include/linux/module.h, y así sucecivamente.

Sin embargo, si miras un poco más de cerca, notarás que no hay un directorio include/asm/, lo cual es bastante fácil solucionar. Incluso si no planeas construir algo contra el código fuente que descargaste, deberías prepararlo de tal manera que refleje de una manera más precisa lo que piensas hacer con él:

$ make defconfig
$ make modules_prepare

Los comandos anteriores hacen bastantes cosas, aunque lo único que nos interesa en este momento es que crea algunos enlaces simbólicos en el directorio include/, que reflejan la arquitectura de nuestro sistema.

Antes de ejecutar los comandos:

$ ls -ld include/asm*
drwxrwxr-x. … include/asm-arm
drwxrwxr-x. … include/asm-generic
drwxrwxr-x. … include/asm-x86

Después de ejecutarlos:

$ ls -ld include/asm*
lrwxrwxrwx. … include/asm -> asm-x86 <– aja!
drwxrwxr-x. … include/asm-arm
drwxrwxr-x. … include/asm-generic
drwxrwxr-x. … include/asm-x86

Una vez que esto es hecho, los includes de preprocesador tendrán sentido, y podemos usar los nombres genéricos para referirnos al archivo de cabecera apropiado de ahora en adelante. Por supuesto, esto que hicimos no es necesario hacerlo con los paquetes oficiales de desarrollo del kernel, puesto que ya vienen preparados.

¿Es posible generar mensajes de salida con un módulo?

No, no lo es. Bueno, no realmente. Como un autor de módulos novato, es necesario que entiendas que tu módulo será ejecutado en el kernel space, no en el user space, así que debes dejar de pensar en impresiones de mensajes en la consola. Olvídate de ello. La manera canónica de generar mensajes de depuración desde tu módulo es con llamadas printk:

printk(KERN_INFO "Hola, el modulo esta siendo cargado.\n");
printk(KERN_INFO "El user space del proceso es '%s'\n", current->comm);
printk(KERN_INFO "El PID es  %i\n", current->pid);

Corriendo el riesgo de sobre-simplificar el asunto, la salida que genera printk acabará en el archivo /var/log/messages así que, si estás insertando y removiendo tu módulo, es útil tener una terminal aparte mostrando en tiempo real todo lo que sea escrito en dicho archivo (para lo cual necesitas privilegios administrativos):

# tail -f /var/log/messages

Para los más ambiciosos, es útil fijarse en la definición de los niveles de log en el archivo de cabecera <linux/kernel.h>:

#define KERN_EMERG    "<0>"  /* system is unusable                 */
 #define KERN_ALERT    "<1>"  /* action must be taken immediately   */
#define KERN_CRIT     "<2>"  /* critical conditions                */
#define KERN_ERR      "<3>"  /* error conditions                   */
#define KERN_WARNING  "<4>"  /* warning conditions                 */
#define KERN_NOTICE   "<5>"  /* normal but significant condition   */
#define KERN_INFO     "<6>"  /* informational                      */
#define KERN_DEBUG    "<7>"  /* debug-level messages               */

Si algunos de ellos lucen vagamente familiares, no es de sorprenderse – son los niveles de depuración (debugging) soportados por syslog, así que eres libre de personalizar el syslog si quieres redireccionar la salida de tu módulo a donde quieras basado en los niveles de log, lo cual está más allá del objetivo de este artículo.

Nota: el más observador entre ustedes habrá notado que el nivel de log usado por printk es simplemente una cadena de texto como “<0>” y así sucesivamente, lo cual explica el porqué no usar comas al momento de usarlo – todo lo que el preprocesador está haciendo es concatenando dos cadenas de caracteres, así que hubiera sido totalmente equivalente escribir cualquiera de estos:
printk(KERN_INFO "Hola, el modulo esta siendo cargado.\n");
printk("<6>" "Hola, el modulo esta siendo cargado.\n");
printk("<6>Hola, el modulo esta siendo cargado.\n");

Aun así, es mejor hacerlo como se muestra en la primera línea. Incluso programando cosas del kernel, la estética importa.

Cargando tu módulo lleno de información

Como te diste cuenta la última vez, puedes cargar tu módulo con información bastante útil como:

MODULE_AUTHOR("Robert P. J. Day");
MODULE_AUTHOR("Cristian Castiblanco [solo lo puse en castellano]");
MODULE_LICENSE("Dual BSD/GPL");
MODULE_DESCRIPTION("Aqui puedes poner una descripcion de tu modulo");

que puede examinarse con el comando modinfo:

$ sudo modinfo hola.ko
filename: hola.ko
description: Aqui puedes poner una descripcion de tu modulo
license: Dual BSD/GPL
author: Cristian Castiblanco [solo lo puse en castellano :P ]
author: Robert P. J. Day
depends:
vermagic: 2.6.29-gentoo-r5 SMP mod_unload CORE2

Algunas cosas útiles acerca de esta característica:

  • El conjunto completo de estos macros está definido en el archivo de cabecera <linux/module.h>, en donde verás macros relacionados con firmware, tablas de dispositivos y más.
  • Además de esos macros en específico, está el menos conocido macro genérico MODULE_INFO, el cual puedes usar dentro del módulo en el lugar que quieras. Curiosamente, muy pocos programadores toman ventaja de este.
  • La única macro que realmente debes poner es la licencia. Si no especificas alguna de las variaciones de la licencia GPL, entonces el módulo “contaminará” el kernel, un tema que trataremos en otro artículo. El conjunto completo de licencias válidas está definido en el mismo archivo de cabecera.

Compilando contra el código fuente del kernel

Finalmente, podrías querer construir tu módulo, no contra el código instalado por el paquete de desarrollo, sino contra el código que descargaste tú mismo. Si ese es tu plan, es bastante simple.

Primero, como decíamos arriba, necesitas preparar tu código fuente para construir el módulo:

$ make defconfig
$ make modules_prepare

Todo lo que falta es configurar el Makefile de tal manera que compile el módulo contra nuestro código fuente. Recordemos parte del archivo Makefile del artículo anterior:

ifeq ($(KERNELRELEASE),)
KERNELDIR ?= /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)

Lo que hace la segunda línea es asignar la ubicación del código fuente del kernel a ser usado. Para cambiar esta variable, podemos asignarle el valor deseado con este comando:

$ export KERNELDIR=/home/gentoo/kernel/git-kernel

y aquí es donde comienzas a notar algunas diferencias. Asumiendo que la versión del código que descargué es 2.6.31-rc1, esto es lo que sucede en mi sistema:

$ make
make -C /usr/src/git-kernel M=/tmp/modulo modules
make[1]: se ingresa al directorio `/usr/src/git-kernel’

WARNING: Symbol version dump /usr/src/git-kernel/Module.symvers
is missing; modules will have no dependencies and modversions.

Building with KERNELRELEASE = 2.6.31-rc1
CC [M] /tmp/modulo/hola.o
Building modules, stage 2.
Building with KERNELRELEASE = 2.6.31-rc1
MODPOST 1 modules
CC /tmp/modulo/hola.mod.o
LD [M] /tmp/modulo/hola.ko
make[1]: se sale del directorio `/usr/src/git-kernel’

Puesto que estoy compilando contra un código fuente que no concuerda con el que estoy corriendo actualmente, pierdo la tabla de símbolos actual, pero la compilación funciona.

El comando modinfo también muestra el árbol contra el cual el módulo fue compilado:

$ sudo modinfo hola.ko
filename: hola.ko
description: Aqui puedes poner una descripcion de tu modulo
license: Dual BSD/GPL
author: Cristian Castiblanco [solo lo puse en castellano :P ]
author: Robert P. J. Day
depends:
vermagic: 2.6.31-rc1 SMP mod_unload 686

Ahora algunas preguntas capciosas – ¿es posible cargarlo? ¿no dará problemas por la versión? Eso depende de si el kernel que se está ejecutando fue configurado para permitir diferencias de versiones, y hay una manera rápida de comprobarlo. En mi Gentoo por ejemplo:

# insmod hi.ko
insmod: error inserting ‘hi.ko’: -1 Invalid module format

Mala suerte. Tal parece que el kernel no fue compilado con las opciones necesarias. Si miramos en el archivo /var/log/messages:


[ 4908.680123] hola: version magic ‘2.6.31-rc1 SMP mod_unload 686 \
‘ should be ‘2.6.29-gentoo-r5 SMP mod_unload CORE2 ‘…

Por lo pronto entonces, de ahora en adelante, jugaremos un poco dentro de la seguridad que nos ofrece compilar contra el kernel que concuerda con la versión que corremos. No hay motivo para hacerlo más difícil de lo que debe ser. En el próximo artículo veremos algo acerca de las rutinas entry y exit.

Este artículo está basado en: The Kernel Newbie Corner: Your First Loadable Kernel Module, Part Deux escrito por Rob Day. Todos los créditos son de él, yo simplemente estoy acercando dicho contenido a las personas de habla hispana.
AxiaCore: Vamos a asistir a la segunda r…

01 de July de 2009

Juan Pablo Botero

Juan Pablo Botero
JPill feed

Noticias 1 de Julio de 2009

Click here to view the embedded video.

PostgreSQL 8.4 ha sido liberado

Copio el anuncio de la lista oficial de soporte en español:

1 de julio, 2009: El Grupo Global de Desarrollo de PostgreSQL ha liberado la versión 8.4, continuando con el rápido desarrollo de la base de datos de código abierto más avanzada del mundo. Esta versióncontiene una gran cantidad de mejoras para hacer la administración,consulta y programación en PostgreSQL mucho más fácil que nunca. Con las 293 funcionalidades nuevas o mejoradas en la versión 8.4, hay aún más motivos para escoger PostgreSQL para sus futuros proyectos.

La mayoría de los cambios en PostgreSQL 8.4 son herramientas y órdenes de administración y monitoreo, nuevas o mejoradas. Cada usuario tiene su funcionalidad favorita que hace su trabajo cotidiano con PostgreSQL más fácil y productivo.

“Hemos usado PostgreSQL durante siete años, y estamos entusiasmados con varias funcionalidades de 8.4, especialmente los privilegios por columna, configuración regional en cada base de datos, búsquedas parciales en índices GIN y excepciones definidas por usuario”, dice Jeffrey Webster, CTO de ZooLoo.com. “PostgreSQL nos ha permitido crecer sin sacrificar la integridad de nuestros datos”.

Entre las mejoras más populares están:

  • Restauración de bases de datos en procesos paralelos, que acelerarecuperación de un respaldo hasta 8 veces.
  • Privilegios por columna, que permiten un control más granular de datos confidenciales.
  • Configuración de ordenamiento configurable por base de datos, lo cual hace a PostgreSQL más útil en entornos con múltiples idiomas.
  • Actualizaciones “en el lugar” desde 8.3 a 8.4 con muy bajo downtime, gracias al uso de pg_migrator beta.
  • Nuevas herramientas de monitoreo de consultas que le otorgan a los administradores mayor información sobre la actividad del sistema.

La versión 8.4 hace el análisis de datos mucho más sencillo a través de funcionalidades avanzadas de ANSI SQL:2003, como las funciones window, expresiones comunes de tabla y joins recursivos. “Estas estructuras de consulta aumentan sustancialmente la expresividad del dialecto SQL de PostgreSQL, permitiendo a los usuarios hacer preguntas interesantes en una sola consulta, que habría sido imposible de construir antes”, explica Sailesh Krishnamurthy, fundador de Truviso. Las mejoras en los procedimientos almacenados, como los valores por omisión para los argumentos y los argumentos de largo variable hacen más simple y compacta la programación en la base de datos.

La nueva versión además mejora el rendimiento de las aplicaciones, como comenta Kevin Grittner, Administrador de base de datos del Sistema de Cortes de Wisconsin: “PostgreSQL continúa mejorando el rendimiento en cada versión. La versión 8.4 ha añadido muchas optimizaciones, como semi-joins y anti-joins, que otorgan una notable mejora en el tiempo de ejecución de algunas de nuestras consultas más exigentes”.

Debido a estas nuevas características PostgreSQL 8.4 podrá atender a muchos más usuarios que antes, como el proyecto OpenStreetMap. “A medida que diseñábamos la nueva versión de la API de OpenStreetMap, estuvo claro que necesitábamos una base de datos de clase mundial que no sólo dijera que tenía las funcionalidades deseadas, sino que realmente corriera bien en la escala que nosotros necesitábamos. Aunque existen varias bases de datos de código abierto, PostgreSQL era la elección obvia”, dice Tom Hughes, administrador de sistemas de OpenStreetMap.

30 de June de 2009

Jesse Padilla Agudelo

Jesse Padilla Agudelo
Intercambio Libre feed

Python – Parte I

Como habia iniciado en mi anterior blog con una serie de presentaciones sobre Python pues ahora en Intercambio Libre he retomado con este proyecto, y aprovecho en esta ocasión para publicar la primera parte de la introducción general a Python siguiendo el mismo esquema de las presentaciones anteriores sobre Programacion Orientada a Objetos en Python y Diseño de GUIs con PyQT y Python, las cuales pronto colocare aca como material adicional y complementario.

Mañana la Parte II – Modo Interactivo de Python

Share and Enjoy: Print this article! Digg Sphinn del.icio.us Facebook Mixx Google Bookmarks Turn this article into a PDF! RSS BarraPunto Bitacoras.com Blogosphere News Diigo E-mail this story to a friend! LinkaGoGo LinkedIn Linkter Live Meneame MSN Reporter MySpace Ping.fm Slashdot Twitter Wikio FR Yahoo! Bookmarks

Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

Firefox 3.5 notas y descarga version final


Firefox 3.5 notas y descarga


Firefox 3.5 está basado en la plataforma de representación Gecko 1.9.1, que ha estado en desarrollo desde el año pasado. Firefox 3.5 ofrece muchos cambios sobre la versión anterior, implementando nuevas tecnologías web, y mejorando el rendimiento y facilidad de uso. Algunas de las características más notables son:

Los desarrolladores pueden averiguar más sobre todos los cambios y nuevas características en el Centro de desarrolladores de Mozilla.


Notas

http://www.mozilla-europe.org/es/firefox/3.5/releasenotes/


Descarga (Linux, MAC, windows en muchos idiomas)

http://www.mozilla.com/en-US/firefox/all.html

Comunidad DragonJAR: Comunidad DragonJAR en Open Source University Meetup – OSUM

28 de June de 2009

Clermont Technology: Home: Nuestro planeta
Comunidad DragonJAR: InstaLinux, Personaliza la instalación de tu distribución GNU/Linux

27 de June de 2009

Rodrigo Carreño

Rodrigo Carreño
Rodrigo C@rreño feed

Campus Party 2009

Corferias - Bogotá del 6 al 12 de Julio.


campus

Esta nueva versión tiene invitados especiales como: El Hacker mas popular de la historia - Kevin Mitnick, uno de los promotores mas importantes del SL-Libre - Jon "maddog" Hall, entre otras celebridades.

Mayor Información:
http://www.campus-party.com.co/
Comunidad DragonJAR: Montar particiones Windows haciendo uso de NTFS-3G

26 de June de 2009

Cristian Castiblanco

Cristian Castiblanco
Linux, Java y programación feed

[how-to] Tu primer módulo cargable para el Linux kernel

codigo cEste how-to está basado en el artículo The Kernel Newbie Corner: Your First Loadable Kernel Module escrito por Rob Day en Linux.com. En él se enseñan las bases de la programación de módulos para el kernel de Linux. Este primer artículo pretende ilustrar de manera clara los conceptos básicos y espero que, a medida que Rob vaya escribiendo más artículos, pueda ir traduciéndolos para ofrecer este excelente contenido en español. Además, funciona para cualquier distro, aunque en este caso lo hice todo sobre Gentoo. Sin más, ¡vamos al grano!

¿Es necesario tener privilegios de root?

Mientras desarrollamos el módulo, no. Pero al momento de cargar el módulo necesitaremos privilegios administrativos. Por supuesto, es recomendable que el desarrollo lo hagamos con un usuario normal, y solo al final usemos un usuario root para cargar o remover los módulos.

Prerrequisitos

Antes de comenzar es necesario saber/tener algunas cosas:

  • La versión del kernel con la que vamos a trabajar (usualmente la que estamos corriendo). Esto lo hacemos con el comando uname -r:
    $ uname -r
    2.6.29-gentoo-r5
  • El uso de herramientas de desarrollo, como gcc, binutils, etc.
  • Tener instalados las utilidades para trabajar con módulos (insmod, rmmod, etc.), el cual se encuentra en el paquete module-init-tools.
  • El código del kernel de Linux, de tal manera que puedas compilar tu módulo contra este.

¿Para qué el código del kernel?

Esto es realmente importante, así que echaremos un vistazo un poco más profundo. Cuando compilamos un módulo para Linux es necesario tener el código fuente de algunas partes del kernel, puesto que muchas instrucciones de preprocesador usadas no se encuentran en los headers estándar de desarrollo. En vez de ello, se encuentran en los headers de kernel.

Podrías simplemente descargar el código del kernel directamente de la página oficial, aunque lo más sencillo es instalar el paquete que corresponda a la versión del kernel que estemos ejecutando. Por lo general, este tipo de paquetes instala el código en /usr/src o /usr/src/kernels. Por ejemplo, en Fedora el paquete que debes instalar se llama kernel-dev, mientras que en Gentoo es gentoo-sources.

Una vez tengas el código instalado, es necesario saber exactamente en donde se encuentra, de tal manera que podamos referenciarlo al momento de compilar el módulo. Podrías revisar eso manualmente o, mejor aún, buscar el enlace simbólico hacia el kernel, que por lo general se encuentra en /lib/modules:

$ ls -l /lib/modules/`uname -r`
total 104
lrwxrwxrwx 1 root root    31 jun 11 10:24 build -> /usr/src/linux-2.6.29-gentoo-r5

El enlace simbólico que buscamos es build, y como puedes ver en el ejemplo, apunta a la raíz del código del kernel. Esto significa que, cada vez que quieras hacer referencia al kernel en el momento de compilar el módulo, basta con usar dicho enlace.

“Hola, kernel!”

Bien, es hora de crear nuestro primer módulo. Sin más rodeos, el código sería el siguiente:

/* El nombre del archivo es 'hola.c'. */
#include <linux/module.h>      // para todos los modulos
#include <linux/init.h>        // para las macros entry/exit
#include <linux/kernel.h>      // para usar la macro printk
#include <asm/current.h>       // informacion del proceso (solo por diversion)
#include <linux/sched.h>       // para usar la estructura "task_struct"
static int hola(void)
{
     printk(KERN_INFO "Hola, el modulo esta siendo cargado.\n");
     printk(KERN_INFO "El user space del proceso es '%s'\n", current->comm);
     printk(KERN_INFO "El PID es  %i\n", current->pid);
     return 0;       // para indicar que todo ha salido bien
}
static void adios(void)
{
     printk(KERN_INFO "Chao, el modulo esta siendo removido.\n");
}
module_init(hola);     // lo que se debe llamar al cargar un modulo
module_exit(adios);    // lo que se debe llamar al remover un modulo

MODULE_AUTHOR("Robert P. J. Day");
MODULE_AUTHOR("Cristian Castiblanco [solo lo puse en castellano]");
MODULE_LICENSE("Dual BSD/GPL");
MODULE_DESCRIPTION("Aqui puedes poner una descripcion de tu modulo");

Algunas observaciones acerca del código de arriba:

  • Técnicamente, no es necesario imprimir cosas cada vez que se carga o remueve un módulo (con printk). Pero puesto que es nuestro primer módulo, y aún no hace nada especial, es más divertido si lo dejamos así.
  • Es necesario hacer que la función de inicio retorne 0, si queremos indicar que la carga fue satisfactoria.
  • No, no es necesario poner una coma después de indicar el nivel de logs (KERN_INFO). Es un error común hacerlo.

Eso es todo… ¡vamos a compilarlo!

El archivo Makefile

Este es el archivo Makefile que necesitaremos:

ifeq ($(KERNELRELEASE),)  

KERNELDIR ?= /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)  

.PHONY: build clean

build:
	$(MAKE) -C $(KERNELDIR) M=$(PWD) modules  

clean:
	rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c
else  

$(info Building with KERNELRELEASE = ${KERNELRELEASE})
obj-m :=    hola.o

endif

Como has de saber, los archivos Makefile indican las reglas necesarias para compilar código. En este caso, explicándolo a groso modo, lo que hace el Makefile es detectar que aún nos encontramos en el directorio de desarrollo de nuestro módulo, y por lo tanto se dirige al directorio del kernel, compila el módulo desde ahí y se devuelve. Para probarlo basta con ejecutar el comando make:

$ make
make -C /lib/modules/2.6.29-gentoo-r5/build  M=/tmp/hola   modules
make[1]: se ingresa al directorio `/usr/src/linux-2.6.29-gentoo-r5′
Building with KERNELRELEASE = 2.6.29-gentoo-r5
CC [M]  /tmp/hola/hola.o
Building modules, stage 2.
Building with KERNELRELEASE = 2.6.29-gentoo-r5
MODPOST 1 modules
CC      /tmp/hola/hola.mod.o
LD [M]  /tmp/hola/hola.ko
make[1]: se sale del directorio `/usr/src/linux-2.6.29-gentoo-r5′

Examinar el módulo

Una vez compiles el módulo obtendrás un archivo con extensión .ko. Si quieres echarle un ojo a dicho archivo, puedes usar el comando modinfo así:

$ sudo modinfo hola.ko
filename:       hola.ko
description:    Aqui puedes poner una descripcion de tu modulo
license:        Dual BSD/GPL
author:         Cristian Castiblanco [solo lo puse en castellano :P ]
author:         Robert P. J. Day
depends:
vermagic:       2.6.29-gentoo-r5 SMP mod_unload CORE2

En Gentoo es necesario ejecutarlo con privilegios; en otras distros puedes ejecutarlo normalmente.

Cargar o remover el módulo

Llego la hora de cargar nuestro módulo. Para ello, como comenté anteriormente, es necesario poseer privilegios administrativos. Al grano:

# insmod hola.ko
# lsmod
Module                  Size  Used by
hola                    1148  0   <– GENIAL! Es nuestro módulo!
vboxnetflt             69976  0
vboxdrv                94368  1 vboxnetflt
nvidia               9531788  40

$ sudo rmmod hola

¿Y donde está lo que imprimimos con printk? Bien, no es común imprimir en consola cosas mientras un módulo es cargado o removido; en este caso, la salida va a dar al archivo de logs principal de Linux (/var/log/messages); puedes ver la salida con el comando dmesg o directamente en dicho archivo:

# dmesg | tail
[20651.176989] Hola, el modulo esta siendo cargado.
[20651.176993] El user space del proceso es ‘insmod’
[20651.176997] El PID es  13786
[20678.497134] Chao, el modulo esta siendo removido.
# tail /var/log/messages

Conclusión

Estas son apenas las bases que deberíamos tener para comenzar con la construcción de un módulo para el kernel de Linux. Es de valiosa ayuda jugar un poco con este ejemplo, de tal manera que podamos estar seguros que todo irá bien cuando hagamos algo un poco más complejo.

Descargar código fuente del ejemplo

Juan Pablo Botero

Juan Pablo Botero
JPill feed

Ahora, soporte Multitouch nativo en Linux

El laboratorio de Computación Interactiva de la ENAC de Francia ha creado el código para ofrecer soporte Multitouch nativo en Linux:

Los requerimientos necesarios son:

  • Kernel de Linux 2.6.30
  • Computador con una broadcom 5974, Stantum o una superficie Diamondtouch con sus respectivos drivers.

De acuerdo al video esta nueva característica parece portarse muy bien:

Click here to view the embedded video.

Enlace:

http://www.lii-enac.fr/en/projects/shareit/linux.html

25 de June de 2009

Cristian Castiblanco

Cristian Castiblanco
Linux, Java y programación feed

Video Tutoriales – Creación de Juegos

videoLa siguiente es una recopilación de tutoriales hechos por Jorge Rubira, en donde explica el desarrollo de diferentes juegos en diferentes lenguajes de programación (Java, JSP, laszlo, etc.)

Camilo Alberto Jiménez Santofimio

Camilo Alberto Jiménez Santofimio
Hilillos-blog feed

Project en Linux

En este artículo encontraran algunas opciones de software libre y de código abierto, multiplataforma para gestión de proyectos. Reemplazos apropiados para Microsoft Project.

24 de June de 2009

Cristian Castiblanco

Cristian Castiblanco
Linux, Java y programación feed

[How-to] Instalar Firefox 3.5 RC en Gentoo

Hola a todos, mi nombre es Juan Esteban (Cortex), y al igual que mi amigo Cristian uso la meta-distribución Gentoo Linux. Para los que no lo sabían la organización Mozilla anda trabajando actualmente en la versión 3.5 del navegador Firefox y hace un par de días se encuentra disponible la versión Release Candidate 2, la cual incluye ya múltiples mejoras y agregados.

Entre sus nuevas funciones podemos destacar:

  • La posibilidad de ver videos sin hacer uso de plugins ó reproductores externos.
  • La disponibilidad del modo de navegación privado y la herramienta para limpiar el historial, la cual ha sido actualizada, permitiendo seleccionar también el rango de tiempo del cual se hará la limpieza.
  • Controlar los resultados de la barra de localización haciendo uso de caracteres especiales.
  • Mucho más…

Ahora bien, veamos como podemos instalarlo en Gentoo.

1. Actualizar el árbol de Portage

Lo primero es actualizar el árbol de Portage para poder hacer uso del ebuild de Firefox 3.5 RC2.

emerge –sync

Para verificar si ya se encuentra disponible el ebuild en nuestro directorio de Portage, podríamos hacerlo de la siguiente manera:

ls -l /usr/portage/www-client/mozilla-firefox-bin/ | grep 3.5

2. Desenmascarar el paquete

Al ser una versión aún inestable el paquete viene por defecto enmascarado así que debemos primero desenmascararlo para poder hacer uso de él.

touch /usr/portage/profiles/package.unmask # En caso de que no tengas el archivo creado
echo ‘>=www-client/mozilla-firefox-bin-3.1_alpha1′ >> /usr/portage/profiles/package.unmask
Advertencia: Recuerda que aún es una versión de pruebas y no debería de ser usada sino para eso, probar. Además los bugs que detectes no deben ser reportados al Bugzilla de Gentoo sino directamente a Mozilla.

3. Instalar Firefox 3.5 RC2

De momento sólo se encuentra disponible el paquete precompilado. Para instalarlo con el idioma español podríamos editar nuestro archivo /etc/make.conf y agregarle la línea:

LINGUAS=”es es_ES”

En caso de que sólo quieras hacerlo temporalmente y sólo para este paquete ó agregar también el soporte para otros idiomas, puedes anteponer la línea escrita anteriormente al emerger el paquete.

Ahora sí, instalemos:

emerge -av =mozilla-firefox-bin-3.5_rc2
Nota: Recuerda agregar un = antes del paquete para especificarle cual es la versión que queremos instalar, si no lo haces te aparecerá que el ebuild no existe.

4. Ejecutar Firefox

En Gnome se encuentra en el menú Aplicaciones -> Internet -> Mozilla Firefox (bin). Sí, el que tiene el ícono más colorido :)

Con esto terminamos. Espero les sirva, y además espero escribir más seguido :P

Saludos!

Etiquetas: ,

23 de June de 2009

Camilo Alberto Jiménez Santofimio

Camilo Alberto Jiménez Santofimio
Hilillos-blog feed

Google Earth en Fedora

En esta ocasión voy a mostrarles como instalar Google Earth, en Fedora. ... Google Earth cuenta con varias utilidades interesantes. Por ejemplo: permite la visualización de rutas generadas por dispositivos GPS sobre la imagen del globo terrestre, permite la ubicación de coordenadas geográficas (Datum WGS84), tiene imágenes en muy buena resolución en algunos puntos del globo, que incluso habilitan la visualización tridimensional de la superficie de la tierra y la visualización de ciertas ciudades como si se estuviese en el sitio.

20 de June de 2009

Cristian Porras

Aptitude History Tracking progress report, Week 4


These last two weeks I could not work as much as I would like due to a number of drawbacks that have arisen in my university, which have led to cancellation of the semester, and putting at risk the lives of several students. It all started about two months ago when was published a recording of a conversation between the Principal of the university and a paramilitary. In which the paramilitary demanded the names of students, workers and teachers who do not agree with the national government to carrying out a “gun plan”.
The recording came to the public in the process of selecting of a new Principal. To which the current Principal presented to evaluate their re-election and he was elected.

Given this, the students have expressed in various ways against his re-election. Protests which the only way out that saw the direction of the university was the cancellation of the semester, extent to which students lost all the money and time invested. With the cancellation of the semester, 19 students took the main cathedral of the city and began a hunger strike and a large part establishes safeguards against the university for denying the right to education.

Yesterday the Board of Governors of the university decided to reverse the agreement that canceled the semester, but still maintains the Principal in his post, which is no solution to the crisis at the university.

I think I deviate slightly from the topic, I just wanted you to know a little the problems of the university, which is a reflection in small scale of the country, where the dictator of the moment simply to disqualify the opposition branded they as terrorist and sent to silence by force and not arguing as should be.

Since the previous report I had a more fluid communication with Daniel, in large part by the access to the repository. Most of these two weeks I have spent the time polishing the code that I made the first two weeks. Now I get the most information from the changes in dpkg and aptitude states, but recently I have been a problem presented in the order in which these data should be collected when I remove a global variable that was clearly a sign of bad programming, I am focused on circumventing this problem before proceeding. Another important change was the creation of a class to manage the database and the text logs.

In the downtime I have been playing around with the graphical interface “history-tracking/src/gtk /”: I have Added a tab in main_info_notebook to see the history of the selected package historyview class was implemented to initialize the tab to see the history. To view the history using gtktreeview. Only need to define which information we want to see for each change.

For the next weeks I hope to start working on the undo and redo systems.

Cometa Interactiva: Iniciativa académica de Sun Microsystems

19 de June de 2009

Jesse Padilla Agudelo

Jesse Padilla Agudelo
Intercambio Libre feed

Convocatoria del BID que busca apoyar “Financieramente a las Pymes en la Adquisición de TICs”

Sabes si la empresa donde trabajas está interesada en adquirir un CRM?
Sabes lo qué es un CRM y como este puede potencializar a tu empresa?

La administración basada en la relación con los clientes, CRM, es un modelo de gestión de toda la organización, basada en la orientación al cliente u orientación al mercado.

Con el CRM (Customer Relationship Management), su empresa podrá potencializar las ventas, por medio de una excelente relación con sus clientes, soportando los procesos de la compañía para hacer un muy buen seguimiento al comportamiento de los mismos. Su objetivo principal es el de mejorar los servicios ofrecidos a los clientes y hacer uso apropiado de la información de éstos.

En este momento hay una convocatoria liderada por el BID, donde se busca beneficiar a un número determinado de Pymes (de Manizales y Caldas) con apropiación de tecnología; Este proyecto está apoyado por la Alcaldía de Manizales, la Gobernación de Caldas y la Cámara de Comercio de Manizales.

Nosotros como Danka, estamos ofreciendo el servicio de CRM, y queremos saber si tú o tu empresa estás interesados o si conoces a alguien o una empresa que pueda estarlo, para que se pongan en contacto con nosotros y adquirir este servicio a través de este proyecto.

La parte financiera de la convocatoria se divide en 2 partes:
1. Aporte del BID 60%
2. Aporte de la Pyme 40%
3. Otras fuentes (aliados)

Esta es una muy buena oportunidad para dar el primer paso, y apropiarte de un Sistema de Información que tantos beneficios le puede traer a tu empresa. ¡¡¡NO LA DEJES PASAR!!!

Si estás interesado en participar en esta convocatoria o conoces a alguien que lo esté, no dudes en contactarnos!!
Teléfonos: 300 814 93 08 – 300 317 29 62
Correo Electrónico: contacto@dankacolombia.com

Para mayor información sobre este proyecto y la convocatoria mira siguente presentación.

Share and Enjoy: Print this article! Digg Sphinn del.icio.us Facebook Mixx Google Bookmarks Turn this article into a PDF! RSS BarraPunto Bitacoras.com Blogosphere News Diigo E-mail this story to a friend! LinkaGoGo LinkedIn Linkter Live Meneame MSN Reporter MySpace Ping.fm Slashdot Twitter Wikio FR Yahoo! Bookmarks

Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

Backtrack 4 precandidato descarga

Backtrack 4 precandidato descarga



Hola por fin esta disponible la descarga de esta nueva distro:
Descripcion: DVD Image
Mombre: bt4-pre-final.iso
tamaño: 1390 MB
MD5: b0485da6194d75b30cda282ceb629654
Descarga backtrack 4 precandidato: Click here

Disklabel: bt4-label.png

Mayor informacion:

Pagina web
Blog
Carlos Perilla

Carlos Perilla
Valkertown Blog feed

More on MUDs and the SMC

MUDs are composed of several interconnected rooms that overall create a complete world on which a virtual avatar develop it’s adventures andinteract with objects and other players. One of the hardest(funnest also?) part of playing this kind of games is that the user needs to navigate this maze of rooms with little or no help at [...]
Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

HackLab Introducción a Gnu/Linux y Ubuntu Junio 20 Bogotá

HackLab Introducción a Gnu/Linux y Ubuntu Junio 20 Bogotá

Junto con los administradores del team estamos en la coordinación del hacklab para este sábado 20 de junio, en las instalaciones de Ensistemas Cra 13 con 50 de 2 pm a 5 pm que muy amablemente Edwin Garzon miembro de la lista nos facilto.

Basicamente el lab esta dirigido a cualquier persona interesada en conocer el mundo del software libre, gnu/linux y en especial Ubuntu.

Hemos dividido el tema en 2 fechas, la primera sera sobre la historia de Gnu/Linux, Ubuntu y filosofia del software libre. Un segundo sobre instalacion de Ubuntu en varios ambientes, primeros paso y tips & tricks.

Contamos actualmente con un salon con capacidad para unas 20 o 30 personas (por confirmar) computadores (cantidad por confirmar) tablero marcadores y borrador, en conclusion las instalaciones adecuadas.

Inscripcion

Cuando y Donde

Sabado 20 de Junio de 2pm a 5pm, Bogotá Carrera 13 con calle 50 ENSISTEMAS Mapa

Tema

Que es Gnu Linux y Ubuntu. Este Lab esta dirigido a usuarios que estén empezando en el mundo del software libre y deseen conocer mas sobre Ubuntu Gnu y Linux. No se requiere tener experiencia en el tema solo ganas de aprender.

Que hay

Salón con capacidad para 20 personas, Computadores, Conexión a internet, Live Cd'S, Baños, Tablero, Marcadores, Borrador.

Cupo para 20 personas se pueden inscribir en este formulario

18 de June de 2009

Juan Pablo Botero

Juan Pablo Botero
JPill feed

Red social de Sun Microsystems: OSUM

OSUM (Open Source University Meetup), es una comunidad global de estudiantes apasionados del Software libre y abierto creado desde Sun Microsystems, creado para conectar miles de desarrolladores y obtener entrenamiento en tecnologías libres, en especial las de Sun microsystems.

Allí encontrará las instrucciones para la inscripción al SAI (Sun Academic Initiative).

Sai

Links:

OSUM: http://osum.sun.com

SAI: http://sailearningconnection.skillport.com/

Camilo Alberto Jiménez Santofimio

Camilo Alberto Jiménez Santofimio
Hilillos-blog feed

Servidor LAMP en Fedora

En este artículo encontraras las instrucciones para montar un servidor web LAMP (Linux, Apache, MySQL y PHP) en Fedora.

17 de June de 2009

Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

WuDe 3.0 beta

WuDe 3.0 beta

Cumpliendo con el roadmap de la version de WuDe 3.0 les dejo la beta, tiene muchos cambios:

1. Bugs en .net corregidos (en celulares y algunos juegos).
2. Wihu va ahora en el programa de instalacion.
3. Primeras implementaciones graficas.
4. Service pack 3 y ultimas actualizaciones
5. Drivers Sata integrados.
6. Mejor y optima funcionalidad
7. Software actulazado
8. Muchos mas

Mayor info y descarga

http://comunidad.dragonjar.org/wude/7657-wude-3-0-beta.html

captura



Nota

Se necesitan testers, ademas de eso personas que colaboren el el diseño gráfico

Recuerden que la version final sale el 6 de julio
Camilo Alberto Jiménez Santofimio

Camilo Alberto Jiménez Santofimio
Hilillos-blog feed

Fedora 11 con video Intel

Este artículo tiene unos pasos muy sencillos para configurar apropiadamente Fedora 11 en un equipo con adaptador de video Intel. Además, como configurar el plymouth de su preferencia.

16 de June de 2009

AxiaCore: Twitter Tools es la herramient…
AxiaCore: Actualizado el blog a la versi…
AxiaCore: http://twitterfeed.com/ sirvio…
Cristian Castiblanco

Cristian Castiblanco
Linux, Java y programación feed

[how-to] Activando soporte para ext4 en Gentoo u otras distros

Este es un pequeño how-to en donde explico cómo activar el soporte para el sistema de archivos ext4 en Gentoo.  El tutorial está enfocado hacia distribuciones que, como Gentoo, no tengan activado dicho soporte y en donde es necesario recompilar el kernel para hacerlo funcionar.

Espero que sirva de paso para mostrar un poco el proceso de recompilación del kernel, que a primera vista puede sonar difícil, pero que en realidad es algo muy sencillo y saludable ;)

0. Prerequisitos

Es necesario tener el paquete e2fsprogs y las fuentes del kernel de linux. Para ello, basta con ejecutar este comando:

emerge -au e2fsprogs gentoo-sources

1. Configurando nuestro kernel

Lo que haremos a continuación será configurar el kernel para activar el soporte al sistema de archivos ext4. Para ello, abrimos una consola y entramos en el directorio donde se encuentren las fuentes, por ejemplo /usr/src/linux-2.6.30-gentoo-r5. Estando allí, iniciamos el configurador gráfico del kernel con este comando:

make menuconfig

Una vez hayamos hecho esto, debemos navegar y dar enter en la opción File systems, y seleccionar (con la tecla espacio) The Extended 4 (ext4) filesystem. Debería quedar así:

File systems  --->
     <*> The Extended 4 (ext4) filesystem
     [ ]   Enable ext4dev compatibility
     [ ]   Ext4 extended attributes
     [ ]     Ext4 POSIX Access Control Lists
     [ ]     Ext4 Security Labels

Además, por defecto las particiones que se crean con ext4 tienen activada la opción huge_file, lo cual permite que se manejen ficheros de un gran tamaño. Por ello, es necesario activar la opción Support for Large single files del kernel. Dicha opción se encuentra en Enable the block layer y debería lucir así:

Enable the block layer --->
     --- Enable the block layer
     [*]   Support for Large single files

Una vez hayamos configurado el kernel, salimos de la configuración presionando el botón exit, compilamos e instalamos:

make
cp arch/x86/boot/bzImage /boot/kernel <– depende de tu configuración

2. Crear y montar particiones con el sistema de archivos ext4

Para ello basta con usar el comando mkfs.ext4, por ejemplo:

mkfs.ext4 /dev/sda2

Para montar la partición:

mount -t ext4 /dev/sda2 /media/cosas

3. Convirtiendo ext3 a ext4

Ten en cuenta que puedes montar una partición ext3 con la opción -t ext4 y todo funcionará bien, aunque no tendrás disponibles las características de ext4. Si deseas, puedes convertir una partición que se encuentra en ext3 a ext4. Para ello puedes ejecutar el siguiente comando:

Advertencia: esto hará que no puedas volver a montar la partición como ext3.
tune2fs -O extents,uninit_bg,dir_index /dev/dispositivo

Es recomendable hacer un chequeo de la partición para verificar que todo haya salido bien:

fsck -pf /dev/dispositivo

Más información:

http://fr.gentoo-wiki.com/wiki/Ext4

Etiquetas: , , , ,

15 de June de 2009

Cometa Interactiva: LULA: Linux para Universidades LatinoAmericanas
Rodrigo Carreño

Rodrigo Carreño
Rodrigo C@rreño feed

LogMe (Acceso Remoto)

Una excelente herramienta que me ayuda a prestar asistencia técnica a la aseguradora Javierpaz & Cia Ltda. Con las sucursales de Cali y Santander de Quilichao.

logme1

Me ha servido mucho la versión Free, para evitar los continuos viajes a estas sucursales.

logme2

Mayor información:
https://secure.logmein.com/home.asp?lang=es
Comunidad DragonJAR: SeguriSemanal III

14 de June de 2009

Cometa Interactiva: Idear para educar
Cometa Interactiva: Elogio al maestro
Juan Pablo Botero

Juan Pablo Botero
JPill feed

Open Solaris en Dell inspiron 1520

Con la release de Open Solaris 2009, decidí instalarlo en la máquina real.

Despúes de la instalación no esperaba mucho, pero veo con agrado que la tarjeta de video, el sonido y la tarjeta de red inhalambrica fue instalada, pero la tarjeta de red ethernet fue reconocida pero no instalada, asi que descargué el driver desde http://homepage2.nifty.com/mrym3/taiyodo/bfe-2.6.1.tar.gz seguí las instrucciones en el archivo README.txt y todo resultó sin problemas.

Algó que me deja confundido es la personalización de las particiones, según leo eso no es posible en opensolaris, sin embargo debo consultar un poco mas y lo postearé.

También veo que el consumo de memoria de entrada es de 1.5 Gb de 2 Gigas que tengo … mmm, realmente preocupante.

Open Solaris con Compiz fusion

Cometa Interactiva: A la gente se le entrega una porqueria y se le educa para que la use
Jesse Padilla Agudelo

Jesse Padilla Agudelo
Intercambio Libre feed

Concierto de despedida de la Orquesta Sinfónica de Caldas

Les dejo un par de videos de un concierto memorable de la Orquesta Sinfónica de Caldas, espectacular fue un concierto donde la musica nos hizo vibrar, cada nota la vivimos y la disfrutamos con pasión.

Pero este es tambien un llamado a luchar por esta hermosa orquesta, luchemos por que no se acabe, apoyemosla por que es un patrimonio local (Manizaleño), departamental(Caldense) y nacional (Colombiano)

Parte 1

Parte 2

Share and Enjoy: Print this article! Digg Sphinn del.icio.us Facebook Mixx Google Bookmarks Turn this article into a PDF! RSS BarraPunto Bitacoras.com Blogosphere News Diigo E-mail this story to a friend! LinkaGoGo LinkedIn Linkter Live Meneame MSN Reporter MySpace Ping.fm Slashdot Twitter Wikio FR Yahoo! Bookmarks

Carlos Perilla

Carlos Perilla
Valkertown Blog feed

Stackless MUD Client

Well I’m going to release today a small project I have been working for a while, it’s a mud client written in stackless python. I’t going to be hosted in bitbucket, I’m giving this service a try even when I use to host my own repositories for this, if I don’t like how it goes there [...]

13 de June de 2009

Camilo Alberto Jiménez Santofimio

Camilo Alberto Jiménez Santofimio
Hilillos-blog feed

Finalmente … dominio propio

Bueno, ya se ha realizado el traslado y aquí está de nuevo al aire este blog. Seguiré tratando temas de software libre y Fedora. Noticias, opinión, tutoriales y aplicaciones serán el material de este espacio. Espero contar con su frecuente visita!
Jesse Padilla Agudelo

Jesse Padilla Agudelo
Intercambio Libre feed

Soñe

Soñe contigo, soñe con tus besos, soñe con tus caricias, soñe con compartir una mirada, una sonrisa, un te amo.

Al despertar te vi a mi lado, tan bella, tan radiante como siempre dispuesta a vivir esos sueños.

Jesse Padilla A.

Share and Enjoy: Print this article! Digg Sphinn del.icio.us Facebook Mixx Google Bookmarks Turn this article into a PDF! RSS BarraPunto Bitacoras.com Blogosphere News Diigo E-mail this story to a friend! LinkaGoGo LinkedIn Linkter Live Meneame MSN Reporter MySpace Ping.fm Slashdot Twitter Wikio FR Yahoo! Bookmarks

12 de June de 2009

Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

Ubuntu 9.10 Karmic Koala alpha 2: Notas y descarga

Ubuntu 9.10 Karmic Koala alpha 2: Notas y descarga


El equipo de desarrollo nos entrega otra version del ubuntu 9.10 karmic koala como se anuncia en sus listas de correo Kamic koala 9.10 promete mucha funcionalidad respecto a jaunty 9.04 como un arranque mas rapido y un megor gestor de arranque, cabe resaltar algunos cambios en el nuevo ubuntu:

  • Gnome 2.27.1
  • Linux kernel 2.6.30
  • UXA nuevo driver intel
  • GCC 4.4
  • Ext4
  • Grub2
  • Otros
Personalmente aun no recomiendo migrar a esta alpha ya que el grub 2 aun esta en pruebas, y hay problemas con los arranques duales.

Descarga ubuntu 9.10 karmic koala:

http://cdimage.ubuntu.com/releases/karmic/alpha-2/ (Ubuntu Desktop, Server, and Netbook Remix)
http://cdimage.ubuntu.com/kubuntu/releases/karmic/alpha-2/ (Kubuntu)
http://cdimage.ubuntu.com/xubuntu/releases/karmic/alpha-2/ (Xubuntu)
http://cdimage.ubuntu.com/netboot/karmic/alpha-2/ (Ubuntu ARM)
Jesse Padilla Agudelo

Jesse Padilla Agudelo
Intercambio Libre feed

Para Diana

Tus besos son el secreto de la alquimia, tu pasión convierte cada beso en el poema mas bello, en una obra de arte única y el la canción mas profunda y bella que toca y da vida a mi alma a cada instante.

Jesse Padilla A.

Share and Enjoy: Print this article! Digg Sphinn del.icio.us Facebook Mixx Google Bookmarks Turn this article into a PDF! RSS BarraPunto Bitacoras.com Blogosphere News Diigo E-mail this story to a friend! LinkaGoGo LinkedIn Linkter Live Meneame MSN Reporter MySpace Ping.fm Slashdot Twitter Wikio FR Yahoo! Bookmarks

11 de June de 2009

Jesse Padilla Agudelo

Jesse Padilla Agudelo
Intercambio Libre feed

Configuración de Java JRE y JDK en Debian lenny

Primero agregamos nuestros repositorios favoritos para debian lenny, en mi caso

deb http://ftp.debian.org/debia/lenny main contrib non-free

Esto lo conseguimos agregando esta línea al archivo /etc/apt/sources.list con nuestro editor de texto favorito (vi, nano, gedit) y recordando que debemos estar como súper usuario.

Luego de esto debemos actualizar la lista de paquetes con el comando:

# apt-get update

Después de tener cargada la lista de repositorios simplemente procedemos a instalar Java JRE y JDK con el comando apt:

# apt-get install sun-java6-jre sun-java6-jdk

Después de instalarlo elegimos el maquina de java a usar por defecto y establecemos la variable de entorno adecuada para que esta se cargue en cada inicio de sesión.

# update-java-alternatives -s java-6-sun
# echo ‘JAVA_HOME=”/usr/lib/jvm/java-6-sun”‘ | tee -a /etc/environment

Share and Enjoy: Print this article! Digg Sphinn del.icio.us Facebook Mixx Google Bookmarks Turn this article into a PDF! RSS BarraPunto Bitacoras.com Blogosphere News Diigo E-mail this story to a friend! LinkaGoGo LinkedIn Linkter Live Meneame MSN Reporter MySpace Ping.fm Slashdot Twitter Wikio FR Yahoo! Bookmarks

Clermont Technology: Pizarra colaborativa
Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

Fedora 11 leonidas descarga y notas

Fedora 11 leonidas descarga y notas


Sigo esta versión desde fedora core 2, proviene el proyecto red hat, y ahora nos entregan la tan esperada versión 11 "leonidas"

Como se anuncia el proyecto fedora con una completa lista de cambios entre los cuales se destacan:

  • Ext4 (arranca en 20 segundos)
  • kernel 2.6.29
  • KDE, gnome, xfce
  • Firefox 3.5
  • Thunderbird 3
  • Mejor gestion de red
  • Etc
Descarga Fedora 11 leonidas (iso-cd dvd-iso live-cd live-dvd torrent) 32 64 bits powerPC, etc

http://fedoraproject.org/es/get-fedora


Mayor informacion de fedora 11 leonidas (en español):

http://fedoraproject.org/es/

Cristian Castiblanco

Cristian Castiblanco
Linux, Java y programación feed

Video Tutorial de Introducción a MonoDevelop

¡Hola de nuevo! En esta ocasión me gustaría compartir con ustedes este video tutorial acerca de MonoDevelop. No es nada avanzado, solo muestra algunas características de este IDE. El video en cuestión lo grabé hace más o menos siete meses, pero casualmente había olvidado que lo había grabado :P Y, aunque ya vamos en la versión 2 de MonoDevelop, no quiero perder el trabajo que alguna vez hice.

Como siempre, pueden encontrar el vídeo en Youtube o en Vimeo. Aunque creo que hay un pedazo que se ve feo y el sonido no es el mejor, espero que les guste y disculpen lo feo :D

10 de June de 2009

Jesse Padilla Agudelo

Jesse Padilla Agudelo
Intercambio Libre feed

Pidgin: Gtalk, MSN, IRC, Chat de Facebook y Twitter en una sola herramienta :D

Logo Oficial de Pidgin

Logo Oficial de Pidgin

Pidgin es un cliente de mensajería instantánea de código abierto y gratuito que permite chatear con personas que utilicen diferentes servicios de mensajería tales como Windows Live Messenger, ICQ, Yahoo! IM, clientes Jabber, Google Talk, entre otros.

En cuanto a sus funciones, Pidgin permite el envío de archivos, tiene un aviso de “tu amigo está escribiendo…”, emoticonos, notificaciones, diferentes estados y es capaz de ejecutar un programa o cambiar de estado dependiendo de si uno de tus contactos se conecta.

Pidgin es Software Libre y esta licenciado bajo la GNU/GPL.

Pidgin es una herramienta multiplataforma por lo cual la encontraras disponible para:

  • Sistemas Windows
  • Sistemas GNU/Linux
  • Sistemas Mac OS
  • Y por ultimo el codigo fuente por si lo deseas compilar para otro sistema operativo.

El sitio oficial de Pidgin es www.pidgin.im

Características principales:

  • Conversaciones mostradas en pestañas
  • Posibilidad de conectarse a varias redes simultáneamente
  • Registro de conversaciones
  • Permite el reemplazo de los nombres de los contactos de la lista
  • Muestra un aviso o reproduce un sonido cuando un contacto se conecta/desconecta o cambia de estado
  • Posibilidad de transparencia para las ventanas de contactos y de conversación mediante un plugin
  • Transferencia de archivos

Protocolos soportados:

  • AOL Instant Messenger
  • ICQ
  • Google Talk
  • Jabber/XMPP
  • MSN Messenger
  • Yahoo!
  • Bonjour
  • Gadu-Gadu
  • Internet Relay Chat (comúnmente llamado IRC)
  • Novell Groupwise Messenger
  • QQ
  • Lotus Sametime
  • SILC
  • SIMPLE
  • MySpaceIM
  • Zephyr

Metas del día

  • Instalar Pidgin en Windows y en Debian/Ubuntu.
  • Configurar una cuenta de Gmail en Pidgin.
  • Configurar una cuenta de MSN en Pidgin.
  • Configurar una cuenta de IRC en Pidgin.
  • Configurar una cuenta de Facebook en Pidgin.
  • Configurar una cuenta de Twitter en Pidgin.
  • Parametros adicionales: Como configurar el proxy para Pidgin.

Instalación de Pidgin

Bueno lo unico en lo que difiere el uso de Pidgin en un sistema GNU/Linux de un sistema Windows es en su instalación su administración es identica y muy sencilla.

Bueno empecemos por Debian o Ubuntu que es una instalación mas rapida y sencilla que instalarlo en windows.

Primero presionamos alt+F2 y abrimos una terminal como gnome-terminal, xterm o konsole para los que usan kde, luego de esto como sudo instalamos Pidgin:

# sudo apt-get install pidgin

Listo esto es todo para instalar pidgin en una distribución tipo debian/ubuntu, asegurate de tener conectividad a internet y de tener la lista de repositorios actualizadas, si no estas seguro actualizalas con el comando:

# sudo apt-get update

Bueno y como lo instalamos en windows, igual que siempre siguente siguente siguente,  muy sencillo pero igual les mostrare como.

Primero obtenemos Pidgin para Windows desde aca. Luego de esto presionamos doble click y empezamos con el proceso de instalación:

  • Al descargar el archivo de instalación de Pidgin damos doble click sobre este para iniciar el proceso de instalación.

Selección de Idioma

Selección de Idioma

  • Seleccionamos el idioma deseado de instalación, en mi caso español.
Seleccionando el español como idioma de la instalación

Seleccionando el español como idioma de la instalación

  • Se inicia el asistente de instalación.
Se inicia el asistente de instalación

Se inicia el asistente de instalación

  • Se muestra la licencia de la aplicación, en este caso la licencia GNU/GPL la cual hace a Pigdin una herramienta de Software Libre.
Aceptamos la licencia (GPL por que es Software Libre)

Aceptamos la licencia (GPL por que es Software Libre)

  • Selección de componentes de instalación.
Seleccionamos los componentes que deseemos que tenga Pidgin

Seleccionamos los componentes que deseemos que tenga Pidgin

  • Se selecciona la ruta de instalación de GTK2.0 una dependecia de Pidgin,  GTK es una biblioteca, la cual contiene los objetos y funciones para crear la interfaz gráfica de usuario. Maneja widgets como ventanas, botones, menús, etiquetas, deslizadores, pestañas, etc. GTK2.0 es necesaria para poder contruir la interfaz de Pidgin.
Seleccionamos la ruta de instalación de GTK 2.0

Seleccionamos la ruta de instalación de GTK 2.0

  • Seleccionamos la ruta de instalación de Pidgin.
Seleccionamos la ruta de instalación de Pidgin

Seleccionamos la ruta de instalación de Pidgin

  • Se inicia el proceso de instalación.
Se inicia la instalación

Se inicia la instalación

  • Al finalizar la instalación presionamos el boton siguente para continuar.
Se finaliza la instalación y le damos click en siguiente

Se finaliza la instalación y le damos click en siguiente

  • Finalizamos la instalación y arrancamos Pidgin.
Habilitamos la opción para que Pidgin se corra al finalizar el proceso de instalación

Habilitamos la opción para que Pidgin se corra al finalizar el proceso de instalación

Configuración de Cuentas de usuario de Gmail, MSN y IRC

  • Al arrancar Pidgin por primera vez, nos abre el asistente de configuración de cuentas de usuario.
Asistente de configuración de cuentas de usuario

Asistente de configuración de cuentas de usuario

  • Si le damos click en el boton añadir, podemos empezar a agregar las diferentes cuentas de mensajeria instantanea que tengamos, y ingresar sus parametros de configuración.
Interfaz para añadir cuentas de usuario

Interfaz para añadir cuentas de usuario

  • Si le damos click en protocolo podemos ver los diferentes servicios a los que nos podemos conectar con Pidgin al tiempo desde el mismo cliente.
Multiples protocolos soportados por Pidgin

Multiples protocolos soportados por Pidgin

Configuración de una cuenta de Gmail

  • Seleccionamos como protocolo Google Talk. Ingresamos los datos relevantes de nuestra cuenta, tales como el nombre de usuario, contraseña y apodo en el chat, tambien podemos cargar una imagen con la que deseemos que nos identifiquen en el chat.
Configuración de una cueta de Gmail

Configuración de una cueta de Gmail

  • Al añadir la cuenta y si estamos conectados a internet esta inmediatamente se autentica y conecta, ya con esto podemos iniciar algna conversación con nuestros contactos, el gestor de cuentas de usuario aun sigue activo por si deseamos añadir mas cuentas de mensajeria.
  • NOTA: Si miran atentamente en el gestor de cuentas el protocolo se cambio a XMPP esto pasa por que Google Talk como tal usa el protocolo Jabber para mensajeria instantanea.
Cuenta de Gmail configurada y trabajando. Pidgin listo para recibir otra cuenta

Cuenta de Gmail configurada y trabajando. Pidgin listo para recibir otra cuenta

Configuración de una cuenta de MSN

  • En el gestor de cuentas presionamos de nuevo el boton añadir y seleccionamos como protocolo MSN. Ingresamos los datos relevantes de nuestra cuenta, tales como el nombre de usuario, contraseña y apodo en el chat, tambien podemos cargar una imagen con la que deseemos que nos identifiquen en el chat.
Configuración de una cuenta de MSN

Configuración de una cuenta de MSN

  • Al añadir la cuenta y si estamos conectados a internet esta inmediatamente se autentica y conecta, ya con esto podemos iniciar algna conversación con nuestros contactos, el gestor de cuentas de usuario aun sigue activo por si deseamos añadir mas cuentas de mensajeria.
Cuenta de MSN y Gmail, trabajando al tiempo sobre la misma interfaz

Cuenta de MSN y Gmail, trabajando al tiempo sobre la misma interfaz

Configuración de una cuenta de IRC

  • En el gestor de cuentas presionamos de nuevo el boton añadir y seleccionamos como protocolo IRC. Ingresamos los datos relevantes de nuestra cuenta, tales como el nombre de usuario, servidor IRC (Por defecto nos conectamos a Freenode, pero podemos indicar otro), contraseña y apodo en el chat, tambien podemos cargar una imagen con la que deseemos que nos identifiquen en el chat.
Configuracion de una cuenta de IRC

Configuración de una cuenta de IRC

  • Al añadir la cuenta y si estamos conectados a internet esta inmediatamente se autentica y conecta, ya con esto podemos iniciar algna conversación con nuestros contactos, el gestor de cuentas de usuario aun sigue activo por si deseamos añadir mas cuentas de mensajeria.
  • El sistema de IRC inmediatamente al estar conectado nos abre una venta de  chat, donde nos muestra la conexión al servidor de IRC que indicamos, en este caso Freenode, desde aca ya estamos listos para entrar a los canales de chat que deseemos.
Cuenta IRC configurada, conexión al servidor de freenode

Cuenta IRC configurada, conexión al servidor de freenode

  • Para conectarnos a un canal de IRC en particular, en este caso en canal de #gluc, usamos el comando /join #nombre_canal
Uniendose a un canal, usando el comando Join

Uniendose a un canal, usando el comando Join

  • Aca ya estamos conectados al canal del gluc listos para empezar una sessión de chat.  Podemos ejecutar de nuevo el comando join y conectarnos a otro canal.
IRC en el Canal del #Gluc

IRC en el Canal del #Gluc

  • Si con frecuencia nos conectamos al mismo canal IRC, podemos guardar este para no tener siempre que conectarnos a traves del comando join, sencillamente vamos al menu Conversación y damos click en la opción Añadir.
Salvar los canales IRC a los que normalmente nos unimos

Salvar los canales IRC a los que normalmente nos unimos

  • Esto nos abre una interfaz para guardar el chat donde podemos configurar los parametros de configuración del canal.
Guardando el canal con las preferencias deseadas

Guardando el canal con las preferencias deseadas

  • Luego de guardar el canal este nos aparecera en la lista de contactos y bastara con darle click para conectarnos a este.
Canal Guardado y listado como un contacto

Canal Guardado y listado como un contacto

Configuración del chat de Facebook en Pidgin

  • Como vimos anteriormente Pidgin no tiene el protocolo de mensajeria de Facebook en su lista de servicios disponibles por defecto, razon por la cual es necesario que le instalemos un plugin adicional a Pidgin para que tengamos esta soporte. Este plugin se llama Pidgin Facebook Chat y esta disponible tanto para sistemas GNU/Linux como Sistemas Windows.
  • Para Debian/Ubuntu GNU/Linux podemos obtener el Pidgin Facebook Chat  de aca.

Para instalarlo basta con

  1. Cerramos Pidgin si lo estamos ejecutando.
  2. Presionar Alt+F2 y abrir una terminal (Como gnome-terminal, xterm o konsole, depentiendo del sistema de escritorio que usemos).
  3. luego simplemente digitamos el comando sudo dpkg -i pidgin-facebookchat-1.50.deb
  • Para sistemas Windows  podemos obtener el Pidgin Facebook Chat  de aca.

Para instalarlo basta con

  • Cerramos Pidgin si lo estamos ejecutando.
  • Damos doble click al instalador pidgin-facebookchat-1.50.exe
Iniciamos la instalación del plugin para el chat de facebook

Iniciamos la instalación del plugin para el chat de facebook

  • Este plugin es libre y usa la licencia GNU/GPL, la aceptamos para continuar la instalación
Aceptamos la licencia que es GNU/GPL

Aceptamos la licencia que es GNU/GPL

  • Se inicia el proceso de instalación
Proceso de Instalación

Proceso de Instalación

  • Finalizamos la instalación y volvemos a abrir Pidgin
Instalación Completa

Instalación Completa

  • Cuendo estemos en Pidgin vamos al menu Cuentas, y entramos a la opción Gestionar Cuentas
Entramos al Gestor de cuentas

Entramos al Gestor de cuentas

  • Igual que con los servicios anteriores lo primero que seleccionamos es el protocolo en este caso Facebook, luego de esto ingresamos los datos de nuestra cuenta de Facebook.
Agregamos la cuenta de Facebook

Agregamos la cuenta de Facebook

  • Aceptamos el certificado de seguridad de Facebook para poder conectarnos y autenticarnos.
Certificado de Seguridad

Certificado de Seguridad

  • Y ya tenemos todo listo, en nuestra sesión de Chat tenemos un lista de los contactos que estan conectados al chat de Facebook
Listo para chatear con los contactos de Facebook

Listo para chatear con los contactos de Facebook

Configuración de Twitter en Pidgin

Al igual que el Chat de Facebook, Pidgin no tiene soporte para Twitter pero instalandole un nuevo plugin podemos acceder a este servicio.

El plugin para twitter se llama microblog-purple y su versión para Windows la podemos conseguir de aca y la para Debian/Ubuntu GNU/Linux de aca, este es libre y usa la GNU/GPL.

A este no le  voy a dar tracendencia en la parte de instalación por que es un proceso identico tanto para Debian/Ubuntu como para Windows igual que lo mencionado para el plugin de facebook, pasemos directo a la configuración de este.

  • Igual que en el caso anterior luego de instalar el plugin, abrimos Pidgin, y vamos al gestor de cuentas, y añadimos una nueva cuenta, si nos fijamos bien ahora en protocolo tenemos disponible twitter, y colocamos la información de los datos de usuario como nombre y contraseña.
Twitter en Pidgin

Twitter en Pidgin

  • Al agregarla al igual que el plugin de facebook nos pedira aceptar el certificado de seguridad para poder conectarnos y autenticarnos.
Certificado de Seguridad

Certificado de Seguridad

  • Por ultimo ya podemos postear desde Pidgin a nuestro Twitter
Posteando en Twitter desde Pidgin

Posteando en Twitter desde Pidgin

  • Miremos que tan cierto es que funciona, entremos a nuestro portal de Twitter
Prueba de que el plugin de Twitter funciona

Prueba de que el plugin de Twitter funciona

Configuración adicional: Proxy de la red

  • Si de casualidad estamos en un red con proxy a Pidgin es muy facil configurarle este. Solo entremos a herramientas preferencias.
Configuracion del Proxy

Configuracion del Proxy

  • Seleccionamos en tipo de proxy, proxy HTTP, colocamos la dirección IP de este servidor Proxy y el puerto, si tenemos cuenta de usuario del proxy colocamos el usuario y la contraseña de resto lo dejamos en blanco.
Configuración de la IP y Puerto del Proxy

Configuración de la IP y Puerto del Proxy

Vista Final a nuestro Pidgin

Final Final no va más, ya tenemos nuestro Pidgin configurado con los servicios que comunmente más usamos, todo desde la misma aplicación y chateamos con todo el mundo desde la misma ventana y sin la necesidad de tener multiples aplicaciones.

Pidgin con multiples servicios, conversaciones en una ventana con multiples pestañas indiferente del servicio, sea Gtalk, MSN, Facebook, Canales IRC y Twitter

Share and Enjoy: Print this article! Digg Sphinn del.icio.us Facebook Mixx Google Bookmarks Turn this article into a PDF! RSS BarraPunto Bitacoras.com Blogosphere News Diigo E-mail this story to a friend! LinkaGoGo LinkedIn Linkter Live Meneame MSN Reporter MySpace Ping.fm Slashdot Twitter Wikio FR Yahoo! Bookmarks

Comunidad DragonJAR: Instalar VMware Workstation 6.5 en Arch Linux

09 de June de 2009

Comunidad DragonJAR: 5 Distribuciones GNU/Linux para Pentesting
Carlos Perilla

Carlos Perilla
Valkertown Blog feed

Uzbl Browser

Recently I have found uzbl while trying to look a vimperator(firefox) replacement that didn’t waste so much resources and be as slow as firefox has gotten. Well we will have firefox 3.5 that would solve several of these issues and even then I will keep using uzbl for my main browsing needs. Uzbl is another webkit based browser [...]
Juan Pablo Botero

Juan Pablo Botero
JPill feed

Un Homenaje a aquella potencia

El mundo cree que los mas listos del planeta son los Estadounidenses, donde esta el mayor desarrollo tecnologico y economico del mundo, bien juzgen ustedes mismos, donde piensan que tienen el derecho de invasión.

Click here to view the embedded video.


08 de June de 2009

Jesse Padilla Agudelo

Jesse Padilla Agudelo
Intercambio Libre feed

Colombia el mejor pais del Mundo!!!

Para que todo el mundo conozca este bello pais, y se den cuenta que “el riesgo es que te quieras quedar”

Share and Enjoy: Print this article! Digg Sphinn del.icio.us Facebook Mixx Google Bookmarks Turn this article into a PDF! RSS BarraPunto Bitacoras.com Blogosphere News Diigo E-mail this story to a friend! LinkaGoGo LinkedIn Linkter Live Meneame MSN Reporter MySpace Ping.fm Slashdot Twitter Wikio FR Yahoo! Bookmarks

Jesse Padilla Agudelo

Jesse Padilla Agudelo
Intercambio Libre feed

Un buen video para los amantes a Firefox

Share and Enjoy: Print this article! Digg Sphinn del.icio.us Facebook Mixx Google Bookmarks Turn this article into a PDF! RSS BarraPunto Bitacoras.com Blogosphere News Diigo E-mail this story to a friend! LinkaGoGo LinkedIn Linkter Live Meneame MSN Reporter MySpace Ping.fm Slashdot Twitter Wikio FR Yahoo! Bookmarks

AxiaCore: Blog Post: Nuevo Concepto Tech…
Jesse Padilla Agudelo

Jesse Padilla Agudelo
Intercambio Libre feed

Star Wars – Episode IV – Trailer (original 1977)

Para todos los verdaderos fans de Star Wars, se que se emocionaran tanto como yo al verlo :)

Share and Enjoy: Print this article! Digg Sphinn del.icio.us Facebook Mixx Google Bookmarks Turn this article into a PDF! RSS BarraPunto Bitacoras.com Blogosphere News Diigo E-mail this story to a friend! LinkaGoGo LinkedIn Linkter Live Meneame MSN Reporter MySpace Ping.fm Slashdot Twitter Wikio FR Yahoo! Bookmarks

AxiaCore: Nuevo Concepto TechScooter
Jesse Padilla Agudelo

Jesse Padilla Agudelo
Intercambio Libre feed

Configuración del Idioma del teclado

Actualmente uso debian lenny en español con la configuración del teclado latinoamericana pero al instalar la tarjeta de video o reconfigurar el xorg este me cambia el idioma del teclado a ingles para colocarlo en latinoamericano de nuevo simplemente abrimos con nuestro editor favorito, ya sea nano, vi, gedit, emacs el archivo /etc/X11/xorg.conf y en la seccion InputDevice agregamos la siguente opcion Option “XkbLayout” “latam” para teclado latinoamericano o Option “XkbLayout” “es” para teclado en espa;ol.

Section “InputDevice”
Identifier “Generic Keyboard”
Driver “kbd”
Option “XkbLayout” “latam”
EndSection

Share and Enjoy: Print this article! Digg Sphinn del.icio.us Facebook Mixx Google Bookmarks Turn this article into a PDF! RSS BarraPunto Bitacoras.com Blogosphere News Diigo E-mail this story to a friend! LinkaGoGo LinkedIn Linkter Live Meneame MSN Reporter MySpace Ping.fm Slashdot Twitter Wikio FR Yahoo! Bookmarks

06 de June de 2009

Juan Pablo Botero

Juan Pablo Botero
JPill feed

Instalación de Open Solaris 2009.06 en Debian

Realizé la instalación de Open Solaris 2009.06 en Debian, virtualizando con KVM.

OpenSolaris 2009.06
Open Solaris 2009.06 con KVM en Debian

Fué realizado con línea de comando y pelo en pecho.

Antes creé el disco duro utilizado para esta instalación, con 15 gigas:

$ kvm-img create OpenSolaris.img 15G

Despúes inicialize la máquina virtual para con cdrom, 1024 MB de RAM y con la red en la misma LAN que el equipo anfitrión:

$ kvm -hda OpenSolaris.img -cdrom /dev/cdrom -m 1024M -net nic -net user

Click here to view the embedded video.

La instalación tarda un poco, así que paciencía al hacerlo.

FLISoL - 2009

El pasado 25 de Abril estuve (cordialmente invitado, y muy bien atendido) participando en la quinta versión del FLISoL, en Montería (Colombia).

Lo que primero me impresiono fue la organizacion y la difusion: al momento de llegar el numero de inscritos iba por 700 y creciendo. Definitivamente hay que replicar esa experiencia en el resto de ciudades, en este caso las redes sociales jugaron un papel muy importante.

Básicamente estuve hablando del proyecto Debian, una charla general tomando muchas cosas de la que dio Alejandro Rios en la Campus Party del año pasado, y la excelente charla de Luciano Bello: "A darle átomos a Debian". También se hizo el lanzamiento des-oficial de MIGNU.org, el proyecto de Sisfo Ltda que apoya las comunidades de desarrolladores de Software Libre.

El balance general fue bueno, teniendo en cuenta que en este año mi trabajo con Software Libre ha sido más bien poco: 2 días de viaje, nuevos amigos y un par de posibles colaboradores para Debian.

Los slides están disponibles para consulta y libre uso.

Discussion (1)

05 de June de 2009

Cristian Porras

Summer of Code @ Debian


This year I will be participating in Google Summer of Code! My work proposal “Aptitude Package Management History Tracking” has been selected. So I will be working for Debian and my mentor will be Daniel Burrows. To give you an idea of what I will doing this summer I leave you with my proposal (without some details that are beside the point :D ).

Project title: Aptitude Package Management History Tracking

Synopsis: Aptitude currently does not track actions that the user has performed beyond a single session of the program. One of the most frequent requests from users is to find out when they made a change to a package, or why a package was changed; we want to store this information and expose it in the UI in convenient locations. As a side effect, this might also provide some ability to revert past changes.

Benefits to Debian: The change history of the packages on a system has become a recurrent need for many systems administrators, who see an opportunity in this possibility to manage more efficiently the resources on their machines. The impact would be positive in many users who use Aptitude interface for APT, not only on the command line application, but also on Aptitude-GTK.

Deliverables: The module which is intended to be designed for Summer of Code 2009, will be composed of two major parts: Add the functionality for Undo – Redo changes in Aptitude (undo really exists, but is replaced with a version that uses the history) and explore the history of a particular package, in each case made the appropriate changes to the UI, to give greater facilities to users.

Project details: The main idea is to make Aptitude store and record the history of actions that an user has done on each package. By having this information and can access it in an orderly manner can be completed easily reach other goals, such as:

* Provide an easy way to find out how and why a package was installed or uninstalled on the system, changes can be made by hand, by dependency, suggested packages, conflicts between packages, etc.

* Give the possibility to undo a lot of changes in a single action, taking into account the limits of the APT system.

* Provide a mechanism for system administrators to audit the history of a package and add notes to it.

* This history should also preserve the information generated in su-to-root operations

* Also thanks to this should be easy to implement ‘redo’, something aptitude has always lacked.

The difficulty in conducting this project is not the collection of data, but it’s to define the proper way in which to store the information in the way that it can be efficient and not to overload Aptitude. It seems the best approach that can be given to this problem is that proposed by Daniel Burrows (See his ideas in [1]), in which it would have a set of text logs and a database binary simultaneously, that for readability by the user in text files and increase the efficiency of Aptitude reaching the database directly. If the database were to fail, Aptitude could scan the log to recreate the database, which also makes it necessary to write code to do the text log – database processing

Since the project can range from different points of view is necessary to discuss and define several issues with the Aptitude developers and some experienced users of Debian, for example:

* What to do with past actions of an “Undo”, delete them or preserve them.

* Whether to include also details on the history of resolver interactions.

* Define whether the record should be updated immediately changes are made or be expected to finish the session to record the actions taken.

* Establishing rules and / or tools to remove old entries in the log. For example, with the rules I am talking about erasing the old posts in the database beyond a certain age. The tools can be commands whose purpose is to delete manually the history, aptitude “remove history” to say something.

I hope this items can be defined on the first month of the GSoC to work on a fixed path to follow and not suffer setbacks, yet it would be open space for made minor changes on the fly.

As already mentioned  above, the first priority is to define the structure of the database, this with the help of the SQLite library, at the end of this (the more creative phase) I begin to define a series of classes and routines necessary in principle to update the records of this database, this section should define a common set of calls that would serve both for the command line application and the cwidget-ncurses and GTK interfaces, since these classes would be accessed by aptitude when it receives the outputs the processes of APT (Maybe based on pkgstates).

As second and third period, classes should be created for the operations “undo/redo”, and for the queries for the database which will be used to display information in an orderly manner in the UI. As the ncurses and GTK interfaces are very similar in concepts (signals and slot object-oriented C++), which happens once we have the code for ncurses is that is relatively easy and quick also have support for GTK (or vice versa). The code for the command line application would be a little different but easy to implement once we have defined the needed queries. Here we must bear in mind that would work with separate packages, Aptitude and Aptitude-gtk, which required a good time for the test period.

The final set of code. Will be for fix fails in the database, generating the transformation between the text log and the binary data base. In addition to providing tools for maintenance work, which would be the least complicated part of the project, things made by the style of  “delete from history where date < $somedate”.

Project schedule:

The preliminary timeline for the project, according to the schedule of GSoC:

April 20, Accepted student proposals announced

Week 1, 2 and 3:

Project initialization

Analysis of existing data model for the history entries, getting to know the coding style and documentation writing concepts. Improving communication skills and understanding the Community, discuss any outstanding issues that are mentioned in the Project details.
Install and configure the necessary software to implement the project on my computer.

Week 4: Improving the sketch of the data model, considering the corrections arising in the analysis of the past three weeks.

May 23, Students begin coding for their GSoC projects

Week 5: Implement the data model.

Week 6: Write code to convert the history entries to and from text and write unit tests for this code.

Week 7: Write code to compute the history list for the current session and store it in a member of aptitude’s cache wrapper.

Week 8~9: Write code to implement undo/redo on top of the history list and replace the current undo code for packages with the new undo/redo code.

Week ~9-10: Testing and correction of bugs discovered so far.

July 13, Mid-term evaluations deadline

Week 11: Write code to add the live history list to a sqlite cache database, and code to retrieve history from the database.

Week 12-13: Write a GUI viewer for the history list, and code to show the history of a particular package.

Week 14: Write code to generate log files in /var/log with history information.

Week 15: Write code that, if the cache database is missing, reads those log files to rebuild it.

August 10, ‘Pencils down’ date

Week 16: Extensive test case analysis whit Bug Fix.

Week 17: Final documentation improvements and some improvements in the code.

August 24: Final evaluation deadline

Project completed.

Note: The documentation is generated simultaneously with the code throughout the summer, making the necessary improvements to the final dates.

[1] http://lists.alioth.debian.org/pipermail/aptitude-devel/2008-December/001071.html

Cristian Porras

Aptitude History Tracking progress report, Week 2


The first important task when one wants to carry out a historical study of the behavior of a system is to determine what information you want to store and how this is going to be saved, thinking of providing an easy way to access information when needed.

In our case, we need to store the information of the packages status and the actions that have been made to them. For now I have confronted the aptitude state and the dpkg state.

We use the state of dpkg to see the changes that other applications (Apt, Synaptic, Adept, etc..) can perform on the packets.

To see the changes we rely on the pkgstates file (which contains some information about the last state that was seen by aptitude) and the routine build_selection_list, comparing what is in the apt cache and what is stored in pkgstates.

So the first task was to create routines to save in each member of the history the information that can be collected from pkgstates and the cache, which really is not much. This process is accompanied by the function to write in the text log and the binary database. I believe that work it’s around 70-75%, missing optimization and definitions of some values.

I have been working this week on the aptitude state , creating a vector of entries which is storing the information collected from the state’s changes through the functions cleanup_after_change, apply_solution and build_selection_list from aptitudeDepCache, calling on the last function to the routine that writes the whole vector of changes made so far in the text log and the database, I think this work is located at 50%.

Plan for next weeks

For the dpkg state, optimize the functions and add to the info of each package  the date when it changed. Maybe based on /var/log/dpkg.log

For the Aptitude state, finishing collecting the information about changes. For example the dep that trigger a change, groups of packets that share the same reason of change. Look at other relevant information that could be included for the trace of each package. Change the structure of the database to include information that is missing.

Open a separate branch in the repository of aptitude, looking for a more fluid feedback.
Pd. Hello Planet Debian!
Comunidad DragonJAR: BarCamp Medellín

04 de June de 2009

Juan Pablo Botero

Juan Pablo Botero
JPill feed

Habemus Open Solaris 2009.06

Saludos.

Open Solaris es el proyecto Auspiciado por Sun Microsystems para impulsar el uso y desarrollo de su sistema Operativo Solaris

El primero de Junio de 2009 se lanzó la mas reciente versión de Open Solaris, según el portal algunas de las nuevas características son estas:

  • Virtualización de red con Crossbrow.opensolarislogo21
  • Clientes host virtuales por medio de xVM Hypervisor o LDoms.
  • Soporte de Sparc para consturctor de Distro auto instalación y Snap.
  • MySQL y PHP probados en el DTrace.
  • Source Juicer para contribuir con nuevos paquetes.

Para descargar la actual release de opensolaris: http://www.opensolaris.org/os/downloads/

03 de June de 2009

Jesse Padilla Agudelo

Jesse Padilla Agudelo
Intercambio Libre feed

Tratando de hacer un pequeño verso

Hace algunos años cuando estaba en el colegio, me gustaba mucho la poesía tanto leer como escribir, pero con la ingeniería y el estudio constante lo fui dejando a un lado, hace poco desee retomar esta pasión, aun me toca practicar, escribir, escribir y escribir mucho para producir algo bueno, pero por el momento les comparto un pequeño parrafito, que entre varias no quedo tan malito.

Por muchas noches he divagado por esta selva de concreto y unas pocas praderas, tan solo una fría brisa y la luz de unas cuantas estrellas me siguen y me observan con desdén mientras trato encontrar entre tantos caminos ese que me lleve a ti, para que tan solo con un abrazo y una caricia tuya nos fundamos en un solo ser, llenos de tu brillo perfecto mi luz de luna.

Falta practicar pero estoy motivado

02 de June de 2009

Comunidad DragonJAR: Filtrar sitios Webs usando OpenDNS desde Linux (Video)
Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

El equipo Colombiano de Ubuntu te invita a: La Jornada Makuruma

El equipo Colombiano de Ubuntu te invita a: La Jornada Makuruma



La Jornada Makuruma es un espacio donde se reúnen diversas actividades
relacionadas con el Software Libre, los Contenidos Abiertos y la Cultura Libre
que en ésta ocasión es realizada y organizada por SoLiUN con la colaboración
del grupo de la Facultad de Ciencias Económicas (FCE) realizadas en la
Universidad Nacional sede Bogotá.

*MIÉRCOLES 3 JUNIO - Auditorio Ed. Ciencia y Tecnología 454

Proyecciones:
10 am - AntiTrust
12 am - CodeBreakers

Conferencias:
2 pm - Política y Software Libre
3 pm - Proyectos de Investigación con Software Libre
4 pm - Ubuntu, software y comunidad
5 pm - Navegando por el Cosmos. Con Software Libre

*JUEVES 4 JUNIO - Hall 1° piso Ed. Aulsa de Ingeniería 453
Jornada de instalación que contara con algunos grupos locales de GNU/Linux
que estarán apoyando ésta jornada.

Para más información:
http://www.soliun.unal.edu.co/eventos/jornada_makuruma/2009-1


ENTRADA COMPLETAMENTE LIBRE Y GRATUITA!!!!

Grupo SoLiUN


Ver Jornada Makuruma 2009-I en un mapa más grande
Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

Roadmap WuDe 3.0

Roadmap Wude 3.0

Después de darme unas vacaciones en el SL, regreso a trabajar en este proyecto, la idea es trabajar quienes conjuntamente me deseen apoyar.

Wude 3.0 alpha 13 de Febrero
Wude 3.0 beta 16 de junio
Wude 3.0 final 6 de julio (Primer día del campus)

Cualquier ayuda me es util, les doy algunos datos:

OpenOffice 3.1.0
Winamp 5.552
CDburnerXP 4.2.4.1351
IrfanView 4.23
GIMP (Programado para eliminar)
7zip 4.65 (Aunque me gusto peazip)
Avast 4.8.1335
Firefox 3.0.10 con addons
Flash Get (programado para eliminar)
Pidgin 2.5.6
Gtalk (programado para eliminar)
Process Explorer 11.33
cCleaner 2.20.920
Notepad ++ 5.4.1
Foxit 3.0.1506
Soporte Hfs, ext 2/3 ReiserFS
Klite mega codec pack 4.8.5

Cambios:

Wihu no va despues del instlador de windows sino dentro
Correccion de problemas y de servicios
Mejor optimizacion
Consevacion del tema luna, de los sonidos y de los juegos
Tema revolucionario y sin precedentes
Drivers SATA
Parches al Dia anterior que salga.
SP3

01 de June de 2009

Comunidad DragonJAR: SeguriSemanal I

Ingeniería rápida

¿Se puede formar ingenieros con cursos rápidos virtuales? Las facultades de ingeniería colombianas se pronunciaron claramente sobre la propuesta del Ministerio de Educación Nacional de crear algo así como el fast food de la formación de ingenieros. Resulta que al gobierno del presidente Álvaro Uribe le parece que los estructurales problemas de la educación colombiana se [...]

El perfil militante de Benedetti

A propósito del fallecimiento del escritor uruguayo Mario Benedetti   Fue simpático ver a los noticieros de televisión tratando de soslayar el perfil militante de Mario Benedetti, durante los días posteriores al fallecimiento del gran escritor uruguayo. CNN, por ejemplo, entrevistó a su biógrafa y, por la magia de la edición, mostró a su audiencia un Benedetti [...]

Comportamiento de la banda ancha

Cifras del estudio de Cisco en Colombia indican que la penetración es de 4.1 por ciento. El “Barómetro” de Cisco, es un sistema de monitoreo del comportamiento de la banda ancha en varios países latinoamericanos. El más reciente reporte indica un crecimiento menos dinámico que en el pasado, pero crecimiento al fin. En el caso colombiano, [...]

31 de May de 2009

Jesse Padilla Agudelo

Jesse Padilla Agudelo
Intercambio Libre feed

Estrenando Blog

To blog or not to blog, That is the Question!!!

To blog or not to blog, That is the Question!!!

Por un poco de dos años tenia mi blog en blogger http://malak9.blogspot.com, un espacio donde sentí que podía publicar lo que quisiera, mis gustos, mis intereses mi forma de pensar o sentir cierto día.

Lastimosamente nunca fui constante siempre sentí que me faltaba algo para tomar el blog como algo mas importante para mi, reflexionándolo mucho llegue a la conclusión de que blogger no me permitía hacer muchas cosas y que deseaba tener algo mas personal, por eso hoy nace www.intercambiolibre.org un blog construido con wordpress un CMS opensource para construcción de blogs  en el cual espero compartir mis intereses, mis hobbies, documentación interesante, documentación que construya, enlaces, artículos, código, aplicaciones, software libre, cultura libre como música, imágenes y poesía, entre otros temas de mi interés que quizás les guste también a ustedes.

Tareas para hacer ahora con este nuevo blog.

  • Seleccionar una buena plantilla y trabajar en una buena personalización, por el momento usare esta.
  • Terminar y subir a este blog la documentación de Python.
  • Seleccionar unos buenos plugins para enlazar picassa, flicker, twitter y otros servicios.
  • Gomosear y tratar de ser muy constante con el blog.
  • Aprender fotografia, algo básico pero donde pueda mostrar la belleza de la manizales, sus paisajes  y su gente, bueno y tambien las bobadas que me asombren.
  • y documentar todo en lo que ando trabajando

Camilo Alberto Jiménez Santofimio

Camilo Alberto Jiménez Santofimio
Hilillos-blog feed

KOffice 2.0.0

Se ha anunciado la suite de ofimática KOffice 2.0.0, a partir del pasado 28 de mayo está disponible para descarga.

30 de May de 2009

Camilo Uribe

Camilo Uribe
Random Thoughts feed

Deber

El problema de estar en una celda sin ventanas es que no sabes si es de día o de noche, y el de hacerte el duro con la tortura es que en realidad es una mentira, nadie es tan duro y tarde que temprano te romperán la voluntad o el cuello.

La noche era fría y si estabas desnudo como Nicolás, era como estar en un congelador, huesos helados, hambre de innumerables días, hematomas por todas partes, lo único que Nicolás quería era darse por vencido y llorar hasta que lo dejaran volver a casa, pero estaba el deber, el MALDITO deber. Se puso en posición fetal para intentar dormir pero el dolor de sus costillas no se lo permitió, así que volvió a sentarse y cerró los ojos.

- Prisionero 53, díganos la ubicación de la bomba y su sufrimiento terminara

- ¡ NUNCA ¡

- Tal vez usted no lo recuerde pero en esta sesión hemos tenido que reanimarlo 3 veces

- ¡ MENTIRA ¡

- 53, es estúpido sufrir cuando con un poco de información mañana podría estar de vuelta con su familia

- ¡ NO ¡

- Asistente active la descarga electr..  – Eso fue lo ultimo que escucho Nicolás antes de despertarse de nuevo en su celda


No sabía como pero esos cerdos habían conseguido enterarse de la bomba y lo tenían allí encerrado, pero no sabían que tan fuerte era, ni donde estaba y sin importar cuando hicieran con el nunca conseguirían que hablara y en menos de 1 semana su valiente acto, seria afirmado cuando su bomba purificara a la raza humana.

Continuara...


Camilo Uribe

Camilo Uribe
Random Thoughts feed

Doble vida 2

Esta historia es la continuación de doble vida


-Hola, Pedro

- ¿Como estas?

- bien - Aunque en verdad lo que Andrés quería decir era fascinado de volver a verte

- ¿Estas con alguien?

- Si, con mis amigos, ven y te los presento


Y así Pedro termino sentado en la mesa de Andrés y sus amigos, riéndose de sus bromas, moviéndose ligeramente a la derecha cuando alguien iba a salir a balar. Y sin decir una sola palabra durante 2 horas.

Pedro, su espalda recta y mirada penetrante, mucho decían que era un soberbio pero Andrés nunca lo escucho hablar mal de alguien o asegurar que era mejor que ellos, y solía pensar que era algo diferente lo que causaba esa sensación, Pedro era especial, la mayoría de la gente habla para no sentirse tonta y sola, pero cuando el callaba se sentía bien y completo, en total calma consigo mismo y de la situación y no es por que fuese tímido o malo para las palabras sino que odiaba ser excesivo con ellas y solo las usaba cuando realmente significaban algo para el.


Juan le hizo un guiño a Sergio y se lo llevo a la pista de baile, cinco segundos después Gonzalo descubrió que estaba sonando su canción favorita y se llevo a Rodrigo, ya estando solos Pedro saco una cajetilla de cigarrillos y la acerco a Andrés, este tomo uno y salieron a fumárselos a la calle.

Las ¾ partes de los cigarrillos se consumieron sin que ninguno de los dos pronunciara palabra alguna, para entretenerse Andrés miraba como se marcaba la varonil figura de Pedro en su chaqueta de cuero cerrada hasta el cuello e intentaba adivinar que podría estar pasando por su cabeza.

Pedro termino su cigarrillo, lo lanzo al piso y luego extingo con su zapato, tras lo cual en un tono muy bajo digo – Te extrañe

Eso fue suficiente para que Andrés lanzara a la basura todo su “proceso” de meses, nunca volviera a pensar en asistir a la iglesia y mucho menos poner en duda su identidad sexual, una vez más en su vida.


Y claro lo de Pedro fue un amor rápido pasional y hermoso, pero también término, aunque esta vez quedo algo más que los reproches y las lágrimas, esta vez quedo el recuerdo que lo mejor en este mundo era ser quien uno sentía ser.


Camilo Uribe

Camilo Uribe
Random Thoughts feed

Doble vida

El culto había estado bien, era bueno sentir que la gente te miraba, era bueno sentir que la gente te alababa, era bueno sentir que te envidiaban. Estos eran los pensamientos de Andres mientras salia de la iglesia luego de la misa de 12.

Poder, eso es lo que todos queremos eso es lo que todos anhelamos y eso era lo que el había obtenido el poder suficiente para acallar las voces de su familia y las suyas propias, no es fácil ser gay y católico al tiempo, siempre escondiéndote de los ojos entrometidos, disimular y no mirar demasiado al nuevo chico del coro.


Su vida era un torbellino al comienzo iba a la iglesia por que su padre hace poco la había descubierto y entre el tedio de estar en casa pensando en su ex o escuchar al anciano párroco, pensó que al menos el anciano le mantendría pensando en otras cosas, y fue verdad las historias de pastores y guerras, calmaban su dolor y lo transportaban a otro tiempo, y así poco a poco le fue cogiendo la costumbre a eso de la iglesia, incluso hasta llego a pensar en que era sucio ser gay y que podría cambiar, así que se dedico con todo su empeño a no pensar en mas hombres a no mirarlos por la calle, a no dejar de pasar canales en la tv cuando salia uno con el pecho desnudo, cada día era una lucha, cada noche una derrota, pero al siguiente día volvía a empezar.

- Alo, andres?

- Hola, juan

- Hace tiempo que no te vemos por la disco, estas bien?

- Seguro, es solo que he estado ocupado

- Veo, veo, de cuando acá te convertiste en el señor ocupado?

- vamos, juan no seas así, es solo que..

- Que te olvidaste de tus amigos

y de repente andres, escucho como colgaban el teléfono del otro lado, clásico de juan siempre haciendo las cosas de la manera mas teatral posible, exagerando por todo, igual el solo había dejado de ir 2 o 3 meses, ademas no quería volver a saber de esa vida, y estaba seguro que si volvía a un bar gay, sus esfuerzos se verían diezmados, volvería caer en manos de la tentación.



10 a.m clase de economía, andres miraba reflexivamente el techo mientras su maestro decía algo sobre la repartición de los bienes y servicios, pensaba en despedirse pensaba en que había dejado esa vida y estaba contento por ello pero aun así había gente a la que debía mucho y quería despedirse de ellos. Primero que todo juan al que ni siquiera se había dignado volver a llamar desde que le colgó hace un mes, también rodrigo, gonzalo y por ultimo sergio. Estaba seguro que al hablar con ellos le dirían que el mejor lugar era la disco, igual era el único sitio donde podían ser ellos mismos, pero no importaba el estaba envestido por el señor y no volvería a caer en pecado.

Juan lo saludo con un suave hola bebe, mientras los demás simplemente le estrecharon la mano. bebió un par de copas, rió como no había reído hace tiempo, y como era obvio eventualmente sintió la necesidad de ir al baño, a la salida alguien dijo su nombre y al voltear a mirar vio a pedro y sintió como un sudor frió recorrió su cuerpo, andres era un hombre apuesto y nunca había tenido problemas para conquistar a nadie, pero con pedro fue otra cosa, siempre estaba dispuesto a salir con el, pero en cada oportunidad era tan callado, tan dentro de si mismo, tan hermoso, tan difícil de descifrar, que nunca se atrevió a decirle cuanto le gustaba.

Continua en: Doble vida 2


29 de May de 2009

Rodrigo Carreño

Rodrigo Carreño
Rodrigo C@rreño feed

Moblin v2 Beta

Una llamativa alternativa de un sistema operativo para portátiles...



Mayor información:
http://www.moblin.org
AxiaCore: Blog Post: Estamos en Twitter:…
AxiaCore: Estamos en Twitter
Clermont Technology: Proyecto OLPC

28 de May de 2009

weblogs/arhuaco/ledtoy

Playing with a ledtoy. It's rather small.

It would be nice to upload some icons taken from i7on.com.

Loading... Vote up! Vote down! Discussion (2)

Comunidad DragonJAR: IPTraf, estadísticas sobre el tráfico de tu red

27 de May de 2009

Comunidad DragonJAR: Bloqueo de sitios Web usando el archivo HOSTS
Camilo Uribe

Camilo Uribe
Random Thoughts feed

La mujer de su vida 2

Esta historia va después de La mujer de su vida

Cada uno voltea mira hacia un lado diferente y pasan 5, 10, 20 segundos de un silencio incomodo hasta que  felipe dice - tranquila, tranquila, no hay ningún problema, te entiendo, si eso es lo que quieres entonces esta bien

- debo irme

- por favor espera un poco mas, espera a que el sol salga y te acompañare hasta donde desees

- donde estoy?

- en mi casa, a las afueras de la ciudad

- llevame a la carretera mas cercana

- espera, espera, en solo 30 minutos saldrá el sol


catalina empieza a vestirse y de mala gana le dice que si

- sabes, ahora recuerdo que anoche estaba con unos viejos amigos(viéndolos por ultima vez) y uno de ellos me dijo que de ser yo lo intentaría con tu amiga, la de los senos grandes, pero vi tu sonrisa y lo tuve todo claro, lo que necesitaba lo que realmente necesitaba a mi lado era una persona que pudiera sonreír como tu.

Los ojos de catalina se volvieron mas claros

- Alguien alegre, como tu y tus gestos de mimo, jugando como una niña al mismo tiempo que hechizas a los hombres

Los ojos de catalina se volvieron aun mas claros, y una lagrima rodó por su mejilla.

- Tanto lo amas?

- Si


Ella bajo del auto abrió la puerta de un edificio y entro en el, todo lo que le quedo a felipe para ver fue la puerta y así lo hizo por cinco minutos antes de sonreír pensando en la ironía, Catalina era la mujer de su vida, la ultima mujer de su vida y su corazón era de otro. Simplemente por el hecho que el estuviera muriendo no significaba que la vida seria mas suave con el.


Camilo Uribe

Camilo Uribe
Random Thoughts feed

La mujer de su vida

La vio a los ojos y supo que era la mujer de su vida, el problema es que no le quedaba mucha.

Hace 5 días felipe había salido de casa con todo el dinero que pudo conseguir, hace 6 días le habían diagnosticado una extraña clase de cáncer que no podía pronunciar y la muerte en una semana.



No recuerda muy bien donde la conoció o como terminaron desnudos sobre su cama, no recuerda muy bien por que volvió a casa o quien es esa extraña que duerme a su lado, no recuerda pero ve su sonrisa, y siente un rápido movimiento dentro de su pecho.

No es una de esas chica portada de revista, le sobran unos kilos de mas y le faltan retoques digitales, pero la sonrisa que se ve mientras duerme es hermosa, y mientras la ve piensa en que la vida es una cosa extraña, y lo único que quiero antes de terminarla es un beso. Lo piensa pero no se atreve a tomarlo, solo espera y espera mientras la observa, espera y ella sigue durmiendo, espera una eternidad del tiempo que ya no le sobra, y luego, espera un poco mas.



Finalmente su cuerpo se mueve y ella comienza a despertar, le mira confundida y el no sabe que hacer o que decir. Pero mira nuevamente sus labios y tiene claro que desea antes de morir, asi que acerca lentamente sus labios hacia los de ella con la esperanza que su ultimo deseo se haga realidad, pero ella se aleja.

- No puedo hacerlo

- Que, no puedes hacer?

- lo siento, yo yoooo, me voy a ir a vivir con andres mañana, y nooo, no puedo hacerlo

Cada uno voltea mira hacia un lado diferente y pasan 5, 10, 20 segundos de un silencio incomodo y

Continua en: La mujer de su vida 2


26 de May de 2009

Camilo Alberto Jiménez Santofimio

Camilo Alberto Jiménez Santofimio
Hilillos-blog feed

Ayuda para usuarios Fedora

La comunidad latinoamericana de usuarios de la distribución de GNU/Linux Fedora ha montado una útil estructura de apoyo a los usuarios de la distribución. Así, cualquier usuario de Fedora con una conexión a internet podrá acceder a la ayuda de los cientos de usuarios Fedora de habla hispana. Los medios que se han habilitado son los [...]
Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

Dragonjar: laboratorio confirmado mayo 30 2 pm

Primer laboratorio - Bogotá

Hola después de tanto tiempo de charla y charla de pelea y pelea, por fin es posible hacer nuestro primer laboratorio.

Lugar: Bogota, Cra 72 I # 42 F - 83 sur conjunto residencial la Alejandra primera etapa salón comunal primer piso barrio boita

Hora y fecha: mayo 30 de 2009 a las 2 pm hasta las 6 (no me prestan el sitio por mas tiempo)



Mapa en openstreetmap:

OpenStreetMap

Qué hay?

Un espacio grande (mañana publico la foto)
Sillas
mesas
un pc de escritorio
2 laps
Un AP 3com
un switch-router huawei
Cableado (maso)
ponchadora

Ponencias y temática a tratar

Laboratorios Hacking, Técnicas y Contramedidas
Se recomienda leer este contenido con antelación (uyyyyyy ya dejando tareas y sin haber iniciado ja,ja,ja,ja,ja,....)
Igualmente recomiendo leer este apartado e instalar el VMware en sus equipos de prácticas para repasar los ejercicios o adelantar los temas a ver posteriormente. Igualmente llegara (muy pronto) el momento en el que los labs los realizaremos directamente sobre máquinas virtuales.

NOTAS:


En caso de tener inconvenientes en la instalación de VmWare pueden escribirme a mi correo y con mucho gusto les ayudare en la medida de mis cortos conocimientos. Recuerden que el buen performance de las máquinas dependerá del hardware que tengan en su máquina anfitrión (máquina anfitrión es el equipo de ustedes. Lo que pasa es que suena más bonito y tramador) dado que los recursos de hardware se comparten con las máquinas virtuales.

Ruego que aquellos participantes que tienen un nivel superior de conocimiento sepan comprender que se hace necesario que aquellos que no tenemos un buen nivel necesitamos ir nivelándonos Por eso ruego tener algo de paciencia y así mismo que asistan para apoyarnos, compartir y fortalecer los lazos de amistad en nuestra ciudad capital entre los integrantes de nuestra comunidad.

Realizar todas las prácticas recomendable llevar Bactrack 3 para realizar las prácticas con este LiveCD y/o nuestros mismos sistemas operativos instalados por “default”.
Si nos alcanza el tiempo del primer lab, veremos la parte I con sus correspondientes prácticas.
Siguientes labs
Recomendaciones:

1. Falta que lleven si es posible sus laps, en caso de no llevar trataremos de organizarnos en grupos de 3 donde mínimo debe haber una lap.

2. Lleguen puntual al sitio en mi blog pondre algunas rutas para llegar facilmente al sitio.

3. La carga de las laps debe estar al 100 %, de ser posible lleven el software Vmware wokstation o vmware player con la maquina lista, ademas de esto lleven el cd de Backtrack 3 o 4 beta que lo consiguen en: Remote-Exploit.org - Supplying offensive security products to the world

4. En caso de no poder llevar la iso se proporcionara un CD con backtrack 3

5. De no asistir escribir a drenelly(at)gmail(dot)com o llamar al celular 300 2832495, tambien pueden llamar en caso de no estar seguros de la ubicacion

6. Vamos a encontrarnos en la estación de la sevillana costado N>S a la 1:40 del sabado 30 de mayo.

Boletines:

Boletin de Instrucciones Lab No. 1

Hola a todos y todas.

El objetivo de los Laboratorios de Hacking - Técnicas y Contramedidas, es ofrecer de manera ordenada y secuencial, las técnicas, tácticas y contramedidas utilizadas en los diferentes campos de la seguridad informática, principalmente los que corresponden a test de penetración y hacking ético.

El contenido temático de los laboratorios estará dirigido para usuarios con un nivel de conocimientos del tema comprendido entre básico y medio. El material expuesto no está enfocado para usuarios de amplia experiencia en el tema, por el contrario pretende acercar a los entusiastas de aprender y que aún no encuentran la manera de comenzar de un modo más práctico. Pretende refrescar un poco los conocimientos de usuarios avanzados, y pretende invitar a los mismos a desarrollar sus propios laboratorios para el conocimiento de toda la comunidad investigadora.

Llegando a la fase final para dar inicio del lab No. 1 de DragonJAR en Bogotá, comedidamente me permito remitirles las siguientes instrucciones:

  1. IMPORTANTE: Llevar un software de virtualización instalado en cada laptop. Se recomienda VmWare (Player o Server o Workstation pero este último es de pago o trial de 30 días).
  2. Llevar los portátiles con la carga de energía al 100% para no tener que recargarlo prontamente (habrán estaciones de energía para recargar baterias - no muchas).
  3. Sería de gran ayuda llevar multitoma y/o extensión.
  4. Se comedidamente puntualidad en la asistencia.
Boletin de Instrucciones Lab No. 2

Los laptops deberían traer instalado VmWare con Máquinas virtuales para BackTrack III final, Windows Server 2003 Edición Enterprise y por último Instalación de VMware Tools.

Estas instalaciones las pueden seguir detalladamente en:
NOTA: Lo de VmWare es una recomendación como para que no se requiera mucho soporte el día del lab (imaginate unos preguntando sobre Xen, otros sobre VirtualBox, otros sobre quemu, otros sobre VmWare, uffff rseria una locura, de solo pensarlo me da escalofrio, y sumale que van a ser mas de 40 asistentes. Es más por facilidad de poder dictar el laboratorio, ves?). Si quieres trabajar con VirtualBox asegurate que lo dominas y que tienes las máquinas virtuales instaladas no hay lio


Contacto

drenelly(at)gmai(dot)com
300 2832495

Como llegar

Por trasmilenio Se bajan en la estacion de la sevillana http://www.surumbo.com/index2.php3?d...&InaNuIdMn=401 esta herramienta les ayuda a planear su bajada
En bus: pueden tomar cualquier bus por la AV boyaca al sur y se bajan en un CAI antes de la sevillana, Cualquier bus que los lleve por la autosur y se bajan en la bomba de eso al lado de bancolombia


Ver Hacklab bogotá en un mapa más grande

25 de May de 2009

Comunidad DragonJAR: NetworkMiner, Herramienta forense de Análisis de Red
Camilo Alberto Jiménez Santofimio

Camilo Alberto Jiménez Santofimio
Hilillos-blog feed

¿Está el Software Libre listo para ti?

Hoy, el software libre es tan fácil de usar como el software propietario y por el lado del soporte, desde mi punto de vista tiene mejor soporte que el software propietario.

22 de May de 2009

Juan Pablo Botero

Juan Pablo Botero
JPill feed

I want out – Helloween

">

I want out – Helloween

Click here to view the embedded video.

From all lives beginning on
We are pushed in little forms
No one asks us how we like to be
In school they teach us what to think
But everyone says different things
But theyre all convinced that
Theyre the ones to see

So they keep talking and they never stop
And at certains point you give it up
So the only thing thats left to think is this

I want out… to live my life alone
I want out… leave me be
I want out… to do things on my own
I want out… to live my life and to be free

People tell me a and b
They tell me how I have to see
Things that I have seen already clear
So they push me then from side to side
Theyre pushing me from black to white
Theyre pushingtil theres nothing more to hear

But dont push me to the maximum
Shut your mouth and take it home
cause I decide the way things gonna be

I want out… to live my life alone
I want out… leave me be
I want out… to do things on my own
I want out… to live my life and to be free

Theres a million ways to see the things in life
A million ways to be the fool
In the end of it, none of us is right
Sometimes we need to be alone

I want out… to live my life alone
I want out… leave me be
I want out… to do things on my own
I want out… to live my life and to be free

Bloqueo de cuentas de usuario en Solaris/OpenSolaris y Linux

En el siguiente artículo expongo una corta descripción acerca del bloqueo de cuentas de usuario tanto en Solaris/OpenSolaris como en Linux. El artículo completo se puede descargar de:

21 de May de 2009

Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

XVII Festival GNU/Linux Universidad Nacional viernes 22 de mayo de 2009

XVII Festival GNU/Linux Universidad Nacional viernes 22 de mayo de 2009

La universidad nacional mediante SLS (Laboratorio del Software Libre) organiza mañana viernes el evento numero 17 del festival GNU/linux:

El proximo Viernes 22 de Mayo de 2009 se llevará a cabo el decimo-séptimo Festival GNU/Linux, en el salón anexo al Auditorio León de Greiff en la Ciudad Universitaria de Bogotá.

Este evento desea fomentar el desarrollo académico y cultural de los estudiantes de la Universidad Nacional y del público en general, de igual forma se promoverá el desarrollo y la utilización del sofware libre.

Contará con la participación de Universidades y Empresas de la ciudad, siendo una buen oportunidad para mostrar la principal virtud de la Universidad Nacional: la academia enmarcada en un ambiente de tolerancia y respeto.

Este año se ha decidido realizar una convocatoria, a Universidades, Empresas y Particulares, que tengan proyectos, trabajos o ponencias en cualquiera de los siguientes tópicos: GNU/LINUX, Apache, PHP, MSQL, etc. Dichos trabajos se recibirán hasta el viernes 15 de Mayo y deberá ser enviados a la siguiente dirección electrónica: eidos_fibog@unal.edu.co

El formato para recepción de estos trabajos deberá incluir: Datos personales del expositor ( FOTO preferiblemente), donde se indique la empresa o Universidad a la cual pertenece, un resúmen de su trabajo o Proyecto y la presentación en OpenOffice (preferiblemente).



HORARIO: 8:00 am - 5:00 pm

LUGAR: Salón Anexo al Auditorio León de Greiff

FECHA : Viernes 22 de mayo, 2009



El programa de conferencias:

Programa de la tarde:
Espero que asistan :)

Plegable:

https://lsl.unal.edu.co/img/fl17-plegable02.pdf

mas info en:

https://lsl.unal.edu.co/fl17/


Camilo Uribe

Camilo Uribe
Random Thoughts feed

Human monogamy in the planet of the apes



"I didn't realize a man could be monogamous" - Dr. Zaius


15 de May de 2009

Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

Registro unico para asistentes al laboratorio hacklab del 30 de mayo

Registro unico para asistentes al laboratorio hacklab del 30 de mayo

Hola no olviden registrarse al lab para que no se queden por fuera

Registro


Loading...

Cupos limitados

14 de May de 2009

Manuel Gómez

Manuel Gómez
A Lone Hero feed

Carta por el Despido de Javier Dario Restrepo

Hace ya casi un año que no escribo nada en este blog, aparte de las actualizaciones que estomáticamente manda LoudTwitter, y quiero romper el silencio publicando un email que escribió mi mama a razón del despido de Javier Darío Restrepo, uno de los columnistas de el diario El Colombiano de Medellín, por pura censura política. Sin mas comentarios, aquí va el correo:

Hola,

En El Colombiano de hoy aparece la columna de Javier Darío Restrepo, despidiéndose después de 17 años, y dándose por notificado de que El Colombiano por motivos de "reorganización de nuestras páginas de opinión", lo botaba a la calle. Eso me recuerda la carta que hace muchos años recibió Alberto Vasco, del periódico El Mundo donde lo echaban de su "Columna de 2ª” . Busqué en El Colombiano del jueves 7 de mayo y encontré la razón: la columna de Javier Darío de ese día se titulaba "La libertad de discrepar", en la que, entre otras frases parecidas, sostenía:
”Si no es ético denunciar la peligrosa concentración de poderes en una persona, o la campaña política y de descalificación intencionada de la Corte, o el apoyo a la parte más corrupta del Congreso para preservar unos votos, si afirmar esto no es ético, ¿qué es lo ético? ¿Afirmar contra toda evidencia que no pasa nada, que los 81 congresistas investigados o procesados penalmente por parapolítica son solo escándalo de la oposición que también podría ser procesada por farcpolítica? ¿Lo ético sería silenciar los falsos positivos, la corrupción en el DAS, la corrupción electoral, los negocios en la familia presidencial? Esa información, admito, sería antiética si fueran simples rumores, afirmaciones sin sustento, maledicencia política. Pero son hechos que uno no podría negar aunque quisiera. Negarlos implicaría complicidad y sobre todo irresponsabilidad profesional del periodista….."
Creo que podemos sacar un rato y escribir una carta a la directora del Colombiano, protestando, o vamos a dejar que se cumpla la profecía de Bertolt Brecht:
Primero se llevaron a los comunistas
pero a mí no me importó
porque yo no era.

En seguida se llevaron a unos obreros
pero a mí no me importó
porque yo tampoco era.

Después detuvieron a los sindicalistas
pero a mí no me importó
porque yo no soy sindicalista.

Luego apresaron a unos curas
pero como yo no soy religioso
tampoco me importó.

Ahora me llevan a mí
pero ya es tarde.

Un abrazo,
Luz María Restrepo
Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

Ubuntu 9.10 karmic koala alpha1 review notas y descarga

Ubuntu 9.10 karmic koala alpha 1 review notas y descarga

El desarrollo de ubuntu no se detiene, canonical le apuesta fuerte a su sistema operativo que hace unos cuantos momentos saco su primera alpha:

Que trae de nuevo:

Por el momento su descarga esta en alternate, despues estara en live cd:

http://cdimage.ubuntu.com/releases/karmic/alpha-1/ (Ubuntu Alternates, Server, Netbook Remix, y MID)
http://cdimage.ubuntu.com/kubuntu/releases/karmic/alpha-1/ (Kubuntu)
http://cdimage.ubuntu.com/xubuntu/releases/karmic/alpha-1/ (Xubuntu)
http://cdimage.ubuntu.com/netboot/karmic/alpha-1/ (Ubuntu ARM)

Para actualizar de ubuntu 9.04

solo deben escribir alt-f2 y escribir "update manager -d"

http://img178.imageshack.us/img178/1976/upgradej.png

Juan Pablo Botero

Juan Pablo Botero
JPill feed

Relanzamiento portal Linux.com

Tux - Mascota Kernel Linux

Tux - Mascota Kernel Linux

Saludos.

Hace algunos meses la Linux foundation decidió formatear el sitio linuxfoundation.org, enfocandolo mas a  los intereses de la comunidad, o al menos así lo he sentido; el día de hoy recibí una noticia que también habia realizado el formateo de linux.com con algunas actividades para atraer mas visitantes y un aspecto simple, agradable y con contenidos interesantes, me parece que son medidas buenas, esto permite mayor comunicación entre los desarrolladores , los administradores y los usuarios.

weblogs/arhuaco/home-sweet-home

Home - Sweet home

Esta imagen está dedicada al poder de las palabras.

Loading... Vote up! Vote down! Discussion

11 de May de 2009

Cristian Castiblanco

Cristian Castiblanco
Linux, Java y programación feed

Video Tutorial VirtualBox: ejecutar sistemas operativos REALES

Hola amigos… he grabado un pequeño vídeo en donde enseño cómo ejecutar varios sistemas operativos REALES, es decir, que no son virtuales, al mismo tiempo usando VirtualBox. Por ejemplo, si tienes instalado Windows XP, Ubuntu y Fedora, y en cada uno tienes aplicaciones que usas a diario, podrías ejecutar Windows XP desde Ubuntu sin necesidad de tener que reiniciar el equipo.

Esto tiene una gran ventaja frente al típico entorno en el cual tienes máquinas virtuales instaladas ya que, cuando realmente quieras usar el otro sistema operativo, lo ejecutas directamente en tu máquina sin las limitaciones de RAM o aceleración gráfica. Es más o menos lo que explicaba en esta entrada, en donde lo hacia con Windows XP. Pero puesto que algunos han tenido problemas con eso, y otros más me han pedido algo de información más detallada, mejor dejar todo registrado en este vídeo.

Como siempre lo he subido en Blip.tv, Youtube y Vimeo. El vídeo es completamente libre, puedes darle el uso que desees; si deseas el vídeo original para cualquier propósito me contactan por correo.

Camilo Alberto Jiménez Santofimio

Camilo Alberto Jiménez Santofimio
Hilillos-blog feed

Fedora 11 – "Leonidas"

Restan sólo días para el día. El próximo 26 de Mayo es la fecha de lanzamiento final de Fedora 11 "Leonidas" ... se iniciará y cerrará más rápido (20 segundos)...

10 de May de 2009

Alejandro Ríos P.

Alejandro Ríos P.
alerios feed

Album JET


Como ya muchos saben, ha salido hace pocos meses un nuevo álbum de chocolatinas JET, "El Mundo de los Animales", el cuál además de impulsarme a llenarlo gracias a su bonita edición, también hizo que me pusiera en la tarea pendiente de desempolvar el viejo álbum de "Historia Natural" (edición entre 1982 y 1999) y tratar de terminar de llenarlo.

Inicialmente iba a contactar a la Compañía de Chocolates directamente, pero parece que en este momento tienen problemas con el formulario web para tales menesteres. Otra idea que tenía, era simplemente ir al centro de Bogotá, donde seguramente con los coleccionistas de las calles, o en uno que otro almacén de coleccionistas tradicional, podré encontrar las láminas que busco.

De cualquier manera, pongo acá la relación, por si algún cibernauta desprevenido llega a tener repetido alguno de los siguientes números de láminas:

  • Las que me faltan (12): 59, 148, 189, 273, 316, 318, 367, 402, 411, 467, 471, 498.
  • Las que tengo en mal estado (4): 102, 177, 363, 490
  • Las que no estoy seguro de que sean de la edición correcta (5): 368, 476, 495, 504, 505.

Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

Primer laboratorio - Bogotá - Comunidad DragonJAR

Primer laboratorio - Bogotá

Hola después de tanto tiempo de charla y charla de pelea y pelea, por fin es posible hacer nuestro primer laboratorio.

Lugar: Bogota, Cra 72 I # 42 F - 83 sur conjunto residencial la Alejandra primera etapa salón comunal segundo piso barrio boita

Hora y fecha: mayo 30 de 2009 a las 2 pm hasta las 6 (no me prestan el sitio por mas tiempo)



Mapa en openstreetmap:

OpenStreetMap

Qué hay?

Un espacio grande (mañana publico la foto)
Sillas
mesas
un pc de escritorio
2 laps
Un AP 3com
un switch-router huawei
Cableado (maso)
ponchadora

Ponencias y temática a tratar

Laboratorios Hacking, Técnicas y Contramedidas
Se recomienda leer este contenido con antelación (uyyyyyy ya dejando tareas y sin haber iniciado ja,ja,ja,ja,ja,....)
Igualmente recomiendo leer este apartado e instalar el VMware en sus equipos de prácticas para repasar los ejercicios o adelantar los temas a ver posteriormente. Igualmente llegara (muy pronto) el momento en el que los labs los realizaremos directamente sobre máquinas virtuales.

NOTAS:


En caso de tener inconvenientes en la instalación de VmWare pueden escribirme a mi correo y con mucho gusto les ayudare en la medida de mis cortos conocimientos. Recuerden que el buen performance de las máquinas dependerá del hardware que tengan en su máquina anfitrión (máquina anfitrión es el equipo de ustedes. Lo que pasa es que suena más bonito y tramador) dado que los recursos de hardware se comparten con las máquinas virtuales.

Ruego que aquellos participantes que tienen un nivel superior de conocimiento sepan comprender que se hace necesario que aquellos que no tenemos un buen nivel necesitamos ir nivelándonos Por eso ruego tener algo de paciencia y así mismo que asistan para apoyarnos, compartir y fortalecer los lazos de amistad en nuestra ciudad capital entre los integrantes de nuestra comunidad.

Realizar todas las prácticas recomendable llevar Bactrack 3 para realizar las prácticas con este LiveCD y/o nuestros mismos sistemas operativos instalados por “default”.
Si nos alcanza el tiempo del primer lab, veremos la parte I con sus correspondientes prácticas.
Siguientes labs


Contacto

drenelly(at)gmai(dot)com
300 2832495

Como llegar

Por trasmilenio Se bajan en la estacion de la sevillana http://www.surumbo.com/index2.php3?d...&InaNuIdMn=401 esta herramienta les ayuda a planear su bajada
En bus: pueden tomar cualquier bus por la AV boyaca al sur y se bajan en un CAI antes de la sevillana, Cualquier bus que los lleve por la autosur y se bajan en la bomba de eso al lado de bancolombia

08 de May de 2009

AxiaCore: Somos los verdaderos

07 de May de 2009

Juan Pablo Botero

Juan Pablo Botero
JPill feed

Shell Fu

Ayer ví una página nueva llamada Shell Fu.

05 de May de 2009

AxiaCore: Ink-mate ahora con Google Apps
Camilo Alberto Jiménez Santofimio

Camilo Alberto Jiménez Santofimio
Hilillos-blog feed

Zim – Wiki de Escritorio

Quiero compartirles un programa muy sencillo, pero que me ha resultado sumamente útil en las últimas semanas; se trata de Zim.

04 de May de 2009

Juan Pablo Botero

Juan Pablo Botero
JPill feed

Videos Linux Foundation

Encontré estos videos de la Linux Foundation en youtube, realmente es dificil encontrar videos que no hagan ataque al windows, la verdad es que me molesta promocionar linux atacando windows, Linux es mucho mas que un sistema operativo inmune a los virus de windows y a la pantalla azul, es como si Linux estuvierá en la sombra de windows.

Linux no es una alternativa, es una opción

Click here to view the embedded video.

Click here to view the embedded video.

[youyube=http://www.youtube.com/watch?v=H_0oWqOLpo4&feature=related]

Click here to view the embedded video.

Por supuesto una opinión contra Linux:

Click here to view the embedded video.

Ustedes juzgen.

03 de May de 2009

Juan Pablo Botero

Juan Pablo Botero
JPill feed

Anunciado Assassin Creed II

He visto con gran agrado esta noticia, el anunció del release del juego Assassin Creed II, en esta ocasión el personaje principal será un descendiente de Altair llamado Ezio, este personaje ya podrá nadar y planeará como un murcielago, en la primer parte, hubó momentos en que me aburria por la repetición de acciones del juego, pero la segunda parte promete traer algo mas.

assassins_creed_wallpaper

Assassin Creed II

Juan Pablo Botero

Juan Pablo Botero
JPill feed

Noticias 3 de Mayo de 2009

Click here to view the embedded video.


02 de May de 2009

weblogs/arhuaco/tombola

La vida es una tómbola.

Loading... Vote up! Vote down! Discussion

30 de April de 2009

Cristian Castiblanco

Cristian Castiblanco
Linux, Java y programación feed

Video tutorial de introducción a las shellcodes en Linux

Uff… ya llevo bastante sin pasarme por este, mi querido blog. Puesto que ya no cuento con el mismo tiempo de antes es muy poco lo que puedo publicar; así que, aprovecho a colocar trabajos de la universidad que, de una u otra forma, podrían serviles a alguien. El video tutorial que verán a continuación con tiene una pequeña (muy pequeña) introducción a lo que son los shellcodes en Linux:

También lo subí a Youtube, por si no te gusta blip.tv. No es definitivamente el mejor video que hemos hecho, pero de seguro le será útil a alguien. Si deseas necesitas el video original, me puedes escribir solicitándolo, aunque creo que es suficiente con que esté en internet; no pongo el link descarga por cuestiones de recursos ;)

Te recomiendo además esta animación en donde se explica qué es y cómo funcionan las vulnerabilidades de buffer overflow.

Rodrigo Carreño

Rodrigo Carreño
Rodrigo C@rreño feed

Variante del virus autorun en USB

El famoso virus que infecta las memorias USB con variantes como: Autorun.inf, Autorun.dat, Autorun.png etc, etc... aparece de una nueva forma, ahora oculta en el modo gráfico de GNU/Linux... esto me sucedió hace 3 días luego de traer mi memoria de un equipo donde imprimen trabajos en el centro.

nautilus

Al llegar a mi casa, Ubuntu me indico que la memoria tenia una instrucción para ejecutar un programa automáticamente, me dispuse a verificar cual era ese programa, lo examino con nautilus el contenido de mi USB y no encuentro ningún indicio de los típicos virus de Windows, entonces reviso el contenido en la terminal y me llevo la sorpresa que la variante Autorun esta también oculta en Linux:

root@rodrigo-laptop:/media/disk# ls
Flisol2009.odp rms-2009-espanol(2).ogg wimax.txt
Software wimax.txt~
root@rodrigo-laptop:/media/disk# ls -la
total 299432
drwx------ 4 rodrigo root 4096 2009-04-29 10:01 .
drwxr-xr-x 5 root root 4096 2009-04-29 09:59 ..
dr-x------ 3 rodrigo root 4096 2009-04-06 15:57 .Autorun
-rwx------ 1 rodrigo root 2924990 2009-04-24 19:46 Flisol2009.odp
-rwx------ 1 rodrigo root 190369792 2009-04-29 10:01 ophcrack-xp-livecd-2.1.0.iso
-rwx------ 1 rodrigo root 113293730 2009-04-24 14:03 rms-2009-espanol(2).ogg
drwx------ 4 rodrigo root 4096 2009-03-12 23:18 Software
-rwx------ 1 rodrigo root 681 2009-03-13 09:43 wimax.txt
-rwx------ 1 rodrigo root 621 2009-03-12 23:16 wimax.txt~

Y por supuesto oculto en esta carpeta, la sorpresa de uno de los muchos ejecutables que afectan el Windows de Micro$oft.

root@rodrigo-laptop:/media/disk# cd .Autorun/
root@rodrigo-laptop:/media/disk/.Autorun# ls
835694854683549385398626893468946
root@rodrigo-laptop:/media/disk/.Autorun#cd 835694854683549385398626893468946
root@rodrigo-laptop:/media/disk/.Autorun/835694854683549385398626893468946# ls
-rwx------ 1 root root 633 2009-04-06 15:59 afefor.exe
Juan Pablo Botero

Juan Pablo Botero
JPill feed

Primerazo

Click here to view the embedded video.

Primer Clip

28 de April de 2009

Sisfo Ltda: Redmine en GNU Linux Debian

26 de April de 2009

Alejandro Ríos P.

Alejandro Ríos P.
alerios feed

Registro de Obras

Estas son las obras que he registrado en la Dirección Nacional de Derechos de Autor. Esto no pelea con el licenciamiento Creative Commons, todo lo contrario.


Nro RegistroFecha RegistroTitulo ObraAutores/IntervinientesTitular derecho patrimonialTipo de Obra
5-182-295 4/20/2009 11:45:43 AMBODEGÓNALEJANDRO RÍOS PEÑASin transferencia de derechos. REGISTRO DE OBRA ARTISTICA
5-182-296 4/20/2009 11:45:54 AMMUSA Y PROGRAMADORALEJANDRO RÍOS PEÑASin transferencia de derechos. REGISTRO DE OBRA ARTISTICA
5-182-297 4/20/2009 11:46:06 AMENTALEJANDRO RÍOS PEÑASin transferencia de derechos. REGISTRO DE OBRA ARTISTICA
5-182-298 4/20/2009 11:46:15 AMECCE TAURUSALEJANDRO RÍOS PEÑASin transferencia de derechos. REGISTRO DE OBRA ARTISTICA

25 de April de 2009

Camilo Alberto Jiménez Santofimio

Camilo Alberto Jiménez Santofimio
Hilillos-blog feed

GNS3, Simulador de Redes – Free

Hoy quiero contarles que en mis estudios de redes, me he topado con un programa (Libre porsupuesto), que permite hacer simulaciones de redes de forma gráfica. El programa permite:

23 de April de 2009

Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

Ubuntu 9.04 jaunty jackalope descarga, notas y review

Ubuntu 9.04 jaunty jackalope descarga, notas y review

Primero que todo y antes de comenzar debo confersar que no he dormido jejeje ya que inicie mi descarga a la 1 am hora de colombia y finalice a las 4 am, luego instale y es donde quede soprendido solo 20 min, ya siendo las 4:30 inicie a configurar el sistema, tarea que me tomo hasta las 6:30 am, cosa que tambien me dejo sorprendo:

Comienzo con lo que mas nos interesa la descarga, pueden adquirir desde una
Completa lista de mirrors:

Ubuntu 9.04 jaunty jackalope mirrors:
https://wiki.ubuntu.com/Mirrors

Ubuntu 9.04 jaunty jackalope Releases:
http://noncdn.releases.ubuntu.com/jaunty/

Ubuntu 9.04 jaunty jackalope para i386:
Torrent: http://noncdn.releases.ubuntu.com/jaunty/ubuntu-9.04-desktop-i386.iso.torrent
Iso(recomiendo usar el torrent para no saturar los servers): http://noncdn.releases.ubuntu.com/jaunty/ubuntu-9.04-desktop-i386.iso

Ubuntu 9.04 jaunty jackalope para amd64:

Torrent: http://noncdn.releases.ubuntu.com/jaunty/ubuntu-9.04-desktop-amd64.iso.torrent
Iso:(recomiendo usar el torrent para no saturar los servers): http://noncdn.releases.ubuntu.com/jaunty/ubuntu-9.04-desktop-amd64.iso

Ubuntu 9.04 jaunty jackalope para netbooks (novedad):
Imagen USB: http://noncdn.releases.ubuntu.com/jaunty/ubuntu-9.04-netbook-remix-i386.img

Caracteristicas y notas de ubuntu 9.04
jaunty jackalope:

http://www.ubuntu.com/products/whatisubuntu/904features/


Experiencia en pocas horas:

Todo comenzó esta madrugada mientras discutiamos, en irc de ubuntu colombia uno de los usuarios nos dio un link muy escondido de la descarga, asi que inicie mi descarga a las 1 am y mientras descarba seguia discutiendo y visitando identi.ca, el ubuntu 9.04 amd64 me descargo a las 4:10 am.

Instalacion:

El tiempo en que carga el live cd de ubuntu carga un 50 % mas rapido, el programa de instalacion fue mas amigable deje mi tabla de pariciones asi:

60 gb para ubuntu 9.04 con sistema de archivos ext4
40 gb para el ubuntu rc que tenia instalado con sistema de archivos ReiserFS
1 gb para intercambio
Restante para M$

El programa de instalacion me demoro aprox 20 min cosa que me dejo sorprendido:

En el Sistema instaldo:

Carga mucho mas rapido eso si se nota el trabajo de los desarrolladores, incorpora el kernel 2.6.28 cosa que no me gusto, me instalo la inalambrica atheros sin ningun proble y sin compilar nada, lo unico que necesite instalar fue mi targeta grafica, flash player, java, plugins mp3 .

Muy recomendado y los esperamos en el Flisol



22 de April de 2009

Clermont Technology: Encuentre su portatil en caso de robo

21 de April de 2009

Cristian Porras

Crónica Jornadas de Software Libre 2008


Ya un tiempo después de haber pasado por el trajín de ser anfitriones de las JSL quiero dedicarle unas cuantas lineas (desde mi punto de vista) a esta labor, la que en los últimos meses se convirtió en mi preferida y fue a que le dedique mas tiempo que a cualquier otra cosa.

JSL2008

JSL2008!

Planeación, como nos las craneamos

A vista de la mayoría la labor preparativa de las JSL en Bucaramanga empezó en Medellín el año pasado en medio de unas cuantas polas, en las que Juliancho dejo salir su parentesco con el Tuerto Gil y comenzó un despliegue político/propagandístico para traernos las JSL a nuestra casa (Realmente llevábamos un buen tiempo planeando que íbamos a hacer para convencer a la gente), fue así como por varias horas discutimos con los pastusos que también se las querían llevar exponiendo argumentos y contra argumentos los unos a los otros, y como obviamente, como si se tratara de una discusión entre un ateo y un creyente, ninguna parte fue capaz de convencer a la otra dejamos la decisión para el otro día en las mesas de trabajo. Para ese domingo teníamos la carreta preparada con meses de anticipación, los designados para echarla fueron Ivan y Julian por que el resto nos aculillamos. Entonces están los dos y tratan de comenzar a hablar, llevan tan solo cinco segundos diciendo quienes son cuando de se oye un “¿De donde son?” – “de Bucaramanga” – AHHH!!! Si Si Bravo, bravo bravo… ehh!!! se decidió mientras lo pobres seguían hablando, al final nadie los escucho pero nos la trajimos para Bucaramanga, los pastusos no alcanzaron ni siquiera a hablar por que las mesas de trabajo acabaron por pupitrazo después de la histeria colectiva :P

Ya de vuelta en Bucaramanga empezamos a camellarle, lo primero era definir fechas para trabajar sobre el tiempo, aun así se demoro un buen tiempo tener una fecha fija, se realizo un intento de votación por colibrí quedando para agosto, pero cometimos el error de no ver el calendario de la universidad antes de proponer las fechas de votación, coincidiendo entonces las JSL con las vacaciones de la UIS, por lo que nos quedaba imposible gestionar espacios dentro de la universidad. Para lo cual anteponiendo como excusa la falta de afluencia en la votación decidimos re-abrirla y realizamos la conocida técnica del traslado de votos, todos los cusolitas que estábamos en agosto nos pasamos para octubre y así se nos acomodaron mejor las cosas.

Entonces por esa época ya teníamos material publicitario asegurado, algunos recuerdos para los asistentes, contactos con un invitado especial, call for papers en curso, preinscripciones realizándose en la pagina web, algún dinero y con esperanzas de poder recaudar algo mas con los certificados… En fin, íbamos por buen camino. Solo nos faltaba asegurar el espacio físico en donde llevar a cabo las Jornadas para lo cual comenzamos a hacer lobby, primero en el auditorio Luis A. Calvo donde nos respondieron “Esta ocupado por el congreso de Ingeniería Industrial”. No importa, nos dijimos, entonces vamos al Ágora donde nos dijeron de nuevo “Esta ocupado por el congreso de Ingeniería Industrial”, ah! bueno vamos al auditorio de Mecánica y allá también nos encontramos con un “Esta ocupado por el congreso de Ingeniería Industrial”, y así pasamos por otros tres auditorios echándole la madre al dichoso congreso de Industrial…

En fin nos vimos otra vez obligados a un cambio de fecha, decidimos correr el evento 15 días. Lo primero fue asegurar un auditorio, seguido a esto comenzamos a cuadrar cronograma, confirmar ponentes, definir las temáticas para el foro, plantear discusiones para las mesas de trabajo, detalles de logística, etc.

Bueno hasta acá he hablado del proceso pero poco de la gente. En un principio eramos pocos ya que algunos de los que estábamos se graduaron, eramos básicamente 8 pero gracias al FLISoL y los talleres que realizamos periódicamente varias personas afines pero que no se habían involucrado mucho con la organización se nos fueron pegando y conformamos un buen equipo de trabajo. Puede ser una virtud o un defecto, pero en todo el proceso de organización del evento no tuvimos altercados entre nosotros, solo alguna que otra perla como por ejemplo la del personaje que había quedado encargado de enviar por fax las invitaciones que nos solicitaron y faltando 8 días para el evento en un charla en el IRC dice “marica, yo mañana envío las cartas de invitación, fijo!”, cartas que menos mal habíamos enviado dos meses antes ya que sabíamos que el encargado podía salir con esas. A pesar de los varios llamados por listas de correo a otros grupos o personas que quisiera colaborar fue poca la afluencia de colaboradores externos a los ya nombrados, contados con los dedos de la mano. Pero ya en el transcurso de las JSL nos enteramos de por lo menos la existencia de otro grupo en la ciudad y espero podamos coordinar con ellos para acciones futuras.

También quiero resaltar acá las personas de otras partes del país que nos colaboraron, como Kal que nos ayudo bastante en la parte web, Nonroot y Duma con el wargame, Neoecos con el asesino (que lamentablemente no se pudo realizar) y algunos premios para los juegos.

Desarrollo, como nos fue

Llego el día del evento, Viernes 31 de Octubre, llegamos todos al rededor de las 7 de la mañana para cuadrar últimos detalles. Los asistentes comenzaron a llegar puntuales, y como en todos los eventos se hacen filas enormes, menos mal fueron bastantes las personas que se encargaron de la acreditación y salimos bien librados de esto. Este día todo nos salio bien, creo que el único problema fue en el taller de virtualización ya que los equipos no tenían instalado el software requerido por los talleristas, pero para mi la instalada debería estar incluida en el taller. Paralelamente a las actividades del día tres de nosotros nos dedicamos a hablar con el sindicato de trabajadores de la universidad, ya que había rumores de ellos iban a cerrar la universidad al día siguiente. Luego de un tiempo nos confirmaron lo del cierre pero había posibilidad de que dejaran entrar a los participantes de las Jornadas. Aun así no nos confiamos y logramos conseguir otro auditorio a las 8 de la noche, el de la facultad de salud de la UIS.

Amaneció cerrada la universidad como nos lo habían dicho, y también la facultad de salud, por lo cual nos quedamos sin lugar. Hable en varias ocasiones con las directivas del sindicato obteniendo repetidamente respuestas negativas, no nos iban a dejar entrar. Decidimos esperar a que se levantara el cierre, que se tenia planeado vendría siendo a las 10 de la mañana. Pero no sucedió, en vez de esto tuvimos un roce con el sindicato y varios terminamos tildados de fachos y uribistas. Entonces nos llevamos a la gente al parque de los niños, tratando de quemar tiempo mientras conseguíamos algún lugar donde poder hacer las actividades del día. La primera opción fue alquilar un salón de festejos, que pagamos sin pensar, pero afortunadamente antes de dar esa información un amigo nos confirmo un espacio en la UNAB, discutimos entre todos en que íbamos a emplear la tarde, se decidió que en ponencias dejando la presentación de grupos y el foro para el día siguiente, citamos entonces a las 2 de la tarde. Ya en la UNAB todo se llevo a cabo a la perfección y quedamos de vernos en la noche para la tradicional Debeta.

Gracias a las influencias de algunas de nuestras compañeras los que primero llegamos terminamos escuchando vallenato y salsa, por lo cual varios de nosotros nos salimos a tomarnos unas polas en otro lado, estando en esas llegaron los paisas que rebautizaron las JSL como las Jornadas de Salsa Libre y con ellos convencimos a los otros para irnos a otro chuzo, para lo cual como es tradicional en Bucaramanga nos citamos en otro parque, y estando ya listos para entrar en un bar la mitad del parche decide abrirse y coger para una discoteca!!! bueno al final no importa porque después de emborracharnos en el bar nos fuimos para la discoteca a azotar baldosa con los que ya estaban allá :P

El domingo la madrugada fue dura, mas para los que nos quedamos hasta las 5 tomando, pero a las 9 ya estábamos saliendo hacia la finca/colegio para rematar la jornada. En la mañana se presentaron los grupos con mucha gente nueva y buenas ideas terminando casi a la una por lo cual todos salieron directo a comer lechona y llenar el estomago. Después de su correspondiente locha e integración al rededor de un balón, una piscina o un frisbee convocamos a las mesas de trabajo. Para saber lo que se hablo en las mesas lo mejo es ver la relatoría y las conclusiones. Ya terminada la discusión siguio el final y algunas despedidas.

Conclusiones, que nos quedo

Trabajar con personas comprometidas es lo mejor que se puede hacer en estos casos, nosotros lo hicimos de una forma excelente, creo que ninguna responsabilidad adquirida se evadió (aunque alguno que otro evadió tener responsabilidades :P ) a la vez que trabajamos siempre teniendo en cuenta el tiempo, por lo cual fueron pocas las que quedaron para lo ultimo pero al ya tener una persona encargada de esa dichas labores todo funciono, lo único fue algo que se nos salio de las manos como el cierre por parte del sindicato, para el cual fue como el plan Z el que nos termino funcionando.

Hablando de dinero, los certificados nos sirvieron mucho, financiaron los gastos debidos alcanzando hasta para subsidiar algo del costo del traslado y la comida del Domingo, definitivamente algo a tener en cuenta para las próximas JSL aunque les de pinta de un evento mas formal, no termina siendolo.

El wargame y los demás juegos tiene que estar definidos y montados con varios días de anticipación, por dejarlos para ser montados el día del evento solo pudimos jugar dos tardes al wargame y el asesino no se pudo realizar (Preinscripcion web para los juegos?)

Ya solo me quedaría agradecer todos los que hicieron posible este espacio, no solo a los organizadores y colaboradores, cada cual sabe el rol que desempeño, sino también a los asistentes ya que las JSL las hacen los que vienen, por que como organizador se esta prácticamente ocupado todo el tiempo y no podemos participar de la forma que quisiéramos, aun así me las goce.

19 de April de 2009

Camilo Alberto Jiménez Santofimio

Camilo Alberto Jiménez Santofimio
Hilillos-blog feed

GNU/Linux

Como novato, lo primero que me pregunto es ¿Qué es Software Libre? En la busqueda de la respuesta a esa pregunta es casi ineludible preguntarse también ¿Qué es GNU?, ¿Qué es Linux? Así, empecemos por el comienzo:
Clermont Technology: I teach, therefore you learn… or do you?

18 de April de 2009

Cristian Castiblanco

Cristian Castiblanco
Linux, Java y programación feed

Tip: resaltar sintaxis de código en nano

Nano es sin duda mi editor de texto favorito: es simple, es rápido y anticuado (?). Me encanta usarlo aun cuando estoy en un entorno gráfico y tengo la posibilidad de usar Gedit o Kate. Este tip es bastante sencillo y hace que nano resalte el código fuente de los programos que estemos editando.

Basta con crear un archivo llamado .nanorc en el directorio home (nano ~/.nanorc) de nuestro usuario, y poner algo como esto (para PHP):

syntax "php" "\.php[2345s~]?$"
color brightblue "(.*)\("
color blue "\$[a-zA-Z_0-9$]*|[=!<>]"
color green "(var|class|function|echo|case|break|default|exit|switch|if|else|elseif|@|while)\s"
color green "[.,{}();]"
color red "('[^']*')|(\"[^"]*\")"
color brightyellow "(#.*|//.*)$"
color brightyellow start="/\*" end="\*/"
color brightblue "(<\?(php)?|\?>)"
color white start="\?>" end="<\?(php)?"

Este es un listado completo de la configuración para el resaltado de sintaxis en otros lenguajes de programación. Personalmente tengo sólo los que uso (Java, C/C++, SQL, Python, HTML y PHP), pero hay muchos más. Además, como puedes ver son fáciles de crear o modificar. El resultado es algo como esto:

resaltar sintaxis nano

¡Nada mejor que nano!

Etiquetas: , , , ,

Who am I to blow against the wind?

"That's a thing that I keep In the back of my head".

Links:

Loading... Vote up! Vote down! Discussion

Ingeniero Forigua

Ingeniero Forigua
Ingeniero Forigua feed

Confirmadas actividades, conferencias, talleres para el flisol 2009 en bogota

Confirmadas actividades, conferencias, talleres para el flisol 2009 en bogota

Como decia antes el flisol, es el festival latinoamericaco de instalacion de software libre del mundo, ya que se reunen muchos paises en varias cuidades, a pesar de que la cuota del mercado de uso de software libre es menor al 1 %, la comunidad se esta triplicado y se fortalece aun mas y mas.

Con el comunicado de prensa numero 3 del 15 de abril se presentan oficialmente las atividades que se llevaran a cabo en la biblioteca publica virgilio barco, el 25 de abril de este año:

Conferencias:


09:00 am

Apertura del evento


10:00 am

Hackeando Facebook, una mirada alternativa a las redes sociales


11:00 am

Herramientas de Software Libre en la Web 2.0 para la enseñanza docente


12:00 m

De la U. a la Empresa con el Software Libre


01:00 pm

ARDUINO y la Electrónica Open Source (Porque el Hardware también es Libre)


02:00 pm

Arte y Linux, excelente combinación


03:00 pm

Sugar, una plataforma de educación libre


04:00 pm

Estrategias para la adopción del software libre en casa y en la empresa


05:00 pm

El Software libre en el modelo de computacion en nube


06:00 pm

Cierre del evento

Mayor info en: http://www.installfest.net/ColombiaBogota/2009/Conferencias


Stands (expociones) Donde se contara con la participacion de su servidor xD

  1. Ubuntu Colombia (Espero que me visiten)
  2. Proyecto OPDevel
  3. CorreLibre
  4. Sugar Labs Colombia
Talleres (cupo limitado)

Mayor info en: http://www.installfest.net/ColombiaBogota/2009/TalleresInformaticos


17 de April de 2009

Cristian Castiblanco

Cristian Castiblanco
Linux, Java y programación feed

Ejemplo fullscreen y cómo crear ventanas sin bordes en Java

Este es un tip bastante útil que nos permitirá poner las ventanas de nuestras aplicaciones en Fullscreen (pantalla completa), y de paso aprenderemos a crear ventanas sin bordes (lo cual es útil si queremos hacer algún splash de inicio para nuestra aplicación).

En el siguiente ejemplo usaremos básicamente los siguientes métodos y clases:

  • Método setUndecorated de la clase JFrame, el cual recibe un parámetro boolean. Si le enviamos true, quitará los bordes de la ventana.
  • La clase GraphicsDevice nos permite manejar objetos que representan dispositivos gráficos, como la pantalla del computador. En este caso creamos el  objeto con la instrucción GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice(); que nos devuelve un objeto que representa la pantalla en donde se está mostrando nuestro programa.
  • El método setFullScreenWindow, de la clase GraphicsDevice, nos permite poner nuestro programa en pantalla completa. Además, aunque no lo usemos en el ejemplo, contamos con el método isFullScreenSupported que nos permite saber si es posible poner la ventana en modo fullscreen o no.

Código fuente del ejemplo…

import javax.swing.*;
import java.awt.GraphicsEnvironment;
import java.awt.GraphicsDevice;
import java.awt.event.*;

public class EjemploFullscreen extends JFrame implements ActionListener{
        private JButton boton;
        private boolean estaFull = false;
        static GraphicsDevice grafica=
                GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();
        public EjemploFullscreen() {
                super("Ejemplo pantalla completa en Java");

                boton = new JButton("Presioname");
                boton.addActionListener(this);
                getContentPane().add(boton);

                setSize(640, 400);
                setUndecorated(true);
                setVisible(true);
        }

        public static void main(String[] args) {
                new EjemploFullscreen();
        }

        public void actionPerformed(ActionEvent e) {
                if(!estaFull)
                        grafica.setFullScreenWindow(this);
                else
                        grafica.setFullScreenWindow(null);
                estaFull = !estaFull;
        }
}

Descargar código fuente

Camilo Alberto Jiménez Santofimio

Camilo Alberto Jiménez Santofimio
Hilillos-blog feed

Hola!!! Nace un Blog

Nace un blog dedicado al software libre, Fedora y la Ingeniería Electrónica. Este es un espacio que deseo dirigir a novatos en GNU/Linux como yo. Personas que quieren iniciarse en el mundo del Software Libre, pero no saben nada del mismo. Como yo mismo he enfrentado, a veces es un poco difícil encontrar información en nuestra [...]

16 de April de 2009

Cristian Castiblanco

Cristian Castiblanco
Linux, Java y programación feed

La clase BigInteger en Java

BigInteger y BigDecimal son clases envoltura de los tipos primitivos int y double, sin embargo tienen ventajas sobre los tipos primitivos. Cuando necesites usar números grandes en Java la mejor opción es usar estas clases, ya que su limite de almacenamiento es el límite de memoria que tenga la máquina virtual de Java.

Además, estas clases proporcionan algunos métodos bastante interesantes, como las operaciones básicas o saber si el número es primo o no. Como siempre vamos con algunos ejemplos de apoyo:

Operaciones básicas con la clase BigInteger

En el siguiente ejemplo se hace uso de los métodos add, substract, multiply y divide para realizar las operaciones básicas de suma, resta, multiplicación y división:

import java.math.BigInteger;
public class PruebaOperacionesBasicas {
    public static void main(String args[]){
        BigInteger entero1 = BigInteger.valueOf(45);
        BigInteger entero2 = BigInteger.valueOf(15);
        //sumar con metodo add()
        String texto = "La suma entre "+entero1+
                " y "+entero2+" es "+entero1.add(entero2);
        //restar con metodo substract()
        texto += "\nLa resta entre "+entero1+
                " y "+entero2+" es "+entero1.subtract(entero2);
        //multiplicar con metodo multiply()
        texto += "\nEl producto de "+entero1+
                " y "+entero2+" es "+entero1.multiply(entero2);
        //dividir con metodo divide()
        texto += "\nLa división de "+entero1+
                " y "+entero2+" entre "+entero1.divide(entero2);
        System.out.println(texto);
    }
}

Números primos en Java

Este es un típico ejercicio que nos plantean en la universidad; se trata de hacer un listado de los primeros X números primos. En este caso BigInteger nos proporciona dos métodos muy interesantes: isProbablePrime y nextProbablePrime. El primero de ellos devuelve true si el número es probablemente primo (recordemos que es complejo saber si un número es o no primo cuando es demasiado grande); el segundo devuelve el próximo posible número primo a partir del valor que contenga el objeto.

La siguiente aplicación usa el método nextProbablePrime para listar los primeros 2000 números primos:

import java.math.BigInteger;
public class PruebaNumerosPrimos {
    public static void main(String args[]){
        //iniciar el entero en cero
        BigInteger entero = BigInteger.ZERO;
        StringBuffer texto = new StringBuffer();
        for(int i = 0; i<2000; i++){
            entero = entero.nextProbablePrime();
            texto.append(entero+"\n");
            entero.add(BigInteger.ONE);
        }
        System.out.println(texto);
    }
}

Otros métodos interesantes

La clase BigInteger proporciona además otros métodos que nos ahorrarán bastante tiempo y líneas de código:

  • pow, nos permite elevar un número a la potencia que deseemos.
  • comparteTo, nos permite comparar si un BigInteger es mayor, igual o menor que otro.
  • min y max, nos permiten saber cuál de los dos BigInteger es menor o mayor.

Como mencioné al principio, también es posible usar la clase BigDecimal que funciona de manera similar pero con números de coma flotante.

Descargar código fuente de ejemplos

Rodrigo Carreño

Rodrigo Carreño
Rodrigo C@rreño feed

Matix en Windows

Muy gracioso jajajajaja....

15 de April de 2009

weblogs/arhuaco/lowfill

El weblog de Diego tiene nuevo contenido.

http://zeitgeist-maktub.blogspot.com/

Supongo que seguirá actualizándose mientras prepara su viaje en bicicleta por Brasil.

Loading... Vote up! Vote down! Discussion

Carlos Perilla

Carlos Perilla
Valkertown Blog feed

Setting up Redmine with archlinux Part 2

On the previous part we downloaded the source and setup the system so can being setting up everything. To be honest Apache is not really required at all on this setup, it was required for me since I run other stuff on the same server, so let’s begin with it. All that we need is to [...]

14 de April de 2009

PARA DONDE VA LA MENSAJERÍA UNIFICADA.

Han pasado tantas cosas en la industria y están tantas por pasar, que ya es necesario hablar de esto.

Primero empecemos por ver de dónde viene. La mensajería empezó como todo el mundo se imagina, transportando físicamente mensajes de un lado para otro y por eso su nombre, pero con el avance de la tecnología se dio origen a dos nuevas tendencias.

Por un lado el correo electrónico se convirtió en un indispensable sistema de mensajería, al ser mucho más rápido, confiable y eficiente que el correo físico y lo más importante muchísimo más barato.


Por otro lado el sistema de mensajería más popular son los buzones de voz, los cuales en la mayoría de los casos, los fabricantes de plantas los licencian ya sea por cantidad o por tamaño.


En ese momento de la historia se dio el primer intento de mensajería unificada y era que algunas plantas de teléfonos te enviaban una copia del buzón de voz a tu correo electrónico, en un archivo WAV. Esto fue lo primero que se conoció como mensajería unificada, pero tenía un problema y era que tenías dos copias desarticuladas de tus buzones de voz, así que tenías que gestionar dos veces tus mensajes de voz. Eso no parecía tan grave, pero era algo para solucionar, así que la industria pronto escucho el clamor del público y empezaron a aparecer soluciones que tenían una sola versión de tus buzones de voz y cuando borrabas un mensaje de voz de tu correo electrónico, se borraba de tu teléfono, a la versión anterior dejo de llamarse mensajería unificada, para llamarse mensajería integrada.


Hasta ese punto parecía estar todo bajo control, pero una nueva tendencia empezó a cambiar las necesidades de comunicaciones y fue la mensajería instantánea, muy mal llamada por algunos CHAT. Así que las siguientes generaciones se comunican mas por Messenger que por teléfono convencional y en este punto, de nuevo tenemos que se desarticularon las formas más comunes de comunicación.


La telefonía y la mensajería empezaron a competir por cuál sería la forma de comunicación habitual, la industria generó dos respuestas, por un lado le empezaron a dar capacidad de telefonía a los sistemas de mensajería instantánea, como el caso de skype y por el otro lado, a dar capacidad de mensajería instantánea a los sistemas de telefonía, como es el caso de los softphones, de algunas plantas de teléfonos actúales. hasta este punto todavía no se tenía una solución completa, pero se tenía claro el camino a seguir.


La respuesta final de la industria fue unificar el teléfono del escritorio y la mensajería instantánea, en un solo dispositivo. En este nuevo dispositivo o aplicación se puede, leer correo, hablar por teléfono y participar en una sesión de mensajería instantánea.


Lo siguiente que se integró fue la identidad, ya que con tu dirección de correo te identificas, con tu teléfono, con tu mensajería instantánea y por supuesto con tu correo electrónico. Aquí nació el concepto de presencia, ya que si estás disponible o no, lo sabe al mismo tiempo, tu teléfono tu correo y tu mensajería instantánea, así que en el concepto de comunicaciones unificadas ya estamos unificando 4 cosas. correo, mensajería, telefonía y presencia.


Por otro lado existían más formas de comunicación que buscaban ser más populares, como el video y la colaboración.


En el caso del vídeo se le incluyó una cámara a la interfaz donde ya integramos todos los servicios y empezamos a tener de manera cómoda y económica video, no solo para video telefonía sino también para videoconferencias. En este punto las comunicaciones unificadas, ya tienen 5 tecnologías unificadas.


En el caso de la colaboración, el mercado tiene muy buenas soluciones pero la mayoría son rentadas y costosas. Existen muy pocas opciones que se pueden comprar y no se dan como un servicio. Las nuevas propuestas de comunicaciones unificadas incluyen este tipo de servicios dentro de costo de tu “planta telefónica”. con estos servicios no solamente puedes compartir un documento una presentación sino también compartir aplicaciones y dar control remoto a un interlocutor. Todo esto está incluido dentro de la solución y sin tener que pagar un costo mensual.


Hasta este momento tenemos que nuestra aplicación de comunicaciones unificadas hace 6 cosas que antes estaban dispersas en 6 dispositivos.


El concepto de planta de teléfonos conocido desde hace muchos años por las empresas está tendiendo a desaparecer, la nueva tendencia son los sistemas de comunicaciones unificadas. En estos sistemas no existe físicamente una planta de teléfonos, sus funciones son reemplazadas por aplicaciones corriendo en un servidor, que te permiten, leer el correo hablar por teléfono y tener una sección de mensajería instantánea, tener video conferencias, colaboración, desde el mismo dispositivo. Ya no necesitas saber números de extinción, ya que usando el nombre o el correo electrónico de la persona con la que quieres hablar, puedes hacerlo. Sino te contesta le puedes dejar un mensaje en su correo de voz, copia de este, será enviada a su correo electrónico, desde el cual te puede devolver la llamada, o devolverte un correo, o iniciar una sesión de mensajería instantánea, ya que cuando esté este leyendo o escuchando este correo, sabrá por un identificador visual si estás o no disponible.


Todas estas aplicaciones ya están disponibles en el mercado, su velocidad de implementación dependerá más de temas culturales, más temas técnicos o económicos, algunos de los supuestos que debemos dejar atrás son:


1) El concepto actual de planta de teléfonos.
2) La necesidad de un numero extensión.
3) El concepto de llamadas de larga distancia.
4) El que cuando viajas tu número extensión se queda en tu oficina.
5) La necesidad de un teléfono físico para poder hablar.
6) Las videoconferencias son costosas.
7) Las herramientas de colaboración son rentadas y costosas.


La confiabilidad, disponibilidad y movilidad que hasta ahora han tenido las empresas ya es muy superior en los nuevos sistemas de comunicaciones unificadas, a lo que lograban con costosas plantas de teléfonos, cuya virtud era que servían para hablar por teléfono.


En un futuro no muy lejano, este tipo de funcionalidades podrían estar disponibles en la telefonía pública pero aquí los límites no son culturales, son políticos y económicos ya que grandes monopolios se verán afectados por la facilidad y economía de las nuevas formas de comunicación.


Hay países donde al nacer ya tienes un correo electrónico, pronto usarás este correo no solo para enviar texto sino que también podrás enviar voz video y mensajería instantánea.


La mayoría estas tecnologías llevan muchos años disponibles en el mercado, lo novedoso es que de manera económica, tengamos una sola aplicación que hace todo esto.


Estos productos de momento no vienen en marcas tradicionales del mundo de la telefonía, aunque se espera que pronto los fabricantes tradicionales de plantas telefónicas sigan esta tendencia.


Como siempre en el mundo la tecnología, las crisis son para los que no entienden los cambios.

Atorresa.blogspot.com

Add to Technorati FavoritesAgregar esta página a Mister Wong
Camilo Uribe

Camilo Uribe
Random Thoughts feed

Discurso de Steve Jobs a los graduados de Standford del 2005




13 de April de 2009

Clermont Technology: Knol: Comparte lo que sabes

11 de April de 2009