Thoughtworks Technology Radar, Volume 29 é publicado
(thoughtworks.com)Visualiza e explica as tendências mais recentes nas áreas de técnicas/ferramentas/plataformas/linguagens e frameworks de desenvolvimento em quatro estágios: Hold/Assess/Trial/Adopt
Desenvolvimento de software com suporte de IA
- LLMs open source para programação devem chacoalhar o ecossistema de ferramentas de desenvolvimento
- Além de programar, também há grande potencial para apoiar a escrita de user stories, pesquisa com usuários, elevator pitch e outras tarefas relacionadas a linguagem
- Ao mesmo tempo, os desenvolvedores precisam usar todas essas ferramentas com responsabilidade e tomar cuidado com questões como dependências alucinatórias
Quão produtiva é a medição de produtividade?
- O desenvolvimento de software às vezes pode parecer magia para quem não é especialista técnico, o que leva gestores a tentar medir o quão produtivos os desenvolvedores estão sendo
- Martin Fowler escreveu em 2003 o texto "produtividade não pode ser medida"
- Ainda assim, entre os frameworks SPACE (Satisfaction and well-being, Performance, Activity, Communication and collaboration, Efficiency and flow), indicadores substitutos ligados a Activity, como número de pull requests ou de issues resolvidas, não são lá muito bons
- Em vez disso, o setor começou a focar em "eficiência de engenharia", defendendo que, em vez de medir produtividade, deve-se "medir os fatores que contribuem ou atrapalham o fluxo"
- Em vez de focar na atividade individual, é preciso focar nas causas de desperdício no sistema e nas condições que podem ser demonstradas empiricamente como influenciando a percepção de "produtividade" dos desenvolvedores
- Novas ferramentas como DX DevEx 360 abordam esse problema ao focar na experiência do desenvolvedor, e não na medição de entregáveis específicos
- No entanto, muitos líderes ainda falam da 'produtividade' dos desenvolvedores de forma vaga e qualitativa
- Pelo menos parte desse interesse renovado parece estar ligada ao impacto do desenvolvimento de software com suporte de IA, levantando a pergunta: "está tendo um impacto positivo?"
- A medição real de produtividade continua sendo difícil
Muitos LLMs
- LLMs (grandes modelos de linguagem) formam a base de muitas inovações modernas em IA
- Atualmente, muitos experimentos incluem apresentar interfaces de usuário no estilo chat, como ChatGPT ou Bard
- Em termos amplos, LLMs são ferramentas capazes de resolver uma variedade de problemas, desde geração de conteúdo (texto, imagem e vídeo) até geração de código, resumo e tradução
- Esses modelos, que usam "linguagem natural" como uma poderosa camada de abstração, oferecem um conjunto de ferramentas universalmente atraente e por isso vêm sendo usados por muitos trabalhadores do conhecimento
- Há discussões sobre vários aspectos dos LLMs, incluindo self-hosting, que permite mais customização e controle mais forte do que LLMs hospedados na nuvem
- À medida que a complexidade dos LLMs aumenta, consideramos especialmente a capacidade de quantizar e executar LLMs em formatos menores, sobretudo em dispositivos de borda e ambientes restritos
- Também analisamos "ReAct Prompting", que promete ganhos de desempenho, junto com agentes autônomos baseados em LLM que podem ser usados para criar aplicações dinâmicas que vão além de interações de pergunta e resposta
- Também menciona vários bancos de dados vetoriais, incluindo Pinecone, que estão voltando a ganhar destaque graças aos LLMs
- As capacidades básicas dos LLMs, incluindo especialização e self-hosting, continuam em crescimento explosivo
As soluções paliativas do delivery remoto amadurecem
- Equipes remotas de desenvolvimento de software usam tecnologia há anos para superar restrições geográficas, mas o impacto da pandemia acelerou a inovação nessa área e consolidou o trabalho totalmente remoto ou híbrido como uma tendência duradoura
- Nesta edição do Radar, discutimos como os métodos e ferramentas de desenvolvimento remoto de software amadureceram e como as equipes continuam ampliando os limites com foco em colaboração eficaz em ambientes mais distribuídos e dinâmicos do que nunca
- Algumas equipes continuam apresentando soluções inovadoras com novas ferramentas de colaboração
- Outras seguem adaptando e refinando práticas presenciais já existentes para atividades como pair programming em tempo real, Mob programming e workshops distribuídos (por exemplo, remote event storming). Tanto formas assíncronas quanto síncronas são possíveis
- O trabalho remoto oferece diversos benefícios (incluindo um pool de talentos mais diverso), mas o valor da interação presencial é evidente
- As equipes não devem permitir que loops de feedback importantes desapareçam e precisam reconhecer os prós e contras que surgem ao migrar para uma configuração remota
[Techiniques]
Adopt
- Design systems
- Lightweight approach to RFCs
Trial
- Accessibility-aware component test design
- Attack path analysis
- Automatic merging of dependency update PRs
- Data product thinking for FAIR data
- OIDC for GitHub Actions
- Provision monitors and alerts with Terraform
- ReAct prompting
- Retrieval-Augmented Generation (RAG)
- Risk-based failure modeling
- Semi-structured natural language for LLMs
- Tracking health over debt
- Unit testing for alerting rules
- Zero trust security for CI/CD Assess
- Dependency health checks to counter package hallucinations
- Design system decision records
- GitOps
- LLM-powered autonomous agents
- Platform orchestration
- Self-hosted LLMs
Hold
- Ignoring OWASP Top 10 lists
- Web components for server-siderendered (SSR) web apps
[Platforms]
Adopt
- Colima
Trial
- CloudEvents
- DataOps.live
- Google Cloud Vertex AI
- Immuta
- Lokalise
- Orca
- Trino
- Wiz
Assess
- ActivityPub
- Azure Container Apps
- Azure OpenAI Service
- ChatGLM
- Chroma
- Kraftful
- pgvector
- Pinecone
- wazero
[Tools]
Adopt
Trial
- AWS Control Tower
- Bloc
- cdk-nag
- Checkov
- Chromatic
- Cilium
- Cloud Carbon Footprint
- Container Structure Tests
- Devbox
- DX DevEx 360
- GitHub Copilot
- Insomnia
- IntelliJ HTTP Client plugin
- KEDA
- Kubeconform
- mob
- MobSF
- Mocks Server
- Prisma runtime defense
- Terratest
- Thanos
- Yalc
Assess
- ChatGPT
- Codeium
- GitHub merge queue
- Google Bard
- Google Cloud Workstations
- Gradio
- KWOK
- Llama 2
- Maestro
- Open-source LLMs for coding
- OpenCost
- OpenRewrite
- OrbStack
- Pixie
- Tabnine
[Languages and Frameworks]
Adopt
Trial
- .NET Minimal API
- Ajv
- Armeria
- AWS SAM
- Dart
- fast-check
- Kotlin with Spring
- Mockery
- Netflix DGS
- OpenTelemetry
- Polars
- Pushpin
- Snowpark
Assess
- Baseline Profiles
- GGML
- GPTCache
- Grammatical Inflection API
- htmx
- Kotlin Kover
- LangChain
- LlamaIndex
- promptfoo
- Semantic Kernel
- Spring Modulith
1 comentários
Divulgado o Thoughtworks Technology Radar, Volume 28
Publicada a edição 27 do Thoughtworks Technology Radar
Thoughtworks Technology Radar, Volume 26 (PDF de 39p)
Publicada a edição 23 do Thoughtworks Technology Radar
Publicada a edição 22 do Thoughtworks Technology Radar [PDF de 32p]
Notícias de tecnologia publicadas pela ThoughtWorks a cada 6 meses - Radar Vol.21