Nota del autor

Si la entrada que estás leyendo carece de imágenes, no se ve el vídeo que teóricamente lleva incrustado o el código fuente mostrado aparece sin formato, podéis conocer los motivos aquí. Poco a poco iré restableciendo la normalidad en el blog.
Este blog es un archivo de los artículos situados previamente en Lobosoft.es y ha dejado de ser actualizado. Las nuevas entradas pueden encontrarse en www.lobosoft.es. Un saludo,
Lobosoft.
Mostrando entradas con la etiqueta herramientas. Mostrar todas las entradas
Mostrando entradas con la etiqueta herramientas. Mostrar todas las entradas

jueves, 14 de abril de 2011

Nuevas andanzas en la web

Llevo casi tanto tiempo apartado del blog (al menos, de la forma asidua y continuada de antaño) como del desarrollo web, al menos desde que salté de los protocolos de la capa de aplicación para ponerme a juguetear con los de la de transporte, así que como no es bueno dejar olvidarse de lo que un día te satisfizo y dio de comer, me propuse no hace mucho poner al día mis conocimientos en lo que a estas tecnologías informáticas se refiere.

Hace apenas unos días me ponía manos a la obra participando en un curso de Silverlight que ha comenzado a impartir el MVP Braulio Díez en Málaga y, como adalid del software libre, he empezado a investigar un poco sobre las maravillas de HTML5, CSS3 y librerías como jQuery. El mes pasado hice un curso sobre estos, aunque me resultó demasiado básico (al menos no he olvidado demasiado, me dije), y precisamente hoy, cuando investigaba sobre el tema, me he encontrado con un movimiento por parte de IBM: el lanzamiento hace apenas unos días de su IDE “Maqetta”, de código abierto -en su licencia figura un sospechoso “commercial-friendly open source” que no sé si la acerca más a una posible Licencia BSD modificada o a una licencia Libre Académica (AFL)- y totalmente basado en HTML5: el navegador es tu amigo.

He podido probar la Preview 1 aunque no en profundidad. Sin embargo, salvo una ligera tardanza en el tiempo de respuesta cuando se realizan operaciones algo más “pesadas”, lo cierto es que el uso de la herramienta es bastante intuitivo y no se aleja demasiado del que ofrecen otras herramientas de diseño y desarrollo visuales. Dado que está enfocada a la creación de proyectos para dispositivos móviles y aplicaciones de escritorio incorpora emuladores de dispositivos para comprobar la disposición de las páginas creadas en cada uno de ellos.


Con esta herramienta, liberada a través de la Fundación Dojo, IBM plantea que cualquier desarrollador podrá hacerla crecer y plantar cara a dos soluciones tan implantadas en el mercado como Flash y Silverlight. Aunque no es fácil, ya que habitualmente van “por detrás” de lo que los productos propios de cada compañía ofrecen, lo cierto es que apostar por los estándares en un escenario tan marcado por las incompatibilidades y las “guerras de navegadores” de las diversas empresas que han entrado en juego es, hasta cierto punto, aferrarse a una tabla de salvación.

Además, entre otras funcionalidades, Maqetta cuenta con edición WYSIWYG, diseño de prototipos (website wireframing, aunque personalmente me gusta bastante Balsamiq), posibilidad de pulsar y arrastrar controles sobre la propia “piel” de un móvil, edición simultánea en modo diseño y de código fuente, un editor de temas o la posibilidad de definir interacciones con el usuario sin necesidad de programar.


En resumen, una herramienta de diseño y desarrollo que parece ofrecer funciones de lo más interesantes y que no deberíamos perder de vista. Ahora que he decidido volver a Internet, incluyendo al blog, no le quitaré ojo de encima. Si queréis descargarla, podéis hacerlo a través de su sitio web o de este enlace directo.

viernes, 28 de mayo de 2010

Cómo añadir nuestros ensamblados en el GAC a Visual Studio

Cuando desarrollamos una librería que deseamos que sea usada por muchas de nuestras aplicaciones o desplegamos una (o varias) que incluyen componentes, controles o funcionalidad disponible como, por ejemplo, la de una API, deseamos que esté disponible para nuestras aplicaciones. El GAC resulta, como bien sabéis, el lugar idóneo desde el que gestionar las distintas versiones de las DLLs de código administrado en nuestro sistema. Sin embargo, aunque registremos las DLLs en el mismo, estas no aparecen en el diálogo de Visual Studio para agregar una referencia a nuestro proyecto. Esto ocurre porque Visual Studio busca los ensamblados en rutas del tipo C:\Windows\Microsoft.NET\Framework\vx.y.z, pero aunque el CLR sea capaz de cargar ensamblados del GAC, este es independiente de nuestro IDE preferido.


Supongamos que ubicamos nuestras DLLs en la ruta C:\SomePath\LsAssemblies y las registramos en el GAC usando gacutil.exe. Cuando Visual Studio (en su versión x.y) busca los ensamblados al añadir una referencia lo hace a través de la clave de registro


HKLM\Software\VisualStudio\x.y\AssemblyFolders


Cada subclave representa una carpeta de ensamblados. Aunque el nombre no tiene la menor relevancia, el valor predeterminado debe contener la ruta completa a la carpeta que contendrá los nuestros. Por ejemplo:


HKLM\Software\Microsoft\VisualStudio\9.0\AssemblyFolders\LobosoftAssemblies \ (Default value): C:\SomePath\LsAssemblies


Como apunte final, cabría señalar que si en la ruta donde situamos las DLLs dejamos también los archivos para la depuración (PDB) y la documentación (XML), Visual Studio los usará cuando cargue la DLL para permitir la depuración en ese ensamblado y mostrar la documentación de Intellisense.


En la Visual Studio Gallery he encontrado también una extensión que nos ayuda a referencias DLLs del GAC. Su nombre es Muse.VSExtensions y permite mostrar un diálogo “Add GAC Reference” en nuestro Visual Studio 2010.

miércoles, 26 de mayo de 2010

Seguridad en WordPress


Tras el ataque sufrido en Lobosoft me he visto obligado a adelantar un poco la dedicación al blog (que tenía pensado incrementar, como ya dije, hacia mediados de junio), llevar a cabo una limpieza del mismo y actualizar, ya no la versión del mismo pero sí algunos plugins que podrían estar en el origen del ataque (fallo por mi parte al utilizar demasiados, aunque alguna de la funcionalidad extendidad del blog está basada, mucho me temo, en ellos).


El script que “me colaron” básicamente se encarga de permitir al atacante subir un archivo a la web con lo cual, dicho pronto y claro, la seguridad completa del sitio queda claramente comprometida. He estado buscando en Internet y parece que es un script genérico que ha sido instalado en numerosos servidores, sobre todo tipo de CMS y foros (y otras aplicaciones web), por lo que en sí no es más que una herramienta más que utilizar para atacar el sitio o usarlo como plataforma para fines oscuros y perversos. ;)


Uno de los blogs que he encontrado con el problema en cuestión es Brian's World, que muestra el código en cuestión. En mi caso no habían llegado ni tan siquiera a inyectarlo en uno de los archivos de Wordpress, sino que se encontraba replicado en varios archivos PHP con nombre similares (con un prefijo añadido) a los contenidos en un par de plugins y en el tema de Wordpress que da estilo al blog.
Dejo por aquí una extensa lista de referencias a la seguridad en Wordpress (algunas aplicables a otros CMS) que nunca está de más tener en cuenta. E incluso así, a pesar de lo que afirme nuestro amigo GigA, me temo que nada es demasiado seguro.


Feliz lectura.


Para saber más:


En castellano.




En inglés.

Más allá de WordPress.

La imagen que ilustra la entrada, que me ha encantado, es de Antivirus WordPress.

martes, 23 de febrero de 2010

La perfidia del software

En una de las asignaturas que estoy cursando este cuatrimestre se nos ha planteado un acercamiento a los “problemas retorcidos” o, usando un término que prefiero, “problemas perversos” (o pérfidos, o impíos, resulta difícil dar una traducción exacta a los conocidos en ámbitos anglosajones como wicked problems). Los problemas perversos fueron definidos por Rittel y Webber dentro del contexto de la planificación social, donde una aproximación meramente científica o técnica no sería suficiente para dar respuesta a aquellos aportando, por tanto, una solución total. Son problemas, por tanto, de difícil cuando no imposible solución (y no tienen nada que ver, por cierto, con las clases de complejidad computacional).


El desarrollo de software puede verse como un problema perverso ya que cumple con seis de las diez características que los definen, a saber:




  1. No existe una formulación definitiva del problema.

  2. No se puede saber cuándo termina el problema.

  3. Las soluciones que se pueden aportar no son verdaderas o falsas, sino buenas o malas.

  4. Cada problema es esencialmente único.

  5. Todas las soluciones para un problema de este tipo se pueden poner en práctica una única vez, ya que no existe una oportunidad para aprender mediante ensayo y error.

  6. Los problemas perversos no cuentan con un conjunto de soluciones posibles que pueda ser rigurosamente descrito.


Todo lo anterior nos lleva a que podamos afirmar que es más rápido crear una solución al problema que estimar cuánto tiempo tomará crear una solución que posea un determinado grado de exactitud y, aun así, la estimación seguirá estando mal.


La regla fundamental para manejar problemas perversos es que no deben ser tratados como los problemas clásicos. Según Rittel y Webber: "El enfoque de los sistemas clásicos ... se basa en la suposición de que un proyecto ... se puede organizar en fases distintas: “ comprender los problemas “,” recoger información”, “sintetizar la información”, “buscar soluciones” y similares. Con los problemas perversos, sin embargo, este tipo de sistema no funciona. No se puede comprender el problema sin conocer su contexto, uno puede buscar, no significativa de información sin la orientación de un concepto de solución, no es posible entenderlo primero, y luego tratar de resolverlo. "


La mejor manera de abordar los problemas perversos es de hablar de ellos, trabajar desde posibles enfoques y de forma colaborativa donde aparezcan en escena los intereses, prioridades y limitaciones existentes. Es imposible usar herramientas de análisis usuales antes de, ya no reducir el problema, sino posiblemente saber cómo enfocarlo. Durante esta fase puede ser interesante utilizar herramientas como Compendium.


Una vez implicados en el alcance de una solución (posiblemente de compromiso), dada la variabilidad del problema, que puede ir cambiando conforme se esté trabajando en él, resulta interesante aplicar metodologías ágiles para facilitar posibles cambios y evitar que supongan un problema a añadir. En este aspecto resulta muy útil, por ejemplo, el enfoque que aporta SCRUM. Pero esto podrá ser materia para otra entrada, dado lo interesante del estudio del software desde esta perspectiva.

miércoles, 16 de septiembre de 2009

¿Nos acaban de enlazar?

Una de las variables a tener en cuenta en el posicionamiento de nuestra web es el número de enlaces entrantes que posee. Cuantas más páginas nos referencien, mayor importancia nos darán los buscadores en los resultados de las búsquedas. Esto es así porque, aparentemente, nuestro sitio web es un lugar de referencia, y los enlaces suponen un reconocimiento al trabajo realizado. Esto es así en parte, y siempre tomado de una forma relativa. Obviamente, los buscadores se han curado en salud respecto a la picaresca de colocar enlaces en comentarios de blogs, foros y, en un futuro cercano, en los sitios webs de las redes sociales. Se intenta evitar así la proliferación de contenidos “basura” cuya única finalidad sea proporcionarnos unos puntos más que faciliten la subida en los buscadores. No es, por supuesto, la única variable a tener en cuenta, y su valor ha decrecido con el paso del tiempo, pero aun así es suficientemente relevante como para tenerla en cuenta.


Aunque existen herramientas para llevar a cabo el recuento de enlaces entrantes, y los propios buscadores permiten buscar las webs que nos apuntan (en Google, anteponiendo la palabra clave link: al dominio que deseemos consultar desde el propio cuadro de búsqueda, o en Yahoo haciendo lo propio con el término linkdomain:), hay una forma bastante curiosa de conocer, en un breve periodo de tiempo, si alguien nos ha referenciado desde su web. Para ello, usamos la herramienta de Alertas de Google, y simplemente debemos configurar una alerta cuyo contenido de búsqueda sea


link: www.miurl


y el resto de opciones queden dispuestas como en la captura que presento a continuación (tipo de búsqueda, “web”, con frecuencia de aviso “cuando se produzca” y que nos envíe la alerta a nuestro correo electrónico. Práctico y muy sencillo.


viernes, 4 de septiembre de 2009

¿Me presta usted un Explorer 5.5?

El cambiante mercado de Internet y las aplicaciones web ha derivado en una inusitada profusión de navegadores, actualizándose y renovándose cada pocos años las herramientas disponibles para usuarios y desarrolladores. Quienes trabajamos habitualmente en desarrollo web nos encontramos ante la tesitura de si una determinada solución, aun cumpliendo con los estándares, funcionará adecuadamente en tal o cual navegador. Esto ocurre incluso cuando usamos distintas versiones de un mismo navegador. Obviamente, podemos tener instalados en nuestra máquina el último Opera (por cierto, hace unos días lanzaron Opera 10, y de momento no me disgusta excepto en una excesiva lentitud procesando algunos controles en las páginas), Chrome, Firefox, Safari o Explorer, por citar algunos de los más usados. Pero si queremos probar, por ejemplo, cómo se vería una página web con distintas versiones de Internet Explorer podemos encontrarnos con un pequeño problema.


La herramienta IETester es tremendamente útil para visualizar y depurar una página web en las versiones de Explorer que van de la 5.5 a la 8. Precisamente hace unos días un blog amigo me comentaba que, tras aplicar unos cambios en la plantilla, algunos usuarios no lo visualizaban correctamente. Ya que se trataba fundamentalmente de un problema con Explorer, estuve buscando alguna herramienta que sirviese precisamente para esto: probar la web con varias versiones del navegador. Y me encontré con IETester.



Además, su funcionalidad a la hora de depurar una web puede incrementarse instalando la DebugBar para Explorer, una herramienta muy en la línea de Fiddler o Firebug y que cumple bastante bien su cometido en este caso.



En resumen, una herramienta que puede darnos alguna pista en el momento más adecuado para ello.

martes, 5 de mayo de 2009

Escritura social


La expansión de la web cada vez colaborativa que estamos viviendo en los últimos años parece no alcanzar límites. La generación de contenidos se lleva a cabo, de momento, de forma democrática y espontánea, por lo que el volumen de información que alberga Internet crece de forma prácticamente exponencial. Ante tal avalancha de datos, se hace preciso refinar los métodos de búsqueda, selección y valoración de los contenidos, algo en lo que trabaja nuestro amigo Google, pero en lo que también colaboran los usuarios, a través de recomendaciones, enlaces cruzados, meneameses y similares herramientas. No cabe duda de que en los próximos años deberían aunarse esfuerzos en aras de conseguir una mayor optimización en la faceta organizativa de Internet, o correremos el riesgo de perecer en un naufragio de información, saturados por la tormenta digital que se nos viene encima.


En cualquier caso, la profusión de redes sociales de todo tipo que vivimos hoy día, y que nos lleva a vivir una existencia 2.0 paralela a la real dotada cada vez de mayor peso, alcanza a (casi) todos los aspectos de la vida. Entre ellos, al de la escritura colaborativa. No hablo de las wikis, que han mostrado su eficiencia a la hora de compartir información y permitir la colaboración activa de los usuarios para generar contenidos de calidad, ni de medios más obsoletos de crear contenidos comunes, como el recuerdo grato de una Internet 0.1 en la que, a través de una lista de correo (la Lista Tolkien), una serie de compañeros creamos una especie de libro colaborativo, que surgió de forma espontánea a través de los mensajes de correo, y que derivó en la llamada Guerra de la Cerveza. Otra colaboración espontánea que resultó muy interesante fue la traducción conjunta de los poemas del libro de J.R.R. Tolkien Las aventuras de Tom Bombadil, y que, dada la calidad de la traducción, fue posteriormente publicado por Minotauro en forma de libro, cubriendo así un hueco editorial que los seguidores de Tolkien acusábamos desde hacía años.


Así, si es posible colaborar y trabajar en común en una Internet que se nos antoja a día de hoy prehistórica, si existen herramientas cada vez más poderosas para la escritura y edición conjunta (las wikis, los documentos compartidos de Google o de Microsoft Live…), ¿cómo no iba a surgir una red social en torno al proceso de escritura? Existe, y su nombre es SoopBook (Social Open Book Community). Esta red social se basa en la lectura y escritura colaborativa, en crear un libro, definir quiénes pueden verlo y editarlo, y comenzar a escribir. El resultado puede ir compartiéndose, se permite el espacio para la valoración y crítica (es de esperar que constructiva). En cierto modo se trata de la traslación al mundo de las redes sociales de conceptos ya existentes en cuanto a la publicación de contenidos, como las webs de publicación de relatos, o blogs usados como herramienta de escritura, con el aliciente de que, al encontrarse centralizado todo el proceso de escritura y lectura por parte de otros usuarios, se produce un flujo continuo de comentarios que puede retroalimentar a los escritores de forma inmediata.


Una interesante herramienta que, como todas las redes sociales, necesita del respaldo de la comunidad para existir. Bueno, qué, ¿escribimos un libro de informática en modo colaborativo?

jueves, 23 de abril de 2009

La economía del ahorro

En el mes de abril se unen dos días señalados, el de la Tierra, ayer mismo y el del Libro que se celebra hoy mismo, y que pueden, entre ambos, hacernos pensar un poco cómo podemos dar cumplida cuenta de ellos desde el blog y homenajearlos como merecen.


Por un lado, está claro que nuestro pequeño planeta está cada día más agotado. Los recursos son finitos y, tanto por esto como porque nos interesa desde todos los aspectos (medioambiental, económico, social…) deberíamos contener nuestro gasto de recursos para minimizarlo en lo posible.



Por otro, la aplicación el invento de Gutenberg a la impresión de los libros revolucionó literalmente el acceso a la cultura por parte de la población. Sin embargo, bien lo sabemos, el uso de la imprenta y sus “derivados” también repercutieron en el SPAM de épocas pretéritas: la publicidad indeseada, con el consiguiente desperdicio de papel y tinta, que tanto daño ha hecho al medio ambiente.
Si unimos ambas situaciones y tenemos en cuenta lo fácil que resulta hoy día instituirse en nuestros propios impresores utilizando ordenadores e impresoras a destajo, es fácil darse cuenta del despilfarro que llevamos a cabo en la impresión de correos y documentos (especialmente cuando se trata de borradores) en nuestro día a día. Así, aunque intentemos aprovechar las dos caras del folio o imprimir dos o más páginas, de forma reducida, en una sola, lo cierto es que seguimos gastando tinta y papel a destajo.

Por eso, además de utilizar estos medios por todos conocidos para minimizar un poco más el impacto sobre el medio así como para nuestro bolsillo, os invito a probar la Ecofuente. No, no se trata de un manantial inagotable de agua fresca y potable, sino de una tipografía para nuestro ordenador que, creando huequitos  en las letras como si de un queso gruyer se tratase, intenta ahorrar un poco de tinta cuando imprimimos nuestros documentos.



Ah, y si incluso Ecofont os parece poco, tal vez será de vuestro gusto la impresora manual de café. ¡Eso sí, es posible que ante un pico de trabajo nos quedemos sin suficiente tinta porque lleguemos a consumirla nosotros mismos!

viernes, 20 de marzo de 2009

WMI Code Creator


Unas de las entradas más populares del blog son, dejando de lado aquellas que cuentan la falacia de intentar descubrir quiénes nos han excluido de su lista de amigos en el Messenger, las que creé intentando explicar el modo de conseguir el número de serie “físico” de una unidad USB, o del disco duro del equipo. Fundamentalmente, el uso que le vienen dando a este código los visitantes que llegan al blog es la protección de nuestro software frente a la piratería. Bien distribuyendo el software con una asociación a un dispositivo USB, bien vinculándolo en su instalación a una determinada máquina, obteniendo de ella información difícilmente sustituible (como el número de serie del disco duro donde se instaló, o el de la placa base o el procesador). Sin ser métodos del todo fiables para proteger el software, sí que pueden servir para evitar una copia masiva del mismo, especialmente entre usuarios poco avanzados, y en tanto no sea tan popular como para que surja un crack o un método de romper nuestra protección de forma masiva.


Recientemente, otro lector del blog me consultaba sobre este aspecto, así que he querido subrayar los dos artículos mencionados con el uso de WMI (Windows Management Instrumentation) para conseguir información del sistema, de una forma clara y sencilla. Pero como no quiero profundizar en el conocimiento de las librerías WMI más allá de lo que ya explica de por sí la MSDN de una forma bastante más profunda de la que podemos tratar aquí, sí que me gustaría dejaros con una herramienta, cortesía de Microsoft, que permite automatizar la creación de código para el manejo de estos dispositivos. Se trata de WMI Code Creator, y consiste en un simple formulario que nos permite examinar la jerarquía de objetos, clases y métodos que podemos consultar mediante WMI, podemos llegar a ejecutar consultas y, para mayor gloria suya, nos genera código de forma automática en tres lenguajes: C#, VB.NET y VBScript. Una gozada con la que os dejo jugando durante el fin de semana.


¡Feliz descanso!

lunes, 9 de marzo de 2009

Juntos, pero no revueltos

La organización nos hace más eficientes. Esta afirmación no es baladí, y menos aún cuando hablamos de la organización física de la información de nuestros ordenadores. Es decir, de cómo se estructura la misma en los discos duros (cada vez más grandes, de capacidades insospechadas o, cuando menos, inimaginables hace sólo unos pocos años). Por esto, y porque el uso continuado de nuestros equipos termina por hacer que la misma se encuentre fragmentada a lo largo y ancho de los platos de nuestros discos, es conveniente utilizar de cuando en cuando un buen desfragmentador que optimice la forma en que se encuentran organizados los ficheros.


Obviamente, podemos hacer uso del desfragmentador que incorpora Windows, pero sé que os gustan las emociones fuertes y explorar nuevos caminos, así que voy a recomendar hoy una pequeña herramienta, cómo no, libre y gratuita, que lleva a cabo esta tarea de forma encomiable.



JkDefrag es una herramienta distribuida bajo licencias LGPL/GPL, que podemos descargar desde su sitio web y que, entre otras características cuenta con una opción que me ha parecido de lo más interesante: además de poder utilizarse como una herramienta independiente, que analiza y desfragmenta nuestras unidades de disco (bien a través de una interfaz Windows, bien desde la línea de comandos), incluye una opción “salvapantallas”, que podemos configurar para utilizar los tiempos muertos que pasa nuestro ordenador en espera (por ejemplo, cuando asistimos a una reunión, estamos desayunando o discutiendo con un compañero algún aspecto de la nueva aplicación que tenemos que desarrollar) y conseguir que nuestro equipo se encuentre siempre al 100% de sus capacidades.



Una herramienta que os recomiendo incluir dentro de  las “obligatorias” para el mantenimiento y optimización de nuestro ordenador.


jueves, 12 de febrero de 2009

¿Quién apunta a mi web?

En ocasiones echo un vistazo a las estadísticas que me va mostrando uno de los plugins que mantengo en el blog. Son menos detalladas y exhaustivas que las de Google Analytics, por ejemplo, pero lo suficientemente interesantes como para encontrar, por ejemplo, desde donde llegaron los visitantes a través de su HTTP_REFERER, y saber si nos están llegando desde lugares “normales”, o tenemos de nuevo a los amigos spammers dando la nota.


Uno de los enlaces que encontré hace unos días me llamó la atención, así que acudí al sitio web a ver por qué andaba un enlace a Lobosoft por allí, encontrándome con una interesante herramienta que puede ayudarnos, como otras que hemos presentado por aquí , a saber quiénes nos están enlazando desde sus páginas. Recordemos que el parámetro link: del buscador de Google nos permitía conocer páginas indexadas por el mismo que contuviesen enlaces a nuestra web, pero lo interesante de Backlink Watch es que, además, nos indica el tipo de enlace (si contiene, por ejemplo, modificadores como nofollow para que no cuente a efectos de PageRank), o el texto que contiene el enlace, por citar alguna de sus características.


Una sencilla e interesante herramienta que puede ayudarnos a conocer cómo “ve” Internet a nuestra web.

miércoles, 21 de enero de 2009

Editores de código fuente

Aunque la ayuda de la sintaxis coloreada, autocompletar y otras argucias de los entornos de programación y editores de código fuente nos hacen la vida más fácil, lo cierto es que cuando conocemos en profundidad un lenguaje, generalmente, terminamos por olvidar lo fácil que nos hicieron la vida y cómo se codificaba con herramientas tan rudimentarias como el bloc de notas, editores poco más avanzados que el edit de MS-DOS o con pico, para los que teníamos la suerte de poder sustituir con el mismo el uso de vi.


Sin embargo, es en momentos en los que tenemos que enfrentarnos a nuevos lenguajes (al menos nuevos en el sentido de no conocerlos en profundidad) cuando es más útil que nunca contar con un editor apropiado que nos haga más liviana la tarea. Generalmente suelo usar PSPad para editar archivos de texto (también binarios, en hexadecimal), o de código fuente cuando no tengo un editor más específico a mano. Hay bastante gente que prefiere Notepad++, un editor igualmente completo, y la verdad es que probados ambos, es difícil decantarse por uno u otro, porque sus prestaciones son similares y donde flaquea uno, el otro se hace más fuerte. Son, por tanto, herramientas complementarias igualmente potentes, y la elección de uno u otro vendrá dada más por los gustos personales del usuario que por cualquier otra razón.


Sin embargo, hay momentos en los que conviene explorar otros caminos, otras herramientas, y precisamente hoy ha sido uno de esos días. Andaba esta mañana analizando una serie de ficheros ASN.1 con una serie de especificaciones, y ni Notepad++ reconocía la sintaxis, ni la que incorpora PSPad (que viene desactivada de forma predeterminada, y hay que habilitar a través del correspondiente menú de opciones de configuración) ha terminado de convencerme. Incluso he tenido que agregar características tan básicas de la sintaxis como los caracteres que corresponden a los comentarios. Así que me he dicho: ¿habrá por ahí editores “ligeros” que incluyan ésta y otras sintaxis menos comunes? Dicho y hecho, me he puesto a buscar y he encontrado Crimson Editor, un editor llamado a ser sustituido por Emerald Editor, del que no he encontrado una versión compilada (de momento) y que, aunque tiene una interfaz de usuario un tanto espartana, cumple sobradamente con lo que podemos pedir a un editor de código fuente, aunque tiene bastantes carencias respecto a los dos que nombraba anteriormente; en particular, echo de menos la edición “directa” a sitios FTP y remotos.



Sin embargo, para mis necesidades era perfecto. Tiene una gran cantidad de lenguajes en su “base de datos” de sintaxis, y la de ASN.1 la muestra a la perfección. En cualquier caso, me resulta extraño que, por ejemplo, PSPad admita el tipo de comentarios de este lenguaje (--), pero sin embargo no lo trate adecuadamente. Habrá que seguir investigando, pero de momento el “problemilla” me ha permitido conocer este editor.


¿Alguno de vosotros había usado antes el Crimson Editor? ¿Qué editor/es de código fuente de este tipo soléis usar?

miércoles, 6 de agosto de 2008

Generación automática de temas para Wordpress


Una de las características de Wordpress, al igual que ocurre con otros CMS como Joomla o Drupal (por citar tan sólo un par de ellos), es la capacidad de transformación que posee gracias al uso de temas (themes) o plantillas (templates), disponibles para su descarga en Internet, bien gratuitamente, bien a cambio de un importe determinado. Sin embargo, es posible modificarlos pada adaptarlos a nuestros gustos y necesidades, pero lo cierto es que es complicado dar con uno que nos guste especialmente, aunque siempre podemos crearlo de cero a partir del tema básico que incorpora la instalación de Wordpress. En cualquier caso, existe un servicio bastante interesante para aquellos que no dominen las triquiñuelas del HTML, el PHP y las CSS, que permite crear una plantilla personalizada de Wordpress a través de un menú de configuración. Se trata del Wordpress Theme Generator, que produce temas compatibles con las versiones 2.1 a 2.6 del conocido CMS para la creación de blogs. La configuración se realiza a través de un menú y permite la previsualización del tema antes de descargarlo en un cómodo paquete comprimido en ZIP.

martes, 5 de agosto de 2008

Revisión de entradas en Wordpress 2.6

Hace unos días descubría casualmente la opción de acelerar Wordpress 2.6 usando Google Gears, y ahora me encuentro con otra grata sorpresa en el que se está convirtiendo en uno de mis CMS preferidos. Andaba modificando una página, he guardado los cambios y he debido incluir algún espacio, porque al actualizar el navegador Wordpress me ha avisado de que tenía una versión obsoleta de la página, a través de su nueva función de revisión.



Tras esto, me ha permitido seleccionar dos elementos del historial de cambios de la página, y mostrar las diferencias entre las mismas al más puro estilo de un repositorio como Subversion o de herramientas como WinMerge. Simplemente, ¡genial!


viernes, 25 de julio de 2008

Blogueando sobre .NET

blogenginelogo.png


Tras el ataque sufrido por Lobosoft hace unos días he decidido dejar la versión que estaba usando de Wordpress (la 2.3.3. actualizada en los componentes críticos a la 2.5) y pasar a la 2.5.1 o la 2.6. en este fin de semana. Si por algo me resistía a hacerlo era por la cantidad de plugins que tenía instalados, muchos de ellos modificados para obtener una funcionalidad más acorde a mis necesidades. Este es uno de los problemas de los desarrollos paralelos a la línea oficial que siguen los componentes del software libre, y en mi caso, que mantengo el blog meramente por diversión, se estaba convirtiendo en una pequeña gran obligación mantener todo el sistema. Por eso, creo que voy a optar por instalar los plugins básicos intentando mantener en la medida de lo posible la línea base de desarrollo de los mismos, evitando así de paso que el consumo de memoria (probablemente más alto en las nuevas versiones de Wordpress) me cree más problemas. Así pues, a partir del lunes, el blog presentará un aspecto ligeramente diferente al actual, y su motor de publicación estará por fin al día.


Y hablando de CMS de publicación de blogs, precisamente a raíz del ataque hablaba con mi amigo de Albloguera sobre la forma en que se había producido el mismo. Varios sitios web recogen la proliferación de ataques a Wordpress aprovechando agujeros de seguridad, y el uso de dominios de universidades (.edu) para alojar malware, como fue mi caso. Ante esto, Fernando me comentaba que deseaba migrar su blog a alguna solución basada en la tecnología de Microsoft .NET, y si conocía alguna herramienta de publicación con estas características. Su idea es aprovechar la potencia de Silverlight para hacer más vistoso su sitio web, así como poder desarrollar en C# nuevas funcionalidades para el blog. La verdad es que no me había molestado en buscar hasta ese momento algo así, y aunque la oferta no es demasiado grande, la menos existe un proyecto que cumple de forma bastante digna con lo que podemos esperar de un servicio así.


be1.jpg


Se trata de BlogEngine .NET, que ya va por su versión 1.4 y que, en apariencia al menos, no parece estar nada mal. Tras descargar el código fuente desde su página oficial, basta con ejecutar el proyecto para tenerlo funcionando. Está escrito en C# y permite el uso de varios DBMS. Posiblemente profundice más en él cuando tenga un poco de tiempo, aunque con casi toda probabilidad no lleguemos a ver un blog de Lobosoft basado en .NET, aunque puede que sí en Django…


be2.png

miércoles, 23 de julio de 2008

Knol

¿Saben aquel chiste del venerado Chiquito de la Calzada que dice:
- ¡Papar, papar, llévame al circorl!
- ¡¡¡Knol!!! ¡El que quiera verte, que venga a casa!


Pues algo así se propone Google con su nuevo lanzamiento oficial. Knol es el nuevo competidor (o eso dicen sus medios) que le ha salido a la Wikipedia de manos del gigante de Internet. Google plantea este servicio como un lugar donde se presentarán artículos firmados por uno o varios autores, y no podrán ser modificados por el resto de usuarios. Esto choca directamente con las características de cualquier wiki (cuyo significado en hawaiano es “rápido”), donde cualquier lector se convierte en creador al poder modificar, ampliar o eliminar contenido de las páginas de la wiki, aunque pasando por un filtro moderador en el caso de la Wikipedia.


Google, además, se plantea pagar a los autores a través de un pequeño rédito de lo que les deje la publicidad de Adsense que, cómo no, se presentará en estas páginas. Así las cosas, y a menos que cambien demasiado, para mí Knol se plantea no como un competidor de la Wikipedia, sino como un inmenso blog similar a los de Wordpress (o el servicio Blogger del propio Google) donde se pretenden unificar criterios a la hora de publicar artículos, abierto para los autores que serán recompensados con una pequeña calderilla por sus aportaciones al mega-sitio informativo de Google.


Por cierto, de momento el servicio sólo admite artículos en inglés, y está abierto para una pequeña comunidad de autores. Esto sigue la línea habitual de Google de presentar sus servicios oficiales a un reducido grupo de personas, como ya hicieran con Blogger en un principio, o con Gmail, e ir abriéndolo mediante invitaciones hasta hacerlo completamente público.


Veremos cómo evoluciona Knol. La verdad es que, de partida, no me parece tan buena idea como otras de Google, que me ha sorprendido siempre por su simplicidad e ingenio, pero no seremos escépticos: esperaremos a ver en qué posición está Knol dentro de un año. Y por cierto, ¿cuánto tardará Microsoft en presentar su réplica?

lunes, 21 de julio de 2008

Encriptación de una unidad USB mediante TrueCrypt

usb_truecrypt.png


Hace unos días hablaba sobre TrueCrypt y sus características principales, entre las que se contaban la encriptación “on the fly” (para que nos entendamos, en tiempo real, de forma transparente al usuario), así como la capacidad de encriptar sistemas de ficheros de unidades extraíbles, así como la creación de volúmenes cifrados que podríamos almacenar en nuestro ordenador o en un pendrive, y llevar encriptados con nosotros, sin riesgo a que nuestros datos sean vulnerados en caso de extraviar o de que nos sea robada la unidad. Además, al poder instalar TrueCrypt en la propia unidad USB, podemos llevarlo con nosotros y usarlo en cualquier tipo de sistema (al tratarse de software libre, podemos disponer además de las versiones compiladas para Windows o distribuciones de Linux como Ubuntu, de aquella versión personalizada que deseemos compilar por nuestra cuenta).


Hoy veremos cómo se puede crear un volumen comprimido para llevar dentro de nuestra memoria USB. Lo primero es instalar TrueCrypt en el sistema. Para ello, haremos uso del propio asistente de instalación que incluye la aplicación. Aunque contiene una opción de “Extraer”, que permite extraer los archivos sin realizar ninguna instalación en el equipo, optaremos por la opción de instalación, exportando posteriormente, mediante la correspondiente opción del programa, TrueCrypt a nuestro pendrive.


tc01.png


La instalación es tan simple como seleccionar la ruta donde proceder a la instalación, y el típico “Siguiente, siguiente” a que nos tienen acostumbrados.


Ahora procederemos a crear un volumen cifrado en el que almacenar nuestros datos. Seleccionaremos la aplicación TrueCrypt Volume Creation Wizard, bien ejecutándola desde el grupo de programas correspondiente a TrueCrypt, bien desde la correspondiente opción del programa. Se nos abrirá el asistente que permitirá configurar el volumen cifrado. Seleccionaremos la ubicación donde deseamos crearlo, y el tipo de cifrado que deseamos usar.


tc06.png


Como es posible usar diversos tipos de algoritmo criptográfico, e incluso combinarlos, TrueCrypt permite ejecutar una serie de pruebas de rendimiento (benchmarks) que nos darán idea de la tardanza en encriptar/desencriptar ficheros de diversos tamaños para cada algoritmo criptográfico.


tc09.png


Indicaremos a continuación el tamaño del volumen. Recomendamos que sea un buen porcentaje de la memoria USB (según nuestras necesidades, claro está), dejando libre parte del tamaño de la unidad, por un lado para incluir TrueCrypt, y también por si necesitásemos compartir el pendrive y permitir que graben información en él, o puedan recuperarla sin necesidad de autenticarse.


tc07.png


Introduciremos la contraseña que usaremos para cifrar la información del volumen.


 


tc010.png


También es posible incluir un fichero de clave, bien generándolo con TrueCrypt, bien usando uno existente. Para este fin puede valernos cualquier imagen o archivo MP3, por ejemplo, que deseemos incluir junto a TrueCrypt. Esto mejorará las capacidades de cifrado de la aplicación.tc09.png

tc011.png


Por último, generaremos una semilla aleatoria moviendo al azar el puntero del ratón sobre la ventana de TrueCrypt. Tras esto, el volumen habrá sido creado, y podremos usarlo copiándolo en el pendrive (si no lo generamos allí desde un principio).


tc012.png


tc013.png

miércoles, 16 de julio de 2008

TrueCrypt

 


truecrypt.jpg


Hace unos días, un compañero de trabajo me comentaba una noticia que da escalofríos sólo de pensarlo: en los aeropuertos de EEUU desaparecen anualmente más de 600.000 ordenadores portátiles. Es lógico pensar que pertenecerán en su mayoría a ejecutivos y empleados de todo tipo de empresas que los llevan consigo en sus viajes de negocios, hasta que son inadvertidamente liberados –cual libros- en estas instalaciones, y comienzan una vida en las páginas de subastas, por ejemplo, o formateados y en casa del afortunado que encontró uno de estos, y no lo denunció. Si nos paramos a pensar la vasta cantidad de información (confidencial) que circula cada día libremente en este tipo de dispositivos electrónicos -ordenadores portátiles, discos duros externos, PDA’s, memorias USB…-, y que termina en manos desconocidas, que podrían darle un uso inadecuado a la misma, el escalofrío puede tomar carácter de movimiento sísmico. Es incomprensible cómo, existiendo la cantidad de herramientas criptográficas que pueden encontrase a día de hoy en el mercado, los usuarios de este tipo de dispositivos circulan por las calles con información privada y confidencial sin proteger.


En mi caso, lo más que suelo llevar a la calle es un pendrive con algunos documentos y aplicaciones portátiles que pueden sacarle a uno de más de un apuro (la navaja suiza del informático). Hace tiempo usaba un pendrive de Swissbit, el modelo bit4flash (y que conste que no es por hacer publicidad a nadie, este modelo ya no se fabrica), que traía incorporada una aplicación bastante maja de la empresa CoSoSys (Carry it Easy) que permitía encriptar el contenido del pendrive muy fácilmente. Si conectábamos el pendrive a un ordenador, únicamente podíamos ver un ejecutable y dos archivos, uno de texto y un HTML con la información del propietario y medios de contacto, por si perdíamos el dispositivo. El ejecutable solicitaba una clave, y al introducirla correctamente permitía ver el resto del sistema de archivos (realmente, un sistema de archivos virtual ya que almacenaba la información en un fichero oculto y encriptado) con nuestra información. Aunque la aplicación en sí me gustaba bastante, adolecía de algunos problemas: sólo estaba disponible para Windows, y como usuario desconocía el sistema de encriptación usado para proteger su información. Tiempo después cambié de pendrive y de aplicación. Descargué TrueCrypt, una de las mejores herramientas de encriptación, software libre (por lo que el código es abierto), multiplataforma y que usa una amplia gama de algoritmos de cifrado (AES, Blowfish, CAST5, Serpent, Triple DES, Twofish e incluso combinaciones entre ellos), para los que ofrece una serie de benchmarks de velocidad por lo que podremos elegir el que deseemos para cifrar nuestros datos sin terminar teniendo un dispositivo inutilizable debido a su lentitud. TrueCrypt incorpora la capacidad de convertirse en una herramienta portátil, por lo que podemos llevarla en el llavero USB junto a los datos cifrados en un archivo encriptado, y ofrece ventajas que van mucho más allá. Entre sus características se cuentan la capacidad para encriptar no sólo los archivos de datos en un fichero cifrado, de forma similar a como hacía Carry it Easy, sino que además posibilita cifrar toda una unidad física como un disco duro externo o la propia memoria USB, e incluso permite encriptar el contenido de un disco duro de sistema. Es decir, podemos encriptar el disco duro que contiene Windows, y cuando arranquemos nuestro ordenador se nos solicitará una contraseña, antes de que se inicie el sistema. Empezaremos a trabajar sin mayor problema, y no se nos requerirá más dicha clave. Pero si perdemos nuestro portátil o nos lo roban, poco podrán hacer con nuestros datos, desde el mismo equipo o usando el disco duro en otro ordenador distinto. Como veis, TrueCrypt es una herramienta versátil y muy potente, y al leer la noticia que os comentaba sobre la pérdida de portátiles, he creído interesante traerla al blog. En los días sucesivos (y rompiendo un poco la tónica veraniega de escasos artículos técnicos) presentaré unos tutoriales básicos sobre su uso.

lunes, 14 de julio de 2008

Soy ciudadano americano

hss-logo.gif


¿Cuántas veces habremos oído esa frase? Es comprensible que sean muchas, sobre todo si tenemos en cuenta la gran cantidad de puertas que abre. En un mundo globalizado, pertenecer a la elite del Imperio provee de ciertas prerrogativas que el resto de la plebe no podemos disfrutar. Por ejemplo, ver series y películas en alta definición en servicios como Hulu, o escuchar la radio de Pandora. Si intentamos acceder a una de estas páginas que usan la geolocalización de las IP para habilitar o denegar el acceso, obtendremos un mensaje del tipo:



Dear Pandora Visitor,
We are deeply, deeply sorry to say that due to licensing constraints, we can no longer allow access to Pandora for listeners located outside of the U.S. We will continue to work diligently to realize the vision of a truly global Pandora, but for the time being we are required to restrict its use. We are very sad to have to do this, but there is no other alternative.

We believe that you are in Spain (your IP address appears to be 193.153.xxx.xxx). If you believe we have made a mistake, we apologize and ask that you please contact us at <!-- Begin user = "pandora-support"; site = "pandora.com"; document.write(\\'\\'); document.write(user + \\'@\\' + site + \\'\\'); // End --> pandora-support@pandora.com

Sin embargo, es sencillo saltarse dicha comprobación. Por un lado, podemos usar algún proxy anonimizador que informe a las páginas de otra dirección IP (dando un salto a través de dicho proxy para ocultar nuestra dirección real). Sin embargo, habitualmente son lentos y están plagados de publicidad, si se usan a través de un interfaz web. Existen también add-ons para Firefox (que dejaron de funcionar con Firefox 3, aunque no se trate ahora de un problema, sino de un cambio sustancial en el comportamiento del navegador) que podrían haberse usado con este fin. Hoy quiero plantear una solución bastante sencilla, que pasa por la instalación de una aplicación como Hotspot Shield, un programa gratuito que nos permite, simplemente tras instalarlo, acceder a este tipo de recursos. Una vez instalado deja un icono en la barra de tareas que podemos usar para conectarnos o desconectarnos del servicio. Cuando nos conectemos al mismo, aparecerá el mensaje:


 


hssconnectedbw5.jpg


Y listo. Ya podemos celebrarlo viendo alguna película, como aquella que cantaba:

Os recibimos
americanos con alegría,
olé mi mare,
olé mi suegra y
olé mi tía.

 

domingo, 13 de julio de 2008

¿Quiénes nos apuntan?

Para los aficionados al posicionamiento SEO, existen herramientas muy interesantes que nos ayudan a saber si nuestra página se encuentra bien posicionada en los buscadores usando determinadas palabras de búsqueda, como ocurre por ejemplo con Free Monitor for Google. Hace unos días, uno de nuestros lectores accedía al blog a partir de una consulta realizada en Link Checker, una herramienta gratuita disponible a través de una interfaz web que permite consultar qué sitios web apuntan al nuestro, qué PageRank tienen (y, por tanto, cómo contribuyen a mejorar el nuestro, además de indicarnos el tipo de enlace, ya que si se trata de un enlace marcado con el atributo Nofollow no será contabilizado a la hora de calcular el PR de nuestro sitio web). En cierto modo es una mejora respecto a la consulta en Google de "link:sitioweb", que devuelve qué páginas web apuntan al sitio web que hemos indicado como parámetro a link:


 


link-checker.png



Una interesante herramienta que se suma a tantas otras como tenemos disponibles para ayudarnos a mejorar el acceso a la información que difundimos desde nuestro sitio web.