feat: Ports all existing articles and images.
This commit is contained in:
@@ -68,50 +68,50 @@ job, overshadowing the intricate skill set and technical expertise required in..
|
||||
<img alt="banner" src="http://localhost:3000/articles/images/2024-02-27-elevating-hvac.png"/>
|
||||
<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 />
|
||||
<p>Heating, Ventilation, and Air Conditioning (HVAC) is often mistakenly categorized as a simple labor
|
||||
job, overshadowing the intricate skill set and technical expertise required in this field. Labor
|
||||
jobs are also very important positions needed to keep society running. HVAC, like other skilled
|
||||
trades, demands a high level of knowledge, precision, and adaptability. This article aims to shed
|
||||
light on the misconception surrounding HVAC, emphasizing its status as a skilled trade that plays a
|
||||
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 />
|
||||
<p>One of the defining features that distinguish HVAC as a skilled trade is the level of technical
|
||||
proficiency required. HVAC professionals must have a deep understanding of thermodynamics, fluid
|
||||
mechanics, electrical circuits, Psychrometrics and air properties. This knowledge is essential for
|
||||
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 />
|
||||
<p>HVAC professionals are involved in the intricate process of designing and installing heating,
|
||||
ventilation, and air conditioning systems. This task requires not only a thorough understanding of
|
||||
the physical principles governing HVAC but also the ability to tailor solutions to meet the unique
|
||||
needs of each space. Proper system design and installation are crucial for achieving optimal energy
|
||||
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 />
|
||||
<p>Troubleshooting and diagnosing issues in HVAC systems require a keen analytical mind and
|
||||
problem-solving skills. Skilled HVAC technicians possess the ability to identify and rectify
|
||||
problems efficiently, ensuring minimal downtime and disruption to the comfort of occupants. This
|
||||
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 />
|
||||
<p>The HVAC industry is in a constant state of evolution, with new technologies and innovations
|
||||
continuously being introduced. Skilled HVAC professionals are adaptable and stay abreast of these
|
||||
advancements. From smart thermostats to energy-efficient systems, they integrate cutting-edge
|
||||
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 />
|
||||
<p>Safety is paramount in the HVAC trade. Professionals must adhere to strict safety protocols to
|
||||
protect both themselves and the occupants of the spaces they work in. Additionally, compliance with
|
||||
industry regulations and codes is a testament to the skilled nature of the trade, ensuring that HVAC
|
||||
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 />
|
||||
<p>Unlike a labor job, HVAC professionals engage in continual learning to stay current with industry
|
||||
trends and technological advancements. Many pursue certifications and attend training programs to
|
||||
enhance their skills and expand their knowledge base. This commitment to ongoing education is a
|
||||
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 />
|
||||
<p>Heating, Ventilation, and Air Conditioning is undeniably a skilled trade that goes beyond the
|
||||
perception of a labor job. Labor jobs are also very important to the function of society and I have
|
||||
proudly done these jobs myself. The technical proficiency, problem-solving abilities, adaptability,
|
||||
and commitment to safety make HVAC professionals essential contributors to the creation of
|
||||
comfortable and efficient indoor environments. It is crucial to recognize and appreciate the skill
|
||||
set inherent in the HVAC trade, as it plays a vital role in shaping the quality of life for
|
||||
individuals and the functionality of diverse spaces.</p>
|
||||
<ul>
|
||||
<li>Ty Branaman</li>
|
||||
@@ -150,7 +150,6 @@ Programming, Home-Performance, and Building Science
|
||||
</div>
|
||||
<p>
|
||||
<a href="/articles/2025/vapor-htmx-todo-app/"><div>
|
||||
<img alt="banner" src="http://localhost:3000/articles/images/2025-01-05-vapor-htmx-todo-app.png"/>
|
||||
Build an example application using Vapor and HTMX.
|
||||
</div></a>
|
||||
</p>
|
||||
@@ -164,7 +163,6 @@ Programming, Home-Performance, and Building Science
|
||||
</div>
|
||||
<p>
|
||||
<a href="/articles/2024/free-as-in-freedom/"><div>
|
||||
<img alt="banner" src="http://localhost:3000/articles/images/2024-04-09-free-as-in-freedom.png"/>
|
||||
Salute to open-source software engineers
|
||||
</div></a>
|
||||
</p>
|
||||
@@ -195,6 +193,12 @@ Programming, Home-Performance, and Building Science
|
||||
|
|
||||
<a href="mailto:michael@mhoush.com" rel="nofollow">Email</a>
|
||||
</p>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/components/prism-core.min.js">
|
||||
</script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/keep-markup/prism-keep-markup.min.js">
|
||||
</script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/autoloader/prism-autoloader.min.js">
|
||||
</script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -62,67 +62,67 @@
|
||||
<img alt="banner" src="http://localhost:3000/articles/images/2024-04-09-free-as-in-freedom.png"/>
|
||||
<p>This is a hot take kind of article, but here it goes the rant.</p>
|
||||
<h2>This applies to me and you.</h2>
|
||||
<p>I’m writing this to remind myself somethings that I too often take for granted. I am going to<br />
|
||||
preface this whole article by saying that everything I’m going to lay out / mention is something<br />
|
||||
that I am personally guilty of. This is an open reminder and call out of things that I feel should<br />
|
||||
<p>I’m writing this to remind myself somethings that I too often take for granted. I am going to
|
||||
preface this whole article by saying that everything I’m going to lay out / mention is something
|
||||
that I am personally guilty of. This is an open reminder and call out of things that I feel should
|
||||
change.</p>
|
||||
<h1>Our perspective is flawed</h1>
|
||||
<p>Nobody can dispute that the advances in technology have greatly improved our lives. Like anything,<br />
|
||||
<p>Nobody can dispute that the advances in technology have greatly improved our lives. Like anything,
|
||||
though, there is a trade off.</p>
|
||||
<h2>What is FOSS</h2>
|
||||
<p>FOSS is an acronym for “Free and Open Source Software”. It is generally about how software is<br />
|
||||
licensed, meaning that the source code is available in the public for review, allowing a broader<br />
|
||||
spectrum of people than the originators of the code to have input, look for bugs, redistribute the<br />
|
||||
software, contribute, etc. It does not however mean that the software should be no cost to the end<br />
|
||||
<p>FOSS is an acronym for “Free and Open Source Software”. It is generally about how software is
|
||||
licensed, meaning that the source code is available in the public for review, allowing a broader
|
||||
spectrum of people than the originators of the code to have input, look for bugs, redistribute the
|
||||
software, contribute, etc. It does not however mean that the software should be no cost to the end
|
||||
user.</p>
|
||||
<p>This is where the word “freedom” comes into it. Overtime, as a society, we generally now think of<br />
|
||||
FOSS as “free” software. This takes what was originally a noble / courageous idea and devalues it to<br />
|
||||
the point that we now expect things to be free. It encourages corporate greed to take advantage of<br />
|
||||
people who created something to solve a particular need, or as a hobby, expecting the creator to<br />
|
||||
handle the burden of maintaining / patching bugs while they profit from it. Don’t get me wrong,<br />
|
||||
these corporations will also contribute back, sometimes even donate money to the creators. I am not<br />
|
||||
at all opposed to capitalism, nor saying that these corporations are in the wrong. At the end of the<br />
|
||||
<p>This is where the word “freedom” comes into it. Overtime, as a society, we generally now think of
|
||||
FOSS as “free” software. This takes what was originally a noble / courageous idea and devalues it to
|
||||
the point that we now expect things to be free. It encourages corporate greed to take advantage of
|
||||
people who created something to solve a particular need, or as a hobby, expecting the creator to
|
||||
handle the burden of maintaining / patching bugs while they profit from it. Don’t get me wrong,
|
||||
these corporations will also contribute back, sometimes even donate money to the creators. I am not
|
||||
at all opposed to capitalism, nor saying that these corporations are in the wrong. At the end of the
|
||||
day, <strong><em>we</em></strong> created this problem.</p>
|
||||
<h2>Current state and how we got here</h2>
|
||||
<p>Software services / giants create applications that we come to rely on. They tempt / bait us with<br />
|
||||
them being “free” or cheap, but that is because <strong><em>we</em></strong> are their target. They bloat the software<br />
|
||||
with tracking and telemetry to capture data about us and sell us more products and services. Once<br />
|
||||
again, if you’re pro-capitalism, it’s somewhat hard to blame them for this. We’re the gullible sheep<br />
|
||||
<p>Software services / giants create applications that we come to rely on. They tempt / bait us with
|
||||
them being “free” or cheap, but that is because <strong><em>we</em></strong> are their target. They bloat the software
|
||||
with tracking and telemetry to capture data about us and sell us more products and services. Once
|
||||
again, if you’re pro-capitalism, it’s somewhat hard to blame them for this. We’re the gullible sheep
|
||||
who will blindly eat out their grain bins.</p>
|
||||
<p>I can remember back in the day when there were music pirating services on the internet (napster is<br />
|
||||
the one that comes to mind). As a giant music buff, I quickly jumped on board with services like<br />
|
||||
these. Back in those days, I was young, didn’t make very much money, so it was hard to afford the<br />
|
||||
latest and greatest tunes. I also remember back in this time frame a lawsuit from the metal giants<br />
|
||||
Metallica (other’s words not mine ;)). At the time I remember thinking, like many others, that<br />
|
||||
Metallica didn’t need the money, but then a comment from Lars Ulrich the band’s drummer struck a<br />
|
||||
cord with me (pun intended). I’ll will paraphrase here, but it was something along the lines of<br />
|
||||
“We’re not pursuing this for us, but for all of those (musicians) that come after us”. After this<br />
|
||||
<p>I can remember back in the day when there were music pirating services on the internet (napster is
|
||||
the one that comes to mind). As a giant music buff, I quickly jumped on board with services like
|
||||
these. Back in those days, I was young, didn’t make very much money, so it was hard to afford the
|
||||
latest and greatest tunes. I also remember back in this time frame a lawsuit from the metal giants
|
||||
Metallica (other’s words not mine ;)). At the time I remember thinking, like many others, that
|
||||
Metallica didn’t need the money, but then a comment from Lars Ulrich the band’s drummer struck a
|
||||
cord with me (pun intended). I’ll will paraphrase here, but it was something along the lines of
|
||||
“We’re not pursuing this for us, but for all of those (musicians) that come after us”. After this
|
||||
and reflection, I decided that I would not pirate music anymore.</p>
|
||||
<p>Fast forward, now the majority do not purchases music / albums, we typically utilize streaming<br />
|
||||
services (myself included), sure it may be more fair to the artists than pirating was, it can be<br />
|
||||
argued that it’s easier today for independent artists to become known / discovered, I’m also in no<br />
|
||||
way saying the old school music industry wasn’t a giant pile of dog poo, but I am saying that who is<br />
|
||||
<p>Fast forward, now the majority do not purchases music / albums, we typically utilize streaming
|
||||
services (myself included), sure it may be more fair to the artists than pirating was, it can be
|
||||
argued that it’s easier today for independent artists to become known / discovered, I’m also in no
|
||||
way saying the old school music industry wasn’t a giant pile of dog poo, but I am saying that who is
|
||||
really winning(?), it’s the Spotify’s and Apple Music’s of the world, that’s who.</p>
|
||||
<p>I’m also reminded of the great “MeasureQuick is now charging for services” that happened in the HVAC<br />
|
||||
industry. I have personally never complained and have always supported this decision, because it is<br />
|
||||
not sustainable to run a software company and not charge for services, generally. Sure, you may not<br />
|
||||
like their pricing model, etc. Where I think they went wrong was not charging from the beginning, as<br />
|
||||
it sets the wrong expectation that is presumably hard to recover from. There are those who took some<br />
|
||||
of Jim’s words / opinions in a way different from how I do / did, which is fine, we’re all entitled<br />
|
||||
to our opinions. What is often forgotten is that we’re all also entitled to change those opinions.<br />
|
||||
<p>I’m also reminded of the great “MeasureQuick is now charging for services” that happened in the HVAC
|
||||
industry. I have personally never complained and have always supported this decision, because it is
|
||||
not sustainable to run a software company and not charge for services, generally. Sure, you may not
|
||||
like their pricing model, etc. Where I think they went wrong was not charging from the beginning, as
|
||||
it sets the wrong expectation that is presumably hard to recover from. There are those who took some
|
||||
of Jim’s words / opinions in a way different from how I do / did, which is fine, we’re all entitled
|
||||
to our opinions. What is often forgotten is that we’re all also entitled to change those opinions.
|
||||
Heck, I will probably be shouting a different story tomorrow, so be it!</p>
|
||||
<h2>Conclusion</h2>
|
||||
<p>What I would like to encourage people to do is to support software development. If an application is<br />
|
||||
free, but has a donate button consider giving a donation. If an application is free and they don’t<br />
|
||||
want to charge that’s fine too, however I would say to be suspicous, meaning is it free because<br />
|
||||
<p>What I would like to encourage people to do is to support software development. If an application is
|
||||
free, but has a donate button consider giving a donation. If an application is free and they don’t
|
||||
want to charge that’s fine too, however I would say to be suspicous, meaning is it free because
|
||||
<strong><em>you</em></strong> are the product?!?</p>
|
||||
<p>I would also encourage you to be active in communities and organizations that foster community (HVAC<br />
|
||||
School is a great example). Show appreciation and encouragement, but at the same time don’t be<br />
|
||||
<p>I would also encourage you to be active in communities and organizations that foster community (HVAC
|
||||
School is a great example). Show appreciation and encouragement, but at the same time don’t be
|
||||
afraid to be critical or speak up.</p>
|
||||
<p>At the end of the day, I hope to lift up my brothers and sisters, help to fight against the<br />
|
||||
<p>At the end of the day, I hope to lift up my brothers and sisters, help to fight against the
|
||||
corporations who abuse the little guy’s and hopefully feel good about my decisions.</p>
|
||||
<p>Over the last few weeks, I have been going through my software and services and looking for those<br />
|
||||
donation buttons and giving back a little bit for the software that makes my life better. Help<br />
|
||||
<p>Over the last few weeks, I have been going through my software and services and looking for those
|
||||
donation buttons and giving back a little bit for the software that makes my life better. Help
|
||||
change the narrative and remember that it’s about <strong><em>Freedom not Free</em></strong>.</p>
|
||||
<h3>Links</h3>
|
||||
<ul>
|
||||
@@ -137,7 +137,7 @@ change the narrative and remember that it’s about <strong><em>Freedom not Free
|
||||
<li><a href="https://themes.gohugo.io/themes/poison/">Hugo Theme</a></li>
|
||||
</ul>
|
||||
<blockquote>
|
||||
<p><strong>Note:</strong> I do not use any trackers or analytics on this site to respect your privacy. So feel<br />
|
||||
<p><strong>Note:</strong> I do not use any trackers or analytics on this site to respect your privacy. So feel
|
||||
free to contact me directly to share feedback or let me know how I’m doing.</p>
|
||||
</blockquote>
|
||||
</article>
|
||||
@@ -174,7 +174,6 @@ Programming, Home-Performance, and Building Science
|
||||
</div>
|
||||
<p>
|
||||
<a href="/articles/2025/vapor-htmx-todo-app/"><div>
|
||||
<img alt="banner" src="http://localhost:3000/articles/images/2025-01-05-vapor-htmx-todo-app.png"/>
|
||||
Build an example application using Vapor and HTMX.
|
||||
</div></a>
|
||||
</p>
|
||||
@@ -188,7 +187,6 @@ Programming, Home-Performance, and Building Science
|
||||
</div>
|
||||
<p>
|
||||
<a href="/articles/2024/pgp-encryption-introduction/"><div>
|
||||
<img alt="banner" src="http://localhost:3000/articles/images/2024-04-04-pgp-encryption-introduction.gif"/>
|
||||
In this article I introduce PGP and show a use case for me, which perhaps you can use as well.
|
||||
What is PGP
|
||||
PGP stands for Pretty Good Privacy, it was first developed in 1991 by Phil Zimmermann. PGP uses
|
||||
@@ -222,6 +220,12 @@ cryptographic privacy and authentication and is...
|
||||
|
|
||||
<a href="mailto:michael@mhoush.com" rel="nofollow">Email</a>
|
||||
</p>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/components/prism-core.min.js">
|
||||
</script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/keep-markup/prism-keep-markup.min.js">
|
||||
</script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/autoloader/prism-autoloader.min.js">
|
||||
</script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -110,6 +110,12 @@ job, overshadowing the intricate skill set and technical expertise required in..
|
||||
|
|
||||
<a href="mailto:michael@mhoush.com" rel="nofollow">Email</a>
|
||||
</p>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/components/prism-core.min.js">
|
||||
</script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/keep-markup/prism-keep-markup.min.js">
|
||||
</script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/autoloader/prism-autoloader.min.js">
|
||||
</script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -68,67 +68,67 @@ cryptographic privacy and authentication and is..." name="og:description"/>
|
||||
<img alt="banner" src="http://localhost:3000/articles/images/2024-04-04-pgp-encryption-introduction.gif"/>
|
||||
<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 />
|
||||
<p>PGP stands for <strong>Pretty Good Privacy</strong>, it was first developed in 1991 by Phil Zimmermann. PGP uses
|
||||
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 />
|
||||
<p>According to <a href="https://en.wikipedia.org/wiki/Pretty_Good_Privacy">Wikipedia</a> it’s name was inspired
|
||||
by a grocery store named, “Ralph’s Pretty Goody Grocery” featured in radio host’s Garrison Keillor’s
|
||||
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 />
|
||||
<p>PGP is commonly used in software development to “sign” software commits or files to help ensure both
|
||||
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 />
|
||||
<p>It should also be noted that when people say PGP they are often referring to OpenPGP or GnuPGP which
|
||||
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 />
|
||||
<p>Note: I am in no way a cyber-security expert, I am a layman and only describing things in terms
|
||||
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 />
|
||||
<p>PGP offers both symmetrical encryption (uses a session key and password) or asymmetrical encryption
|
||||
(uses a session key and a private key). Asymmetrical encryption is more secure but is more resource
|
||||
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 />
|
||||
<p>Generally speaking PGP uses what are known as public and private key pairs. The public portion of
|
||||
the key par is meant to be shared with others freely, while the private portion needs to be secured
|
||||
/ not shared with anyone <strong>EVER</strong>. It is best practice to generate your keys on a computer that is
|
||||
“air gapped”, meaning it is not connected to any network / internet, and does not save a history of
|
||||
commands performed on it.</p>
|
||||
<p>PGP encrypts data (files, messages, etc.) for one or more recipients, using the recipients public<br />
|
||||
<p>PGP encrypts data (files, messages, etc.) for one or more recipients, using the recipients public
|
||||
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 />
|
||||
<p>Your key pair is tied to your identity / person, generally by your name and email(s). The key can
|
||||
also have multiple “subkeys”, meaning that if you have more than one public email, alias, etc. it
|
||||
can be tied to your same private key. This is useful for example for work vs. activism vs. software
|
||||
development.</p>
|
||||
<p>Once your key is generated and your private key secured, you can share your public portion of the<br />
|
||||
<p>Once your key is generated and your private key secured, you can share your public portion of the
|
||||
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 />
|
||||
<p>PGP also uses what is called the <strong>“Web of Trust”</strong>, which is used to validate that messages are
|
||||
encrypted by a trusted source. There are different levels of trust depending on where a key is
|
||||
retrieved from. For example, if somebody gave you their public key in person and you were able to
|
||||
inspect that the identity matches their government id, then you can give it a higher trust level
|
||||
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 />
|
||||
<p>My understanding of this portion is that over time your key is signed by other’s with their level of
|
||||
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 />
|
||||
<p>Now that we’ve got an understanding of some of the technical aspects, lets talk about some real use
|
||||
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 />
|
||||
<p>PGP encryption is used by some email clients / applications, such as
|
||||
<a href="https://canarymail.io/">Canary</a>,
|
||||
<a href="https://www.thunderbird.net/en-US/thunderbird/115.0/holidayeoy/">Thunderbird</a>, or
|
||||
<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 />
|
||||
<p>In my understanding, it is also what is used in devices such as a
|
||||
<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 />
|
||||
<p>Many of the mentioned applications allow for an easier interface / adoption, as one of the reasons
|
||||
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 />
|
||||
<p>Aside from using my PGP key for signing software commits, my major use case is for encrypting files
|
||||
that I store in a “cloud” provider. Know that when someone says the “cloud”, it is really just a
|
||||
computer (in reality a gang of computers in a data center). You are solely reliant that these cloud
|
||||
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 />
|
||||
<p>Of course, some data may not be that sensitive, so maybe you don’t care. However with a little bit
|
||||
of effort on your part you can at least make it very hard for anyone to know what is inside your
|
||||
documents. You can be in control of the way your items are encrypted and have confidence that nobody
|
||||
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 />
|
||||
<p>Heck, I even encrypt documents that are stored on my own network / computer so that if something
|
||||
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 />
|
||||
<p>This article is just meant as an overview of PGP encryption. In future articles I will show you how
|
||||
to use it to encrypt your data and be in control of your privacy.</p>
|
||||
<h3>Resources</h3>
|
||||
<ul>
|
||||
@@ -171,7 +171,6 @@ Programming, Home-Performance, and Building Science
|
||||
</div>
|
||||
<p>
|
||||
<a href="/articles/2025/vapor-htmx-todo-app/"><div>
|
||||
<img alt="banner" src="http://localhost:3000/articles/images/2025-01-05-vapor-htmx-todo-app.png"/>
|
||||
Build an example application using Vapor and HTMX.
|
||||
</div></a>
|
||||
</p>
|
||||
@@ -185,7 +184,6 @@ Programming, Home-Performance, and Building Science
|
||||
</div>
|
||||
<p>
|
||||
<a href="/articles/2024/free-as-in-freedom/"><div>
|
||||
<img alt="banner" src="http://localhost:3000/articles/images/2024-04-09-free-as-in-freedom.png"/>
|
||||
Salute to open-source software engineers
|
||||
</div></a>
|
||||
</p>
|
||||
@@ -216,6 +214,12 @@ Programming, Home-Performance, and Building Science
|
||||
|
|
||||
<a href="mailto:michael@mhoush.com" rel="nofollow">Email</a>
|
||||
</p>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/components/prism-core.min.js">
|
||||
</script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/keep-markup/prism-keep-markup.min.js">
|
||||
</script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/autoloader/prism-autoloader.min.js">
|
||||
</script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -64,19 +64,19 @@ any warranty on your UNVR as we are using it for..." name="og:description"/>
|
||||
</div>
|
||||
</div>
|
||||
<img alt="banner" src="http://localhost:3000/articles/images/2024-03-15-unvr-as-nas.png"/>
|
||||
<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 />
|
||||
<p>In this post, I’m going to show how to setup a Samba server on a Ubiquity UNVR so that it can be
|
||||
used as NAS (network attached storage). Be aware that this should be done with caution and may void
|
||||
any warranty on your UNVR as we are using it for purposes beyond it’s original intent. It’s also
|
||||
possible that this setup will break when / if updating the UNVR software. With that said, let’s jump
|
||||
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 />
|
||||
<p>This post follows along with
|
||||
<a href="https://www.reddit.com/r/Ubiquiti/comments/11o7v8l/how_to_use_the_unvr_as_a_nas_instructions/">this reddit post</a>,
|
||||
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 />
|
||||
<p>In your unifi network console you need to enable the <code>SSH</code> login option and set a secure password
|
||||
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 />
|
||||
<p>Once that is complete you can login to your UNVR using your terminal and the IP address of your UNVR
|
||||
on your network.</p>
|
||||
<p><code>ssh root@192.168.1.10</code></p>
|
||||
<h2>Step Two - Install Samba</h2>
|
||||
@@ -85,14 +85,14 @@ on your network.</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 />
|
||||
<p>In order to edit the configuration we are going to need to install your terminal based text editor
|
||||
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 />
|
||||
<p>Just above the <code>Share Definitions</code> section of the configuration, I added some global settings to
|
||||
make the samba server act better for time machine backups.</p>
|
||||
<pre><code>#======================= MacOS Client Optimizations =======================
|
||||
vfs objects = fruit streams_xattr
|
||||
@@ -105,11 +105,11 @@ 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 />
|
||||
<p>Also because we want users we create to be able to read and write to their home directories created
|
||||
on the samba server, we need to change the option under the <code>[homes]</code> share definition to be
|
||||
<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 />
|
||||
<p>That is our primary configuration. You can add more share definitions at the bottom of the file to
|
||||
suit your use case, there are decent examples of this in the original reddit post, linked in the
|
||||
beginning.</p>
|
||||
<p>Save and exit the file.</p>
|
||||
<p><code>:wq</code></p>
|
||||
@@ -130,13 +130,13 @@ beginning.</p>
|
||||
<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 />
|
||||
<p>You can also automatically connect to the server when you login to your client device, for this to
|
||||
work you need the credentials to be stored in your keychain (ticking the box in the step above when
|
||||
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 />
|
||||
<p>This is found in <code>System Settings -> General -> Login Items -> Open at Login</code>. Click the plus button
|
||||
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 />
|
||||
<p>Once you have it setup so that the server is connected on login, you can also set it up as location
|
||||
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>
|
||||
</article>
|
||||
@@ -173,7 +173,6 @@ Programming, Home-Performance, and Building Science
|
||||
</div>
|
||||
<p>
|
||||
<a href="/articles/2025/vapor-htmx-todo-app/"><div>
|
||||
<img alt="banner" src="http://localhost:3000/articles/images/2025-01-05-vapor-htmx-todo-app.png"/>
|
||||
Build an example application using Vapor and HTMX.
|
||||
</div></a>
|
||||
</p>
|
||||
@@ -187,7 +186,6 @@ Programming, Home-Performance, and Building Science
|
||||
</div>
|
||||
<p>
|
||||
<a href="/articles/2024/free-as-in-freedom/"><div>
|
||||
<img alt="banner" src="http://localhost:3000/articles/images/2024-04-09-free-as-in-freedom.png"/>
|
||||
Salute to open-source software engineers
|
||||
</div></a>
|
||||
</p>
|
||||
@@ -218,6 +216,12 @@ Programming, Home-Performance, and Building Science
|
||||
|
|
||||
<a href="mailto:michael@mhoush.com" rel="nofollow">Email</a>
|
||||
</p>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/components/prism-core.min.js">
|
||||
</script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/keep-markup/prism-keep-markup.min.js">
|
||||
</script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/prism/1.29.0/plugins/autoloader/prism-autoloader.min.js">
|
||||
</script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user