El curso está compuesto por una serie de temas que hemos considerado que son el mínimo que debe conocer cualquier persona que quiera tener una visión introductoria del desarrollo web. Por supuesto que también hay otros temas que se deben conocer para ser un buen profesional del desarrollo web, pero este curso tiene una duración limitada, tiene que terminar en algún momento, así que hemos tenido que elegir, escoger y desechar.
La primera parte del curso se dedica a las tecnologías que en la actualidad son el estándar de la programación de la parte cliente de las aplicaciones web: HTML, CSS, JavaScript y DOM.
La segunda parte del curso se dedica a la programación de la parte servidor con la tecnología PHP, con acceso a una base de datos alojada en un servidor MySQL.
Mientras que para la parte cliente no hay mucha discusión sobre las tecnologías que se deben utilizar (sólo se deben utilizar las tecnologías que son consideradas el estándar), para la parte servidor las opciones disponibles son muy variadas. Otra vez, hemos tenido que elegir, escoger y desechar.
Hay muchas otras cosas que nos hubiera gustado incluir en el temario, porque creemos que un profesional del desarrollo web debe al menos conocer, como patrones de diseño, diseño gráfico, 960.gs, Twitter Bootstrap, jQuery, Adobe Flash, Microsoft Silverlight, CodeIgniter, symfony, administración de servidores web, gestores de contenidos (Joomla!, Drupal, Wordpress), desarrollo de extensiones para gestores de contenidos, ASP.NET, JSP, Python, django, programación en la nube, programación para dispositivos móviles, posicionamiento (SEO), etc., pero no ha sido posible.
La duración del curso son 15 semanas (consulta el calendario del curso). Cada semana se publicarán los materiales indicados en el calendario. La práctica del curso comenzará a publicarse a partir de la semana 2.
Los materiales del curso (vídeos, práctica, etc.) se publican a lo largo del día indicado en el Calendario: no hay una hora fija, lo único seguro es que al finalizar ese día estarán publicados.
Los temas con sus unidades y actividades están repartidos a lo largo de las 15 semanas que dura el curso de forma que se reparta de una forma equitativa la carga de trabajo. Sin embargo, como la complejidad de la práctica va aumentando semana a semana, y los conocimientos que se necesitan para realizarla también van aumentando y se van acumulando, es muy normal que el tiempo necesario para realizar la práctica cada semana sea mayor.
Una vez se hayan cumplido las 15 semanas, el curso permanecerá abierto algunas semanas más para que todos los alumnos puedan finalizar el curso sin problemas.
Este curso es una introducción al desarrollo web. Como es una introducción, el punto de partida que tomamos es bien simple: no sabes nada de desarrollo web. Hemos preparado un test de conocimientos sobre desarrollo web: si lo suspendes, es bueno, significa que eres un alumno adecuado para este curso.
Los requisitos necesarios para lograr un aprendizaje efectivo con este curso son:
En este curso, el aprendizaje se realiza principalmente de tres formas:
Olvídate de los métodos que te prometen "aprende a programar con XYZ" en 3 días, 7 días, o 21 días. Son mentira. Si no me crees, lee lo que dice Peter Norvig, en la actualidad Director de Investigación de Google, en su artículo Teach Yourself Programming in Ten Years (Aprende a programar en diez años):
Analicemos lo que podría significar un título como Aprende Pascal en Tres Días (Learn Pascal in Three Days):
- Aprende: En 3 días no tendrás tiempo de escribir varios programas significativos, y de aprender de tus éxitos y errores con ellos. No tendrás tiempo de trabajar con un programador experimentado y entender lo que es vivir en ese ambiente. En resumen, no tendrás tiempo de aprender mucho. Así que esos libros sólo podrán lograr una familiaridad superficial, no un entendimiento profundo. Como dijo Alexander Pope, poco aprendizaje es asunto peligroso.
- Pascal: En 3 días puedes aprender la sintaxis de Pascal (si ya conoces un lenguaje similar), pero no podrás aprender mucho cómo usarla. En síntesis, si fueras, digamos, un programador Basic, podrías aprender a escribir programas en el estilo de Basic usando la sintaxis de Pascal, pero no aprenderías realmente para lo que Pascal es bueno (o malo). Entonces ¿cuál es el objetivo? Alan Perlis dijo alguna vez: "Un lenguaje que no afecte tu manera de pensar acerca de la programación, no merece conocerse". Un objetivo posible es que tienes que aprender un poco de Pascal (o más probablemente, algo como Visual Basic o JavaScript) porque necesitas tener una interface con una herramienta existente para realizar una cierta tarea. Pero entonces no estás aprendiendo cómo programar; estás aprendiendo cómo realizar esa tarea.
- en Tres Días: Desafortunadamente, no son suficientes, como se describe en la siguiente sección.
Creo que está bien claro. En este curso, de 12 semanas de duración, no te prometemos que acabarás siendo un "profesional del desarrollo web". Pero sí te prometemos que tendrás la base suficiente para que continúes aprendiendo y formándote por ti mismo. Si lo haces, quizás dentro de cinco años sí que seas un verdadero profesional del desarrollo web.
Al final del curso no obtendrás ningún tipo de certificación o acreditación. Como alumno, el único objetivo que debes tener es aprender, el primer objetivo de cualquier alumno.