Ads 468x60px

Perfil

viernes, 22 de febrero de 2013

10 buenas practicas para escribir código HTML


La mejor manera de hacer que nuestros sitios web se vean y funcionen correctamente en cualquier navegador, es escribiendo código limpio y que respete los estándares. En la actualidad, la calidad del código HTML presente en cada página es un factor que ayuda a mejorar -o empeorar- el posicionamiento en buscadores, una razón de peso para preocuparnos por escribirlo correctamente.
La lista de buenas practicas que sigue a continuación puede ser percibida por los desarrolladores más avanzados como "básica", y puede que así sea. Sin embargo, espero que sea de utilidad para todos, en especial para nuestros lectores que recién se inician en este mundo del desarrollo web.
En las primeras versiones del lenguaje -hablo de muchos muchos años atrás- y con los navegadores antiguos, muchas de estas reglas podían omitirse y cada uno establecía su propio estilo, sin que esto preocupara mucho a nadie. Por fortuna, las cosas han cambiado y hoy día somos mucho más exigentes con nosotros mismos.
Existe algunas reglas que debemos respetar, sobre todo ahora que HTML5 comienza a presentarse con más fuerza. Estas reglas no las inventé yo, solo las aprendí con mi trabajo y hoy quiero compartirlas para que todosescribamos HTML de calidad.

Declarar el DOCTYPE correcto

Existen varias versiones de HTML, cada una con sus propias reglas, etiquetas, elementos y atributos. La única manera de que un navegador muestre correctamente una página web es conociendo exactamente la versión de HTML que usa el documento que la contiene.
Para indicarle al navegador la versión de HTML que estamos usando debemos usar la declaración <!DOCTYPE>y debe ser la primera línea de nuestro documento. Y aquí algunos ejemplos:
DOCTYPE en HTML5
<!DOCTYPE html>
DOCTYPE HTML 4.01 Strict
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
DOCTYPE XHTML 1.0 Strict
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
Si te encuentras un poco confundido ahora, puedes utilizar esta referencia donde se muestran las diferentes declaraciones posibles y las diferencias entre ellas.

Recuerda cerrar las etiquetas

Un documento HTML está compuesto por muchas etiquetas que sirven para definir encabezados, párrafos e incluso secciones enteras, usualmente vienen en pares, una para abrir y otra para cerrar. Siempre que abras una etiqueta, recuerda cerrarla correctamente.
Incorrecto <p>Lorem ipsum dolor sit amet
Correcto <p>Lorem ipsum dolor sit amet</p>

Nombra las etiquetas siempre en minúsculas

Tan importante como cerrarlas, es usar los nombres de las etiquetas siempre en minúsculas. Lo correcto es<p> </p>, <div> </div>, <h1> </h1> no es <P> </p>, <dIv> </DIV>, <H1> </H1>, . Además de que produce nauseas leer código escrito de esa manera, es probable que los navegadores modernos no interpreten correctamente estas etiquetas.

Utiliza ficheros externos para CSS y JavaScript

Aunque puedes crear funciones JavaScript y dar estilo a los elementos directamente en el documento HTML, por favor, nunca lo hagas. Utiliza siempre hojas de estilo y scripts externos en archivos separados para estos fines.

Enlaza los CSS externos al principio

Aunque en teoría puedes enlazar los archivos CSS externos en cualquier parte del documento HTML, lo más recomendable es hacerlo dentro de las etiquetas <head> </head>, en la practica esto hará que las páginas se cargan ligeramente más rápido.

Enlaza los JavaScript externos al final

En la medida de lo posible trata de enlazar los archivos JavaScript, justo antes de la etiqueta </body>. Esto ayudará a que las páginas carguen mucho más rápido.
No es una tontería y existe una explicación para esto: cuando el navegador está cargando un script, se detiene por completo la carga del resto del sitio y continua una vez que finaliza el otro proceso. Si se trata de un scriptde gran tamaño, el usuario deberá esperar un poco y notará fácilmente que algo sucede en el fondo, algo para nada elegante.

Usa el atributo "alt" en todas las imágenes

Es una regla fácil de olvidar, sin embargo hay que hacer un esfuerzo por recordar incluir el atributo "alt" en todas las imágenes. Aunque parezca una tontería, es necesario incluir este atributo por razones de validación y accesibilidad.

Valida tu código

Validar el código de los documentos varias veces durante el proceso de creación, te ayudará a descubrir errores de manera oportuna y te ahorrará dolores de cabeza innecesarios al final, cuando pensabas que ya habías terminado. W3C pone a nuestra disposición su Markup Validation Service que nos permitirá realizar esta tarea de manera sencilla y nos avisará sobre cualquier error en nuestro código.

Memoriza todas las etiquetas

Resulta muy útil repasar la lista completa de etiquetas HTML disponibles y tratar de memorizar la mayor cantidad de ellas. Siempre puedes acceder a la referencia, pero mantenerlas en la cabeza te ayudará a escribir código mucho más rápido.
Si memorizar no es lo tuyo, te recomiendo buscar un editor con soporte para HTML (hay cientos) que te ayude a agilizar el proceso, autocompletando código y ofreciendo sugerencias.

Lee código de otros

Para cerrar, aunque no esté ligado únicamente al código HTML (ya que aplica para JavaScript, CSS y cualquier otro lenguaje) al leer código de otros desarrolladores, incluso mirando el código fuente de tus sitios web favoritos puedes aprender mucho. Inspecciona ese elemento particular que llama tu atención y aprende como lo hicieron. Revisa otros estilos y crea uno propio.

8 maneras de ser un desarrollador web más productivo


Existen muchas cosas que podemos hacer para convertirnos en desarrolladores web más productivos, algunas muy simples y otras un tanto más complicadas. Pero mientras sea para ahorrar tiempo, hacer las cosas de una mejor manera y producir más dinero, cualquier esfuerzo extra vale la pena.
Web developer
Lo que sigue a continuación son algunas pistas sobre esas cosas que me han servido para ser mucho más eficiente y que espero te ayuden a ti también.

1. Usar Frameworks

Los frameworks pueden ayudarnos a ahorrar tiempo de manera considerable. Con ellos podemos olvidarnos de las tareas más básicas y tediosas, para concentrarnos totalmente en desarrollar las funcionalidades y requerimientos del sitio o aplicación web que estamos desarrollando. Otra gran ventaja es que suelen ser mucho más seguros, lo que además nos permite estar un poco más tranquilos. Los frameworks más conocidos tienen una gran comunidad de desarrolladores a su alrededor, con ellos podemos interactuar, intercambiar opiniones y resolver problemas rápidamente.
Tenemos frameworks disponibles para casi todos los lenguajes: PHP, Ruby, Python, JavaScript, CSS, etc; todos tienen varias herramientas de este tipo disponibles. Incluso también hay frameworks para acelerar el desarrollo de temas para WordPress, así como los hay para desarrollar aplicaciones web móviles. Con una rápida búsqueda en Google, y una buena comparación entre ellos, lograrás encontrar la herramienta perfecta para ti.

2. Probar con nuevas herramientas

Probablemente estás acostumbrado a utilizar el mismo editor de código desde hace mucho tiempo, lo conoces bien y no consideras que sea necesario cambiarlo, pues piensas que ya eres la suficientemente rápido. Pero cada día surgen nuevas y mejores herramientas mucho más cómodas, rápidas y con características que nos ayudaran a generar código de manera más eficiente.
El problema es que muchas veces no contamos con el tiempo necesario para dedicarnos a probar una nueva herramienta. Pero te propongo sacar un par de horas antes de arrancar tu próximo proyecto para investigar sobre alternativas a los programas que usas regularmente, es muy probable que te lleves una sorpresa o simplemente descubras una mejor manera de aprovechar tus herramientas de siempre.

3. Crear una librería de código propia

En ocasiones dedicamos mucho tiempo a un problema muy particular, después de que conseguimos resolverlo nos vamos rápidamente a otra cosa. Cuatro meses más tarde volvemos a encontrarnos con un problema similar, sabemos que ya nos enfrentamos a el y que podemos resolverlo mucho más rápido, pero ¿para que volver a hacer todo el trabajo?.
Guarda esas funciones y fragmentos de código que tanto tiempo te tomó escribir para reutilizarlas posteriormente. Crea un wiki propio, archivalas en Evernote, compártelas en un blog y haz que sean útiles para otros. Usa etiquetas y una descripción para identificarlas y conseguirlas rápidamente cuando la librería se haga más grande.

4. Organizar los recursos disponibles

Utiliza una carpeta en Dropbox, o en tu servicio de almacenamiento favorito, para guardar todo el materialque descargas de Internet y así tenerlo disponible en cualquier momento. Me refiero a iconos, imágenes, fuentes, guías, libros, plantillas, etc.
Organiza todos estos recursos en carpetas separadas por categorías y usa nombres descriptivos para encontrarlos más fácilmente. La próxima vez que necesites algo de esto no tendrás que volver a buscar y descargar, ¡ya lo tienes!.

5. Elaborar listas de tareas

Estar organizados es una de las partes más importantes. Crea listas de tareas para cada día de la semana, establece metas realistas y no planifiques para hacer en 2 horas algo que sabes que te tomará 4, no te engañes a ti mismo. Realiza tu mejor esfuerzo por terminar las tareas en el tiempo establecido. Si terminas antes estarás muy satisfecho y podrás elegir entre adelantar algo del día siguiente o simplemente ir a relajarte y distraerte con otra actividad.
Asigna prioridades a las tareas, comienza por las más importantes. Puedes utilizar herramientas geniales como Astrid y Wunderlist, o Teambox para el trabajo colaborativo. Las primeras dos tienen aplicaciones móviles para poder revisar todo fácilmente desde el teléfono o la tableta.

6. Dividir el trabajo en bloques

Una vez que tenemos las tareas definidas podemos dividir las más largas en bloques más pequeños, así podemos medir mejor nuestro rendimiento y evitamos la fatiga.
Concentrarnos en una sola tarea durante un espacio de 20 o 25 minutos nos puede ayudar a crear una disciplina y a trabajar mucho más rápido, pues estaremos corriendo varias carreras contra reloj a lo largo del día.

7. Tomar descansos entre bloques

Tomar 5 minutos de descanso entre un bloque y otro puede beneficiarnos de diferentes maneras. Si estamos atascados en un problema, alejarnos de la computadora por un momento nos ayudara a tomar un segundo aire y regresar con ideas frescas para continuar con el trabajo.
Existen varías técnicas para gestionar el tiempo, una muy popular es la técnica Pomodoro. Reconozco que la probé y me funcionó por unos días, pero luego la abandoné. Particularmente prefiero acabar una tarea completa antes de tomar un descanso, o descansar entre tareas si siento que realmente lo necesito. Quizá contradiga un poco el punto anterior, pero lo importante es encontrar un método que funcione para nosotros, con los descansos necesarios sin caer en la procrastinación.

8. Aprender cosas nuevas

Dedicar algún tiempo para aprender cosas nuevas siempre es importante. Busca una API que te interese y comienza a estudiarla para descubrir que cosas interesantes puedes hacer con ella.
Dedica una hora a seguir un tutorial para aprender alguna técnica que no sabías que podía hacerse con CSS3. Revisa el trabajo de tus desarrolladores favoritos y aprende como lo hacen. En realidad es muy simple y sobre todo beneficioso.
Cómo puedes ver, son cosas muy fáciles que puedes poner en practica para crear una sana rutina de trabajo, no importa si trabajas desde casa, en una oficina, o si eres de los que lleva su espacio de trabajo a todos lados. Siempre es posible ser mucho más productivo, y ser productivo se traduce en mayores ganancias y en más tiempo para realizar otras actividades que nos gustan.

Curso de HTML para principiantes, parte I


Si no somos diseñadores web o programadores, es posible que no encontremos una utilidad inmediata para el código HTML. Pero en marketing, periodismo, y otras profesiones relacionadas con la comunicación, saberlo se está volviendo casi una obligación. Aunque sean las cosas más básicas, nos encontramos necesitando cada vez más saber cómo usarlo. Y no es nada complicado, las apariencias engañan. Para facilitar la existencia de estas personas que recién se están metiendo al mundo de HTML, y que realmente no necesitan ser unos expertos para hacer lo que tienen que hacer, hemos realizado este breve curso en algunas entregas donde develaremos algunos secretos de HTML para principiantes.
Creo que comenzar a aprender HTML puede ser adictivo, y aunque en un primer momento solamente necesitemos tener un conocimiento básico, después vamos teniendo ansias de saber más. Si se sienten interesados por HTML, hay que entender que se trata de un lenguaje bastante anticuado, que tiene que ser complementado con otros recursos. Por eso, se puede recurrir a aprendizajes en las áreas de CSS, Dreamweaver, JavaScript, jQuery, y muchas cosas más que también son infinitamente interesantes. Pero, sin más, comenzamos con esta breve introducción al fascinante mundo del HTML.

Significado y origen del HTML

HTML es uno de esos acrónimos que con el correr del tiempo casi han perdido su totalidad. Si le preguntamos a muchas personas qué significa en realidad HTML, pues no sabrían respondernos con exactitud. HTML es Hyper Text Markup Language (o lenguaje de marcas de hipertexto) y no debe confundirse con un lenguaje de programación. Se trata más bien de una forma semántica de organizar una estructura, ya sea páginas web o aplicaciones, a través de marcas de sentido. Las marcas de sentido son otorgadas por lasetiquetas, de las cuales hablaremos en algunas líneas.
Así como tenemos que agradecerle la creación de internet, también fue Sir Tim Berners-Lee el responsable, en parte, de la creación del HTML. En la década del ’80, cuando se encontraba trabajando para el CERN, el físico ideó un lenguaje de hipertexto que facilitaría compartir documentos con sus colegas. Aunque el sistema de hipertexto ya había sido desarrollado un tiempo antes, fue Berners-Lee quien lo perfeccionó y lo presentó para ser usado en internet. Junto con Robert Cailliau, presentaron la propuesta WorldWideWeb (W3). Durante la década del ’90 se fueron presentando otras versiones. Hoy en día, el lenguaje HTML puro y duro ha sido reemplazado por el XHTML, más completo, y últimamente por el HTML5, que se corresponde con los tiempos que corren.
Hoy estaremos hablando del lenguaje transicional, el XHTML, que aún se sigue implementando en una gran mayoría de sitios web, aunque lentamente se está dejando lugar al HTML5 y sus amplias ventajas.

Las etiquetas

Decíamos anteriormente que  el HTML funciona a través de marcas de sentido llamadas etiquetasEstas etiquetas son interpretadas por el navegador: así es como podemos ver imágenes, texto, párrafos, en definitiva, estructuras, en una página web, y no el simple código. Por eso hablamos además de marcas de sentido. Sin HTML, no tendríamos la posibilidad de disfrutar internet hoy en día. Básicamente, los navegadores como Chrome o Firefox son “traductores” de HTML que digieren todo este código y lo convierten en algo visible para nosotros.
Etiquetas, marcas de sentido… ¿qué son verdaderamente? Cada etiqueta tiene un nombre y encierra en ella –literalmente, como veremos ahora- un determinado significado. Las etiquetas se escriben con los signos mayor y menor a. Por eso cuando abrimos un documento HTML veremos esto:
<html>
<head>
<title>Bienvenidos a Bitelia</title>
</head>
<body>
Por supuesto este es un comienzo de HTML muy burdo, pero se entiende la idea. La etiqueta <html> en este caso está indicando el inicio de un documento HTML, y esta información es leída por el navegador. Por otra parte, tenemos la etiqueta <head>, la cual merece su propio apartado por la importancia, y luego <body>, que contendrá todas las cosas que nosotros como usuarios podemos ver en pantalla.
Las etiquetas funcionan por partes, que se denominan etiquetas de apertura y etiquetas de cierre. Las etiquetas de apertura le indican al navegador dónde comenzar a interpretar algo de determinada forma, y las de cierre le indican dónde terminarlo. Por eso es fundamental que se cierren todas las etiquetas que se abren en un determinado documento: aunque se vea bien, nos puede traer problemas a largo plazo. La prolijidad nunca está de más.
Al ser un lenguaje de etiquetas, el HTML es por ende muy fácil de leer. Cualquiera puede aprender HTML, no requiere ser un genio, sino nada más tener algo de organización. En la segunda parte de este curso hablaremos sobre la estructura básica de un documento HTML, algo fundamental, además de las etiquetas más importantes y básicas que necesitamos saber. Por el resto de esta entrega, nos dedicaremos a entender otros datos importantes de HTML y, finalmente, por qué tenemos que saberlo si no nos dedicamos al diseño o programación web.

Los archivos en HTML

Los documentos HTML pueden incluir archivos como imágenes y animaciones en Flash que estarán alojados en el mismo servidor, para que el usuario pueda verlos. Pero para poder ser interpretados de forma correcta, la nomenclatura de estos archivos tiene que ser exacta. Es algo que es muy valorado por el W3 Consortium –entidad encargada de hacer las normas que deben seguir los diseñadores- y que no está de más saber.
Los archivos HTML y otros archivos que usemos en nuestra página tienen que estar nombrados de forma particular. Hay una serie de reglas básicas que compartiremos con ustedes, que sirven como puntapié inicial:
  • Los nombres de los archivos deben estar en minúsculas, para poder ser compatibles en todos los navegadores.
  • El archivo principal será index.html, dado que será el primer archivo que el navegador buscará cuando ingrese en nuestro servidor a través de la dirección IP. No se puede tener el archivo de la home llamado de forma diferente, tiene que sí o sí llamarse index.
  • No se pueden usar caracteres no válidos para la nomenclatura del archivo, por ejemplo, la letra ñ. Solamente se pueden usar el guión (-) y el guión bajo (_).
  • No importa si es una imagen o un archivo HTML, todos los documentos tienen que seguir estas reglas para poder ser interpretados de forma correcta por el navegador.
Por ejemplo, aunque nos veamos tentados de llamar Foto 22/08.jpg a un archivo, la nomenclatura correcta sería foto_22-08.jpg.

¿Por qué aprender HTML?

Si no somos diseñadores web, y por ejemplo tenemos un empleo relacionado con la comunicación, en algún momento nos hemos topado con el HTML. Aprenderlo nunca está de más, dado que es una habilidad que puede ser apreciada en el ámbito laboral.
Para los Community Managers, es una excelente posibilidad dado que permite jugar con las herramientas que nos proporciona, por ejemplo Facebook, para crear tabs personalizadas en las fanpages. Se puede crear algo básico e interesante con un conocimiento mínimo de HTML gracias a los iframes (de los cuales hablaremos en otra entrega, pero que permiten insertar una página web dentro de otra).
Para los periodistas y bloggers, saber de HTML nos permite poder jugar más con las plataformas y darle un formato diferente a nuestros textos. Además, nos permite resolver problemas de formato que muchas veces surgen en las plataformas más populares de blogging del mundo (no tengan miedo de entrar a la vista HTML a corregir, nos da una visión más clara de qué es lo que estamos haciendo).
Comprender HTML es comprender el idioma en el que se maneja internet. Cuando sabemos sus conceptos básicos, es como entender las primeras palabras cuando estamos mirando una película en otro idioma, un idioma que estamos estudiando.