martes, 25 de diciembre de 2012

Foro

En la entrada anterior ya introduje la siguiente tarea que íbamos a llevar a cabo, detallando algunos de los elementos que iban a intervenir como son Javascript avanzado, uso de Ajax, BBDD alojadas en la nube y JSON. Todos ellos han contribuido a la creación de un foro para la web, lo que ha constituido la parte más complicada, y que no habría sido posible llevar a cabo sin la ayuda de Carlos, el profesor de la asignatura en la que se enmarca todo este proyecto. Pero dejémonos de charla y pongámonos manos a la obra. A continuación os voy a explicar paso a paso como se ha creado el foro:

En primer lugar, necesitamos capacidad de almacenamiento para poder guardar los comentarios que los usuarios escribirán en nuestra web. Para ello hemos utilizado MongoLab. Esta empresa proporciona un servicio de base de datos alojada en la nube, la cual puede ser fácilmente gestionada desde la propia interfaz online de la que disponen. Además, contamos con una opción gratuita en la que nos dan 500 MB de memoria, lo que es más que suficiente para nosotros. Por tanto, nos registramos y tras poder configurar diversas opciones (podemos incluso hasta elegir qué empresa nos proporcionará el servicio en la nube) , nos creamos la base de datos y, a continuación, nuestra primera colección. Si continuamos leyendo, podremos leer que el servicio de MongoLab es compatible con el modelo RESTful, ¿pero qué es eso? Así es como se denominan los servicios web que emplean el protocolo HTTP y se basan en los principios REST (se trata de un tipo de arquitectura software en sistemas distribuidos como la web, que se basa en la división entre clientes y servidores y en la interacción entre ellos por medio del intercambio de peticiones y datos). Pues bien, lo vamos a emplear y para ello, entramos en la opción API y copiamos la url que nos permitirá conectar con la base de datos. Ya tenemos la parte del almacenamiento lista.

Página de bienvenida de MongoLab

Lo siguiente es crear un sencillo formulario que permitirá a los usuarios enviar los comentarios a la página. El mío es uno simple, creado aprovechando las ventajas de HTML5, y con cuatro campos: usuario, url de la foto, asunto y comentario. Los hay de tipo text y textarea en función de la cantidad de texto a introducir y además son 'required', es decir, no se puede enviar el formulario hasta rellenarlo todo. Además está configurado (atributo value) para que en el campo url de la foto aparezca por defecto una url escrita, aunque siempre se puede cambiar. Por tanto, cada comentario estará estructurado de la siguiente manera: el nombre del usuario, una url a una foto que esté alojada en internet, el asunto del comentario y el propio comentario en sí.

Así luce el formulario

La siguiente decisión a tomar es en qué formato se van a enviar los datos. En mi caso, y siguiendo la línea de lo visto en clase, me he decantado por JSON. Se trata de un formato ligero para el intercambio de datos, los cuales están estructurados en atributo y valor. Por ejemplo, un  posible atributo sería el nombre de un usuario y un posible valor, Moisés. Entonces, ¿qué viene a continuación? Debemos conseguir enviar los datos a la BBDD y que estos queden correctamente almacenados en ella. Para ello se va a hacer uso de Javascript y la tecnología Ajax. Ajax (Javascript asíncrono y XML) se trata de una tecnología implementada en Javascript que permite interactuar con el servidor de forma asíncrona, sin que el cliente aprecie cambio alguno en la web. Aunque en principio estaba diseñado para emplear XML, soporta otros tipos de datos, incluyendo JSON. Por tanto nuestro código deberá emplear dicha función. Vamos a verlo:

$("form").submit(function(){
           $.ajax( { url: urlMongo,
               data: JSON.stringify({"usuario" : $('#usuario').val(),
                                                   "asunto" : $('#asunto').val(),
                                                   "foto" : $('#foto').val(),
                                                   "comentario" : $('#comentario').val()}),
               type: "POST",
               contentType: "application/json" }  
 

Al hacer clic en el botón de enviar del formulario, ejecutamos ajax y le introducimos los siguientes parámetros:
  • La url de la BBDD a la que vamos a conectar.
  • Los datos, en este caso un JSON que se crea dinámicamente introduciendo en cada atributo, el valor que el usuario haya introducido en cada campo del formulario (cada uno identificado con su 'id' correspondiente en el HTML).
  • El tipo de interacción que se va a producir, en este caso un 'POST', es decir, la introducción de datos en la BBDD.
  • Por último, el formato del contenido que como ya sabemos es JSON.
Podemos observar que para extraer cada valor de los campos del formulario, aplicamos $('#id_del_campo').val(), que lo que hace es obtener el valor introducido en el campo identificado con ese 'id'. Tras todo esto, enviaríamos nuestro mensaje y éste sería almacenado. De hecho hagámoslo y veamos el resultado:

Interfaz online de MongoLab
Como se puede observar, nuestro comentario ha sido correctamente almacenado y estructurado de la forma que habíamos definido. Sin embargo, esto es sólo la mitad del trabajo. Ahora queda recuperar los datos de la BBDD y plasmarlos en la web para que puedan ser visualizados por todos. De nuevo, hay que echar mano de Javascript. En este caso, hay que tomar los datos e introducirlos en el HTML y es aquí donde está el problema ya que tenemos que modificar el DOM (la estructura del HTML) de forma dinámica. Veamos el código:

function cargaJSON(mijson){
    console.log('Usando ' + mijson);
    $.getJSON(mijson, function(data) {
        $('#comentarios').empty();
        if (data.length < 1) {
            $('#comentarios').append('<p>No hay comentarios en este momento.</p>');
        } else {
            var html = '<ul>';
            $.each(data, function(index, val){   
                html += '<li>' + "#" + (index+1);
                html += '<ul>';
                html += '<li class= "foto"><img  height="100" width="100" src="'+ val['foto'] +'"></li>';
                html += '<li class="usuario">' + 'Usuario:' + ' ' + val['usuario'] + '</li>';
                html += '<li class="usuario">' + 'Asunto:' + ' ' + val['asunto'] + '</li>';
                html += '<li class="comentario"><p>' + 'Comentario:' + ' ' + val['comentario'] + '</p></li>';
                html += '</ul>';
            });
            html += '</ul>';
            $('#productos').append(html);
        };

}

Una vez recuperados los datos, se comprueba si hay comentarios en la BBDD con la condición de que su extensión no sea nula (data.length<1). De serlo, al div con id 'comentarios' que va a ser en el que se van a cargar los comentarios, se le añade un párrafo en el que se diga que no hay comentarios. Acabamos de modificar el HTML dinámicamente y esto se verá reflejado en cómo se muestra la web al usuario. En el caso de que los datos no sean nulos, creamos una variable String llamada 'html' en la que para cada comentario ( $.each(data, function(index, val) vamos a ir introduciendo el código html en esa variable. Sin embargo vemos que lo primero que se introduce es '<ul>' y no está dentro del each. ¿Por qué? Lo que queremos es que el conjunto de los comentarios conformen una lista no ordenada, pero no que para cada comentario se cree una lista. Por tanto cada comentario se considera como un elemento (<li>) de esa lista, cuyo contenido sí que va a variar uno de otro y por eso va dentro del each. De esta manera, cada comentario constará de su propia estructura y para poder introducir los datos de la BBDD en el HTML utilizamos val['nombre del atributo']. Así por ejemplo, para poder mostrar la imagen con la url que introducimos en el formulario hacemos lo siguiente:

html += '<li class= "foto"><img  height="100" width="100" src="'+ val['foto'] +'"></li>';

En el atributo 'src' de la etiqueta <img> que hemos introducido, se coloca el valor del atributo 'foto' y de esta manera se podrá visualizar correctamente.

Si a todo esto le añadimos un poco de CSS, éste el resultado final que podrán ver los usuarios:

Por fin, podemos ver nuestro comentario
Como hemos visto, no sin esfuerzo hemos conseguido implementar un servicio de comentarios en nuestra web utilizando las mismas tecnologías que emplean las grandes empresas del sector. Como siempre, quedan detalles por pulir tanto en el estilo como en el propio sistema de comentarios pero las funcionalidades principales se comportan razonablemente bien. Para acabar, sólo decir que espero que os haya parecido interesante y que hayáis aprendido tanto como lo he hecho yo o más.

Edito: Tras varias pruebas, me he dado cuenta de que el campo 'URL Foto' del formulario puede resultar algo confuso. Por ello, he añadido un pequeño icono con el que al posicionar el ratón sobre él, se nos muestra un breve texto de ayuda (atributo 'title').

Aquí podemos ver el 'tip' desplegado


sábado, 22 de diciembre de 2012

Next Stage

Un mes hace ya desde que publiqué la primera versión de la web y al final de la entrada del blog en la que detallaba todo lo incluido en ella, dije que quedaban muchas mejoras por introducir y algunas cosas en el tintero. Pues bien, no hay que dormirse en los laureles y por ello esta entrada va a servir para mostrar todas las novedades incorporadas de cara a la versión final de la web.

Para empezar, una de las cosas en las que quería profundizar son los diversos plugins realizados en Javascript que rondan por internet, tremendamente recomendables ya que nos permiten realizar grandes mejoras a nuestro proyecto con poca cantidad de esfuerzo. Por ejemplo, tenía ganas de añadir una galería de fotos donde poder poner imágenes de los últimos trailers o gameplays del momento; por ello me decidí a usar la galería que incorporaba la plantilla sobre la que empecé a construir la web y que encontré en OS Templates. Se trata de una galería enteramente implementada en Javascript y de aspecto sencillo pero que cubre las necesidades básicas que se le podrían exigir. Todas las imágenes se disponen en tamaño pequeño mostrando una miniatura que puede ser modificada a nuestro gusto. Una vez clicamos sobre ellas, podemos visualizar las imágenes a tamaño real y además, disponemos de unos cómodos controles de navegación así como de la opción de añadir texto al pie de la foto para poder dar una idea de la temática. Os enlazo una captura para que veáis como luce:

Aquí vemos la galería en uso

Ahora las siguientes líneas las voy a dedicar a detallar una de las novedades que más ganas tenía de llevar a cabo, la versión móvil de la web. Para materializarla he utilizado principalmente jQuery Mobile, un framework de jQuery adaptado a HTML 5 y a las distintas plataformas móviles del mercado. Con su uso podemos crear web's móviles profesionales en cuestión de horas y todo se debe a su facilidad de uso. De hecho, en su página disponemos de un par de aplicaciones online que nos permiten crear nuestros propios temas o probar los distintos elementos específicos de los que se dispone. Sin embargo, no debemos confundirnos y pensar que la creación de web's móviles es compleja o muy diferente de lo que hemos venido haciendo hasta ahora y es que salvando pequeños detalles, los conocimientos a emplear son prácticamente los mismos que en la creación de web's tradicionales. Os muestro un par de imágenes para que veáis como ha quedado el resultado final:

Sección de contacto
Página de bienvenida de la versión móvil

Además, otra de las funcionalidades que quería incluir era la misma con la que cuentan muchos portales web conocidos en los que al entrar en su página desde el móvil, te redireccionan directamente a la versión específica para este dispositivo. Para ello he empleado un sencillo código Javascript que os muestro a continuación:

var navegador = navigator.userAgent.toLowerCase();
if(navegador.search(/iphone|ipod|android/) > -1 ){
   document.location = 'http://www.minsertcoinews.webcindario.com';
}


Primero, creamos una variable de tipo String (como podéis ver, aunque no ponemos específicamente que se trata de una String, Javascript lo asigna automáticamente al tratarse de un lenguaje débilmente tipado) en la que introducimos el resultado de la función 'userAgent' aplicada al navegador que accede a la página. Con esta función obtenemos información acerca de qué navegador accede, su versión específica... A continuación, a la String anterior que hemos llamado 'navegador', le aplicamos la función 'search' para que el programa busque entre los caracteres alguna de las palabras que están entre paréntesis. De producirse alguna coincidencia, redirigimos al usuario a la versión móvil de la web. Por tanto, con un corto y sencillo código, podemos añadir una funcionalidad que le da facilidad de acceso y profesionalidad a nuestra web.

Como habéis podido ver, se han producido importantes mejoras en la web pero lo mejor de todo es que aún queda alguna importante. Para la siguiente entrada tengo preparado algo relacionado con JSON, Javascript avanzado, Ajax y BBDD en la nube.

P.D: Para visualizar la web móvil os recomiendo que lo hagáis desde vuestro móvil con sistema operativo iOS o Android entrando en la dirección de siempre de Insert Coin News. Aún así, podéis también acceder directamente a la versión móvil desde vuestro smartphone o PC. Por el momento sólo están disponibles las secciones 'Opina' y 'Contáctanos' pero poco a poco se irá añadiendo más contenido.

jueves, 15 de noviembre de 2012

Paletas de colores

Como ya comenté en la entrada anterior, la gama de colores utilizada en una web es clave en el estilo de la misma. Por ello vamos a hablar un poco de cómo elegir la paleta para nuestra página y quede bien. Un buen punto de partida es el logo. En nuestro caso, ya tenemos uno que es el siguiente:

Logo

Una forma recomendable de elegir los colores de la web es a partir de los que aparecen en el logo, ya que como dijimos, éste es el que dota de personalidad y estilo al conjunto. Una buena herramienta para esto es Kuler. La página está especializada en todo tipo de temas relacionados con paletas y gamas de colores. Dispone de una herramienta con la que podemos subir una imagen y nos hace un análisis de los colores utilizados en la misma, sugiriéndos una paleta de colores acorde. Aplicándolo al logo, éste es el resultado:

El resultado que nos muestra Kuler

Además del uso de esta herramienta, es conveniente que a la hora de elegir los colores, tengamos en cuenta algunos de los principios relacionados con la psicología del color. Cada color por separado tiene una serie de sensaciones e ideas asociados y en función de los patrones que utilicemos a la hora de combinarlos, pueden provocarnos diferentes reacciones.

En nuestro caso concreto, los colores básicos de la web son el blanco, el negro y el naranja. Blanco y negro son colores complementarios por lo que uno destaca en presencia del otro a la vez que dotan a la web de un aspecto bastante zen. El naranja lo hemos empleado principalmente para lo que son los elementos relacionados con la navegación (menú principal y enlaces). De esta manera, ya tenemos la base sobre la que vamos a colorear la web, el resto es tener algo de gusto a la hora de combinarlos.

lunes, 12 de noviembre de 2012

Primera versión de la web

Tras varios retrasos y exámenes de por medio, ya tenemos lista una primera versión de la web. A continuación voy a detallar un poco los rasgos y pasos más importantes del proceso de creación de esta primera versión:

En primer lugar, empezar un proyecto web desde cero es bastante complicado y si encima sólo llevas poco más de un mes en ello, aún más. Sin embargo, comenzar con una base ya hecha y a partir de ahí, emplear nuestros conocimientos en aquellas cosas que nos apetezca cambiar o añadir parece mucho más factible. Por ello lo primero es buscarse una buena plantilla. En mi caso la he sacado de OS Templates, en concreto, la que se llama 'Academic Education'. A continuación os enlazo una captura:

La plantilla empleada como base

Es importante elegir una plantilla que aunque vayas a variar, encaje más o menos en la estructura que tienes pensada para la web. En mi caso, tanto el menú horizontal, como el slideshow y la estructura que sigue el div principal a la hora de presentar los contenidos me venían bastante bien.

Ya tenemos la base, nos queda construir nuestra web sobre ella. Por ejemplo, ¿por qué no usar lo que sabemos de Pixlr y hacernos un buen logo para la web? El logo es una de las partes mas importantes de la página ya que es lo que la dota de personalidad y estilo propio. A continuación os muestro el logo:

Logo

Ya que nuestra página va a ser de videojuegos, homenajear en nuestro logo a un clásico como lo es Space Invaders parece apropiado. A continuación elegí las tonalidades de colores que iba a usar la web. El estilo empleado en el blog me gustó tanto que me decidí a usar los mismos colores (negro,blanco y naranja) y el mismo fondo algo modificado (también utilizando Pixlr).

A continuación me puse con la barra de navegación. La que traía la plantilla no tenía menús desplegables por lo que me decidí a buscar una por mi cuenta y ajustarla a las necesidades de la web. Buscando por Google encontraréis un buen número de menús de todos los tipos. En mi caso elegí uno hecho enteramente en CSS3 y tras modificar un poco los colores, las transiciones, la propiedad z-index para que los menú desplegables se puedan solapar con el slideshow y algún detalle más, éste es el resultado:

Aquí vemos el menú desplegable en acción

El slideshow no lo he tocado demasiado, le he quitado el fondo blanco del div que lo contiene y añadido algunos bordes redondeados. Por otra parte, está el contenido principal de la web. Al div principal le he cambiado su color así como su opacidad. He añadido un vídeo de Youtube usando el código que ellos mismos te suministran y recolocado un poco la disposición de los contenidos. Hay que mencionar que aparte, he cambiado tanto el color del texto, como de los enlaces como la propia tipografía. La tipografía es una de las piezas clave de la web. Yo me he decantado por una sencilla pero de aspecto moderno. Podéis encontrar tipografías web gratis en: Font Squirrel

Por último, en lo referido a la estructura de la web principal, nos queda el pie, que al contrario de la tendencia actual, es tan solo una línea de texto con un enlace al blog aunque esto puede cambiar en futuras versiones.

Dentro del div principal al final, destacan dos botones que constituyen el conmutador de estilos de la web. Para comprobar el poder de personalización y edición de CSS, ¿por qué no hacer un sólo html y crear dos archivos css diferentes intentando que parezca que hemos creado dos páginas distintas? Haciendo buen uso de CSS esto es posible. Utilizando el conmutador de la web vemos como cambian la tipografía, la gama de colores en general, el menú horizontal se sustutiye por uno vertical que va bajando a medida que hacemos scroll (propiedad position static de CSS) y algún detalle más. Quedan por pulir cosas de este segundo estilo pero sirve como muestra para ver de lo que CSS es capaz. Además para implementar este conmutador se ha hecho uso de Javascript.

Donde también he usado Javascript, ha sido a la hora de cargar las distintas secciones de la web. Por el momento y a modo de ejemplo, sólo funcionan las secciones de Noticias y Sugerencias. Para cargar las secciones he empleado la función load de Javascript que nos permite cargar ''trozos'' de html en partes concretas de la web sin tener que recargar ésta al completo. El código usado para esto aún está un poco verde y hay que retocarlo para que sea algo más corto pero esto lo dejo para la próxima versión. Aún así os lo cuelgo para que veais lo sencillo que es implementar esta función:

$(document).ready(function() {
    $('#sugerencias').click(function() {
        $('#container').load('sugerencias.html');
    });
});


Se trata de una función que al pulsar (evento click) sobre el elemento (en nuestro caso un enlace) con el id #sugerencias , carga en el div identificado con el id #container el archivo html sugerencias. Los html cargados con load no deben tener etiquetas de head o body ya que estas se heredan del archivo html principal, sólo deben contener aquello que deseemos mostrar. Si además queremos usar javascript dentro de un html cargado con load deberemos usar plugins como livequery ya que si no, no nos funcionará. Esto último es una de las tareas principales de la próxima entrega.

Aparte, en la sección de sugerencias he incluido un formulario de GoogleDocs usando un iframe. Es una forma muy sencilla y rápida de implentar un servicio de encuesta sin tener una estructura robusta en el lado servidor.

En general, he resumido las carácterísticas más importantes de la web. Me dejo algunas cosas en el tintero pero lo mejor es que le echéis un vistazo vosotros mismos. He aquí la primera versión de Insert Coin News

Aún quedan muchos flecos sueltos y algunos detalles que arreglar (sobre todo en el segundo estilo) pero he añadido la mayoría de las cosas que tenía en mente para esta primera versión. Para las siguientes tengo varias cosas pensadas: mayor uso de Javascript, meter las imágenes en el CSS, uso de JSON, la versión móvil de la web...

Edito: Hasta el día de la entrega no había podido validar el html de la web. Ahora que ya he tenido un poco más de tiempo, he arreglado un par de detalles y al final me he decidido por usar HTML 5 ya que me puede resultar útil a la hora de implementar algunos aspectos nuevos de la página. Además he añadido un botón de validación del HTML del W3C en el pie de la página. Aunque no han creado uno oficial para HTML 5, he tardado un par de minutos en hacerme yo uno sencillito.


martes, 16 de octubre de 2012

Fotomontajes con Pixlr

Esta entrada va a servir a modo de pequeño tutorial acerca de cómo utilizar Pixlr. Vamos a utilizar este programa de retoque fotográfico online para crear un fotomontaje en el que apareceré junto con  Mario Bros, el famoso personaje de videojuegos, en la puerta de la ETSIT (la escuela de teleco donde estudio). Para ello partimos de las siguientes fotos:





La primera foto es de la escuela, en la segunda salgo yo y en la última, Mario Bros.

Éste soy yo
  • Abro la foto en la que salgo yo, hago un poco de zoom y selecciono la parte que me interesa con el lazo para así deshacerme del resto de la foto. Después con la goma borro poco a poco los bordes sobrantes y finalmente aplico la opción "crop" para redimensionar el tamaño de la imagen. Opcionalmente puedo aplicar un filtro de desenfocado para disimular los pequeños bordes dentados restantes. 
 A continuación el resultado sobre la foto de fondo:


Y aquí tras añadir a Mario Bros:



Por último me gustaría añadir un texto en el que se pueda leer mi nombre. Se pueden cambiar todo tipo de propiedades del mismo como color, letra,... La imagen final es la siguiente:


Como vemos, con algo de tiempo y paciencia, Pixlr es una herramienta online tremendamente potente con la que poder crear fotomontajes, banners... de aspecto profesional que podrán utilizarse en webs, como es nuestro caso.

P.D: Dentro de poco subiré una nueva entrada con una primera versión de la web.

domingo, 9 de septiembre de 2012

New game

Aquí comienza la creación de la web Insert Coin News. Este blog tiene como finalidad recoger todas las etapas de desarrollo del proyecto. Pero antes expliquemos un poco la motivación de todo esto.

Me llamo Moisés Torres García y soy estudiante de 2º curso en la ETSIT UPM. En este primer cuatrimestre voy a cursar la asignatura TEWC (Tecnologías web de cliente) cuyo objetivo final es el desarrollo de una web que implemente todos los conocimientos que adquiriremos a lo largo del curso. Es aquí donde vi la oportunidad de cumplir uno de los sueños que siempre había tenido: tener mi propia web sobre videojuegos. Bien fuese por falta de tiempo o de conocimientos técnicos, nunca había llevado a cabo este proyecto personal y parece que ahora es el momento idóneo para acometerlo dentro del marco que ofrece la asignatura. Por tanto la motivación principal del proyecto es mi afición a los videojuegos y la intención de dedicarle algo más de tiempo del que la carrera me permite.

Por tanto, la web tratará de todo lo que esté relacionado con los videojuegos: noticias, análisis, opiniones personales, reportajes... y tendrá como objetivo el dar una visión rápida y sencilla de lo que está ocurriendo en ese momento en el mundo de los videojuegos. En definitiva, informar de todo aquello que sea susceptible de provocar interés en la comunidad de jugadores así como de publicar reportajes y artículos que reflejen la opinión acerca de lo que sucede en el panorama consolero. De esta manera, el público objetivo de la web será todo aquel aficionado a los videojuegos que busque enterarse de cuáles son los juegos del momento, los próximos lanzamientos, alguna noticia reciente... y que además busque alejarse de los grandes medios de información del sector, cuyas opiniones están muchas veces sesgadas por la presión de las grandes compañías editoras.

A continuación vamos a analizar unas cuantas webs de temática similar para ver un poco el estilo que seguirá nuestra web y tomar algunas ideas interesantes:


En primer lugar tenemos a Meristation, una veterana dentro de los portales de videojuegos en español y que recientemente ha experimentado un rediseño completo dándole a la web un aspecto más limpio y ordenado. En la parte superior destacan 2 barras horizontales: la primera filtra los contenidos mostrados en función de la plataforma que elijamos mientras que la segunda contiene las distintas secciones con las que cuenta la página. Más abajo y en la parte principal de la web, encontramos destacados los últimos contenidos añadidos. Por último, el resto de la parte central del portal está ocupada con titulares de noticias recientes acompañados de imágenes. Por otro lado, en la parte lateral de la derecha encontramos distintas secciones de la web dispuestas de forma de columna: podcast, vídeos, reportajes... En resumen, se trata de una página web con un diseño muy limpio y sencillo y con un gran dinamismo al contar con gran cantidad de contenidos en pantalla. Sin embargo, eso no implica que esté desorganizada ya que es fácil acceder a los contenidos que deseas al contar con varias formas distintas de acceder a ellos.


Otra de las webs de videojuegos en español más importantes es HardGame2. De nuevo, nos encontramos en la parte superior con una barra que nos permite filtrar los contenidos en función de la plataforma elegida y más abajo, otra que nos permite acceder a las distintas secciones de la web. Además cuenta con un buscador propio. A continuación nos encontramos la parte principal de la web en la que se muestran los últimos análisis añadidos. Hasta ahora nada muy diferente a Meristation. Sin embargo, es en la forma de disponer las noticias donde ambas páginas difieren totalmente. Si Meristation disponía de titulares unos al lado de otros acompañados de pequeñas imágenes, HardGame2 muestra las noticias de manera similiar al 'Timeline' de Twitter. Una tras otra, están dispuestas en forma de columna acompañadas de una imagen mediana y de una porción de la noticia. Abajo de cada entrada encontramos una botón que nos permite acceder al artículo completo. Como vemos, una forma diferente de organización que no deja de ser ordenada y eficiente.


Por último analizamos una de las webs de videojuegos en inglés más importantes, Gamespot. Podemos observar cómo se han fusionado las dos barras que hemos visto en las dos páginas anteriores, estando en la parte central las distintas plataformas y las secciones en los laterales.También se incluye un buscador en la parte superior. En la parte principal observamos un 'slideshow' con las principales noticias y artículos del momento. A continuación se nos muestra un ránking con los juegos mejor valorados, próximos lanzamientos... Por último, la disposición de las noticias y artículos es similiar a la de HardGame2 mostrando las noticias y artículos en forma de columna pero pudiendo aplicar distintos filtros a los contenidos mostrados (Elección de los redactores, sólo videos...).

En resumen, observamos como en general las webs comparten algunos aspectos como son las barras superiores para elegir la plataforma o la sección o una parte principal en la que se muestran los principales artículos y noticias acompañados de grandes imágenes. Las principales diferencias se observan en el diseño así como en la disposición del grueso de los contenidos, ya sea en forma de columna o colocando los titulares uno al lado de otro acompañados de imágenes. 

Finalmente, pasemos hablar de la web que más nos interesa, Insert Coin News y la estructura que ésta va a seguir. Como resultado del análisis anterior, la web también estará estructurada en función de las plataformas y de las secciones. Las plataformas serán Pc, PS3, Xbox 360, PSVita, Wii, Iphone y Android mientras que las secciones serán Noticias, Análisis, Reportajes, Vídeos y Opinión de la semana. El funcionamiento de la barra con las distintas plataformas será el mismo que el visto anteriormente, mostrar sólo los contenidos relacionados con la plataforma elegida. Por otro lado, encontraremos otra barra horizontal con las distintas secciones:
  • Noticias: aquí se encontrarán detalladas todas las novedades relacionadas con el mundo de los videojuegos.
  • Análisis: dispondrá de críticas de los últimos lanzamientos del mercado destacando sus pros y sus contras y valorando el resultado final con una nota.
  • Reportajes: podremos encontrar artículos de toda clase: juegos antiguos, los juegos que se avecinan, las mejores ofertas de internet...
  • Vídeos: recopilación de los mejores trailers y gameplays que circulen por la red.
  • Opinión de la semana: todas las semanas, uno de los redactores subirá un artículo personal en el que expondrá su opinión acerca de un tema polémico que haya acontecido en el mundo de los videojuegos. 
Por otro lado, al igual que las 3 páginas analizadas, se contará con una parte principal que mostrará los últimos contenidos subidos a la web acompañados de grandes imágenes. Por último y a continuación, se encontraría el grueso de la web con todas las noticias y artículos dispuestos en forma de columna siguiendo el estilo de HardGame2 o Gamespot.

Para terminar la primera entrada de mi blog, muestro a continuación un boceto de cómo podría verse la página web en una futura app móvil: