http://localhost:3000/articles/feed.xmlmhoushMichael Housh2025-02-19T21:55:31Zhttp://localhost:3000/articles/2025/vapor-htmx-todo-app/Vapor + HTMX2025-02-19T21:47:31ZBuild an example application using Vapor and HTMX.http://localhost:3000/articles/2024/free-as-in-freedom/Free As In Freedom2025-02-19T21:39:28ZSalute to open-source software engineershttp://localhost:3000/articles/2024/pgp-encryption-introduction/PGP Encryption Introduction2025-02-19T21:36:11Z<p>In this article I introduce PGP and show a use case for me, which perhaps you can use as well.</p>
<h2>What is PGP</h2>
<p>PGP stands for <strong>Pretty Good Privacy</strong>, it was first developed in 1991 by Phil Zimmermann. PGP uses<br />
cryptographic privacy and authentication and is generally used in data communication.</p>
<p>According to <a href="https://en.wikipedia.org/wiki/Pretty_Good_Privacy">Wikipedia</a> it’s name was inspired<br />
by a grocery store named, “Ralph’s Pretty Goody Grocery” featured in radio host’s Garrison Keillor’s<br />
fictional town of Lake Wobegon.</p>
<p>PGP is commonly used in software development to “sign” software commits or files to help ensure both<br />
who the commits were from as well as make sure they were not modified from the original versions.</p>
<p>It should also be noted that when people say PGP they are often referring to OpenPGP or GnuPGP which<br />
are implementations of the PGP standard protocol.</p>
<h2>What it does</h2>
<blockquote>
<p>Note: I am in no way a cyber-security expert, I am a layman and only describing things in terms<br />
that I understand / make sense to me. Do what I do at your own risk!</p>
</blockquote>
<p>PGP offers both symmetrical encryption (uses a session key and password) or asymmetrical encryption<br />
(uses a session key and a private key). Asymmetrical encryption is more secure but is more resource<br />
intensive (which is generally not a problem with computers of today).</p>
<p>Generally speaking PGP uses what are known as public and private key pairs. The public portion of<br />
the key par is meant to be shared with others freely, while the private portion needs to be secured<br />
/ not shared with anyone <strong>EVER</strong>. It is best practice to generate your keys on a computer that is<br />
“air gapped”, meaning it is not connected to any network / internet, and does not save a history of<br />
commands performed on it.</p>
<p>PGP encrypts data (files, messages, etc.) for one or more recipients, using the recipients public<br />
key. The recipients private key is required to decrypt the data once it’s been encrypted.</p>
<p>Your key pair is tied to your identity / person, generally by your name and email(s). The key can<br />
also have multiple “subkeys”, meaning that if you have more than one public email, alias, etc. it<br />
can be tied to your same private key. This is useful for example for work vs. activism vs. software<br />
development.</p>
<p>Once your key is generated and your private key secured, you can share your public portion of the<br />
key to a “keyserver” where other people can download it and verify messages were sent by you.</p>
<h2>Web of Trust</h2>
<p>PGP also uses what is called the <strong>“Web of Trust”</strong>, which is used to validate that messages are<br />
encrypted by a trusted source. There are different levels of trust depending on where a key is<br />
retrieved from. For example, if somebody gave you their public key in person and you were able to<br />
inspect that the identity matches their government id, then you can give it a higher trust level<br />
than one that is sent / retrieved from a keyserver.</p>
<p>My understanding of this portion is that over time your key is signed by other’s with their level of<br />
certainty about you / your key, which over time increases the overall trust in your key.</p>
<h2>Out of the weeds</h2>
<p>Now that we’ve got an understanding of some of the technical aspects, lets talk about some real use<br />
cases of PGP encryption.</p>
<p>PGP encryption is used by some email clients / applications, such as<br />
<a href="https://canarymail.io/">Canary</a>,<br />
<a href="https://www.thunderbird.net/en-US/thunderbird/115.0/holidayeoy/">Thunderbird</a>, or<br />
<a href="https://gpgtools.tenderapp.com/">GPGSuite</a>.</p>
<p>In my understanding, it is also what is used in devices such as a<br />
<a href="https://www.yubico.com/">YubiKey</a>.</p>
<p>Many of the mentioned applications allow for an easier interface / adoption, as one of the reasons<br />
it is not very popular is that it can be hard to use PGP for the average person.</p>
<p>Aside from using my PGP key for signing software commits, my major use case is for encrypting files<br />
that I store in a “cloud” provider. Know that when someone says the “cloud”, it is really just a<br />
computer (in reality a gang of computers in a data center). You are solely reliant that these cloud<br />
providers are not snooping on, inspecting, or even selling your data.</p>
<p>Of course, some data may not be that sensitive, so maybe you don’t care. However with a little bit<br />
of effort on your part you can at least make it very hard for anyone to know what is inside your<br />
documents. You can be in control of the way your items are encrypted and have confidence that nobody<br />
but you can access what is inside your documents.</p>
<p>Heck, I even encrypt documents that are stored on my own network / computer so that if something<br />
get’s stolen or someone breach’s my network they will not be able to easily get to sensitive data.</p>
<h2>Conclusion</h2>
<p>This article is just meant as an overview of PGP encryption. In future articles I will show you how<br />
to use it to encrypt your data and be in control of your privacy.</p>
<h3>Resources</h3>
<ul>
<li><a href="https://gnupg.org/">GnuPG</a></li>
<li><a href="https://www.openpgp.org/">OpenPGP</a></li>
<li><a href="https://gpg.wtf/">gpg.wtf</a></li>
<li><a href="https://www.ietf.org/rfc/rfc4880.html">RFC4880</a></li>
</ul>http://localhost:3000/articles/2024/unvr-as-nas/UNVR as NAS2025-02-19T21:32:01Z<p>In this post, I’m going to show how to setup a Samba server on a Ubiquity UNVR so that it can be<br />
used as NAS (network attached storage). Be aware that this should be done with caution and may void<br />
any warranty on your UNVR as we are using it for purposes beyond it’s original intent. It’s also<br />
possible that this setup will break when / if updating the UNVR software. With that said, let’s jump<br />
in.</p>
<p>This post follows along with<br />
<a href="https://www.reddit.com/r/Ubiquiti/comments/11o7v8l/how_to_use_the_unvr_as_a_nas_instructions/">this reddit post</a>,<br />
with some adaptations to get it to work on the latest Unifi-OS release of <code>3.2.12</code>.</p>
<h2>Step One - Setup SSH & Login</h2>
<p>In your unifi network console you need to enable the <code>SSH</code> login option and set a secure password<br />
for the root user to login to the UNVR.</p>
<p><img src="/articles/images/2024-03-15-ssh.png" alt="ssh.png" /></p>
<p>Once that is complete you can login to your UNVR using your terminal and the IP address of your UNVR<br />
on your network.</p>
<p><code>ssh root@192.168.1.10</code></p>
<h2>Step Two - Install Samba</h2>
<p>First, we’ll update the package registry information.</p>
<p><code>apt-get update</code></p>
<p>Next, install samba.</p>
<p><code>apt-get install samba</code></p>
<h2>Step Three - Setup Samba</h2>
<p>In order to edit the configuration we are going to need to install your terminal based text editor<br />
of choice (generally nano or vim), for me I will install vim.</p>
<p><code>apt-get install vim</code></p>
<p>Create a backup of the default configuration.</p>
<p><code>cp /etc/samba/smb.conf /etc/samba/smb.conf.bak</code></p>
<p>Open the configuration file to be edited.</p>
<p><code>vim /etc/samba/smb.conf</code></p>
<p>Just above the <code>Share Definitions</code> section of the configuration, I added some global settings to<br />
make the samba server act better for time machine backups.</p>
<pre><code>#======================= MacOS Client Optimizations =======================
vfs objects = fruit streams_xattr
fruit:metadata = stream
fruit:model = MacSamba
fruit:posix_rename = yes
fruit:veto_appledouble = no
fruit:nfs_aces = no
fruit:wipe_intentionally_left_blank_rfork = yes
fruit:delete_empty_adfiles = yes
</code></pre>
<p>Also because we want users we create to be able to read and write to their home directories created<br />
on the samba server, we need to change the option under the <code>[homes]</code> share definition to be<br />
<code>read only = no</code>.</p>
<p>That is our primary configuration. You can add more share definitions at the bottom of the file to<br />
suit your use case, there are decent examples of this in the original reddit post, linked in the<br />
beginning.</p>
<p>Save and exit the file.</p>
<p><code>:wq</code></p>
<h2>Step Four - Start Samba</h2>
<p>Use the following command to start the samba server.</p>
<p><code>sudo service smbd start</code></p>
<p>You can check the status, by running the following command.</p>
<p><code>systemctl status smbd</code></p>
<p><img src="/articles/images/2024-03-15-status.png" alt="status" /></p>
<p>Enable the samba server to start on boot.</p>
<p><code>systemctl enable smbd.service</code></p>
<h2>Step Five - Create Users</h2>
<p>Create a user with a home directory that they can use.</p>
<p><code>useradd --create-home michael</code></p>
<p>Give the user a password to login to the samba server.</p>
<p><code>smbpasswd michael</code></p>
<h2>Step Six - Login to Samba Server from Client</h2>
<p>In the <code>Finder</code> app on macOS you can type <code>⌘k</code> to connect to a server.</p>
<p>In the text field enter <code>smb://<USER>@<UNVR_IP></code> to connect to the samba server.</p>
<p><img src="/articles/images/2024-03-15-connect.png" alt="connect" /></p>
<p>You can also automatically connect to the server when you login to your client device, for this to<br />
work you need the credentials to be stored in your keychain (ticking the box in the step above when<br />
you first connect to the server).</p>
<p>This is found in <code>System Settings -> General -> Login Items -> Open at Login</code>. Click the plus button<br />
and select the volume you would like to mount at login.</p>
<p><img src="/articles/images/2024-03-15-login.png" alt="login" /></p>
<p>Once you have it setup so that the server is connected on login, you can also set it up as location<br />
for Time Machine Backups. <code>System Settings -> General -> Time Machine</code></p>
<p><img src="/articles/images/2024-03-15-time-machine.png" alt="time-machine" /></p>http://localhost:3000/articles/2024/elevating-hvac/Elevating HVAC: A Skilled Trade Beyond Labor2025-02-19T21:25:29Z<p>This is a guest post from my good friend, <strong>Ty Branaman</strong>.</p>
<h2>Introduction:</h2>
<p>Heating, Ventilation, and Air Conditioning (HVAC) is often mistakenly categorized as a simple labor<br />
job, overshadowing the intricate skill set and technical expertise required in this field. Labor<br />
jobs are also very important positions needed to keep society running. HVAC, like other skilled<br />
trades, demands a high level of knowledge, precision, and adaptability. This article aims to shed<br />
light on the misconception surrounding HVAC, emphasizing its status as a skilled trade that plays a<br />
pivotal role in creating comfortable and efficient living and working environments.</p>
<h2>Technical Proficiency:</h2>
<p>One of the defining features that distinguish HVAC as a skilled trade is the level of technical<br />
proficiency required. HVAC professionals must have a deep understanding of thermodynamics, fluid<br />
mechanics, electrical circuits, Psychrometrics and air properties. This knowledge is essential for<br />
designing, installing, and maintaining HVAC systems that operate seamlessly and efficiently.</p>
<h2>System Design and Installation:</h2>
<p>HVAC professionals are involved in the intricate process of designing and installing heating,<br />
ventilation, and air conditioning systems. This task requires not only a thorough understanding of<br />
the physical principles governing HVAC but also the ability to tailor solutions to meet the unique<br />
needs of each space. Proper system design and installation are crucial for achieving optimal energy<br />
efficiency and performance.</p>
<h2>Diagnostic Skills:</h2>
<p>Troubleshooting and diagnosing issues in HVAC systems require a keen analytical mind and<br />
problem-solving skills. Skilled HVAC technicians possess the ability to identify and rectify<br />
problems efficiently, ensuring minimal downtime and disruption to the comfort of occupants. This<br />
diagnostic acumen is a hallmark of a trade that goes beyond routine labor.</p>
<h2>Adaptability to Advanced Technologies:</h2>
<p>The HVAC industry is in a constant state of evolution, with new technologies and innovations<br />
continuously being introduced. Skilled HVAC professionals are adaptable and stay abreast of these<br />
advancements. From smart thermostats to energy-efficient systems, they integrate cutting-edge<br />
technologies to provide state-of-the-art solutions for their clients.</p>
<h2>Safety and Compliance:</h2>
<p>Safety is paramount in the HVAC trade. Professionals must adhere to strict safety protocols to<br />
protect both themselves and the occupants of the spaces they work in. Additionally, compliance with<br />
industry regulations and codes is a testament to the skilled nature of the trade, ensuring that HVAC<br />
systems meet the highest standards of safety and efficiency.</p>
<h2>Continual Learning and Certification:</h2>
<p>Unlike a labor job, HVAC professionals engage in continual learning to stay current with industry<br />
trends and technological advancements. Many pursue certifications and attend training programs to<br />
enhance their skills and expand their knowledge base. This commitment to ongoing education is a<br />
hallmark of skilled trades.</p>
<h2>Conclusion:</h2>
<p>Heating, Ventilation, and Air Conditioning is undeniably a skilled trade that goes beyond the<br />
perception of a labor job. Labor jobs are also very important to the function of society and I have<br />
proudly done these jobs myself. The technical proficiency, problem-solving abilities, adaptability,<br />
and commitment to safety make HVAC professionals essential contributors to the creation of<br />
comfortable and efficient indoor environments. It is crucial to recognize and appreciate the skill<br />
set inherent in the HVAC trade, as it plays a vital role in shaping the quality of life for<br />
individuals and the functionality of diverse spaces.</p>
<ul>
<li>Ty Branaman</li>
</ul>http://localhost:3000/articles/2023/most-important-job/Most Important Job2025-02-19T21:21:54Z<p>This short tech tip is about something one of my good friends in the trade told me a long time ago,<br />
that has stuck with me through the years. It is a simple phrase / mindset.</p>
<blockquote>
<p>“The current job you’re on, is the most important job of your day”.</p>
</blockquote>
<p>This mindset should be carried from the dispatcher, manager, and technician to make this successful.<br />
I’m not gonna lie and say this is always easy, or even always possible, but if you strive to use<br />
this mindset then you will gain lifelong customers and satisfaction of not having loose ends hanging<br />
out there.</p>
<p>I do think it’s also important to acknowledge that there are times that a technician has exhausted<br />
all their options, maybe they just don’t have the mental capacity anymore to continue with a problem<br />
job, or need a break to come back another day with a fresh set of eyes, etc… This is also an<br />
important thing for a technician to realize, and hopefully those type of instances are much more few<br />
and far between, but I do want to acknowledge that scenario does also exist.</p>
<p>If you are a business owner, then this is something to consider instilling in your operations.<br />
Empower your technicians and dispatchers to understand when things need to be shuffled around in<br />
order to accommodate taking care of the customer at hand. It costs a lot of money to get a<br />
technician to job, so minimizing truck rolls to the same job is important from a business<br />
standpoint.</p>
<p>This was just a quick tech tip of something that has been rolling around in my mind lately. I hope<br />
you find it helpful and it sticks with you through your career as it has mine.</p>http://localhost:3000/articles/2023/cancel-this/Cancel This2025-02-19T21:17:16Z<p>This post is going to be hard to put into words, it’s going to seem egotistical at points, but know<br />
that my actions / feelings online are the same as they are if you met me in person. The problem with<br />
online interactions is tone and other subtleties do not come across, so it’s hard to tell when<br />
someone is joking or being serious.</p>
<h2>The Meat</h2>
<p>It has been brought to my attention that someone out there thinks that I’m sexist and should not<br />
speak at the HVAC School symposium because of it. They are holding a curse word against me that I<br />
said two years ago, in the moment A) it was fitting and B) it was one of those times that my mouth<br />
was working faster than my brain (raise your hand if that’s ever happened to you).</p>
<p>I am an open book, I am not afraid of showing failures and strengths. I’ve never claimed to be<br />
perfect (well, actually I have but it’s always a joke). I’m not at all condoning what I’ve said in<br />
the past, nor will I repeat it out of context now, but I communicate with people like adults and I<br />
look at people as piers. We do not always have to agree with one another, conflict helps us learn<br />
where to grow, but we also can not expect people to change to fit our wants / needs, that’s just not<br />
how it works.</p>
<p>I do not at all agree with the tactics used by whomever is behind this. I would happily discuss this<br />
in private or out in the open. You can find all my contact / social information in the sidebar of<br />
this website and I’ve offered up my cell phone number in private groups that we are all probably a<br />
part of.</p>
<h2>The Potatoes</h2>
<p>I am a father of 3 girls, I have a sister, talk crap about my mom and you’ll find out who I am! I<br />
love women, I have no problem with women in the trades, I encourage women who are in the trades. I<br />
try to help every person that I can, if I can. I have failed more times than you can imagine! I am<br />
self taught in about everything I do, so I give of it freely. I have all kinds of work to do to grow<br />
into the man that I should be, but at the same time, I am not afraid to be the man that I am today.<br />
I will greet you by whatever pronoun you want to be referred as.</p>
<p>I would love to say that I don’t judge people, but I do, just as I’m being judged! I am fine with<br />
someone judging me and having opinions about me, I mean that is our right. I will not say that<br />
person is wrong, because in their mind they’re right. What I will not do is stop being myself. I<br />
know for a fact that I’ve helped more people than this person has gotten “cancelled”. I will<br />
continue to help people in the trades, homeowners, or people in need. I also will not remain quiet!<br />
I will give my opinion like it or not. There are people in my corner that really know me and my<br />
intentions.</p>
<h2>Final Words</h2>
<p>The trades are rough around the edges, just as am I. The trades are a slow turning ship (just look<br />
at how many still do not follow proper practices, etc. even with the capabilities and resources<br />
available today).</p>
<p>If you are new / coming into the trades then I hope you are not overly sensitive to foul language<br />
and other inappropriate comments. Thick skin is valuable in the trades, but at the same time don’t<br />
be afraid to speak up if something offends you. Remember we are adults, we can handle disagreements<br />
like adults (well, some of us can). Adults can learn from those of any age, they can reflect on<br />
their own behavior and make their own decisions.</p>
<p>I personally think that being offended is not a bad thing, it causes us to reflect / repair our<br />
foundational beliefs. I hope that we can stop with this “cancel culture” of today, stop hiding<br />
behind a keyboard, and be a diverse community.</p>
<p>To wrap things up, I just want to reiterate that I am not at all mad at whomever is behind this. To<br />
everyone out there who has shown me love and support, I greatly appreciate it.</p>http://localhost:3000/articles/2023/hope/Hope2025-02-19T21:13:20Z<p>This is a piggy-back article off of<br />
<a href="https://mhoush.com/posts/20231018224631-the-struggle/">The Struggle</a> article that I had recently.</p>
<p>I was a bit of a “Debbie Downer” in that article, which is okay, I get that way sometimes. In this<br />
article I’d like to take a minute to layout some of the things that give me hope, things that I<br />
focus on to try and kick myself out of the rut I can get into sometimes.</p>
<p>I believe it’s important to have <strong>hope</strong>, to realize that feeling down is normal / part of being<br />
human. It’s just as important to have hope. For some it is a harder thing to focus on, it may be<br />
easy for us to try and dwell in negative feelings, to some that may feel more comfortable. When<br />
we’re feeling cynical, it’s easy to feed the negativity, although it’s rarely helpful.</p>
<h2>Hope</h2>
<p>One of the things that I try to focus on is that I’m human, it brings me hope to realize that I’m<br />
not the only one who feels the way that I do. This was evident by the feedback on my previous<br />
article.</p>
<blockquote>
<p>My problems are very much “first world problems”.</p>
</blockquote>
<p>Make no mistake, I’m selfish, but it’s the selfishness that makes me feel distant or disconnected.<br />
The times that I feel connected are without a doubt the times that I let go of my ego and focus on<br />
things outside of myself.</p>
<p>It’s the feeling I get from going to customers home and feeling truly appreciated. There’s no push<br />
back on price, no one telling me how I should run my business, no “the part only costs $x on<br />
amazon”, etc.</p>
<p>The feeling of seeing your child smile. The safety you feel when getting a hug from your mother or<br />
father. When you’re looking up at the stars and realize how small you actually are.</p>
<p>When you’re out with friends and trick the DJ into playing a Mr. Bungle song and no one else<br />
appreciates it, but you. The times when your guard is completely down and you laugh with abandon.</p>
<p>The smell of your lover’s hair when you’re holding them close. The joy you receive from sitting with<br />
your pets. The songs of nature, insects, birds, etc. The sounds of waves / water in the distance.</p>
<p>The feeling when you’ve helped someone learn a new skill, when something finally clicks and makes<br />
sense. When a complex topic is understood at a fundamental level. The breakthrough of a problem<br />
you’ve pondered for days / months / years.</p>
<h2>Conclusion</h2>
<p>There are so many things to be grateful for. This does not mean that there will not be hard times,<br />
there surely will be. This does not mean that you are wrong for having negative feelings, for<br />
feeling depressed or anxious. There are many around you that likely feel similar (they may just not<br />
be able to express it in the same way). You never truly know what the person next to you is dealing<br />
with. Be compassionate (including showing yourself compassion).</p>
<p>When you are feeling down, try to do something for someone else. Make your own list of things to be<br />
thankful for. Maybe my non-exhaustive list above will give you some ideas. Write those items down<br />
regularly so that you can look back on them when you feel out of balance.</p>
<p>There is plenty of negative energy in this world, be true and genuine and you will receive rewards.<br />
When you focus on blessings then the negativity will fade.</p>
<p>What impact are you going to leave with what little time we have?</p>
<p>I hope that you enjoyed this short article. Know that you are <em>NOT</em> alone, you are important, and<br />
that I appreciate <em>you!</em></p>http://localhost:3000/articles/2023/heat-recovery-chiller/Heat Recovery Chiller2025-02-19T21:08:37Z<p>This is an article that I wrote back in 2020, but I don’t believe that I published it anywhere, so<br />
I’m doing it now. I did discuss this on<br />
<a href="https://hvacrschool.com/podcasts/is-the-future-of-air-conditioning-self-contained-propane-chillers/">this episode of the HVAC School Podcast.</a></p>
<h2>Heat Recovery Chillers</h2>
<p>I have always had a love and passion for hydronic systems, perhaps it’s because they are not that<br />
common in most areas. The designs tend to be elegant and the flexibility is unparalleled by most<br />
equipment choices currently available in the U.S. I’m going to try to not get too far into the weeds<br />
in this article, but offer an overview of what I feel would be my dream system.</p>
<h2>The Source</h2>
<p>A heat recovery chiller will do simultaneous heating and cooling, as opposed to a traditional<br />
heat-pump or reverse cycle chiller that can only operate in one mode at a time. This system would<br />
have a second refrigerant to water heat exchanger and utilize the air-source when we don’t need to<br />
bank / store heat, or are running in heat only mode. There are several benefits to this style<br />
system, the main being that while operating simultaneous heating / cooling mode the COP of the<br />
system doubles. For example, the <a href="https://multiaqua.com/mhrc2/">Multi-Aqua MHRC2</a> shows a COP of<br />
about 8, which is approximately equivalent to 30 EER or 34 SEER. This gives us geothermal level<br />
performance without the need of a field.</p>
<h2>Indoor Portion</h2>
<p>The indoor portion of the system, we would utilize buffer tanks as thermal storage for the chiller.<br />
The buffer tanks give us several benefits, including longer run times for the chiller, load<br />
matching, and the ability to size for larger load (heating or cooling) without some of the problems<br />
that occur when over-sizing a traditional system. The buffer tanks also allow sizing more<br />
aggressively by having storage during peak load conditions.</p>
<p><img src="/articles/images/2023-10-27-buffers2.png" alt="buffer" /></p>
<p>This shows a cooling buffer tank as well as a heating buffer tank. The horizontal pumps are what<br />
circulate water through the chiller, while the vertical pumps are what distribute the water to the<br />
load / emitters. This configuration allows for water to be used for the loads first and extra<br />
capacity to go into the buffer tanks. The buffer tanks also offer hydraulic separation for the pumps<br />
(meaning that they won’t interfere with each other if / when there are different flow rates).<br />
Another advantage of the buffer tanks is that you can connect multiple heating or cooling sources in<br />
parallel to the system. This is shown by the extra tees in the hot buffer tank where we could<br />
connect something such as solar water collectors, pellet or wood boiler, or a conventional boiler.<br />
You’ll also notice on the right side of the hot buffer tank, that I am showing a brazed plate heat<br />
exchanger that would be used to supply domestic hot water.</p>
<h2>Distribution System</h2>
<p>This could be a number of things, from radiant panels, in-floor, high-output baseboard radiators,<br />
however I’m going to model it as a 4-pipe hydronic air handler.</p>
<p><img src="/articles/images/2023-10-27-ah.png" alt="ah" /></p>
<p>The hydronic air handler is able to provide cooling, heating, and re-heat dehumidification, all in<br />
one package. With a hydronic system, it would be very easy to load match by controlling the fan<br />
speed and utilizing a Delta-T pump or outdoor reset controls. These air handlers are available from<br />
several manufacturers and come in different styles from traditional (as shown), small duct high<br />
velocity systems, and even ductless styles.</p>
<h2>Disadvantages</h2>
<ol>
<li>Not highly available in the U.S.</li>
<li>When the chiller is down nothing works (not much different than traditional)</li>
<li>Lack of understanding / technicians afraid to work on this style system.</li>
<li>Potentially higher upfront costs.</li>
<li>Lack of design or planning could cause unhappy clients (same with traditional)</li>
<li>Distribution systems need to be designed around low water temperatures (not a drop in replacement<br />
for traditional boiler systems)</li>
</ol>
<h2>Advantages</h2>
<ol>
<li>Central plant for heating, cooling, and DHW (also a disadvantage)</li>
<li>Flexible distribution options / methods.</li>
<li>Self contained refrigerant circuit</li>
<li>Ability to produce / store thermal energy during off peak electrical hours</li>
<li>Ability to move BTU’s more efficiently through water than air</li>
<li>Long life for distribution system (50-100+ years)</li>
<li>Easier transition to natural / flammable refrigerants</li>
</ol>
<h2>Conclusion</h2>
<p>In conclusion, there are many advantages to this style system, as well as disadvantages. One of the<br />
main points is to think of the system in 3 distinct components, the source(s), thermal storage, and<br />
distribution. As mentioned, this only one concept, but in reality, there are many ways to accomplish<br />
this, which is one of it’s advantages. For example, perhaps in certain scenarios it makes sense to<br />
dump excess heat into a pool, create ice storage during off peak hours, cascade into another water<br />
-> water heat pump for higher temperature distribution, incorporate solar collectors, and so on.</p>
<p>Thank you for reading all the way to the end!</p>http://localhost:3000/articles/2023/you-should-learn-markdown/You Should Learn Markdown2025-02-19T20:51:49Z<p>This is a quick article about why you should learn markdown.</p>
<h2>What is markdown</h2>
<p>Markdown is a “mark-up” language. It allows you to write content in plain text that can be easily<br />
converted to other formats, such as <strong>html, pdf, docx</strong>, and many more. All the articles written on<br />
this website are written in markdown, here’s an image of this article written in markdown.</p>
<p><img src="/articles/images/2023-10-21-markdown.png" alt="markdown" /></p>
<p>The reason you should learn markdown is that it allows you to focus on the content / text of your<br />
content with simple concepts for formatting. Markdown is used heavily in documenting software<br />
projects, which is how I got introduced to it, however it can scale all the way up to writing<br />
research papers or even books.</p>
<p>I use markdown for probably 80% of all the text documents I need to write, from company documents,<br />
web / software documentation, and so on. It allows me to get content out quickly without having to<br />
click around with formatting options in a program like <strong>Word</strong> or <strong>Pages</strong>. To be clear, a lot of<br />
the reports and things I generate for my <strong>Home Performance Assessments</strong> are written using<br />
<strong>Pages</strong> (for now at least) because I have templates that make the documents look more<br />
professional, however I am working on solutions to migrate those to be markdown based.</p>
<p>Markdown is supported in mostly all the <strong>Google</strong> tools, as well as the <strong>Outlook</strong> email client<br />
(which is one of my least favorite tools, BTW). It makes it simple to create tables, lists, and many<br />
common document related tasks.</p>
<h2>Resources</h2>
<p>You can learn more about the syntax used for markdown at<br />
<a href="https://www.markdownguide.org/basic-syntax/">markdownguide.org</a>.</p>
<h3>A non-exhaustive list of where you can use Markdown and editors.</h3>
<table>
<thead>
<tr>
<th>Platform</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>Google</td>
<td>Most goggle tools support markdown, docs, sheets, etc.</td>
</tr>
<tr>
<td>Outlook</td>
<td>Although I hate outlook email client, it does support markdown.</td>
</tr>
<tr>
<td>Dillinger.io</td>
<td>An online tool for writing / previewing markdown</td>
</tr>
<tr>
<td>MarkText</td>
<td>A multi-platform editor for writing markdown</td>
</tr>
</tbody>
</table>
<p>You can use tools such as <a href="https://pandoc.org/#">pandoc</a> to convert Markdown files to other formats.</p>
<p><img src="/articles/images/2023-10-21-pandoc.gif" alt="pandoc" /></p>
<h2>Conclusion</h2>
<p>I hope that you take the time to research and see if Markdown is good fit for your document /<br />
content creation.</p>
<p>Thanks for reading until the end!</p>http://localhost:3000/articles/2023/the-struggle/The Struggle2025-02-19T20:53:34Z<p>This is a get stuff of my chest article. Probably going to be a mixture of ranting and whining. If<br />
that is not your cup of tea then feel free to skip this article.</p>
<h2>The struggle</h2>
<p>It has been one of those “when it rains, it pours” type of weeks. As write this, I feel like a baby<br />
/ complainer, which is not my intention, but here it goes.</p>
<p>My aunt had a stroke and is likely not going to make it through the week. My aunt has always lived<br />
in Florida during my life / memory, but has always come to visit. She is my mom’s oldest sister (9<br />
years apart), so she helped raise my mother growing up. They’ve always had a close relationship and<br />
are like two peas in a pod. They would always visit us, especially while my grand-parents were still<br />
alive. She is currently not really awake or expected to make it. She does not eat / drink and<br />
they’ve basically just been making her comfortable.</p>
<p>One of my employees broke his neck over the weekend. I don’t have a ton of details on this subject,<br />
but he had surgery to fuse some discs back together and should eventually be ok, however it will be<br />
a long recovery time.</p>
<p>A few weeks ago, I commited one of the deadly sins of running a blower door test without checking /<br />
asking about the fireplaces, which caused lord knows how much damage from the soot that was spread<br />
throughout the living room(s).</p>
<p>An online friend lost her mother.</p>
<p>All of these things have just got me emotional.</p>
<h2>My secrets</h2>
<p>I am an emotional person, sometimes to my detriment. I’m prone to fits of anger and depression. I<br />
spent many years masking things through alcohol abuse and many other idiotic tendencies. I still<br />
drink on occasion, but not as I once did.</p>
<p>I often put my faith in folks, even if I haven’t met them in person, this can often lead to being<br />
let down. I guess I struggle sometimes with the reality of online relationships. I think that people<br />
are genuine, because I’m that way (how I act online is the same as I act in person for the most<br />
part). I will happily show / share the good and the bad, in hopes that someone may learn. This is<br />
not at all something to be ashamed of, or anything that I’d like to change, however it does on<br />
occasion lead me into turmoil when I find out some true identity / personality of someone.</p>
<p>I hold grudges, like forever grudges. It is very hard for me to get over somethings, even if I want<br />
to. I can sometimes put things out of my mind, but when I’m spinning, they will resurface. I want to<br />
forgive people, but it is just not the way it works for me often times. It takes a lot to get me<br />
beyond my breaking point, but once someone has gotten me there, there is likely no turning back for<br />
that person. Luckily, I can count on one hand the number of folks that I’ve had to cut out of my<br />
life for these reasons. I’d love to say that I’m a bigger / better person, that I forgive them, but<br />
truthfully I do not.</p>
<p>My emotions sometimes make me say things publicly that I should keep to myself. I don’t have a lot<br />
of regret around these things, because I generally mean what I say, and also feel we are entitled to<br />
opinions as well as entitled to change those opinions as often as we see fit. Although I don’t<br />
regret them per-se, it does make me wonder what type of impression it leaves (something for future<br />
pondering, perhaps).</p>
<p>I’m one of those that says “I don’t care what they think about me”, when I really do care what<br />
people think about me. This often leads to fear and anxiety, especially in social settings. I’m not<br />
the greatest at conversation, I’m better at writing or some interaction that gives me a bit of time<br />
to think before responding. Therefore, I’m quick to make a joke or something rather than having<br />
thoughtful / genuine responses.</p>
<h2>Community</h2>
<p>All of these things have just got me thinking about community. Community is an aspect that seems<br />
distant nowadays, even though we have more opportunity than ever. We call ourselves part of<br />
communities, especially online, but I’m not convinced that it is really community (or at least not<br />
most of the time, not saying it can’t be / in absolute terms).</p>
<p>I have met a lot of folks online that I consider true friends. Friends that I would do anything for<br />
and feel they would do anything for me, just like my real life friends who have stuck with me for<br />
many years. These are people that challenge me and how I think on a regular basis. They do their<br />
best to lift me up when I’m down.</p>
<p>It’s easy to hide when so much of our interactions are not really in person, to feel like the<br />
relationships we do have are not genuine, but that’s awfully cynical. I prefer to give people the<br />
benefit / trust they deserve until, at least until they don’t then see my part about holding grudges<br />
;)</p>
<p>Do you ever feel the same? Instead of being cynical and down, today, I’m trying to be positive. I’m<br />
trying to share a little bit of what I feel community should be. Although, I’ve never met HVAChicks<br />
Jennifer in real life, I read today about her mom and decided to take an hour or so to put together<br />
a website for the <a href="https://hvachicks.com">HVAChicks Community</a>, hoping it would bring a moment of<br />
happiness to her day. While I’ve deployed several websites in the past, this one for some reason was<br />
a total PITA, but I got through it. I could feel how grateful she was when I shared it with her (and<br />
it’s basic AF), but that truly made me feel useful / great after being down in the dumps for a bit.</p>
<h2>Conclusion</h2>
<p>I’ve probably rambled enough and am losing direction here, so I will end with a few things.</p>
<ol>
<li>Build the community around you that you want / deserve.</li>
<li>Don’t be so quick to pass judgment.</li>
<li>Spend time with your loved ones, while you can.</li>
<li>Tell someone you love them.</li>
</ol>
<p>Finally, I’d like to shout out some people that I’m grateful for. This is non-exhaustive list, if I<br />
left you off, I’m sorry and please do not take it personally.</p>
<ol>
<li>Bryan Orr
<ul>
<li>Bryan has cultivated an awesome group / community that I’m proud to be a part of. His time and<br />
commitment to the HVAC industry is something that I hope he himself is proud of. Without Bryan,<br />
mostly all the following names would not even be in my vocabulary.</li>
</ul>
</li>
<li>Ty Branaman (forget exactly how to spell his last name).
<ul>
<li>Ty has such a great personality during his videos / training and I’m sure it’s a struggle to be<br />
positive all the time, however it brings me hope and joy everytime!</li>
</ul>
</li>
<li>Dustin (mother f’n) Cole
<ul>
<li>Dustin is like a brother that I never had, he’s a true master of his craft and I know that I<br />
can rely on him anytime I need it!</li>
</ul>
</li>
<li>Genry Garcia
<ul>
<li>The cuban crusader who has taught me so much about home performance, and especially ZPD (baby,<br />
baby)!</li>
</ul>
</li>
<li>Chris Hughes
<ul>
<li>It’s hard to put into words here, but I know that Chris is there to talk when I need it and<br />
he’s a great motivator because of his action items :)</li>
</ul>
</li>
<li>Eric Kaiser
<ul>
<li>I think genuine when I think of Eric, I hear his voice in my head when I write reports because<br />
of guidance he has given in the past. He truly wants to help teach people.</li>
</ul>
</li>
<li>Michael Cianfracco (??)
<ul>
<li>Man does he make me laugh and we share a passion for the 4-Roses.</li>
</ul>
</li>
<li>HVAChicks Jennifer (I’ll butcher her last name from memory)
<ul>
<li>Jennifer is inspiring with her goals and everything she does to help anyone in the industry. I<br />
can’t wait to meet her in person one day soon!</li>
</ul>
</li>
<li>HVAC Overtime Crew
<ul>
<li>I’m lumping these guys together because I truly enjoy when I’m able to make their live stream<br />
on Friday’s. And I interact with A-Team a lot and really appreciate him / them!</li>
</ul>
</li>
<li>Alicia Hollon
<ul>
<li>Alicia is so awesome to me, I mean she just made my favorite pancakes and sausage for dinner,<br />
love you babe!</li>
</ul>
</li>
</ol>
<p>Lastly, I have to shout out to my mom. I know she’s going through a rough time with my aunt<br />
currently. My mother is the kindest gentlest soul that I’ve ever met. I look up to all 5’ of her!</p>
<p>At any rate, thanks for sticking it out to the end through my ramblings. Be kind to someone today<br />
and tomorrow!</p>http://localhost:3000/articles/2023/calculate-seer-degradation-by-age/Calculate SEER Degradation by Age2025-02-19T21:55:30Z<p>This is a quick tech-tip to learn how to calculate the degradation of SEER based<br />
on age.</p>
<p>The degradation of SEER is due to fouling of the evaporator coil with dirt and<br />
refrigerant charge losses. It should be noted that this is not true for all<br />
applications, but is used as an estimation based on research done by the <code>DOE</code><br />
of the average degradation based on systems tested.</p>
<h2>Formula</h2>
<p>This is the formula used to calculate the SEER based on age of the evaporator<br />
coil / air handler.</p>
<p>$$ SEER_d = SEER_n \times (1 - M)^{age} $$</p>
<p>| Where | |<br />
| –––– | —————————————— | — |<br />
| $SEER_d$ | Degradated SEER rating |<br />
| $SEER_n$ | Nominal SEER rating when equipment was new | |<br />
| M | Maintenance factor, 0.01-0.03 |<br />
| age | The age of the equipment, in years |</p>
<p>The maintenance factor of 0.01 is for expertly maintained equipment and 0.03 is<br />
for unmaintained. The maintenance factor in essence is based on 1%-3%<br />
degradation per year, however there are some<br />
<a href="https://publications.energyresearch.ucf.edu/wp-content/uploads/2018/09/FSEC-PF-474-18.pdf">studies</a><br />
that show that this can actually be as high as 5% or above depending on climate.<br />
We could use up to 0.05 as the maintenance factor, just to see what the “range”<br />
of degradation would be.</p>
<p>Interestingly, the study linked also shows that the degradation is higher the<br />
higher the tonnage of the equipment. It also shows that the degradation is lower<br />
per year the higher the nominal SEER rating of the system (which is corelated to<br />
using TXV’s and lower airflow rates because of the equipment having multiple<br />
stages).</p>
<h2>Example</h2>
<p>Let’s consider that we have a 13 SEER piece of equipment that was matched when<br />
installed and the system is 15 years old.</p>
<p>Plugging those numbers into our formula.</p>
<hr />
<h4>Lowest Range (1% degradation / year)</h4>
<p>$$ SEER_d = 13 \times (1 - 0.01)^{15} = 11.2 $$</p>
<hr />
<h4>Highest Rage (5% degradation / year)</h4>
<p>$$ SEER_d = 13 \times (1 - 0.05)^{15} = 6 $$</p>
<hr />
<p>An expertly maintained system may not have degraded that much, with an 11.2 SEER<br />
vs. a poorly maintained / dirty system that also suffers from refrigerant charge<br />
losses can be as low as 6 SEER.</p>
<p>Thanks for learning how to estimate SEER degradation based on equipment age!</p>