Este documento introduce los conceptos básicos del desarrollo web, incluyendo cómo funcionan los navegadores, servidores y bases de datos. Explica que se necesita un nombre de dominio y hosting para publicar un sitio web, y que las aplicaciones deben poder responder dinámicamente a las solicitudes de los clientes. También cubre brevemente las tecnologías del lado del cliente como HTML, CSS y JavaScript. El objetivo general es mostrar que el desarrollo web no es tan complicado y que existen muchas opciones gratuitas y de bajo costo.
7. Entonces ¿De qué hablaremos? Lo que involucra crear una aplicación web. Que tanto un browser como cualquier programa use Para poder crear WebApps que sean Escalables Disponibles Mantenibles Confiables Ubicuas
13. Internet: ¿Cómo encontrar algo? Traducir: Un nombre de dominio corresponde a una dirección IP (o a un grupo) http://catharted.info -> 208.77.222.202 Necesitás un nombre de dominio .com, aprox. 10$/año Ahora, te falta una lugar físico…
14. Internet: ¿dónde poner algo? Montar un servidor propio O conseguir hosting Existen opciones gratuitas (appengine, heroku) Servidor compartido, virtual o dedicado Una solución decente puede costar 20$/mes Pero hay gratis o más baratos…
16. El servidor: pidiéndole cosas Puede ser Apache, nginx, lighttpd, node.js, etc. Cuando una solicitud llega, ve qué hacer Pueden pedirse documentos estáticos Texto, pdf, css, javascript, etc. Buscarlos y devolverlos O necesitarse respuestas dinámicas Pasar el control a un programa (cgi)
17. El servidor: adentro Las aplicaciones web no le responden igual a todos Se pueden hacer programas sencillos (perl, node.js, etc) O usar frameworks rubyonrails, django, cakephp, express.js, etc. La mayor parte es gratis
18. Servidor, adentro A veces vas a tener que interactuar con bases de datos MySQL, PostgreSQL, CouchDB, MongoDB, etc. Muchas veces, también gratis. El feelin’ es construir documentos como respuesta
20. El cliente: ¿Qué pasa ahí? Interpretarespuestas Browser: muestra Documentos HTML HTML: la estructura Css: el estilo: diseño, colores, fuentes, etc. Browser: ejecuta cosas dinámicas Javascript, html5 Silverlight, Flash, etc.
25. Sumario: gente, tiempo, dinero Roles: vos podés ser todos Programadores: lado servidor+lado cliente Diseñadores: css+html[5] Admins: servidor+base de datos Tiempo: cada vez necesitás menos Un sitio grande, tres meses; uno pequeño, días. Dinero: si te las ingeniás, es gratis. Nombre: 10-30$/año Hosting: 0$ ó >=15$/mes
28. Referencias Bookmarks de lo hablado hoy http://www.delicious.com/lfborjas/barcamp3 Esta presentación, en internerd http://www.slideshare.net/lfborjas
30. Dinámica + Caso de Estudio Hagamos una dinámica -necesitamos actores Casos de estudio: http://www.catharted.info/ Me costó 3$ en total Hecho en las madrugadas de tres días http://about-lfborjas.appspot.com/blog/ Gratis. (hosteado en app-engine) Hecho en una tarde y media.
31. Sumario ¿qué tenés que hacer? Necesitás que te puedan encontrar y saber responder Programar algo que responda dinámicamente A veces, bases de datos. A veces, Diseñar documentos (html+css) A veces, Programar en el lado del cliente (js+html5)