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

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

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.

12 comentarios:

  1. Muy importante en lo que se menciona en el artículo: arquitectura ligera y alto rendimiento. Y en el ultimo taller lo demostró.

    Una herramienta sin precedentes.

    ResponderBorrar
  2. Profesor me podría decir si hay cupos para sus seminarios o cursos
    gracias.

    ResponderBorrar
  3. Excelente aporte profesor...
    Muchas gracias por compartir sus conocimientos con todas las personas...

    Saludos...

    ResponderBorrar
  4. Gracias por la información compartida profe Luis.

    ResponderBorrar
  5. Profesor gracias por compartir sus investigaciones, la clase del último domingo nos presento técnicas muy interesantes. Muchas gracias.

    ResponderBorrar
  6. Profesor mis felicitaciones
    Sus aportes son uno de los mejores que he visto en lo que es rendimiento en .net y javascript
    Eres uno de los pocos que conozco que digan cosas que tengan sentido sean relevantes actuales y sobretodo reales no como el resto de farsantes, auto proclamados gurús, que abundan por ahí


    ResponderBorrar
  7. Profesor, como siempre innovando y enfocándose en la performance.
    Este año no pude estar en alguno de sus cursos pero sigo aplicando y manejando la misma filosofía que nos enseñó: no frameworks, si ellos lo pueden hacer nosotros también y mejor.

    ResponderBorrar
  8. Gracias Profesor por enseñarnos su metodología y que al poner en practica en mi trabajo se puede ver que el sistema es un bala.

    Nada de Frameworks de tercero que nos dificulta la vida.

    ResponderBorrar
  9. Gracias profesor por todos sus aportes, excelente presentación.

    Profesor me puede avisar si hay cupo para sus cursos y/o seminarios.

    Gracias

    ResponderBorrar
  10. Gracias profesor por el tremendo aporte que da a la industria del software en el Perú, he aprendido muchisimo de usted y junto con mis compañeros en PESACON aplicamos su metodología.
    Dios lo bendiga y gracias nuevamente

    ResponderBorrar