Latest / Entre Chaves / Snippet #27 Como decidir entre os principais frameworks spec-driven
Transcript
- 0:00Olá pessoal, bem vindos para mais o snippet aqui no entre
- 0:02chaves e hoje é um assunto aqui que já a gente já abordou
- 0:06diversas vezes, de diversas formas diferentes, mas agora eu
- 0:10quero trazer uma pegada um pouquinho mais prática, ajudar a
- 0:14tomar decisões sobre qual caminho e seguir.
- 0:17A gente já falou diversas vezes aqui sobre espectro, even
- 0:20development, mas uma coisa que vira e mexe aparece as
- 0:23discussões, dúvidas, conversas de corredor é qual framework
- 0:28adotar? Hoje eu vou trazer aqui os 7
- 0:31principais frambo que estão aí sendo mais utilizados, sons que
- 0:35tem maior relevância no mercado e tentar fazer um pequeno
- 0:39comparativo entre eles, trazendo para vocês aí algumas vantagens,
- 0:42vantagens e muitas vezes dando uma luz aí em qual escolher para
- 0:46cada situação. Vamos começar só dando uma
- 0:48pincelada sobre cada um deles. E o primeiro que nós vamos falar
- 0:52é o espec kit, que foi um dos precursores.
- 0:54Aí foi um dos primeiros a aparecer.
- 0:56Desenvolvido em parceria pelo GitHub e com a Microsoft, uma
- 0:59das maiores características do espec kit é transformar
- 1:02linguagem natural em contratos executáveis.
- 1:06E aí, qual que é a grande vantagem dele?
- 1:09O espec kit. Ele mantém uma consistência na
- 1:12arquitetura. No desenvolvimento como um todo,
- 1:15na documentação maior do que qualquer outro dos frameworks, e
- 1:19ele também é o que tem a maior gama de compatibilidade, seja
- 1:23com diversos modelos, com diversas ideias, ele é o que tem
- 1:27maior alcance e além disso, é o que gera maior rastreabilidade
- 1:32naquilo que ele está fazendo. Mas em compensação, ele é um dos
- 1:36mais verbosos ou o mais verbosos de todos, porque ele tem. 4
- 1:40etapas muito rígidas e produzem bastante coisa, bastante
- 1:44artefatos. Daí qual que é o foco principal
- 1:46de utilização dele? É para grandes projetos,
- 1:49projetos corporativos, onde a gente muitas vezes tem que ter
- 1:53realmente todos esses esses 4 passos dele, desde o
- 1:56planejamento até são muito bem definidos.
- 1:58Um outro frameur que também interessante e que a gente vê
- 2:02bastante gente usando é o super powers.
- 2:05O super powers ele vem muito com conceito.
- 2:08De forçar o agente a pensar bastante antes de agir.
- 2:13Um dos Fortes dele é a orquestração de diversos sub
- 2:17agentes em paralelo para tarefas grandes e complexas, onde muitas
- 2:22vezes a gente também não quer que o contexto de uma parte
- 2:25influencie na outra. Outro fato interessante do super
- 2:28powers é que o foco dele é em tdd, ou seja, ele sempre começa
- 2:33implementando um teste que falha.
- 2:35Vai implementando passo a passo até que o teste passe e vai
- 2:39refaturando a solução à medida que ela vai andando.
- 2:41Só que isso também tem uma desvantagem se você não tem uma
- 2:44suíte de testes bem definida, bem documentada, bem organizada.
- 2:49Ele pode se perder nisso aí e pode acabar inclusive gerando
- 2:52uma série de artefatos e não estão bem alinhados com aquilo
- 2:55que você quer. E onde é que é que o super Paulo
- 2:58se destaca em grandes refaturações?
- 3:01Onde a gente já tem definido, aí é regras, testes ou pelo menos
- 3:06você já já tem realmente muito bem definido o comportamento
- 3:09esperado. Você precisa fazer grandes
- 3:11refaturações ou então projetos greenfield a projetos novos,
- 3:15começando do zero. Onde a cobertura de testes é
- 3:18primordial e é um requisito muito forte ali.
- 3:21Realmente a escolha do super powers pode ser um bom caminho a
- 3:24seguir. Agora temos OTLCS packdriving do
- 3:26techlead Club. Ele é um frengo que ao contrário
- 3:30do spec hit que a gente falou que ele sempre tem que seguir
- 3:33aquela estrutura bem rígida e cerimonial, aquele ritual das 4
- 3:37fases OTLC em alguns casos onde ela identifica que a tarefa é
- 3:42muito simples. Ele pode pular certas fases para
- 3:45poder otimizar, ganhar tempo e economizar tanto em tempo como
- 3:49em tokens, né? Ou seja, em custo.
- 3:51Uma coisa interessante que ele faz é gravar os erros cometidos
- 3:54por ele localmente no projeto, ou seja, um erro que foi
- 3:58cometido uma vez, dificilmente se repetirá uma desvantagem
- 4:01dele. E ele tem um ecossistema menor
- 4:03do que os outros em quantidade de idees EEEC la es que ele se
- 4:08integra e onde é que ele se destaca?
- 4:10Geralmente projetos de médio porte, onde você precisa de mais
- 4:14flexibilidade, onde tem uma maior interação humano.
- 4:18E a passando agora para o nosso quarto framurk, eu vou falar do
- 4:22opens pack. Ele é provavelmente o mais leve
- 4:26entre os framurks. Geralmente ele é uma boa medida
- 4:28para quem está começando, especialmente projetos
- 4:31brownfield, né? Não tem ação de legados.
- 4:33Se você cria uma pasta opens pack, você documenta só aquilo
- 4:38que você quer que mude a partir daí.
- 4:40Você realmente não precisa também de todo aquele processo
- 4:43ritualístico, senão precisa documentar tudo.
- 4:45Você vai direto ao ponto e ele parte dali pra pra começar as
- 4:49atualizações. Ele também ajuda muito em
- 4:51reduzir aquela carga do cold review.
- 4:53O Mano consegue ele ter interação com ele de alterações
- 4:57curtas e rápidas através de marquidown de uma maneira bem
- 5:00simples em compensação. Justamente por ser tão simples,
- 5:04ele não atende necessariamente quando a gente tem uma
- 5:08necessidade maior de governança, uma necessidade maior dessa
- 5:11especificação mais rígida. O monitoramento deles de sub
- 5:14agentes também não se destaca em relação aos outros, ele se
- 5:18encaixa muito bem para startups, projetos menores, projetos
- 5:22rápidos, onde muitas vezes também o desenvolvedor quer.
- 5:26Manteve uma interatividade maior com o modelo com o que está
- 5:30sendo desenvolvido, sem necessariamente deixar tão
- 5:33autônomo quanto outros modelos facilitam.
- 5:36Agora temos um outro que é muito interessante, que é o tessel.
- 5:40Ele utiliza o princípio de espectro resorce, que parte do
- 5:43princípio que humanos não deveriam ficar lendo e
- 5:46escrevendo código. O código deve ser apenas o
- 5:49artefato compilado. Que vai viver ali em paralelo a
- 5:53sua especificação. Então, o ser humano deve focar
- 5:56única e exclusivamente em escrever especificação e
- 6:00simplesmente ignorar o código, o compilado que vai ser gerado
- 6:05nesse caso, como o código é definido pela sua especificação,
- 6:09tanto faz a tecnologia, tanto faz o que que está sendo gerado.
- 6:13Se eu precisar simplesmente trocar completamente a
- 6:15tecnologia, eu simplesmente peço para ele.
- 6:18Pega esse meu projeto em Java e passa ele para mim ir para
- 6:21lostnet. O próprio teste também faz Oo
- 6:22gerenciamento de dependências de bibliotecas de vulnerabilidades.
- 6:26Atualiza as coisas quando for necessário.
- 6:29Ele também possui o spac Red c global, que é uma biblioteca que
- 6:33ele possui compartilhando implementações e
- 6:36desenvolvimentos de funções mais genéricas pré validadas para
- 6:41impedir alucinações para. Pedir desenvolvimentos errôneos
- 6:44por parte dele? Obviamente não vai ser inserido
- 6:47ali nessa biblioteca global. Nada que for crítico, nada que
- 6:50for regra de negócio, mas implementações que são genéricas
- 6:54e reutilizáveis. O teto pode buscar de lá e
- 6:56facilitar muito a vida, além de também reduzir o custo.
- 6:59As principais desvantagens do tessão é que ele primeiro é uma
- 7:02mudança de paradigma. Nós deves, a gente acaba que
- 7:06sempre quer dar aquela olhadinha ou muitas vezes é difícil
- 7:10resistir aquele ajuste mínimo no código para funcionar bem o
- 7:13teste. A gente parte da premissa que o
- 7:15humano não vai interagir com o código e ele é o conceito novo e
- 7:18é proprietário na sua estrutura de orquestração.
- 7:20Então sempre há aquele risco do vendor locking, né?
- 7:24De a gente acabar ficando ali travado.
- 7:27Pelo fornecedor. Agora, para quem está começando
- 7:30projetos novos do zero e às vezes está passando por uma
- 7:33migração de tecnologia e esse tipo de projeto pode se
- 7:36beneficiar muito do teto. O sexto framework é o plandex.
- 7:40O forte desse framework é o gerenciamento de grandes
- 7:44contextos. Ele se sobressai?
- 7:46Quando a gente precisa fazer alterações complexas que
- 7:49envolvem muitos arquivos, muitas alterações simultâneas, ele
- 7:53consegue orquestrar isso muito bem, garantindo que o agente ou
- 7:57os agentes não se percam no meio desse processo, ele fornece
- 8:00muitos GIFs interativos para as alterações que ele vai fazendo,
- 8:04de maneira que fica muito clara, muito nítido e o desenvolvedor
- 8:08consiga acompanhar bem. Isso aí que a tudo que a Iara
- 8:11está fazendo e aprovando passo a passo para tarefas que muitas
- 8:14vezes levam horas EE vão ter o contexto muito aumentado.
- 8:19Ele pode ser uma ótima opção agora.
- 8:22Obviamente isso vem com custo, né?
- 8:24Para conseguir gerenciar janelas de contexto tão grandes e
- 8:28tarefas tão complexas. Ele tem um custo aumentado para
- 8:31poder fazer isso, né? Ele gasta muito token, ele gasta
- 8:34muito tempo, então obviamente não existe almoço grátis.
- 8:39E também esse framework. Ele tem uma quantidade um pouco
- 8:42maior de comandos específicos, que trazem com isso uma pequena
- 8:48curva de aprendizado acima dos outros.
- 8:51Ele tem algumas coisas bem específicas dele para
- 8:53desenvolvedores que gostam de trabalhar com o terminal de
- 8:56forma segura, ele é muito recomendado e também para
- 8:59projetos que requerem realmente. Grandes refaturações que é.
- 9:04Muitas vezes essas refaturações vão ter que tocar várias camadas
- 9:08da sua solução ou vários arquivos diferentes.
- 9:11Migrações de tecnologia e o último que eu queria trazer para
- 9:14vocês é o eider. Ele é mais um parceiro de
- 9:17codificação do que 11 frambour de espectro viving propriamente
- 9:21dito. Ele é um dos agentes de
- 9:23programação via terminal mais rápidos e eficientes atualmente
- 9:26disponíveis. Ele é feito para trabalhar
- 9:28extremamente otimizado com tokens.
- 9:30Ele faz um mapeamento do repositório, só enviando para ir
- 9:34a realmente os trechos que são relevantes para para as mudanças
- 9:38solicitadas. Cada uma das alterações que ele
- 9:40vai fazendo se converte em um comity separado, com mensagens
- 9:43bem explicativas sobre tudo que ele está fazendo.
- 9:46Ele funciona praticamente com todas as as LLMS disponíveis
- 9:49atualmente. Ele trabalha muito bem em
- 9:51paralelo com outros framers que cuidariam da da parte de
- 9:55especificação, e ele entra com a execução.
- 9:58Planejamento não é o forte dele. Você inventar, colocar ele para
- 10:02execuções sem ter um planejamento bem claro, bem
- 10:05feito, grandes chances e você vai pode ter problemas similares
- 10:09a um Vibe coding, mas, por exemplo, para manutenções
- 10:13rápidas para correções de bug, ele pode ser a melhor opção.
- 10:17E vocês, pessoal, qual desses framo que vocês usam?
- 10:20Vocês combinam mais de um. Comenta aqui pra gente, segue a
- 10:23gente nas redes sociais. Eu quero saber.
- 10:25Estou curioso para saber como vocês estão usando os e comenta
- 10:29aqui se vocês querem mais detalhes sobre algum deles ou
- 10:32uma segunda parte focada em tokens em utilização.
- 10:37Pontos Fortes e fracos, me falem, o que que vocês querem?
- 10:40Um abraço pessoal.