31.1.09

Tools and Tips for Productive JavaScript Development

When it comes to develop with Javascript many experienced developers start to tremble. Just few weeks ago, speaking with a former Java Analyst friend, currenty Project Manager, told me that he get shocked when he realizes that some developers of his team were still using the terrible javascript alert() method to debug js code, instead of using, for example, Firebug. Obviously, alert() debugging has been a common practice in the past (although by this time you can also use Venkman debugger in Netscape), but now in 2009 it does not make sense.

When using firebug, you just need to type, console.log("test"), for example, to view in your firebug console panel the messages and tracings you need to check your code. Not only that, you are also able to set breakpoints in your javacript code, inspect HTML DOM tree, check the time needed by your application to load and much more.

Another important point that set back programmers form JS development is the absence of a good IDE with features such as intellisense, code completion, and so on. But now, you can use Netbeans, Eclipse, or VisualStudio to develop with javascript in the same way you do with any other programming language (almost).

An old common misconception when developing web applications was that is mostly suited to validate forms. This changes upside-down when Google started to use AJAX in Maps, and GMail. In this moment, JavaScript was taken seriously by developers. The problem is that, creating objects and using them is different form Java or C#. You need to master JavaScript skills to take advantage of the JS Object Oriented model. Nevertheless, even if you do not master this techniques you can also make use of a whole bunch of many different JS frameworks and APIs, such as jQuery, Dojo or Scriptaculus, just to mention a few of them.

So, if you are or are going to create web applications you have to take JS very seriously. Three tips:
  1. Use Firebug and a javascript friendly IDE
  2. Read something about JavaScript Object Oriented development
  3. Review some JavaScript APIs
Share/Save/Bookmark

25.1.09

Mis 10 Extensiones Preferidas de Firefox

Desde hace ya mucho tiempo vengo utilizando Firefox, como navegador web. La verdad es que estoy seguro de que si no fuera por sus extensiones pronto habría pasado a otro, como Google Chrome, o habría probado IE7. El caso es que algunas de las extensiones de FF han hecho me esté totalmente enganchado a él. Aunque he usado y probado muchas, aquí va la lista de las que uso con más regularidad tanto en el trabajo como en casa:
  1. Gmail Manager. Tengo una cuenta de GMail y es una gestor que sirve para varias cuentas. No tiene mucho misterio porque tampoco lo necesita, simplemente comprueba los mensajes y te muestra los no leídos en la parte inferior derecha de la barra de estado del FF.
  2. Sxipper. Suuuuuper útil. Un verdadero descubrimiento. Permite crear perfiles de usuario, para evitar le tediosisissisisiíma tarea de tener que rellenar siempre los formularios. Pero no se queda ahí, también permite almacenar usuarios y contraseñas, reemplanzando al gestor que viene con FF. Yo diría que me ha ahorrado horas y horas de páginas de registro.
  3. GreaseMonkey. Una extensión que es en sí misma un motor de extensiones. ¿Para qué vale?. Pues imagina una página mal programada para FF (es decir, que solo funciona para IE), con GM podemos añadir nuestro propio código para solucionar el problema. O imagina, que quieres un traductor instantáneo al hacer doble clic. O imagina un script para descargar los videos de youtube directamente a formato MP4. O imagina... Es decir, hay miles de scripts que solo tienes que descargar y hacer funcionar sobre el motor de GreaseMonkey. Muy potente.
  4. Gmarks. Es un gestor de favoritos para Google Bookmarks que se integra perféctamente en FF, sustituyendo (si se quiere) al que viene por defecto. Es decir, pulsando CONTROL+D, se almacenan los bookmarks directamente allí y permite tener  todos ellos sincronizados.
  5. Down Them All. Rememorando el primer álbum Kill'em all de Metállica, esta extensión no mata nada, pero sí que permite descargar de un tirón todos los archivos de un tipo. Por ejemplo, si quieres descarge todos los PDF de una web, esta herramienta permite que lo hagas con unos pocos clicks, en lugar de tener que ir uno por uno. Además se puede configurar por tipo de archivo para que se descarguen a las carpetas que se quiera.
  6. Lazarus. Esta es muuuuuuy útil. ¿Cuántas veces has rellenado un formulario, un cuadro de texto en una página web o una respuesta larga en un foro y ha cascado el formulario, la página o el propio equipo, echando a perder 5 minutos de redacción, ideas o lo que sea? Seguro que alguna vez ha ocurrido esto. Pues bien, con esta extensión este problema es historia ya que se encarga de ir guardando poco a poco lo que se va escribiendo en cada formulario o cuadro de texto. De este forma, cuando la página falla o ocurre algo inesperado, podemos volver a la página, pulsar con el botón derecho en el campo y allí tendremos almacenado todo lo que habíamos escrito. Simple, fácil y útil.
  7. IETab. Por desgracia, no siempre las páginas están bien construídas, y puede ser necesario abrirlas con IE. Pues bien con esta extensión no hay problema. Basta con hacer clic en el icono que se instala en la barra de estado, y sin salir de FF y solo en esa pestaña, se recarga la página pero esta vez, usando el motor de IE.
  8. GSpace. Esta extensión permite usar el espacio de GMail como disco de almacenamiento en internet. De este modo, podemos tener archivos almacenados aquí y acceder a ellos desde cualquier lugar.
  9. FEBE. Con tantas extensiones llega un momento que llega a ser necesario hacer copias de seguridad de las mismas. Esta extensión va incluso más allá, porque permite guardar la configuración completa del navegador, de forma que si cambiamos de equipo, podemos cargar todas las extensiones, contraseñas, favoritos, etc, sin necesidad de ir uno por uno. Por supuesto, las copias de seguridad se pueden programar con la periodicidad temporal que se quiera.
  10. ScribeFire. Last but not least, como dicen in inglis, la extensión que estoy usando para escribir este artículo. Permite crear entradas para los distintos blogs que hay por ahí sin salir del FF con casi todas las opciones que se puedan necesitar, videos de YouTube, enlaces, colores, etiquetas...
Share/Save/Bookmark

20.1.09

HandBrake: Create MP4 files for the PSP

I've just found the best solution to create MP4 files for my brand new PSP gadget. I've been looking for more than a month, testing different programs with really poor results. Either they were shareware versions with some functionalities reduced or they were free versions that produced incompatible formats.

But, HandBrake came into my help. HandBrake is an open source, GPL-licensed, multiplatform software to convert DVDs or video files to MPEG-4 format (which is the format used both by the PSP and Apple related gadgets). Its usage is really easy, guided by its simple GUI. You just only have to select a DVD drive or a video file as source, select an output folder (if you have already connected your PSP, you can select directly the VIDEO folder there) and choose the profile most suited to your device, PSP, iPod, iPhone or whatever other profile already provided on the right side of the GUI. The time needed to create de MP4 obviously depends on the source size, processor etc... but in my tests it has been quite fast. Moreover, you can also add a queue of tasks so you can batch all your video files conversions in just one shot and shut down the computer once the job finish.

Just one final important remark when using this program in Windows Vista. It is recommend to run it with Administrator privileges, that's said, right-click Run as administrator option in the context menu. I guess that it is something related with the cygwin backbone that the program seems to use. Hopefully, in next releases of this excelent program this will be fixed. Here below there is a screenshot of the GUI:


Share/Save/Bookmark

15.1.09

Scripts con Windows Scripting Host

Llevo algunos días trasteando a ratos con una herramienta creo que algo desconocidad para la mayoría, pero extremadamente útil y potente. Se trata del WSH (Windowos Scripting Host). Es motor de scripts que llevan todos los SO Windows y que permite automatizar tareas. Está pensado, sobre todo, para administradores de sistemas, pero se puede utilizar por cualquiera que quiera automatizar ciertas tareas de su SO. Los usuarios de UNIX/Linux tienen el intérprete de comandos del shell, bash, etc..., sin embargo en windows lo más parecido son los archivos BAT, que sinceramente, se quedan muy cortos.
Con el WSH tenemos acceso a casi todos las posibilidad de nuestro SO, abrir ventanas, seleccionar directorios con una ventana de diálogo, abrir programas, arrancar y parar servicios, crear cuentas de usuarios, etc, etc..., es decir, casi todo.
Crear estos scripts es sumamente sencillo. Basta con crear un archivo de texto, y guardarlo con la extensión VBS o JS (el primero en VisualBasic Script, y el segundo en JScript). Por ejemplo, el clásico "Hola Mundo", sería así:

WScript.Echo "Hola Mundo"

Obviamente esto no tiene mucho interés, a ver si esto interesa más:

Const MY_COMPUTER = &H11&
Const WINDOW_HANDLE = 0
Const OPTIONS = 0
Const MSG_INICIO = "Seleccione una carpeta: "

Set objShell = CreateObject("Shell.Application")
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objShell.Namespace(MY_COMPUTER)

Set objFolder = objShell.BrowseForFolder _
(WINDOW_HANDLE, MSG_INICIO, OPTIONS, strPath)

If objFolder Is Nothing Then
Wscript.Quit
End If

Set objFolderItem = objFolder.Self
objPath = objFolderItem.Path
Wscript.echo "Ha seleccionado: "+objPath

Lo que hace este script es mostrar el típico cuadro de diálogo de seleccionar carpeta y luego mostrarnos la ruta de la carpeta seleccionada.

Ni que decir tiene que se pueden crear scripts para parar y arrancar máquinas, servicios, borrar temporales, crear tareas programadas, o interactuar con Word, Excel, o cualquier otro programa del SO. Por ejemplo, yo lo he usado para crear un scripts que crea en disco una estructura de carpetas y automáticamente se sincroniza con un servidor de Subversion a través del TortoiseSVN.
Las posibilidades son casi infinitas y pidiendo ayuda al Scripting Guy, podemos ver un montón de ejemplos más con el código listo para usar.

Share/Save/Bookmark

14.1.09

Mac y Pc, Mac Vs Pc, Mac o Pc

Voy a dar mi opinión sobre Mac Vs Pc:

http://www.fayerwayer.com/up/2008/12/mac-versus-pc.jpg

No, en serio. Yo también estuve tentado de comprarme un Mac y finalmente no lo hice por varias razones:

1.- Precio Vs Prestaciones. Un Mac asequible me costaba 1200 luris, y venía con 2Gb de Ram, 250 Gb Disco. Mi CPU, me costó 400€ y tiene doble procesador, 4 Gb RAM y 650 Gb de disco duro. Eso me dejaba, 800€ para comprarme un monitor y una impresora.
Por supuesto me he comprado un monitor de 22" y una impresora multifunción Canon que se sale y me han sobrado 200 luris. En mi opinión, un Mac es como un vino que vi en la boutique del Groumet del Corte Inglés el otro día, Petrus se llamaba, costaba 1200€. Yo sinceramente, a partir de 20€/botella, solo se decir "está rico".

2.- Juegos. Yo ya casi no juego con el ordenata, peeero, no me apetecía perder la posibilidad de hacerlo, y Marta tampoco. En Mac, la realidad es que no hay juegos (buenos) y los que tenemos no son compatibles.

3.- Periféricos y Hardware. Si quieres ampliar el equipo, tienes que pasar por caja de Apple, y no son nada baratos. En PC, tienes miles de opciones.

4.- Sistema Operativo. Mi equipo viene con Vista Home Premium SP1, y va de lujo (a pesar de lo que se dice). Yo estoy bastante contento. El SO del Mac, es mucho más completo y tiene todo lo que necesitas, pero en el PC tienes montones de alternativas gratuitas para edición de video. Lo bueno es que en ambos casos, si no te gusta el SO, siempre puedes probar Linux (Ubuntu) y ver que tal.

La tentación de comprar un Mac fue muy fuerte, pero son muy caros. Visualmente es la hostia, pero como los anuncios del Dacia Logan, los PC hacen lo mismo por la mitad. Eso sí, cualquiera
que tenga un Mac te argumentará que no se pueden comparar, que si la arquitectura, que si la integración del SO con el hardware. Al vino me remito.
Share/Save/Bookmark

12.1.09

GIS and Gaza Conflict

Alongside with the latest news on the Conflict in Gaza, a new and interesting way to show the latest events in the zone is to use Google Maps, and Map Mashups. Here are some examples:

http://www.ogleearth.com/2009/01/gaza_maps_updat.html

http://googlemapsmania.blogspot.com/2009/01/gaza-maps.html

http://www.mibazaar.com/gazaconflict.html

They are all good examples about how to use the latest web 2.0 technologies, integrating not only different sources of information but also different types of technologies, such as Google Map, YouTube or KML files.

For example, if you have Google Earth installed in your computer, you can add this file, to get almost daily up-to-date maps about damages in buildings, casualties, of humanitarian deliveries.

Obviously, do not expect to have Street Map View in this area. Hopefully, in a paceful future...
Share/Save/Bookmark

10.1.09

70 por hora en los túneles de la M-30

Desde hace algún tiempo, vengo oyendo comentar a mucha gente que ir a
70 Km/h por los túneles de la M-30 es un rollo, que es muy poco
velocidad, que se podía ir a mas, etc., etc. No estoy para nada de
acuerdo. Hay buenos motivos para ir a 70 por los túneles de la M-30.
  1. Seguridad. Es un hecho, que el exceso de velocidad es una de las principales causas de muerte en la carretera. En Barcelona, que han limitado la velocidad a 80 Km/h en las vías de circunvalación, este año no han tenido ni una sola víctima mortal en coche.
  2. Contaminación. Está demostrado que el aumento de la velocidad incrementa casi exponencialmente el consumo de carburante, y por tanto, los gases emitidos. Si se fuera a 90 por hora en los túneles, y a pesar de tener buenos sistemas de ventilación, el aire se haría irrespirable.
  3. Multas. Los dispositivos de control de velocidad funcionan y bien. Ya son varios los conocidos que han sido multados por exceso de velocidad en los túneles y en épocas de crisis sería absurdo gastar en algo totalmente evitable.
Todo esto lo comento, porque ya desde hace tiempo cada vez intento ir lo menos estresado e irascible en el coche que puedo (no siempre lo consigo). Este cambio se debe principalmente a un curso de Conducción Eficiente al que asistí el año pasado, y que recomendaría a todo el mundo. Basicamente se trataba de cambiar ciertos hábitos en nuestra forma de conducir, de forma que no se derroche combustible. Esto mata dos pájaros de un tiro, por un lado se contamina menos, y por otro se ahorra dinero. Como normas generales se trata de ir siempre en marchas largas, no usar el freno motor (es decir, no reducir marchas), y saltarse marchas (por ejemplo, pasar de tercera a quinta directamente). Se trata en todos los casos, de evitar subir al coche de revoluciones (en los gasolina nunca por encima de 2500 para cambiar las marchas), ya que esas vueltas de más no sirven de nada en la ciudad, contaminan y hacen ruido.
Sin embargo, todas estas técnicas no sirven de nada si no se toma una actitud más tranquila cuando se va al volante. Cuando nos subimos a un coche, la postura por defecto, es la crítica, y siempre ir buscando al que lo hace mal, al que no señaliza, al que corre, etc... Si somos justos, el 90% de los conductores son gente como nosotros, que conduce bien, señaliza, pero son unos pocos, los que nos cabrean. Bien, un reto. Cualquier día fijarse en la enooooorme cantidad de gente que SÍ conduce bien. El problema es que éstos nunca van a tener nuestra atención.
Share/Save/Bookmark

8.1.09

Baby Smash: Deja que tus Hijos Aporreen el Teclado. Aprenderán.

Acabo de descubrir una herramienta muy interesante que sirve para dos cosas:
  1. Evita que tus hijos "accidentalmente" pulsen una combinación de teclas indeseada en el teclado del ordenador, provocando efectos indeseados, tipo reinicio por ejemplo y
  2. Es una herramienta muy divertida para que aprendan colores, formas, números y letras. Os aseguro que les encanta.
La herramienta se llama Baby Smash!, y tiene esta pinta:

Además en la página web se puede ver un video de cómo funciona.
Algo curioso de la herramienta es que el autor ha habilitado un modo de que los usuarios voten por las nuevas funcionalidades que se incluirán en la siguiente versión. Tienes 10 votos, que puedes repartir como quieras entre las ya propuestas, o añadir una nueva. Me parece una forma muy interesante de recibir contribuciones de los usuarios que se debería trasladar a más proyectos de software.
La herramienta es gratuíta, y pronto será OpenSource.
Share/Save/Bookmark

5.1.09

Dos formas de afrontar la crisis: TOYOTA vs GM

Acabo de leer un interensate artículo sobre las distinas formas con las que Totoya y GM están afrontando la crisis.
Por todos los lados no paran de surgir voces que reclaman "reformas estructurales" del mercado laboral. Bien, ya es hora de reclamar "reformas estruturales mentales" del mercado empresarial.
Lo que viene a decir el artículo es que en tiempo de crisis, lo único que no deberías hacer es despedir a tus empleados. Está muy poco valorado, y por supuesto, nada cuantificado lo que vale el conocimiento de un empleado. En Toyota, que hace coches, consideran que lo más valorable que tienen son los empleados. ¿Qué están haciendo en tiempo de crisis? Parar la producción, seguir pagando a los empleados, y utilizar ese tiempo en formar a los empleados en un montón de cosas distintas, incluso participan en actividades de voluntariado. Claro está, durante ese tiempo siguen cobrando sus salarios. ¿Qué obtiene TOYOTA de todo esto? Motivación, fidelidad, mejora de la productividad, competitividad. Cuando pase la crisis, no será necesario que busquen nuevos trabajadores, sino que podrán utilizar a toda su plantilla actual con toda la experiencia y con una formación mucho mejor. Obviamente, para esto hace falta planificación, previsión y sobre todo ÉTICA (Another Japanese leader shows the way to be a true leader: When Japan Airlines JAL slashed jobs and asked older employees to retire early, their CEO cut every single one of his corporate perks, and then for three years running slashed his own pay).
Creo que la moraleja es aplicable a un montón de empresas de aquí.

perks: beneficios sociales
slashed: recorte drástico
Share/Save/Bookmark

3.1.09

Verbalearn: Una gran forma de ampliar el vocabulario

Acabo de descubrir una de esas aplicaciones que llevaba tiempo esperando. Algo que me ayudara a mejorar y ampliar mi vocabulario en Inglés. Hasta ahora lo que hacía era ir apuntando las palabras que no sabía en unas notas y cada cierto tiempo las iba repasando. No es un mal método, pero Verbalearn va más allá.
Mediante una interfaz muy sencilla, propone un número de palabras de las que tienes que dar su definición seleccionando 1 de 4 opciones. Si estás seguro "pretty sure" da por supuesto que no necesitas recordar esa palabra, si no, "just a guess" o si fallas, va guardando los fallos en una lista a la que puedes volver luego. Pero no acaba ahí la cosa. Te puedes descargar un MP3 con tus fallos, y sus definiciones. De modo, que no solo repasas leyendo, sino también escuchando.
Para rematar tiene algo muy curioso. Si se quiere incentivar a alguien a que aprenda vocabulario, puedes cargar dinero en una cuenta, y a medida que esa persona va acertando y aprendiendo palabras "mastering" va recuperando ese dinero. Me parece una idea muy original.

Here is how it works:
Share/Save/Bookmark

Desactivar el UAC en Windows Vista.

Cómo desactivar el UAC (Control de Cuentasde Usuario, User Account Control).
Primero, buscar en el panel de control UAC:


Luego hacer clic en "Hacer el Control..."


Pues eso, en la segunda ventana hacer clic en "Usar el Control...."
Share/Save/Bookmark

2.1.09

Vista Rewired

Lots of tips and tricks for Windows Vista

Some people claims against Vista, simply because they try to do exactly the same things in the same way they did in XP. Although this is true in some cases, almost everything you did in XP can also be done in Vista. This page explains how to do this and how to do a lot of more new interesting things. You may have a look a it!

Another opinion in the same vein.


Share/Save/Bookmark

1.1.09

Impresiones sobre Windows Vista

Que mejor propósito para el 2009 que retomar un blog olvidado hace ya casi un año. Revisando las entradas antiguas, llegué a la conclusión que muchas de ellas seguían resultando útiles, y si lo eran para mi, podrían serlo para otros.
Para ayudarme en mi propósito he decido simplificar mi actividad bloggera, de forma que todo lo que me interese estará recogido aquí, ya sea de trabajo, familia u ocio. Eso sí, se intentará etiquetar todo convenientemte para facilitar la vida.

Vayamos a la chicha del artículo. Impresiones sobre Windows Vista. A bote pronto decir que me gusta, hay muchas mejoras y de momento no tengo queja sobre el proceso de adaptación. Hace cosa de un año, yo mismo desinstalé un vista del equipo de mis cuñados, más que nada, porque no se adaptaban, y les parecía que todo les iba lento, tuvieron problemas con drivers, y con algunos juegos. Así que volvieron a XP. Pero claro, eso fue hace un año, hoy el Vista viene con el SP1 incluido, casi todos los fabricantes de hardware tienen drivers para vista, e incluso los juegos más antiguos (Sims 2) tienen parches para vista. Mi recomendación, si vas a comprar un equipo nuevo decente, y ya viene con vista no hagas un downgrade (desinstalar vista y poner XP) te perderías un montón de cosas nuevas y buenas que Vista ha mejorado con respecto a XP.

Qué me gusta:
  • el aspecto visual, ventanas, efectos, colores, iconos, alisado de fuentes, todo está mucho mejor que XP
  • El nuevo explorador de windows, con su búsqueda integrada y los nuevos menús deplegables de la barra de ruta
  • El nuevo panel de control da acceso a un montón de opciones más que el antiguo, organizadas de una manera algo más coherente y el buscador funciona muy bien aquí.
  • El windows sidebar no está mal, aunque claro, hay opciones para todos los gustos.
Qué no me gusta:
  • no tengo muy claro si me gusta el nuevo menú de inicio, es poco personalizable, y está más pensado para buscar cosas. No lo tengo muy claro.
  • los pobres programas que vienen y que no han cambiado nada en 10 años!!! Ya es hora de que se incluya algo más que el notepad, el paint, o el wordpad.
  • Lo del UAC. Es decir, que te pregunte todo el rato, si das permiso para instalar algo, bloqueando la pantalla, cambiando el color, en fin, nada elegante y me parece que poco trabajado. Las buenas noticias es que está chupado desactivarlo.
Como conclusión final, decir que estoy (estamos porque lo usamos dos en casa) razonablemente contentos con Vista, y que no hemos echado nada en falta el XP.

Share/Save/Bookmark