Charla Gratuita sobre Desarrollo de Software Ligero y Desconectado
A los interesados en conocer de cerca mi arquitectura y metodología de desarrollo de software ligero y desconectado basado en Performance, les comunico que estaré dando una Charla Gratuita de 3 horas el día Domingo 8 de Enero del 2017 de 10:00 am a 1:00 pm y el lugar se estará enviando solo a los registrados.
Esta charla es solo para nuevos participantes, es decir, los alumnos que ya están llevando el Taller no sería recomendable que se inscriban para darle oportunidad a nuevas personas, ya sea profesionales o estudiantes de poder conocer las ventajas de mi forma de trabajo,
El procedimiento para registrarse es enviar un mail a Luis.duenash@gmail.com con la siguiente información:
- Nombre Completo
- Tipo Perfil: Profesional / Estudiante / Otro
- Lugar de Trabajo o Estudio (Nombre de la Universidad o Instituto)
- Ha sido ex-alumno (PECI, Web Developer, Carrera, etc)
Recuerden que las vacantes son limitadas por la capacidad del lugar y esta es la única forma de participar en mis Talleres, es decir, solo invito a los que constantemente muestran interés y no a cualquiera que tenga plata para pagar.
Blog de Luis Dueñas dedicado a la difusión del Desarrollo en Microsoft .NET, Visual Studio, WinForms, WebForms, MVC, ASP .NET, jQuery, AJAX, HTML5, JavaScript, Móviles, etc. Encontrarás Libros, Demos, Artículos Técnicos, Entrenamiento.
lunes, 26 de diciembre de 2016
Entrenamiento - Charla Gratuita sobre Desarrollo de Software Ligero y Desconectado
Etiquetas:
Arquitectura,
ASP.NET,
Charla Gratuita,
Desarrollo Web,
Domingos,
Entrenamiento,
Javascript,
Lduenas,
MVC,
PECI,
Talleres,
Web Developer
El Libro del Día: WebGL Programming Guide
El Libro del Día: 2016-12-26
Titulo: WebGL Programming Guide
Autor: Kouichi Matsuda, Rodger Lea
Editorial: Addison Wesley
Nro Paginas: 544
Capítulos:
1. Overview of WebGL
2. Your First Step with WebGL
3. Drawing and Transforming Triangles
4. More Transformations and Basic Animation
5. Using Colors and Texture Images
6. The OpenGL ES Shading Language (GLSL ES)
7. Toward the 3D World
8. Lighting Objects
9. Hierarchical Objects
10. Advanced Techniques
Anexos:
A. No Need to Swap Buffers in WebGL
B. Built-in Functions of GLSL ES 1.0
C. Projection Matrices
D. WebGL/OpenGL: Left or Right Handed
E. The Inverse Transpose Matrix
F. Load Shader Programs from Files
G. World Coordinate System Versus Local Coordinate System
H. Web Browser Settings for WebGL
Descarga:
WebGL_Programming_Guide
Titulo: WebGL Programming Guide
Autor: Kouichi Matsuda, Rodger Lea
Editorial: Addison Wesley
Nro Paginas: 544
Capítulos:
1. Overview of WebGL
2. Your First Step with WebGL
3. Drawing and Transforming Triangles
4. More Transformations and Basic Animation
5. Using Colors and Texture Images
6. The OpenGL ES Shading Language (GLSL ES)
7. Toward the 3D World
8. Lighting Objects
9. Hierarchical Objects
10. Advanced Techniques
Anexos:
A. No Need to Swap Buffers in WebGL
B. Built-in Functions of GLSL ES 1.0
C. Projection Matrices
D. WebGL/OpenGL: Left or Right Handed
E. The Inverse Transpose Matrix
F. Load Shader Programs from Files
G. World Coordinate System Versus Local Coordinate System
H. Web Browser Settings for WebGL
Descarga:
WebGL_Programming_Guide
Etiquetas:
3D World,
Addison Wesley,
Animations,
Colors,
Drawing,
Hierarchical,
Kouichi Matsuda,
Libros,
Lighting,
Matrices,
Objects,
OpenGL,
Programming Guide,
Rodger Lea,
Texture Images,
Transformations,
Triangles,
WebGL
sábado, 24 de diciembre de 2016
El Libro del Día: Learning Virtual Reality
El Libro del Día: 2016-12-24
Titulo: Learning Virtual Reality
Autor: Tony Parisi
Editorial: O'Reilly
Nro Paginas: 128
Capítulos:
1. Introduction
2. Virtual Reality Hardware
3. Going Native: Developing for Oculus Rift on the Desktop
4. Going Mobile: Developing for Gear VR
5. WebVR: Browser-Based Virtual Reality in HTML5
6. VR Everywhere: Google Cardboard for Low-Cost Mobile Virtual Reality
Descarga:
Learning_Virtual_Reality
Titulo: Learning Virtual Reality
Autor: Tony Parisi
Editorial: O'Reilly
Nro Paginas: 128
Capítulos:
1. Introduction
2. Virtual Reality Hardware
3. Going Native: Developing for Oculus Rift on the Desktop
4. Going Mobile: Developing for Gear VR
5. WebVR: Browser-Based Virtual Reality in HTML5
6. VR Everywhere: Google Cardboard for Low-Cost Mobile Virtual Reality
Descarga:
Learning_Virtual_Reality
Etiquetas:
Browser-Based,
Cardboard,
Desktop,
Developing,
Gear VR,
Going Native,
Google,
Hardware,
HTML5,
Introduction,
Javascript,
Learning,
Libros,
Mobile,
O'Reilly,
Oculus Rift,
Tony Parisi,
Virtual Reality,
VR,
WebVR
miércoles, 21 de diciembre de 2016
Presentación - Desarrollo de Software Ligero y Desconectado
Desarrollo de Software Ligero y Desconectado
Introducción
Comparto con ustedes una de mis presentaciones de este año sobre la Necesidad de una Nueva Arquitectura de Software de Alto Rendimiento (ASAR): Ligera, Desconectada, Segura y Disponible (LDSD) que busca cambiar el paradigma del desarrollo que actualmente esta orientado a la Reusabilidad (N-Capas, Servicios, Frameworks, Librerías, Plantillas, etc) y No a la Performance (que es algo que se necesita Urgente).
La actual arquitectura y los temas que se aprenden en todas partes del mundo solo llevan a que las Aplicaciones sean demasiado lentas ya que se conectan constantemente y ocupan todo el ancho de banda con los formatos existentes (XML, JSON), por lo cual es necesario desconectarse y usar un formato mas ligero (CSV).
En estos últimos años vengo trabajando mucho en este tema y mi intención es compartir con la mayor cantidad de personas mi visión sobre lo que debería corregirse en los Sistemas sino los problemas continuaran, es por eso comparto esta Presentación donde comento los Problemas de los Sistemas, las Causas y la Solución.
Presentación
Comentario Final
Si su objetivo principal es que las aplicaciones sean rápidas, nada de lo que se enseña te va a ayudar en dicho objetivo, es decir, si aprendes el uso de Frameworks, Librerías, Plantillas, Patrones, etc, más el enfoque conectado, solo conseguirán que sus páginas sean mas lentas.
Mi aporte para resolver estos problemas los puedo resumir en lo siguiente:
1. Enviar la menor cantidad de archivos: La página, un solo JS, un solo CSS y un solo paquete con las imágenes.
2. Trabajar en forma desconectada para reducir el número de conexiones.
3. Usar CSV como formato de datos para el transporte y así reducir el ancho de banda.
4. Eliminar el uso de capas y bucles en el Back-End
5. Serializar los datos en el Servidor de Datos (SQL Server, Oracle, etc).
6. Trabajar con JavaScript la presentación, búsquedas, filtros, ordenaciones, paginaciones, exportaciones, importaciones, previews de archivos, etc.
7. Actualizar en tiempo real usando Sockets y no Servicios ni llamar constantemente al servidor, etc.
Este breve resumen es la implementación de mi Arquitectura Ligera y Desconectada que considero la alternativa mas eficiente para resolver el problema de la performance que es el "Gran Problema" y el más urgente de resolver.
La mayoría de desarrolladores solo piensan en "Crear" y aprenden muchas cosas que No servirán de nada y solo contribuirán a los problemas descritos en la presentación, los cuales pueden evitarse si uno entiende como funciona una aplicación.
Solo me queda aconsejar a los más jóvenes, sobre todo que recién empiezan, que no se dejen guiar por la moda y las "nuevas formas de desarrollar" que al final cuando trabajen se darán cuenta de que todo lo que estudiaron y las plantillas de arquitectura que les dieron para seguir No fueron las mejores.
En el colmo de la ignorancia, mucha gente que sigue el "Modelo Equivocado" y todavía se pregunta "Pero si ya aumentamos las características del Servidor (CPU, RAM, Disco, etc), porque las Aplicaciones siguen Lentas". La respuesta es simple: "NO es problema de Hardware, pero si de Software, en este caso de Aplicación" y la capacitación que seguiste, la arquitectura que elegiste y todo lo que aprendiste "No resolverá dicho problema".
Los que han visto mi trabajo en este último año y basta como prueba lo que hicimos este Domingo en el Seminario de JavaScript saben que en todos los extremos desde el Back-End hasta el Front-End mejoramos el tiempo de respuesta convirtiendo a la aplicación en "Super Rápida".
Para finalizar, quiero agradecer a todos mis alumnos que durante este año me permitieron mostrar mi trabajo y compartir muchos momentos de reflexión los cuales dieron sus frutos creando una arquitectura sólida en cuanto a performance, la cual vamos a mejorar al próximo año aumentando la seguridad, que son los principales problemas al cual debemos enfocarnos y en el cual trato de aportar algo.
Introducción
Comparto con ustedes una de mis presentaciones de este año sobre la Necesidad de una Nueva Arquitectura de Software de Alto Rendimiento (ASAR): Ligera, Desconectada, Segura y Disponible (LDSD) que busca cambiar el paradigma del desarrollo que actualmente esta orientado a la Reusabilidad (N-Capas, Servicios, Frameworks, Librerías, Plantillas, etc) y No a la Performance (que es algo que se necesita Urgente).
La actual arquitectura y los temas que se aprenden en todas partes del mundo solo llevan a que las Aplicaciones sean demasiado lentas ya que se conectan constantemente y ocupan todo el ancho de banda con los formatos existentes (XML, JSON), por lo cual es necesario desconectarse y usar un formato mas ligero (CSV).
En estos últimos años vengo trabajando mucho en este tema y mi intención es compartir con la mayor cantidad de personas mi visión sobre lo que debería corregirse en los Sistemas sino los problemas continuaran, es por eso comparto esta Presentación donde comento los Problemas de los Sistemas, las Causas y la Solución.
Presentación
Diapositiva 1
Diapositiva 2
Diapositiva 3
Diapositiva 4
Diapositiva 5
Diapositiva 6
Diapositiva 7
Diapositiva 8
Diapositiva 9
Diapositiva 10
Diapositiva 11
Diapositiva 12
Diapositiva 13
Diapositiva 14
Diapositiva 15
Diapositiva 16
Diapositiva 17
Diapositiva 18
Diapositiva 19
Si su objetivo principal es que las aplicaciones sean rápidas, nada de lo que se enseña te va a ayudar en dicho objetivo, es decir, si aprendes el uso de Frameworks, Librerías, Plantillas, Patrones, etc, más el enfoque conectado, solo conseguirán que sus páginas sean mas lentas.
Mi aporte para resolver estos problemas los puedo resumir en lo siguiente:
1. Enviar la menor cantidad de archivos: La página, un solo JS, un solo CSS y un solo paquete con las imágenes.
2. Trabajar en forma desconectada para reducir el número de conexiones.
3. Usar CSV como formato de datos para el transporte y así reducir el ancho de banda.
4. Eliminar el uso de capas y bucles en el Back-End
5. Serializar los datos en el Servidor de Datos (SQL Server, Oracle, etc).
6. Trabajar con JavaScript la presentación, búsquedas, filtros, ordenaciones, paginaciones, exportaciones, importaciones, previews de archivos, etc.
7. Actualizar en tiempo real usando Sockets y no Servicios ni llamar constantemente al servidor, etc.
Este breve resumen es la implementación de mi Arquitectura Ligera y Desconectada que considero la alternativa mas eficiente para resolver el problema de la performance que es el "Gran Problema" y el más urgente de resolver.
La mayoría de desarrolladores solo piensan en "Crear" y aprenden muchas cosas que No servirán de nada y solo contribuirán a los problemas descritos en la presentación, los cuales pueden evitarse si uno entiende como funciona una aplicación.
Solo me queda aconsejar a los más jóvenes, sobre todo que recién empiezan, que no se dejen guiar por la moda y las "nuevas formas de desarrollar" que al final cuando trabajen se darán cuenta de que todo lo que estudiaron y las plantillas de arquitectura que les dieron para seguir No fueron las mejores.
En el colmo de la ignorancia, mucha gente que sigue el "Modelo Equivocado" y todavía se pregunta "Pero si ya aumentamos las características del Servidor (CPU, RAM, Disco, etc), porque las Aplicaciones siguen Lentas". La respuesta es simple: "NO es problema de Hardware, pero si de Software, en este caso de Aplicación" y la capacitación que seguiste, la arquitectura que elegiste y todo lo que aprendiste "No resolverá dicho problema".
Los que han visto mi trabajo en este último año y basta como prueba lo que hicimos este Domingo en el Seminario de JavaScript saben que en todos los extremos desde el Back-End hasta el Front-End mejoramos el tiempo de respuesta convirtiendo a la aplicación en "Super Rápida".
Para finalizar, quiero agradecer a todos mis alumnos que durante este año me permitieron mostrar mi trabajo y compartir muchos momentos de reflexión los cuales dieron sus frutos creando una arquitectura sólida en cuanto a performance, la cual vamos a mejorar al próximo año aumentando la seguridad, que son los principales problemas al cual debemos enfocarnos y en el cual trato de aportar algo.
Etiquetas:
.NET,
Arquitectura,
Asíncrono,
ASP.NET,
Back-End,
CSS,
CSV,
Desarrollo Web,
Desconectado,
Frameworks,
Front-End,
HTML5,
Javascript,
Lduenas,
Librerías,
Ligero,
Patrones,
Performance,
Plantillas,
Presentación
El Libro del Día: WebRTC Cookbook
El Libro del Día: 2016-12-21
Titulo: WebRTC Cookbook
Autor: Andrii Sergiienko
Editorial: Packt
Nro Paginas: 230
Capítulos:
Chapter 1: Peer Connections
Chapter 2: Supporting Security
Chapter 3: Integrating WebRTC
Chapter 4: Debugging a WebRTC Application
Chapter 5: Working with Filters
Chapter 6: Native Applications
Chapter 7: Third-party Libraries
Chapter 8: Advanced Functions
Descarga:
WebRTC_Cookbook
Titulo: WebRTC Cookbook
Autor: Andrii Sergiienko
Editorial: Packt
Nro Paginas: 230
Capítulos:
Chapter 1: Peer Connections
Chapter 2: Supporting Security
Chapter 3: Integrating WebRTC
Chapter 4: Debugging a WebRTC Application
Chapter 5: Working with Filters
Chapter 6: Native Applications
Chapter 7: Third-party Libraries
Chapter 8: Advanced Functions
Descarga:
WebRTC_Cookbook
Etiquetas:
Advanced,
Andrii Sergiienko,
Application,
Communication,
Cookbook,
Debugging,
Filters,
Functions,
HTML5,
Integrating,
Javascript,
Libraries,
Libros,
Native Apps,
Packt,
Peer Connections,
Real-time,
Security,
WebRTC
martes, 20 de diciembre de 2016
El Libro del Día: Getting Started with WebRTC
El Libro del Día: 2016-12-20
Titulo: Getting Started with WebRTC
Autor: Rob Manson
Editorial: Packt
Nro Paginas: 114
Capítulos:
Chapter 1: An Introduction to Web-based Real-Time Communication
Chapter 2: A More Technical Introduction to Web-based Real-Time Communication
Chapter 3: Creating a Real-time Video Call
Chapter 4: Creating an Audio Only Call
Chapter 5: Adding Text-based Chat
Chapter 6: Adding File Sharing
Chapter 7: Example Application 1 – Education and E-learning
Chapter 8: Example Application 2 – Team Communication
Descarga:
Getting_Started_with_WebRTC
Titulo: Getting Started with WebRTC
Autor: Rob Manson
Editorial: Packt
Nro Paginas: 114
Capítulos:
Chapter 1: An Introduction to Web-based Real-Time Communication
Chapter 2: A More Technical Introduction to Web-based Real-Time Communication
Chapter 3: Creating a Real-time Video Call
Chapter 4: Creating an Audio Only Call
Chapter 5: Adding Text-based Chat
Chapter 6: Adding File Sharing
Chapter 7: Example Application 1 – Education and E-learning
Chapter 8: Example Application 2 – Team Communication
Descarga:
Getting_Started_with_WebRTC
Etiquetas:
API,
Application,
Audio Only Call,
Chat,
Communication,
E-learning,
Example,
File Sharing,
Getting Started,
HTML5,
Javascript,
Libros,
Packt,
Peer-to-Peer,
Real-time,
Rob Manson,
Text-based,
Video Call,
WebRTC
sábado, 22 de octubre de 2016
Entrenamiento - Seminarios de JavaScript
Seminarios de JavaScript
Como muchos saben ya no pienso dictar Cursos ni Talleres Semanales de ASP.NET MVC & JavaScript, pero en el último Taller que acaba mañana Domingo 23 de Octubre hay temas que no pudimos ver que me gustaría tratarlos detalladamente por lo cual los voy a tocar a manera de Seminarios.
Temas de los Seminarios
1. WebRTC
2. WebGL
3. Maps (Google, Yahoo, Bind, etc)
4. Asynchronous & Parallel Programming (Promises, WebWorkers y ServiceWorkers)
5. Web Components (Polymer)
6. Functional Programming: map, filter, reduce (Elm, ReactiveX)
7. Reactive Programming (React, Flux y Redux)
8. Chrome Apps & Progressive Web Apps (Google)
9. Mobile Native Apps (iOS, Andorid, Xamarin)
10. Hybrid Mobile Apps (Titanium, NativeScript, PhoneGap)
11. Security (Obfuscation, XSS, CSRF, etc)
12. Image File Formats (BMP, JPG, PNG, WebP)
13. Native Data Export (XLSX, DOCX, PPTX, PDF)
14. High Performance Web Site (The Definitive Rules)
Observación
Todos los temas son de nivel avanzado, sobre todo los 4 últimos.
Como muchos saben ya no pienso dictar Cursos ni Talleres Semanales de ASP.NET MVC & JavaScript, pero en el último Taller que acaba mañana Domingo 23 de Octubre hay temas que no pudimos ver que me gustaría tratarlos detalladamente por lo cual los voy a tocar a manera de Seminarios.
Temas de los Seminarios
1. WebRTC
2. WebGL
3. Maps (Google, Yahoo, Bind, etc)
4. Asynchronous & Parallel Programming (Promises, WebWorkers y ServiceWorkers)
5. Web Components (Polymer)
6. Functional Programming: map, filter, reduce (Elm, ReactiveX)
7. Reactive Programming (React, Flux y Redux)
8. Chrome Apps & Progressive Web Apps (Google)
9. Mobile Native Apps (iOS, Andorid, Xamarin)
10. Hybrid Mobile Apps (Titanium, NativeScript, PhoneGap)
11. Security (Obfuscation, XSS, CSRF, etc)
12. Image File Formats (BMP, JPG, PNG, WebP)
13. Native Data Export (XLSX, DOCX, PPTX, PDF)
14. High Performance Web Site (The Definitive Rules)
Observación
Todos los temas son de nivel avanzado, sobre todo los 4 últimos.
Información
Frecuencia: 1 vez al mes
Día: Último Domingo de cada mes
Horario: 9:00 am a 2:00 pm.
Inicio: 27 de Noviembre del 2016
Duración: 5 horas
Inversión: 100 Soles cada Seminario
Día: Último Domingo de cada mes
Horario: 9:00 am a 2:00 pm.
Inicio: 27 de Noviembre del 2016
Duración: 5 horas
Inversión: 100 Soles cada Seminario
Inscripciones: Luis.duenash@gmail.com
Mínimo de Participantes: 15
Máximo de Participantes: 30
Lugar: Por confirmar (se enviará una semana antes a los registrados)
Comentario Final
Los interesados en participar en el Taller tienen que registrarse enviándome un correo con el Asunto: "Seminarios de JavaScript" e indicar su Nombre Completo y si es ex-alumno o no.
Además quiero resaltar que es obligatorio participar en todos los seminarios, no se puede faltar a ninguno, el que falta quedará retirado para los siguientes seminarios y se le dará la oportunidad a otros interesados.
Los que nunca han llevado algún curso conmigo, es su oportunidad para que vean la diferencia de nivel y profundidad de los temas tratados.
Cada seminario tendrá su PPT y sus respectivos demos o ejemplos muy interesantes y reales.
Para los que estaban pidiendo participar en algún curso o taller solo queda estos Seminarios una vez al mes con lo cual estaría cubriendo casi todo el "Desarrollo Web Desconectado con JavaScript orientado a Performance" que iniciamos hace unos años y donde cubrimos casi todas las APIs hasta la actualidad.
Etiquetas:
Asynchronous,
Components,
Data Export,
Entrenamiento,
Functional,
High Performance,
Hybrid,
Images,
Javascript,
Maps,
Mobile,
Parallel,
Progressive,
Promises,
reactive,
Security,
WebGL,
WebRTC,
WebWorkers
Suscribirse a:
Entradas (Atom)






















