Destacados

Más
Sábado, 15 de marzo, 2014

Alternativas a WordPress: CMS con soporte SQLite

2 +20K

¿Alternativas a WordPress? Aquí tienes varios CMS con soporte SQLite, un sistema de base de datos ligero muy portable, sencillo y rápido.

En el artículo anterior, hablábamos de CMS «sin» bases de datos: la posibilidad de montar un blog o sitio web con un gestor de contenidos que no necesitan bases de datos, puesto que la información es almacenada en carpetas y archivos, por separado.

Esto, en algunos casos, puede ser interesante puesto que simplifica el mantenimiento del CMS, es mucho más portable y en ciertas ocasiones puede ser más eficiente y productivo para el editor o usuario a cargo del sitio web.

Parte I: Alternativas a Wordpress: CMS sin bases de datos
Parte II: Alternativas a Wordpress: CMS con soporte SQLite
Parte III: Alternativas a Wordpress: Los mejores CMS dinámicos
Parte IV: Alternativas a Wordpress: Generadores estáticos
Parte V: Alternativas a Wordpress: CMS con soporte NoSQL

Sin embargo, como también comentaba en el artículo anterior, la elección de un CMS de ese estilo depende de muchos factores, y en algunos casos puede ser un paso hacia atrás puesto que perdemos ciertas características deseables (búsqueda, filtrado, flexibilidad relacional, etc...). Por ello, sería interesante utilizar algo a medio camino entre los CMS sin bases de datos y los CMS que si las utilizan. Algo como SQLite.

SQLite es una biblioteca de bases de datos que actúa de forma similar a las bases de datos actuales, pero manteniendo la sencillez y portabilidad que ofrece guardar bases de datos en un único fichero independiente. En lugar de permanecer a la escucha como un servicio independiente, se utiliza junto a la aplicación.

SQLite es utilizado por muchos sistemas, incluyendo Firefox, Skype o aplicaciones de iPhone y Android. Las características principales de SQLite son las siguientes:

  • Es fácil de utilizar. No requiere configuración ni instalación independiente.
  • Es muy portable puesto que la base de datos está en un sólo archivo.
  • Funciona integrado a la aplicación web, eliminando la latencia de comunicación.
  • Carece de un sistema de gestión de usuarios.
  • Carece de características de rendimiento: (caché, compresión, optimización de consultas...).
  • Es compatible con ACID y la mayor parte de la especificación de SQL-92.
  • No se recomienda para sitios que requieran una alta concurrencia de escritura.
  • No sirve para bases de datos en un servidor separado (cliente/servidor).

En Appropriate uses for SQLite podemos encontrar una breve guía orientativa sobre los casos que son ideales para utilizar SQLite. Destaco la siguiente información:

Generalmente, SQLite funciona bien como motor de base de datos para sitios web con tráfico bajo-medio (el 99,9% de los sitios web). La cantidad de tráfico capaz de manejar depende del uso que se le dé a la base de datos. A grandes rasgos, cualquier sitio que tenga menos de 100.000 páginas vistas diarias* debería funcionar perfectamente con SQLite.

* 100.000 páginas vistas es una estimación muy conservadora. SQLite demuestra que funciona con tráfico 10 veces superior.

Así pues, veamos una lista de gestores de contenido (CMS) que soportan bases de datos SQLite, además de otras bases de datos comúnmente utilizadas hoy en día.

1. Ghost

Uno de los CMS que más ruido vienen haciendo desde hace algún tiempo es Ghost. Destaca por una interfaz ultravisual muy atractiva y minimalista que pone el foco en el lado del cliente. Dispone de dos modalidades (de la misma forma que WordPress): una en su propia plataforma y otra para nuestro propio servidor, gestionada por nosotros mismos.

Está desarrollado en NodeJS e incorpora numerosas funcionalidades avanzadas, como escribir utilizando el formato Markdown, HandlebarsJS como sistema de plantillas semánticas para temas y un conjunto de herramientas y APIs para desarrolladores. Utiliza SQLite por defecto, aunque también es posible utilizarlo con bases de datos MySQL.

URL | Ghost

2. Radiant

Radiant es un CMS que destaca por una simple y elegante interfaz sencilla de aprender a utilizar para cualquier tipo de público. Puedes crear páginas, snippets (secciones) o plantillas, así como organizar la jerarquía de tu página como mejor te parezca.

Incluye un sistema de caché temporal de 5 minutos, que optimiza el rendimiento de la visualización de páginas. También tienes una gran cantidad de extensiones para ampliar las funcionalidades del CMS. Está desarrollado en Ruby on Rails y permite usar tanto bases de datos SQLite como MySQL, PostgreSQL, DB2 o SQL Server.

URL | Radiant | Demo

3. Bolt

Bolt es un ligero y sofisticado CMS, que intenta reducir el número de clics necesarios para realizar las diferentes tareas de mantenimiento de un sitio web. Dispone de un panel de control adaptable, ideal para realizar estas tareas desde dispositivos como smartphones o tablets.

Está desarrollado en PHP y soporta bases de datos SQLite, MySQL y PostgreSQL.

URL | Bolt CMS

[...]

Queda el 51% del artículo
Leer artículo completo

EOF (End of file)
Martes, 11 de marzo, 2014

Alternativas a WordPress: CMS «sin» bases de datos

10 +30K

¿Alternativas a WordPress? Aquí tienes varios CMS simples sin bases de datos, sus mitos y los escenarios en los que pueden ser apropiados.

Actualmente, cuando hablamos de CMS (gestores de contenido web), WordPress es el líder indiscutible, sin ninguna duda. Con una amplia ventaja sobre otros, como Joomla o Drupal, sus rivales más cercanos, es la principal opción para la mayoría de usuarios que quieren publicar sus contenidos en Internet.

Y el motivo es lógico. WordPress es veterano, cada vez más cómodo, tiene una comunidad gigante de usuarios y una extensa colección de plugins para hacer prácticamente cualquier cosa.

Sin embargo (y sólo en algunos casos), tras llevar un tiempo utilizando un CMS, es posible que comiences a ser cada vez más exigente: sientes pereza al escribir una nueva entrada porque es un proceso poco atómico (requiere varios clics y/o cansinos y repetitivos pasos), o al aumentar tus visitas comienzas a detectar que la velocidad y rendimiento de WordPress empeora o, simplemente deja de funcionar, ya que se trata de un CMS dinámico (construye páginas en cada petición), etc.

Existen muchas formas de mejorar el rendimiento de WordPress para evitar que se caiga tu web (instalar plugins de caché, cambiar a un servidor más potente, utilizar un CDN, etc...), pero en ciertos casos, lo más sencillo puede ser volver a las soluciones más simples.

Modelo basado en ficheros de texto (flat-based)

A pesar de que muchos gurús del marketing venden los CMS de texto plano (en inglés, databaseless o flat-file based) como una revolución, no es (en absoluto) la panacea. Utilizar un modelo de ficheros de texto como base de datos no es una revolución, sino una involución, puesto que es el modelo que se usaba antes de las bases de datos actuales.

Si conoces (o eres) uno de estos personajes que defienden a ultranza las bases de datos en texto plano sin saber a ciencia cierta sus características, ten en cuenta que las bases de datos actuales evolucionaron de dichas estructuras simples de ficheros, buscando una mayor eficiencia y versatilidad. Y lo han conseguido.

No obstante, opino que estos CMS pueden ser interesantes en ciertos escenarios muy concretos. De hecho, la filosofía de bases de datos alternativas como SQLite se basan en utilizar ficheros independientes como base de datos (y son usadas en aplicaciones como Firefox o Skype).

Pero volviendo a nuestro tema, dichos CMS simples (sin bases de datos) tienen algunas particularidades que cabe destacar:

  • Suelen estar orientados a usuarios con un perfil medio-avanzado.
  • Son ideales para sitios/blogs sencillos, que no requieren alta complejidad.
  • Reduce recursos/costes de alojamiento al omitir la base de datos (VPS o superiores).
  • Se pierden características deseables: búsquedas, ordenación, filtros, etc...
  • Se tiende a externalizar los comentarios, con sistemas como Disqus o FBC.
  • Es fácil de mantener: reduce complejidad de instalación, migración o actualización.
  • Suele aumentar la productividad en usuarios avanzados al ser más simple.

No voy a extenderme demasiado en estos puntos. Hay dos artículos que resumen bastante bien mi opinión al respecto: Why use a Database with a small CMS?, de All in The Head, y Will flat-file dethrone WordPress? Unlikely, de Mor10.

En esta primera parte del artículo veremos varios CMS simples, que no requieren base de datos y podrían ser útiles en casos concretos que cumplan uno o varios de los requisitos anteriores. En las siguientes partes abordaremos otro tipo de CMS como los generadores estáticos o CMS dinámicos alternativos.

1. TextPress

TextPress es uno de los CMS simples más interesantes y sencillos, orientado para programadores iniciados en PHP. Está construido con el microframework SlimFramework y está preparado para editar su archivo de configuración y establecer los parámetros apropiados para poner a funcionar Google Analytics o Disqus, así como atributos o secciones del blog.

Para crear entradas, basta con crear archivos de texto en formato Markdown en la carpeta articles y automáticamente gestionará y creará la estructura de la web. Es muy útil, puesto que puedes crear artículos rápidamente con un editor de texto o mediante herramientas como Markable o Dillinger.

Además, por defecto, TextPress (al igual que la mayoría de estos CMS) genera su propio caché estático particular, de modo que al acceder por primera vez a un artículo, los siguientes accesos serán instantáneos, reduciendo la carga del servidor de sitios con alto tráfico. También permite publicar artículos directamente a través de Git.

URL | TextPress

2. Gp|Easy CMS

No por nada este CMS tiene la palabra «fácil» en el título. Gp|Easy CMS es un gestor de contenidos muy cuidado y completo, con la característica estrella de disponer de una interfaz visual por completo. Todo se puede hacer a través de menús.

Tras un pequeño y breve proceso de instalación, puedes comenzar a personalizar tu sitio mediante su agradable y cómodo panel: subir archivos, arrastrar y soltar temas para activarlos, múltiples usuarios, etc... Respecto al creador de entradas, puedes utilizar un panel flotante al más puro estilo de un procesador de textos, dónde encontrarás todo lo necesario, desde funciones de copiar y pegar hasta emoticonos, código fuente o plantillas predefinidas.

El sistema también ofrece la plataforma gpEasy para crear tu propio blog en dicha web, del estilo tunombre.gpeasy.com. Es software libre y puedes encontrar más detalles en gpEasyCMS en GitHub.

URL | gpEasy CMS | Demo

3. Monstra

Monstra es un sencillo y flexible CMS multiusuario. Está especialmente desarrollado para ser sencillo de utilizar y con una interfaz agradable. Sorprende por la agradable accesibilidad de la que dispone, pudiendo configurar cosas como el idioma o la instalación en cuestión de segundos. Eso sí, por defecto, la edición de entradas es en formato HTML, aunque dispone de editores alternativos en los plugins.

Para los desarrolladores, Monstra utiliza Twitter Bootstrap y posee una interesante API con la que se pueden desarrollar plugins, temas y algunas otras cosillas. El código es software libre y puedes encontrar MonstraCMS en GitHub.

URL | Monstra | Galería

4. PicoCMS

Estúpidamente simple. Así se define PicoCMS, un gestor de contenidos ultra-simple, orientado a usuarios avanzados, ya que no dispone de panel de control. Todo se gestiona a través de un explorador de archivos. Cada entrada del CMS es un archivo independiente en formato Markdown, permitiendo también especificar ciertos detalles como el título, metadescripción u otros.

Utiliza Twig para gestionar los temas, además de incorporar varios plugins para extender funcionalidades. Tienes el código fuente en la página de PicoCMS en GitHub.

URL | PicoCMS

[...]

Queda el 44% del artículo
Leer artículo completo

EOF (End of file)
Viernes, 21 de febrero, 2014

Apogee Software y sus videojuegos de los 90

16 +30K

23 videojuegos desarrollados y/o distribuidos por Apogee Software durante la década de los 90 bajo el modelo de distribución Shareware.

Durante la década de los 90, una compañía llamada Apogee Software consiguió abrirse camino en el mercado de los videojuegos. Se convirtió, durante esos años, en una desarrolladora/distribuidora muy popular, que cuenta con títulos tan famosos como Duke Nukem, Commander Keen o Wolfenstein 3D.

Quizás, una de las particularidades entre las que destacó Apogee Software fue en su apuesta por el uso del modelo de distribución Shareware (probar el producto durante un tiempo reducido, o con ciertas limitaciones) para sus juegos, que, aunque no era un concepto nuevo, la corriente general no utilizaba este modelo. La mayoría de sus juegos eran trilogías, donde el primer episodio se podía jugar completa y gratuitamente.

Junto a sus juegos shareware (recordemos que hablamos de la época de MS-DOS), Apogee ofrecía también un catálogo donde podías ver otros títulos disponibles, junto a la posibilidad de encargarlos y comprarlos. Además, este sistema de distribución era muy utilizado en las BBS, trasladándose posteriormente a servidores FTP, F-Serves de IRC o, en sus «últimos aletazos», revistas del tipo PC-Manía o Hot-Shareware.

Catálogo MS-DOS de Apogee Software. En los propios juegos también se daba información.

Era frecuente el uso de ASCII Art por parte de Apogee Software en sus catálogos, los cuales intentaban mostrar un aspecto colorido y llamativo para sus juegos.

Nota: Los juegos marcados con un asterisco en su título (*) fueron publicados/distribuidos por Apogee Software, pero desarrollados por otras empresas.

Aventuras y puzzles de texto (198x)

La compañía Apogee Software fue fundada en 1987, y hasta principios de los 90 no se publicaban juegos gráficos «avanzados». Durante sus primeros años (incluso en 1986, antes de fundarse oficialmente la compañía), Apogee creó varios juegos de texto, entre los que podíamos encontrar aventuras y puzzles.

Se crearon dos packs con varios de estos juegos. Por un lado, Puzzle Fun Pack, que contenía Asteroids Rescue, Block Five, Maze Machine y Phrase Master, todos juegos de tipo puzzle en modo texto.

Block Five (Puzzle Fun Pack), de Apogee Software.

Por otro lado, teníamos Adventure Fun Pack, que incluía Night Bomber, Raiders of the Forbidden Mine, Rogue Runner y The Thing, que se alejaban de la esencia de los puzzles. Todos estos juegos de texto, entre otros, fueron liberados por Apogee Software con licencia GPL y relicenciados como Freeware.

1. Commander Keen (1990)*

Apogee Software comenzó a tener éxito con un juego que no fue desarrollado por la propia empresa, sino por id Software, la compañía que creó el famoso Doom. Commander Keen era el segundo juego de id Software, el cuál se basaba en el sistema de juego del exitoso Super Mario, un juego de plataformas de scroll horizontal.

De hecho, la historia de id Software comenzó su andadura con una serie de juegos denominados Dangerous Dave, los cuales, como se puede ver, seguían la estela de los primeros Super Mario.

Poco más tarde, id Software (en ese entonces Softdisk) consiguió desarrollar un sistema de scroll muy fluido, que había sido imposible de llevar al PC hasta ese momento. Para probar ese sistema, y a modo de broma privada, en id Software crearon un prototipo titulado Dangerous Dave In Copyright Infringement:

Prototipo Dangerous Dave in Copyright Infringement en un nivel de Super Mario 3.

Si estás interesado, aquí tienes más información sobre la historia de Commander Keen. Merece la pena entrar sólo por ver la legendaria foto de Tom Hall, el diseñador.

Pero volviendo al primer éxito de Apogee, Commander Keen: Invasion of the Vorticons, dicho juego trataba de un niño de 8 años llamado Billy Blaze que viaja a través del espacio como el Comandante Keen, con el casco de fútbol americano de su hermano, intentando salvar a la Tierra del desastre.

Durante el año 1990 se lanzaron sus tres primeros episodios: CK1: Marooned on Mars, CK2: The Earth Explodes y CK3: Keen Must Die!. El sistema de juego era muy similar a Super Mario Bros 3, adaptado, eso sí, al universo de Commander Keen, plagado de detalles cercanos a un niño de 8 años, como juguetes, caramelos u osos de peluche.

URL | Commander Keen 1

Aunque más desconocido, también existió Commander Keen 3.5 denominado Keen Dreams o El episodio perdido, que no forma parte del catálogo oficial de Apogee Software, sino que fue publicado por Softdisk por separado. En él, Commander Keen lucha contra la verdura que tan poco le gusta y le obligan a comer.

2. Crystal Caves (1991)

El juego Crystal Caves, desarrollado por Apogee, trata sobre un minero que debe encontrar todas las gemas de cada nivel, sorteando algunos obstáculos o enemigos. El juego se basa en un viejo clásico de Atari llamado Miner 2049er.

URL | Crystal Caves

3. Duke Nukum (1991)

Probablemente, el título de este juego te suene de algo, ya que Duke Nukem 3D (su tercera parte) fue el juego más popular creado por Apogee. Duke Nukum fue la primera parte de esta saga de videojuegos que tanto se ha versionado, aunque quizás te preguntes porque este curioso nombre...

Tras el lanzamiento de Duke Nukem I, cayeron en la cuenta de que la serie de dibujos animados Captain Planet tenía un personaje llamado Duke Nukem. Para evitar problemas de derechos de autor, se modificó Nukem por Nukum, negándose a abandonar el juego de palabra con Nuke, ya que el juego tiene bastante relación con las armas nucleares.

La primera parte de Duke Nukem se llamó Duke Nukum para evitar un posible problema de derechos.

Sin embargo, Apogee se dio cuenta más tarde que Duke Nukem no había sido registrado por la compañía de la serie, por lo que lo registraron y retomaron el nombre en las siguientes ediciones.

[...]

Queda el 78% del artículo
Leer artículo completo

EOF (End of file)
Jueves, 13 de febrero, 2014

La gran guía de supervivencia de la terminal de Linux

20 +40K

¿Buscas programas para la terminal de GNU/Linux? Aquí tienes una completa guía de trucos, comandos y herramientas para la terminal de texto.

La terminal siempre ha sido objeto de controversia entre los usuarios de un sistema. Mientras que a algunos usuarios les parece algo muy complejo e incómodo de utilizar, a otros les parece una herramienta poderosísima a la que pocas veces (incluso siendo usuario avanzado) se le consigue sacar todo su potencial.

Tal vez sea cierto que no todos los usuarios están hechos para ella, pero si te apetece darte una vuelta por esta guía de supervivencia sin «X» (interfaz gráfica de Linux) y descubrir todo lo que se puede hacer desde una simple línea de comandos, ¡ponte cómodo y empecemos!

1. Explorador de archivos

GNU/Linux posee una larga colección de comandos y herramientas para moverte a través de las diferentes rutas, directorios o carpetas del sistema, como por ejemplo popd y pushd, explicados en 10 comandos para trabajar en Linux, sin embargo, es comprensible que prefieras un sistema más cómodo para moverte.

Ranger es un claro ejemplo, un sencillo explorador de archivos en modo texto, que nos permitirá navegar por el árbol de directorios utilizando las combinaciones de teclas del famoso editor VIM.

Flappy Bird visualizado desde una terminal de texto.

URL | Ranger (GitHub)

Además, basta con escribir ranger --copy-config=scope y tendremos ranger configurado para mostrar una previsualización de imágenes en formato ASCII a todo color mediante img2txt, el cuál también se puede utilizar desde línea de comandos directamente.

Otro gran clásico de los exploradores es Midnight Commander, el cuál se basa en el famoso Norton Commander de la época de MSDOS. Además de ser muy atractivo y organizado visualmente, nos ofrece un menu superior y unas teclas de acceso rápido que lo hacen algo muy cómodo de utilizar.

URL | Midnight Commander

Existen varios otros exploradores de archivos, como nffm o vifm. Sin embargo, si nos centramos en los visores de imágenes, podemos encontrar fbi (framebuffer viewer), el cuál nos permite reproducir gráficamente, desde nuestra terminal de texto archivos gráficos, realizando una conversión previa.

Antes también mencionaba img2txt, el cuál es un comando que incorpora las librerías libcaca, utilizadas para la conversión de gráficos en ASCII art coloreado. Esta librería incorpora varias herramientas como por ejemplo, cacaview, un visor de imágenes que permite zoom, variar gamma, antialias y otras opciones:

URL | Libcaca

Se pueden hacer cosas aún más potentes con esta librería, pero lo veremos más adelante. Si eres de Windows y buscas un explorador de archivos similar a los anteriores, puedes probar con Far Manager, incluido entre otros en el siguiente artículo:

URL | Alternativas al explorador de Windows

2. Gestor de ventanas en modo texto (multitarea)

Los exploradores de archivos son muy útiles, pero a veces se echa de menos el tener la flexibilidad que aportan los gestores de ventanas en los entornos gráficos. Si eres de los que abren varias terminales de texto o varias conexiones SSH al mismo equipo para hacer varias tareas a la vez, quizás sea porque no conoces tmux:

Puedes dividir la pantalla y trabajar moviéndote por las diferentes secciones.

URL | tmux (SourceForge)

El multiplexor tmux permite crear varias subterminales en la propia terminal, pudiendo cambiar entre ellas en cualquier momento. Sólo es necesario pulsar la combinación de teclas CTRL+B y luego la tecla de la acción a realizar, como por ejemplo % para dividir verticalmente, " para dividir horizontalmente o n y p para moverse entre pantallas.

De la misma forma, existen muchos otros programas similares que podrías probar, como por ejemplo dvtm (dynamic virtual terminal manager) o gnu screen con dtach. Además, estos gestores tienen una característica muy interesante: sobreviven a posibles desconexiones accidentales por SSH, pudiendo recuperarlas más tarde.

URL | 10 trucos y consejos para conexiones SSH vía Putty

3. Cliente de correo

Las operaciones de correo en un sistema GNU/Linux son todo un mundo a parte. Existen multitud de formas de configurar nuestro sistema para recibir o enviar emails, siendo uno de los usos más comunes el comando mail:

echo “Mensaje” | mail -s “Asunto” correo@gmail.com

Sin embargo, lo que más nos puede interesar a nivel de usuario, quizás, es una forma de revisar nuestro correo de Gmail con una interfaz cómoda y similar a lo que ya estamos acostumbrados.

Vmail es uno de esos programas. Se trata de un cliente de correo para Gmail desarrollado en Ruby y basado en el funcionamiento del editor Vim, convirtiéndolo en un sistema productivo para revisar nuestro correo.

URL | Vmail (GitHub)

[...]

Queda el 78% del artículo
Leer artículo completo

EOF (End of file)

1 2 3 4 5 6 7 ... 384 #