martes, 23 de diciembre de 2008

Feliz Navidad

Hola, amigos

Otro año más llegamos a estas fechas en las que nuestro corazón se pone un poco más tierno, sonreímos un poco más, pasamos algo más de tiempo con nuestros hijos dándonos cuenta de cuánto han crecido, de reencontrarnos con algunos familiares y amigos que el resto del año han estado abandonados, de mandar mensajes, correos y christmas; de comprar viandas especiales para la Nochebuena o la Navidad, de bajar nuestra habitual guardia y sacar de nuestro interior un espíritu más dialogante, de encontrar unos ratos de felicidad junto a nuestros seres queridos...

¿Por qué no encontramos esos momentos cualquier día del año? ¿Por qué nos negamos esa dicha un 21 de Octubre? ¿Por qué no somos más dialogantes un 23 de Enero? ¿Por qué no nos reencontramos con personas a las que hace mucho que no vemos un 14 de Marzo? ¿Por qué no pasamos más tiempo con nuestros hijos hoy? El mejor día de tu vida es hoy mismo... si tú quieres.

Este año ha sido especial gracias a vosotros. Cada día habeis contribuido a este rincón de la felicidad con lo mejor de vosotros mismos. Cada comentario, cada opinión, cada mensaje... ha sido muy importante. MUCHAS GRACIAS

Quisiera desearos unas felices navidades y un próspero y mágico año 2009. Y sobre todo, que cada día sea mejor que el anterior.

miércoles, 17 de diciembre de 2008

Refresco de DataGrid en Flex

Me he encontrado con un caso interesante que es digno de mención en este blog, y que seguro ayudará a más de uno. Aunque el caso se me ha presentado desarrollando en Flex, estoy seguro que, por su naturaleza, sea repetible en otros lenguajes, como .NET ó C# (por mencionar alguno)

Este caso no lo voy a comentar en detalle con código, si no con la teoría. Si queréis detalles de código, este problema lo planteé en el foro de Made In Flex, y cuyo enlace directo es el siguiente: http://groups.google.com/group/madeinflex/browse_thread/thread/927ccf8df69c887e?hl=es

Para empezar, comentaré el entorno tecnológico en el que se desarrolla esta historia. Por la parte backend tenemos una base de datos MySQL, un servidor web Apache y un PHP. PHP es utilizado para atender a peticiones mediante URL, acceder a base de datos, realizar operaciones con la información, y retornar un XML. Por la parte frontend tenemos un swf (Flash) creado desde Flex.

Continuamos con el propósito de la aplicación, describiendo su interfaz. Bien, es un módulo que permite gestionar datos de una tabla (en mi caso eran usuarios). Para ello, en la parte superior se incorpora un DataGrid (o tabla), que muestra la lista resumida de información de cada registro (en cada fila). En la parte inferior aparece un formulario que actúa de ficha. Cuando el usuario clica un registro en el DataGrid, éste se muestra en la ficha.

Al arrancar la aplicación, se invoca a un servicio HTTPService, el cual llama al servicio PHP correspondiente que obtiene la lista de los usuarios, genera el XML, lo devuelve, y Flex recoge este resultado y lo enlaza al DataGrid (en Flex se hace mediante la propiedad DataProvider).

Ahora vayamos a una operación sencilla de modificación de datos: la inserción. Cuando se crea un usuario nuevo, se clica en el botón "Nuevo", el cual deja la ficha de usuario vacía y desactiva el DataGrid (no se puede seleccionar filas o registros). El usuario introduce la información correspondiente al nuevo usuario. Cuando termina, hace clic en el botón "Crear". Las operaciones que se desencadenas son las siguientes:

1) Invoca al servicio HTTPService correspondiente al servicio PHP que crea un registro en la base de datos. El resultado se retorna en un XML con un tag con el resultado de OK o un mensaje de error
2) Flex recoge el resultado.
3) Si el resultado no es OK, muestra un mensaje de error (Alert.show (en otros lenguajes será MessageBox, MsgBox...).
3) Si el resultado es OK:
- Información de que ha tenido éxito (Alert.show)
- Activar el DataGrid y desactivar el formulario
- Invocar nuevamente al HTTPService para obtener la lista de usuarios
- Refrescar el DataGrid

Esta es la teoría, pero el refresco del DataGrid no funciona. Sigue estando los mismos datos que antes de crear el registro. Sin embargo, parece que el DataGrid se ha redibujado (hay un pequeño fliqueo o parpadeo).

Si salgo de la aplicación, y vuelvo a ejecutarla, el DataGrid se carga correctamente. No lo hace así cada vez que se modifica la tabla.

En realidad no hay ningún error. El problema se debe a que la llamada al HTTPService que retorna la lista de usuarios, se realiza siempre de la misma manera. Es decir, es una simple llamada, con un único parámetro que siempre tiene el mismo valor. Esto hace que el servidor web tire de la caché, con lo que retorna siempre el mismo XML.

¿Y cómo se soluciona ésto?. Pues creando un parámetro que no se utiliza, y que siempre toma un valor distinto. Puedes añadir al HTTPService para obtener la lista de usuarios, un parámetro que recoja la hora completa, o que genere un número aleatorio. De esta manera, el servidor web verá que es una llamada distinta a las ejecutadas recientemente, y ejecutará el script de php, en lugar de retornar lo que hay en la caché.

Safe Creative #1001195348693

Desmentidos los mayores mitos del código abierto

Leo en DiarioTI una interesante noticia acerca del código abierto. Black Duck, una compañía estadounidense, se ha tomado la molestia de analizar unos 160000 proyectos de código abierto, de introducir la información en una base de datos, de cruzar dicha información y extraer un interesante informe al respecto, en el cual se desmienten los 5 mayores mitos del código abierto.

Mito 1: El código abierto sólo es código fuente distribuido
El código fuente sólo constituye un 15% de la distribución. El resto son archivos binarios, tales como imágenes, vídeos, documentación, etc.

Mito 2: El código abierto es utilizado principalmente en proyectos de infraestructura TI como Linux y MySQL
El ámbito de código abierto está dominado por los componentes y no por aplicaciones completas, y dichos componentes son reutilizados en multitud de proyectos. Por ejemplo, en proyectos Java hay 14 veces más archivos binarios .class que archivos fuente .java.

Mito 3: En Internet circulan 2 mil millones de líneas de código abiero
En realidad, la cifra es 10 mayor. El 23% fue publicado o actualizado en 2008. El 90% ha sido escrito en C, C++, C# y Java.

Mito 3: Un auténtico programador apenas incluye comentarios en el programa
Una de cada dos líneas en Java suele tener un comentario.

Mito 4: GPL 3 es ignorada
Se han identificado más de 6300 proyectos bajo licencia GPL. El 70% de todos los proyectos de código abierto utilizan una variante de esta licencia.


Fuente: http://www.diarioti.com/gate/n.php?id=20704

miércoles, 10 de diciembre de 2008

Savage 2: Jugar sin gastar dinero

Las consolas llenan los escaparates navideños, y el vicio hace hervir la sangre. Pero... ¿por qué han de resentirse nuestros bolsillos por un poco de anti-estrés?. Si a los 200-500 euros que puede costar la consola de base, has de gastarte entre 20 y 80 euros por juego, al final, la paga extra se volatiliza en nada de tiempo.

Hay quienes dedican muchas horas a este noble arte del entretenimiento, consumiendo las horas que disponen a mandos de un guerrero, un coche de fórmula 1, un mago o un duende.

Otros, como es mi caso, somos jugadores casuales, que nos ponemos tan sólo algún rato perdido al mes o al año, cuando el tiempo nos lo permite. En nuestro caso, desembolsar ese dinero nos duele, porque no le sacamos partido ni lo amortizamos.

Por supuesto que estoy a favor de que las personas que trabajan tras un juego cobren por su trabajo (yo trabajé durante años en empresas de videojuegos y sé lo difícil que es). Pero vemos que en este mundillo, ese esfuerzo tan ingente (recordemos que ahora los juegos son como las superproducciones de Hollywood, con multitud de personas de todo tipo detrás de cada detalle) se amortiza durante los primeros días, cuando es una novedad, y los que aman los juegos pagan en esos momentos el precio máximo. Ese precio se va manteniendo durante unos meses, y cuando caen las ventas se empieza a abaratar si las ventas son escasas, para promover el bolsillo del jugador casual.

Otras formas de juegos las encontramos en nuestros ordenadores, que pueden llegar e incluso superar las habilidades de estas consolas (mete pasta en supertarjetas gráficas y de sonido, así como en controladores de juegos (volantes, joysticks siderales y otros cachivaches)). Hay software libre y, en algunos casos, juegos que eran de pago, pasan a ser freeware. La diferencia entre open source y freeware no es que sean gratuitos. Un software libre significa que el código está disponible para todos, pero se puede pagar por su soporte, instalación u otros servicios. Freeware significa que el programa es gratuito, pero no está disponible su código fuente.

En este caso me refiero a un pedazo de juego que nos dejará pegados durante estas navidades delante de nuestra pantalla. Se llama "Savage 2: a tortured soul", de S2 Games. Este juego, en un principio era de consumo, y ahora ha pasado a ser freeware. Una iniciativa estupenda y que aplaudo con sinceridad, porque atraerá muchos acólitos y podrán vender otros servicios o productos a partir de aquí.

El juego es del tipo World of Warcraft, aunque con mucha más acción, del estilo de God of war. Es multijugador online, con lo que la diversión está garantizada. El siguiente vídeo es una pequeña demostración del juego:


Una de las cosas que más me han gustado del juego es que está disponible para los sistemas operativos Windows, Linux y Mac.

Las siguientes capturas muestran algunas escenas del juego:





Estrategia, magia, acción, aventuras... ¿qué más se puede pedir?.

El enlace al juego: http://savage2.s2games.com/main.php

lunes, 8 de diciembre de 2008

Flex: Ventanas modales e intercambio de datos

A veces es necesario gestionar información fuera del entorno de interfaz que estamos usando, pero esta información ha de estar sincronizada. Una buena opción es el uso de ventanas modales, las cuales se pueden utilizar para, por ejemplo, cuadros de diálogo, barra de herramientas, pop-ups, etc.

El ejemplo práctico con el que vamos a ilustar este artículo, extraerá una ventana con un teclado numérico (muy útil en pantallas táctiles), a partir de la pulsación de un botón ligado a una caja de texto. Al mostrar el teclado numérico, éste contendrá el número tecleado en la caja de texto previa. Cuando se termina de operar con el dato en el teclado numérico, el número resultante se lleva a la caja de texto de la ventana principal.



Ventana modal


En Flex, podemos crear una ventana modal creando un componente que herede de TitleWindow. Para ello, se crea un componente en Flex Builder que utilice este layout. También puede cambiarse el código por defecto que genera el asistente de componentes, sustituyendo Canvas por TitleWindow. Este sería el armazón de nuestra ventana modal (componente TitleWindow):


<?xml version="1.0" encoding="utf-8"?>
<mx:TitleWindow
xmlns:mx="http://www.adobe.com/2006/mxml"
width="172" height="202"
layout="absolute" title="Teclado"
showCloseButton="true"
close="cerrar();">


</mx:TitleWindow>


Las propiedades utilizadas para este componente son:
- width: Ancho de la ventana
- height: Alto de la ventana
- layout: Forma de la distribución de los componentes dentro de la ventana. El valor "absolute" (absoluto), permitirá colocar los componentes en un sistema de coordenadas X e Y, desde la esquina superior izquierda (0,0)
- title: Título de la ventana
- showCloseButton: Permite mostrar el botón de cierre en la ventana
- close: Qué hacer cuando se hace click en el botón de cierre de la ventana. En este caso se invocará a la función cerrar()

Una vez definida la ventana se incorporan los componentes de la ventana:


<mx:TextInput width="136"
x="10" y="10"
id="txtNumero"
textAlign="right"/>
<mx:Button x="10" y="124"
label="." id="btnComa"
click="ponerComa();"/>
<mx:Button x="58" y="124"
label="0" id="btn0"
click="ponerNumero(0);"/>
<mx:Button x="106" y="124"
label="C" id="btnC"
click="txtNumero.text='0';"/>
<mx:Button x="10" y="94"
label="1" id="btn1"
click="ponerNumero(1);"/>
<mx:Button x="58" y="94"
label="2" id="btn2"
click="ponerNumero(2);"/>
<mx:Button x="106" y="94"
label="3" id="btn3"
click="ponerNumero(3);"/>
<mx:Button x="10" y="64"
label="4" id="btn4"
click="ponerNumero(4);"/>
<mx:Button x="58" y="64"
label="5" id="btn5"
click="ponerNumero(5);"/>
<mx:Button x="106" y="64"
label="6" id="btn6"
click="ponerNumero(6);"/>
<mx:Button label="8"
x="58" y="34" id="btn8"
click="ponerNumero(8);"/>
<mx:Button label="7"
id="btn7" x="10" y="34"
click="ponerNumero(7);"/>
<mx:Button x="106" y="34"
label="9" id="btn9"
click="ponerNumero(9);"/>


Los botones '0' a '9' invocan a la función ponerNumero(), el botón ',' invoca a la función ponerComa() y el botón 'C' pone a cero el número.

Para terminar el código de la ventana quedaría incluir el código ActionScript, el cual se colocaría justo antes de la declaración de los componentes. Este código incluiría las funciones que van a ser invocadas, así como alguna cosa más que se detallará un poco más adelante:


<mx:Script>
<![CDATA[
import mx.managers.PopUpManager;

public var origen:Object;

public function sincronizaTeclado():void
{
var texto:String = origen.text;

if (texto=="")
texto="0";

txtNumero.text = texto;
}

private function ponerNumero(numero:int):void
{
if (txtNumero.text=="0")
if (numero!=0)
txtNumero.text = ""+numero;
else
txtNumero.text = "0"
else
txtNumero.text = txtNumero.text+numero;
}

private function ponerComa():void
{
var texto:String = txtNumero.text;

if (texto=="0")
texto="0,";
else
if (texto.indexOf(",")<1)
texto+=",";

txtNumero.text = texto;
}

private function cerrar():void
{
var texto:String=txtNumero.text;

if (texto.charAt(texto.length-1)==',')
texto = texto.substr(0, texto.length-1);

origen.text = texto;
PopUpManager.removePopUp(this);
}

]]>
</mx:Script>

La clave de la comunicación entre la ventana modal y la ventana principal es una propiedad objeto que sirva de enlace entre ambas ventanas. A veces se utiliza una referencia a la ventana principal, con el fin de poder acceder desde la ventana modal a todos los elementos públicos de aquella. En esta ocasión se procede a utilizar únicamente un componente interno de la ventana principal, que es la caja de texto. Esta propiedad es la variable 'origen' de tipo Object.

La función sincronizaTeclado() es pública, y se utiliza para sincronizar la caja de texto de la ventana principal con la caja de texto de la ventana modal. Permite validar y realizar una inicialización del dato.

La función ponerNumero() se encarga de escribir el número en el visor. Antes hace comprobaciones, tales como si el número actual es cero, se sustituye por el tecleado, y si no, añade el tecleado al número actual.

La función ponerComa() se encarga de comprobar si no hay antes otra coma en el número que aparece en el visor, antes de proceder a ponerla.

La función cerrar() es invocada al pulsar el botón de cierre de la ventana. Si el número tecleado termina en coma (sin decimales), eliminará la coma, dejando el número entero. Por último, actualiza la caja de texto de la ventana principal (a través de la referencia de la variable 'origen').

Ventana principal


El código de la ventana principal es el siguiente:


<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute">

<mx:Script>
<![CDATA[
import mx.managers.PopUpManager;

private function mostrarTeclado():void
{
var teclado:WindowTeclado =
WindowTeclado(PopUpManager.createPopUp(
this,WindowTeclado,true));

PopUpManager.centerPopUp(teclado);
teclado.origen = txtNumero;
teclado.sincronizaTeclado();
}

]]>
</mx:Script>

<mx:TextInput x="10" y="10"
id="txtNumero" textAlign="right"/>
<mx:Button x="178" y="10"
label="Teclado" id="btnTeclado"
click="mostrarTeclado();"/>
</mx:Application>


La función mostrarTeclado() contiene la clave del proceso. En primer lugar se define una variable del tipo componente de la ventana modal, la cual se crea invocando a su constructor mediante la creación de un PopUp (PopUpManager.createPopUp()). A esta creación se le pasa tres parámetros: ventana padre (this), ventana a crear (la misma) y si es modal (true) o no (false).

Creada la ventana se centra ésta mediante PopUpManager.centerPopUp().

A continuación se enlaza el elemento de conexión entre las dos ventanas, utilizando la variable 'origen' de la ventana modal. A esta variable se le asigna la referencia al objeto de caja de texto de la ventana principal. A través de este nexo, ambas ventanas pueden comunicar sus datos. En este ejemplo se conecta un sólo dato. en ventanas más complejas, con más datos a unir (como una caja de diálogo), lo mejor es utilizar la referencia a la ventana padre (this), y conectar los elementos comunes entre las dos ventanas.

La última acción es sincronizar los datos entre las dos ventanas, y por ello, se invoca al método sincronizaTeclado() de la ventana modal.

Safe Creative #1001195348709

jueves, 4 de diciembre de 2008

La crisis tecnológica y la flor de la mierda

Interesante artículo publicado por Alfredo de Hoces en su blog http://www.alfredodehoces.com/press/workflow-de-una-tormenta-de-mierda, cuyo título original es "Workflow de una tormenta de mierda".

Creo que a todos nos va a sonar todo lo que Alfredo cuenta con su habilidad narrativa, en forma de cuento o fábula. Desde que mi memoria alcanza (más de 15 años ha), esta historia la he visto repetida una y otra vez, cada vez con más ahínco.

Con su permiso, la publico en mi blog para deleite de todos.




“Plantad la semilla de la avaricia en la infértil tierra de la estupidez y obtendreis la bella flor de la mierda”
(Confucio)

Todo comienza con el delirio de grandeza de algún enano mental que siempre envidió todo aquello que no se merecía. Tal vez un complejo de inferioridad crónico, tal vez haber vivido a la sombra de un hermano mayor al que todo le fue bien, o quizás demasiada televisión. El caso es que llega un fatídico día en que nuestro enano mental, con mucho esfuerzo, obtiene una licenciatura. Ese atardecer se sube a una loma, diploma en mano, el rojo crepúsculo a sus espaldas, levanta la vista y clama al cielo:

“¡¡A dios pongo por testigo de que algún día sere alguien!!… ¡¡A dios pongo por testigo de que algún día daré conferencias!!… ¡¡A dios pongo por testigo de que algún día tendre un armario lleno de trajes de Armani!!… ¡¡A dios pongo por testigo de que algún día, tomaré café con un presidente!!

Entonces se produce el milagro de la metamorfosis, pero al revés. En este caso muere una frágil mariposa y nace un capullo. Demos la bienvenida a Señor Don Capullo, visionario, emprendedor, director. Una corbata, un poco de fijador, un maletín negro con cierre dorado, una escoba por el culo. Se acaba de crear un desequilibrio en el sistema: el alter ego Don Capullo comprará cosas que enano mental no podrá pagar. Y hasta que alguien se de cuenta, se crearán deudas. Deudas que los de siempre tendremos que saldar.

Don Capullo es un tipo muy culto. Ha leído esa gran obra maestra de la literatura universal, “¿Quién se ha llevado mi queso?”. Le costó algún tiempo, pero entendió el mensaje: maricón el último y el que venga detrás, que arríe.

Don Capullo desea el queso. ¿Donde está ahora el queso? En internet. La semilla en forma de modelo de negocio ha sido plantada dentro del maletín negro; la flor de la mierda no se hará esperar. Ha nacido Smoke Solutions, ¡que empiece la función!

Lo siguiente es montar el escenario. Se alquila alguna jaula barata en cualquier zoológico tecnológico y se registra un dominio con gancho, algo que sugiera crecimiento, valor, futuro, en definitiva “ahora somos pequeños pero en breve duplicaremos su inversión”. Se recomienda darle un toque imperial (Roma, quizá Egipto) que sugiera grandeza cultural y una pincelada anglosajona que sugiera nueva tecnología. Entelequisys, Intelectis, Sinergius, Keopsolutions, Evolucius, Netsupreme… las combinaciones son infinitas.

Ahora se necesitan los actores. El actor ideal es aquel que realmente se cree su papel; los pollitos recien salidos del cascarón y los cuervos viejos y enfermos son los perfiles ideales. Don Capullo se rodeará de adeptos y les contará su verdad: “Yo soy el hijo del futuro, yo he visto la luz del mañana. Aquel que crea en mí hallará la vida eterna. Pero habreis de tener fé y nunca sucumbir a la tentación”. O sea, que mientras nos creamos el cuento tendremos un empleo para toda la vida (ja, ja) y si alguien alguna vez afirma “este tío no es mas que un enano mental y un farsante” le quemaremos en la hoguera. Es el demonio que se nos aparece en forma de programador listillo. Es el angel caído, que quería llegar más alto que dios.

La historia nos muestra lo efectivo de estas estructuras basadas en el “se cambia pan y consuelo por fé ciega”. Alguna va durando ya sus dos mil años.

Llega el día del gran estreno. Ya todos se saben sus papeles, que se repartieron en forma de Power Point, y les encantan. Aquel que compró el switch es el experto en redes inteligentes, el que arrancó el servidor el experto en desplegado de proyectos distribuidos, el que puso la “s” detrás del “http” nuestro experto en seguridad de la información, el que incluyó “encoding=UTF-8″ en el XML nuestro experto en internacionalización, y el que escribió el JSP de mil líneas sin un solo include o usebean, nuestro Java Gurú. Nervios. Se levanta en telón. El público, los posibles inversores, abarrota la sala. Se apagan las luces, se enciende el proyector. F5, ver presentación.

Durante dos horas damos un paseo por el mañana. Automatización, inteligencia artificial, naves espaciales. Teléfonos móviles con videoconferencia holográfica en 3D. Teletransportadores dimensionales. Le posicionaremos en el futuro. Le acercaremos a sus clientes. Le alejaremos de sus competidores. Mas aún, ¡desintegraremos a sus competidores! ¡Le meteremos en la cama de sus clientes! ¡¡¡Duplicaremos, triplicaremos, MILLONIFICAREMOS SU INVERSION!!! ¿HASTA DONDE QUIERE LLEGAR?

Fin de la función. Aplausos, lágrimas de emoción. Algunos inversores ya se frotan las manos. Se rumorea que viene de incógnito el asesor financiero de un presidente que quiere invertir parte de los fondos públicos en mejorar la calidad vida de su país, tan sólo a cambio de un paquete de acciones a nombre de su cuñado que desviará el cinco por ciento de la inversión a manos amigas en el mismo instante de la salida a bolsa (a nadie le amarga una isla en el caribe; son las pequeñas ventajillas de sacrificar altruistamente la vida de uno en pos del bienestar del pueblo).

Rueda de preguntas. ¿De que color serán las naves espaciales? Platino con vetas doradas. ¿Que alcance tendrán los teletransportadores? De una punta a la otra del planeta en un nanosegundo combinando supercuerdas y agujeros de gusano. ¿Que autonomía tendrán los móviles holográficos? Ilimitada gracias a la fusión fría. ¿Y cómo van ustedes a hacer todo esto? pregunta alguien. Incómodo silencio.

Los pollitos y los cuervos miran a Don Capullo, que se pone en pie con su mejor sonrisa de autocomplacencia y les habla de las sinergias, las convergencias, David y Goliath, las pirámides, Apple y el garaje de Steve Jobs, Yahoo y la furgoneta de Jerry Yang y David Filo. La semilla está ahí -señala a su maletín negro-, sólo necesita ser regada.

Pues nada, como el que no quiere la cosa ya tenemos cincuenta milloncitos de euros en una cuenta en las islas Caimán. Ahora hay que agudizar el ingenio y empezar a trincar. Cada pellizco al saco hay que justificarlo, así que echémosle imaginación. El primer canal de desviación de fondos es el salario (ya me dirán ustedes si 8000 euros netos al mes no es un salario excesivo para una simple escoba engominada).

Pero al salario se acostumbra uno pronto, que el mantenimiento del mercedes es costoso y los chalets en la sierra no los regalan. Hay que trincar más y mejor. Aquí se usa el sencillo método del “donete egipcio”. Saca uno los donetes (esos cincuenta milloncitos de euros en las Caiman) y le salen amigos por todas partes. Un amigo que nos hace un software, otro que nos vende unos equipos, otro que nos decora las oficinas. Luego se pone uno en postura egipcia y con la mano de arriba le acaricia el lomo al nuevo amigo mientras que con la de abajo trinca uno la comisión en negro.

Si las comisiones se quedan cortas también puede uno comprarse directamente a sí mismo mediante empresas fantasma a nombre del primo Eustaquio. Ejemplos prácticos: proyecto de decoración de oficina (un cuadro y dos macetas), doce mil euros. Sistema de CRM (una base de datos en access hecha en una hora) cien mil euros. Suma y sigue.

Durante un tiempo la vida es maravillosa. Se dan conferencias, se lucen trajes de Armani, se toma uno algun café con el presidente. Escapadas a la sierra, al caribe, paseos en descapotable. Ahí va un triunfador. Pero los donetes no se multiplican. Un día, a alguien le pica el bolsillo y pregunta: “¿Dónde estan mis minolles?”. Se empieza a tirar del hilo y se llega al ovillo: el maletín. Enseñe usted sus cartas, Señor Don Capullo. Abra el maletín.

Don Capullo convoca una macro reunión. Empleados, asesores, directivos, inversores. No falta ni el primo Eustaquio. Se va a destapar la caja de Pandora. Don Capullo sube al estrado, coloca el maletín frente a un ventilador bien grande, marca la combinación, y abre.

Todos de mierda hasta las cejas. Ruedan cabezas, llueven sanciones, denuncias. Los peor parados son los pollitos, pues se les acaba el sueño del experto-en-derivación-de-forlayos. En la próxima empresa habrá que bajarse del burro, aprender a picar y sudar tinta. Algunos nunca lo superan.

Una vez desmontado el chiringuito y pasada la tormenta, hay que recuperar la pasta. Don Capullo se aferra al “Santa Rita Rita, toda inversión es un riesgo”, y se lanza de nuevo a la búsqueda del queso, quizá en la patente de genes.

Así que lo de siempre. Se informa a la prensa del clásico “HAY CRISIS EN EL SECTOR”, “LA ECONOMIA ENTRA EN CICLO RECESIVO”, “ETAPA DE DESCONFIANZA”, etc. Que el inversor era un banco: se bajan los salarios y se suben los intereses. Que era una telefónica: se bajan los salarios y se suben los precios de la llamada. Nos jodemos los de siempre con el chantaje de siempre: o nos apretamos el cinturón o se cierra la empresa.

Hay un caso extremo: cuando se trata de los fondos públicos de un país y el trinque ha sido a gran escala, la flor de la mierda es regada en abundancia y finalmente da sus frutos: las cacerolas.

lunes, 1 de diciembre de 2008

iPhone y su publicidad engañosa

Apple ha tenido que quitar su publicidad en Gran Bretaña, debido a las quejas que los consumidores han denunciado debido a que en la publicidad se han empleado trucos engañosos, como salto de pasos, acelerar secuencias, etc., ofreciendo un producto rápido y limpio.

El siguiente vídeo muestra el anuncio original y lo que en realidad tardaría en ejecutarse las funcionalidades que destacan.

domingo, 30 de noviembre de 2008

Linux en el iPhone

La expectación de esta semana ha salido de la posibilidad de poder ejecutar Linux en el glamouroso Apple iPhone. Este vídeo lo demuestra:



Tras analizarlo se me plantean varias preguntas.

- ¿Qué tiene de interesante?
- ¿Qué utilidad tiene realmente?
- ¿Cuántos van a ir con un teclado conectado al iPhone como el señor que ha grabado el vídeo?
- ¿Para qué hacer un "ls" y acceder al sistema de ficheros en un iPhone?
- ¿Tanto hemos de esperar para tener una simple consola de comandos?
- Si yo quiero llamar/recibir llamadas, enviar/recibir mensajes, gestionar mi agenda, etc... ¿para qué cambiar el sistema operativo del teléfono?
- ¿Es esto todo lo que hace Linux en el iPhone? ¿Mostrar la consola y poder ejecutar comandos Unix?

Algunos me dirán:
- Por fin se puede ejecutar un SO libre en un iPhone, que es propietario. Pues vaya, para eso me compro un teléfono más barato que el iPhone y que tenga prestaciones parecidas.
- Por fin se podrá ejecutar Linux en iPhone. ¿Y de qué sirve eso? Apple te venderá el teléfono con su sistema, no hay otra. Además, cuando la comunidad libre pueda hacer que Linux reconozco todos los cachivaches del teléfono y adapte sus prestaciones en una interfaz de usuario (no creo que los usuarios vayan con un teclado conectado y se aprendan los comandos de consola para realizar estas operaciones), el iPhone ya será un teléfono del pasado e incluso hasta descatalogado.

Aunque ame el software libre, a veces lo friki me parece un sinsentido. Demostrar la ejecución de la consola de Linux en este teléfono no tiene nada útil (salvo la satisfacción personal de un "gurú"). ¿No sería más interesante trabajar y dedicar los esfuerzos en un proyecto libre de telefonía, o colaborar con Android, o similares?

viernes, 14 de noviembre de 2008

Dimensión real de la reforma de las titulaciones de Informática

Hace unos días hice eco de un problema que afecta al mundo de la informática en España. Leí de varias fuentes, de varios correos, y me decidí a escribir un post sobre este asunto, de modo muy similar al que lo habian hecho otros. El post, con el título "A la mierda los informáticos" era un reflejo de lo que en ese día se estaba haciendo eco en todos los sitios, de forma apocalíptica y sensacionalista. Con la sangre caliente y el corazón frío, escribí un post creyendo tener un juicio correcto sobre el asunto, cuando, en realidad, sólo estaba diciendo lo mismo que los demás, sin haber consultado más información de otras fuentes.

Quisiera mediante este post enmendar un poco aquella acción, sin arrepentirme de ella, aunque reconociendo que exageré los conceptos y la dimensión apocalíptica no era tal. Sí es cierto que hay ciertos problemas con la adaptación, pero no de la dimensión que se hizo eco en casi todos los foros.

Quisiera replicar un post escrito por Enrique Barreiro (con su, permiso por supuesto), en el que analiza, de forma racional y justa, este problema. Podéis encontrar este post en su página personal: http://enriquebarreiro.blogspot.com/2008/11/qu-pasa-con-la-ingeniera-informtica.html

Gracias a esta información puedo comprender sin intoxicaciones ni exaltaciones la dimensión real de la reforma de las titulaciones informáticas en España.



Desde hace unos días circula por Internet una convocatoria de huelga de los ingenieros en informática para el próximo 19 de noviembre. En mi opinión, ya iba siendo hora de que el sector se pusiera las pilas para reclamar lo que es de justicia, pero lo cierto es que muchos de los mensajes y posts que circulan por ahí indican que hay mucha gente que está confundiendo problemas diferentes (aunque relacionados) y que eso lleva a que, entre otras cosas, se estén diciendo burradas como:

- "Desaparecen las ingenierías en informática"
- "Nuestros títulos no son homologables a ninguno"
- "Nunca tendremos atribuciones profesionales"
- "Los títulos actuales no tendrán validez"
- "No podremos trabajar en Europa"

y que no hacen ningún bien ni a la profesión ni a las titulaciones.

Pues bien, trataré de aportar mi grano de arena intentando aclarar un poco esta situación, las consecuencias que se derivan de ella, la actuación de la CODDI (Conferencia de Directores y Decanos de Informática), y alguna otra cosa más. Aviso, me va a salir un post más largo que un día sin pan.

En primer lugar hay que tener claro que los ingenieros en informática (permitidme que bajo este término agrupe a los ingenieros técnicos en informática y a los ingenieros en informática) tienen dos problemas relacionados pero diferentes, y que necesitan soluciones distintas:

1) El diseño de los nuevos títulos adaptados al Espacio Europeo de Educación Superior, y
2) La regulación de la profesión.

El RD 1393/2007 de 29 de octubre, por el que se establece la ordenación de las enseñanzas universitarias oficiales, es lo primero que habría que mirar para entender cómo se está llevando a cabo la adaptación al proceso de Bolonia. Si hasta ahora el sistema universitario se ha basado en una relación de títulos universitarios fijada desde el Ministerio, común a todo el territorio nacional (es decir, nadie podía ofertar, por ejemplo, una Ingeniería Técnica en Bases de Datos), el citado RD deja en manos de las Universidades la posibilidad de inventar, diseñar y ofertar cualquier titulación que consideren oportuno, pero con una excepción: el artículo 12.9 de ese RD dice lo siguiente:

" Cuando se trate de títulos que habiliten para el ejercicio de actividades profesionales reguladas en España, el Gobierno establecerá las condiciones a las que deberán adecuarse los correspondientes planes de estudios, que además deberán ajustarse, en su caso, a la normativa europea aplicable. Estos planes de estudios deberán, en todo caso, diseñarse de forma que permitan obtener las competencias necesarias para ejercer esa profesión. [...]."

Lo que ha hecho el Ministerio para las titulaciones que dan acceso a profesiones reguladas es publicar, después de muchas negociaciones con los colegios profesionales y el ámbito universitario, una "ficha" en la que se incluyen las competencias académicas que deben adquirir aquellos que cursen estas titulaciones (en otras palabras, unas directrices propias de la titulación). Es decir, la Universidad que quiera ofertar un Máster en Ingeniería Industrial o un Grado en Sistemas de Telecomunicaciones tiene que ajustarse a esas directrices para que su título sea verificado por la ANECA.

Para entendernos: una profesión regulada es, por ejemplo, la de arquitecto (nadie puede firmar el proyecto de un bloque de viviendas si no es arquitecto y el proyecto cuenta, además, con el visto bueno del Colegio Profesional de Arquitectos) o la de Ingenieros Técnicos de Telecomunicación en sus distintas especialidades. Aquí es donde surge el conflicto en lo que respecta a nuestros planes de estudios: las profesiones de ingeniero técnico en informática y la de ingeniero en informática NO están reguladas. ¿Por qué? Pues por razones "históricas": las titulaciones en Informática nacieron como licenciaturas y diplomaturas y no fue hasta el año 1990 en que se establecieron los títulos de Ingeniero Técnico en Informática de Gestión, Ingeniero Técnico en Informática de Sistemas y de Ingeniero en Informática. Aunque la profesión, como ingeniería que pasaba a ser, tenía que haber sido regulada por el Ministerio de Industria (o el que tuviera las competencias en cada legislatura), nunca lo fue. ¿Y por qué? (parezco mi hijo :) Pues... ¿dejadez?, ¿falta de presión desde el ámbito profesional?, ¿intereses de profesionales del mundo de la informática provenientes de otras titulaciones? A nadie se le escapa que en este ámbito hay cantidad de profesionales con titulaciones tan dispares como Matemáticas, Física, Telecomunicaciones, Química, Biología, Empresariales, etc, (yo mismo soy doctor en ingeniería informática pero mi titulación de origen es la de Empresariales). Esta situación que muchos denuncian como "intrusismo profesional" tiene su explicación en que la explosión de titulaciones en Informática en España no llegó hasta la primera mitad de los años 90, por lo que durante muchos años la industria tuvo que hacer frente a sus necesidades contratando a cualquiera que supiera programar dos líneas de código o hubiera dirigido proyectos del tipo que fuera. Perdonadme el inciso, pero mi caso es paradigmático de lo que ocurría hace unos años: entré de profesor en la Universidad de Vigo en el año 1991 con 23 años, licenciado en Empresariales tres meses antes, en una convocatoria de seis plazas de profesor de informática... a la que nos presentamos sólo cinco personas de la misma edad (y tres venían de Granada, la facultad de la que se nutrió mi Escuela durante varios años). La primera promoción de Licenciados en Informática por la Facultad de A Coruña salió un año después.

Como se puede ver, aquí hay dos problemas: uno, correspondiente al ámbito académico (el diseño del título universitario) y otro al ámbito profesional (la regulación de la profesión). La CODDI, aunque pertenece al ámbito académico, no es ajena al problema de la profesión, pues el uno no se soluciona sin el otro. Por un lado organizó en marzo de 2007 una reunión en Madrid con las diferentes asociaciones y colegios profesionales para poner en marcha una Comisión de Atribuciones cuyo objetivo es conseguir que el Ministerio de Industria ceda y se decida a regular la profesión (por ahora, y a la vista está, con escaso éxito).

Por otra parte la CODDI lleva años presionando a los sucesivos equipos del Ministerio competente (antes Educación, ahora Ciencia e Innovación) para que, a pesar de que la profesión no está regulada, se elaborara una ficha también para nuestras titulaciones. Es decir, para que se nos trate exactamente igual que al resto de las ingenierías. Durante unos meses hubo una luz de esperanza porque llegamos a conseguir el compromiso del anterior Secretario de Estado de Universidades, Miguel Ángel Quintanilla, en este sentido. Incluso durante el 2006 se llegaron a publicar borradores de directrices para las ingenierías en informática, basadas en el Libro Blanco de la titulación aprobado por la CODDI en 2003 y aceptado por la ANECA. Por desgracia, el tema de las fichas se estancó para todo el mundo por la falta de acuerdo en algunas ingenierías (y en relación a nuestro caso, en mi opinión, por la presión de determinados lobbys muy interesados en que no se regule la ingeniería informática). En eso llegaron las elecciones y hoy Universidades depende del Ministerio de Ciencia e Innovación y el equipo es otro, que por ahora no asume el acuerdo anterior y se ciñe a lo que dice el Real Decreto: que tendrán esas directrices los títulos que den acceso a profesiones reguladas. Y por eso han salido, finalmente, las fichas de las ingenierías sin las de nuestro ámbito.

En la reunión del pasado 30 de octubre en la Escuela Universitaria de Informática de la UPM, en la CODDI aprobamos una ficha de nuestra titulación de grado que al día siguiente entregó la presidenta, María Ribera (decana de la Facultad de Informática de Barcelona), personalmente a Felipe Pétriz, el actual Director General de Universidades, que las aceptó con el compromiso de comenzar a trabajarlas cuando las fichas de las otras ingenierías estuvieran resueltas, momento en el que el Gobierno le daría a la CODDI la propuesta de solución. A pesar de tener que esperar turno, la impresión de los asistentes a esa reunión parece ser positiva, pero con los políticos las impresiones normalmente son positivas, no suelen echarte a patadas en el culo de su despacho (dejan que las dé la realidad de sus decisiones). Por otra parte, ayer miércoles los representantes de la CODDI se reunieron con los diputados del PSOE que la pasada semana rechazaron la Proposición No de Ley presentada por el diputado Jesús Vázquez, del Grupo Popular (hasta hace poco Decano de la Facultad de Empresariales del Campus de Ourense, buen amigo, pero sobre todo un diputado que ha comprendido el problema y se está partiendo la cara en este asunto), en la Comisión de Ciencia e Innovación del Congreso (podéis ver el debate desde la TV del Congreso) en la que se instaba al Ministerio a cumplir el acuerdo alcanzado con Quintanilla y elaborar nuestra ficha. Por lo visto, los diputados del PSOE opinan (en la misma línea que CiU, que se abstuvo), que la solución pasa por la transposición de la directiva europea de servicios (algo así como un catálogo de profesiones en la que España tendría que incorporar la del ingeniero informático), que se realizará en breve, pero los representantes de la CODDI que asistieron a la reunión no se ve nada claro que este camino sea seguro ni suficientemente rápido.

¿Qué decidió la CODDI para evitar que Escuelas o Facultades se echen al monte y se empiecen a ofrecer títulos universitarios de Ingeniería Informática que sean cada uno de su padre y su madre, desvirtuando definitivamente la titulación y, por extensión, la profesión? Pues pedir el apoyo de los Rectores para las fichas elaboradas por la CODDI para el grado y el máster y las eleven a la CRUE (Conferencia de Rectores de Universidades Españolas), para que, de facto, existan unas directrices propias de la titulación. No es una solución, pero permitiría que la cosa no se desmadrara definitivamente mientras se sigue luchando. No olvidemos que ya hay universidades que este curso 2008/2009 ya ofrecen un título de Graduado en Ingeniería Informática. Pocas, pero las hay.

Es importante actuar rápido y, sobre todo, contundentemente, pues en las fichas que ha hecho públicas el Ministerio se han otorgado a las ingenierías de telecomunicaciones competencias como: Internet, servicios, aplicaciones, componentes, circuitos digitales, circuitos integrados, dispositivos lógicos, microprocesadores, arquitecturas de computadores convencional, secuencial, paralela y multiprocesamiento), procesado digital de la señal, servidores, redes, sistemas distribuidos, sistemas perativos, interfaces persona/computador, usabilidad, seguridad, bases de datos, sistemas de información, programación (fundamentos, métodos, lenguajes, en tiempo real, concurrente, distribuida y basada en eventos), software (tecnología, metodología, ingeniería), gestión del conocimiento, etc. Sinceramente, creo que estas competencias ya no se las quita nadie, pero lo que hay que conseguir es que no sean los únicos que las tienen.

Después de todo este rollo, volvamos a algunas de las afirmaciones con las que empecé este post:

- "Desaparecen las ingenierías en informática". Pues no es cierto. No es que la Ingeniería Informática vaya a desaparecer, porque las Universidades son totalmente libres de ofertar esta titulación, pero... ¿en qué medida resultará interesante cursarla si en las titulaciones de telecomunicaciones se adquieren esas competencias y encima dan acceso a una profesión regulada? La respuesta es obvia, ¿no?

- "Nuestros títulos no son homologables a ninguno al no existir correspondencia con los nuevos títulos". No es cierto, sencillamente porque los títulos antiguos no se homologan con los nuevos. Es un sistema nuevo, con titulaciones nuevas, y no existe el concepto de "homologación". entre unos títulos y otros. Quien tenga un título de Ingeniero Técnico en Informática de Sistemas seguirá teniendo ese título, pero lo mismo ocurre con, por ejemplo, el Ingeniero Técnico en Telecomunicación, o el Ingeniero Técnico Industrial. Lo importante es definir a qué profesión da acceso una titulación. Si el Ingeniero Técnico en Informática de Sistemas da acceso a la profesión (eso sí, no regulada) de Ingeniero Técnico en Informática, la de Graduado en Ingeniería Informática dará acceso a esa misma profesión.

- "Nunca tendremos atribuciones profesionales". El no tener ficha no implica que no vayamos a tener atribuciones profesionales. De hecho, la situación es la inversa: no tenemos ficha porque no tenemos atribuciones profesionales, si bien es cierto que conseguir la ficha podría ser determinante para que al Ministerio de Industria no le quedara más remedio que ponerse a definirlas.

- "Los títulos actuales no tendrán validez". Evidentemente, la validez legal no se perderá nunca, pero sí es cierto que social y profesionalmente, como comentábamos antes, perderán valor al resultar menos interesantes para los estudiantes y estar sus competencias académicas recogidas en los planes de estudios de las telecomunicaciones. Por extensión, los títulos actuales perderán también valor.

- "No podremos trabajar en Europa". Esto sí es una solemne chorrada, puesto que precisamente lo que no existe en muchos países europeos es la Ingeniería de Telecomunicaciones como algo separado de la Informática, y es ésta la titulación reconocible. Además, si las universidades cuidan de que las titulaciones de Ingeniería Informática se hagan ajustadas a las fichas de la CODDI, las competencias serán perfectamente reconocibles para cualquier empleador europeo.

En definitiva, aunque en la exposición del problema hay muchas interpretaciones apocalípticas y poco rigurosas, lo cierto es que estamos ante un problema tremendamente grave, que afecta al futuro profesional del 25% de los ingenieros de este país, y precisamente a aquellos que construyen los cimientos de la sociedad de la información y el conocimiento. Es necesario, pues, una acción conjunta y decidida de los ingenieros informáticos de este país para conseguir que la sociedad y los políticos conozcan y comprendan lo que está en juego. Además, si en estos tiempos los ingenieros informáticos no consiguen que se hable de ellos, no sé quien lo va a conseguir :D

Eso sí, toda movilización tiene que tener unas demandas claras, comprensibles y factibles, que en mi opinión deberían de resumirse en:

1) Obtener del Ministerio de Ciencia e Innovación el compromiso de elaborar una ficha de directrices específicas para las titulaciones de ingeniería informática, en las mismas condiciones que el resto de las ingenierías.

2) Obtener del Gobierno el compromiso de incluir en la transposición de la directiva europea de servicios las profesiones de ingeniero técnico en informática y de ingeniero en informática.

3) Obtener del Ministerio de Industria el compromiso de, en colaboración con los Colegios de Ingenieros Informáticos, elaborar y llevar al Parlamento una ley que regule las atribuciones profesionales del sector.

Dos cosas para terminar: además de la Proposición No de Ley mencionada anteriormente, en los últimos meses se han llevado a cabo otras iniciativas parlamentarias del Grupo Popular dirigidas hacia las dos vertientes del problema (académica y profesional), pero como ya me ha quedado un post kilométrico y son las horas que son, mejor lo dejo para otro post. Y antes de que llegue ningún comentario malintencionado, quiero aclarar que no soy del PP ni mucho menos, mal que le pese a mi buen amigo Jesús Vázquez, pero hay que dar al César lo que es del César, y hoy por hoy son los únicos que están moviendo este tema en el ámbito político.

jueves, 6 de noviembre de 2008

A LA MIERDA LOS INFORMATICOS

Este titular no es despectivo ni mucho menos, pero sí las consecuencias de lo que en España se va a realizar con nuestra "in"digna profesión.

Manu y Patxi me han hecho llegar una noticia que me ha puesto de "mala ostia", pues, como nosotros, tras años de estudio en una carrera puntera (yo la acabé en 1995), tras más de 20 años de experiencia, y con todo tipo de másters y especializaciones, los políticos van a tirar a la basura nuestra profesión, pudiéndola ejercer aficionadillos con un cursillo a distancia, o bien reciclados de dudosa capacitación. Por otro lado, para encontrar trabajo fuera de España, no podremos hacer nada, pues oficialmente no tenemos titulación.

Adiós a la vocación y a la profesión. Adiós a un salario que, aunque insuficiente, podía mantenernos en un estatus medio-bajo. Bienvenidas las consultoras picadoras de carne, que encontrarán el kilo a un euro, prostituyendo nuestra ya jodida profesión.

¿Qué podemos hacer? No sé si nos servirá, pero podemos manifestarnos en una huelga convocada el día 19 de noviembre.

Me están entrando ganas de colgar mis hábitos, y eso que mi vocación es ciega e indomable, pero con noticias como esta me dan ganas de montar una fábrica de pollos y olvidarme de actualizarme en tal o cual tecnología, en aprender tal o cual metodología, o pegarme con ofertas y consultorías.

Si queréis más información, he aquí los siguientes enlaces:

Blog de Manu
http://www.huelgainformatica.es/
http://www.cpiia.org/index.php?option=com_content&task=view&id=169&Itemid=1

viernes, 31 de octubre de 2008

Escritorios: Windows 7 ó Compiz Fusion

La guerra de escritorios está servida. Desde hace un tiempo, MacOS, Linux y Windows están innovando (algunos enmascarando una copia) sus escritorios para hacer más amigable los entornos del sistema operativo, aumentando la espectacularidad, las funcionalidades, la usabilidad y, sobre todo, la facilidad y productividad.

En esta batalla está despuntando Windows 7 y Compiz Fusion (para entornos Linux), mientras que MacOS se queda relegada a un tercer puesto, a pesar de haber puesto las bases que Windows ha implementado en Vista, y ahora, en Windows 7.

En mi anterior post puse dos vídeos sobre las bonanzas de su nuevo Windows 7, que en poco destaca con respecto a Windows Vista, salvo que por algunos detalles se parece a KDE 4 (otro escritorio de Linux), y, espectacularmente, orientado a pantallas táctiles.

A continuación mostraré un vídeo sobre Compiz Fusion, donde se puede constatar la innovación de su interfaz de usuario, y que añade más utilidad al escritorio de los sistemas operativos Linux. Espero que os guste:

miércoles, 29 de octubre de 2008

Demo en vivo de Windows 7

He encontrado este vídeo en HispaMP3 (http://hispamp3.yes.fm), donde se muestra las virtudes de lo que será el sustituto de Windows Vista, ahora en fase Alpha. La verdad es que me ha sorprendido sus capacidades multitáctiles, aunque me asusta pensar qué pedazo de ordenador se necesitará para que la interfaz gráfica funcione con cierta estabilidad y velocidad. Parece que la versión instalada ocuparía cerca de 10GB. Aún con este axfisiante despilfarro de recursos, parece que se ha conseguido hacer funcionar Windows 7 en un Netbook ASUS EeePC con sólo 1GB de RAM. El truco lo podríamos encajar en tener una versión desnuda de funcionalidades y de prestaciones para que este ordenador sea capaz de ejecutar semejante bestia.




En YouTube tenemos este otro vídeo:



Lo que echo en falta es el invento de Asus en sus nuevos Netbooks, y que pueden aprovechar las capacidades táctiles para usar un ratón o un teclado totalmente integrado en una pantalla táctil.

Una de las cosas que llama la atención es que los gadgets ya no aparecen en el slidebar lateral, si no dispersos en el escritorio, y la barra de tareas también cambia. Estos cambios ya han sido comentados en otros foros, y hacen pensar que Windows 7 se parece ahora más al escritorio KDE de Linux y al MacOS X. Microsoft, desde luego, nunca ha destacado por innovar y sí por copiar lo que otros hacen. Eso sí, con un marketing mucho mayor. Desde luego, viendo las siguientes imágenes, la verdad es que se parecen mucho... quizá demasiado:




Para concluir con esta introducción sobre Windows 7, en los diversos foros y blogs que he estado leyendo, se ha llegado a la conclusión de que Microsoft no ha redefinido el CORE del sistema operativo, y que esto no es más que un Vista segunda parte. Lo que ha hecho ha sido más crear expectativas que innovaciones. Como siempre, se barajan fechas para octubre-noviembre de 2009, aunque si lanzan Windows Server 2008, me parece que la fecha irá para 2010 o 2011. ¿Apuestas?

martes, 28 de octubre de 2008

Usar Aero en Windows Vista

Hace ya un tiempo critiqué duramente a Windows Vista, pues nada más comprarme mi nuevo ordenador portátil (un Compaq Presario C700), ya tenía pantallazos azules de la muerte casi desde el primer día, cuelgues constantes, comportamientos extraños y muchas inestabilidades.

El ordenador tiene 10 meses ahora, y me he visto en la tesitud de tener que hacer algo con él, pues apenas lo he podido usar debido a esa inestabilidad. Instalé Mandriva 2008, pero tuve el problema que el chip para redes inalámbricas no lo reconoce (ni ningún otro Linux de los que he probado, tanto LiveCD como desde pendrive), y aún haciendo trucos que se comentan en los foros no he conseguido configurarlo.

Tras hacer mis backups, me puse ante un abismo de incertidumbres. Vista no me había gustado, Linux no reconoce mi red Wifi. Estuve tentado de instalar Windows XP que tan buenos resultados me ha dado durante los últimos años, pero si mi chip de red es nuevo, es muy seguro que el driver no me lo reconozca, y tener que buscar un driver específico puede ser un poco difícil. Así pues me aventuré a instalar Vista.

Tras arrancar un linux SystemRescue en modo LiveCD, y ejecutar GParted para eliminar las particiones, me puse a instalar un Windows Vista nuevo, no el que venía OEM en mi equipo. Tras instalarlo, sorprendentemente ha funcionado muy bien, y tras un buen rato de uso, lo he encontrado muy estable y funcionando sin problemas. Ahora puedo achacar los problemas de inestabilidad no a Windows Vista, si no a la cantidad de programas que venían con el equipo (Norton, Lightscribe, HP ....), que lo que hacían era eso: desestabilizar el equipo.

La versión que tenía OEM anteriormente era una Home Basic, por lo que las opciones de configuración estaban muy limitadas, y carecía de la característica Aero Glass. La versión que he instalado ahora es una Ultimate, la cual, en teoría incluía esta característica. Tras mucho buscar y navegar entre las opciones de Vista, no he encontrado la susodicha característica.

Como en Linux, has de tirar de Google y buscar en foros la forma de llevarlo a cabo. Sorprendentemente, en muchos de estos foros te indican que debes tener unos requisitos mínimos de memoria y de tarjeta gráfica. Mi equipo va muy sobrado en ese aspecto, pero no ha activado Aero. Así pues, lo he forzado de forma manual, que casi me recuerda a un usuario avanzado de Linux por los pasos que hay que realizar y del conocimiento avanzado que se requiere para ello. A continuación resumo cómo hacerlo:

1) Ejecutar Regedit
2) Cambiar el valor de la clave HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM\Composition a 1 (en decimal)
3) Cambiar el valor de la clave HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM\CompositionPolicy a 2 (en decimal)
4) Ejecutar la consola de Windows (CMD)
5) Ejecutar el comando "net stop uxsms" para para el gestor de escritorio
6) Ejecutar el comando "net start uxsms" para iniciar el gestor de escritorio con la nueva configuración

Algunos de los detalles que apreciarás con Aero en acción son los siguientes:
1) Las barras de título de las ventanas se vuelven transparentes. El menú inicio también se vuelve transparente.
2) Al usar Alt+Tabulador para pasar de una a otra aplicación, donde verás una miniatura de cada aplicación con su visualización real en lugar del típico icono.
3) Al poner el ratón sobre cada aplicación minimizada en la barra de tareas (barra inferior), mostrará una miniatura de la misma con su visualización real.
4) Al usar tecla Windows+Tabulador, pasaremos de una a otra aplicación, pero mostrando en tres dimensiones las ventanas de cada una de éstas.

lunes, 27 de octubre de 2008

Flex: Ejemplo de acceso a datos remotos

El objetivo de este interesante artículo es demostrar cuán sencillo y potente es el uso de la tecnología Flex. En esta ocasión procederemos a invocar a datos almacenados remotamente, y visualizarlos en varios componentes, como una lista o un DataGrid.



El escenario será, por un lado, un sistema remoto (o local) basado en Apache, en donde se ha instalado un servidor de base de datos MySQL y el motor de PHP. Este sistema contendrá un servicio que retornará un XML con la información recogida, la cual será interpretada por la aplicación Flex, que mostrará dicha información.

En primer lugar, se ha creado una base de datos con una tabla muy sencilla que contendrá una relación de categorías. Esta tabla tiene la siguiente estructura:


TABLA: gallery_categories
CAMPO: id_category - unsigned integer, not null, primary key
CAMPO: category_name - varchar(16), not null
CAMPO: category_directory - varchar(255), not null

Para acceder a la base de datos, utilizaremos PHP, el cual se ha instalado sobre el servidor web Apache. En el directorio "htdocs" de Apache, se ha creado el fichero "service_categories.php". Este fichero contendrá el siguiente código:


<?php
function getCategories() {
$xml = "";
mysql_select_db('basedatos');
$qry_categories = "select id_category, category_name
from gallery_categories";
$result_categories = mysql_query($qry_categories);
$num_categories = mysql_num_rows($result_categories);
if ($num_categories>0) {
$xml="<gallery_categories>\n";

for ($i=0; $i<$num_categories; $i++)
{
$row_categories = mysql_fetch_array($result_categories);
$category_name = $row_categories['category_name'];
$xml = $xml." <category>\n";
$xml = $xml." <label>".$row_categories['category_name'].
"</label>\n";
$xml = $xml." <data>".$row_categories['id_category'].
"</data>\n";
$xml = $xml." </category>\n";
}

$xml= $xml."</gallery_categories>\n";
}

return $xml;
}


@ $db = mysql_pconnect('localhost', 'usuario', 'password');

if ($db)
{
$categories = getCategories();
echo "<?xml version=\"1.0\" encoding=\"ISO-8859-1\" ?>\n\n";
echo $categories;
mysql_close($db);
}

?>

El código PHP conecta con la base de datos (mysql_pconnect), invoca a la función getCategories(), la cual accede a la tabla, leyendo todos sus registros, y componiendo un XML, el cual será retornado por PHP. Este XML será como el siguiente:


<?xml version="1.0" encoding="ISO-8859-1" ?>

<gallery_categories>
<category>
<label>Categoria1</label>
<data>1</data>
</category>
<category>
<label>Categoria2</label>
<data>2</data>
</category>
</gallery_categories>

Podríamos haber usado los nombres de los campos en el XML. El uso de los tags "label" y "data" es debido a que el componente lista de Flex, utiliza estos tags clave para formar automáticamente la lista, mostrando el texto (label) y asociando el código correspondiente (data).


Una vez resuelta la lógica de negocio, le toca el turno a la presentación, en la cual Flex es el protagonista. Se comienza con la siguiente estructura de código:


<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute"
creationComplete="categoriesRequest.send()">

</mx:Application>

Flex utiliza el lenguaje MXML, basado en un juego especial de códigos en formato XML. Por ello, la primera línea (<?xml...), corresponde a un fichero en sintaxis XML. Tras esta línea, comienza la aplicación, la cual está representada por los tags <mx:Application> y </mx:Application>, y entre estos tags iría toda nuestra aplicación. A modo aclaratorio, todos los tags de Flex utilizan el prefijo "mx:", seguido de un tag correspondiente a un comando del lenguaje MXML.


El atributo "<xmlns..." apunta al juego de comandos del lenguaje XML.


El atributo "layout", indica la forma en que se distribuirán los componentes en el espacio de visualización de la aplicación. El valor "absolute" indica que la posición estará basada en coordenadas X e Y, desde la esquina superior izquierda, expresada en píxeles.


El atributo "creationComplete" indica qué debe hacer la aplicación una vez haya sido creada la instancia de la misma. En este caso, invocará al método send() del objeto "categoriesRequest", el cual se verá a continuación, y que se encargará de invocar al servicio creado en PHP.


El primer comando a utilizar dentro de nuestra aplicación será la siguiente:


<mx:HTTPService
id="categoriesRequest"
url="http://localhost/service_categories.php"
resultFormat="e4x"
useProxy="false"
/>

Este comando crear un servicio HTTP, el cual invocará al servicio creado en PHP, indicando la ubicación de éste en el atributo "url". El atributo "id" genera el nombre de cualquier objeto. En este caso, el objeto "categoriesRequest" es invocado a través de su método send() una vez creada la aplicación (ver el atributo creationComplete()". El atributo "resultFormat" establece el formato del XML a ser tratado, que, en este caso, es el "e4x", el cual permitirá tratar el XML de forma sencilla e intuitiva. Por último, el atributo "useProxy" determinará el uso de un proxy en caso de ser necesario (en nuestro caso no lo es).


Para probar el correcto funcionamiento de este servicio, utilizaremos el componente TextArea, el cual mostrará el XML recuperado por el objeto "categoriesRequest". Se incluirá el siguiente código justo después del anterior:


<mx:TextArea
width="300" height="200"
text="{categoriesRequest.lastResult.toString()}"/>

El componente TextArea mostrará una caja de texto grande que permite visualizar varias líneas. El atributo "width" establece el ancho (en píxeles) del componente. El atributo "height" establece el ancho. El atributo "text" contiene el texto a visualizar en el componente. En este caso, el resultado del comando ejecutado entre las llaves será lo que se visualice. El comando en cuestión es el texto devuelto por el método toString(), correspondiente al XML invocado por el objeto "categoriesRequest". "lastResult" permite posicionarse al inicio del XML obtenido.


El resultado sería el siguiente:



Una vez verificado que se recoge bien el XML, se procede a utilizar el mismo para utilizar los datos obtenidos de forma funcional. En el primer ejemplo se utilizará una lista, la cual mostrará los valores legibles, uno debajo de otro. Cuando se selecciona uno de estos valores legibles, internamente tendrá asociado un valor clave, como un código o un identificador. Para ello, el XML debe tener los tags clave <label> y <data>. Para ello, se sustituirá el código del componente TextArea por este otro código:


<mx:List
id="lst_categories"
dataProvider="{categoriesRequest.lastResult.category}"/>

El componente List accederá al nivel del tags "category" dentro del XML, recogiendo de cada uno encontrado los atributos "label" y "data", y aplicando el texto y el valor correspondientes a la lista. El atributo "dataProvider" se encargará de acceder a dicho nivel, dentro del XML obtenido en el objeto "categoriesRequest".


El último componente a probar será DataGrid, que mostrará una tabla con los datos. En este caso, no sería necesario que utilice los tags clave "label" y "data", pudiendo utilizarse los tags deseados. El código para este componente será el siguiente:


<mx:DataGrid
dataProvider="{categoriesRequest.lastResult.category}">
<mx:columns>
<mx:DataGridColumn
headerText="ID"
dataField="data"/>
<mx:DataGridColumn
headerText="Nombre"
dataField="label"/>
</mx:columns>
</mx:DataGrid>

"DataGrid" define el objeto de tabla, que se alimentará de los niveles "category" del XML (dataProvider). El tag "mx:columns" define la estructura de columnas de la tabla, cada una de las cuales está representada por el tag "mx:DataGridColumn", estableciendo el texto de cabecera (headerText) y el campo origen de los datos (dataField).


El resultado sería el siguiente:


miércoles, 15 de octubre de 2008

La crisis y la tecnología

La voraz e inconsumible crisis que asola todo el planeta afecta también a las tecnologías. Hace meses no veo tantas novedades en el panorama tecnológico, las releases de las distribuciones Linux no son tan frecuentes, y las innovaciones no tienen tanto eco. Lo último, el SIMO se ha cancelado por primera vez en su historia, ante la ausencia de sus principales patrocinadores.

¿Cómo está afectando la crisis mundial en nuestro mundo tecnológico?. Principalmente, los clientes que demandaban tecnología congelan proyectos, y los que están en marcha, si no tienen un ROI (retorno de la inversión) inmediato, también se paralizan. Por tanto, la maquinaria se queda parada, y sólo unos pocos intrépidos (o insensatos) continúan adelante. En alguna compañía demandan proyectos bajo subasta, es decir, que sacan un pliego, se presentan varias empresas tecnológicas con una oferta, cogen la más baja, y a todas estas empresa les insta a ver quién baja un 15%. Si hay más de una que puja, entonces hay otra oferta bajando otro 5%. Y así hasta que sólo quede una.

Tal y como lo veo, es más el miedo y la imagen virtual que se forma en torno a la crisis que lo que es realmente la crisis. Los miedos son chispas que encienden el bosque entero, y ante esta situación, en lugar de echar agua se echa gasolina.

A lo mejor esta crisis nos hace más fuertes, más ingeniosos, más inteligentes, más audaces y más fuertes. Aquí es donde realmente aquellos que valen destacan, y los mediocres se hunden. Porque navegar en un mar calmo es muy sencillo y cualquiera puede hacerlo. Pero gobernar la nave en una tormenta es sólo para los grandes capitanes.

Así está ocurriendo con empresas como BSCH, que en el gremio más castigado por la crisis se permite el lujo de comprar otros bancos y hacerse más grande. Lo mismo ocurre con Microsoft o Google, que recientemente han comprado empresas.

Creo que en la tecnología ocurrirá lo mismo, y que esta crisis va a cambiar la forma de hacer negocios tecnológicos, aunque en un principio sea doloroso. Ya no va a haber proyectos "fantasmas" para justificar la asignación de presupuestos para innovación. Ya no va haber tanto coleguismo y comisiones en productos, servicios y consultorías. Ya no va haber tantos "engordes" de presupuesto, en la que la jornada de un consultor cuesta tanto como el sueldo mensual de la mayoría de los españoles. Ya no va a haber tanta actualización sólo por estar a lo último, y no porque realmente se necesita. Ya se va a empezar a eliminar pirámides invertidas cuyos costes son exacerbados. Ya se va a ver el software libre como una alternativa real, aunque al principio sea sólo por el concepto de que es más barato, y no por su aporte tecnológico y social. Ya se va a considerar a un técnico como la persona más valiosa de toda la cadena tecnológica.

Podría enumerar tantas y tantas premisas sobre los atropellos y abusos que ha habido desde que me alcanza la memoria, que no darían a basto en este post. Y la verdad, me gustaría que se acabaran, porque lo que hacen es minar la profesionalidad de esta profesión, y a la que los clientes ven como "una moto" o "mucho humo".

En esta España que nunca abandonó la picaresca, no dejará de existir el pillaje. Pero la crisis creo que va a ser una buena limpiadora de buscones y lazarillos, dejando en el camino los cadáveres de los mediocres. Tan sólo los espabilados, los osados, los inteligentes, destacarán al final de la hambruna.

martes, 14 de octubre de 2008

Vidas subyagadas al Síndrome de Piernas Inquietas

En estos momentos ando envuelto en una interesante y altruista aventura literaria, en la que intento dar a conocer una enfermedad aún desconocida por muchos, pero que poco a poco va copando índices de padecimiento cercanos a una plaga (el 10% de la población). Podemos padecerla cualquiera, y no es algo contagioso, y sí que tiene que ver mucho con nuestra dieta y nuestro ritmo de vida (entre otros muchos factores). Se trata del Síndrome de las Piernas Inquietas, SPI, síndrome de Ekbom o acromelalgia.

Quisiera, desde este humilde espacio, haceros gala de mi trabajo, publicándolo para vuestra curiosidad y para dar a conocer esta enfermedad que va llenando las noches de insomnes y que aún no saben qué padecen.

La obra se denomina "Vidas subyagadas al Síndrome de las Piernas Inquietas", la cual está compuesta, principalmente de dos bloques. El primero de ellos explica la enfermedad, sus síntomas, los diagnósticos, los tratamientos, etc. La segunda parte simula una reunión de grupo de 10 pacientes de SPI, quienes dan su testimonio y narran sus experiencias.

Creo que es muy interesante conocer el SPI, y si conoces de alguien que pueda padecerlo y no sepa que lo tiene, le estarás ayudando.

URL de descarga: http://galeon.com/rinconfelicidad/VidaSubyagadaSPI.doc

Creative Commons License
Vidas subyugadas al Síndrome de Piernas Inquietas by http://galeon.com/rinconfelicidad/VidaSubyagadaSPI.doc is licensed under a Creative Commons Reconocimiento-No comercial 3.0 Unported License.
Based on a work at galeon.com.

NOTA IMPORTANTE: Este libro ha sido incluido en la obra "SPI: el demonio que me despierta mientras duermo", junto con otros artículos de otros co-autores. No se tratan de dos obras distintas. Para tener la obra completa: https://www.safecreative.org/work/0812011699209

domingo, 12 de octubre de 2008

Novedades Linux

En los últimos días han ido apareciendo novedades en cuanto a distribuciones Linux. He aquí las más interesantes:

Mandriva Linux 2009: Esta última versión incluye el escritorio KDE 4.1, aunque también incluye Gnome 2.24, XFCE y, para Netbooks, el escritorio liviano LXDE. También incluye OpenOffice 3, Mozilla Firefox 3, compatibilidad con dispositivos móviles, capacidades para NetBooks y el Kernel 2.6.27

Vector Linux 5.9: Increíble distribución basada en XFCE, Compiz, docks, etc. Es una distribución ligera pero con lo último en complementos Linux, drivers wifi, NTFS, Firefox, Opera, Gimp, AbiWord, Gnumeric, juegos, etc.

CentOS 4.7: Distribución basada en RedHat Enterprise Linux, y basada también en módulos libres. Incluye Gnome, KDE, Compiz, OpenOffice, Firefox 3, Apache, MySQL, PostGreSQL, etc.

CD Linux 0.62: Distribución liveCD minimalista (ocupa sólo 59MB), que incluye características multimedia (video, VLAN, Linux UVC). Su Kernel es 2.6.26.6, escritorio XFCE.

Puppy Linux 4.1: Distribución liveCD minimalista (95MB) que reconoce multitud de hardware y drivers, con Kernel 2.6.25.16, con detector de virus, VoIP, personal blog PPLog, reproductor de música Pmusic, AbiWord, Gnumeric, tratamiento de fotos, visor PDF, tostador de CDs, etc.

GParted Linux 0.3.9-4: Distribución liveCD minimalista (94MB), basada en Debian y en el kernel 2.6.26, especializada en la gestión de particiones

LinuX-Gamers 0.9.4: Curiosa distribución Live-DVD, basada en ArchLinux, en el que podremos jugar a los mejores juegos en 3D. Hay una decena de juegos (lista pulsando aquí: http://live.linux-gamers.net/?s=games)

PC-BSD 7: Los sistemas BSD no son sistemas Linux, aunque estén basados en Unix, y compartan muchos módulos. Este tipo de sistemas son puristas y orientados, principalmente, al trabajo de servidores, concretamente a redes y a seguridad. Esta versión de PC-BSD utiliza el escritorio KDE 4.1.1

jueves, 2 de octubre de 2008

Alternativas libres de retoque fotográfico

Hace algunos años, el mercado estaba dominado por software propietario en la mayor parte de los sectores de negocio. Recuerdo con añoranza la primera vez que me puse delante de un Macintosh Quadra II, y descubrí a Photoshop, QuarkXPress y Freehand. Era una maravilla disponer de estas herramientas tan profesionales para un mundo de diseño muy especializado y en el que las licencias eran prohibitivas.

Más adelante descubrí otras alternativas propietarias a Photoshop, más económicas. Estas eran Paint Shop Pro, Corel Photopaint y Picture Publisher. Cada una de ellas aportaba algo común a todas, y algo distinta. Por ejemplo, Picture Publisher fue la primera en incorporar las capas o la selección vectorial. El resto le secundaría un poco más tarde.

Aquí no discutiré cuál es mejor o peor, puesto que la elección se basa en muchos factores: necesidades, manejo o usabilidad, gustos, costes, etc. Aunque, sin duda, la referencia indiscutible ha sido Photoshop.

Pero la evolución del software se encamina hacia la libertad, y uno puede encontrar maravillas que no cuestan tanto dinero (en principio son gratuitas, pero si quieres soporte, lo tienes que pagar). Otro punto positivo del software libre radica en que el código fuente está disponible, y uno puede adaptar - si quiere - ese software a cosas más personalizadas. Uno puede pensar que para qué quiere uno aprender un lenguaje de programación, meterse en las tripas del bicho, y hacer otro bicho nuevo. Bueno, visto así, no parece importante, pero sí lo es que cientos, miles o millones de programadores de todo el mundo formen comunidades con respecto a un software en concreto, accedan al código, y puedan aportar nuevas ideas y nuevas funcionalidades, ampliando y perfeccionando dicho software. Y esa aportación es la que los usuarios de a pie disfrutarán desde sus ordenadores.

Con esta introducción queda claro cuál es el espíritu del software libre, y esto nos puede dar un poco la dimensión de qué cosas se pueden llegar a hacer.

En el mundo del retoque fotográfico han ido apareciendo aplicaciones libres, que nada tienen que envidiar a las propietarias. Animo a los lectores a instalárselas y probarlas, sin tener que pagar un céntimo en licencias. Además, están disponibles en Internet y bajarlas cuando quieran. Asimismo, encontrará multitud de foros donde se exponen dudas y casos, y que son resueltas por otros usuarios. Incluso se podrá bajar manuales y libros sobre estas aplicaciones, así cómo tutoriales y trucos. ¿Alguien da más?

En este artículo se analizan tres alternativas de retoque fotográfico, que me han resultado más interesantes. Hay más alternativas, para todos los gustos. Sólo es necesario bucear en Internet y extraer aquellas que más se adapten a nuestras necesidades e intereses.


The Gimp



The Gimp es el programa libre de retoque fotográfico por excelencia. Algo así como el Photoshop del mundo libre. A mí, particularmente me parece una definición estándar que ha sido aceptada en todas partes, ya que es el programa más difundido y que más aceptación tiene, y el que, desde casi el inicio, aparece en las distribuciones Linux, aunque está disponible también para Windows, Solaris, MacOS X y FreeBSD.



Los enlaces oficiales son los siguientes:
http://www.gimp.org./
http://www.gimp.org.es (en español)

The Gimp posee la mayor parte de las funcionalidades de un programa profesional de retoque fotográfico: capas, filtros, plug-ins, mejora de imágenes, herramientas de dibujo, herramientas de retoque digital, interfaz personalizable, soporte de hardware (cámaras digitales, scanner, impresoras...), compatibilidad con multitud de formatos gráficos, etc.



En YouTube podrás encontrar multitud de vídeo-tutoriales para sacarle el mayor rendimiento de esta maravilla.


Nathive



Este proyecto OpenSource es el más reciente de todos, y tiene muy buenas perspectivas. Este programa está más orientado a la usabilidad, en la que el usuario podrá realizar multitud de acciones con pocos clics o con gestos del ratón, optimizando la productividad. En cuanto a las funcionalidades, posee lo necesario para realizar la mayor parte de las operaciones que se pide a un retocador fotográfico.



Enlaces:

http://www.nathive.org

Este software, de momento, sólo está orientado a sistemas Linux (lo siento, windowseros).

En este vídeo podréis observar a Nathive en acción:




Paint.NET



Esta propuesta es específica para Windows, en la que han llevado la aplicación Paint a niveles cercanos al Photoshop.

Tiene una interfaz muy simple e intuitiva, donde todo está a mano, y es fácil de aprender sin necesidad de asistentes. Posee una fácil gestión de capas, acceso online a la comunidad (para acceso a tutoriales y plug-ins), actualizaciones automáticas, multitud de efectos especiales, multitud de herramientas de diseño (incluyendo las vectoriales Bezier), etc.



Enlaces:
http://www.getpaint.net

lunes, 29 de septiembre de 2008

100 razones para usar Linux (en vez de Windows)

He aquí 100 razones (discutibles, of course) que se esgrimen acerca de por qué es preferible Linux a Windows. Particularmente, prefiero los dos sistemas según qué necesidades, y también Solaris, BSD, MacOS, etc.

1. No tienes que activar Linux por teléfono o Internet.

2. Si cambias tu hardware y reinstalas Linux no tienes que llamar a nadie para justificarte.

3. No hay nada parecido a un "Linux Genuine Advantage".

4. Los vendedores de Linux normalmente no te cobran ni un duro.

5. Y no le dan 10 millones de dólares de sus ganancias a Jerry Seinfeld.

6. Puedes instalar Linux en tantos PCs como quieras.

7. Puedes regalárselo a tus amigos y familia.

8. Puedes descargarlo y tostarte CDs y DVDs hasta que te aburras.

9. No tienes que introducir complejas claves de producto.

10. No tienes que guardarte esas claves para tu seguridad.

11. Nadie tiene que vender un ordenador de segunda mano con Linux y luego estar escuchando críticas del comprador porque Word no está preinstalado en el ordenador.

12. No tienes que explicarle a los usuarios de Linux que Windows 97 no existe, ni tampoco Office 98, o que la famosa "cinta" o "ribbon" no está presente en Vista.

13. ¿Te gusta Internet? El protocolo TCP/IP se desarrolló en máquinas UNIX. Es algo natural en Linux, no como en Windows que dio soporte a TCP/IP de forma nativa tan sólo a partir de Windows 2000.

14. ¿Te gusta programar? El lenguaje de programación C se desarrolló en UNIX.

15. Además, muchos lenguajes de script muy conocidos comenzaron su andadura en el mundo Linux/UNIX.

16. Si aprendiste PGP serás capaz de escribir aplicaciones para Windows Server 2008, que da soporte a PHP de serie, no como ocurre con el ASP.NET de Microsoft, que no está soportado de serie en WS2008.

17. No necesitarás desfragmentar discos en Linux. Nunca.

18. Y aunque no sea el caso, el vendedor te dirá que el sistema está libre de mantenimiento, ya que puedes programar una tarea para desfragmentar.

19. No te tienes que preocupar de los virus de ordenador.

20. Puedes estar seguro de que tu experiencia informática será más segura ya que la propia filosofía de Linux y de su gestión de procesos hace que estos siempre se ejecuten con el mínimo nivel de privilegios.

21. Linux es protagonista en la Informática de Alto Rendimiento (HPC) .

22. De hecho, el 80% de los 500 supercomputadores de todo el mundo corren Linux.

23. Linux revitalizará tu viejo hardware y dará un rendimiento increíble en viejas máquinas.

24. Hará también mejor uso de tu hardware moderno.

25. No tendrás que "reiniciar de forma rutinaria" tus servidores Linux.

26. Si necesitas una suite ofimática puedes descargar Open Office y utilizarla. No hay gasto adicional.

27. Si necesitas un aplicación para publicar documentos dispones de Scribus.

28. La utilidad de actualización de software de Linux se hace cargo de todo, no solo del sistema operativo y de las utilidades que se incluyen en la instalación, sino de todo el resto de aplicaciones y paquetes instalados.

29. No tendrás problemas con aplicaciones que no te puedes permitir. Casi todo el software es de libre distribución.

30. No tienes que tener software pirata porque no te puedes permitir el original. Por lo mismo, claro.

31. Linux es mucho más fácil de configurar. No existe ese complejo registro, ni tampoco elementos de configuración ocultos tras un sinfín de pestañas o localizaciones distintas.

32. Todas tus preferencias respecto a las aplicaciones se almacenan en tu directorio raiz, lo que facilita trasladarlas a otro ordenador.

33. Linux es un sistema oeprativo abierto. Si hay un problema de seguridad, podrás conocer todos los detalles. Hay mucha mayor transparencia.

34. No dependes de un vendedor/desarrollador único en Linux. No dependes de una única entidad para que siga funcionando.

35. Linux es versátil. Puedes usar la misma distribución en una plataforma de 32 o 64 bits, en un servidor MIPS, en una estación de trabajo SPARC y en otras arquitecuras. Te encontrarás con el mismo resultado, que además se aprovechará al máximo de la configuración hardware.

36. Los grupos de usuarios de Linux son muy numerosos y siempre están más que dispuestos a compartir su conocimiento, además de consejos e ideas.

37. Linux te anima a aprender más sobre tu ordenador y cómo hacer mejor uso de él.

38. Linux es usable: la interfaz por defecto es buena, pero puedes personalizarla para que se parezca, si así lo quieres, a Windows XP o Mac OS X, lo que hace fácil adaptar a los usuarios de Windows XP a Linux, por ejemplo.

39. Linux está avanzando a un ritmo que un proyecto cerrado y propietario como Microsoft Windows es incapaz de sostener.

40. Linux no se cuelga sin razón aparente. Un navegador que se cuelga no puede provocar un cuelgue general del sistema.

41. Linux no se reinicia a sí mismo, y las actualizaciones automáticas no te forzarán a ello de forma inmediata.

42. Linux puede leer y escribir en decenas de sistemas de ficheros, incluidos los de Windows, luego podrás manejar tus datos en estas particiones sin problemas.

43. Dispones del código fuente de todo el sistema y las aplicaciones para hacer lo que quieras con él si tienes los conocimientos necesarios.

44. Linux se instalará sin problemas en cualquier partición lógica, no sólo en las primarias.

45. Linux puede funcionar desde un CD sin afectar lo que ya tienes instalado en tu PC.

46. Puedes usar un LiveCD, por ejemplo, para acceder a tu banco online sin miedo a virus o troyanos.

47. Puedes usar un CD de Linux para comprobar cómo funcionará tu hardware sin tener que preocuparte por lo que hacer si las cosas no funcionan.

48. Linux y su herencia UNIX hacen de este el sistema operativo mejor documentado.

49. Linux dispone de herramientas de gestión de paquetes excelentes que hacen sencillísimo instalar y actualizar aplicaciones (o eliminarlas).

50. Linux dispone de algunos juegos sobresalientes. Puede que no sea un argumento muy destacable, pero hay juegos que sólo están disponibles para Linux y son fantásticos.

51. Esto también incluye a juegos educativos, como la aplicación GCompris, ideal para entornos de este tipo.

52. Si quieres, también puedes jugar a juegos de Windows bajo Linux.

53. Linux dispone de un entorno de escritorio con efectos 3D y una usabilidad impresionante.

54. El TCO (Total Cost of Ownsership) es una palabra típica de entornos empresariales, y en este apartado Linux machaca a Windows.

55. Linux interopera con todos: con Windows, con Mac OS, con otras distribuciones de Linux, con UNIX, OS/2.. ¡e incluso PlayStations!

56. Linux soporta una gran cantidad de dispositivos hardware.

57. Linux es más fácil de instalar.

58. Linux ofrece un par de soluciones de antivirus gratuitas, orientadas a ayudar a los usuarios con Windows.

59. Puedes crearte tu propia distribución si así lo quieres, por ejemplo, diseñándola para tu familia.

60. Linux ofrece un montón de herramientas de seguridad. Puedes diagnosticar y gestionar tu entorno de red gratuitamente, algo que en Windows te costaría un quintal.

61. Algunas de estas utilidades también están disponibles en Windows, pero a menudo con funciones limitadas.

62. Linux ofrece compatibilidad de serie con todos los nuevos netbooks que han revolucionado el mercado portátil.

63. El proyecto One Laptop Per Child también habría sufrido si estuviera restringido a sistemas operativos propietarios.

64. Linux te puede auydar a erradicar el spam sin coste alguno con soluciones como Spam Assassin.

65. La filosofía Open Source te protege de temas maliciosos.

66. Tampoco tendrás problemas como los que afectaron a los usuarios que instalaron iTunes y sin que se les avisase acabaron con el navegador Safari también instalado.

67. Todo tipo de escuelas alrededor del mundo han señalado la reducción de costes al usar Linux.

68. Según una encuesta, los programadores Open Source ganan más que sus homólogos en Windows.

69. Incluso puedes conseguir que Google te esponsorice para contribuir a proyectos Open Source gracias al tradicional Google Summer of Code.

70. Windows Vista pone a prueba tu hardware, mientras que con Linux consigues el mejor rendimiento de tus componentes.

71. Linux ofrece a las empresas un entorno para servidores muy superior al de Microsoft.

72. Cada vez más usuarios de Windows Vista migran a Linux.

73. El software Open Source ofrece versiones superiores de Microsoft Office SharePoint Server que las que ofrece Microsoft.

74. Linux está disponible solo cuando está totalmente preparado.

75. Además, los desarrolladores tienen mucha reputación, ya que cada nueva versión del sistema está muy pulida por ellos.

76. Linux siempre es y será un sistema operativo multiusuario.

77. Linux te permite utilizar el sistema operativo en tantas particiones y discos duros como desees, y todas ellas seguirán pudiendo parecer un único disco.

78. Gracias a los enlaces simbólicos es fácil solucionar problemas de espacio en disco instalando otra unidad y ampliando el espacio a ella con técnicas como el uso de esos enlaces simbólicos.

79. Linux dispone de lenguajes de script increiblemente potentes.

80. La línea de comandos de Linux permite recuperar sentencias que utilizaste hace mucho.

81. Linux te deja colocar una ventana por encima de todas las demás con facilidad.

82. El Proyecto Honeypot demostró que un sistema Linux sin parchear puede ser utilizado como servidor en Internet sin que se vea comprometido en meses, algo que ocurre en horas en servidores Windows.

83. En el mundo Windows se dice que un administrador de sistemas Linux es más caro, y puede ser, pero porque entre otras cosas esta persona puede controlar muchos más servidores que uno de Windows, y porque estos sistemas son más versátiles.

84. Un sistema con Linux preinstalado puede ser usado para muchas más cosas que un sistema con Windows preinstalado nada más haber salido de la caja.

85. Puedes ponerle Linux a tus padres y abuelos y no tendrán problemas: podrán realizar las tareas que más les gustan sin dificultad.

86. No tendrás a tu padre llamándote para preguntarte qué pasa con los cuelgues de ese extraño archivo llamado RUNDLL32.EXE.

87. Y hablando de tus padres, en Linux se instalan de serie un montón de juegos de cartas.

88. Tux es la mascota más chula del momento. No como la de Windows... ¿unas ventanas de colores?

89. Linux es más ecológico, ya que evita todo ese gasto de papel que se gasta en la distribución de productos Windows.

90. Linux permite seguir aprovechando máquinas que dado el ritmo de cambios en el hardware al poco se quedan antiguos para las modernas versiones de Windows.

91. Linux te permite ser más productivo, con cosas como el establecimiento de distintos escritorios de trabajo.

92. Linux es más amigable que Windows.

93. Linux está diseñado por personas que buscan en todo momento maximizar el rendimiento, no los beneficios.

94. Algunos fabricantes como ASUS están empezando a integrar Linux incluso en sus placas base.

95. Linux no morirá como le ha ocurrido a otras alternativas como BeOS, AmigaOS o OS/2.

96. La industria cada vez respeta y apoya más a Linux.

97. Linux no restringe qué contenidos se usan en el sistema. No hay plataformas DRM molestando.

98. Si tienes un problema con algún proceso en Linux, puedes matarlo sin problemas y de forma definitiva.

99. Linux sigue manteniendo su filosofía original, y no ha ido variándola con el tiempo como ha hecho Windows para ir usando cosas como TCP/IP o el nuevo UAC.

100. Linux funciona.


Fuente: Muy Linux
Artículo original: ITWire