September 27th, 2004
Este verano en televisión repusieron la serie de documentales de JJ Benítez, “Planeta Encantado”. En esta serie, algunos de los documentales, hablaban de maravillas del mundo antiguo como las pirámides o el Machu Pichu. En ellas nos explicaba que las capacidades técnicas y los conocimientos de álgebra y física necesarios para levantar esos monumentos eran de origen divino o extraterrestre. Este caso no es aislado ya que existen otros autores que hablan de otros temas como la gran muralla china, o del viaje de Colon. Mi problema no esta es que estos seudo científicos charlatanes escriban libros, sino en que haya gente que los crea.
En la sociedad actual, la sociedad de las telecomunicaciones y el la carrera espacial, creemos en nuestra enorme vanidad que el ser humano actual es mas inteligente que sus antepasados, que aquellos ignorantes egipcios solo sabían cultivar trigo.
A diferencia de lo que se cree los antiguos egipcios, chinos o aztecas eran al igual que nosotros homo sappiens sappiens, por lo tanto su capacidad para pensar era la misma. Pongamos como ejemplo los egipcios:
A nadie extrañaría hoy día que se construyera un edificio de diez o 15 plantas, puesto que es algo cotidiano en esta sociedad, y diariamente se estudia mejorar esa ingeniería. Pues ahora imaginemos un pueblo que venera a sus muertos mas que ningún otro en la historia, y que para ello construye piramides. Seria también algo cotidiano (construyeron hasta 42 pirámides a lo largo de algo más de 1000 años) y tendrían los conocimientos necesarios para ello.
Y es que a veces olvidamos que en el mundo antiguo existieron grandes matemáticos como Zenón, Eudoxio, Euclides, o los aun hoy genios de las estudiados, Arquímedes y Pitágoras.
Enterremos la vanidad humana, junto con aquellos que la explotan, alegando intervención divina.
Posted in Made in Alvaro | 3 Comments »
September 18th, 2004
Hola korsarios, he vuelto con más cosillas en flash que hacía tiempo que no escribía nada. Esta vez os presento un reproductor de FLV, un formato de video propietario de macromedia de increible compresión.
Por exigencias del trabajo tuve que buscar algún reproductor para este tipo de formato por internet, pero de todos los que encontré (que no fueron pocos), muchos eran de pago, la mayoría tenían un estilo fijo sin posibilidad de modificarlos y otros no tenian ningún control de reproducción.
Así que aquí teneis un reproductor con streaming para formato flv con diversos controles, la posibilidad de cambiar su aspecto y 100% GPL.
Avidos FLV Player | Descargar Player
El reproductor tiene las siguientes características:
- Control de Play: un botón para reproducir la película.
- Control de Pause; un botón para detener la reproducción
- Control de Inicio de Película; un botón para volver al principio de la película
- Control de Volumen; un cursor que te permite ajustar el volumen de audio de la película
- Control de TimeLine; un cursor que te permite desplazarte por la película arrastrándolo hacía adelante y atrás.
- Display de tiempo; un marcador que indica el tiempo de película transcurrido.
Al realizar el reproductor me encontré con un problema grave, y que no he visto ningún otro reproductor que lo solucione, y es el de determinar el tiempo total de la película, puesto que flash solo me proporciona el tiempo transcurrido y el tamaño total en Bytes.
Para solucionar el problema, realizo una estimación poco estricta en la que determino aproximadamente unos 3400 Bytes por segundo de video(con una compresion o una resolucion distintas a las tomadas por mí, esta estimación no es valido). Teniendo en cuenta que esta aproximación es bastante imprecisa, al acabar el video tomo el tiempo total de reproducción, y corrijo la duración estimada. Este segundo valor es totalmente fiable.
El conocer el tiempo total es simplemente para darle funcionalidad al timeline. Siempre podría deshabilitarlo hasta que termine de reproducirse el video como hacen otros players, pero perdería así la utilidad de la linea de tiempo.
Bueno, espero que utiliceís con sabiduría el reproductor y recordad no darle de comer después de las once.
Posted in General, Programación | 52 Comments »
September 16th, 2004
Ya esta listo para descargar el Service Pack 2 de Windows Xp. Hay dos tipos de descargas: una mas liviana para ser instalada en un único ordenador que por desgracia (por ahora :P) solo puede ser descargada desde Windows Update y la versión más grande de 260 MB para instalar en varios ordenadores en red que si podemos descargar directamente.
Aun no lo he instalado pero por lo que he leído la mejor solución que Microsoft a encontrado para solucionar los problemas de seguridad que en los últimos años trae de cabeza a la compañía es incluir en este service pack un firewall. La verdad es que pese al esfuerzo de Microsoft por convertir el uso de esta nueva capacidad en algo trivial me temo que para gente sin demasiados conocimientos supondrá un problema. A parte de eso creo que no es mala solución si puedo navegar mas seguro, al fin y al cabo, yo ya utilizaba un firewall (ya veremos con cual me quedo :D).
Cuando lo instale y lo pruebe os contare mi experiencia.
Leed y propagad Korsarios.
Posted in Microsoft | 4 Comments »
September 2nd, 2004

Después de dos meses con mi familia recuperando fuerzas me va a ser muy difícil dejarlos. Aunque los veré en 15 días solo será por dos y acostumbrarme a este nuevo tempo me va a costar mucho trabajo.
Y eso que no me explico como podré echar en falta las constantes interrupciones de mis sobrinos cuando intento trabajar o estudiar. O tener a mi madre todo el día encima como si aun fuera un niño o discutir con mi padre hasta terminar enfadados, en fin, la familia.
A mi sobrino le gusta dibujar y… bueno todos los días me pide un folio para plasmar su arte. Como aún no tiene un concepto claro del tiempo le he propuesto un juego, le he dejado 15 folios en la impresora, cada día cojera uno, cuando no quede ninguno será el día que vuelva. Le ha gustado mucho el juego. Ojalá se acaben pronto los folios.
Posted in Made in David | 3 Comments »
August 16th, 2004
Posiblemente uno de los puntos mas fuertes de la tecnología .NET sea las capacidades de Reflexivas que le permiten recolectar información de un assembly mediante la lectura de metadatos internos. Una de las funcionalidades donde mejor se aprovecha esta capacidad es a la hora de debuggear, y capturar Excepciones.
Cuando, en proceso de debbugeo capturamos una excepción, y analizamos las propiedades que nos proporciona la clase Exception, para descubrir el objeto que produjo el error. Pero cuando exploramos el objeto Exception, encontramos innumerables mensajes y códigos de difícil comprensión. Por ello intentaremos en este post aclarar los campos con la información más relevante para analizar el error.
Analizando Exception encontramos los siguientes campos:
- Message: Te muestra un mensaje explicativo donde se describe el como y donde se produjo el error. Es quizás la propiedad mas útil para conocer el error que se ha producido.
- Source: Te muestra el nombre del assembly y el namespace en el que se inició la excepción. Esta propiedad es útil cuando trabajamos con varios asseblies referenciados en el proyecto, para conocer en cual de ellas se produjo el error.
- InnerException: Si la excepción que se ha lanzado es causada por otra excepción en un nivel inferior, te proporciona un objeto System.Exception de esta excepción primaria, para su análisis.
- StackTrace: StackTrace muestra los procedimientos estaban siendo ejecutados en el instante en el que la excepción fue lanzada. Esta propiedad te permite conocer el estado de la pila y ver así en que situación del sistema había otros procesos en ejecución.
- HResult: Este numero(pasado a Hexadecimal) representa 3 campos con información acerca del error. Un campo te indica el si el la excepción es informativa, una advertencia o un error. Otro campo te indica la zona del sistema donde se produjo el error. El tercer y ultimo valor representa un código único que representa al tipo de error producido.
- TargetSite: Si al producirse una excepción, no es posible saber que método la ha lanzado, esta propiedad saca de la StackTrace el ultimo método en ejecución en el instante antes de que se iniciara la excepción, y te lo muestra como causante de esta. Normalmente la información que te proporciona TargetSite coincide con la información que te proporciona ExceptionMethod, aunque puede ocurrir que no sea así cuando el error no lo haya producido el ultimo método ejecutado en la pila, sino algún hilo de ejecución simultaneo o un error externo a la aplicación.
- ExceptionMethod: Esta propiedad te proporciona información acerca del método que inicio la excepción. Esta propiedad te muestra la información del método, sus parámetros, el alcance, el namespace o el assemby al que pertenece, a través de la propiedad “System.Reflection.MethodInfo”. También te permite conocer es estado de este método en el momento de la ejecución, mostrándote el valor de los parámetros o el valor devuelto por este.
Se podría entrar más en profundidad y por ejemplo, analizar los bytes almacenados en los registros de memoria o en la pila de procesos, o las direcciones de los punteros, pero la complejidad de ese análisis es grande y con las herramientas ya comentadas para mi son mas que suficientes.
Bueno Korsarios, espero que os sea de utilidad esta pequeña ayuda. Larga Vida y Prosperidad.
Posted in .NET, Programación | 1 Comment »
August 8th, 2004
Malas noticias amigos, una Web mas que no podremos consultar en Firefox. Hace poco la Junta de Andalucía ha actualizado el diseño de la Administración Publica y aunque han mejorado ampliamente el diseño han mermado su funcionalidad o al menos el numero de exploradores en el que funcionaba. El causante de tanto alboroto es este JavaScript que los autores han decidido incluir para dotar al buscador en cuestión de cierto dinamismo.
function quitarAvisos()
{
text_TIPOACCESOObli.style.visibility = "hidden";
textoAvisoForm.style.visibility = "hidden";
}
function Validar()
{
var resultado = true;
// Mensajes de error no visibles por defecto
quitarAvisos();
if (document.formSel.parfTIPOACCESO.value=="-1") {
text_TIPOACCESOObli.style.visibility = "visible";
resultado = false;
}
if (!resultado)
textoAvisoForm.style.visibility = "visible";
if (resultado==true) document.formSel.cf.value=0;
return resultado;
}
Lo cierto es que este código cuyo único propósito es mostrarnos unos avisos si hemos dejado algún campo sin marcar y ahorrarnos el envió del formulario si así fuera no es interpretado por Firefox. Pero aun así en un alarde de buenas intenciones el navegador de Mozilla hace el submit y envía el formulario. Entonces ¿Cuál es el problema? El problema es que los autores han incluido este atributo en el formulario:
<input value='1' name='cf' type='hidden'>
El cual puede encontrarse en dos valores 0 si el contenido que se envía es correcto y 1 si no lo fuera. Por defecto esta en 1 así que el servidor devuelve la petición porque Firefox al no entender el JavaScript no es capaz de cambiar este valor. Alguien mas malicioso que yo podría pensar que tantas molestias para asegurarse en local de que lo que se envía al servidor es correcto seria un indicio de que en el servidor no se lleva a cabo ningún tipo de comprobación. Malas noticias de nuevo en el servidor se comprueba todo. ¿Entonces? Pues entonces parece que no quieren que los que tengan Firefox consulten el buscador porque podrían haberse limitado a usar el JavaScript para mostrar y ocultar las capas que contienen el mensaje de error y delegar la comprobación al servidor como ya esta hecho. En fin… ¿vosotros que pensáis? leed y propagad Korsarios
Posted in Programación | No Comments »
July 30th, 2004

Microsoft lanza la barra de herramientas MSDN para Explorer (¡Que sorpresa!). Aunque es cierto que con todas sus nuevas funcionalidades no puede competir con la multitud de extensiones de Firefox, esta barra dota de características interesantes al navegador de Microsoft.
De esta forma a aquellos que aun se sienten atados a este navegador y a aquellos otros, en los que me incluyo, que de vez en cuando se ven obligados a echar mano de él, tendran algunos alicientes más a la hora de hacerlo:
- Accesos directos para todas las Web incluidas en el MSDN
- Buscador que incluye búsqueda en google, MSDN, panorama box y algunos otros
- El botón resaltar emulado al de la barra de google
- Un botón para traducir la Web o el contenido del portapapeles
-
Zoom en la pagina Web
-
Paginas relacionadas
- Noticias
-
Y bloqueo de popups
En fin, no es la solución pero es el camino. Leed y propagad Korsarios.
Posted in Microsoft | 6 Comments »
July 20th, 2004
Hola de nuevo camaradas, hemos vuelto de nuestro largo periplo por los mares del conocimiento, pescando ideas, inquietudes y sabiduría, para aportar un poco de nuestra sabia a la blogosfera. Pero han habido cambios:
- La tripulación es mas pequeña, solo 2 tripulantes.
- Nuestro CMS ya no es movable, es WordPress.
- Nuestra filosofía “Solo habla cuando tengas algo que decir”.
- Nuestra ilusión, asintótica tendiendo a infinito.
- Nuestra fuerza, la de un acorazado.
- Nuestro deseo, enriquecer la blogosfera.
Os invitamos a subir a bordo y hacer una travesia por nuestro blog.
Saludos Korsarios, Leed y Propagad
Posted in General | 2 Comments »
July 19th, 2004
¿Como?¿Cuando?¿Por qué?
El ¿Cómo? es sencillo y lo podéis consultar en la pagina de wordpress cuya dirección encontrareis en los links, El ¿Cuándo?: entre ayer y hoy. El ¿por qué? Es el mas difícil de explicar, de hecho, supongo que muchos de los antiguos korsarios me mostraran su descontento cuando se den cuenta de que hemos dejado de ser un blog grupal para convertirnos en un blog con solo dos usuarios. Pero las circunstancias así lo requerían y quizás estaba mas equivocado de lo que pensaba cuando creí que cuantos mas usuarios mas post, parece obvio que esa relación efecto causa no se ha llevado a cabo por lo que fuere.
Ahora ya no hay vuelta atrás he dejado un enlace en la sección de links hacia el antiguo blog, espero sepáis perdonad que falten fotos y halla enlaces rotos pero no tenia tiempo ni quería perderlo arreglando algo que ya no va a funcionar, como dice Jose se puede leer :).
Bueno por ahora eso es todo, solo decíos que intentamos volver a la blogosfera dando un pequeño golpe de timón, lo justo para enderezar el rumbo.
Leed y propagad Korsarios.
Posted in General | 5 Comments »