viernes, 27 de mayo de 2011

Servidor web ligero Cherokee, instalación e integración con PHP en Arch Linux

Cherokee web server
El servidor web Cherokee es uno de los servidores de nueva generación llamados ligeros que mejora notablemente el rendimiento ofrecido por el más usado Apache HTTPD soportando más usuarios concurrentes, aceptando más peticiones por segundo y consumiendo menos memoria. Quizá no tenga toda la versatilidad de un servidor Apache HTTPD pero para la mayoría de los escenarios es más que suficiente. En el siguiente artículo vamos a ver cuales son sus principales características y como instalarlo junto con PHP en la distribución Arch Linux. Otros servidores similares a Cherokee son nginx y lighttpd que quizá te interese también echarles un vistazo. Por supuesto cherokee es un servidor con licencia GNU GPL v2 y por tanto es software libre.

Comencemos poniendo algunas de las características que soporta: FastCGI, SCGI, PHP, CGI, SSI, TLS y conexiones cifradas SSL, host virtuales, autenticación, codificación al vuelo, balanceo de carga, archivos de log compatibles con apache, balanceador de base de datos, actualizaciones sin parada del servicio, proxy HTTP inverso y mucho más.

De todas las características que posee Cherokee destacaría las siguientes:

- Actualizaciones sin parada del servicio que puede ser muy importante para algunos servicios que no pueden permitirse dejar de dar servicio ningún segundo.
- Configuración a través de una consola de administración accesible con el navegador esto no se si es una ventaja o desventaja ya que no sigue la filosofía de los sistemas Unix de realizar la configuración mediante un archivo de texto para hacer una restauración de la configuración en caso de que la perdamos pero sin duda hace que la configuración se realice más comodamente y es algo que no tienen otros servidores por lo que he considerado importante destacarlo. También podemos editarlo directamente aunque realmente no estaremos interesados en ello a menos que seamos un usuario avanzado.
- Cherokee Market con el que podremos instalar ciertos servicios de forma muy cómoda y con poca configuración, como por ejemplo, instalar un servicio de Drupal, Wordpress, phpBB, phpMyAdmin, nuxeo, Liferay y algunos otros.
- Host virtuales SSL con esta característica podemos usar SSL en host virtuales ya que cherokee hace uso del método Server Name Indication (SNI) por el que en la negociación de la sesión TLS se envía el nombre del host que se quiere acceder. Esta era una imitación importante al usar SSL en servidores virtuales basados en nombres.

Si esta características no te parecen importantes quizá la del rendimiento por si sola te parezca suficiente para empezar a utilizar cherokee, consulta las pruebas de rendimiento (en el apartado referencia) para ver en que medida mejora Cherokee el rendimiento respesto a otros servidores. Pero sin duda lo mejor sería que lo comprobases por ti mismo. Una nueva caracteristica añadida recientemente y que afecta al rendimiento es la llamada Font-Line cache. Los desarrolladores de cherokee se han dado cuenta que es muy habitual utilizar junto al servidor web otro servidor dedicado a cachear ciertos resultados, como Squid, sin tener que generar de nuevo el mismo contenido para cada petición, esto por si solo aumenta el rendimiento notablemente y reduce la carga del sistema pero aún asi hay cierta latencia y comunicación entre el servidor web y el servidor de cache que podría ser evitada como ha demostrado cherokee. Para reducir esta latencia cherokee incorpora en si mismo un servidor de cache que puede reducir esta latencia hasta en un 80%.

En Arch Linux la instalación de Cherokee es muy sencilla basta con:

# pacman -S cherokee

y se nos instalará la última versión disponible. Para arrancarlo y pararlo deberemos hacer:

# /etc/rc.d/cherokee start
# /etc/rc.d/cherokee stop

Si queremos que se inicie al arrancar el sistema deberemos añadirlo al apartado DAEMONS del archivo /etc/rc.conf (Consulta la wiki de Arch Linux para más detalles sobre como administrar los servicios):

# nano /etc/rc.conf

DAEMONS=(syslog-ng network netfs crond cherokee)

Para arrancar la consola de administración deberemos ejecutar:

# cherokee-admin -b -u


El parmámetro -b hará que cherokee escuche en cualquier dirección IP y no solo en 127.0.0.1. Y el parámetro -u hará que no se solicite contraseña al acceder a la consola de administración por lo que es recomendable no usarlo en un sistema de producción. En la pantalla de inicio de la consola de administración podemos ver información básica de la carga del servidor en cuanto a procesador y memoria y veremos si tenemos instalada la última versión de cherokee.

La consola de administración está dividida en varios apartados: Inicio, Mercado, Estado, General, vServers, Orígenes y Avanzado. En el apartado Market podremos instalar los servicios disponibles pero para ello previamente deberemos tener una cuenta de cherokee market. En el apatado General podemos modificar algunas característica generales del servidor. En el apartado vServers podemos administrar los servidores virtuales e instalar nuevos servidores virtuales, con el botón + podremos añadir fácilmente el soporte para PHP. En Avanzado podemos modificar algunos datos importantes sobre el funcionamiento del servidor.








Veamos ahora a ver como instalar PHP en cherokee. Primeramente instalaremos PHP con:

# pacman -S php php-cgi


Si todo ha ido correctamte podremos ejecutar:

$ php -v
$ php-cgi -v

Ahora procederemos crear un servidor virtual con soporte para PHP, vamos al apartado vServer y pulsamos sobre el botón +, seleccionamos Lenguages y PHP. Tal vez necesitemos crear un directorio con mkdir /var/www. Continuamos con el asistente y finalmente nos aparece en la lista de servidores el que acabamos de crear.



Ya nos queda poco!... solo nos queda crear un archivo php de ejemplo que lo crearemos con nuestro editor favorito en el directorio /var/www si hemos indicado este directorio en el asistente.


Espero que a alguien le entren ganas de usar este servidor web, si es así estaré encantado de escuchar sus comentarios.

Referencia:
http://www.cherokee-project.com/doc/basics_why_cherokee.html
http://www.cherokee-project.com/benchmarks.html
http://www.cherokee-project.com/doc/other_goodies.html
http://www.cherokee-project.com/doc/other_graphs.html
http://www.cherokee-project.com/doc/cookbook_php.html

http://www.redes-linux.com/manuales/Servidor_web/ponencia_cherokee.pdf
http://en.wikipedia.org/wiki/Cherokee_(webserver)
http://www.youtube.com/watch?v=bIxFzOv3U1A

https://wiki.archlinux.org/index.php/Daemon

viernes, 20 de mayo de 2011

Guías de instalación Arch Linux actualizadas

 Arch Linux es una distribución rolling release y como tal en constante actualización de sus paquetes. Por ello los manuales o guías de instalación de Arch Linux pueden quedar desactaulizadas en alguna de sus secciones si no son actualizadas cada cierto tiempo. A la hora de instalarlo es recomendable además leer las guías de la propia wiki de Arch Linux ya que en ella la información suele estar actualizada.

Ya hacia un tiempo que no actualizaba las guías de instalación que tengo en mi blog y a pesar de que he ido modificándolas algunas imágenes se habían quedado obsoletas. Hoy les he dado un repaso más a fondo siendo estos los puntos que he modificado:
  • Como de grabar la imagen USB de instalación (dd o UNetbootin y desde Windows).
  • Particiones a crear en el disco durante la instalación base.
  • Instalar GRUB 2 durante el sistema base en una única partición Ext4.
  • Apartado actualizado sobre Gnome 3.
  • Añadidas algunas nuevos programas a la lista de los más comunes.
  • Actualización de las imágenes de las guías e incorporación en ellas de marcas de agua.
  • Y otras pequeñas modificaciones que he ido haciendo desde que las cree.
Las guías están disponibles en los siguientes enlaces:

Espero que sean útiles para alguien que pretenda instalar Arch Linux en una máquina virtual o directamente sobre el metal. ¡A disfrutarlas!

martes, 17 de mayo de 2011

Añadir marcas de agua a imágenes con ImageMagick

ImageMagick es una librería con un conjunto de utilidades que permiten manipular imágenes a través de la linea de comandos aunque también tiene librerías para usarlo desde los lenguajes de programación más conocidos (Java, .NET, Python, C, C++, PHP, ...) y tiene binarios para Windows, Linux y Mac. Mediante estas utilidades se pueden añadir marcas de agua a las imágenes entre otras muchas cosas, a decir verdad, prácticamente se puede hacer muchas de las cosas que una herramienta de retoque fotográfico puede pero a través de la linea de comandos o como decía desde alguno de los lenguajes para el que tenga «bindings» y con la posibilidad de automatizar el proceso. Las marcas de agua consisten en aplicar un patrón o estampado a una imagen, pueden ser muy visibles, pasar prácticamente desapercibidas o estar ocultas sirviendo para:

- Anotar sobre la imagen alguna información.
- Resaltar algún aspecto de la imagen.
- Añadir derechos de autor o logos como una forma de proteción anticopia.

Una buena marca de agua tiene que tener las siguientes características:

- La marca de agua debería ser visible (si la marca de agua no está oculta) independientemente de si la imagen es clara u oscura.
- Debería ser difícil de eliminar de la imagen.
- No debería ser muy molesta para los usuarios.

¿En que situación práctica querriamos añadir marcas de agua? Pues una de ellas es si tenéis un blog quizá en algún momento habéis pasado por la situación de que alguna página os ha copiado el contenido de alguna entrada, hay páginas que se dedican exclusivamente a actuar como directorios o como agregadores de contenido en los que a veces ni siguiera ponen un enlace a la fuente original. Por mucha licencia de uso que tengamos en nuestro blog el que nos copien el contenido no lo podemos evitar pero si podemos añadir marcas de agua a las imagenes para al menos que se identifique el origen de las mismas.

Con los siguientes comandos crearemos una marca de agua con un texto, repartido por toda la imagen o posicionado al sudeste de la imagen:

$ convert -size 700x370 xc:none -family Cantarell -fill white -colorize 40 -gravity NorthWest -draw "text 10,100 '(CC) BY-NC-SA http://elblogdepicodev.blogspot.com'" -gravity SouthEast -draw "text 10,100 '(CC) BY-NC-SA http://elblogdepicodev.blogspot.com'" watermark.png
$ composite -tile -dissolve 20 watermark.png imagen.jpg imagen-watermark.jpg
$ composite -gravity SouthEast -dissolve 20 watermark.png imagen.jpg imagen-watermark.jpg

Con el primer comando creamos la imagen de marca de agua con un texto pero también la podemos crear con alguna otra herramienta como Gimp, al final la marca de agua es una imagen y la podemos obtener por cualquier medio no hace falta que la generemos con ImageMagick. En el segundo aplicamos la marca de agua en forma de embaldosamiento a toda la imagen en la que la queremos incluir. En el tercero aplicamos la marca de agua en el sudeste de la imagen.

Si estamos añadiendo la misma marca de agua a muchas imágenes necesitaremos automatizar el proceso para que las marcas de agua se apliquen de la misma forma y queden todas igual, también para tardar prácticamente nada de tiempo en hacerlo comparado con una herramienta de retoque fotográfico evitando además un proceso que es aburrido, repetitivo y manual. En Linux lo podemos hacer de la siguiente forma que busca todas las imágenes que su nombre cumpla el patrón imagen*.png y ejecuta el comando composite para cada una de ellas:

find . -name "imagen*.png" -type f -exec composite -gravity SouthEast -dissolve 20 watermark.png {} {} \;

La cantidad de posibilidades que ofrecen estas herramientas de ImageMagick a través de sus numerosos parámetros y opciones puede llegar a ser abrumadora por lo que es recomendable encontrar algún ejemplo con lo que necesitemos hacer o partir de algo similar al resultado final que queramos.

En el siguiente ejemplo puedes ver el resultado de aplicar una marca de agua a una imagen posicionándola en el sudeste de la imagen original usando el último comando composite de los ejemplos.

+
+
Image Magick
=
 

Otro asunto relacionado con automatizar tareas con ImageMagick es cambiar el formato, tamaño o realizar escalado de forma masiva a muchas imágenes.

Referencia:
ImageMagick
ImageMagick Watermarking
Convertir imágenes entre formatos y cambiar tamaño con ImageMagick

viernes, 6 de mayo de 2011

El impuesto Windows

Desde hace ya un tiempo estoy en buscando comprar un portátil (PC, no Mac). ¿Pero os habéis fijado? Todos vienen con Windows, incluso los menos potentes y baratos netbooks, donde probablemente el coste de la licencia Windows a pesar de ser más barata que la retail supondrá un importante porcentaje del coste total del equipo. Por desgracía en las marcas más conocidas (Sony, HP, Dell, Acer, ...) no he encontrado ningún modelo con alguna distribución GNU/Linux o al menos sin sistema operativo. Hay alguna marca de portátiles menos conocida como Ahtec que si ofrece esta posibilidad pero he leido algunas opiniones no muy buenas de su soporte.

Si hace ya un tiempo la comisión Europea obligó a Microsoft a no incluir su Internet Explorer en su sistema operativo para no abusar de posición dominante y a incluir la ballot screen para que los usuarios pudiesen elegir su navegador. ¿Por qué no hace algo parecido pero con el sistema operativo de los portátiles? ¿Por qué el consumidor prácticamente no puede comprar un equipo sin sistema operativo? ¿Por qué si no es justo imponer un canon indiscriminado a todos los medios de almacenamiento y dispositivos electrónicos se nos impone un "Impuesto Windows" en los portátiles a todos los usuarios aunque no seamos usuarios de ese sistema operativo y lo primero que hacemos es eliminarlo del disco duro? ¿Por qué ese impuesto se ha de pagar por cada equipo que se compra? ¿Si ya tengo una licencia porque tengo que comprar otra nueva OEM?


No veo impedimento para los fabricantes ya que ya ahora permiten personalizar ampliamente la configuración de los equipo en procesador, memoria, tarjeta gráfica, pantalla, etc... incluso en software. Y creo que hacen mal ya que los usuarios de GNU/linux les compraríamos muy probablemente a ellos aunque no seamos muchos en proporción al total de usuarios si son listos se darían cuenta de que por lo general somos usuarios con una media de conocimientos más elevados que la media de los usuarios, y como sabéis y pasa habitualmente, muchos de nuestros conocidos con menos conocimientos nos piden consejo al comprar su portátil y tenemos un gran peso en la decisión final de ellos. Por lo que quizá ya no seríamos tan pocos como pudiese parecer en un primer momento, no mayoría pero si unos cuantos más si multiplicamos a cada uno de nosotros por todas las personas que conocemos, nos piden consejo y decidiesen comprarlo sin la licencia de Windows si supiesen que son X€ más baratos (donde X = ¿20, 40, 70?).

Seguro que alguno sacaría el tema de la piratería y diría si eso fuera posible, seguro que se instalaría copias ilegales. ¿Pero realmente son capaces de hacer un sistema operativo y no son capaces de diseñar un sistema que lo evitase si realmente quisieran? Pero el problema es que no quieren prefieren antes que se copie ilegalmente a perder usuarios en favor de otras alternativas con riesgo de perder su posición dominante.

Los equipos con Chrome OS llegarán dentro de poco y habrá una opción más al menos pero los equipos con ese sistema operativo no se pueden comparar en igualdad de condiciones con Windows o una distribución GNU/Linux.

De las discusiones que estoy teniendo en algún foro ([1] y [2]) todavía nadie me ha dicho un motivo realmente importante de por que esto es así, y me parece que esta es una de esas situaciones injustas que como esta amplicamente extendida pocas personas se la plantean y simplemente la aceptan quizá sin ser conscientes realmente de ser victimas de los designios que en este caso ha decidido una empresa por ellos. Con todo lo que ha llovido desde [3] y [4] y todavía parece que en este país no se ha avanzado nada. Aunque quizá no este todo perdido, hay alguna sentencia favorable [5] (leer la parte QUE FINALMENTE) a los consumidores pero de difícil realidad ya que cuando se pregunta a un comercial de esos conocidos fabricantes la primera respuesta que dan es no y el hecho de que para reclamar esa cantidad signifique poner una denuncia o ir a juicio desanima a la mayoría de los consumidores y opta por lo fácil, pagar. La gente dice que con DELL es posible la devolución, yo he preguntado en Sony y me han dicho que no.

Artículos relacionados:
De Windows a Arch Linux
Como sería si Microsoft, Apple y Linux

Referencia:
[1] http://foro.noticias3d.com/vbulletin/showthread.php?t=362375
[2] http://www.archlinux-es.org/foros/viewtopic.php?f=12&t=4393
[3] http://www.elmundo.es/navegante/2007/05/26/tecnologia/1180175185.html
[4] http://devolucion.org/forum/t-113558/publico:condenado-por-no-querer-windows-en-su-ordenador
[5] https://sites.google.com/site/sentenciaimportante/sentencia

http://devolucion.org/
Impuesto Windows en Google 
http://www.muylinux.com/2011/01/25/demanda-judicial-colectiva-contra-microsoft-por-el-impuesto-windows/

Portátiles sin Windows Ahtec

viernes, 29 de abril de 2011

Obtener información del sistema en Linux (con inxi, lspci y hwinfo)

Inxi es una pequeña utilidad que nos permite conocer cierta información básica de nuestro equipo como que procesador tenemos, que características posee, cuales son las particiones del disco, la tarjeta gráfica, distribución gnu/linux que tenemos y con que versión de kernel, versión del servidor gráfico, tarjeta de red y cantidad de memoria total y usada entre otra información. A veces conocer esta información es muy útil y en muchos casos cuando pedimos ayuda en un foro no está demás dar esta información básica de nuestro equipo para que nos puedan ayudar mejor a encontrar una solución al problema por el que preguntamos por si el mismo se debe a algún componente de nuestro equipo, del kernel o la versión del servidor gráfico.

Su uso es muy sencillo, basta con el siguiente comando para obtener la información que se muestra en la captura de pantalla:

$ inxi -Fpur


En la captura de pantalla se puede ver la información recopilada por inxi de una instalación de la distribución Arch Linux instalada en una máquina virtual de VirtualBox. En la página del manual de la herramienta (man inxi) podemos ver la lista completa de los parámetros y que hace cada una de ellos. Con el parámetro -c podemos modificar el esquema de colores que utiliza la herramienta en la salida.

$ inxi -Fpur -c 7


Para instalar esta herramienta en Arch Linux basta con que instalemos el paquete inxi. Para otras distribuciones bastará con instalar el paquete de inxi utilizando el gestor de paquetes de la distribución.

# pacman -S inxi

Otro comando útil es lpci que permite obtener información detallada de los buses pci de de los dispositivos del sistema.

$ lspci


Para terminar otro comando muy útil es hwinfo, este da una información muy detallada de todos los elementos del sistema. Algunos ejemplos de uso son:

$ hwinfo
$ hwinfo > "Información hwinfo.txt"
$ hwinfo --framebuffer

Para instalarlo en Arch Linux:

# pacman -S hwinfo


Referencia:
Página web inxi
Comando lspci

viernes, 15 de abril de 2011

¡Hola Planeta Linux!


Planeta Linux
Esta es mi primera entrada para Planeta Linux y también será mi presentación en esta comunidad de bloggers de la que estoy muy contento de formar parte. Los motivos para unirme a Planeta Linux es poder llegar a más lectores, usuarios de GNU/Linux y del software libre y aumentar las visitas diárias y comentarios que recibo en el blog (aunque son más de las que pensaba recibir cuando empecé el blog), en cualquier caso lo hago realmente a gusto por sentir que quizá lo que escribo a alguien le ayude tal y como lo que otros escribieron me ayudó a mi.

Para los usuarios de GNU/Linux que han hecho la migración hace poco o tienen interés en el software libre recibir en su lector de feeds preferido es una buena forma de estar informado y aprender cosas nuevas sobre todo lo que le rodea a este sistema operativo.

La temática de mi blog es GNU/Linux y más concretamente la distribución que uso habitualmente a día de hoy, Arch Linux, cosas relacionadas con el software libre y programación principalmente en Java. Ya tiene un poco más de una año y quedáis invitados a visitar algunas de las entradas que he escrito hasta el momento, entre ellas:

Guía Instalación Arch Linux (Parte I, instalación base)
Guía Instalación Arch Linux (Parte II, entorno gráfico y programas)
Guía Instalación Arch Linux (Parte III, personalización)

De Windows a Arch Linux
Arch Linux cheat cube
Instalar Plymouth como arranque gráfico en Arch Linux
Juegos para GNU/Linux
Cambiar el prompt de la terminal bash
El sistema operativo Minix
Guía instalación Minix

Hola mundo con Apache Tapestry 5
Dcomentación sobre Apache Tapestry
Lenguajes de scripting sobre la plataforma Java

viernes, 8 de abril de 2011

Publicado GNOME 3

GNOME
Esta vez sí y cumpliendo con el calendario previsto el día 6 de abril fue publicada la versión 3 de gnome. Después de 9 años (la versión 2 fue lanzada en junio de 2002) gnome se actualiza con una revisión mayor del proyecto. Al ser una revisión mayor, esta nueva versión incorpora muchas novedades de las que parte están comentadas en las notas de lanzamiento no solo de cara a los usuarios del entorno de escritorio sino también para los desarrolladores sobre este entorno.

La evolución para los usuarios de este entorno de escritorio puede verse en las siguientes imágenes que van desde el hoy vetusto gnome 1 hasta la nueva versión de gnome 3.

GNOME 1.xGNOME 2.6

GNOME 2.30GNOME 3.0

Ya han sido publicados varios artículos revisando las principales novedades de gnome que puedes consultar en el aparatado referencia al final de esta entrada. Yo me limitaré a añadir algo que no ha sido tan comentado y es que gnome es algo más que el entorno de escritorio, como la nueva infraestructura para el desarrollo y que sin duda permitirá a los desarrolladores realizar mejores aplicaciones y más fácilmente. En el siguiente vista de la plataforma puede verse los principales componentes sobre los que se basarán las aplicaciones de gnome.


Llendo al centro para desarrolladores y pulsando sobre cada uno de los componentes podemos ver que hace cada uno de ellos y encontrar ejemplos y documentación de referencia. Brevemente comentaré:

Interfaz de usuario:
- GTK+: Propociona los controles (botones, menús, radios, checkboxes, campos de entrada, ...) para construir las interfaces de las aplicaciones, distribuir los componentes en las ventanas. Tiene una API orientada a objetos.
- Cairo: proporciona la funcionalidad para trabajar con gráficos vectoriales en dos dimensiones (2D) y antialias. Si GTK+ no proporiona la funcionalidad necesaria se puede hacer uso de esta librería para hacer el dibujado.
- Clutter: es una librería para construir interfaces dinámicas basándose en OpenGL para hacer el dibujado.
- ATK: hace que los componentes sean accesibles a personas con alguna discapacidad tales como visuales, de coordinación, movimientos descoordinados, impedimentos auditivos, impedimentos cognitivos y del lenguaje y desordenes de apoplejías.
- Pango: gestiona el texto y las tipografías y es usado por GTK+.
- Webkit: es el motor para el tratamiento de HTML.

Núcleo:
- GIO: proporciona una abtracción para el acceso a flujos de información ya sea de archivos en local o a través de la red.
- Glib: es una biblioteca con utilidades para el desarrollo de aplicaciones en gnome.
- GObject: proporciona soporte para varios lenguajes de programción a través de bindings que permite interoperabilidad entre diferentes lenguajes.

Existe toda otra infraestructura para otras áreas como multimedia (GStreamer, Canberra, Pulseaudio), comunicación (Telepathy, Avahi, GUPnP), almacenamiento de datos (EDS, GDA, Tracker), utilidades (Champlain, Enchant, Poppler, GeoClue), integración del sistema (upower, udisks, policykit) e integración de escritorio (packagekit, libnotify, seahorse).

En definitiva un gran paso tanto para usuarios y desarrolladores y del que veremos sus frutos en los siguientes meses y versiones.

Por supuesto, los usuarios de Arch Linux seremos unos de los primeros en disfrutar de esta nueva versión de gnome, a día de hoy los paquetes ya se encuentran en el repositorio testing y no pasará mucho tiempo hasta que se muevan al repositorio extra. Pero si no quieres esperar puedes descargarte alguna de las imágenes vivas listas para probarlo.

Ahora toca decidir y evaluar a los usuarios si este actualizado entorno de escritorio cumple sus expectativas. Seguramente se echarán en falta cosas y otras se querrá que se cambien como es habitual en un cambio tan profundo de la plataforma, simplemente tener en cuenta que esta es la primera versión de la rama 3 y a medida que se vayan liberando revisiones menores el proyecto ganará en caraterísticas y funcionalidades como es habitual en el desarrollo del software.

La versión 3.2 está planeada para semtiembre/octubre de 2011. Al final de las notas de publicación puedes ver algunas de las novedades que incorporará.

A todos los que ha hecho posible esta versión de GNOME... ¡Gracias! y mientras tanto... ¡a disfrutar de esta excelente plataforma!
I am GNOME
Referencia:
http://library.gnome.org/misc/release-notes/3.0/
http://www.gnome.org/gnome-3/
http://www.genbeta.com/a-fondo/gnome-3-a-fondo
http://arstechnica.com/open-source/reviews/2011/04/ars-reviews-gnome-30-a-shiny-new-ornament-for-your-linux-lawn.ars
https://live.gnome.org/GnomeShell/CheatSheet
http://www.archlinux.org/news/gnome3-in-testing/
http://gnome3.org/tryit.html
http://en.wikipedia.org/wiki/GNOME
https://wiki.archlinux.org/index.php/GNOME_3

Para desarrolladores:
http://developer.gnome.org/
http://developer.gnome.org/platform-overview/stable/
https://live.gnome.org/GnomeLove
https://live.gnome.org/GnomeLove/HowToStart%20Es