Debuggar PHP com Xdebug quase me fez desistir
Se você já tentou debuggar uma aplicação Laravel com Xdebug, você sabe do que estou falando.
Não é falta de documentação.
Não é falta de tutorial.
É o conjunto de tudo.
WSL, Docker, portas, xdebug.client_host, host.docker.internal, firewall, IDE, PHPStorm, VS Code, versões diferentes de PHP, Xdebug 2 vs 3…
Quando funciona, você não sabe por quê.
Quando quebra, você também não sabe por quê.
Já perdi horas (dias, sendo honesto) só tentando fazer um breakpoint parar em um dd() que nunca chegou a ser executado.
O mais frustrante pra mim nunca foi “não saber configurar”.
Foi perceber que o custo cognitivo do debug em PHP é desproporcional ao problema que queremos resolver.
O problema não é o Xdebug, é o fluxo
O Xdebug é poderoso.
Mas o fluxo é frágil:
Dependente de ambiente
Sensível a rede
Sensível a IDE
Sensível a Docker
Sensível a versão do PHP
Sensível a pequenas mudanças que quebram tudo silenciosamente
E quando quebra… você não debuga o código.
Você debuga o debug.
Foi aí que comecei a pensar:
“E se o debug não dependesse de IDE, porta, extensão ou configuração maluca?”
A ideia por trás do DDLess
Eu queria algo assim:
Rodar o projeto do jeito que ele já roda
Sem Xdebug
Sem extensão PHP
Sem configuração por projeto
Sem acoplamento com IDE
Com output claro e previsível
Então criei o DDLess.
A ideia é simples:
observar, interceptar e inspecionar a execução da aplicação sem precisar de debugger tradicional.
Ele roda junto com o projeto, entende o ciclo do Laravel e permite:
Inspecionar variáveis
Ver execução de código
Acompanhar requests
Debugar sem “breakpoint mágico”
Funcionar igual no Linux, Windows, WSL, Docker, CI, servidor remoto
Não é um “substituto do Xdebug”.
É um atalho para quando você só quer entender o que está acontecendo.
O que me fez continuar
Depois que comecei a usar internamente, percebi algo importante:
Eu debugava mais,
porque o custo de começar a debuggar ficou próximo de zero.
Sem:
abrir porta
configurar IDE
mexer em ini
reiniciar container
torcer pra funcionar
Só rodar e observar.
Ainda está no começo, mas já resolve minha dor
O DDLess ainda está evoluindo.
Hoje o foco é Laravel, mas a ideia é expandir para outros frameworks e cenários.
Não é perfeito.
Não resolve todos os problemas.
Mas resolve aquele momento clássico de:
“cara, só quero saber por que isso tá null”
Se você quiser testar
Vou deixar uma key de teste gratuita pra quem quiser experimentar e dar feedback.
Não é post de venda.
É post de dev cansado que tentou reduzir a própria dor e decidiu compartilhar.
Se isso também já te irritou em algum momento, talvez faça sentido pra você.
Site: https://ddless.com
Key: RIUL-2FAH-V2BQ-OTM1
Se tiver críticas, ideias ou “isso nunca funcionaria no meu cenário”, melhor ainda.
É assim que ferramenta boa nasce.
Fonte: https://ddless.com