Mostrando las entradas con la etiqueta Web Performance. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Web Performance. Mostrar todas las entradas

domingo, 29 de mayo de 2022

Los 10 Mandamientos de la Performance en Desarrollo Web por Luis Duenas (Versión Posters)

 Poster en Castellano


Poster en Ingles



Los 10 Mandamientos de la Performance en Desarrollo Web por Luis Duenas

Comentario Inicial

Un problema frecuente en la programación es la falta de rendimiento o velocidad (Performance) en aplicaciones web y esto se debe a que existen principios que si no los sigues te esperan muchos problemas (aunque al programador no le afecta directamente sino mas bien a los usuarios).

Muchos creen conocer o programar bien pero desconocen estas reglas esenciales en el desarrollo web, por este motivo voy a publicar los 10 mandamientos de la performance en el desarrollo web que te ayudaran a mejorar tus aplicaciones.

Síntomas que indican que los programadores no conocen sobre Performance Web

A continuación te listo algunos síntomas que indican que los programadores no conocen sobre performance web:

1. Las paginas web demoran en cargar

2. Las consultas demoran en mostrarse, sobre todo si tienen cientos o miles de registros

3. La grabación de un registro con muchos campos demora

4. La grabación de varios registros demora

5. La subida de un archivo grande se demora mucho y sobre todo cuando tiene muchos Megabytes nunca se sube y se cae

6. Cuando hay poco ancho de banda no carga la data.

7. Si son muchas imágenes se muestran con lentitud, etc.

Los 10 Mandamientos del Compendio del Catecismo de la Iglesia Católica

Antes de iniciar con la lista, recordemos los 10 Mandamientos del Compendio del Catecismo de la Iglesia Católica:

1. Amarás a Dios sobre todas las cosas.

2. No tomarás el nombre de Dios en vano.

3. Santificarás las fiestas.

4. Honrarás a tu padre y a tu madre.

5. No matarás.

6. No cometerás actos impuros.

7. No robarás.

8. No darás falsos testimonios ni mentirás.

9. No consentirás pensamientos ni deseos impuros.

10. No codiciarás los bienes ajenos.

Los 10 Mandamientos de la Performance en Desarrollo Web

1. En desarrollo Web, elegirás la Performance sobre todas las demás características, tales como Seguridad, Reusabilidad, Mantenibilidad, Responsividad, etc.

2. No harás request en vano. Ni al Servidor Web ni a la Base de Datos, ni a cualquier recurso del Backend. Para esto debes agrupar llamadas al Servidor Web y agrupar lógica en solo un Procedimiento Almacenado en vez de varios.

3. Ahorraras al máximo el ancho de banda. Al hacer get (recibir) o post (enviar) debes reducir los datos seleccionando el mejor formato entre los cuales están: HTML, XML, JSON, CSV, Bytes. A veces es necesario comprimir y descomprimir si no demora.

4. Honrarás la simplicidad en vez de la complejidad y la generalidad en vez de la especificidad del desarrollo. Esto te permitirá reducir el código y te servirá para muchos casos de uso.

5. No matarás la Memoria usando decenas o cientos de variables de todo tipo y funciones en la pila usando excesivas capas de código. También, no matarás la CPU usando bucles excesivos ni recursividad sobre todo en el servidor.

6. No cometerás exceso en el uso de librerías y frameworks que harán mas pesado tu desarrollo. Es preferible crear solo la funcionalidad que necesites en vez de usar algo que viene con cientos de funciones que no las vas a usar y te consumirán mucha memoria.

7. No bloquearas los recursos del backend en llamadas concurrentes al servidor web, base de datos y sistema de archivos. Para esto debes hacer uso de programación asíncrona, paralela y trabajar en memoria en vez de disco.

8. No mentirás a tus usuarios diciendo que las aplicaciones web demoran porque no están locales y hay que viajar hasta el servidor web justificando la demora por falta de conocimiento de técnicas de performance.

9. No consentirás que ninguna tarea demore aunque el ancho de banda sea reducido, para lo cual debes hacer uso de trabajo por bloques sea al enviar o recibir. Puedes optimizar imágenes, crear paquetes de bytes, comprimir, etc.

10. No codiciarás ni envidiarás el código de terceros tales como Librerias y/o Frameworks aunque sea de grandes empresas. Lo mejor es que aprendas a crear tus propios recursos y el desarrollo será cada vez mas rápido. No te dejes influenciar por lo que la mayoría hace y trata de comprobar si es verdad lo que se dice.

Comentario Final

Los que no respeten dichos mandamientos serán considerados pecadores del desarrollo web y les espera el infierno de la lentitud de su aplicación, quejas de los usuarios y la consiguiente perdida para el negocio.

Al igual que en la religión donde la mayoría de personas no cumplen los mandamientos de la Iglesia Católica (siendo católicos), en el desarrollo web los programadores no cumplen ninguna de estas reglas y después se quejan de que sus sistemas están lentos.

Sino quieres que a ti o algún conocido le espere el Infierno de la web comparte esta publicación para que los programadores lo tengan en cuenta.

lunes, 12 de julio de 2021

Entrenamiento - Ultimo Curso Virtual Online de .NET

 Ultimo Curso Virtual Online de .NET

Como muchos de mis alumnos saben a partir del 2022 solo enseñare Python & Machine Learning, razón por la cual este será el último curso de .NET, los interesados en aprender una nueva forma de programar orientado a la performance usando código nativo tienen una interesante oportunidad de llevar el Ultimo Curso Virtual Online de .NET

1. Contenido del Programa

.NET Web Developer (Sin Capas con Cadenas)

Mes 01: ADO.NET y Winforms

Mes 02: Web MVC & JavaScript Parte 1

Mes 03: Web MVC & JavaScript Parte 2

Mes 04: Web Services (WCF, Web API, Web MVC) y Web Sockets

Mes 05: Integración de Aplicaciones con Web Services & WebSockets

con clientes WinForms, Web MVC y Android

2. Horario y Fecha de Inicio

- Horario: Martes y Jueves de 7:00 pm a 11:00 pm (Hora Perú)

- Fecha de Inicio: Martes 03 de Agosto del 2021

3. Duración del Programa

- Duración: 160 horas

- Tiempo: 5 meses

- Frecuencia: 8 horas semanales (32 horas mensuales)

4. Inversión y Forma de Pago

- Mensual: 200 nuevos soles (USD 60)

- Total 5 meses: 1000 nuevos soles (USD 300)

- Forma de Pago: En efectivo, al inicio de cada mes (200 soles)

- La cuenta del Banco en Perú se enviará a los seleccionados

- Para los alumnos de otros países será por Western Union

5. Registro

- Los interesados deberán enviar un mail a: Luis.duenash@gmail.com con los sgtes datos:

Titulo del mail:

- Ultimo Curso Virtual Online de .NET

Contenido del mail:

- Nombre Completo: Apellido Paterno, Apellido Materno y Nombres

- Documento de Identidad: DNI, Cédula, etc.

- Lugar de Procedencia: Ciudad y País

- Ha llevado Cursos antes conmigo: (No / Si), si es Si en donde

- Nivel de Experiencia en Desarrollo: Básico / Intermedio / Avanzado

- Conoce .NET: Si/No

- Comentario: Breve resumen de porque quiere llevar el curso.

6. Advertencia

- Solo deberán enviar correo los que estén bien informados de como son mis cursos, mi metodología y arquitectura.

- No se aceptan personas susceptibles o sensibles a fuertes comentarios

- No hay ningún tipo de certificación o diploma de participación (por el momento)

- Habrá un filtro de ingreso y se enviará el mail con el número de cuenta a pagar solo a los seleccionados.

martes, 4 de agosto de 2020

Entrenamiento - Primer Programa Anual Virtual en .NET & Python

Primer Programa Anual Virtual en .NET & Python (PAVNAP V1.0)


1. Contenido del Programa


Parte 1: .NET Web Developer (Sin Capas con Cadenas)

Mes 01: ADO.NET y Winforms
Mes 02: Web MVC & JavaScript Parte 1
Mes 03: Web MVC & JavaScript Parte 2
Mes 04: Web Services: WCF, Web API, Web MVC
Mes 05: Web Sockets
Mes 06: Integración de Aplicaciones con Web Services & WebSockets
con clientes WinForms, Web MVC, Android & iOS

Parte 2: Python Developer & Machine Learning

Mes 07: Aplicaciones Windows con PyQT, PyOdbc, Pandas Parte 1
Mes 08: Aplicaciones Windows con PyQT, PyOdbc, Pandas Parte 2
Mes 09: Aplicaciones Web con Flask
Mes 10: Aplicaciones Web con Django
Mes 11: Computer Vision con OpenCV, Dlib, Keras, Tensorflow
Mes 12: Procesamiento de Lenguaje Natural (NLP) con NLTK, Keras, Tensorflow

2. Horario y Fecha de Inicio

- Horario: Martes y Jueves de 8:00 pm a 11:00 pm (Hora Perú)
- Fecha de Inicio: Martes 01 de Setiembre del 2020

3. Duración del Programa

- Duración: 288 horas
- Tiempo: 12 meses
- Frecuencia: 6 horas semanales (24 horas mensuales)

4. Inversión y Forma de Pago

- Mensual: 200 nuevos soles (USD 60)
- Total 12 meses: 2400 nuevos soles (USD 720)
- Forma de Pago: En efectivo, al inicio de cada mes (200 soles)
- La cuenta del Banco en Perú se enviará a los seleccionados

5. Registro

- Los interesados deberán enviar un mail a: Luis.duenash@gmail.com con los sgtes datos:
Titulo del mail:
- Primer Programa Anual Virtual en .NET & Python
Contenido del mail:
- Nombre Completo: Apellido Paterno, Apellido Materno y Nombres
- Documento de Identidad: DNI, Cédula, etc.
- Lugar de Procedencia: Ciudad y Pais
- Ha llevado Cursos antes conmigo: (No / Si), si es Si en donde
- Nivel de Experiencia en Desarrollo: Básico / Intermedio / Avanzado
- Conoce .NET y/o Python: Si/No
- Comentario: Breve resumen de porque quiere llevar el curso.

6. Advertencia

- Solo deberán enviar correos los que estén bien informados de como son mis cursos, mi metodología y arquitectura.
- No se aceptan personas susceptibles o sensibles a fuertes comentarios
- No hay ningún tipo de certificación o diploma de participación (por el momento)
- Habrá un filtro de ingreso y se enviará el mail con el número de cuenta a pagar solo a los seleccionados

miércoles, 4 de mayo de 2016

Entrenamiento - Nuevas Vacantes Segundo Taller de ASP.NET MVC & JavaScript

Nuevas Vacantes para el Segundo Taller de ASP.NET MVC & JavaScript

A todos los interesados en seguir el Taller que iniciamos este Domingo, les comunico que debido a que varias personas que se registraron y no llegaron a asistir, hay varias vacantes para poder seguir el entrenamiento que va a ser extremo.

Este Domingo (Día de la Madre) si habrá clases y los temas en homenaje a la madres de todos los desarrolladores serán:

1. Creación de Serializadores (desde DataTables y Listas de Objetos)
- Serializador XML
- Serializador JSON
- Serializador CSV

2. Llamadas Asíncronas al Servidor con XmlHttpRequest (XHR2)
- Textos
- Blob
- ArrayBuffer

Además presentaremos los Utilitarios de la Semana (como les prometí ese día):
- Convertidor MP3 (basado en Lame)
- Lector de Tablas de Páginas Web (incluyendo si están con Login o Seguridad de Formularios)

Finalmente, les copiaré mas de 100 Libros de .NET, HTML, JavaScript, CSS, etc.

Los interesados, ya saben que el costo para ex-alumnos que hubieran llevado conmigo un curso no hace mas de 5 años es de 200 soles, para los demás es de 300 soles. Solo tienen que enviar un mail a Luis.duenash@gmail.com para registrarlos y enviarles la dirección exacta que esta cerca a ISIL de Salaverry.

viernes, 8 de abril de 2016

Entrenamiento - Cierre Inscripciones Segundo Taller de ASP.NET MVC & JavaScript

Cierre de Inscripciones del Segundo Taller de ASP.NET MVC & JavaScript

A todos los interesados en el Segundo Taller de ASP.NET MVC & JavaScript que se realizará los Domingos de 8:00 am a 2:00 pm se les comunica que solo hasta mañana Sábado se podrán registrar enviando un mail a Luis.duenash@gmail.com

A todos los registrados gracias por su interés, ya que en solo una semana estaba casi lleno. Se estará enviando un mail con la dirección exacta una semana antes del inicio que es el Domingo 1 de Mayo.

Saludos a todos.

jueves, 20 de agosto de 2015

El Libro del Día: Mastering jQuery

El Libro del Día: 2015-08-20

Titulo: Mastering jQuery
Autor: Alex Libby
Editorial: Packt
Nro Paginas: 400

Capítulos:
Chapter 1: Installing jQuery
Chapter 2: Customizing jQuery
Chapter 3: Organizing Your Code
Chapter 4: Working with Forms
Chapter 5: Integrating AJAX
Chapter 6: Animating in jQuery
Chapter 7: Advanced Event Handling
Chapter 8: Using jQuery Effects
Chapter 9: Using the Web Performance APIs
Chapter 10: Manipulating Images
Chapter 11: Authoring Advanced Plugins
Chapter 12: Using jQuery with the Node-WebKit Project
Chapter 13: Enhancing Performance in jQuery
Chapter 14: Testing jQuery

Descarga:
Mastering_jQuery