General


Great GWT UI for Carballo Chess Engine

libgwtsvg-chess

Lukas Laag has written me about his new  GUI for the Carballo Chess Engine  using the Google Web Toolkit (GWT) and his SVG Graphics Library for GWT, libgwtsvg.

GWT is provided from Google to develop applications in Javascript programming in Java. It conterts the Java code to Javascript, and the application is run on the browser, without any additional plugin.

This interface is quite better than the sample Applet from Carballo, it has move history, legal move hightlighting, and SVN graphics. It can be used from:

http://www.vectomatic.org/gwt/libgwtsvg-chess/libgwtsvg-chess.html

He also wrote an article explaining the difficulties of his project. Thanks Lukas for your work.


Rakarrak: The Linux Guitar Effects Processor

Recently, navigating the Debian repositories I found Rakarrack, an Open Source Linux program to simulate various guitar effects in real time. This sound effects are often done with expensive physical sound processors, but this application makes it all with only one cheap computer (well, I suppose that the quality will rely a lot on the sound card).

Each effect is a module and and has its owns parameters which can be adjusted with sliders from the GUI. Multiple effects can be chained in different configurations.

rakarrack

For the audio input and output, It uses the Jack Sound Server. Initially Jacks is a bit complicated to set up but is very versatile. I use the qjackctl to configure and run Jacks simplifying this task. First we start qjackctl and from its GUI, start the jack server. Then run Rakarrack, and with qjackctl we connect Rakarrak to the system sound output and input:

qjackctl_connect

The latency (the sound delay) of Rakarrak is quite good, but depends a lof of the Jack server configuration. This snapshot is the configuration that I am using from qjackctl: the Latency is the important value, and can be minimized adjusting the “frames by period” parameter:

qjackctl

I played a lot using different presets (it has lots of pre-configured) and there are some quite good, but others does not sound as good as a physical pedal, maybe also by le low quality of my notebook sound card.

It also has an integrated guitar tuner, but for this purpose I prefer Lingot from my Friend Iban Cereijo.

A lot of years ago I tested Guitar Rig, a quite pretty (and expensive!) windows applicattion for the same purpose, but then the latency of the sound was too high. Rakkarrak is simpler but enough for most non-professional guitar players, and I like it a lot!

http://rakarrack.sourceforge.net/


Snippet: FLV video encode

snippet

Using mencoder in Linux, we can convert any video to FLV and embed it in a web page with Flowplayer. In this sample video is encoded at 320×240 300 kbps and audio at 56kbps:

# mencoder -forceidx -of lavf -oac mp3lame -lameopts abr:br=56 -srate 22050 -ovc lavc -lavcopts vcodec=flv:vbitrate=300:mbd=2:mv0:trell:v4mv:cbp:last_pred=3 -vf scale=320:240 -o out.flv in.avi


CentOS, alternativa libre a Red Hat Enterprise Linux

Logo de CentOS

En cuanto a las distribuciones de Linux siempre he sido un talibán de Debian, pero hay aplicaciones propietarias que requieren de ciertas distribuciones de Linux para poderse instalar sin problemas, y casi siempre suelen ser compatibles con Red Hat Enterprise Linux (RHEL).

Pues bien, para estos casos tenemos CentOS, que es una distribución de Linux totalmente compatible con RHEL. Sigue las mismas versiones que Red Hat, así una Centos 4.7 es como una RHEL 4.7 y los paquetes son los mismos, idénticos en versiones, y además tenemos actualizaciones gratis de por vida (para Red Hat hay que pagar la subscripción a Red Hat Network). También es muy fácil habiendo instalado un RedHat poner los repositorios de CentOS y convertirlo a un CentOS.

Como es de suponer, CentOS tiene muchos de los defectos de RHEL, como que para actualizar de la versión 4 a la 5 te recomiendan reinstalar desde cero. Yo administré servidores Debian en los que durante muchos años siempre estábamos en la última versión estable sin tener nunca que reinstalar… No obstante se añaden algunas mejoras en unos repositorios separados (CentOS Plus), que permiten por ejemplo tener los PHP 5 en una RHEL 4.x, cuando los repositorios “oficiales” de Red Hat proporcionan sólo PHP 4.

Y por supuesto que, añorando mis Debian, me he instalado el apt para RPM’s, que es una herramienta mucho mejor que el up2date o el yum.


Amueblar con Ikea Home Planner

Ikea Home Planner

Tras años de embarque, ya tengo un cascarón vacío (léase casa) para llenar de muebles… uff, ¿pero qué le ha pasado a mi cuenta bancaria? Ah si, que llevo pagando que si hipoteca, que si notarios, que si albañiles… pero entonces ahí está Ikea, el Burguer King de la decoración, donde por cuatro duros (bueno, ahora son euros) te puedes comprar unos muebles estupendos… bueno, de apariencia estupenda, aunque habrá que ver cómo salen a la larga.

Para los geek como nosotros , que no somos capaces de pensar sin un ordenador delante, Ikea tiene un programa que te permite amueblar virtualmente tu casa. Comenzó como Ikea Kitchen Planner pero ahora es el Ikea Home Planner, ya que incluye también tiene muebles de salón y dormitorio, y por supuesto es gratis y te lo bajas desde la página de Ikea.

El programa en sí es cutrillo, sólo te deja amueblar un habitación a la vez, los techos son siempre planos y a la misma altura, los renderizados son muy básicos,  y no te deja dibujar nada más que puertas ventanas y “cosas que puedas comprar en Ikea”. En contrapartida es muy, muy fácil de usar, quizás el que más de todos los que conozco. Aun así, tiene detalles muy buenos, como por ejemplo el poder planificar el interior de los cajones de la cocina, siempre con accesorios de ellos, claro. Y lo mejor de todo es, que una vez dibujados todos los muebles, te saca una receta con precios (siempre baratos, claro) para que te lleves a tu tienda Ikea.

En fin si tienes poco dinero, esta es la tuya, si papi te paga los muebles mejor vete a una tienda de toda la vida, que los muebles de Ikea tienes que montártelos tu, y aunque las instrucciones vienen todas con dibujitos y no hace falta saber leer, a lo mejor se te puede romper una uña al coger el destornillador…


Me paso a la construcción @Castelo

Castelo

Cuando empecé a hacer la casa comentaba medio en serio medio en broma que era mejor dedicarse al sector de la construcción… pues ahora ya estoy de pleno en este sector, y es que acabo de comenzar a trabajar en una empresa del grupo Castelo de prefabricados de hormigón, eso sí, de informático, pero en la construcción de todas formas.

El reto inicial es completar la implementación de JD Edwards Enterpise One, un CRM/ERP de Oracle (el que PeopleSoft compró a la empresa JD Edwards y quedó integrado dentro de Oracle cuando PeopleSoft fue adquirida por ésta, y que ahora Oracle integrará en su próximo Oracle Fusion). Como aplicación es tremendamente potente y versátil, pero se encuentra con el mismo problema que todos los ERPs, la adaptación a la empresa… y a eso me dedicaré…


Noite galega das telecomunicacións 2007

Noite Galega das Telecomunicacións

Este año tuve la suerte de, en mi nuevo estatus de ingeniero colegiado, poder acudir a este evento en el Gran Hotel Hesperia de la Toja. En principio el hotel, pese a tener un aire de otra época hace honor a sus cinco estrellas, y el ambiente de gala, también impecable, con cóctel y cuarteto de cuerda incluídos…

El problema fue cuando empezaron las presentaciones: esta era la edición de la “Banda larga”, esto es la banda ancha, aunque en gallego cada uno la llama como le parece: banda ampla, banda longa… bueno anécdotas aparte, nos pusieron un video con un tipo entre las vacas reclamando a “banda larga” para las aldeas… y es que creo que en Galicia seguimos con una mentalidad de aldea, pensando siempre en el rural sin impulsar la innovación empresarial.

Y es que tal como lo pienso sólo hay que ver a quién entregaron los premios:

  • Ingeniero del año: Antonio Posse (Director técnico de la RTVG), bueno, este premio es más que merecido; al salir a recogerlo puso a caldo a la Xunta en general.
  • Socio de honor: Santiago Rey Fernández laTorre (Director de la voz), el cual afirmó que en su empresa contaban con “Todas las máquinas disponibles” (creo que faltó el “y todas las que se van a fabricar”) y reconoció el mérito a su departamento técnico y a su director técnico… menos mal.
  • Premio al mejor proyecto TIC con beneficios sociales: Sociedad Tecnocoid, por implementar un localizador GPS para localizar a personas mayores que necesiten auxilio… uy, qué novedad, esto ya lo vi hace cinco años.
  • Mejor aplicación TIC: Arantia, por una aplicación para hoteles casi igual a la que premiaron el año pasado… ya empezamos como los chinos… a copiar sea dicho.
  • Mejor iniciativa empresarial TIC: Imatia, por montar una empresa con recursos de la universidad y contratando a carne de cañón…

En fin, menos mal que la comida de la cena era excelente, que Touriño nos saludó como si nos conociera, y que en la barra libre sólo me pusieron una copa de garrafón… No  obstante recomiento a todos los ingenieros que acudan a este evento, que como punto de encuentro con antiguos compañeros y profesores funciona muy bien, aunque si vais a buscar oportunidades de negocio… creo que lo vais a tener más complicado.


¿Se puede ganar dinero con las matemáticas?

Hay muchos sitios web que anuncian trucos para ganar en la ruleta apostando en casinos, y la mayoría se basan en series, como la Martingala. Este método consiste en apostar 1 euro a rojo, y si pierdes apostar 2, si pierdes 4 y así sucesivamente hasta que ganes, momento en el cual en teoría recuperas todo lo apostado anteriormente y vuelves a comenzar de cero.
El problema es que los casinos ponen límites de apuesta lo que impide duplicar la apuesta infinitamente, algo que tampoco podría hacer un apostante, ya que nunca va a tener “infinito” dinero.

Intrigado decidí realizar un “simulador” de ruleta que permita determinar si se puede ganar utilizando este método o no.

import java.util.Random;
public class Ruleta {
 static Random r = new Random();
 static Double miDinero = Double.valueOf(100);
 public static boolean jugadaAPares(int apuesta) {
  boolean gano = false;
  int numero = r.nextInt(38);
  // el 37 es el doble cero
  if (numero != 0 && numero != 37) {
   gano = numero % 2 == 0;
  }
  if (gano) {
   miDinero += apuesta;
   System.out.println(miDinero + " ("+numero+") Gano apostando " + apuesta);
  } else {
   miDinero -= apuesta;
   System.out.println(miDinero + " ("+numero+") Pierdo apostando " + apuesta);
  }
  return gano;
 }
 public static void main(String[] args) {
  while(true) {
   int miApuesta = 10;
   if (!Ruleta.jugadaAPares(miApuesta)) {
    miApuesta = 20;
    if (!Ruleta.jugadaAPares(miApuesta)) {
     miApuesta = 40;
     if (!Ruleta.jugadaAPares(miApuesta)) {
      miApuesta = 80;
      if (!Ruleta.jugadaAPares(miApuesta)) {
       miApuesta = 160;
       if (!Ruleta.jugadaAPares(miApuesta)) {
        System.out.println("No he ganado en cinco apuestas!!!");
       }
      }
     }
    }
   }
  }
 }
}

Simula una ruleta con cero y doble cero y límite de apuesta. Los resultados de la ejecución demuestran que los casinos siempre tendrán más probabilidad de ganar y que el jugador siempre va a perder dinero.

Por lo tanto, lo de ganar dinero con las mátemáticas en la ruleta ES MENTIRA, bueno, salvo para el casino, que siempre gana dinero :).