Thoughworks desde luego es una de las compañías que contribuyen a la comunidad y una de las cosas con las que contribuyen es con su Technology Radar. Ya van con la edicion 22.
Mola echarle un vistazo, para ver si molas con tus Practicas, Plataformas, Herramientas y Languages & Frameworks.
He dejado ahí el enlace a la versión en la lengua de la pérfida Albión, pero también la tenéis en Castellano.
Este radar tiene como novedad el que lo han hecho totalmente en remoto. Es lo que nos ha traído el COVID y que ya se quedará entre nosotros. Esta semana he recibido noticias de un montón de compañías que se vuelven remotas.
Voy a comentar qué cosas me parecen interesantes para mi de cada una de las secciones que componen el radar. Osea… info totalmente sesgada ;p.
Techniques
Adopt
Todo lo que mencionan aquí, salvo Microfrontend, lo aplicamos en Nextail:
- Applying product management to internal platforms
- Infrastructure as code
- Pipelines as code
- Pragmatic remote pairing
- Simplest possible feature toggle.
Trial
Mencionan Continuous delivery for machine learning (CD4ML). Nosotros no lo tenemos, pero es algo que tenemos en el radar.
Mencionan también Platform engineering product teams. Esto va a la par, o debiera ir a la par de hacer Product Management como ya he mencionado. Mencionan aquí a Team Topologies. Últimamente los oigo mucho… Me han dicho que el libro está muy bien.
Obviamente el COVID ha forzado a todo el mundo a Use “remote native” processes and approaches. Para nosotros no es un cambio ya que ya éramos una compañía remota.
Entre las herramientas que mencionan está Mural, y Jamboard. Esta última no la conocía y eso que es de Google. La primera si que había tenido ocasión de usarla en un Open Space virtual.
Para hacer pairing mencionan Visual Studio Live Share. Ese fue uno de los motivos para pasarme a VSCode desde Atom, pero la verdad… no lo hemos usado mucho.
Por completar indicar que para dibujar alguna vez hemos usado AWW App. Miro es una alternativa a Mural. Aquí una comparación.
Assess
A nivel de datos mencionan Data mesh. Nosotros estamos todavía en el Data Lake.
Declarative data pipeline definition: Nosotros no estamos ahí, ya que tenemos definidos los pipelines en código. Si tuviésemos la necesidad podríamos hacer el cambio fácilmente.
Preflight builds: Mencionan esta técnica como técnica intermedia entre mergear directamente a master y usar ‘feature branches’.
Hold
Legacy migration feature parity: Esto es algo que nosotros también aplicamos. Cuando metemos mano a partes ‘legacy’, evaluamos si hay algo que podemos quitar.
Log aggregation for business analytics: Nosotros tal y como recomiendan, no tiramos contra logs sino contra eventos de dominio.
Platforms
Adopt
Entre los Service Mesh recomiendan Istio.
Trial
Hydra: Lo dejo anotado para mi yo futuro. Es un Self-Hosted fully compliant open source OAuth2 server and OpenID connect provider.
OpenTelemetry: parece va cogiendo fuerza la unificación de los proyectos para trazing (observability vamos…).
Snowflake: para tener en el radar… (Has proven to be a robust SaaS big data storage, warehouse or lake solution for many of our clients).
Apache Pulsar: Para tener en el radar (It is an open source pubsub messaging/streaming platform, competing in a similar space with Apache Kafka). Nosotros usamos Kafka.
Assess
JupyterLab: Lo usamos.
MeiliSearch: No estaría mal echarle un ojo (It is a fast, easy-to-use and easyto-deploy text search engine).
Trillian: Para echarle un ojo (It is a cryptographically verifiable, centralized data store).
Hold
Node overload: Mencionan que ya la performance no puede ser una razón para elegir Node.js, ya que otros lenguajes han mejorado mucho en la programación asíncrona.
Tools
Adopt
Cypress: Esto quiero usarlo en Nx, pero todavía no he tenido ocasión.
Figma: He visto que ha cogido tirón entre los diseñadores que conozco. En Nx también han empezado a usarlo.
Trial
Dojo: Podría ser interesante de echarle un ojo (Aims to fix this by creating standard development environments, versioned and released as Docker images).
DVC: La mencionan como su herramienta favorita para manejar experimentos de ML. Está basada en Git.
Experiment tracking tools for machine learning. Mencionan que no hay ninguna herramienta que de momento gane. Entre las que mencionan nosotros echamos un ojo a MlFlow, pero no la usamos. De momento todo lo que tenemos es inhouse.
En relación a k8s, mencionan un par de herramientas: k9scli la cual porporciona un UI para practicamente todo lo que puedes hacer con kubectl; y kind que es una herramienta para correr k8s clusters en local (tiene integración con kubetest).
mkcert. Para mi yo futuro (It is a convenient tool for creating locally trusted development certificates).
Assess
Apache Superset: A esto podría ser interesante echarle un ojo. Se integra con Redshift (que usamos). It is a great business intelligence (BI) tool for data exploration and visualization to work with large data lake and data warehouse setups.
AsyncAPI: Esta me interesa mucho mirarla (It is an open source initiative to create a much needed event-driven and asynchronous API standardization and development tooling). Comentan que es algo al estilo de OpenAPI (lo que antes era Swagger).
lens: Otra herramienta para k8s. Puede ser interesante de mirar… (It can be difficult to get a clear picture of the overall status through command-line arguments and manifests alone. Lens attempts to solve this problem with an integrated environment for viewing the current state of the cluster and its workloads, visualizing cluster metrics and changing configurations through an embedded text editor. Rather than a simple point-and-click interface, Lens brings together the tools an administrator would run from the command line into a single, navigable interface. This tool is one of several approaches that are trying to tame the complexity of Kubernetes management. We’ve yet to see a clear winner in this space, but Lens strikes an interesting balance between a graphical UI and command-line– only tools.)
Languages & Frameworks
React Hooks: Recientemente lo mencionó un amigo que tiene una visión sorprendente para vaticinar cosas que van a coger tendencia. Ejemplo: Es la primera persona que a la que oí hablar de Vue.js, cuando ni el tato lo conocía. Un crack.
Trial
Karate: Para tener en el radar cuando tenga que hacer tests de API (It is an API testing framework whose unique feature is that tests are written directly in Gherkin without relying on a general-purpose programming language to implement test behavior. It’s a domain-specific language for describing HTTP-based API tests).