Archivo de la etiqueta: tecnología

Maquetación de una web: II – Material gráfico

Antes de empezar a maquetar, deberíamos contar con todos diseños de la web en formato gráfico. Para mi, el formato ideal es el PSD, estando este bien estructurado y separado por capas, por lo que suelo hablar anteriormente con el diseñador para que me lo prepara de dicha manera.

En otros proyectos en los que he trabajado, para ahorrar costes lo que se hace es diseñar las páginas principales y el resto se estructuran mediante wireframes. Por lo tanto, en estas páginas de las cuales no se tiene el diseño, es el maquetador el encargado de “inventarse” los estilos basandose en las principales. Para mi no es la mejor opción, ya que el maquetador no tendría porque comerse la cabeza pensando en asuntos de diseño, pero a veces no queda más remedio.

Otras veces, por falta de tiempo, no es posible disponer de todas las páginas juntas ya diseñadas, y el trabajo del maquetador se solapa con el diseñador para agilizar el proceso, pero intentaremos evitar esto siempre que sea posible. La razón es que, a la hora de planificar la estructura del código, si se dispone de todas los diseños a maquetar, podemos ahorrar etiquetas HTML y clases CSS innecesarias porque contaremos con una visión más global del proyecto.

En las próximas entradas, utilizaremos como ejemplo un proyecto ideal en el que contaríamos con el diseño de todas las páginas en formato PSD.

Maquetación de una web: I – ¿Qué es y quien debe hacerlo?

En el ámbito del desarrollo web, se utiliza el término maquetación para designar el proceso de conversión del diseño en formato imagen (PSD, JPG, PNG, etc.) a formato HTML (en cualquier de sus variantes). Si bien dicho término no es el más adecuado para referirse a esa labor, es comúnmente aceptado por los profesionales del área. A mi parecer, creo que sería mejor utilizar la palabra “codificación”, aunque el objetivo de esta entrada no es discutir sobre ello.

Generalmente, el proceso de maquetación lo llevan a cabo o el diseñador o el programador, algo que no debería ser así, ya que ninguno de los dos está específicamente preparado para ello. En su lugar, debería existir otro rol dedicado, desempeñado por una persona con conocimientos orientados a dicha labor, como son:

  • Especialista en lenguajes (X)HTML, CSS y JavaScript
  • Amplios conocimientos de accesibilidad y estandares web
  • Nivel medio/avanzado en programas de diseño gráfico (p.ej.: Adobe Photoshop y Fireworks) y codificación (p.ej.: Adobe Dreamweaver)
  • Conocimientos básicos de programación en algún lenguaje web (p.ej.: PHP)

El porque de este rol independiente se explica muy bien en el articulo “El tercer hombre” del blog “Torpe y mal pensado“.

En próximas entradas, expondré todo el proceso que yo sigo para la maquetación de una web, desde la recepción del material gráfico, hasta la entrega de las plantillas finales.

Algo más de velocidad

Acabo de darme cuenta de que Telefónica ya ha duplicado la velocidad del ADSL en mi provincia (Cádiz). En esta nueva duplicación, pasamos de los 512/128 Kb (descarga/subida) a 1024/300 Kb.
Se agracede sobre todo el aumento del ancho de banda en sentido ascendente, que seguro que ahorrara valiosos minutos en el envio de e-mails con archivos adjuntos grandes o cuando enviamos algo por los servicios de mensajería instantanea.
Y a vosotros que, ¿ya os la han metio doblá? XD

Imaginando el “futuro”

Soñemos un poco…

Imaginaos un futuro donde…

  • …vuestra velocidad de conexión a Internet en casa no es inferior a los 8 Mbps.
  • …existen multitud de puntos de acceso Wi-Fi gratuitos para acceder a Internet desde cualquier lugar.
  • …desde el movil podemos conectarnos a Internet por un precio módico y una velocidad superior a las que tenemos actualmente en nuestras conexiones de casa. Además, podriamos buscar como llegar a cualquier sitio gracias al callejero incorporado, consultar el precio de un producto en otras tiendas solo haciendo una foto a su código de barras, o pagar con él en las máquinas expendedoras. Incluso podemos descargarnos cualquier tema musical a gran calidad para ponerlo como melodía, o utilizar la camara incorporada de alta resolución para tomar instantaneas y compartirlas de multiples formas (via e-mail, web, etc.).
  • …los CDs músicales del artista de éxito del momento tienen un precio que no supera los 3 euros.
  • …trenes de alta velocidad comunican las principales ciudades del pais, saliendo cada pocos minutos y con una media de retraso no superior a 10 segundos.
  • …vamos a comer a un restaurante y os presentan la carta en un tablet PC, con información detallada de los platos, y mediante la cual realizais el pedido directamente.
  • …no hay problemas de aparcamiento.

Ya podeis dejar de soñar y volver a la tierra, porque todo esto ya es una realidad, solo hay un problema, tendreis que iros a vivir a Japón.
Si alguien no se lo cree, solo tiene que visitar alguno de los siguientes enlaces para comprobarlo:

Post dedicado a Kirai, que dentro de nada vuelve de Japón.

Cuidado con el $_SERVER[‘HTTP_REFERER’]

Inauguro una serie de posts en los que iré explicando algunos consejos utiles para PHP que he ido aprendiendo con el tiempo.

En esta ocasión, os llamaré la atención sobre el uso indiscriminado que muchos programadores nóveles de PHP hacen de la variable de servidor $_SERVER[‘HTTP_REFERER’].
Muchos la utilizan (yo hace tiempo tambien lo hacía) para generar enlaces de “Volver atrás”, para redireccionar a la pagina de origen despues de la ejecución de un script, etc. El problema radica en que esta variable no siempre está disponible, ya sea por que el navegador no la envie, este siendo filtrada/bloqueada por el cortafuegos del usuario, u otras posibles causas. De hecho, en la manual oficial de PHP ya lo advierten:

… Este valor es definido por el agente de usuario. No todos los agentes de usuario lo definen, y algunos proveen la capacidad de modificar HTTP_REFERER como una característica del software. En resumen, no se puede confiar realmente en este valor…

Como consecuencia tenemos enlaces que no llevan a ningun sitio, redirecciones fallidas y otros errores derivados de su uso.
Visto todo esto, solo me queda recomendaros que no useis esta variable, o en cualquier caso programeis una función que compruebe su valor antes de usarla.