Maria Magdalena

Hace unos meses Discovery Channel ha estado difundiendo una serie de documentales de la serie «Las escrituras» en donde narran historias referentes no solo a la Biblia sino también a muchas escrituras halladas recientemente, las analizan y explican si lo que dicen las escrituras son ciertas o no. En un capítulo narran la historia de Maria Magdalena la supuesta prostituta.

Según éste documental Maria Magdalena fue difamada con el argumento de que era prostituta con el fin de que Pedro se hiciera del liderazgo del movimiento del cristianismo. Que en realidad quienes debieron formar parte fundamental de este movimiento debieron ser los seres que nos dan la vida las cuales son consideradas culpables del cambio, me refiero a Eva y a Maria Magdalena.

En el libro de Dan Brown «El Codigo DaVinci», afirma que Maria Magdalena no solo estaba en la última cena, sino que era la compañera (esposa según traducciones antiguas) de Jesús y estaba embarazada durante la crucifixión, y este secreto lo mantenía una sociedad secreta a la que pertenecía Isaac Newton, Leonardo DaVinci, Víctor Hugo, etc. a lo largo de estos años desde la muerte de Jesús.

He leído muchos comentarios sobre el libro «El Codigo DaVinci» y muchos de los críticos mas duros dicen que éste libro es anti-católico y otros lo elogian fervientemente.

Mi opinión personal es que el libro es interesante para la lectura, lo mantiene a uno en suspenso todo el tiempo. Hay muchas supuestas revelaciones de este libro que necesitan ser comprobadas. Respecto al caso de Maria Magdalena recientemente la misma iglesia católica se retractó al considerarla como prostituta.

Programmer’s Block

Los escritores y compositores alguna vez han tenido que padecer del «Bloqueo de Escritor», es una situación en la cual el ingenio y la creatividad propia de ellos desaparece por un periodo de tiempo (días, meses, años) en el cual no pueden escribir un solo párrafo coherente.

Desde hace algunas semanas me encuentro en una situación similar, pero en este caso el término correcto sería «Bloqueo de Programador»… es decepcionarte sentarse frente al computador sin poder programar o continuar/modificar los proyectos que tengo pendientes. Lo único que he estado haciendo es responder mis correos y dedicar el tiempo libre a terminar de leer «El Codigo DaVinci».

Estoy seguro que el stress es una de las causas de este mal. Voy a ver como «despejo» mi mente en estos días.

Los Miserables según Bille August

Los Miserables Los Miserables es el libro de Víctor Hugo que llego a mis manos gracias al diario El Comercio, allá por el año 99, se convirtió en mi lectura preferida y posiblemente sea el causante de que mi vida haya cambiado de rumbo desde ése entonces. Los Miserables es un libro que trata fundamentalmente de acontecimientos en la sufrida vida del expresidiario Jean Valjean. Es una historia larga, creo que en otro post puedo comentar mejor respecto a esa obra maestra.

Éste post es para comentar la película “Los Miserables” dirigida por Bille August.
La película salió a la cartelera en 1998 (según lo que pude averiguar). Quedé profundamente decepcionado al verla. Sin embargo los actores fueron de lo mejor: Liam Neeson (Jean Valjean), Uma Thurman (Fantine) .

Esta película lo único que hace es narrar la historia de un Jean Valjean perseguido por el inspector Javert, pero se olvidaron de varias situaciones y personajes que hacen que la historia tenga sentido o que se parezca un poco a la historia original.

La película muestra un Jean Valjean muy distinto, tampoco llegan a igualar la personalidad de muchos de los personajes de la historia y muchos de ellos ni siquiera están. Es una decepción.

Javert en la historia original es un policía rudo e incapaz de violar las leyes y se comporta como tal pero no es malvado como lo pintan en la película.

Posiblemente no se pueda narrar una gran historia en un poco mas de 2 horas pero eso no es excusa para cambiar parte del argumento en los puntos mas importantes.

Gold Member!

Mientras web-eaba por la red, me di una vuelta por codeproject.com para hacer un par de consultas. Luego de poco rato me dí con la sorpresa que mi membresía subió de categoría a Gold. No se que criterios tomaron en cuenta para elevarme a uno de los rangos mas altos en este site dedicado a la programación. El rango maximo Platinum lo poseen 13 miembros. Esta comunidad tiene 1.9 millones de usuarios registrados.

Gold Level

Mi ficha de miembro esta ubicado en Ivan Cachicatari’s online profile.

Gracias Codeproject.com!

CodeProject

Fibonacci y el Código Davinci

El codigo Da VinciPara quienes estamos relacionados con la Programación y las Ciencias de la Computación, alguna vez nos hemos que tenido que topar opn la serie de Fibonacci, ya sea para programarla o para estudiar su comportamiento. Cada número de esta famosa serie se obtiene de la suma de los dos anteriores.

La serie de Fibonacci tiene muchas aplicaciones, no solo en la computación sino también en ciencias que en las cuales las matematicas aparentemente no tienen mucho que ver.

Me tomo por sorpresa leer acerca de ésta (y otras cosas mas) en el libro: El código da Vinci de Dan Brown, por que es utilizada para encriptar un mensaje. No solo se trata de la serie de Fibonacci sino también del numero Phi = 1.618 llamado también la divina proporción. Algunas cuestiones matematicas estan muy relacionadas con la naturaleza las cuales se debe tener en cuenta al momento de pintar un cuadro.

Escribiré un post acerca de este interesante libro cuado termine de leerlo. Mientras tanto…

Sabemos que generar estos números es sencillo de programar. Debido a que los valores de la serie se hacen grandes muy grandes, el reto es generar la mayor cantidad de numeros de Fibonacci. Los tipos de datos números en los lenguajes de programación (int, double, float) tienen sus límites y el asunto es romper esos límites.

El siguiente es un programa es la forma recursiva de obtener el numero N de la serie de Fibonacci:

unsigned long Fibonacci(unsigned int n)
{
    if ((n == 0) || (n == 1))
	{
        return 1;
	}
	else
	{
        return (Fibonacci(n -1 ) + Fibonacci(n - 2));
    }
}

Puede que el programa sea dañino para la salud del Sistema Operativo, por ello también les escribí una versión no recursiva.

unsigned long Fibonacci(unsigned int n)
{
    if ((n == 0) || (n == 1))
	{
        return 1;
	}

	unsigned long last = 1;
	unsigned long curr = 1;
	unsigned long tmp  = 0;

	while(n > 2)
	{
		tmp = curr;
		curr = curr + last;
		last = tmp;
		n--;
	}
	return curr;
}

Con la primera función el calculo del numero 30 de Fibonacci demorará a l rededor de 5 segundos, para el numero 40 demorará unos minutos dependiendo del procesador que tengan. Si utilizan una cray esto sucederá un unos cuantos milisegundos. Hay quienes dicen que una cray se sale de un bucle infinito en 6 segundos.

Con el segundo programa logré calcular el numero 47 (2971215073), a partir del numero 48 empieza el desbordamiento. Existen otras formas de obtener el esto de números.

El programa para probar cualquiera de las dos formas es:

int main(int argc, char* argv[])
{
	if(argc <= 1)
	{
		cout<<"Modo de uso :"<<endl;
		cout<<"\t"<<argv[0]<<" N "<<endl<<endl;
		return 1;
	}
	cout<<Fibonacci(atoi(argv[1]));
	cout<<endl;
	return 0;
}

Si tienen problemas para compilar no olviden agregar el parámetro –lstdc++ al gcc (linux)

EXPRESS OLE DB – Visual C++

Cuando uno empieza a desarrollar aplicaciones en Visual C++ y tiene la necesidad de acceder a datos, se presentan muchas alternativas para ello. Muchas de las alternativas no se llevan bien entre ellas mismas lo que hace que la migración o el cambio de tecnología sea doloroso (ADO, DAO, OLE DB, etc)

Sypram es una compañía que ha desarrollado una librería que permite realizar una conexión a una base de datos desde Visual C++: EXPRESS OLE DB es una librería completa que extiende el uso de OLE DB sin la complejidad de éste. Es de muy fácil utilización y una alternativa muy robusta para el acceso a base de datos en Visual C++.

Actualmente utilizo esta librería en mis aplicaciones, pero aun sigo utilizando DAO como segunda alternativa.

Lo mejor de todo es que esta librería es de de distribución LIBRE. Puede ser descargada desde:
http://sypram.com/Download.htm

TLC y las patentes de software

Por: Dr. Ernesto Cuadros


Estimados amigos,

Hace tiempo que se vienen ventilando en nuestra sociedad los
posibles beneficios que traeria firmar el TLC con USA. Casi todos los
dias escucho propaganda de todo tipo al respecto tratando de
concientizar a los peruanos de los beneficios que tendriamos. El
Colegio de Ingenieros tambien sera consultado, etc.
No dudo que podrianm haber beneficios al expandir nuestros mercados
pero debemos tener cuidado con ser victimas en esto tambien.

Una de las cosas que muchos ignoramos es que el TLC impone una
seria de patentes entre ellas las de software. Para muestra un boton:
sabian que Microsoft ha patentado el concepto del doble click del
mouse? Eso significa que nadie puede usar ese concepto sin estar
obligado a pagarles o a negociar con ellos.

Entremos a google al siguiente link:
double-click patent

y entremos al primer link que aparece en la lista y que pertenece a
la Oficina de Patentes de los Estados Unidos y donde vemos la patente
numero 6,727,830 a nombre de Microsoft Corporation. Lean lo qeu ellos
reclaman en la seccion de *Claims.*

Analizando con calma este asunto significa que ningun otro sistema
operativo esta libre de usar el doble click para iniciar una
aplicacion. Que les parece?

En la practica significa que el estado peruano estaria sepultando
todo tipo de iniciativa de desarrollo de software peruano sin
depender de la voluntad de Microsoft.

Les agradeceria que le hagan llegar este email al embajador de USA en
Lima, congresistas involucrados, ministros y medios de prensa. Las
patentes de software no pueden estar incluidas en el TLC de ninguna
forma.

Puede ser que el TLC traiga beneficios pero este asunto de las
patentes de software es algo altamente cuestionable. Me parece tan
absurdo como si yo patentase que mi modo de caminar es intercalar los
pies para dar un paso (primero el izquierdo, luego el derecho, luego
el izquierdo de nuevo, etc.) Con esa patente podria salir a la calle
a exigir que nadie camine de esa forma y todos tendrian que saltar
dos veces con el pie derecho y despues recien poder cambiar al
izquierdo y podria enjuiciarlos o pedirles que me paguen si usan mi
patente.

Asi de absurdo como esta patente hay muchisimas mas que podrian
entrar en el TLC si no se tienen las cosas claras.

Saludos cordiales,

Dr. Ernesto Cuadros-Vargas
Sociedad Peruana de Computacion, Presidente

ASCII Art

ASCII Art es una forma arte basado en caracteres ASCII (American Standart
Code for Information Interchange), el lienzo es un archivo de texto plano, y la herramienta cualquier editor de archivos de texto.

Encontré miles de paginas relacionadas con éste arte. Pero con un solo link basta, Google tiene en su directorio un completo repertorio de enlaces a páginas que contienen ASCII Art:

http://directory.google.com/Top/Arts/Visual_Arts/ASCII_Art/


 .'/,-Y"     "~-.
 l.Y             ^.
 /\               _\_
i            ___/"   "\
|          /"   "\   o !
l         ]     o !__./
 \ _  _    \.___./    "~\
  X \/ \            ___./
 ( \ ___.   _..--~~"   ~`-.
  ` Z,--   /               \
    \__.  (   /       ______)
      \   l  /-----~~" /      -Row
       Y   \          /
       |    "x______.^
       |           \
       j            Y

Este arte se ha extendido tanto que existen herramientas como Figlet para los tipos de letra, aqui una muestra:

 _          _   _           _                _
| |    __ _| |_(_)_ __   __| | _____   _____| | ___  _ __   ___ _ __
| |   / _` | __| | '_ \ / _` |/ _ \ \ / / _ \ |/ _ \| '_ \ / _ \ '__|
| |__| (_| | |_| | | | | (_| |  __/\ V /  __/ | (_) | |_) |  __/ |
|_____\__,_|\__|_|_| |_|\__,_|\___| \_/ \___|_|\___/| .__/ \___|_|

También se han desarrollado técnicas que convierten una imagen de mapa de bits en un ASCII Art, en este caso se utilizan técnicas y algoritmos avanzados que tienen que ver con la tonalidad y densidad de los caracteres.

ASCII Art

En este enlace pueden ver esta fotografía representada en formato ASCII:

http://www.latindevelopers.com/ivancp/images/picture.htm

un dia especial

Para el resto de personas con las que me tope ayer … (20 Abril) les parecio un dia cualquiera, pero no lo fue para mi… por que ayer cumplí un año mas. Muchos de mis amigos se acordaron de mi y me saludaron. Un primo (Fredy) me llamo desde Pucallpa para desearme lo mejor y mucha gente a la que le tengo que agradecer el que se haya acordado de ése dia.

El ritual de la torta y la cancion con mis amigos mas cercanos (desde hace un tiempo) hace que uno se sienta importante. Honestamente no esperaba esa ceremonia, lamentablemente era miercoles y todos tenemos cosas que hacer. Lo mejor de todo es que la pasé muy bien.

Gracias a todos.

de navisoft a latindeveloper

Muchos de nosotros adoptamos (o se nos denomina) con seudónimo esto sucede cuando empezamos nuestra vida en el ciberespacio o cuando nuestros amigos simplifican nuestros nombres, comportamiento o parecido con algo. Algunos toman especial atención a la forma o pronunciacióndel nick, en fin… Incluso se pueden encontrar nick’s sumamente raros o extravagantes (huachafos) aqui una muestra de algunos nick’s que pueden ser considerados dentro de esa clasificación:

– – –^[nick]^– – –

•·.·´¯`·.·• nick•·.·´¯`·.·•

`·.¸¸.·´´¯`··._.· nick`·.¸¸.·´´¯`··._.·

(¯`·._) nick(¯`·._)

¯¨’*·~-.¸¸,.-~*’ nick¯¨’*·~-.¸¸,.-~*’

Oº°‘¨ nick¨‘°ºO

Algunos adoptan nombres de personajes famosos como neo o morfeo (de Matrix) en combinación de caracteres extraños que adornen la espresión.

En realidad, depende de cada uno. Es como la tonada de los celulares.

En el caso del mio (navisoft) empezó gracias a que una gran amiga (Danitza) me empezo a decir «navi» (inversa de ivan) y como casi todos los fanaticos de la programación (y todo lo relacionado) hice una combinación este apodo con «soft» … algo huachafo hoy en dia… Me quedé con ese nick varios años hasta hoy.

Hoy decidí cambiar por muchas razones, entre ellas por que «navisoft» ya es una marca registrada y ya no me agrada. Por otro lado Latindevelopers.com ha crecido y no se ve bien que el admin tenga un nick infantil como navisoft.

De ahora en adelante cambio de nick pero seré el mismo… es mas trataré de mejorar en todo lo que pueda… por que nadie es perfecto.

Ahora mi nick es «latindeveloper».