<?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" xmlns:media="http://search.yahoo.com/mrss/"><channel><title><![CDATA[Blog]]></title><description><![CDATA[Latest from this crazy mind.]]></description><link>https://ronaldosena.com/blog/</link><image><url>https://ronaldosena.com/blog/favicon.png</url><title>Blog</title><link>https://ronaldosena.com/blog/</link></image><generator>Ghost 4.36</generator><lastBuildDate>Wed, 06 May 2026 11:36:49 GMT</lastBuildDate><atom:link href="https://ronaldosena.com/blog/rss/" rel="self" type="application/rss+xml"/><ttl>60</ttl><item><title><![CDATA[Bishops Are Snipers]]></title><description><![CDATA[I try to solve at least a chess puzzle every day, it is great for improving logical thinking, keeping your mind sharp, pattern recognition, seeing the consequences of your actions, and it is also fun!]]></description><link>https://ronaldosena.com/blog/the-killer-bishop/</link><guid isPermaLink="false">62176e47c73dc00404b8c012</guid><category><![CDATA[Chess]]></category><category><![CDATA[English]]></category><dc:creator><![CDATA[Ronaldo Sena]]></dc:creator><pubDate>Thu, 24 Feb 2022 12:34:36 GMT</pubDate><media:content url="https://ronaldosena.com/blog/content/images/2022/02/sniper_bishop.png" medium="image"/><content:encoded><![CDATA[<img src="https://ronaldosena.com/blog/content/images/2022/02/sniper_bishop.png" alt="Bishops Are Snipers"><p>I try to solve at least a chess puzzle every day, it is great for improving logical thinking, keeping your mind sharp, pattern recognition, seeing the consequences of your actions, and it is also fun!</p><p>The following puzzle took me about 15 minutes to solve, simply because I forgot the power of the bishop in the a8-h1 diagonal, and fail to realize that you can break some chess &quot;rules&quot; such as &quot;a knight on a rim is dim&quot; if it gains you a full piece. It is truly a sniper!</p><p>As you can see, white is threatening the knight on f6. However, what I first fail to notice was the x-ray attack that the b7 bishop had on the a1 rook. Once I figure that out, the rest of the puzzle was quite straightforward. You can solve it below, have fun!</p><!--kg-card-begin: html--><iframe id="8965037" allowtransparency="true" frameborder="0" style="width:100%;border:none;" src="//www.chess.com/emboard?id=8965037"></iframe><script>window.addEventListener("message",e=>{e['data']&&"8965037"===e['data']['id']&&document.getElementById(`${e['data']['id']}`)&&(document.getElementById(`${e['data']['id']}`).style.height=`${e['data']['frameHeight']+30}px`)});</script><!--kg-card-end: html-->]]></content:encoded></item><item><title><![CDATA[Visual Studio Code Remote Development]]></title><description><![CDATA[Você acabou de encontrar um projeto super interessante no Github, ou então recebeu uma nova função na sua firma. Hora de fazer rodar na sua máquina. Você lê a documentação, instala as dependências e an unknown error occurred!]]></description><link>https://ronaldosena.com/blog/visual-studio-code-remote-development-wsl/</link><guid isPermaLink="false">621153c7c73dc00404b8bfc7</guid><category><![CDATA[Code]]></category><category><![CDATA[Portuguese]]></category><dc:creator><![CDATA[Ronaldo Sena]]></dc:creator><pubDate>Sat, 13 Jun 2020 20:48:00 GMT</pubDate><content:encoded><![CDATA[<p>Voc&#xEA; acabou de encontrar um projeto super interessante no Github, ou ent&#xE3;o recebeu uma nova fun&#xE7;&#xE3;o na sua firma. Hora de fazer rodar na sua m&#xE1;quina. Voc&#xEA; l&#xEA; a documenta&#xE7;&#xE3;o, instala as depend&#xEA;ncias e <em>an unknown error occurred!</em></p><p>Acho que todo mundo j&#xE1; passou por isso alguma vez na vida. &#xC9; como quando voc&#xEA; compra um rack Tok&amp;Stok, segue o manual de instru&#xE7;&#xF5;es e no fim, tudo est&#xE1; torno e capenga. Pode ser que as instru&#xE7;&#xF5;es de configura&#xE7;&#xE3;o eram complexas e/ou desatualizadas. Claro que manter a documenta&#xE7;&#xE3;o atualizada &#xE9; um processo relativamente simples. No entanto, pode ser que voc&#xEA; se depare com problemas complexos e inesperados que n&#xE3;o foram mencionados.</p><!--kg-card-begin: html--><iframe src="https://giphy.com/embed/HzMJUlU5HwwzNUjphL" width="480" height="368" frameborder="0" class="giphy-embed" allowfullscreen></iframe><!--kg-card-end: html--><p>E se pud&#xE9;ssemos eliminar magicamente esses problemas? Pensando nesse cen&#xE1;rio, e em nossa sanidade, o time do vscode desenvolveu uma ferramenta sublime: VS Code Remote Development. </p><blockquote><strong>Visual Studio Code Remote Development</strong> allows you to use a container, remote machine, or the <a href="https://docs.microsoft.com/windows/wsl">Windows Subsystem for Linux</a> (WSL) as a full-featured development environment. Develop on the same operating system you deploy to or use larger or more specialized hardware. Sandbox your development environment to avoid impacting your local machine configuration. Make it easy for new contributors to get started and keep everyone on a consistent environment. Use tools or runtimes not available on your local OS or manage multiple versions of them. Develop your Linux-deployed applications using the Windows Subsystem for Linux. Access an existing development environment from multiple machines or locations. Debug an application running somewhere else such as a customer site or in the cloud.</blockquote><p>No post de hoje, vamos conversar especificamente sobre o Remote - Containers. Aqui usamos todo poder de abstra&#xE7;&#xE3;o dos container Docker para criar um ambiente completo para desenvolvimento. A extens&#xE3;o mapeia a pasta (ou workspace) para um container, isso tudo dentro da janela do code. O arquivo <a href="https://code.visualstudio.com/docs/remote/containers#_creating-a-devcontainerjson-file"><em>devcontainer.json</em></a> cont&#xE9;m as defini&#xE7;&#xF5;es do container bem como as imagens que ser&#xE3;o utilizadas. </p><figure class="kg-card kg-image-card"><img src="https://ronaldosena.com/blog/content/images/2022/02/image.png" class="kg-image" alt loading="lazy" width="968" height="402" srcset="https://ronaldosena.com/blog/content/images/size/w600/2022/02/image.png 600w, https://ronaldosena.com/blog/content/images/2022/02/image.png 968w" sizes="(min-width: 720px) 720px"></figure><p>Claro que para utilizar tudo isso, &#xE9; preciso que voc&#xEA; tenha instalado e configurado o Docker na sua m&#xE1;quina. O processo de configura&#xE7;&#xE3;o do Docker &#xE9; muito simples. Se voc&#xEA; estiver em uma m&#xE1;quina Windows, o processo &#xE9; o cl&#xE1;ssico <em>next, next, finish</em>. Para ambientes linux voc&#xEA; pode usar o reposit&#xF3;rio da sua distro ou ainda o scrip de instala&#xE7;&#xE3;o que a equipe do Docker &#xA0;preparou em <a href="https://get.docker.com/">https://get.docker.com/</a>. Se voc&#xEA; usa macOS, voc&#xEA; que lute.</p><p>No tutorial a seguir, vamos criar e configurar uma API em .NET Core 3.1 usando vscode remote - containers:</p><figure class="kg-card kg-embed-card"><iframe width="200" height="113" src="https://www.youtube.com/embed/aw4sdlmHtFA?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></figure><p>O codigo completo est&#xE1; dispon&#xED;vel <a href="https://github.com/ronaldosena/vscode-remote-containers">https://github.com/ronaldosena/vscode-remote-containers</a></p>]]></content:encoded></item></channel></rss>