desarrollando para un mundo real!
TRANSCRIPT
www.rodrigopolo.com@rodrigopolo
Aplicaciones WebPara un mundo real.
¡El Mundo Real!
El Mundo Real:
• Deadlines.• Presupuesto.• Conocimiento previo.• Jefes que desconocen soluciones.• Falta de visión.
Cambio de Paradigmas(dejar de solo sacar el chance)
Cambio de Paradigmas
• No inventar el agua azucarada.• Solucionar, no solo “Arreglar”.• Código reutilizable.• Ser realista y conocer el ecosistema.• Programación por capas.• APIs• Pensar en un mundo global = i18n – GMT/UTC.• No se casen con nada.
No inventar el agua azucarada
• Ya existen CMSs, extendamos sus posibilidades con extenciones, plug-ins, addons, etc.
• Mientras más práctica sea la solución, mejor.• A menos piezas, menor posibilidad de fallo.
Solucionar, no solo “Arreglar”.
• Cualquier solución debe poder ser escalable, estar bien documentada y comentada.
• Los “chapuses” siempre salen caros.
Código reutilizable
• Programación orientada a objetos.• Frameworks.• Crear librerías.• Compartir soluciones.
PHP creator Rasmus Lerdorf spoke at frOSCon in August 2008, noting that he liked CodeIgniter “because it is faster, lighter and the least like a framework.”
http://en.wikipedia.org/wiki/EllisLab#CodeIgniter
PHP Sucks, But It Doesn't Matterhttp://www.codinghorror.com/blog/2008/05/php-sucks-but-it-doesnt-matter.html
Ser realista y conocer el ecosistema
• Conocer qué solución es más popular.• Conocer qué solución tiene más participantes
en línea.• Conocer qué solución tiene más servidores con
precios más accesibles.
Programación por capas.
• Model–view–controller.• APIs – JSON – AJAX – UI
Pensar en un mundo global.
• En el mundo real existen aproximadamente entre 3,000 a 6,000 idiomas actualmente.http://en.wikipedia.org/wiki/Language
• GETTEXT es el estándar por defécto actualmente.http://php.net/manual/en/book.gettext.php
Pensar en un mundo global.
• En un mundo globalizado cada usuario tiene una zona horaria diferente, es necesario tener la visión de cómo administrar timestamps
Pensar en un mundo global.
Pensar en un mundo global.
• Brindar al usuario la posibilidad de cambiar su zona horaria.
• Almacenar registros utilizando UTC/GMT: UTC_TIMESTAMP(); en vez de NOW();
No se casen con nada.
Otros Puntos: Optimización
• CSS Sprites• Menos requests• HTTP Caché• SQL Caché• Benchmarking
Otros Puntos: Optimización
• CSS Sprites• Menos requests• HTTP Caché• SQL Caché• Benchmarking
Creen un proyecto propio(No es lo mismo verla venir que bailar con ella)
Compartan con el FLOSS