Julio1/2010
Aunque sea en el fondo, a pocos programadores les gusta reusar código: siempre le encuentras detallitos que te fastidian, cosas que no se adaptan del todo a tu problema, a la manera que tú tendrías de abordarlo o simplemente al estilo en el que tú haces las cosas; normalmente estás más dispuesto a gastar tiempo en hacerlo tú que a gastarlo en aprender cómo demonios se le ha ocurrido a otro hacerlo.
No es difícil de comprender: a un arquitecto le gusta hacerse su casa, a un pintor sus cuadros…
Junio11/2010
Si no puedes traducir mentalmente cada una de sus sentencias a algún lenguaje ensamblador, no está hecho para programadores de verdad (de los pocos que quedan que son conscientes de que existe un hardware debajo haciendo todas las cositas).
Mayo10/2010
Lo primero que echo de menos cuando uso un Windows (cualquiera) es el tiempo de arranque de una distribución de Linux (cualquiera), lo segundo el escritorio múltiple, lo tercero los repositorios de aplicaciones completamente gratis y plenamente funcionales, lo cuarto es lo superfluo del antivirus, lo quinto la miríada de herramientas para los programadores, lo sexto el poder, si quisiera, ponerme a entender por qué hace lo que hace, lo séptimo es lo rápidamente que encuentro las cosas entre los menús, lo octavo ya no me da tiempo a echarlo de menos porque me encuentro machacando el Windows con mi distribución de Linux favorita.
Por cierto, hete aquí el netbook/lector-electrónico-y-mucho-más con el flamante Ubuntu Lucid Lynx instalado (¿no es una monería) ?:
Abril17/2010
… ya estaba en el inconsciente de los programadores desde hace tiempo:
Diciembre10/2009
Aún migrando de hosting y dominio… Ya lo tengo todo en el de destino, y todo creado y propagado por DNS, pero me está dando la lata que resuelvan los subdominios insertando código HTML extra en las páginas que se cargan a partir de una URL que contiene el nombre del subdominio… Una forma rara de resolver un subdominio (metiéndole frames, para más señas :-O).
Por ahora este blog va razonablemente bien, dado que lo he configurado para que no use el subdominio -sino el dominio real y su directorio: jafma.net/blog-, y he quitado todos los enlaces absolutos que incluían el nombre de dominio dentro de las entradas. Probablemente tendréis (si lo seguís por feed) que cambiar la dirección del feed para que donde ponga “blog.jafma.net” ponga “jafma.net/blog”. Ésta es la opción más razonable (a fin de cuentas un subdominio es cómodo pero no es realmente un dominio).
A eso hay que añadirle que el envío de correo no me va aún (eso es importante en BIBLION), que hay algunas cosas deshabilitadas en la empresa de hosting en el PHP (como el set_time_limit, que es necesario para algunas cosillas de WordPress como importar los XML de otro WordPress), que he tenido que actualizar una entrada de cada categoría después de hacer la importación en el WordPress para que actualice la BBDD con las entradas que hay para cada categoría, que el plugin que uso para fórmulas matemáticas (EasyLatex) necesita que el directorio caché donde guarda las imágenes de éstas tenga unos permisos concretos sí o sí y que no había guardado la configuración al detalle del WordPress (permalinks, sustitución de caretillos, etc…).
Hombre, me gusta bajar a niveles inferiores para toquetear y aprender, pero espero que esta migración no termine dándome migraña…
P.D.: Si no estás viendo esta entrada, ha surgido algún otro problema ;P
Septiembre26/2009
Realmente yo me quedo con GNOME porque para tener KDE me pasaría a Windows Vista (arg), y XFCE no me termina de traer todo lo que quiero (aunque lo tengo ahora en una máquina antigua y va bastante bien). Pero bueno, hace un tiempo probé a instalar los tres en la misma máquina, para compararlos.
Instalar en una distribución de Ubuntu los tres escritorios más conocidos, Gnome, KDE y XFCE, no es complicado. Basta descargarse con el Synaptic los que te falten. Lo difícil es que luego, al entrar en XFCE, GNOME no siga quitándole el control cuando le dé la gana, principalmente cuando abrimos Nautilus (que es bastante mejor que el Thunar, sobre todo si se hace uso intensivo de conexiones SSH). Por algún extraño motivo Nautilus fuerza a que GNOME tome el control del escritorio cada vez que se abre y, por tanto, vuelves a estar en GNOME a pesar de estar en XFCE…
Pues buscando mucho por internet encontré la forma de deshabilitar ese comportamiento agresivo de Nautilus: gconftool-2 --set --type boolean /apps/nautilus/preferences/show_desktop false. Y en esto me he portado como un vulgar homo instrumentum usuarius: no tengo ni idea de cómo funciona
Julio16/2009
Han vuelto a publicar el índice Tiobe, que trata de medir la popularidad de los lenguajes de programación.
La verdad, no hay grandes cambios desde la última vez que hablamos de ello en este blog, salvo que C++ se ha estancado un pelín (nada importante) y Ruby ha adelantado a Delphi (nada importante), como se ve en la gráfica:
En cualquier caso la pana la siguen partiendo JAVA y C, dos lenguajes muy distintos para cosas muy distintas. De JAVA no diré nada porque ya dije en su momento que tiene un no sé qué que qué sé yo que me da repelús. La popularidad de C es evidente dada la abundancia de sistemas empotrados y drivers que escribir y lo poco que a la gente le gusta el ensamblador (es para lo que más se usa C, y de hecho los sistemas empotrados superan en mucho, en número, a los ordenadores que normalmente vemos).
En un segundo nivel, también muy digno, C++ resiste para aplicaciones con requisitos de eficiencia serios y tamaño importante (de nuevo, no sé qué le ve la gente a JAVA, de verdad, y el que me diga la portabilidad le tiro de una pestaña), a pesar de su complejidad de aprendizaje. Y PHP como lenguaje de script para web, pese a su mal diseño, también está bien situado a pesar de que para aplicaciones grandes, dado precisamente su mal diseño, las empresas prefieren JAVA.
Obviando la inclusión de esa cosa que llaman lenguaje Visual BASIC en la tabla, el resto son puramente testimoniales en porcentaje.
En fin, si alguien está buscando trabajo de programador, quizás esta tabla le pueda servir de guía.
Febrero1/2009
Ayer por la tarde (a eso de entre las 16:00 y las 17:00, hora española), y cumpliendo las peores previsiones de una red libre de escala, a Google le dio un pallá con bastante repercusión. De repente las búsquedas tenían activado un filtro de supuesta seguridad, encargado de detectar imágenes y textos porno en las páginas de resultados (no sé qué tiene que ver eso con la seguridad; en todo caso con la protección a los menores), que: a) aunque lo desactivaras seguía en marcha, b) marcaba todas las páginas encontradas como sospechosas, c) conseguía que fuera un suplicio llegar a la página en cuestión si te daba por ignorar la advertencia, y d) iba acompañado de un enlace que supuestamente explicaba el aviso pero que no llegaba a cargar nunca.
Lo último pudo ser una caída de servidor; lo otro más bien pareció una melonada de los responsables. De hecho, se ha confirmado que así ha sido.
En cualquier caso, los que estábamos en ese momento haciendo cositas con google hemos experimentado la experiencia religiosa de su ausencia. Yo en particular me he quedado sin poder buscar qué programas en condiciones hay para distorsionado de imágenes 2D (warping) y sin encontrar algunas con las que probar. El resto de los buscadores, simplemente, siguen sin dar la talla después de años.
Ha tenido su morbo retroceder en una hora diez añitos en nuestra forma de hacer algunas cosas. Terrible cuando se piensa, pero Clarke y Kubrick ya lo advertían: el hombre se ha convertido en una especie frágil que depende demasiado de sus herramientas…
Enero10/2009
(Los dos primeros pasos se pueden obviar si se tiene una red de cable par trenzado buena o bien copia de todo lo dicho en algún sitio)
- Buscarse un cable ethernet directo de PC a PC y otro PC con suficiente disco duro para los backup. No hay nada más rápido que un backup así o bien en DVD..
- Conectar el cable y configurar las conexiones de cable de ambos para que se vean (comprobar con ping y luego con ssh)
- Cerrar las aplicaciones que cambian datos (principalmente thunderbird y emule) y copiar los datos del que va a ser actualizado al otro. Si se hace con copia directa a través de nautilus, no preserva las fechas de los archivos. Si se quiere preservar, usar
rsync -vrtpogE --links --safe-links --delete --progress <directorio origen sin terminar en barra para que sea considerado también> <usuario en pc de backup>@<ip destino>:<directorio donde crear lo leído del directorio anterior y el mismo directorio anterior si no se terminó en barra>
- Copiar luego el resto del contenido del /home/<usuario>, incluyendo archivos ocultos, y sin incluir .gvfs (filesystem virtual) ni .dbus ni los datos que se copiaron en 3. Copiar también aplicaciones y datos que se instalaron sin pasar por el synaptic.
- Preparar una lista de las aplicaciones instaladas en la máquina:
sudo dpkg --get-selections > <fichero destino> y copiar el fichero resultante a la máquina de backup.
- Copiar también a la máquina de backup la lista de las fuentes de archivos del synaptic, que están en
/etc/apt/sources.list.
- Copiar en papel los datos de la conexión a Internet para recuperarla luego. También las URIs de las impresioras.
- Preparar el CD/DVD de instalación del nuevo Ubuntu, probar una ejecución en livecd, y hacer si todo va bien una instalación fresca.
- Recuperar datos de la red y de las impresoras, y si se tiene algún driver propietario (p.ej., NVIDIA), activarlo (quizás sea necesario resetear luego para que tome la configuración).
- Después instalar todas las actualizaciones que haya en los repositorios para esa versión.
- Copiar los archivos de fuentes al directorio correspondiente de la instalación nuevo y el de paquetes al home. Usar gedit para editar el de fuentes para adaptarlo a la distribución que se ha instalado. Luego hacer
sudo apt-get update para que las pille, y luego sudo dpkg --set-selections < <fichero de aplicaciones> y luego sudo apt-get dselect-upgrade. Esto tardará porque se descargará todas las aplicaciones. Se pueden quitar del fichero de aplicaciones las que no nos interesen.
- Una vez descargadas todas las aplicaciones, descargar el backup de los datos y del home y resetear. En mi caso, aparte del XAMPP y sus BBDD (que he tenido que recuperar a mano) y del Scanner (que tenía apuntado cómo configurarlo), no he tenido que hacer nada más…
Editado 11/01/09: Si a alguien le parece tedioso esto, que intente montar una máquina Windows instalando éste de nuevas y recuperando luego todas sus aplicaciones, incluyendo las configuraciones de cada una. La montaña de DVDs, las horas instalando cosas y la imposibilidad de no recuperar las configuraciones de cada aplicación me parecen motivos más que suficientes para ir quitándose de Ventanitas