9 puntos por xguru 2024-04-05 | 1 comentarios | Compartir por WhatsApp

Visualiza y explica las tendencias más recientes en técnicas/herramientas/plataformas/lenguajes y frameworks de desarrollo en 4 etapas: Hold/Assess/Trial/Adopt

Licencias de código fuente abiertas-ish (Open-ish)

  • El ecosistema de desarrollo de software de código abierto ha dependido durante mucho tiempo del conjunto de licencias catalogadas por la OSI (Open Source Initiative)
  • En los últimos años, han surgido cambios en el panorama de licencias de código abierto a medida que funciones clave de herramientas ampliamente usadas pasan repentinamente a ser de pago
  • No hay problema con pagar por el software, pero sí es un problema que funciones clave de herramientas con un ecosistema ya desarrollado se vuelvan de pago de repente
  • También están apareciendo programas que se promocionan como open source, pero cuyas funciones básicas solo se ofrecen después de pagar una suscripción u otros cargos
  • Recomiendan prestar especial atención a los temas de licenciamiento
  • Hay que verificar que todos los archivos estén cubiertos por la licencia del nivel superior

Equipos de desarrollo de software asistidos por IA

  • La IA puede aportar ventajas graduales en todos los aspectos del desarrollo de software, y se está siguiendo activamente la innovación en todo el proceso de desarrollo
  • Junto con las nuevas capacidades que ofrece la IA, también aparecen nuevos riesgos para la calidad y la seguridad del software, por lo que hay que mantenerse alerta ante los riesgos potenciales, incluso entre quienes no son desarrolladores

Nuevos patrones de arquitectura para LLM

  • A medida que aumenta el uso de LLM (Large Language Models), empiezan a surgir patrones de arquitectura específicos para soportar situaciones comunes
    • NeMo Guardrails: permite establecer políticas de gobernanza para el uso de LLM
    • Langfuse: mejora la visibilidad de los pasos que conducen a la salida de un LLM y los métodos para manejar y verificar codebases infladas llenas de código generado
  • En el ecosistema empresarial, RAG (retrieval-augmented generation) es el patrón preferido para mejorar la calidad de la salida de los LLM
  • A medida que la IA generativa siga impregnando el desarrollo de software, se espera una explosión de patrones (y de inevitables anti patrones)

Acercar los PR a un CI adecuado (Dragging PRs closer to proper CI)

  • Thoughtworks ha respaldado firmemente los ciclos de retroalimentación rápidos y la integración continua (CI)
  • Últimamente, la obligatoriedad de los pull requests (PR) ha hecho que muchos equipos ignoren la parte de CI dentro de CI/CD
  • Los PR se desarrollaron para gestionar grandes equipos distribuidos de open source y contribuidores no confiables, pero también se han convertido en sinónimo de revisión por pares incluso en equipos de entrega pequeños y muy unidos
  • Los desarrolladores añoran el mismo flujo que se obtiene al ejecutar un CI real
  • Investigaron varias herramientas para aliviar el dolor del proceso de revisión de PR, como gitStream y las merge queues de GitHub
  • Si los asistentes de codificación con IA aumentan el throughput de programación, eso tiende a crear PR más grandes y mete más presión sobre los procesos de revisión de código asíncronos
  • Recomiendan que los equipos que no pueden usar CI por restricciones externas busquen maneras de mejorar la precisión de integración y la velocidad del ciclo de retroalimentación

[Técnicas]

Adopt

  1. Retrieval-augmented generation (RAG)

Trial

  1. Automatically generate Backstage entity descriptors
  2. Combining traditional NLP with LLMs
  3. Continuous compliance
  4. Edge functions - Cloudflare Workers
  5. Security champions
  6. Text to SQL - Vanna.ai
  7. Tracking health over debt

Assess

  1. AI team assistants
  2. Graph analysis for LLM-backed chats
  3. LLM-backed ChatOps
  4. LLM-powered autonomous agents - AutoGen
  5. Using GenAI to understand legacy codebases - Bloop
  6. VISS

Hold

  1. Broad integration tests
  2. Overenthusiastic LLM use
  3. Rush to fine-tune LLMs
  4. Web components for SSR web apps

[Plataformas]

Adopt

  1. CloudEvents

Trial

  1. Arm in the cloud
  2. Azure Container Apps
  3. Azure OpenAI Service
  4. DataHub - Todo sobre Data Discovery Platform (DDP)
  5. Infrastructure orchestration platforms
  6. Pulumi
  7. Rancher Desktop
  8. Weights & Biases

Assess

  1. Bun
  2. Chronosphere
  3. DataOS
  4. Dify
  5. Elasticsearch Relevance Engine
  6. FOCUS
  7. Gemini Nano
  8. HyperDX
  9. IcePanel
  10. Langfuse
  11. Qdrant
  12. RISC-V for embedded
  13. Tigerbeetle
  14. WebTransport
  15. Zarf
  16. ZITADEL

[Herramientas]

Adopt

  1. Conan
  2. Kaniko
  3. Karpenter

Trial

  1. 42Crunch API Conformance Scan
  2. actions-runner-controller
  3. Android Emulator Container
  4. AWS CUDOS
  5. aws-nuke
  6. Bruno
  7. Develocity
  8. GitHub Copilot
  9. Gradio
  10. Gradle Version Catalog
  11. Maestro
  12. Microsoft SBOM tool
  13. Open Policy Agent (OPA)
  14. Philips's self-hosted GitHub runner
  15. Pop
  16. Renovate
  17. Terrascan
  18. Velero

Assess

  1. aider
  2. Akvorado
  3. Baichuan 2
  4. Cargo Lambda
  5. Codium AI
  6. Continue
  7. Fern Docs
  8. Granted
  9. LinearB
  10. LLaVA
  11. Marimo
  12. Mixtral
  13. NeMo Guardrails
  14. Ollama
  15. OpenTofu
  16. QAnything
  17. System Initiative
  18. Tetragon
  19. Winglang

[Lenguajes & Frameworks]

Trial

  1. Astro
  2. DataComPy
  3. Pinia
  4. Ray

Assess

  1. Android Adaptability
  2. Concrete ML
  3. Crabviz
  4. Crux
  5. Databricks Asset Bundles
  6. Electric
  7. LiteLLM
  8. LLaMA-Factory
  9. MLX
  10. Mojo
  11. Otter
  12. Pkl
  13. Rust for UI
  14. vLLM
  15. Voyager
  16. WGPU
  17. Zig

Hold

  1. LangChain - LangChain no tiene sentido, Problemas de LangChain