La Respuesta

Acabo de leer la noticia:

(teahorrounclick) …en la cual se informa que Estados Unidos, junto a otros laboratorios de otros países, usando tecnología de Intel y Microsoft está creando una súper inteligencia artificial que va a ser entrenada con todo el conocimiento científico de la humanidad. El objetivo es que sepa buscar correlaciones, conectar datos y realizar descubrimientos que sirva a la comunidad científica a grandes avances en la ciencia.

Mi opinión, vamos a ver un nuevo renacimiento a nivel civilización (ya empezó con Internet) y la evolución se acelera. El problema sigue siendo el mismo de siempre, el control de este poder y el uso que se le dé.

Imagen creada con ChatGPT y Dall-E 3 con el Prompt «Quiero una imagen inspirada en el relato corto «Answer» de Fredric Brown» y ChatGPT generó el siguiente prompt «A futuristic scene inspired by the short story «Answer» by Fredric Brown, featuring a giant supercomputer connected to smaller computers across various galaxies. The supercomputer has a central glowing core and intricate wiring, symbolizing its power and complexity. In the background, a starry night sky with numerous galaxies and nebulae is visible, adding to the cosmic scale of the scene. The environment should look advanced and otherworldly, with glowing lights and holographic displays, depicting the moment of the universe’s greatest minds connecting.»

Como nota interesante vemos el pequeño relato de Fredric Brown llamado «Answer (La respuesta)» que viene al caso.

Dwar Ev soldó ceremoniosamente la última conexión con oro. Los ojos de una docena de cámaras de televisión le contemplaban y el subéter transmitió al universo una docena de imágenes sobre lo que estaba haciendo.

Se enderezó e hizo una seña a Dwar Reyn, acercándose después a un interruptor que completaría el contacto cuando lo accionara. El interruptor conectaría, inmediatamente, todo aquel monstruo de máquinas computadoras con todos los planetas habitados del universo —noventa y seis mil millones de planetas— en el supercircuito que los conectaría a todos con una supercalculadora, una máquina cibernética que combinaría todos los conocimientos de todas las galaxias.

Dwar Reyn habló brevemente a los miles de millones de espectadores y oyentes. Después, tras un momento de silencio, dijo:

—Ahora, Dwar Ev.

Dwar Ev accionó el interruptor. Se produjo un impresionante zumbido, la onda de energía procedente de noventa y seis mil millones de planetas. Las luces se encendieron y apagaron a lo largo de los muchos kilómetros de longitud de los paneles.

Dwar Ev retrocedió un paso y lanzó un profundo suspiro.

—El honor de formular la primera pregunta te corresponde a ti, Dwar Reyn.

—Gracias —repuso Dwar Reyn—. Será una pregunta que ninguna máquina cibernética ha podido contestar por sí sola.

Se volvió de cara a la máquina.

—¿Existe Dios?

La impresionante voz contestó sin vacilar, sin el chasquido de un solo relé.

Sí, ahora existe un Dios.

Un súbito temor se reflejó en la cara de Dwar Ev. Dio un salto para agarrar el interruptor.

Un rayo procedente del cielo despejado le abatió y produjo un cortocircuito que inutilizó el interruptor.

© Fredric Brown: Answer (La respuesta). Publicado en Angels and Spaceships, 1954. Traducción de María Teresa Segur.

¿Estamos creando un Dios?

¿Estamos creando Skynet?

¿Estamos creando Matrix?

A lo mejor sólo estamos creando un Google que sabe hablarlos.

Lo que yo creo es que va a ser un avance importante en el conocimiento humano, sea con este AuroraGPT o sea con lo que sea. La potencia de esta tecnología es, a priori, apabullante (en ambos sentidos).

Ahora si que vas a ver lo que es un Black Friday

OData y SAP Gateway

Como el objetivo de este Blog es aprender y aportar conocimiento para que el que quiera aprenda, voy a explicar conceptos que, pareciendo básicos, puede ayudar a la gente a entender el ecosistema y las funcionalidades.


Serie de Artículos sobre OData

Este artículo pertenece a una serie de artículos que se van complementando poco a poco como itinerario de conocimiento:


¿Qué es OData?

OData (Open Data Protocol) es una especificación abierta que define un conjunto de mejores prácticas para la construcción y el consumo de APIs RESTful. Fundamentado en protocolos web estándar HTTP, ATOM y JSON, permite a los desarrolladores exponer y consumir datos a través de servicios web de una manera simple y estándar.


Pero ¿Cuándo y por Quién?

Un poco de historia nos lleva de vuelta al año 2007, cuando Microsoft lideró el desarrollo de OData como parte de su iniciativa de plataforma de datos ADO.NET. En 2012, la Organización para el Avance de Estándares de Información Estructurada (OASIS) tomó el control de la norma, y desde entonces, su adopción y desarrollo han sido constantes.


Funcionalidad

Su capacidad para tratar los datos como recursos RESTful le otorga un papel vital en la construcción de aplicaciones modernas que necesitan interactuar con bases de datos, no solo para la simple lectura y escritura de datos, sino también para operaciones más complejas. OData soporta operaciones CRUD (Crear, Leer, Actualizar, Eliminar), así como consultas más complejas a través de sus capacidades de filtrado, ordenamiento, agrupación y paginación.


OData Entidad y Relaciones

Una entidad en OData es una unidad de datos que representa un objeto del mundo real. Cada entidad tiene un conjunto de propiedades y se identifica de forma única mediante una clave. Pudiendo hacer acciones sobre ella (CRUD). Por ejemplo la entidad Pedido Ventas, Producto, Interlocutor Comercial, etc.

Las entidades a menudo tienen relaciones entre ellas. Por ejemplo en la entidad Pedido de Ventas podemos tener relacionadas las entidades Cliente, Datos Organizativos, Notas, Anexos, etc. De esa forma podemos consultar la entidad padre y además las relaciones que se requieran.


OData ventajas sobre el REST puro

En OData tenemos las siguientes Ventajas:

  • Exploración de Datos: Las relaciones entre entidades en OData permiten a los clientes explorar el gráfico de datos de una manera estructurada y coherente.
  • Consultas Complejas: Con OData, puedes hacer consultas más complejas que abarcan múltiples entidades y sus relaciones, todo en una única petición.
  • Metadatos: OData proporciona un documento de metadatos que describe todas las entidades, propiedades y relaciones.
  • Estándar y Consistencia: Al tener un modelo de datos claramente definido con entidades y relaciones, OData ofrece una forma estándar de interactuar con el API, lo cual simplifica el desarrollo y el mantenimiento.
  • Optimización del Tráfico: Al poder seleccionar sólo las entidades y relaciones específicas que necesitas, se reduce la cantidad de datos transferidos sobre la red.

En una API REST puro, cada recurso (que es similar a una entidad) se accede mediante su propia URL. No hay una forma estándar de describir las propiedades o las relaciones del recurso, lo que puede llevar a una mayor complejidad para entender la estructura y la funcionalidad del API. En REST puro, las relaciones entre recursos a menudo se manejan mediante URL o IDs incrustados en las respuestas, sin una forma estándar de describir o navegar estas relaciones. Esto puede complicar las operaciones como filtrado, ordenación o selección de campos para datos relacionados


Ejemplo de uso de OData

Para poder probar OData podemos usar la guía oficial de OData en su web, usando Postman en el apartado Getting Started – Learning OData on Postman.

Ejemplo de ejecución en postman del proyecto de OData https://www.postman.com/collections/bf7d9130241aaa7160d8

OData en SAP – SAP Gateway

Ahora bien, ¿Cómo se enmarca OData en el ecosistema SAP? Aquí es donde entra en juego SAP Gateway.

SAP Gateway es un componente clave que facilita el camino para conectar dispositivos, entornos y plataformas no-SAP a sistemas SAP, de una forma segura y escalable. SAP Gateway aprovecha OData para exponer los datos y las funcionalidades de los sistemas SAP a aplicaciones basadas en web, móviles y otras plataformas.

Comparativa entre comunicaciones directas o por medio de SAP Gateway y OData

La integración de OData en SAP Gateway permite la creación de interfaces de usuario y la fácil exposición de la funcionalidad de los sistemas SAP. Esto ha allanado el camino para un desarrollo más rápido y eficiente de aplicaciones modernas que consumen datos y funcionalidades de SAP.


Funcionalidades y limitaciones de SAP Gateway

Las funcionalidades que le dan poder a SAP Gateway son:

  1. Exposición de servicios OData: Gateway puede exponer datos y funcionalidades de SAP como servicios OData, permitiendo el desarrollo de aplicaciones web y móviles.
  2. Seguridad y Autorización: Proporciona control granular sobre qué datos y funciones están disponibles para qué usuarios a través de la gestión de roles y autorizaciones de SAP.
  3. Soporte para múltiples formatos de datos: Puede proporcionar datos en formatos JSON y XML, que son comúnmente utilizados en aplicaciones web y móviles.

Desde la introducción de SAPUI5 y Fiori, el papel de OData en el ecosistema SAP ha ganado aún más importancia. SAPUI5 y Fiori se basan en servicios OData para recuperar datos y funcionalidades de los sistemas SAP.

A pesar de sus muchas ventajas, SAP Gateway tiene algunas limitaciones. Por ejemplo, puede no ser la mejor opción para escenarios que requieran transacciones de alta velocidad o una gran cantidad de datos en tiempo real. Además, el rendimiento puede verse afectado si se manejan grandes volúmenes de datos a través de servicios OData.

Transacciones para el uso de SAP Gateway

Existen varias transacciones que son esenciales al trabajar con SAP Gateway. Algunas de las más importantes incluyen:

  • SEGW: SAP Gateway Service Builder, utilizado para desarrollar, probar y activar los servicios oData.
  • /IWFND/MAINT_SERVICE: Para activar y mantener los servicios.
  • /IWFND/ERROR_LOG: Para revisar los registros de error de Gateway.
  • /IWFND/APPS_LOG: Herramienta de rastreo para solucionar errores de aplicaciones en SAP Gateway.
  • /IWBEP/REG_MODEL: Para registrar los modelos de datos.
  • /IWBEP/TRACES: Permite la activación de trazas para servicios oData.
  • /IWFND/CACHE_CLEANUP: Útil para limpiar el caché de metadatos.
  • /IWBEP/CACHE_CLEANUP: Limpia el caché del modelo de datos.
  • SM59: Utilizada para configurar conexiones RFC.
  • SICF: Para configurar y activar los servicios HTTP necesarios para la comunicación oData.

Estas transacciones son cruciales para trabajar con SAP Gateway, desde el desarrollo y mantenimiento de servicios hasta la depuración y el manejo de errores. Utilizarlas eficientemente permitirá una mejor implementación y gestión de servicios oData en el entorno SAP.

Algunos trucos que debes conocer:

  1. Utiliza la herramienta Gateway Client: La transacción /IWFND/GW_CLIENT te permite probar tus servicios directamente en el sistema SAP, lo cual es muy útil durante el desarrollo y la depuración.
  2. Depuración de servicios OData: Puedes depurar los servicios OData en Gateway utilizando la transacción /IWBEP/DEBUG_GW_SERVICE, lo cual es muy útil para solucionar problemas y optimizar tus servicios.
  3. F12 en el Navegador: Cuando estás en Fiori, por ejemplo, es muy útil abrir la consola de desarrollo de Chrome, Firefox, etc. Para saber las llamadas hacia el backend (Gateway) que realiza Fiori. Esto te da una idea del servicio llamado, la request lanzada y la respuesta recibida.

Y podría profundizar más en el uso y manejo de SAP Gateway pero como punto de partida y explicación del OData es más que suficiente. Espero que sea de ayuda, en caso de necesitar más información no dudéis en dejar comentarios en este artículo.


Si te interesa, suscríbete al blog por email

Ser Freelance

Aprovechando que ahora cumplo 13 años de Freelance (que es como decir autónomo pero más chulo), y después de pasar por muchos clientes, proyectos, consultoras y haber impartido un puñado de cursos de formación, voy a intentar dar mi opinión acerca de qué significa ser Freelance, en concreto en el mundo de la consultoría TI.

Freelances
Si los encuentra, no dude en contratarlos

¿Qué es ser Freelance?

Bueno, esto tiene varios puntos de vista.

El más pragmático es ser un trabajador autónomo que trabaja con contratos mercantiles y factura su trabajo realizado a un coste marcado en dicho contrato.

Por otro lado, también se podría decir que un Freelance es un loco, que decide salir del paraguas de una empresa sin su mochila de indemnización por despido, sus vacaciones pagadas, sus bajas pagadas, su plan de formación, su plan de carrera y todas las gestiones delegadas en el departamento de recursos humanos de la Empresa (eh! Espera! ¿Qué coño estoy haciendo?)

Afuera hace frío

Lo que yo entiendo como Freelance es un experto, un referente en su campo, al que contratar asesoramiento experto y para asegurar la consecución de los objetivos empresariales.

¿Cuál es la transacción para «Dar cera, pulir cera»?

No soy un mercenario

Yo no sé si seré un Freelance al uso o soy un caso raro, pero para mí ser Freelance no es ser un mercenario que no se implica en nada más que recibir un encargo, realizarlo y cobrar por ello.

Jóvenes freelances

Para nada, yo si me contrata un cliente o consultora me pongo en la piel de un empleado de dicha empresa. La forma de contrato es un mero formalismo. Somos un equipo con los objetivos que nos marquemos y vamos todos a una.


¿Cómo ha de ser un Freelance?

Bajo mi punto de vista, un Freelance debe tener un conjunto de las siguientes cualidades, no necesariamente todas:

  • Experiencia: Quizás la más subjetiva, porque, como vimos en la entrada Ser Consultor o en la Juniors y Seniors, los años no implican, necesariamente, aprendizaje y evolución.
  • Especialización: Ser un freelance es, o yo lo entiendo así, un especialista al que contratar porque no tienes nadie en la plantilla que haga ese trabajo. Tienes que buscar un nicho, lo suficientemente demandado pero sin demasiada oferta (en eso no puedo ayudarte).
  • Capacidad de aprender: Fundamental. Un freelance debe saber moverse entre la incertidumbre, dando un aspecto de absoluta seguridad y sabiendo adquirir conocimientos apalancándose en conocimiento ya adquirido previamente. A mi ponme a hacer procesos logísticos, de recursos humanos o lo que quieras. Seguro que algo saco.
  • Saber hablar en público: Fundamental. Tú eres tu escaparate, debes saber hablar en público ante audiencias pequeñas y medianas (lo de dar una conferencia ya es para otro rol)
  • Flexibilidad: Mi mantra al respecto es «Si me das flexibilidad, te doy flexibilidad». El objetivo no es trabajar 10 horas todos los días, es estar disponible por si te necesitan. A un freelance hay que medirle por el resultado, no por el tiempo y, si es así, la disponibilidad estará garantizada.
  • Seguridad: Seguridad en tí mismo, en tus capacidades, en tus palancas de conocimiento, en tu experiencia.
  • Asertividad: Según la RAE «Dicho de una persona: Que expresa su opinión de manera firme.» Tiene que ver con los anteriores puntos de Seguridad, Saber hablar en público.
  • Empatía: Saber leer lo que el otro necesita, ya sea el cliente, un compañero, tu manager, etc. Da igual, es una capacidad muy valiosa y poco valorada.
  • Networking: Es la palabra anglosajona de decir red de contactos, pero queda más chula. Es importantísimo contar con amigos, antiguos jefes, compañeros, clientes que te valoren. Nunca se sabe donde vas a terminar ni qué puertas se van a volver a abrir. O quien te va a llamar.
Imagen de relleno que he puesto para que quede chulo

¿Cómo empezar a ser Freelance?

Bueno, lo primero de todo es tener valor, como he dicho antes fuera puede hacer frío, y hay gente muy friolera por el mundo. Además del valor debes ser consciente de tus capacidades, tus habilidades y tu conocimiento, así como tu actitud ante los retos que te esperan.

Consultores saltando a ser Freelance. Alguno va sin el paracaídas puesto

Un consejo que suelo dar en estos casos es no saltar sin algo a lo que aferrarse. Es decir, consigue un proyecto de media/larga duración prevista donde te contraten como freelance, consigue un mentor, una empresa o un recruiter que te mueva siendo freelance. Para eso ya habrás tenido que demostrar que eres bueno, claro.

Además tendrás que conseguir una gestoría que te haga todo el papeleo de facturas, IRPF, IVA, asesoramiento fiscal y contable, etc.  (es un mundo maravilloso)

A nivel contable ten en cuenta que lo normal es que te paguen a 60 días, es decir, trabajas un mes y no cobras ese mes hasta dentro de dos. Eso solo es un problema al arrancar, pero tenlo en cuenta. Y pregunta el periodo de cobro que a veces es menos o más.

Llevo 90 días sin cobrar no tengo ni para patatas

Además, ten en cuenta que en factura, tendrás que poner un IRPF del 15% fijo, y si a final de año has cobrado bien (ojalá) te tocará devolver el IRPF que te toque, lo cual puede ser un palo. Tenlo en cuenta para evitar la sorpresa.

Hay más aspectos a tener en cuenta, aspectos más técnico/administrativos, pero veamos si os interesan y si es así incidimos en lo que veamos.