<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Software Development on Don Figuerres</title><link>https://donfiguerres.com/posts/software-development/</link><description>Recent content in Software Development on Don Figuerres</description><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Tue, 28 May 2024 22:40:00 +0800</lastBuildDate><atom:link href="https://donfiguerres.com/posts/software-development/index.xml" rel="self" type="application/rss+xml"/><item><title>Tmux Settings</title><link>https://donfiguerres.com/posts/software-development/tmux-settings/</link><pubDate>Tue, 28 May 2024 22:40:00 +0800</pubDate><guid>https://donfiguerres.com/posts/software-development/tmux-settings/</guid><description>&lt;p&gt;Saving here a copy of tmux settings so it&amp;rsquo;s easy to set it up in a new machine.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;set -g mouse on
# vi keybindings
set-window-option -g mode-keys vi
bind-key -T copy-mode-vi v send -X begin-selection
bind-key -T copy-mode-vi V send -X select-line
bind-key -T copy-mode-vi y send -X copy-pipe-and-cancel &amp;#39;xclip -in -selection clipboard&amp;#39;
# required by neovim checkhealth
set -g default-terminal &amp;#34;tmux-256color&amp;#34;
set-option -sa terminal-features &amp;#39;,xterm-256color:RGB&amp;#39;
set-option -sg escape-time 10
set-option -g focus-events on
&lt;/code&gt;&lt;/pre&gt;</description></item><item><title>VS Code Python Test Debugging Does Not Hit Breakpoint</title><link>https://donfiguerres.com/posts/software-development/vscode/python-test-debugging-does-not-hit-breakpoint/</link><pubDate>Tue, 26 Jul 2022 00:00:00 +0800</pubDate><guid>https://donfiguerres.com/posts/software-development/vscode/python-test-debugging-does-not-hit-breakpoint/</guid><description>&lt;p&gt;I had this problem in Python development environment wherein a breakpoint is not
hit while trying to debug tests. It turns out that this is a known issue and a
work around is available via the launch.json file.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;#34;version&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;0.2.0&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;#34;configurations&amp;#34;&lt;/span&gt;: [
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;#34;name&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;Debug Tests&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;#34;type&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;python&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;#34;request&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;launch&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;#34;purpose&amp;#34;&lt;/span&gt;: [
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#e6db74"&gt;&amp;#34;debug-test&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ],
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;#34;console&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;integratedTerminal&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;#34;justMyCode&amp;#34;&lt;/span&gt;: &lt;span style="color:#66d9ef"&gt;false&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;#34;env&amp;#34;&lt;/span&gt;: {
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;&amp;#34;PYTEST_ADDOPTS&amp;#34;&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#34;--no-cov&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; }
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; ]
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Below is the explanation form Microsoft.&lt;/p&gt;</description></item><item><title>Common Tools for Software Development</title><link>https://donfiguerres.com/posts/software-development/common-tools/</link><pubDate>Thu, 23 Jun 2022 23:34:00 +0800</pubDate><guid>https://donfiguerres.com/posts/software-development/common-tools/</guid><description>&lt;p&gt;List of tools that I&amp;rsquo;ve used throughout my development career that you might
find useful too. I use this list when setting up a new VM or workstation.&lt;/p&gt;
&lt;h2 id="browser"&gt;Browser&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.google.com/chrome" target="_blank" rel="noopener"&gt;Google Chrome&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;It&amp;rsquo;s most people&amp;rsquo;s default browser although Edge has a better performance in
Windows.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://brave.com" target="_blank" rel="noopener"&gt;Brave Browser&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;I use this personally for browsing.&lt;/li&gt;
&lt;li&gt;It has a lot of default privacy features.&lt;/li&gt;
&lt;li&gt;Can be used to test if a website will continue to function if all the
security and privacy features are enabled.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.mozilla.org/" target="_blank" rel="noopener"&gt;Firfox&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Has cool privacy features and containerization feature.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="package-manager"&gt;Package Manager&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://brew.sh/" target="_blank" rel="noopener"&gt;Homebrew&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Homebrew initially started as a MacOS package manager but is now available
for Linux distros. It&amp;rsquo;s a good package manager if you want to always have
the latest version of the software you need. Otherwise, it&amp;rsquo;s hard to keep
older versions as the philosophy of Homebrew is to only maintain the latest
versions.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="editor"&gt;Editor&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://code.visualstudio.com" target="_blank" rel="noopener"&gt;VSCode&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Java Performance Testing Using Zerocode</title><link>https://donfiguerres.com/posts/software-development/java/java-performance-testing-using-zerocode/</link><pubDate>Wed, 22 Jun 2022 23:10:00 +0800</pubDate><guid>https://donfiguerres.com/posts/software-development/java/java-performance-testing-using-zerocode/</guid><description>&lt;p&gt;In one of my previous projects, I had to add a performance testing suite for
our Java APIs to measure the performance gain in the performance improvement
that I was working on.&lt;/p&gt;
&lt;p&gt;After some research, I found that &lt;a href="https://zerocode.io/" target="_blank" rel="noopener"&gt;Zerocode&lt;/a&gt; is able to
fulfill our needs. Their &lt;a href="https://github.com/authorjapps/zerocode" target="_blank" rel="noopener"&gt;GitHub Repo&lt;/a&gt;
also includes an extensive documentation which made the process much easier for
me.&lt;/p&gt;
&lt;p&gt;I found that you can reuse your existing JUnit tests as performance tests using
the LoadWith annotation.&lt;/p&gt;</description></item></channel></rss>