<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[João Manoel]]></title><description><![CDATA[Sou desenvolvedor com mais de 9 anos de experiência em tecnologias como AdvPL, TL++, PHP, .NET, além de amplo conhecimento no ERP TOTVS Protheus. Atuo no desenv]]></description><link>https://blog.joaomanoel.net.br</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Apr 2026 22:06:13 GMT</lastBuildDate><atom:link href="https://blog.joaomanoel.net.br/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Tenha responsabilidade]]></title><description><![CDATA[Assumir a responsabilidade por nosso trabalho como programador é também saber comunicar quando algo não sai como esperado.
Dar desculpa esfarrapada é péssimo para nossa imagem profissional.
Uma coisa precisa ser estabelecida antes de dar uma desculpa...]]></description><link>https://blog.joaomanoel.net.br/tenha-responsabilidade</link><guid isPermaLink="true">https://blog.joaomanoel.net.br/tenha-responsabilidade</guid><category><![CDATA[reflexao]]></category><category><![CDATA[responsabilidade]]></category><category><![CDATA[atitude]]></category><dc:creator><![CDATA[Joao Manoel Freitas Rolim]]></dc:creator><pubDate>Sun, 01 Feb 2026 20:03:40 GMT</pubDate><content:encoded><![CDATA[<p>Assumir a responsabilidade por nosso trabalho como programador é também saber comunicar quando algo não sai como esperado.</p>
<p>Dar desculpa esfarrapada é péssimo para nossa imagem profissional.</p>
<p>Uma coisa precisa ser estabelecida antes de dar uma desculpa pense, fala em voz alta, imagine como seu chefe ou líder vai reagir a sua resposta.</p>
<p>Então não forneça desculpas explique o e que aconteceu e lista alternativas para resolver.</p>
<p><strong><em>Não culpe o gato ou cachorro dizendo que ele comeu seu código.</em></strong></p>
]]></content:encoded></item><item><title><![CDATA[O que é realmente Software legado]]></title><description><![CDATA[Ao longo dos últimos anos muito se tem falado sobre escrever bons softwares, usando as ditas melhores práticas, sendo preciso reescrever grande parte dos softwares rodando. Essa é uma história bem comum em nossa profissão, a empresa contrata um novo ...]]></description><link>https://blog.joaomanoel.net.br/o-que-e-realmente-software-legado</link><guid isPermaLink="true">https://blog.joaomanoel.net.br/o-que-e-realmente-software-legado</guid><category><![CDATA[Legado]]></category><category><![CDATA[software development]]></category><category><![CDATA[Software Engineering]]></category><dc:creator><![CDATA[Joao Manoel Freitas Rolim]]></dc:creator><pubDate>Wed, 19 Nov 2025 13:49:42 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1751228914233/b7a89b36-5bb4-49e1-a309-2cd08d5e23e4.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Ao longo dos últimos anos muito se tem falado sobre escrever bons softwares, usando as ditas melhores práticas, sendo preciso reescrever grande parte dos softwares rodando. Essa é uma história bem comum em nossa profissão, a empresa contrata um novo desenvolvedor e ele vem com a proposta de reescrever do ZERO um software funcional que atende vários usuários e que traz receita para a empresa.</p>
<p>E qual é o argumento usado? Sim o Software e Legado.<br />Mas o que realmente é um software legado?<br />O legado está relacionado somente a tecnologia?<br />Pode existir mais de um tipo de software legado?</p>
<p>Mas antes de falar com mais detalhes sobre quais características envolvem ou melhor possuem um software/código legado, vamos 1º conceituar o que de fato e legado.</p>
<p>Vamos pegar a definição do dicionário da <a target="_blank" href="https://www.infopedia.pt/dicionarios/lingua-portuguesa/legado">infopedia</a>:</p>
<p>“aquilo que as gerações passadas transmitem às atuais”, incluindo dádivas ou contribuições <em>culturais”</em></p>
<p>Dessa forma entendemos que o legado é o que foi deixado para a posteridade, então legado de software/código é tudo aquilo que a geração anterior desenvolvedores nos deixou ou mesmo o desenvolvedor que trabalhou naquele software, sendo que muitas coisas deixas no software/código é valido só precisa de manutenção. E outras precisam de substituição, por vários motivos como desempenho, segurança ou simplesmente por ser ruim.</p>
<p>Tendo disso isso vale ressaltar é que legado tornou-se sinônimo de algo ruim, quando na verdade ele está contando uma história sobre o momento da empresa/pessoa que usa aquele software/código. E não estou dizendo que não existem péssimos legados, estou apenas reforçando que se uma empresa possui um legado quer dizer que possui uma história e esse legado possui na casa dos 2 anos em diante quer dizer que rendeu alguns frutos.</p>
<p>Então o pensamento de reescrever um software/código em uma tecnologia, mais moderna, ou no framework mais recente não ser um legado, principalmente um bem ruim, não poderia estar mais errado, porque o que torna um software legado, não está totalmente relacionado a tecnologia usada e sim a forma como ele é planejado e executado. É óbvio que um software pode ser legado em relação a tecnologia usada se ela não tem mais atualizações, exemplo construir agora em 2025 um sistema usando PHP5. Esse é sim um software legado em relação a tecnologia, pois o PHP no atual momento da escrita desse post está na versão 8.4, com inúmeros recursos.</p>
<p>O fato é que software legado não está estritamente ligado somente a tecnologia usada no mesmo, então podemos concluir que conceitualmente um código/software legado é:</p>
<p><strong><em>“Software/código criado para atender uma demanda, aplicando tecnologias e técnicas, sendo na atualidade sujeito a mudanças e melhorias”</em></strong></p>
<p>O Michael Feathers em seu livro “Trabalho eficaz com código legado” é bem radical em dizer que legado e todo e qualquer software escrito sem TESTE e pior ainda sem TESTE AUTOMATIZADOS, essa definição nos ajuda a pensar melhor em como desenvolver software.</p>
<p>Em pleno 2025 ainda vemos pessoas falando que TESTE AUTOMATIZADOS são bobagens desde que o software funcione não precisa disso, está entregue o cliente está feliz então que diabos ficar falando desse negócio de TESTE. O que é engraçado que esse pensamento é o mesmo das pessoas que não são de tecnologia, mas estão diretamente ligadas ao processo de desenvolvimento. Tais pessoas, bem como esses desenvolvedores que acreditam que TESTE é bobagem, não entendem que o difícil não é desenvolver um software o difícil e mantê-lo, por isso os TESTES são importantes para a manutenção do software.</p>
<h3 id="heading-tipos-de-legado">Tipos de legado</h3>
<ul>
<li><p>Tecnologia ultrapassada</p>
</li>
<li><p>Arquitetura mal elaborada</p>
</li>
<li><p>Divida técnica</p>
</li>
<li><p>Bem construído, documentado, com TESTES, sejam automatizados ou manual(automatizado é melhor)</p>
</li>
</ul>
<h3 id="heading-consideracoes-finais">Considerações finais</h3>
<p>Não tenha medo de pegar um legado, não fique com preconceito, só por que é um software antigo, se tiver a oportunidade de trabalhar com um legado, estude a possibilidade de modernizar, ou até mesmo reescrever o software.</p>
]]></content:encoded></item></channel></rss>