WSO2 API Manager como líder en la Forrester Wave

En estos días, actualizándome un poco de por donde anda WSO2, me he topado con este post. Y eso ha sido un notición.

Y es que para quien sabe qué es Forrester, que te considere que estás entre los líderes del mercado junto a grandes de la industria como IBM y Google ya es un reconocimiento en toda la extensión de la palabra.

La suite de WSO2 es de por si la mejor suite opensource del mercado para temas de integración e interoperabilidad, y ahora con el reconocimiento de su API Manager, pasa a liderar también el campo del desarrollo de las APIs, algo muy de moda en los tiempos que corren.

Aquellos cubanos interesados en probar la suite y adentrarse en este mundo pueden contactarme.

En el sector de la informática. ¿El conocimiento cuesta?

La respuesta rápida es que SÍ. Cuesta y bastante. Puede ser en horas/nalgas o puede ser un costo monetario que se tenga que desembolsar.

Un curso de 5d puede costar por persona hasta  1000EUR cuando el contenido es bueno y tiene asociado un entrenamiento práctico fuerte. Algunas otras empresas dan cursos de 2d para una herramienta por 400USD /persona. Y es que el conocimiento entregado en esos días puede ser luego invertido en N cantidad de proyectos lo que revierte rápidamente la “supuesta” pérdida económica generada por el pago del curso.

Además no es solo obtener el conocimiento y poder generar nuevos ingresos lo que se gana con recibir un entrenamiento o un curso, sino que se gana algo mucho más valioso que si no es recuperable: el tiempo.

Lo que se puede adquirir por si mismo en 6 meses o en 1 año de estudio y trabajo intenso, que te lo den en 1 o 2 semanas, es algo sumamente importante a tener en cuenta, el ahorro de tiempo es esencial cuando necesitas invertir ese conocimiento en desarrollo usando las nuevas tecnologías adquiridas. Además de que estar a la altura de la competencia, de las oportunidades y demandas del mercado es fundamental en estos tiempos.

Por eso cuando alguien me pregunta por el costo de un curso, la respuesta es: es caro. Pero eso se debe a que el conocimiento es bueno y el ahorro de tiempo en ganar ese conocimiento por si mismo es considerable.

Para determinar si necesidad un curso de una tecnología o no, algunas preguntas que te pueden ayudar son las siguientes:

  • En mi empresa, alguien tiene el conocimiento necesario cómo para usando dicha tecnología sacar un proyecto en un tiempo prudencial válido para mi y para mi cliente? Si la respuesta es SI, entonces no necesitas del curso pago.
  • De cuanto tiempo dispongo para terminar el trabajo que requiere de dicho curso? Si dispones de todo el tiempo del mundo, entonces no necesitas el curso, si tienes un cronograma apretado y no tienes el desarrollador con el conocimiento, entonces SI necesitas del curso pago.
  • Cuanto dinero estoy dispuesto a pagar por adquirir el conocimiento ya? Si no quieres pagar lo suficiente, entonces te irás por no recibir el curso o por un curso de 3xquilo, si quieres un curso bueno, debes estar dispuesto a pagar lo justo.
  • El personal con el conocimiento está disponible? Siempre es importante tener el personal con conocimiento sobre determinada tecnología, aunque no sea de tu empresa, tener identificado quien sabe de qué cosa, te puede sacar de más de un apuro. Linkedin te puede ayudar mucho en este sentido.
  • Qué es más rentable, invertir semanas o meses o años en asimilar la tecnología por mi mismo a determinado nivel, para luego dedicarle tiempo al proyecto, o pagar porque me den la tecnología, la capacitación, me ahorre el tiempo, y luego pueda desarrollar el proyecto? Aquí es que saques papel y lápiz y empieces a sumar y multiplicar. Cuantas horas invertirás con tus desarrolladores en adquirir un conocimiento, multiplica eso por lo que les pagas por hora, por la cantidad de trabajadores que pondrás en esta tarea. Si el tiempo y el costo te da menos que el curso felicidades. Adelante, no lo contrates. Si no te da la cuenta, ya sabes que hacer.
  • Si me ahorro el tiempo contratando un curso, luego podré recuperar el dinero gracias al tiempo ahorrado? Si tienes un cliente de esos que quieren las cosas para ya, y no tienes el conocimiento para cumplir las fechas, entonces necesitas el entrenamiento. Si tomas el curso, dejas contento al cliente y te paga bien, de seguro ya habrás pagado el costo del curso y además te quedó el conocimiento.

Esas son preguntas que te ayudarán a justificar ante tu junta directiva si vale la pena o no recibir un curso pago.

¿Por qué hace falta licitar el software?

Empecemos con un ejemplo de la calle, del normal que puede darse y que de seguro se ha dado.

Una empresa X necesita pintar las paredes de sus oficinas, el director de la empresa o alguien en la dirección conoce a una empresa Y, o mejor dicho en nuestro entorno una “cooperativa” que se dedica a la pintura.

Si ese directivo quiere ganarse unos pesos de más, puede hacer un convenio interno e ilegal con esa empresa Y y el trabajo que iba a costar 2000CUP, ponerlo en 5000 CUP, quedando esos 3000CUP repartidos entre el directivo de la empresa X y los de la empresa Y.  Así de sencillo se puede estafar al estado 3000CUP y quedarse en manos inescrupulosas.

En las empresas existen grupos o juntas o comités encargados de que esto no pase, lo sé, pero como determinar si el trabajo realmente vale 2000  o 3000 o 4000 o 5000 CUP, cómo se valora calidad/precio, cómo se sabe que se va a contratar a quien más calidad brinda por el valor que puede pagar la empresa, cómo garantizar que esa pintura no se caerá al primer aguacero que llegue, en fin….

NOTA: hoy casualmente me topo con este artículo que tiene 2 elementos fundamentales. Primero la falta de control sobre las solicitudes realizadas para rescatar o mejorar las viviendas o la construcción del convento, y segundo la contratación de una brigada cuentapropista sin antes haber realizado una licitación que garantizara calidad. Vean hasta donde llega la necesidad de licitar.

Continuar leyendo “¿Por qué hace falta licitar el software?”

Solución funcional cubana para monitorizar el transporte en tiempo real

Temas a tratar:

  1. Veremos lo que se ha hablado de este tema a nivel de país en los medios de prensa.
  2. Se verá una arquitectura de alto nivel de una posible solución arquitectónica a nivel de país o ministerio de transporte.
  3. Se mostrará la solución que actualmente tengo implementada y desplegada en una laptop usando un servidor de mapas local.

Empecemos!!!!!

En una entrada anterior comentaba sobre la posibilidad de monitorizar el transporte en la ciudad en tiempo real, no todo el transporte, pero si aquellos medios que tuvieran GPS y que fueran de servicio público, dígase el transporte de las empresas estatales, tanto interno como para el público.

Las ventajas serían varias, una que se me viene a la cabeza ahora es la del ahorro de combustible y otra sería la de mejorar el servicio de recogida en las paradas cumpliendo con horarios establecidos. Pensando un poco más en los que toman decisiones, cada empresa que tuviera una flotilla de vehículos podría monitorizar en todo momento su uso.

En cubadebate publicaron una entrada con un sistema que están desarrollando los JCC de las Tunas, y que fue publicada primeramente en su periódico provincial. Luego la publicaron en el Granma. La idea es la misma, pero no se dan detalles técnicos.

Como comentaba en la entrada anterior, hacer esta solución no es complicado, su arquitectura a muy muy alto nivel a nivel de ministerio o de país podría ser la siguiente:

Donde en dependencia del dimensionamiento de la cantidad de vehículos a seguir será la infraestructura a necesitar, tal vez para una empresa pequeña no se requiera clusterización y con 1 servidor para BD y 1 servidor para el WSO2 CEP o SP baste.

Continuar leyendo “Solución funcional cubana para monitorizar el transporte en tiempo real”

BUS de Identidad como herramienta de seguridad empresarial

Digamos que eres un ingeniero dedicado al desarrollo de software, y que trabajas para una empresa que se encarga de desarrollar software o para una empresa que tiene sistemas a los que les das mantenimiento. O bien puedes ser una persona encargada de buscar las mejores soluciones tecnológicas para tu empresa y mantenerla siempre actualizada, eficiente y segura.

En cualquier caso la llegada de un nuevo requerimiento de desarrollo de una nueva solución software pasa por los siguientes aspectos de seguridad que los muestro en forma de preguntas:

  1. Cómo se gestionarán los usuarios y los roles? En que mecanismo serán almacenados, BBDD, LDAP, ficheros, etc…?
  2. ¿Qué tipos de autenticación se brindarán, la típica de usuario/contraseña, se usará algún tipo de certificado digital, algún token, se usará alguna autenticación contra redes sociales como facebook, google, etc..?
  3. ¿Qué pasa con las BBDD que ya tenemos creadas de usuarios y roles de otras aplicaciones, no podemos reutilizarlas?¿Afectará en algo a las soluciones actuales si las uso?
  4. ¿En la empresa hay un LDAP, se podrá usar, lo uso?
  5. Mi empresa matriz gestiona la autenticación de forma centralizada, ¿podré conectar esta nueva aplicación a dicha autenticación?
  6. ¿Cómo logro que mis clientes, que no tienen por qué estar registrados en este nuevo sistema, puedan acceder al mismo y a sus funcionalidades sin tener que registrarlos?
  7. ¿Qué hago si me piden autenticación en múltiples pasos, para determinados usuarios o para determinados tipos de acceso?
  8. ¿Podré migrar los usuarios que tengo registrados en sistemas viejos a este sistema nuevo, qué tan complicado puede ser? ¿Cómo logro que los atributos de los usuarios de esos sistemas viejos se incluyan en el sistema nuevo?
  9. ¿Si ya mi ecosistema de aplicaciones va creciendo, cómo controlo los temas de seguridad de manera centralizada para no tener que estar entrando una por una a cada aplicación?
  10. En caso que un usuario cause alta o baja de la empresa, ¿tengo que ir sistema por sistema realizando la misma acción?
  11. Mis usuarios tienen que recordar una contraseña más, ¿sería posible lograr una única cuenta para todas las aplicaciones?

Continuar leyendo “BUS de Identidad como herramienta de seguridad empresarial”

Activa hoy la segunda prueba de datos de ETECSA

En el día de hoy ETECSA anunció por los programas televisivos en la mañana y a través del sitio de cubadebate que estaría realizando una prueba donde permitiría la compra “gratis” de un pequeño plan de 70MB para el uso durante el día entre los 8am y las 12m.

Este plan se puede activar a través de cualquiera de las siguientes vías:

  1. Marcar *133# y seguir las opciones del Menú, seleccionando el número que identifica la misma: Datos (1), Uso Diario (1) y Enviar (1).
  2. Acceder al portal MiCubacel (https://mi.cubacel.net) previo registro.

Para aquellos que quieran probarlo aquí van mis consideraciones:

  1. Son solo 70MB, no son 500 ni 1GB ni 2GB, con esto quiero decirles que si celular no está acostumbrado a conectarse a internet esos 70MB se le van a ir en actualizaciones del sistema y los programas actualizándose y sincronizándose con los servidores. No es culpa de ETECSA. Eso pasa porque no están preparados para la internet por datos móviles.
  2. Deben estar preparados para la internet por datos.
    Esto significa que deben tener programas como:
    “Internet Speed Meter Lite” que te mostrará la velocidad de subida y de bajada para que estés atento a si algo te consume datos o no;
    “GlassWire” que te llevará una estadística de qué programas consumen internet bien sea por datos o por wifi con periodos que puedes filtrar de minutos, horas, días y meses;
    “Datally” que crea una VPN interna bloqueando todo el uso de datos desde tu teléfono y te da la opción de que desbloquees el uso de datos solo para aquellas aplicaciones que quieres usar. O sea que si solo vas a usar Whatsapp es como si le dijeras al teléfono, prohíbo que todas las aplicaciones incluido el sistema operativo usen internet por datos móviles, con la excepción de Whatsapp.

De esta manera podrás usar tus 70MB en lo que realmente quieras, y no en lo que al teléfono le de la gana.

Monitorización del transporte en la ciudad. ¿En tiempo real?

Te has imaginado estar alguna vez parado/a en una parada, consultar tu teléfono y saber que el ómnibus que esperas llega en 5 minutos? 

Más allá del sueño, o la pesadilla, y de que te lo puedas imaginar en un futuro muy pero muy lejano la realidad es que complicado de implementar no es y explico:

  1. Se necesita tener GPS en cada ómnibus. Ya esto se está logrando al día de hoy en nuestro país, al menos en la capital. Lo que no funcionan en tiempo real pues no tienen como mandar su ubicación. Los datos son descargados al llegar a sus bases quizás con horas de retraso.
  2. Se necesita poder mandar la ubicación en tiempo real. Esto se puede lograr con dispositivos conectados a la red de datos, 2G o 3G, de ETECSA que cada cierto tiempo manden la ubicación obtenida del dispositivo GPS.
  3. Se necesita de un sistema capaz de recopilar todos los eventos generados por los dispositivos de los puntos 1 y 2, procesarlos, almacenarlos en BD relacional o no relacional, y tener facilidades para:
  • Permitir la subscripción a determinados eventos predefinidos, como puede ser que te notifiquen 5 minutos antes de que llegue el bus a la parada X.
  • Permitir la visualización en un mapa de la ubicación de determinado transporte.
  • Generar eventos complejos, como pueden ser notificaciones de accidentes, de retrasos, embotellamientos, detenciones no autorizadas de los bus, no detenerse en las paradas establecidas, etc, etc, etc…

El sistema capaz de permitir todo lo del punto 3 y más, también existe y es gratis bajo licencia Apache v2, se llama WSO2 Stream Processor.

Haciendo copy/paste a lo que dicen en el sitio:

“WSO2  Stream Processor  is a  Streaming SQL based, high performant, lightweight, open source stream processing platform, facilitating the creation of real-time, intelligent, actionable business insights, and data products for digital businesses. It allows you to collects events,  analyzes them in real-time, identify patterns, map their impacts, and react within milliseconds.”

En la práctica su funcionamiento es como sigue:

  1. Se tienen componentes que generan eventos, estos serían los dispositivos GPS en los ómnibus.
  2. Estos eventos son lanzados para cualquiera de las variadas vías de conexión que ofrece la herramienta: HTTP, Kafka,TCP,In-memory,WSO2 Event,Email,JMS,File,RabbitMQ,MQTT.
  3. Una vez que el evento llega usando Shiddi podemos manipularlo, no solo a el si no a todos lo que se hayan definido en una ventana de tiempo,  hasta que sea lanzado a un mecanismo de respuesta, tipo alerta, notificación o lo que sea.
  4. Lo interesante es que al tener almacenada la información en BD esta puede visualizarse en dashboards para generar reportes en tiempo real

Con una solución así los responsables del transporte podrían saber en cualquier momento del día cualquier información que necesiten.

Si alguien tiene dudas de la factibilidad de esta solución, solo tiene que ver este enlace donde se describe una especie de licitación o concurso público para resolver algunos problemas de transportación en Londres, Reino Unido, y WSO2 ganó con un demo de la solución. Y bueno una solución ya pulida la comentan en este otro enlace.

Nada que si de verdad nuestros directivos de la informática quieren informatizar el país no tienen excusa para no hacerlo. Solo voluntad y ganas de trabajar con la comunidad de desarrolladores que existe en nuestro país.

OpenBanking con WSO2 y cómo implementarla en Cuba.

En la una entrada previa vimos una breve introducción a qué era el OpenBanking, sus beneficios y como podría mejorar la experiencia del usuario cubano en los temas de banca, de aplicarse en nuestro país. En esta entrada veremos una implementación ya existente, las herramientas que usa y si es factible hacer algo similar en nuestro país.

El openbanking es un tema muy de moda en todo el mundo a raíz de nuevas regulaciones en la Unión Europea que se resumen en la PS2D. Lo principal de estas regulaciones son 2 elementos: normaliza/estandariza el uso de las APIs en los bancos y facilita el tema del comercio electrónico, pues hace que los bancos abran sus APIs de pago a 3ros. Ya sabemos que eso acá causará un miedo de “madre pa “alante” pero la realidad es así.  Seguridad por oscuridad (no saber cómo está implementada la seguridad) no sirve, lo seguro es lo que es público y aun así da problema violarlo. Nada de agarrar tijeras y picar el cable de red.   😀

Continuar leyendo “OpenBanking con WSO2 y cómo implementarla en Cuba.”

Segunda edición del TICS 2018 en Cuba.

El día 28 de junio del 2018, se realizó en nuestra capital la segunda edición del evento “Taller de informática y comunicaciones para la sociedad” TICS2018.
Este evento gestionado por el GEIC, Grupo Empresarial para la Informática y las Comunicaciones fue desarrollado en la sede central de los Joven Club de Computación y Electrónica.

Objetivo de la entrada: Determinar lo bueno y lo no tan bueno del evento.

El programa incluía las siguientes actividades:

  1. Conferencia “Tecnología BlockChain”. Del Dr. Miguel Katrib Mora. Duración de 50 minutos más 10 de debate.
  2. Conferencia “Propiedad Intelectual y el desarrollo del software”. De la Máster Juana Lourdes Vallín Sosa. Duración de 20 minutos más 10 de debate.
  3. Intervención de la UIC. De la vicepresidenta primera María Ester Alfonso Suárez. Duración 10 minutos
  4. Conferencia “La Nube, las plataformas y los nuevos modelos de negocio” De DESOFT impartida por su director general Luis Guillermo Fernández. Duración 10 minutos.
  5. Conferencia “Salud con todos y para todos”. De SOFTEL impartida por su directora general Ariadna Curbelo García. Duración 10 minutos
  6. Conferencia “Educación y Tecnología en Cuba, tarea de todos”. CINESOFT impartida por su director general Iván Barreto Gelles. Duración 10 minutos
  7. Conferencia “Experiencia de Joven Club en la implementación de alianzas en el sector de las TIC”. Por su subdirectora general Anamaris Solorzano Chacón. Duración 10 minutos.
  8. Conferencia “Ideas para la colaboración en el desarrollo de aplicaciones y servicios de software”. De XETID impartida por su director general Medardo Morales Martín. Duración 10 minutos y 10 minutos de debate.

Continuar leyendo “Segunda edición del TICS 2018 en Cuba.”