Autonomía digital y tecnológica

Código e ideas para una internet distribuida

Simplitt, generador de sitios estáticos a partir de una hoja de cálculo

Imago voragine.net
• Por
Hace unos días Pablo y yo liberamos la versión 2.0 de simplitt. Simplitt permite construir webs sencillas y ligeras. En las versiones anteriores experimentamos con la idea de trabajar sin base de datos SQL para poder prescindir del servidor de base de datos, y así poder funcionar con un servidor sin muchos recursos de hardware. Como alternativa ligera a SQL, decidimos almacenar los datos en archivos de texto plano, para poder seguir disfrutando de la potencia de generar dinámicamente las webs. En esta nueva versión, hemos convertido simplitt en un generador de sitios estáticos que utiliza un archivo CSV como base de datos.

Cómo incluir un archivo en una variable: funciones de control de salida y bufers en PHP

Imago voragine.net
• Por
Frecuentemente se usan en PHP las funciones include o require para incluir un archivo en otro. Esto se suele usar para fragmentos de código necesarios en múltiples lugares, para evitar así la repetición; también para estructurar el código y facilitar su edición. Ninguna de estas soluciones es válida si se quiere incluir el contenido de un archivo en una variable. Fundamentalmente porque esos archivos pueden contener código PHP que al ejecutarse produce una salida, en forma de código HTML, que es lo se quiere capturar con la variable. Es decir, en la variable no queremos el código "fuente", sino el código ya "procesado" por PHP.

Migrar grandes (y pequeñas) bases de datos, fácilmente y sin limitaciones, usando la línea de comandos

Imago voragine.net
[actualizado el ] • Por
Si se tiene acceso SSH al servidor donde queremos migrar la base de datos, recomiendo hacerlo usando únicamente comandos. La línea de comandos nos evita lidiar con las limitaciones de PHPMyAdmin, el servidor web o el navegador. Por mi experiencia, tras probar otros métodos para migrar grandes bases de datos, he comprobado que hacerlo en la línea de comandos es la manera más segura y rápida.

Botones de compartir en redes sociales personalizados y sin javascript

Imago voragine.net
[actualizado el ] • Por
Cada botón de compartir en su red social no es otra cosa que una llamada a un programa en el servidor de la red social que permite publicar algo. Todo ello rodeado de un logo y un buen trozo de javascript, que hacen opaco el proceso, dificultando por ejemplo personalizar el aspecto del botón o modificar la petición. Por otro lado, los códigos ofrecidos por cada red social que construyen los botones de compartir, solicitan el logo y algo más de información a los servidores de la red social, así que muchas veces tardan en cargarse en exceso. La llamada al programa de la red social se realiza mediante URL, así que si conocemos la URL podemos ejecutarlo mediante un simple enlace, al que daremos el aspecto que queramos. Con parámetros en la URL podemos personalizar la petición como queramos.

Cómo interactuar con el servidor de base de datos sql mediante comandos, desde un script de bash

Imago voragine.net
• Por
Aunque generalmente nos comuniquemos con el servidor de base de datos SQL mediante PHP u otro lenguaje para generar una salida HTML, hay veces que es muy útil hacerlo usando un script de bash. Por ejemplo cuando queremos automatizar en nuestro servidor la creación de bases de datos, o ejecutar una búsqueda con reemplazo (search and replace) de un registro completo o de un cadena concreta. Para ejecutar consultas al servidor SQL en modo no interactivo, cosa que necesitamos para hacerlo desde un script, debemos acompañar la orden mysql con el modificador -e, al que daremos como valor la consulta en cuestión.

Usando bash y cron para automatizar la copia de seguridad de una base de datos

Imago voragine.net
[actualizado el ] • Por
Este post explica cómo programar un pequeño script en bash que hace copia de seguridad de una base de datos usando mysqldump, y envía el archivo sql generado a una dirección de correo usando el cliente de línea de comandos mutt. Así que hay que tener instalados estos dos paquetes en la máquina donde se vaya a hacer correr el script. El script se ejecutará con la frecuencia deseada usando cron.

Diseño colaborativo: abriendo el proceso de diseño

Imago voragine.net
• Por

El título de esta entrada es también el de un artículo que escribí por encargo de mi amigo Carlos Jiménez para el número 12 de la revista MasD, de la que es editor.

El artículo, Diseño colaborativo: abriendo el proceso de diseño, explica lo que desde nuestra práctica entendemos como proceso de diseño colaborativo, algunas nociones de cómo llevarlo a cabo y qué ventajas puede tener sobre modelos más tradicionales. El artículo es una destilación de lo que hemos aprendido investigando y experimentando en el estudio de diseño y desarrollo web montera34, desde que lo pusimos en marcha allá por 2004, Juan López-Aranguren, Ruben Lorenzo, Pablo Rey y yo.

Resumen: Frente a las formas tradicionales de organizar el proceso de diseño se pueden plantear nuevos esquemas más flexibles que desdibujan la separación entre cliente y diseñador. Los procesos de trabajo colaborativo facilitan la comunicación entre las distintas partes implicadas a cambio de debilitar las barreras de conocimiento de los distintos expertos, incluidos los diseñadores. Por otra parte, las nuevas tecnologías, al tiempo que facilitan la comunicación y el intercambio de conocimiento, también permiten al diseñador acceder a un amplio catálogo de soluciones disponibles, modificando por completo el entorno en el que desarrolla su trabajo y relativizando la importancia de la originalidad en el proceso de diseño. En este nuevo paradigma, la gestión del conocimiento creado colectivamente (procomún) y la comunicación con el cliente pasan a ser habilidades imprescindibles para llevar a buen fin cualquier proceso de diseño.

Etiquetas meta en la cabecera de tu WordPress para compartir correctamente tu blog en Facebook y Twitter

Imago voragine.net
[actualizado el ] • Por

Al compartir un contenido de una web en Facebook y Twitter podemos definir la información que aparecerá en cada uno de los timelines: el título, un resumen del contenido, una imagen, incluso algo de información sobre el autor. Para Facebook basta con añadir unas cuantas etiquetas meta que definan estos contenidos; en el caso de Twitter hay que hacer además una petición para que concedan al dominio la capacidad de generar lo que han llamado cards, el sistema que permite añadir información a los tuits, más allá de los 140 caracteres.

Lo interesante es generar estas etiquetas de manera dinámica usando las funciones de WordPress, para que se adapten al contenido de cada página de nuestra web.

Nuevas plataformas para blogs, recuperando la esencia del blogging

Imago voragine.net
[actualizado el ] • Por
La tendencia actual de las plataformas de blogging es la simplicidad, tanto funcional como estética: gestores de contenidos con las capacidades imprescindibles para escribir y gestionar posts; interfaces de usuario limpias y mínimas que priorizan la experiencia de lectura por encima de todo. Una especie de vuelta a los orígenes, en la que se recupera la idea de que lo importante de tener un blog es escribir. Así están proliferando las plataformas de blogging sencillas y limitadas, que tienden hacia lo mínimo.