hpr_hub/sql/hpr-db-part-14.sql

1001 lines
2.2 MiB
MySQL
Raw Normal View History

(3620,'2022-06-17','Photo storage, backups, and workflow',1222,'How to keep your photos safe','<p>If you have photos that are important to you, you should take steps to protect them. Every day someone loses a lifetime of memories because they didn\'t take these steps. Don\'t be one of them. In this tutorial I explain how <em>I</em> backup and protect my photos and what my workflow is like. You may find some ideas here that you can use.</p>\r\n<h2 id=\"links\">Links:</h2>\r\n<ul>\r\n<li><a href=\"https://www.amazon.com/Electronic-Automatic-Rotation-Resolution-1280x800IPS/dp/B07QTKQPX4/ref\" class=\"uri\">https://www.amazon.com/Electronic-Automatic-Rotation-Resolution-1280x800IPS/dp/B07QTKQPX4/ref</a></li>\r\n<li><a href=\"https://www.theguardian.com/world/2007/sep/29/argentina.film\" class=\"uri\">https://www.theguardian.com/world/2007/sep/29/argentina.film</a></li>\r\n<li><a href=\"https://www.facebook.com/\" class=\"uri\">https://www.facebook.com/</a></li>\r\n<li><a href=\"https://www.google.com/photos/about/\" class=\"uri\">https://www.google.com/photos/about/</a></li>\r\n<li><a href=\"https://www.flickr.com/\" class=\"uri\">https://www.flickr.com/</a></li>\r\n<li><a href=\"https://www.smugmug.com/plans/\" class=\"uri\">https://www.smugmug.com/plans/</a></li>\r\n<li><a href=\"https://www.shutterfly.com/\" class=\"uri\">https://www.shutterfly.com/</a></li>\r\n<li><a href=\"https://beebom.com/flickr-alternatives/\" class=\"uri\">https://beebom.com/flickr-alternatives/</a></li>\r\n<li><a href=\"https://www.gimp.org/tutorials/GIMPProfile/\" class=\"uri\">https://www.gimp.org/tutorials/GIMPProfile/</a></li>\r\n<li><a href=\"https://www.ahuka.com/gimp/photo-storage-backups-and-workflow/\" class=\"uri\">https://www.ahuka.com/gimp/photo-storage-backups-and-workflow/</a></li>\r\n</ul>\r\n',198,113,0,'CC-BY-SA','GIMP, Photo storage, Photo backup, Photo workflow',0,0,1),
(3379,'2021-07-15','Linux Inlaws S01E34: The one with the intelligence',2716,'Part four of the three-part miniseries on deep learning and artificial intelligence','<p>\r\n In this fourth part of our three-part miniseries on Deep and Machine Learning our two heroes shed some\r\n light on a DL architecture called Generative Pre-Trained Transformer (GPT), a pretty sophistic piece\r\n of software that fools most humans when it comes to authoring text (ideal for budding writers with\r\n a block in place). Other topics of discussion includes OpenAI (the company behind this framework),\r\n Elon Musk, Bitcoin, Microsoft and if the GPT can actually pass the Turing test. All will be revealed -\r\n don\'t miss this episode!\r\n</p>\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>OpenAI: <a href=\"https://openai.com\" target=_blank>https://openai.com</a></li>\r\n<li>GPT: <a href=\"https://openai.com/projects\" target=_blank>https://openai.com/projects</a></li>\r\n<li>The Turing Test: <a href=\"https://en.wikipedia.org/wiki/Turing_test\" target=_blank>https://en.wikipedia.org/wiki/Turing_test</a></li>\r\n<li>GPT-2 source code: <a href=\"https://github.com/openai/gpt-2\" target=_blank>https://github.com/openai/gpt-2</a></li>\r\n<li>GPT meta-progamming: <a href=\"https://www.lesswrong.com/posts/zZLe74DvypRAf7DEQ/meta-programming-gpt-a-route-to-superintelligence\" target=_blank>https://www.lesswrong.com/posts/zZLe74DvypRAf7DEQ/meta-programming-gpt-a-route-to-superintelligence</a></li>\r\n<li>GPT-3 interview: <a href=\"https://www.youtube.com/watch?v=PqbB07n_uQ4\" target=_blank>https://www.youtube.com/watch?v=PqbB07n_uQ4</a></li>\r\n<li>DSDS: <a href=\"https://en.wikipedia.org/wiki/Deutschland_sucht_den_Superstar\" target=_blank>https://en.wikipedia.org/wiki/Deutschland_sucht_den_Superstar</a></li>\r\n<li>GPT-3 sample 1: <a href=\"https://linuxinlaws.eu/files/padawans.txt\" target=_blank>https://linuxinlaws.eu/files/padawans.txt</a></li>\r\n<li>GPT-3 sample 2: <a href=\"https://linuxinlaws.eu/files/HGttG.txt\" target=_blank>https://linuxinlaws.eu/files/HGttG.txt</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','GPT-3, OpenAI, Elon Musk, Microsoft, Bitcoin, meta-programming',0,0,1),
(3381,'2021-07-19','Learning to skate',2152,'Klaatu goes for a walk, and talks about learning to ride a skateboard','<p>Apologies for the heavy breathing. I chose (unwisely, in terms of audio) to walk up a steep hill.</p>\r\n',78,0,0,'CC-BY-SA','skateboard',0,0,1),
(3378,'2021-07-14','A bit of my experience with Starlink internet service',608,'some ramblings about satellite internet service and how Starlink is different','<p>Starlink website: <a href=\"https://www.starlink.com/\" class=\"uri\">https://www.starlink.com/</a></p>\r\n\r\n<p>Starlink from Wikipedia: <a href=\"https://en.wikipedia.org/wiki/Starlink\" class=\"uri\">https://en.wikipedia.org/wiki/Starlink</a></p>\r\n\r\n<p>\r\nStarlink is a satellite internet constellation being constructed by SpaceX providing satellite Internet access. The constellation will consist of thousands of mass-produced small satellites in low Earth orbit (LEO), which communicate with designated ground transceivers. The SpaceX satellite development facility in Redmond, Washington houses the Starlink research, development, manufacturing, and orbit control teams. The cost of the decade-long project to design, build, and deploy the constellation was estimated by SpaceX in May 2018 to be at least US$10 billion.\r\n</p>\r\n<p>\r\nProduct development began in 2015. Two prototype test-flight satellites were launched in February 2018. Additional test satellites and 60 operational satellites were deployed in May 2019. SpaceX launches up to 60 satellites at a time, aiming to deploy 1,584 of the 260 kg (570 lb) spacecraft to provide near-global service by late 2021 or 2022. SpaceX started a private beta service in the Northern United States in August 2020 and a public beta in October 2020, service beginning at high latitudes between 44° and 52° North.\r\n</p>\r\n<p>\r\nOn 15 October 2019, the United States Federal Communications Commission (FCC) submitted filings to the International Telecommunication Union (ITU) on SpaceX\'s behalf to arrange spectrum for 30,000 additional Starlink satellites to supplement the 12,000 Starlink satellites already approved by the FCC.\r\n</p>\r\n<p>\r\nAstronomers have raised concerns about the constellations effect on ground-based astronomy and how the satellites will add to an already jammed orbital environment. In response, SpaceX has implemented several upgrades to Starlink satellites aimed at reducing their brightness during operation. The satellites are equipped with krypton-fueled Hall thrusters which allow them to de-orbit at the end of their life. Additionally, the satellites are designed to autonomously avoid collisions based on uplinked tracking data.\r\n</p>\r\n',243,0,0,'CC-BY-SA','internet, leo, satellites, ISP',0,0,1),
(3382,'2021-07-20','How I fixed a fault on my car for free thanks to YouTube',760,'How I fixed a fault on my car for free and as an added bonus without injuring myself!','<p>I had a spare moment and found this show on my hard drive. Cheers MrX</p>\r\n<p><a href=\"https://www.youtube.com/watch?v=kl1_VM_j5r8\">YouTube video I found that explains how to fix a rattling heat shield for free</a></p>\r\n<p><em>Picture of the fix!</em><br />\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3382/heat-shield-repair.jpg\" alt=\"Picture of the fix!\" /></p>\r\n',201,0,1,'CC-BY-SA','Car, Repair, Hack, DIY',0,0,1),
(3383,'2021-07-21','My gEeeky Experiment - Part 1',1029,'ClaudioM talks about how he revived his lowly Asus Eee PC 901 netbook with OpenBSD.','<ul>\r\n<li>Blog post: <a href=\"https://claudiomiranda.wordpress.com/2020/01/04/my-geeeky-experiment-part-1/\" class=\"uri\">https://claudiomiranda.wordpress.com/2020/01/04/my-geeeky-experiment-part-1/</a></li>\r\n<li>Asus Eee PC 901 info via Wikipedia (first paragraph in link): <a href=\"https://en.wikipedia.org/wiki/Asus_Eee_PC#Other_Eee_90x_models\" class=\"uri\">https://en.wikipedia.org/wiki/Asus_Eee_PC#Other_Eee_90x_models</a></li>\r\n<li>OpenBSD Web Site: <a href=\"https://www.openbsd.org/\" class=\"uri\">https://www.openbsd.org/</a></li>\r\n<li>Duplicating installed packages on another machine, via the OpenBSD FAQ: <a href=\"https://www.openbsd.org/faq/faq15.html#PkgDup\" class=\"uri\">https://www.openbsd.org/faq/faq15.html#PkgDup</a></li>\r\n<li>Video of Eee PC 901 running OpenBSD 6.6: <a href=\"https://imgur.com/KHJj8lK\" class=\"uri\">https://imgur.com/KHJj8lK</a></li>\r\n<li>Mastodon post from <span class=\"citation\" data-cites=\"solene\">@solene</span><span class=\"citation\" data-cites=\"bsd.network\">@bsd.network</span> about the Firefox port on OpenBSD: <a href=\"https://bsd.network/@solene/106481939809930365\" class=\"uri\">https://bsd.network/@solene/106481939809930365</a></li>\r\n</ul>\r\n<p>CPU on my Dell Latitude E6410 via sysctl: hw.model=Intel(R) Core(TM) i5 CPU M 520 @ 2.40GHz</p>\r\n',152,0,0,'CC-BY-SA','asus,eeepc,openbsd,bsd,linux',0,0,1),
(3384,'2021-07-22','Page Numbers in EPUB eBook Files',1699,'Response to HPR 3367 I describe how to specify page numbers in an EPUB eBook.','<p>This episode is a response to <a href=\"https://hackerpublicradio.org/eps.php?id=3367\">hpr3367</a> by Andrew Conway and Dave Morriss. One of the topics they brought up was the thorny issue of page numbers in e-books. Most of the time you don\'t need to worry about page numbers in ebooks, if you\'re reading fiction for example. The whole point of an ebook is that the texts can reflow to fit the page no matter what size the screen is or what font-size you\'ve chosen. This is a major accessibility feature of all e-book formats. One reason you might want to specify actual page numbers, though, is if you\'re dealing with a technical or academic book, and you need to be able to refer to specific passages in the book by page number, as you are expected to do in academic research. Or, as Andrew and Dave were discussing, you might need to create an index in your ebook that would send your readers back to specific pages like in a paper book.</p>\r\n\r\n<p>I\'ve thought about this before but never really gotten into the weeds and figured out how to make it happen. In fact, when I was creating the new digital editions of the Counterpoint textbooks like I discussed in <a href=\"https://hackerpublicradio.org/eps.php?id=1512\">hpr1512</a>, I actually took the trouble to put page number anchors through the entire thing, so that at a future date I would be able to enable real page numbers. This was a key part of the source file\'s infrastructure, which helped me quickly find the passages I was working on in my huge HTML file. Those anchors are not quite in the correct format for EPUB, but they are consistent and I will easily be able to write a script to fix them. I haven\'t done that yet, but now that I figured out how to do it on some smaller examples, this is on my to-do list.</p>\r\n\r\n<p>Anyway while I was listening to Dave and Andrew talk about this, I thought I remembered reading somewhere that in the newest ePub specification, EPUB 3, there was support for publisher\'s page numbers to deal with precisely this issue. Their discussion prompted me to see if I could make it work. I\'m happy to report success, although with some qualifications, which I will get into.</p>\r\n\r\n<h3>Converting to EPUB 3</h3>\r\n\r\n<p>The first thing to do is to upgrade your ebook from EPUB2 to EPUB3. There are a couple of ways to do this. The way I did it was to use the ebook editor in a recent version of Calibre. When you open up the EPUB for editing, go to the <code>Tools</code> menu and choose <code>Upgrade book internals</code>. This will create the new navigation file <code>nav.xhtml</code> to replace the old <code>toc.ncx</code> file. You\'ll need to edit this new file later to enable the page numbers.</p>\r\n\r\n<h3>Insert page anchors</h3>\r\n\r\n<p>Next you need to put your page anchors in there. This could be very tedious if you haven\'t done any preparatory work, such as putting visible page numbers in plain sight in square brackets [21] the way I did for a couple of ebooks. It wasn\'t very elegant, but at least it was easy to find where the page breaks were. I have a <a href=\"https://hackerpublicradio.org/eps.php?id=1284\">Blather</a> voice command that triggers a python script to create these things. Here\'s an example of page number anchor, which goes in the main text of the book wherever you want to insert a page number. This will not be visible to the reader inline. This is for page 57:</p>\r\n\r\n<pre>\r\n&lt;span epub:type=&quot;pagebreak&quot; id=&quot;page57&quot; title=&quot;57&quot;&gt;&lt;/span&gt;\r\n</pre>\r\n\r\n<h3>Page List in Navigation File</h3>\r\n\r\n<p>Finally you need to put a <strong>page list</strong> in the new navigation file. This is simply an ordered list with hyperlinks to every page anchor that you put in your ebook. This will not be visible to the reader, but it\'s critical to making everything work. Here\'s a minimal example from my first attempt. This only covers
(3386,'2021-07-26','What\'s for dinner?',1342,'Some scripts and a database for randomly choosing which meal to cook','<h2 id=\"overview\">Overview</h2>\r\n<p>I live on my own, but I cook for members of my family from time to time. Each week we all get together and cook dinner for Wednesday and Thursday. I usually do the cooking but we are starting to share these duties for certain meals.</p>\r\n<p>In 2019 I thought it would be useful if I had some sort of random chooser to decide what next weeks meal was going to be. I wrote a Bash script called <code>choose_meal</code>, using a simple CSV file of meal names and the date last eaten to avoid choosing the same one too often. The shortcomings of this approach soon became apparent!</p>\r\n<p>It wasnt long before <code>choose_meal</code> was rewritten in <a href=\"https://www.perl.org/\" title=\"Perl scripting language\">Perl</a>. This time I decided to use a database, and chose <a href=\"https://www.sqlite.org/index.html\"><code>SQLite</code></a> to create it. My database contained just two tables, one for the meals themselves (called slightly confusingly <code>\'meal_history\'</code>), and another for a record of the choices made (called <code>\'meal_log\'</code>) the ability to produce historical reports seemed like a desirable feature!</p>\r\n<p>In 2019 the design of this system was very specific to our needs: one choice per week on a Wednesday. It was not something that could be used by anyone else which seemed like a bad idea.</p>\r\n<p>In late 2020 and early 2021 the system was redesigned, as will be discussed in the detailed notes. In May 2021 a more general design was added to the public <a href=\"https://gitlab.com/davmo/weekly_menus\" title=\"Weekly Menus repository\">GitLab repository</a> and the preparation of this show was begun.</p>\r\n<p>I had never intended this system to hold recipes. This was partly because I have built a collection of recipes I have constructed from various sources and amended as I have made them. I print these and keep them in a ring-binder for reference as I cook. In some cases the meals described in the database are multi-component ones (such as the dishes that make up a curry for example), so it doesnt seem appropriate to hold these here.</p>\r\n<p>I might rethink this in the future however.</p>\r\n<h2 id=\"long-notes\">Long notes</h2>\r\n<p>Follow this link to <a href=\"https://hackerpublicradio.org/eps/hpr3386/full_shownotes.html\">read the detailed notes</a> associated with this episode.</p>\r\n<h2 id=\"links\">Links</h2>\r\n<ul>\r\n<li><p><a href=\"https://www.perl.org/\">Perl</a></p>\r\n<ul>\r\n<li><a href=\"https://www.perl.org/get.html\">Perl 5</a>: (currently v5.35.0)</li>\r\n<li><a href=\"https://www.raku.org/\">Raku</a>: originally called Perl 6, a totally different scripting language.</li>\r\n<li><a href=\"https://www.perl.com/article/announcing-perl-7/\">Perl 7</a>: updates to Perl 5, removal of some historical stuff</li>\r\n</ul></li>\r\n<li><p><a href=\"https://www.sqlite.org/index.html\">SQLite</a>: a C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine.</p></li>\r\n<li><p><a href=\"https://gitlab.com/davmo/weekly_menus\">GitLab repository for <em>Weekly Menus</em></a></p></li>\r\n</ul>',225,0,1,'CC-BY-SA','Perl,SQLite3,database,food',0,0,1),
(3387,'2021-07-27','Infosec Podcasts Part 5 Grab bag',483,'Presenting my favorite podcasts related to various aspects of information security','<p>Inoffensive in every region of the world.</p>\r\n<p>Thank you to everyone who has listened to my previous episodes. I hope I am not boring you all to death!</p>\r\n<p>Why am I recording this series?</p>\r\n<ul>\r\n<li>You can hear my reasoning for why I am making this series by listening to the introduction to any of the previous four episodes in this series. Yes, this is a shameless plug for you to listen to my other works.</li>\r\n</ul>\r\n<p>Because there are so many podcasts to list, I have broken them down into 6 different episodes based on topics:</p>\r\n<ul>\r\n<li>Part 1 - News &amp; Current Events</li>\r\n<li>Part 2 - General Information Security</li>\r\n<li>Part 3 - Career &amp; Personal Development</li>\r\n<li>Part 4 - Social Engineering</li>\r\n<li>Part 5 -\r\n<ul>\r\n<li>Hacks &amp; Attacks</li>\r\n<li>Technical Information &amp; Learning</li>\r\n<li>Infosec Community / Social / History</li>\r\n</ul></li>\r\n<li>Part 6 - Infosec Leadership</li>\r\n</ul>\r\n<h2 id=\"part-5\">Part 5</h2>\r\n<h3 id=\"hacks--attacks\">Hacks &amp; Attacks</h3>\r\n<ul>\r\n<li><p>Malicious Life Ran Levi sponsored by Cybereason (Periodically)</p>\r\n<ul>\r\n<li>Detailed descriptions of specific historical events in cybersecurity</li>\r\n<li><a href=\"https://malicious.life/\">https://malicious.life/</a></li>\r\n</ul></li>\r\n<li><p>Darknet Diaries - Jack Rhysider (Bi-Weekly)</p>\r\n<ul>\r\n<li>Stories from the darker side of the net</li>\r\n<li><a href=\"https://darknetdiaries.com/\">https://darknetdiaries.com/</a></li>\r\n</ul></li>\r\n</ul>\r\n<h3 id=\"technical-information--learning\">Technical information / learning</h3>\r\n<ul>\r\n<li><p>Digital Forensic Survival Podcast - Michael Leclair (Weekly)</p>\r\n<ul>\r\n<li>A weekly deep dive into digital forensics</li>\r\n<li><a href=\"https://digitalforensicsurvivalpodcast.com/\">https://digitalforensicsurvivalpodcast.com/</a></li>\r\n</ul></li>\r\n<li><p>The Offensive Security Podcast - TJ Null and Jeremy Miller (Harbinger) and sponsored by Offensive Security (Creators of the OSCP Offensive Security Certified Professional certification)</p>\r\n<ul>\r\n<li>Probably belongs in the Career &amp; Personal Development category, but I discovered it after I had already recorded that episode.</li>\r\n<li>Interviews with Red team practitioners and other security professionals, related to the various certifications and training available with Offensive Security.</li>\r\n<li><a href=\"https://www.offensive-security.com/podcast/\">https://www.offensive-security.com/podcast/</a></li>\r\n</ul></li>\r\n</ul>\r\n<h3 id=\"community--social--history\">Community / Social / History</h3>\r\n<ul>\r\n<li><p>Command Line Heroes - Saron Yitbarek and sponsored by Red Hat (Weekly with gaps between seasons)</p>\r\n<ul>\r\n<li>Tells the stories about how got to be where we are today, from open source to dev-ops, hardware, programming languages, and everything in between</li>\r\n<li><a href=\"https://www.redhat.com/en/command-line-heroes\">https://www.redhat.com/en/command-line-heroes</a></li>\r\n</ul></li>\r\n<li><p>Beers with Talos - Mitch Neff, Craig Williams, Joel Esler, Matt Olney all part of Cisco Talos Research Center (Periodically)</p>\r\n<ul>\r\n<li>A light hearted and sarcastic podcast which touches on current issues of interest to the hosts</li>\r\n<li><a href=\"https://www.talosintelligence.com/podcasts\">https://www.talosintelligence.com/podcasts</a></li>\r\n</ul></li>\r\n</ul>\r\n<p>I hope that this series has helped introduce you to some new and interesting listening options. Give some of them a try, and I would love to get your feedback in the episode comments on the HPR website.</p>\r\n<p>The next and final episode of this series will be about Information Security Leadership podcasts.</p>\r\n<p>Thank you for listening.</p>',394,75,1,'CC-BY-SA','infosec, podcasts, security',0,0,1),
(3399,'2021-08-12','Linux Inlaws S01E36: Open Source Licenses',3361,'The ultimate show on open source licenses or how to fall asleep without chemicals','<p>\r\n In this episode Chris is trying hard to get Martin to sleep by elaborating on the\r\n subject of free and open source software licenses but fails miserably. Listen to a\r\n more than riveting episode on the ins and outs of licensing FLOSS code bases in addition\r\n to banter about Brexit, plans for a reshaping of Europe after the invasion of England\r\n and Wales, Northern Ireland and Scotland leave the UK.\r\n</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>MI6: <a href=\"https://www.sis.gov.uk\" target=_blank>https://www.sis.gov.uk</a></li>\r\n<li>OSI definition of free and open source software: <a href=\"https://opensource.org/osd\" target=_blank>https://opensource.org/osd</a></li>\r\n<li>VMware GPL lawsuit: <a href=\"https://sfconservancy.org/news/2015/mar/05/vmware-lawsuit\" target=_blank>https://sfconservancy.org/news/2015/mar/05/vmware-lawsuit</a></li>\r\n<li>Copyleft: <a href=\"https://www.gnu.org/licenses/copyleft.html\" target=_blank>https://www.gnu.org/licenses/copyleft.html</a></li>\r\n<li>Permissive licensing: <a href=\"https://en.wikipedia.org/wiki/Permissive_software_license\" target=_blank>https://en.wikipedia.org/wiki/Permissive_software_license</a></li>\r\n<li>Affero GPL: <a href=\"https://en.wikipedia.org/wiki/Affero_General_Public_License\" target=_blank>https://en.wikipedia.org/wiki/Affero_General_Public_License</a></li>\r\n<li>TerminusDB license change: <a href=\"https://blog.terminusdb.com/we-love-gplv3-but-are-switching-license-to-apache-2-0-terminusdb\" target=_blank>https://blog.terminusdb.com/we-love-gplv3-but-are-switching-license-to-apache-2-0-terminusdb</a></li>\r\n<li>Audacity usage restriction issue: <a href=\"https://github.com/audacity/audacity/issues/1213\" target=_blank>https://github.com/audacity/audacity/issues/1213</a></li>\r\n<li>Redis Source Available License: <a href=\"https://redislabs.com/wp-content/uploads/2019/09/redis-source-available-license.pdf\" target=_blank>https://redislabs.com/wp-content/uploads/2019/09/redis-source-available-license.pdf</a></li>\r\n<li>GoodFORM: <a href=\"https://goodformcode.com\" target=_blank>https://goodformcode.com</a></li>\r\n<li>Server Side Public License: <a href=\"https://www.mongodb.com/licensing/server-side-public-license\" target=_blank>https://www.mongodb.com/licensing/server-side-public-license</a></li>\r\n<li>Creative Commons licenses: <a href=\"https://creativecommons.org/choose\" target=_blank>https://creativecommons.org/choose</a></li>\r\n<li>Clarkson\'s Farm: <a href=\"https://en.wikipedia.org/wiki/Clarkson%27s_Farm\" target=_blank>https://en.wikipedia.org/wiki/Clarkson%27s_Farm</a></li>\r\n<li>Taking Lives: <a href=\"https://www.imdb.com/title/tt0364045/?ref_=fn_al_tt_1\" target=_blank>https://www.imdb.com/title/tt0364045/?ref_=fn_al_tt_1</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','Licensing, GNU, BSD, MIT, Taking Lives, MI6, Clarkson\'s Farm, Open Source Initiative',0,0,1),
(3696,'2022-10-03','HPR Community News for September 2022',3283,'HPR Volunteers talk about shows released and comments posted in September 2022','<style>\ntable td.shrink {\n white-space:nowrap\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nThere were no new hosts this month.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3674\" target=\"_blank\">3674</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2022-09-01</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3674\" target=\"_blank\">Emergency Show posted in 2012. MUD</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0078.html\" target=\"_blank\">Klaatu</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3675\" target=\"_blank\">3675</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2022-09-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3675\" target=\"_blank\">Plan 9: An exercise in futility</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0406.html\" target=\"_blank\">binrc</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3676\" target=\"_blank\">3676</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2022-09-05</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3676\" target=\"_blank\">HPR Community News for August 2022</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3677\" target=\"_blank\">3677</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2022-09-06</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3677\" target=\"_blank\">Hacker Public Radio 2021 - 2022 New Years Show Part 4</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0269.html\" target=\"_blank\">Honkeymagoo</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3678\" target=\"_blank\">3678</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2022-09-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3678\" target=\"_blank\">\"Stupid Users\" ... no, not those users, the other \"stupid users\"</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0405.html\" target=\"_blank\">Lurking Prion</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3679\" target=\"_blank\">3679</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2022-09-08</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3679\" target=\"_blank\">Linux Inlaws S01E64: Non-profits in the US: A closer look at 501(c)s</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0384.html\" target=\"_blank\">monochromec</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3680\" target=\"_blank\">3680</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2022-09-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3680\" target=\"_blank\">EDIT</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0198.html\" target=\"_blank\">Ahuka</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3681\" target=\"_blank\">3681</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2022-09-12</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3681\" target=\"_blank\">Rust 101 Episode 3: Functionally Insane</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0396.html\" target=\"_blank\">BlacKernel</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3682\" target=\"_blank\">3682</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2022-09-13</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3682\" target=\"_blank\">Hacker Public Radio 2021 - 2022 New Years Show Part 5</a></td>\n<td><a href=
(3392,'2021-08-03','Structured error reporting',1714,'Tuula talks about how she improved build times by breaking down error reporting to smaller parts','<h2 id=\"initial-state\">Initial state</h2>\r\n<p>When I originally wanted a unified error reporting on the server-side, I made one huge type that enumerated all the possible error cases that could be reported:</p>\r\n<pre><code>-- | Error codes for all errors returned by API\r\ndata ErrorCode\r\n -- common error codes\r\n = ResourceNotFound\r\n | InsufficientRights\r\n | FailedToParseDataInDatabase\r\n -- errors specific to news\r\n | SpecialEventHasAlreadyBeenResolved\r\n | UnsupportedArticleType\r\n | SpecialNewsExtractionFailed\r\n | TriedToMakeChoiceForRegularArticle\r\n -- errors specific to simulation state\r\n | SimulationStatusNotFound\r\n | DeltaTIsTooBig\r\n | TurnProcessingAndStateChangeDisallowed\r\n | SimulationNotOpenForCommands\r\n | SimulationNotOpenForBrowsing\r\n -- errors specific to people\r\n | StatIsTooLow Text\r\n | CouldNotConfirmDateOfBirth\r\n | DateOfBirthIsInFuture\r\n | FirstNameIsEmpty\r\n | FamilyNameIsEmpty\r\n | CognomenIsEmpty\r\n | RegnalNumberIsLessThanZero\r\n -- errors specific to new person creation\r\n | AgeBracketStartIsGreaterThanEnd\r\n | PersonCreationFailed\r\n deriving (Show, Read, Eq)\r\n</code></pre>\r\n<p>Then I had some helper functions to turn any value of that type into a nice error message:</p>\r\n<pre><code>errorCodeToStatusCode :: ErrorCode -&gt; Int\r\nstatusCodeToText :: Int -&gt; ByteString\r\nerrorCodeToText :: ErrorCode -&gt; Text\r\nraiseIfErrors :: [ErrorCode] -&gt; HandlerFor App ()\r\n</code></pre>\r\n<p><code>errorCodeToStatusCode</code> was responsible for turning <code>ErrorCode</code> into http status code. For example <code>StatIsTooLow \"intrigue\"</code> would be <code>400</code>. <code>statusCodeToText</code> would take this code and turn it into short error message given in http response. <code>400</code> would be <code>Bad Request</code>. <code>errorCodeToText</code> would give a bit more verbose explanation of what happened, <code>StatIsTooLow \"intrigue\"</code> would be mapped to <code>\"Stat intrigue is too low\"</code>. Finally <code>raiseIfErrors</code> would take a list of <code>ErrorCode</code> and use these helper functions to turn them into a http response with correct status code, error message and json body detailing all errors that had happened:</p>\r\n<pre><code>[\r\n { code:\r\n { tag: &quot;StatIsTooLow&quot;\r\n , contents: &quot;intrique&quot;\r\n }\r\n , error: &quot;Stat intrigue is too low&quot;\r\n }\r\n]\r\n</code></pre>\r\n<p>Theres two tags: <code>code</code>, which contains machine readable details about the error and <code>error</code>, which contains error message that can be shown to user.</p>\r\n<p>While this worked fine, there was some problems with it. <code>ErrorCode</code> type was growing larger and larger and the module it was defined in was referred all over the codebase. Every time I added a new error message, all the modules that used error reporting had to be compiled and it was getting slow.</p>\r\n<h2 id=\"solution\">Solution</h2>\r\n<p>Breaking up the <code>ErrorCode</code> to smaller types and moving them to different modules would means less modules were going to built when I added a new error code. The problem was that <code>raiseIfErrors :: [ErrorCode] -&gt; HandlerFor App ()</code> wanted a list of <code>ErrorCode</code> and elements in a list have to be of same type.</p>\r\n<p>I started by splitting <code>ErrorCode</code> to smaller types. Each of the smaller error types have automatically derived toJSON and fromJSON functions for serializing them to and from JSON:</p>\r\n<pre><code>data PersonCreationError =\r\n StatIsTooLow Text\r\n | CouldNotConfirmDateOfBirth\r\n | DateOfBirthIsInFuture\r\n | FirstNameIsEmpty\r\n | FamilyNameIsEmpty\r\n | CognomenIsEmpty\r\n | RegnalNumberIsLessThanZero\r\n deriving (Show, Re
(3393,'2021-08-04','We need to talk about XML',1885,'An extensible markup language? This is too good to be true!','<p>Klaatu introduces XML.</p>\r\n\r\n<p>\r\nThe sample XML document discussed in this episode is&#58;\r\n</p>\r\n\r\n<pre>\r\n<code>\r\n&#60;xml&gt;\r\n &#60;sol&gt;\r\n &#60;planet&gt;\r\n &#60;name&gt;\r\n Mercury\r\n &#60;&#47;name&gt;\r\n &#60;albedo&gt;\r\n 0.11\r\n &#60;&#47;albedo&gt;\r\n &#60;&#47;planet&gt;\r\n &#60;planet&gt;\r\n &#60;name&gt;\r\n Venus\r\n &#60;&#47;name&gt;\r\n &#60;albedo&gt;\r\n 0.7\r\n &#60;&#47;albedo&gt;\r\n &#60;&#47;planet&gt;\r\n &#60;planet&gt;\r\n &#60;name&gt;\r\n Terra\r\n &#60;&#47;name&gt;\r\n &#60;albedo&gt;\r\n 0.39\r\n &#60;&#47;albedo&gt;\r\n &#60;&#47;planet&gt;\r\n &#60;&#47;sol&gt;\r\n&#60;&#47;xml&gt;\r\n</code>\r\n</pre>\r\n',78,0,0,'CC-BY-SA','xml,data,markup,markdown',0,0,1),
(3394,'2021-08-05','Be an XML star with xmlstarlet',1591,'Parse XML from the terminal','<p>See the layout of an XML document</p>\r\n\r\n<pre><code>\r\n$ xmlstarlet elements planets.xml\r\nxml\r\nxml/sol\r\nxml/sol/planet\r\nxml/sol/planet/name\r\nxml/sol/planet/albedo\r\nxml/sol/planet\r\nxml/sol/planet/name\r\nxml/sol/planet/albedo\r\nxml/sol/planet\r\nxml/sol/planet/name\r\nxml/sol/planet/albedo\r\n</code>\r\n</pre>\r\n\r\n<p>See content of the <strong>planet</strong> node</p>\r\n\r\n<pre><code>\r\n$ xmlstarlet select -t --value-of \'/xml/sol/planet\' planets.xml\r\n\r\n Mercury\r\n 0.11\r\n\r\n Venus\r\n 0.7\r\n\r\n Terra\r\n 0.39\r\n</code></pre>\r\n\r\n<p>Get the third instance of the <strong>planet</strong> node</p>\r\n\r\n<pre><code>\r\n$ xmlstarlet select -t --value-of \'/xml/sol/planet[3]\' planets.xml\r\nTerra\r\n0.39\r\n</code></pre>\r\n\r\n<p>Get only the planets with an albedo greater than 0.25</p>\r\n\r\n<pre><code>\r\n$ xmlstarlet select -t --value-of \'/xml/sol/planet[albedo > 0.25]\' planets.xml\r\n\r\nVenus\r\n0.7\r\n\r\nTerra\r\n0.39\r\n</code></pre>\r\n\r\n<p>Get only the planets closer to Sol than the third planet</p>\r\n\r\n<pre><code>\r\n$ xmlstarlet select -t --value-of \'/xml/sol/planet[position() < 3]\' planets.xml\r\n\r\nMercury\r\n0.11\r\n\r\nVenus\r\n0.7\r\n</code></pre>\r\n\r\n<p>Learn more XPath functions at <a href=\"https://developer.mozilla.org/en-US/docs/Web/XPath\" target=\"_blank\">Mozilla Developer Network</a>.</p>\r\n\r\n<p>Download xmlstarlet from <a href=\"https://xmlstar.sourceforge.net\"\r\ntarget=\"_blank\">xmlstar.sourceforge.net</a> (<a href=\"https://sourceforge.net/projects/xmlstar/\">https://sourceforge.net/projects/xmlstar/</a>).\r\n</p>\r\n',78,0,0,'CC-BY-SA','xml,data,markup,markdown',0,0,1),
(3441,'2021-10-11','Murphy Work Bench',842,'Operator talks about hitting his head on his work bench','<ul>\r\n<li>PROS:\r\n<ul>\r\n<li>easy clean up just fold and vacuum</li>\r\n<li>height is great for tall people so I\'m not hunched over the table</li>\r\n<li>saves space</li>\r\n</ul></li>\r\n<li>CONS:\r\n<ul>\r\n<li>I ran into it 2 times so I rounded the edges</li>\r\n<li>I just now hit my head on it ... folded and crashed everything on the table to the ground and pic I custom made fell of the wall and into my AC water bucket</li>\r\n<li>loud when using and setting up everything echoes though the walls at night etc</li>\r\n</ul></li>\r\n</ul>\r\n<!-- . -->\r\n<ul>\r\n<li><a href=\"https://smile.amazon.com/gp/product/B08F4VNT9P\" class=\"uri\">https://smile.amazon.com/gp/product/B08F4VNT9P</a> $60</li>\r\n<li>MDF cut at Lowes $50</li>\r\n</ul>\r\n<p><img src=\"https://hackerpublicradio.org/eps/hpr3441/WorkBench.gif\" alt=\"https://hackerpublicradio.org/eps/hpr3441/WorkBench.gif\" /></p>\r\n',36,0,1,'CC-BY-SA','DIY,wood working,hacking',0,0,1),
(3396,'2021-08-09','Card roles in Magic the Gathering',2367,'There are over 25,000 cards in MTG. You only need 60 to play.','<p>Cutting to the chase&#58;</p>\r\n<p>When getting into Magic the Gathering, it&#39;s easy to get overwhelmed and confused by choice. Instead of thinking about cards, I&#39;ve learnt to think about the game mechanic roles that a deck needs to have satisfied, and then I look for cards that fill those roles.\r\n</p>\r\n\r\n<p>My list is by no means definitive, but I think these are the basic universal roles you need, regardless of how you play&#58;</p>\r\n\r\n<ul>\r\n<li>Mana base&#58; Land cards. These provide you with mana so you can play cards. For a 60 card deck, anticipate requiring about 24. In a later episode, I&#39;ll talk about additional ways to manage mana.</li>\r\n<li>General purpose&#58; Creatures, enchantments, instants, artifacts, and so on. These are cards, costing a full spectrum of mana amounts &#40;some you can play for 1 or 2 mana, others require 4 and 5 and more&#41;, that you need to populate your deck. These don&#39;t need to be anything special, unless you want to spend money for really fancy cards, but I assume you&#39;re not listening to me if you&#39;re a pro player.<//i>\r\n<li>Card draw&#58; You&#39;re going to deplete your hand unless you have cards that give you permission to draw more cards than just your allotted one-per-turn.</li>\r\n<li>Recursion&#58; When you&#39;re forced to discard a card you really really wanted to play, you&#39;ll be glad to have some cards that grant you permission to bring that card back from your graveyard. This is called &#34;recursion&#34; by Magic players.</li>\r\n</ul>\r\n\r\n<p>There are other card types that can be useful, but they may be best for specific strategies. The ones I list here are, I believe, pretty universal.\r\n</p>\r\n\r\n<p>You can find lists of cards that fill specific roles with a simple Internet search. For instance, if you realize you have no cards that let you replenish your hand, you might search for &#34;best cards to draw cards MTG&#34; and get directed to a site like <a href=\"https://tappedout.net/mtg-decks/list-of-edh-draw-cards/\" target=\"_blank\">TappedOut.net</a> or <a href=\"https://magic.wizards.com/en/articles/archive/feature/top-50-card-drawing-cards-2003-03-21-0\" target=\"_blank\">magic.wizards.com</a>.</p>\r\n\r\n<p>Go to your local game store or an online vendor to buy just the cards you need. Because there are so many to choose from in any given category, you get to control the price. I have a rule for myself that do not spend over $2 on any single card.\r\n</p>\r\n\r\n<p>When trying to fill roles, I generally aim to get 4 cards that do the thing I need. Sometimes I get exactly the same card 4 times, other times I get a variety of cards to fill the role. Either way, 4 usually feels like a good draw frequency for each role.</p>\r\n\r\n',78,0,0,'CC-BY-SA','magic, mtg, card, tcg',0,0,1),
(3401,'2021-08-16','Mana hacks',1924,'Klaatu muses about mana ramping in Magic the Gathering','<p>The categories of mana ramps I have defined for myself are&#58;</p>\r\n<ul>\r\n<li>Mana acquired outside of the land drop action</li>\r\n<li>Getting more mana for less</li>\r\n<li>Mana saved up over time</li>\r\n</ul>\r\n',78,95,0,'CC-BY-SA','magic, mtg, card, tcg, mana',0,0,1),
(3397,'2021-08-10','What is a PineTime',595,'In this podcast I talk a little bit about the pinetime.','<p>\r\nThis is the first impression of a PineTime watch that I bought about a week ago and have already done some changes to the underlying code. I think this is an interesting project and open source so you can contribute.\r\n</p>\r\n<p>\r\nGithub repository:\r\n<a href=\"https://github.com/JF002/InfiniTime\">https://github.com/JF002/InfiniTime</a>\r\n</p>\r\n<p>\r\nSales page:\r\n<a href=\"https://www.pine64.org/pinetime/\">https://www.pine64.org/pinetime/</a>\r\n</p>',382,0,0,'CC-BY-SA','open source, watch, coding',0,0,1),
(3406,'2021-08-23','A study of cards in games',1633,'Currency, deterrent, coersion, clutter, rules','<p>What function cards have in games.</p>',78,95,0,'CC-BY-SA','card, game',0,0,1),
(3402,'2021-08-17','Reading a manifesto: Declaration of Digital Autonomy',877,'Reading and brief commentary and background on Molly DeBlanc\'s and Karen Sandler\'s techautonomy.org','<p><em>This episode, as its source material, is licensed under the Creative Commons Attribution-ShareAlike 4.0 International license.</em></p>\r\n<h2 id=\"previously\">Previously</h2>\r\n<ul>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=3317\">hpr3317</a> :: Reading a manifesto: Towards A Cooperative Technology Movement</li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=3326\">hpr3326</a> :: HPR Community News for April 2021</li>\r\n</ul>\r\n<h2 id=\"free-software-timeline\">Free Software Timeline</h2>\r\n<ul>\r\n<li>1983-09: <a href=\"https://www.gnu.org/gnu/initial-announcement.html\">The GNU Project announced</a></li>\r\n<li>1985-03: The GNU Manifesto <a href=\"https://www.gnu.org/gnu/manifesto.en.html\">[1987, GNU]</a> <a href=\"https://archive.org/details/dr_dobbs_journal_vol_10/page/n197/mode/2up\">[Dr. Dobb\'s 1985, Internet Archive]</a></li>\r\n<li>1986-02: The <a href=\"https://www.gnu.org/philosophy/free-sw.en.html\">Free Software Definition</a> <a href=\"https://www.gnu.org/bulletins/bull1.txt\">[original bulletin]</a></li>\r\n<li>1997-05: <a href=\"https://www.catb.org/~esr/writings/cathedral-bazaar/\">The Cathedral and the Bazaar</a></li>\r\n<li>1997-07: The <a href=\"https://www.debian.org/social_contract#guidelines\">Debian Free Software Guidelines</a> <a href=\"https://lists.debian.org/debian-announce/1997/msg00017.html\">[original mail]</a></li>\r\n<li>1998-01: The Mozilla Project</li>\r\n<li>1998-02: The Open Source Initiative</li>\r\n<li>1998-02: The <a href=\"https://opensource.org/osd\">Open Source Definition</a></li>\r\n<li>2011-02: Simon Phipps\'s <a href=\"https://webmink.com/essays/open-by-rule/\">Open-By-Rule Benchmark</a></li>\r\n<li>2015-02: <a href=\"https://opensourcedesign.net/2015/02/01/opensourcedesign-fosdem\">FOSDEM 2015 Open Source Design track</a></li>\r\n<li>2017-07: <a href=\"https://ekprayogblog.wordpress.com/2017/07/13/open-design-manifesto/\">Open Design Manifesto (ekprayog)</a></li>\r\n<li>2018-08: DebConf 18: <em>That\'s a free software Issue!</em> by Sandler and de Blanc <a href=\"https://debconf18.debconf.org/talks/38-thats-a-free-software-issue/\">[debconf]</a> <a href=\"https://peertube.debian.social/videos/watch/1461a829-a7fe-421a-9f0e-ef9b5db96ea9\">[peertube]</a></li>\r\n<li>2019-09: <a href=\"https://stallman.org/archives/2019-jul-oct.html#16_September_2019_%28Resignation%29\">rms resigns from the FSF</a></li>\r\n<li>2020-04: <a href=\"https://github.com/opensourcedesign/opensourcedesign.github.io/blob/e5e2ece7f08d16bc634f5e065cd27251862f616d/manifesto.md\">Open Source Design Manifesto (opensourcedesign.net)</a></li>\r\n<li>2020-07: GUADEC 2020: Principles of Digital Autonomy <a href=\"https://invidious.namazso.eu/watch?v=60cwBKZFIf4\">[invidious]</a> <a href=\"https://www.youtube.com/watch?v=60cwBKZFIf4\">[youtube]</a></li>\r\n<li>2020-08: DebConf 2020: Principles of Digital Autonomy <a href=\"https://debconf20.debconf.org/talks/97-introducing-the-principles-of-digital-autonomy/\">[debconf]</a> <a href=\"https://peertube.debian.social/videos/watch/0ccc2893-06dd-4c36-81d1-838441666bec\">[peertube]</a></li>\r\n<li>2021-03: Simon Phipps\'s <a href=\"https://meshedinsights.com/2021/03/18/rights-ratchet-score-card/\">A Rights Ratchet Score Card</a></li>\r\n<li>2021-03: <a href=\"https://media.libreplanet.org/u/libreplanet/m/unjust-computing-clamps-down/\">LibrePlanet 2021: rms returns to FSF board</a></li>\r\n<li>2021-04: Cooperative Technology manifesto <a href=\"https://hackerpublicradio.org/eps.php?id=3317\">[hpr3317]</a> <a href=\"https://cooperativetechnology.codeberg.page/\">[official]</a></li>\r\n</ul>\r\n<p>Further sources for timeline:</p>\r\n<ul>\r\n<li><a href=\"https://en.wikipedia.org/wiki/History_of_netscape\">https://en.wikipedia.org/wiki/History_of_netscape</a></li>\r\n<li><a href=\"https://en.wikipedia.org/wiki/History_of_free_and_open-source_software\
(3398,'2021-08-11','Anacron',949,'Put down that crontab and get started with anacron','<h2>Setup</h2>\r\n\r\n<pre><code>\r\n$ mkdir -p ~/.local/etc/cron.daily ~/.var/spool/anacron\r\n</code></pre>\r\n\r\n\r\n<p>Create a file called <code>anacrontab</code>&#58;</p>\r\n\r\n<pre><code>\r\n$ touch /.local/etc/anacrontab\r\n</code></pre>\r\n\r\n<p>Set it up to trigger scripts in your <code>cron.daily</code> folder&#58;\r\n</p>\r\n\r\n<pre><code>\r\nSHELL=/bin/sh\r\nPATH=/sbin:/bin:/usr/sbin:/usr/bin\r\n1 0 cron.daily run-parts $HOME/.local/etc/cron.daily/\r\n</code></pre>\r\n\r\n<p>\r\nValidate your anacrontab&#58;\r\n</p>\r\n\r\n<pre><code>\r\n$ anacron -T -t ~/.local/etc/anacrontab -S ~/.var/spool/anacron\r\n</code></pre>\r\n\r\n<p>Start anacron in a file that gets triggered at login, such as <code>~/.profile</code>&#58;\r\n</p>\r\n\r\n<pre><code>\r\nanacron -t $HOME/.local/etc/anacrontab -S $HOME/.var/spool/anacron\r\n</code></pre>\r\n\r\n<h2>Using</h2>\r\n\r\n<p>Now that everything is set up, just put scripts you want to run regularly in <code>cron.daily</code>, and make them executable.\r\n</p>\r\n\r\n<p>You can set up a weekly directory, too. Just set the time interval in your anacrontab to:\r\n</p>\r\n\r\n<pre><code>\r\nSHELL=/bin/sh\r\nPATH=/sbin:/bin:/usr/sbin:/usr/bin\r\n7 0 cron.weekly run-parts $HOME/.local/etc/cron.weekly/\r\n</code></pre>',78,0,0,'CC-BY-SA','cron, linux, service, automation',0,0,1),
(3411,'2021-08-30','Dominion card game',1673,'Klaatu talks about the Dominion card game','<p>Dominion is a card game. Lots of fun. You should try it.</p>\r\n\r\n<p>You can even play online for free at <a href=\"https://dominion.games/\">dominion.games</a>\r\n</p>',78,95,0,'CC-BY-SA','card, game',0,0,1),
(3409,'2021-08-26','Linux Inlaws S01E37: All about Hacker Public Radio',5738,'An interview with Ken Fallon, Janitor at Hacker Public Radio','<p>\r\n In this episode of our beloved open source podcast rapidly approaching its\r\n zenith of popularity (with hopefully not an equally rapid decline afterwards)\r\n our two elderly heroes pay tribute to Hacker Public Radio in general and\r\n Ken Fallon in particular. Plus: a never-heard-of-before peek into Martin\'s\r\n very own private life (we lift the veil and reveal it all - don\'t miss this!)\r\n</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>Hacker Public Radio (HPR): <a href=\"https://hackerpublicradio.org\" target=_blank>https://hackerpublicradio.org</a></li>\r\n<li>HPR mailing list: <a href=\"https://hackerpublicradio.org/mailman/listinfo/hpr_hackerpublicradio.org\" target=_blank>https://hackerpublicradio.org/mailman/listinfo/hpr_hackerpublicradio.org</a></li>\r\n<li>Creative Commons Licenses: <a href=\"https://creativecommons.org\" target=_blank>https://creativecommons.org</a></li>\r\n<li>Static site generators: <a href=\"https://dev.to/oyetoket/which-is-the-best-static-site-generator-and-why-42e2\" target=_blank>https://dev.to/oyetoket/which-is-the-best-static-site-generator-and-why-42e2</a></li>\r\n<li>Richard Stallman issue: <a href=\"https://arstechnica.com/tech-policy/2019/09/richard-stallman-leaves-mit-after-controversial-remarks-on-rape\" target=_blank>https://arstechnica.com/tech-policy/2019/09/richard-stallman-leaves-mit-after-controversial-remarks-on-rape</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','HPR, cleaning, janitoring, having a good time, Richard M. Stallman, stats',0,0,1),
(3417,'2021-09-07','Ceph cluster hardware',729,'Looking into the hardware behind my ceph cluster ','<p>In this video I talk about 4 different computers that could be used in a ceph cluster and what I use and what could be good solutions. If you want to have a visual aid I\'ve created a youtube video talking about the same thing.</p>\r\n<ul>\r\n<li><a href=\"https://youtu.be/B6XXOVcLhzA\" class=\"uri\">https://youtu.be/B6XXOVcLhzA</a></li>\r\n</ul>\r\n',382,0,0,'CC-BY-SA','ceph, cluster, hardware',0,0,1),
(3437,'2021-10-05','The HTML document format',402,'Talking about my favorite document format.','<p>Klaatu asked us what document format we like and why, so this is a response to his podcast. In this podcast I talk about HTML and the importance of good document structure.</p>',382,0,0,'CC-BY-SA','html, document, css, javascript',0,0,1),
(3408,'2021-08-25','Composting',336,'Inspired by episode 3157, Rho`n describes his experience of learning to compost','<h2 id=\"introduction\">Introduction</h2>\r\n<p>Welcome to another episode of Hacker Public Radio. This episode is inspired by HPR episode 3157 entitled Compost by Klaatu. During the early 2000\'s, I lived in a single family home which had a number of oak trees around it. Between the trees, other foliage, and grass, there was a large amount of yard waste. While my city (Baltimore, MD in the US) will pick up your yard waste if you put it in bags by the curb [1], I would use the oak leaves as mulch, and did have a mulch pile of leaves and other yard waste. At that time, I thought about composting food waste, but there is a big issue with rats in Baltimore, and I didn\'t look into ways to compost. I just knew I couldn\'t randomly mix it into my mulch pile.</p>\r\n<p>I am currently living in a different house, without any oak trees, and not as much yard waste (particularly since we hire someone to mow the grass every couple weeks). After listening to the Compost episode, I was inspired to look into the best way to do it given my current living situation. The first thing I did was to look and see if there are any laws against composting in Baltimore City. The rat problem is big enough that the City purchased and distributed a large green plastic trash bin to every physical mailing address in the city. This is the bin you are required to use when putting out your trash. Given the situation, I wasn\'t sure it would be legal to do composting in your back yard. Much to my surprise, it is not only legal, but the city website has a web page on how to compost [2] and just recently started a pilot program for food scrap drop off with seven locations around the city [3].</p>\r\n<h2 id=\"kitchen-compost-bin\">Kitchen Compost Bin</h2>\r\n<p>After determining I wasn\'t going to be a scofflaw, I went to the Internet to see what kind of bins are available for purchase. While Klaatu gives great suggestions for low cost composting bins, I wanted something that would look nice sitting out on a shelf for the small inside bin. I found the Utopia Kitchen Compost Bin [4]. The bin is made of stainless steel and has a volume of 1.3 gallons (4.9 liters). The lid is rounded and has a series of holes around the top. The inside of the lid holds a circular shaped charcoal filter. The combination of holes and charcoal filter capture any odors generated by the food scraps. It works amazingly well and even with onion scraps you need to stick your nose to the holes and inhale deep to smell anything when the lid is closed. It holds three to seven days worth of food scraps, most of which end up being coffee grinds. We have had this bin for 10 months, and the charcoal filter is still effective. There are replacement filters available for this bin, but you could also cut other charcoal filters to fit inside the lid.</p>\r\n<h2 id=\"outside-compost-bin\">Outside Compost Bin</h2>\r\n<p>Given the potential rat and other small critter issues, I wanted the main, outside composter to be fully enclosed, and preferably not sitting directly on the ground. A quick search brings up a number of options, both composters that sit on the ground and ones that are tumbler style, which hang on a frame. I went with a tumbler style compost bin. This provided the desired feature of not being on the ground, and has the added advantage of making it easy to turn the compost every second or third day by just rotating the bin slowly for three or four full turns. I purchased the FCMP Outdoor IM4000 Tumbling Composter [5]. The composter is octagonal shaped column with two chambers inside it. This allows you to fill one chamber while the other side is finishing the composting process. There are also aeration holes for each chamber which can be open to different levels to moderate the amount of moisture. The combined volume of the two chambers is approximately 37 gallons (140 liters).</p>\r\n<h2 id=\"my-composting-experience\">My Composting Experience</h2>\r\n<p>So far I h
(3414,'2021-09-02','Critical Thinking may make You Critical of the Covid Crisis',645,'Some Science YOU can observe about covid fallacies, and some preventative medicine.','<hr />\r\n<h3>Counter Point</h3>\r\n<p>Counter points to this show are available:<br />\r\n<ol>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=3442\">hpr3442 :: What is this thing called science</a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=3445\">hpr3445 :: True critical thinking seems to be the key</a></li>\r\n</ol>\r\n</p>\r\n<hr />\r\n<p>The homeless weren\'t affected as much as other segments of the population. This Radiolab episode suggests that healthy vitamin D3 levels from being out in the sun often may be the reason.</p>\r\n<p><a href=\"https://www.wnycstudios.org/podcasts/radiolab/articles/invisible-allies\" class=\"uri\">https://www.wnycstudios.org/podcasts/radiolab/articles/invisible-allies</a></p>\r\n<p>A hospital in Spain did a double blind study, solid science. In this study, before any vaccines were available for covid, vitamin D3 made the difference between a 7.6% death rate due to covid, and a 0% death rate with vitamin D3. This YouTube video gets very technical, but tells the story.</p>\r\n<p><a href=\"https://www.youtube.com/watch?v=V8Ks9fUh2k8\" class=\"uri\">https://www.youtube.com/watch?v=V8Ks9fUh2k8</a></p>\r\n<p>Back in the 60s, body temperature\'s effect on fighting viruses was known, that knowledge was lost for a time because of scientists who spoke out, not knowing the whole story, but in 2003, in the aftermath of the previous covid outbreak, a doctor from China documented the need for body heat to fight off covid. Even so, medical professionals in New York set up a covid triage in Central Park during a season when the daytime temperature was in the 50s, and night time temperature was much colder. Just having a PhD behind your name doesn\'t make you right.</p>\r\n<p><a href=\"https://www.bmj.com/rapid-response/2011/10/29/coronavirus-may-be-killed-higher-body-temperature\" class=\"uri\">https://www.bmj.com/rapid-response/2011/10/29/coronavirus-may-be-killed-higher-body-temperature</a></p>\r\n',395,0,1,'CC-BY-SA','covid, vitamin D3, masks, viruses, lawyers',0,0,1),
(3404,'2021-08-19','Suse 15.3 Leap',652,'A short review of Suse 15.3','<p>Short review of Suse 15.3</p>\r\n',129,0,0,'CC-BY-SA','linux, suse, leap, vnc',0,0,1),
(3412,'2021-08-31','Reading a license: Creative Commons Attribution ShareAlike 3.0 Unported',2098,'We are using this license but we didn\'t publish it on HPR ... until now!','<p><em>This show and its notes are licensed under the Creative Commons Attribution 3.0 Unported license: <a href=\"https://creativecommons.org/licenses/by/3.0/\">https://creativecommons.org/licenses/by/3.0/</a></em></p>\r\n<p>The original work is by Creative Commons and has been slightly modified during reading. The text\r\nreproductions below have been modified for formatting, but not intentionally for content.\r\nMisspellings are from the original.</p>\r\n<ul>\r\n<li>The show <a href=\"https://hackerpublicradio.org/eps.php?id=3402\">https://hackerpublicradio.org/eps.php?id=3402</a> is licensed under the Creative Commons Attribution ShareAlike 4.0 International license.</li>\r\n<li>CC-by-SA 3.0 and other 3.0 licenses were released on 2007-02-23: <a href=\"https://creativecommons.org/2007/02/23/version-30-launched/\">https://creativecommons.org/2007/02/23/version-30-launched/</a></li>\r\n<li>The licenses were published on a site that was at the time CC-by 3.0: <a href=\"https://web.archive.org/web/20070225072754/https://creativecommons.org/\">https://web.archive.org/web/20070225072754/https://creativecommons.org/</a></li>\r\n</ul>\r\n<hr>\r\n<h1 id=\"creative-commons-license-deed\">Creative Commons License Deed</h1>\r\n<p>Original: <a href=\"https://creativecommons.org/licenses/by-sa/3.0/\">https://creativecommons.org/licenses/by-sa/3.0/</a></p>\r\n<h2 id=\"attribution-sharealike-3-0-unported-cc-by-sa-3-0-\">Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0)</h2>\r\n<p>This is a human-readable summary of (and not a substitute for) the <a href=\"#creative-commons-legal-code\">license</a>.</p>\r\n<h3 id=\"disclaimer\">Disclaimer</h3>\r\n<p>This deed highlights only some of the key features and terms of the actual license. It is not a\r\nlicense and has no legal value. You should carefully review all of the terms and conditions of the actual\r\nlicense before using the licensed material.</p>\r\n<p>Creative Commons is not a law firm and does not provide legal services. Distributing, displaying,\r\nor linking to this deed or the license that it summarizes does not create a lawyer-client or any other\r\nrelationship.</p>\r\n<h3 id=\"you-are-free-to-\">You are free to:</h3>\r\n<ul>\r\n<li><strong>Share</strong> - copy and redistribute the material in any medium or format</li>\r\n<li><strong>Adapt</strong> - remix, transform, and build upon the material for any purpose, even commercially.\r\nThe licensor cannot revoke these freedoms as long as you follow the license terms.</li>\r\n</ul>\r\n<h3 id=\"under-the-following-terms-\">Under the following terms:</h3>\r\n<ul>\r\n<li><strong>Attribution</strong> - You must give\r\n<a href=\"https://wiki.creativecommons.org/License_Versions#Detailed_attribution_comparison_chart\">appropriate credit</a>,\r\nprovide a link to the license, and\r\n<a href=\"https://wiki.creativecommons.org/License_Versions#Modifications_and_adaptations_must_be_marked_as_such\">indicate if changes were made</a>.\r\nYou may do so in any reasonable manner, but not in any way that suggests the licensor endorses\r\nyou or your use.</li>\r\n<li><strong>ShareAlike</strong> - If you remix, transform, or build upon the material, you must\r\ndistribute your contributions under the\r\n<a href=\"https://wiki.creativecommons.org/FAQ#If_I_derive_or_adapt_material_offered_under_a_Creative_Commons_license.2C_which_CC_license.28s.29_can_I_use.3F\">same license</a>\r\nas the original.</li>\r\n<li><strong>No additional restrictions</strong> - You may not apply legal terms or\r\n<a href=\"https://wiki.creativecommons.org/License_Versions#Application_of_effective_technological_measures_by_users_of_CC-licensed_works_prohibited\">technological measures</a>\r\nthat legally restrict others from doing anything the license permits.</li>\r\n</ul>\r\n<h3 id=\"notices-\">Notices:</h3>\r\n<p>You do not have to comply with the license for elements of the material in the
(3407,'2021-08-24','Software Freedom Podcast',3407,'A sample episode of the Free Software Foundation Europe Podcast','<p>\r\nThe <a href=\"https://fsfe.org/news/podcast.en.html\">Free Software Foundation Europe have a podcast</a>, and this is a sample episode.\r\n</p>\r\n<ol>\r\n<li><a href=\"https://fsfe.org/news/podcast.en.html\">Web page: https://fsfe.org/news/podcast.en.html</a></li>\r\n<li><a href=\"https://fsfe.org/news/podcast-opus.en.rss\">Opus Feed: feed://fsfe.org/news/podcast-opus.en.rss</a></li>\r\n<li><a href=\"https://fsfe.org/news/podcast.en.rss\">MP3 Feed: feed://fsfe.org/news/podcast.en.rss</a></li>\r\n<li><a href=\"https://freeculturepodcasts.org/\">Free Culture Podcasts: https://freeculturepodcasts.org/</a></li>\r\n</ol>',30,75,0,'CC-BY-SA','FSFE,Podcast,freeculturepodcasts',0,0,1),
(3419,'2021-09-09','Linux Inlaws S01E38: Tiny kernels',3748,'All you ever wanted to hear and more about micro kernels and other operating system war stories','<p> This episode is dedicated to tiny kernels driving operating systems also\r\n known as micro-kernels. While discussing the last 100 years of operating\r\n system design and implementation, our two aging heroes also shed some\r\n light on operating systems in general and their recent history (like fifty\r\n years). Unless you\'re a true OS nerd, you find the episode mildly\r\n refreshing and educational on the layers of software underneath your\r\n beloved applications controlling the hardware and other shenanigans. If\r\n you\'re an OS nerd, this episode may have the potential of closing your few\r\n remaining knowledge gaps (or something like this). A fun show for\r\n children of all ages and beyond. </p>\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>IBM VM: <a href=\"https://en.wikipedia.org/wiki/Z/VM\" target=_blank>https://en.wikipedia.org/wiki/Z/VM</a></li>\r\n<li>Modern operating systems by Andy S. Tanenbaum: <a href=\"https://csc-knu.github.io/sys-prog/books/Andrew%20S.%20Tanenbaum%20-%20Modern%20Operating%20Systems.pdf\" target=_blank>https://csc-knu.github.io/sys-prog/books/Andrew%20S.%20Tanenbaum%20-%20Modern%20Operating%20Systems.pdf</a></li>\r\n<li>Short write-up on fashion (for the uninitiated): <a href=\"https://en.wikipedia.org/wiki/Fashion\" target=_blank>https://en.wikipedia.org/wiki/Fashion</a></li>\r\n<li>Multics: <a href=\"https://www.multicians.org\" target=_blank>https://www.multicians.org</a></li>\r\n<li>Unix: <a href=\"https://en.wikipedia.org/wiki/History_of_Unix\" target=_blank>https://en.wikipedia.org/wiki/History_of_Unix</a></li>\r\n<li>CCP/M-86: <a href=\"https://en.wikipedia.org/wiki/Multiuser_DOS#Concurrent_CP/M-86\" target=_blank>https://en.wikipedia.org/wiki/Multiuser_DOS#Concurrent_CP/M-86</a></li>\r\n<li>QDOS: <a href=\"https://en.wikipedia.org/wiki/86-DOS\" target=_blank>https://en.wikipedia.org/wiki/86-DOS</a></li>\r\n<li>VMS: <a href=\"https://vmssoftware.com\" target=_blank>https://vmssoftware.com</a></li>\r\n<li>Digital\'s VAX: <a href=\"https://en.wikipedia.org/wiki/VAX\" target=_blank>https://en.wikipedia.org/wiki/VAX</a></li>\r\n<li>Mach kernel: <a href=\"https://en.wikipedia.org/wiki/Mach_(kernel)\" target=_blank>https://en.wikipedia.org/wiki/Mach_(kernel)</a></li>\r\n<li>Android: <a href=\"https://en.wikipedia.org/wiki/Android_(operating_system)\" target=_blank>https://en.wikipedia.org/wiki/Android_(operating_system)</a></li>\r\n<li>Homebrew: <a href=\"https://brew.sh\" target=_blank>https://brew.sh</a></li>\r\n<li>MacPorts: <a href=\"https://www.macports.org\" target=_blank>https://www.macports.org</a></li>\r\n<li>Usenet war: <a href=\"https://en.wikipedia.org/wiki/Tanenbaum%E2%80%93Torvalds_debate\" target=_blank>https://en.wikipedia.org/wiki/Tanenbaum%E2%80%93Torvalds_debate</a></li>\r\n<li>Minix and TPM: <a href=\"https://www.zdnet.com/article/minix-intels-hidden-in-chip-operating-system\" target=_blank>https://www.zdnet.com/article/minix-intels-hidden-in-chip-operating-system</a></li>\r\n<li>Trusted Platform Module: <a href=\"https://link.springer.com/content/pdf/10.1007%2F978-1-4302-6584-9.pdf\" target=_blank>https://link.springer.com/content/pdf/10.1007%2F978-1-4302-6584-9.pdf</a></li>\r\n<li>Secure enclaves: <a href=\"https://software.intel.com/content/www/us/en/develop/topics/software-guard-extensions.html\" target=_blank>https://software.intel.com/content/www/us/en/develop/topics/software-guard-extensions.html</a></li>\r\n<li>The Sleepover: <a href=\"https://www.imdb.com/title/tt10888708/?ref_=fn_al_tt_1\" target=_blank>https://www.imdb.com/title/tt10888708/?ref_=fn_al_tt_1</a></li>\r\n<li>Python Init Podcast episode: <a href=\"https://www.pythonpodcast.com/tony-liu-python-venture-investing-episode-305\" target=_blank>https://www.pythonpodcast.com/tony-liu-python-venture-investing-episode-305</a></li>\r\n<li>Martin\'s trainspotters\' research paper: <a href=\"https://www.diva-portal.org/sm
(3421,'2021-09-13','BlacKernel\'s Journey Into Technology: Episode 1',967,'Learning about Assembly and Social Engineering before I could read','<ul>\r\n<li><p>Important Links</p>\r\n<ul>\r\n<li><a href=\"https://gnuworldorder.info/audiophile/gnuWorldOrder_379.ogg\">GNU World Order Episode 379</a></li>\r\n<li><a href=\"https://eater.net/\">Ben Eater\'s Website</a></li>\r\n</ul></li>\r\n<li><p>Wikipedia Pages</p>\r\n<ul>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Transistor\">Transistor Wikipedia article</a></li>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Logic_gate\">Logic Gates Wikipedia article</a></li>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Assembly_language\">Assembly Language Wikipedia article</a></li>\r\n<li><a href=\"https://en.wikipedia.org/wiki/KidDesk\">KidDesk Wikipedia article</a></li>\r\n<li><a href=\"https://en.wikipedia.org/wiki/K9_Web_Protection\">K9 Web Protection Wikipedia article</a></li>\r\n</ul></li>\r\n</ul>',396,0,0,'CC-BY-SA','technology, childhood, stories',0,0,1),
(3413,'2021-09-01','Bash snippet - using coproc with SQLite',2738,'Sending multiple queries to a running instance of sqlite3','<h2 id=\"introduction\">Introduction</h2>\r\n<p>I am in the process of rewriting some scripts I use to manage <a href=\"https://magnatune.com/\" title=\"Magnatune\">Magnatune</a> albums. Im a lifetime Magnatune member and have access to the whole music collection. I wrote a script for downloading albums and placing them in my <code>~/Music</code> directory which I talked about in 2013 (show <a href=\"https://hackerpublicradio.org/eps.php?id=1204\">1204</a>). The original scripts are still available on <a href=\"https://gitlab.com/davmo/magnatune-downloader\">GitLab</a> and I know of one other person who made use of them!</p>\r\n<p>Since 2013 I have written a few other support scripts, for example one to manage a queue of albums I want to buy and download, and one which summarises the state of this queue.</p>\r\n<p>Its this <code>\'show_queue\'</code> script I am currently updating (called <a href=\"https://hackerpublicradio.org/eps/hpr3413/show_queue_orig\"><code>show_queue_orig</code></a>, and available in the resources to this show). The original version of this script took Magnatune album URLs from a file (acting as a queue of stuff I wanted to buy), parsed out a piece of the URL and used it to <code>grep</code> a pre-prepared summary in another file. This file of summaries had been made from a master XML file provided by Magnatune (see <code>update_albums</code> on GitLab).</p>\r\n<p>Magnatune has moved away from this master XML file to a SQLite database in recent years, so I want to perform a database lookup for each URL to list its details.</p>\r\n<p>The first version of the new script wasnt difficult to write: just extract the search data as before and run a query on the database using this data. I have included this script which I call <a href=\"https://hackerpublicradio.org/eps/hpr3413/show_queue_db_1\"><code>show_queue_db_1</code></a> amongst the resources for this episode, so you can see what Im talking about and what I want to improve on. It felt bad to be performing multiple calls on the <code>sqlite3</code> command in a loop, so I looked around for an alternative way.</p>\r\n<p>In April 2019 <a href=\"https://hackerpublicradio.org/correspondents/0311.html\">clacke</a> did a show (number <a href=\"https://hackerpublicradio.org/eps.php?id=2793\">2793</a>) about the Bash <code>coproc</code> command.</p>\r\n<p>This command creates a <em>subshell</em> running a command or group of commands which is connected to the calling (<em>parent</em>) process through two file descriptors (<em>FD</em>s). Its possible for the calling shell to write to the input descriptor and read from the output one and thereby communicate with whatever is running in the subshell.</p>\r\n<p>I was vaguely aware of <code>coproc</code> at the time of clackes show but hadnt looked into it. I found the show fascinating but didnt have a use for the feature at the time.</p>\r\n<p>To solve my need to show my Magnatune queue of future purchases, it looked as if a <code>sqlite3</code> instance running in a subshell could be given queries one after the other and return the answers I needed. My journey to a Bash script using <code>coproc</code> then followed.</p>\r\n<h2 id=\"long-notes\">Long notes</h2>\r\n<p>Follow this link to <a href=\"https://hackerpublicradio.org/eps/hpr3413/full_shownotes.html\">read the detailed notes</a> associated with this episode.</p>\r\n<h2 id=\"links\">Links</h2>\r\n<ul>\r\n<li>Bash Reference Manual:\r\n<ul>\r\n<li><a href=\"https://www.gnu.org/software/bash/manual/bash.html#Coprocesses\">3.2.6 Coprocesses</a></li>\r\n<li><a href=\"https://www.gnu.org/software/bash/manual/bash.html#Duplicating-File-Descriptors\">3.6.8 Duplicating File Descriptors</a></li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>Stack Exchange:\r\n<ul>\r\n<li><a href=\"https://unix.stackexchange.com/questions/86270/how-do-you-use-the-command-coproc-in-various-shells\">How do you use the command coproc in v
(3431,'2021-09-27','Living in the Terminal',2763,'BlacKernel shows you some programs you\'ll need for living life without X org','<h1 id=\"talking-points\">Talking Points</h1>\r\n<h2 id=\"rational\">Rational</h2>\r\n<ul>\r\n<li>Sometimes, X.org just doesn\'t want to work</li>\r\n<li>Esspecially if you are a dumb n00b running Arch</li>\r\n<li>The terminal will always be there for you.</li>\r\n</ul>\r\n<h2 id=\"applications\">Applications:</h2>\r\n<h3 id=\"my-bashrc\">My .bashrc:</h3>\r\n<ul>\r\n<li>Environment Variables:</li>\r\n</ul>\r\n<pre class=\"bash\"><code>export EDITOR=nvim\r\nexport PAGER=most\r\nexport BROWSER=lynx\r\n\r\nexport XDG_DATA_HOME=&quot;$HOME/.local/share&quot;\r\nexport XDG_CONFIG_HOME=&quot;$HOME/.config&quot;\r\n</code></pre>\r\n<p>PS1: <font color=blue>user</font>@<font color=green>hostname</font>:~ (git_branch) $</p>\r\n<pre class=\"bash\"><code>if [[ $EUID == 0 ]]; then\r\n export PS1=&quot;\\[e[1;31m\\]\\u\\[\\e[m\\]@\\[\\e[0;32m\\]\\h\\[\\e[m\\]:\\w\\$(__git_ps1) # &quot;\r\nelse\r\n export PS1=&quot;\\[e[1;34m\\]\\u\\[\\e[m\\]@\\[\\e[0;32m\\]\\h\\[\\e[m\\]:\\w\\$(__git_ps1) $ &quot;\r\nfi\r\n</code></pre>\r\n<ul>\r\n<li>Aliases:\r\n<ul>\r\n<li><code>alias vim=nvim</code></li>\r\n<li><code>alias play=mpv</code></li>\r\n</ul></li>\r\n</ul>\r\n<h2 id=\"productivity-window-manager-tmux\">Productivity (\"Window Manager\"): <a href=\"#show-notes\">tmux</a></h2>\r\n<ul>\r\n<li>Provides an easy way of splitting a tty into various panes</li>\r\n<li>Get multiple workspaces for free with CTL+ALT+F{1,2,3,4,5,6,7}</li>\r\n<li>All of the tiling window manager, none of the X-it</li>\r\n<li>Can set up <code>if [ -t 0 ] &amp;&amp; [[ -z $TMUX ]] &amp;&amp; [[ $- = *i* ]]; then exec tmux; fi</code> in .bashrc in order to have tmux start/stop with your terminal sessiion.</li>\r\n</ul>\r\n<h2 id=\"music-cmus\">Music: <a href=\"#show-notes\">cmus</a></h2>\r\n<ul>\r\n<li>Easy library and playlist management</li>\r\n<li>Dead simple to use (with cmus-tutorial)\r\n<ul>\r\n<li><code>y</code> to yank songs onto a playlist</li>\r\n<li><code>SPA</code> to select a playlist</li>\r\n<li><code>RET</code> to play a song/playlist</li>\r\n<li><code>TAB</code> to switch between panes</li>\r\n</ul></li>\r\n</ul>\r\n<h2 id=\"pictures-fim\">Pictures: <a href=\"#show-notes\">fim</a></h2>\r\n<ul>\r\n<li>Requires user be in the <code>video</code> group for permission to use the Linux framebuffer</li>\r\n</ul>\r\n<h2 id=\"radiovideosingle-audio-files-mpv\">Radio/Video/single audio files: <a href=\"#show-notes\">mpv</a></h2>\r\n<ul>\r\n<li>Can display video in terminal (badly with libcaca)</li>\r\n<li>Can <em>actually</em> display video in linux framebuffer (with drm)</li>\r\n<li>Can handle all of your somafm files/web-video links</li>\r\n<li>Requires <a href=\"#show-notes\">youtube-dl</a> for video</li>\r\n</ul>\r\n<h2 id=\"podcastsrss-newsboatpodboat\">Podcasts/RSS: <a href=\"#show-notes\">newsboat/podboat</a></h2>\r\n<ul>\r\n<li>Orginizes all of your podcasts and RSS feeds into an easy-to-use ncurses interface</li>\r\n<li>Can be set up with <code>player \"mpv --save-position-on-quit\"</code> to save positions on podcasts</li>\r\n<li><em>Very</em> convinent for articles, less so for podcasts</li>\r\n<li>Really needs better integration with something like cmus</li>\r\n</ul>\r\n<h4 id=\"runner-up-podfox\">Runner Up: <a href=\"#show-notes\">podfox</a></h4>\r\n<ul>\r\n<li>Can be configured with JSON</li>\r\n<li>Has better directory structure than podboat, imo</li>\r\n<li>Tree based structure vs shove everything in ~ by default</li>\r\n</ul>\r\n<h2 id=\"text-editingword-processing-neovimgitx-flavored-markdownpandoc\">Text Editing/Word Processing: <a href=\"#show-notes\">neovim/GitX Flavored Markdown/pandoc</a></h2>\r\n<ul>\r\n<li>Clean modal editing</li>\r\n<li>Can export to whatever with pandoc</li>\r\n<li>Probably not as good as OrgMode if emacs wasn\'t the HFS+ of text editors</li>\r\n</ul>\r\n<h2 id=\"audio-recordingpost-processing-ffmpeg\">Audio Recording/Post-Processing: <a href=\"#show-notes\">ffmpeg</a></h2>\r\n<ul>\r\n<li
(3426,'2021-09-20','Rust 101: Episode 0 - What in Tarnishing?',1348,'BlacKernel teaches you what rust is and how it is different from Python or C.','<h1 id=\"Talking-Points\">Talking Points</h1>\r\n<ul>\r\n<li>What is Rust?\r\n<ul>\r\n<li>\" Garbage Collection \" - Resource Acquisition Is Initialization (RAII)</li>\r\n<li>Strict Typing with Type Inference</li>\r\n<li>Reference pointers</li>\r\n<li>Immutable by default</li>\r\n<li>Unsafe Mode</li>\r\n</ul></li>\r\n<li>Why use Rust over Python?\r\n<ul>\r\n<li>Speed</li>\r\n<li>Compiled\r\n<ol>\r\n<li>Help from compiler</li>\r\n<li>Smaller binary size</li>\r\n<li>Useful in high throughput/embedded applications</li>\r\n</ol></li>\r\n<li>Logically consistent</li>\r\n</ul></li>\r\n<li>Why use Rust over C?\r\n<ul>\r\n<li>Safe by default</li>\r\n<li>Easier to read</li>\r\n<li>Forces you to write good code</li>\r\n<li>Arrays without stupidity++ and built in vectors</li>\r\n<li>Option&lt;T&gt; and Result&lt;T&gt; or a match {} made in heaven</li>\r\n</ul></li>\r\n</ul>\r\n<hr />\r\n<h1 id=\"Show-Notes\">Show Notes</h1>\r\n<h2 id=\"Strict-Typing\">Strict Typing</h2>\r\n<pre><code>fn main() {\r\n\r\n // Type declared with var: &lt;T&gt; syntax\r\n let penguin_one: &amp;str = &quot;gentoo&quot;;\r\n \r\n // Type &amp;str is inherited from &quot;gentoo&quot;\r\n let penguin_two = &quot;gentoo&quot;;\r\n \r\n // Will not panic if they are the same\r\n assert_eq!(penguin_one, penguin_two);\r\n}</code></pre>\r\n<h2 id=\"Reference-Pointers\">Reference Pointers</h2>\r\n<p><span id=\"Wrong-Way:\"></span><strong>Wrong Way:</strong></p>\r\n<pre><code>fn print_u8_vector(vec: Vec&lt;u8&gt;) {\r\n println!(&quot;{:?}&quot;, vec);\r\n}\r\n\r\nfn main() {\r\n let penguin_ages: Vec&lt;u8&gt; = vec!(2, 4, 6);\r\n print_u8_vector(penguin_ages);\r\n \r\n // This line will throw an error\r\n println!(&quot;{}&quot;, penguin_ages[0]);\r\n}</code></pre>\r\n<p><span id=\"Correct-Way:\"></span><strong>Correct Way:</strong></p>\r\n<pre><code>fn print_u8_vector(vec: &amp;Vec&lt;u8&gt;) {\r\n println!(&quot;{:?}&quot;, vec);\r\n}\r\n\r\nfn main() {\r\n let penguin_ages: Vec&lt;u8&gt; = vec!(2, 4, 6);\r\n print_u8_vector(&amp;penguin_ages);\r\n \r\n // This line will print &#39;2&#39;\r\n println!(&quot;{}&quot;, penguin_ages[0]);\r\n}</code></pre>\r\n<h2 id=\"Immutable-By-Default\">Immutable By Default</h2>\r\n<p><span id=\"Wrong-Way:\"></span><strong>Wrong Way:</strong></p>\r\n<pre><code>fn main() {\r\n let my_num = 2;\r\n \r\n // This line will throw an error\r\n my_num = my_num + 1;\r\n println!(&quot;{}&quot;, my_num);\r\n}</code></pre>\r\n<p><span id=\"Correct-Way:\"></span><strong>Correct Way:</strong></p>\r\n<pre><code>fn main() {\r\n let mut my_num = 2;\r\n my_num = my_num + 1;\r\n \r\n // This line will print &#39;3&#39;\r\n println!(&quot;{}&quot;, my_num);\r\n}</code></pre>\r\n<h2 id=\"Unsafe-Code\">Unsafe Code</h2>\r\n<p><span id=\"Hello-World-Program-in-C-in-Rust:\"></span><strong>Hello World Program in C in Rust:</strong></p>\r\n<pre><code>extern &quot;C&quot; {\r\n fn printf(input: &amp;str);\r\n}\r\n\r\nfn main() {\r\n unsafe {\r\n printf(&quot;Hello, World!&quot;);\r\n }\r\n}</code></pre>\r\n<ul>\r\n<li><span id=\"Important-Links\"></span><strong>Important Links</strong>:\r\n<ul>\r\n<li><a href=\"https://www.rust-lang.org\">Rust Programming Language Homepage</a></li>\r\n<li><a href=\"https://play.rust-lang.org/\">Rust Playground</a></li>\r\n<li><a href=\"https://invidious.snopyta.org/watch?v=yOyaJXpAYZQ\">Ben Eater: Comparing C to machine language</a> &lt;WARNING: YouTube Hosted&gt;</li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li><span id=\"Wikipedia-Pages\"></span><strong>Wikipedia Pages</strong>:\r\n<ul>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Rust_(programming_language)\">Rust Programming Language Wikipedia article</a></li>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Resource_acquisition_is_initialization\">Resource Acquisition Is Initialization (RAII)</a></li>\r\n</ul></li>\r\n<
(3418,'2021-09-08','My gEeeky Experiment - Part 2',648,'Claudio talks about how he installed Haiku on an Asus Eee PC 900a received from a friend.','<ul>\r\n<li>Eee PC 900a: <a href=\"https://www.notebookcheck.net/Asus-Eee-PC-900A.11751.0.html\" class=\"uri\">https://www.notebookcheck.net/Asus-Eee-PC-900A.11751.0.html</a></li>\r\n</ul>\r\n<!-- . -->\r\n<ul>\r\n<li>Haiku (Wikipedia): <a href=\"https://en.wikipedia.org/wiki/Haiku_(operating_system)\" class=\"uri\">https://en.wikipedia.org/wiki/Haiku_(operating_system)</a></li>\r\n<li>Haiku website: <a href=\"https://www.haiku-os.org\" class=\"uri\">https://www.haiku-os.org</a></li>\r\n<li>Media Release - Haiku R1 Beta 3: <a href=\"https://www.haiku-os.org/news/2021-07-26_media_release_the_haiku_project_celebrates_the_release_of_beta_3\" class=\"uri\">https://www.haiku-os.org/news/2021-07-26_media_release_the_haiku_project_celebrates_the_release_of_beta_3</a></li>\r\n</ul>\r\n<!-- . -->\r\n<ul>\r\n<li>Be Operating System (BeOS): <a href=\"https://en.wikipedia.org/wiki/BeOS\" class=\"uri\">https://en.wikipedia.org/wiki/BeOS</a></li>\r\n<li>Be, Inc.: <a href=\"https://en.wikipedia.org/wiki/Be_Inc\" class=\"uri\">https://en.wikipedia.org/wiki/Be_Inc</a>.</li>\r\n<li>BeBox: <a href=\"https://en.wikipedia.org/wiki/BeBox\" class=\"uri\">https://en.wikipedia.org/wiki/BeBox</a></li>\r\n</ul>\r\n<!-- . -->\r\n<ul>\r\n<li>Motorola StarMax series of Power Macintosh clones: <a href=\"https://en.wikipedia.org/wiki/Motorola_StarMax\" class=\"uri\">https://en.wikipedia.org/wiki/Motorola_StarMax</a></li>\r\n<li>Video of my StarMax 4000/160: <a href=\"https://www.youtube.com/watch?v=zi5DwqqZfUQ\" class=\"uri\">https://www.youtube.com/watch?v=zi5DwqqZfUQ</a></li>\r\n</ul>\r\n<!-- . -->\r\n<ul>\r\n<li><p>Blog post: <a href=\"https://claudiomiranda.wordpress.com/2020/01/12/my-geeeky-experiment-part-2\" class=\"uri\">https://claudiomiranda.wordpress.com/2020/01/12/my-geeeky-experiment-part-2</a></p></li>\r\n<li><p>HP EliteBook 2170p: <a href=\"https://support.hp.com/ro-en/document/c03406489\" class=\"uri\">https://support.hp.com/ro-en/document/c03406489</a></p></li>\r\n</ul>\r\n',152,0,0,'CC-BY-SA','asus,eeepc,haiku,beos,starmax,bebox,motorola,be',0,0,1),
(3423,'2021-09-15','\"upg.sh\" my \"dump.txt\" to \"note.md\"',2278,'I upgraded my scripts.','<h1 id=\"upgsh-my-dumptxt-to-notemd\">upg.sh my dump.txt to note.md</h1>\r\n<p><strong>SYNOPSIS:</strong> <em>upg.sh</em></p>\r\n<ul>\r\n<li>Upgrade your system and store stdout into a markdown file.</li>\r\n</ul>\r\n<pre><code>#!/bin/bash\r\n# upg.sh\r\n\r\nFILENAME=sys-upgrade$(date +%m-%d-%Y).md\r\nDIRECTORY=&quot;${HOME}/Documents/&quot;\r\n\r\n# step 1: formatting.\r\necho -e &quot;# **System Upgrade:** $(date)\\n&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\necho -e &quot;**Command:** \\`sudo apt-get update; sudo apt-get upgrade --yes\\`\\n&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\necho -e &quot;**Command Breakdown:**&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\necho -e &quot;- \\`sudo\\`, Admin Privilages.&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\necho -e &quot;- \\`apt-get\\`, Package Manager.&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\necho -e &quot;- \\`update;\\`, Package Manager&#39;s task; update the system software repositories.&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\necho -e &quot;- \\`sudo apt-get upgrade\\`, Perform system upgrade with updated repositories.&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\necho -e &quot;- \\`--yes\\`, Answers yes to the prompt.&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\n\r\n# step 2: run commands with formatting.\r\necho -e &quot;\\n**Command std-output:**\\n&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\necho -e &quot;\\`\\`\\`&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\n echo $(date) \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\n\r\nsudo apt-get update \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\necho -e &quot;\\n# System update completed.\\n&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\n\r\nsudo apt-get upgrade --yes \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\necho -e &quot;\\n# System upgrade completed.\\n&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\necho -e &quot;\\`\\`\\`\\n&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\n\r\n# step 3: additional details with more formatting.\r\necho -e &quot;**Upgraded Package Details:**\\n&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\necho -e &quot;\\`\\`\\`&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\n\r\nPKGLIST=$(sed -n &quot;/The following packages will be upgraded:/,/^.. upgraded/p&quot; ${FILENAME} \\\r\n | sed &#39;1d;$d&#39; | xargs -n 1 | sed &#39;/:i386$/d&#39;) \\\r\n\r\nPKGCACHE=$(echo -e &quot;${PKGLIST}\\n&quot; \\\r\n | xargs -n1 -I _ apt-cache search _)\r\necho &quot;${PKGCACHE}&quot; &gt; ${DIRECTORY}delete.txt\r\n\r\necho &quot;${PKGLIST}&quot; \\\r\n | xargs -n 1 -I _ echo &quot;sed -n &#39;/^_ /p&#39;&quot; &quot;${DIRECTORY}delete.txt&quot; \\\r\n | bash | tee -a ${DIRECTORY}${FILENAME};\r\n\r\necho -e &quot;\\`\\`\\`&quot; \\\r\n | tee -a ${DIRECTORY}${FILENAME}\r\n\r\nrm -v ${DIRECTORY}delete.txt;\r\nPKGLIST=\r\nPKGCACHE=\r\n\r\n# step 4: place EOF (end of file).\r\n sed -i &#39;/EOF/d&#39; ${DIRECTORY}${FILENAME}\r\necho &quot;EOF&quot; &gt;&gt; ${DIRECTORY}${FILENAME}\r\n#EOF\r\n</code></pre>\r\n<p><strong>Script breakdown:</strong> <em>upg.sh</em></p>\r\n<ul>\r\n<li><p>First, we declare bash as our shell with <code>#!/bin/bash</code>. We could also use <code>#!/bin/sh</code> for a more portable script.</p></li>\r\n<li><p>I like to paste the name of the script we\'re working on into the script itself <code># upg.sh</code>.</p></li>\r\n<li><p>Setup a couple of variables to shorten the syntax.</p></li>\r\n</ul>\r\n<pre><code>FILENAME=sys-upgrade$(date +%m-%d-%Y).md\r\nDIRECTORY=&quot;${HOME}/Documents/&quot;\r\n</code></pre>\r\n<ul>\r\n<li><code># step 1: formatting.</code>\r\n<ul>\r\n<li>Build labels and a short breakdown of the update/upgrade commands used.</li>\r\n</ul></li>\r\n</ul>\r\n<pre><code>echo -e &quot;# **System Upgrade:** $(date)\\n&quot; \\ &lt;-- formatting: label with date.\r\n | tee -a ${DIRECTORY}${FILENAME}
(3427,'2021-09-21','Ranger for the Win!',1096,'In this episode, I go over some typical use cases for the Ranger file manager','<h2 id=\"programs-referenced-in-this-episode\">Programs referenced in this episode</h2>\r\n<ul>\r\n<li>ranger</li>\r\n<li>caca-utils</li>\r\n<li>poppler-utils</li>\r\n<li>atool</li>\r\n<li>highlight</li>\r\n<li>trash-cli</li>\r\n<li>xlsx2csv</li>\r\n<li>docs2txt</li>\r\n<li>catdoc (for doc2txt and xls2csv)</li>\r\n<li>ods2tsv</li>\r\n</ul>\r\n',300,0,0,'CC-BY-SA','ranger,file manager,linux',0,0,1),
(3428,'2021-09-22','Bad disk rescue',1794,'Bad disk rescue - tragedy or happy ending?','<p>Here I tell the tale of a bad disk rescue. Is the rescue bad or just the disk? Well the disk is most certainly bad but please listen and tell me if the rescue was good or bad or could have been done better.</p>\r\n<p>Guest stars in this show include:</p>\r\n<ul>\r\n<li>dd</li>\r\n<li>ddrescue</li>\r\n<li>losetup</li>\r\n<li>mount</li>\r\n<li>badblocks</li>\r\n<li>smartctl</li>\r\n<li>The <a href=\"https://www.system-rescue.org\">System rescue distro</a></li>\r\n</ul>',268,0,0,'CC-BY-SA','linux,disk,windows,virtualbox',0,0,1),
(3422,'2021-09-14','Update about Phones and Devices',1341,'An Update about my New Phone and second one that is coming','<p>Small update about my new RedMi 10s and my new Monty Mint phone.</p>\r\n<ul>\r\n<li><a href=\"https://www.gsmarena.com/xiaomi_redmi_note_10s-10769.php\">https://www.gsmarena.com/xiaomi_redmi_note_10s-10769.php</a></li>\r\n<li><a href=\"https://ogadget.com/x/mony\">https://ogadget.com/x/mony</a></li>\r\n</ul>',129,0,0,'CC-BY-SA','Android, phone, Linux, Pine64, Smart Watch',0,0,1),
(3424,'2021-09-16','Infosec Podcasts Part 6 - Infosec Leadership',721,'Presenting my favorite information security leadership podcasts','<p>Inoffensive in every region of the world.</p>\r\n<p>Thank you to everyone who has listened to my previous episodes. This is the final episode in the Infosec Podcasts series.</p>\r\n<p>I listen to many, MANY podcasts. The vast majority of these are related to information security.</p>\r\n<p>Because there are so many podcasts to list, I have broken them down into 6 different episodes based on topics:</p>\r\n<ul>\r\n<li>Part 1 - News & Current Events - Episode 3324</li>\r\n<li>Part 2 - General Information Security - Episode 3334</li>\r\n<li>Part 3 - Career & Personal Development - Episode 3344</li>\r\n<li>Part 4 - Social Engineering - Episode 3368</li>\r\n<li>Part 5 - Episode 3387\r\n<ul>\r\n<li>Hacks & Attacks</li>\r\n<li>Technical Information & Learning</li>\r\n<li>Infosec Community / Social / History</li>\r\n<li>Part 6 - Infosec Leadership</li>\r\n</ul></li>\r\n</ul>\r\n<p><strong>Preamble</strong></p>\r\n<p>Term: CISO</p>\r\n<ul>\r\n<li>Pronounced SEE-so or SAI-so</li>\r\n<li>Chief Information Security Officer</li>\r\n<li>Sounds like executive leadership position, similar to Chief Executive Officer (CEO), Chief Financial Officer (CFO), etc but this is often not the case</li>\r\n</ul>\r\n<p>Security leadership is changing</p>\r\n<p>Old way:</p>\r\n<ul>\r\n<li>Experienced technologists (Usually old white guys) worked way up ranks</li>\r\n<li>Usually reported through IT (CIO/CTO)</li>\r\n<li>Department of \"No\" - Block everything bad</li>\r\n<li>Slows down business</li>\r\n</ul>\r\n<p>New way:</p>\r\n<ul>\r\n<li>Experienced business professionals with leadership skills and security understanding</li>\r\n<li>Can report through:\r\n<ul>\r\n<li>IT (CIO/CTO)</li>\r\n<li>Legal (For compliance reasons)</li>\r\n<li>Finance (CFO) for governance or compliance reasons</li>\r\n<li>Financial impacts of attacks</li>\r\n<li>Direct costs</li>\r\n<li>Fines</li>\r\n<li>CEO - Seat at the table with other C-level execs</li>\r\n<li>Direct to board</li>\r\n</ul></li>\r\n<li>Empowers the business to succeed in a secure way</li>\r\n<li>Can still slow down the business, but only when needed\r\n<ul>\r\n<li>Brakes on a race car</li>\r\n</ul></li>\r\n</ul>\r\n<p><strong>Infosec Leadership Podcasts</strong></p>\r\n<ul>\r\n<li>CISO Tradecraft - G Mark Hardy (Weekly)\r\n<ul>\r\n<li>Discussion of topics related to becoming a CISO or maturing as a CISO</li>\r\n<li><a href=\"https://www.cisotradecraft.com/\" class=\"uri\">https://www.cisotradecraft.com/</a></li>\r\n</ul></li>\r\n<li>CISO Vendor Relationship Podcast - David Spark & Guests (Weekly)\r\n<ul>\r\n<li>Weekly podcast addressing the challenges experienced by both security professionals and the vendors with whom they interact.</li>\r\n<li><a href=\"https://cisoseries.com/subscribe-podcast/\" class=\"uri\">https://cisoseries.com/subscribe-podcast/</a></li>\r\n</ul></li>\r\n<li>CISO Talks (Weekly)\r\n<ul>\r\n<li>The talk show series with discussions of current trends in the world of information security with CISOs on the front line.</li>\r\n<li><a href=\"https://www.lepide.com/ciso-talks.html\" class=\"uri\">https://www.lepide.com/ciso-talks.html</a></li>\r\n</ul></li>\r\n<li>CISO Talk - James Azar (Weekly)\r\n<ul>\r\n<li>Presents the CISO view on cybersecurity, talent development, technology, leadership and much more.</li>\r\n<li><a href=\"https://cisotalk.podbean.com/\" class=\"uri\">https://cisotalk.podbean.com/</a></li>\r\n</ul></li>\r\n<li>The Cyber Ranch Podcast - Allan Alford & Hacker Valley Studios (Weekly)\r\n<ul>\r\n<li>Interviews with security leaders discussing relevant topics</li>\r\n<li><a href=\"https://hackervalley.com/cyberranch/\" class=\"uri\">https://hackervalley.com/cyberranch/</a></li>\r\n</ul></li>\r\n<li>CISO\'s Secrets - Currently hosted by Grant Asplund and sponsored by Checkpoint\r\n<ul>\r\n<li>Interviews with security leaders across a wide range of industries</li>\r\n<li>Addresses real issues facing security professionals and busines
(3429,'2021-09-23','Linux Inlaws S01E39: Ubuntu and the Community',5207,'All about your favourite Debian spin and IBM mainframes','<p>\r\n In this episode, our two hosts host Rhys Davies, a developer advocate from Canonical. So all\r\n beans will be spilled on one of the most popular Linux distros out there. Like its past, present\r\n and future. Never mind how Canonical makes its moolah and where this goes... Plus an interesting\r\n infomercial on old big iron (IBM, if you\'re listening: the mail address is sponsor@linuxinlaws.eu).\r\n</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>Canonical: <a href=\"https://canonical.com\" target=_blank>https://canonical.com</a></li>\r\n<li>Ubuntu: <a href=\"https://ubuntu.com\" target=_blank>https://ubuntu.com</a></li>\r\n<li>Manjaro: <a href=\"https://manjaro.org\" target=_blank>https://manjaro.org</a></li>\r\n<li>WSL: <a href=\"https://wiki.ubuntu.com/WSL\" target=_blank>https://wiki.ubuntu.com/WSL</a></li>\r\n<li>Snapcraft: <a href=\"https://snapcraft.io\" target=_blank>https://snapcraft.io</a></li>\r\n<li>Ubuntu community reboot: <a href=\"https://ubuntu.com/blog/reintroducing-the-community-team\" target=_blank>https://ubuntu.com/blog/reintroducing-the-community-team</a></li>\r\n<li>Chromium as a snap: <a href=\"https://snapcraft.io/blog/chromium-in-ubuntu-deb-to-snap-transition\" target=_blank>https://snapcraft.io/blog/chromium-in-ubuntu-deb-to-snap-transition</a></li>\r\n<li>Ubuntu podcast episode on this issue: <a href=\"https://ubuntupodcast.org/2020/06/04/s13e11-inside-out-clothes\" target=_blank>https://ubuntupodcast.org/2020/06/04/s13e11-inside-out-clothes</a></li>\r\n<li>Canonical\'s transition from upstart to systemd: <a href=\"https://lists.ubuntu.com/archives/ubuntu-devel/2016-July/039465.html\" target=_blank>https://lists.ubuntu.com/archives/ubuntu-devel/2016-July/039465.html</a></li>\r\n<li>LinuxONE and Ubuntu: <a href=\"https://ubuntu.com/blog/tag/linuxone\" target=_blank>https://ubuntu.com/blog/tag/linuxone</a></li>\r\n<li>Rhys\' presentation at the Linux App Summit: <a href=\"https://conf.linuxappsummit.org/event/3/contributions/65\" target=_blank>https://conf.linuxappsummit.org/event/3/contributions/65</a></li>\r\n<li>Critical Role: <a href=\"https://critrole.com\" target=_blank>https://critrole.com</a></li>\r\n<li>Hazy Jane: <a href=\"https://www.brewdog.com/eu_de/hazy-jane-440-eu\" target=_blank>https://www.brewdog.com/eu_de/hazy-jane-440-eu</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','Debian, Ubuntu, IBM, mainframes, snaps, Canonical',0,0,1),
(3451,'2021-10-25','Bricklink',837,'Custom 3rd Part Lego Shops','<ul>\r\n<li>beware shipping prices</li>\r\n<li>always use Instant Checkout</li>\r\n<li>be sure to check USA</li>\r\n<li>2-3x the cost of lego.com set</li>\r\n<li>paying 3-5 people via paypal ....</li>\r\n<li>no way to easy share wanted list ...</li>\r\n<li>LOST :( https://rmccurdy.com/.scripts/downloaded/CL4P-TP%20Claptrap%20Borderlands%20Bricklink.xml</li>\r\n<li>7 missing out of 216 on one shipment</li>\r\n</ul>\r\n<!-- Photo: -->\r\n<!-- https://drive.google.com/file/d/16r1dyJZzqbLRfx0iKB2orj0MdNC_8yXl/view?usp=sharing -->\r\n<p><em>Photo</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3451/20210829_212454.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3451/20210829_212454_thumbnail.jpg\" alt=\"Photo\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>',36,0,0,'CC-BY-SA','lego',0,0,1),
(3432,'2021-09-28','Reading a license: Creative Commons Attribution ShareAlike 4.0 International',1956,'We jump into the future of 2013 and see how content licensing has changed','<p>Previous episode: <a href=\"https://hackerpublicradio.org/eps.php?id=3412\">https://hackerpublicradio.org/eps.php?id=3412</a><br><em>hpr3412 :: Reading a license: Creative Commons Attribution ShareAlike 3.0 Unported</em></p>\r\n<p>Timeline</p>\r\n<ul>\r\n<li>2007-02-23 <a href=\"https://creativecommons.org/2007/02/23/version-30-launched/\">https://creativecommons.org/2007/02/23/version-30-launched/</a></li>\r\n<li>2007-09-26 <a href=\"https://www.gnu.org/licenses/gpl-3.0.html\">https://www.gnu.org/licenses/gpl-3.0.html</a></li>\r\n<li>2011-11-03 <a href=\"https://creativecommons.org/2011/11/03/copyright-experts-discuss-cc-license-version-4-0-at-the-global-summit/\">https://creativecommons.org/2011/11/03/copyright-experts-discuss-cc-license-version-4-0-at-the-global-summit/</a><ul>\r\n<li>Internationalization</li>\r\n<li>Interoperability</li>\r\n<li>Long-lasting</li>\r\n<li>Data/PSI (Public Sector Information?)/Science/Education</li>\r\n<li>Supporting Existing Adoption Models and Frameworks</li>\r\n</ul>\r\n</li>\r\n<li>2013-11-25 <a href=\"https://creativecommons.org/2013/11/25/ccs-next-generation-licenses-welcome-version-4-0/\">https://creativecommons.org/2013/11/25/ccs-next-generation-licenses-welcome-version-4-0/</a><ul>\r\n<li>30-day violation grace period<br><a href=\"https://creativecommons.org/faq/#how-can-i-lose-my-rights-under-a-creative-commons-license-if-that-happens-how-do-i-get-them-back\">https://creativecommons.org/faq/#how-can-i-lose-my-rights-under-a-creative-commons-license-if-that-happens-how-do-i-get-them-back</a></li>\r\n</ul>\r\n</li>\r\n<li>2013-12-06 16Z--18Z CC site moves to 4.0 -- last snapshot with 3.0 is <a href=\"https://web.archive.org/web/20131206155520/https://creativecommons.org/\">https://web.archive.org/web/20131206155520/https://creativecommons.org/</a></li>\r\n<li>2014-10-21 CC-by-SA 4.0 and Free Art License 1.3 defined as two-way compatible licenses<br><a href=\"https://creativecommons.org/2014/10/21/big-win-for-an-interoperable-commons-by-sa-and-fal-now-compatible/\">https://creativecommons.org/2014/10/21/big-win-for-an-interoperable-commons-by-sa-and-fal-now-compatible/</a></li>\r\n<li>2015-10-08 GPLv3 defined as a one-way compatible license for CC-by-SA 4.0<br><a href=\"https://creativecommons.org/2015/10/08/cc-by-sa-4-0-now-one-way-compatible-with-gplv3/\">https://creativecommons.org/2015/10/08/cc-by-sa-4-0-now-one-way-compatible-with-gplv3/</a></li>\r\n</ul>\r\n<p>Links to license and deed and links from within the texts</p>\r\n<ul>\r\n<li><a href=\"https://creativecommons.org/licenses/by-sa/4.0/\">https://creativecommons.org/licenses/by-sa/4.0/</a></li>\r\n<li><a href=\"https://creativecommons.org/licenses/by-sa/4.0/legalcode\">https://creativecommons.org/licenses/by-sa/4.0/legalcode</a><ul>\r\n<li><em>The text of the Creative Commons public licenses is dedicated to the public domain under the CC0 Public Domain Dedication.</em></li>\r\n</ul>\r\n</li>\r\n<li><a href=\"https://freedomdefined.org/\">https://freedomdefined.org/</a><br>Definition of <em>Free Cultural Works</em></li>\r\n<li><a href=\"https://wiki.creativecommons.org/License_Versions#Detailed_attribution_comparison_chart\">https://wiki.creativecommons.org/License_Versions#Detailed_attribution_comparison_chart</a><br>How to give credit</li>\r\n<li><a href=\"https://wiki.creativecommons.org/License_Versions#Modifications_and_adaptations_must_be_marked_as_such\">https://wiki.creativecommons.org/License_Versions#Modifications_and_adaptations_must_be_marked_as_such</a><br>How to mark a work as modified</li>\r\n<li><a href=\"https://wiki.creativecommons.org/FAQ#If_I_derive_or_adapt_material_offered_under_a_Creative_Commons_license.2C_which_CC_license.28s.29_can_I_use.3F\">https://wiki.creativecommons.org/FAQ#If_I_derive_or_adapt_material_offered_under_a_Creative_Commons_license.2C_which_CC_license.28s.29_can_I_use.3F</a><br>How and when you ca
(3433,'2021-09-29','A Squirrels thoughts about RMS',2565,'RMS and the subject of freedom','<hr />\r\n<p>\r\n<strong><em>\r\nThis podcast was provided by <a href=\"https://hackerpublicradio.org/correspondents/0377.html\">Zen_Floater2</a> in his personal capacity. The opinions expressed in this podcast are the author\'s own and do not reflect the view of Hacker Public Radio.<br />\r\n<small><a href=\"https://hackerpublicradio.org/stuff_you_need_to_know.php#not_moderated\">Shownotes Edited by Ken</a> on 2021-09-11T14:35:19Z to <a href=\"https://hackerpublicradio.org/stuff_you_need_to_know.php#explicit\">include disclaimer</a>.</small>\r\n</em></strong>\r\n</p>\r\n<hr />\r\n\r\n\r\n\r\n<p>\r\nA Squirrels thoughts about freedom and RMS.\r\n</p>\r\n<p>\r\nI also cover guns on aircraft. I cover smoking on aircraft.\r\n</p>\r\n<p>\r\nAnd I cover drinking beer on aircraft.\r\n</p>\r\n<p>\r\nAnd COBOL as well.\r\n</p>\r\n',377,0,1,'CC-BY-SA','RMS,Pedophilia,BEER',0,0,1),
(3434,'2021-09-30','From 0 to K8s in 30 minutes',1938,'Build a Kubernetes cluster, run a website, route traffic to website','<p><a href=\"https://people.centos.org/pgreco/\">Install CentOS</a> <a href=\"https://www.raspberrypi.org/software/\">or Debian</a> on a Raspberry Pi. I\'m using CentOS, but I\'ll admit that Debian is the easier option by far.</p>\r\n<p>Do this on 3 separate Pi units, each with the same specs.</p>\r\n<h2 id=\"set-hostnames\">Set hostnames</h2>\r\n<p>You must have unique hostnames for each Pi. Without unique hostnames, your cluster cannot function.</p>\r\n<p>There are several \"kinds\" of hostnames, so to avoid confusion I change all of them.</p>\r\n<p>I use a simple naming scheme: <code>k</code> for \"kubernetes\" + an integer, starting at 100 + <code>c</code> for \"cluster\":</p>\r\n<pre class=\"bash\"><code>$ sudo hostname k100c\r\n$ sudo sysctl kernel.hostname=k100c\r\n$ sudo hostnamectl set-hostname k100c\r\n$ sudo reboot\r\n</code></pre>\r\n<p>Do this for each Pi. At a minimum, you end up with Pi computers named k100c, k101c, and k102c.</p>\r\n<h2 id=\"set-verbose-prompts\">Set verbose prompts</h2>\r\n<p>When working with many different hosts, it\'s helpful to have a very verbose prompt as a constant reminder of which host you\'re connected to. Add this to the <code>~/.bashrc</code> of each Pi:</p>\r\n<pre><code>export PS1=\'\\[&#x005C;033[1;32m\\]\\! \\d \\t \\h:\\w \\n% \\[&#x005C;033[00m\\]\' \r\n</code></pre>\r\n<h2 id=\"install-a-pi-finder-script\">Install a Pi finder script</h2>\r\n<p>Install an LED blinker so you can find a specific Pi when you need one. This brilliant script is by Chris Collins for his article <a href=\"https://opensource.com/article/20/6/find-raspberry-pi\">Use this script to find a Raspberry Pi on your network</a>, which explains how to run it.</p>\r\n<pre class=\"bash\"><code>#!/bin/bash\r\n\r\nset -o errexit\r\nset -o nounset\r\n\r\ntrap quit INT TERM\r\n\r\nCOUNT=0\r\nLED=&quot;/sys/class/leds/led0&quot;\r\n\r\nif ! [ $(id -u) = 0 ]; then\r\n echo &quot;Must be run as root.&quot;\r\n exit 1\r\nfi\r\n\r\nif [[ ! -d $LED ]]\r\nthen\r\n echo &quot;Could not find an LED at ${LED}&quot;\r\n echo &quot;Perhaps try &#39;/sys/class/leds/ACT&#39;?&quot;\r\n exit 1\r\nfi\r\n\r\nfunction quit() {\r\n echo mmc0 &gt;&quot;${LED}/trigger&quot;\r\n}\r\n\r\necho -n &quot;Blinking Raspberry Pi&#39;s LED - press CTRL-C to quit&quot;\r\necho none &gt;&quot;${LED}/trigger&quot;\r\n\r\nwhile true\r\ndo\r\n let &quot;COUNT=COUNT+1&quot;\r\n if [[ $COUNT -lt 30 ]]\r\n then\r\n echo 1 &gt;&quot;${LED}/brightness&quot;\r\n sleep 1\r\n echo 0 &gt;&quot;${LED}/brightness&quot;\r\n sleep 1\r\n else\r\n quit\r\n break\r\n fi\r\ndone\r\n</code></pre>\r\n<h2 id=\"install-k3s-on-your-control-plane\">Install K3s on your control plane</h2>\r\n<p>K3s is Kubernetes for IoT and Edge computing. It\'s the easiest, cleanest, and most serious method of getting Kubernetes on an ARM device. You can try other solutions (Microk8s, Minikube, OXD, and so on), but the best support comes from k3s.</p>\r\n<p>First, you must install k3s on one Pi. You can use any of your Pi units for this, but I use host k100c because it\'s the first in the sequence, so it feels logical.</p>\r\n<pre class=\"bash\"><code>[k100c]$ curl -sfL https://get.k3s.io -o install_k3s.sh\r\n[k100c]$ chmod 700 install_k3s.sh\r\n</code></pre>\r\n<p>Read the script to ensure that it seems to do what you expect, and then:</p>\r\n<pre class=\"bash\"><code>[k100c]$ ./install_k3s.sh\r\n</code></pre>\r\n<p>After installation, you\'re prompted to add some arguments to your bootloader. Open <code>/boot/cmdline.txt</code> in a text editor and add <code>cgroup_memory=1 cgroup_enable=memory</code> to the end of it.</p>\r\n<pre class=\"text\"><code>console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p3 rootfstype=ext4 elevator=deadline rootwait cgroup_memory=1 cgroup_enable=memory\r\n</code></pre>\r\n<p>Reboot:</p>\r\n<pre class=\"bash\"><code>[k100c]$ sudo reboot\r\n</code></pre>\r\n<p>Once the Pi is back up, verify that yo
(3438,'2021-10-06','Ten privacy friendly Google search alternatives.',551,'Google search is monopolistic here are some alternatives','<p>Here are links to all the search engines and related stuff discussed during this podcast,</p>\r\n<ul>\r\n<li>Searx: <a href=\"https://www.searx.me/\" class=\"uri\">https://www.searx.me/</a>\r\n<ul>\r\n<li>Searx public instances: <a href=\"https://searx.space/\" class=\"uri\">https://searx.space/</a></li>\r\n</ul></li>\r\n<li>Whoogle: <a href=\"https://github.com/benbusby/whoogle-search\" class=\"uri\">https://github.com/benbusby/whoogle-search</a>\r\n<ul>\r\n<li>Whoogle public instances: <a href=\"https://github.com/benbusby/whoogle-search#public-instances\" class=\"uri\">https://github.com/benbusby/whoogle-search#public-instances</a></li>\r\n</ul></li>\r\n<li>MetaGer: <a href=\"https://metager.org/\" class=\"uri\">https://metager.org/</a>\r\n<ul>\r\n<li>MetaGer browser extensions: <a href=\"https://metager.org/plugin\" class=\"uri\">https://metager.org/plugin</a></li>\r\n<li>MetaGer mobile apps: <a href=\"https://metager.org/app\" class=\"uri\">https://metager.org/app</a></li>\r\n<li>MetaGer privacy policy: <a href=\"https://metager.org/datenschutz\" class=\"uri\">https://metager.org/datenschutz</a></li>\r\n</ul></li>\r\n<li>Gigablast: <a href=\"https://gigablast.com/\" class=\"uri\">https://gigablast.com/</a>\r\n<ul>\r\n<li>Gigablast privacy policy: <a href=\"https://gigablast.com/privacy.html\" class=\"uri\">https://gigablast.com/privacy.html</a></li>\r\n</ul></li>\r\n<li>Private.sh: <a href=\"https://private.sh/\" class=\"uri\">https://private.sh/</a>\r\n<ul>\r\n<li>Private.sh privacy policy: <a href=\"https://private.sh/extension.html\" class=\"uri\">https://private.sh/extension.html</a></li>\r\n</ul></li>\r\n<li>Ecosia: <a href=\"https://www.ecosia.org/\" class=\"uri\">https://www.ecosia.org/</a>\r\n<ul>\r\n<li>Ecosia mobile apps: <a href=\"https://info.ecosia.org/mobile\" class=\"uri\">https://info.ecosia.org/mobile</a></li>\r\n<li>Ecosia privacy policy: <a href=\"https://info.ecosia.org/privacy\" class=\"uri\">https://info.ecosia.org/privacy</a></li>\r\n</ul></li>\r\n<li>Startpage: <a href=\"https://www.startpage.com/\" class=\"uri\">https://www.startpage.com/</a>\r\n<ul>\r\n<li>Startpage privacy policy: <a href=\"https://www.startpage.com/en/search/privacy-policy.html\" class=\"uri\">https://www.startpage.com/en/search/privacy-policy.html</a></li>\r\n</ul></li>\r\n<li>Qwant: <a href=\"https://www.qwant.com/\" class=\"uri\">https://www.qwant.com/</a>\r\n<ul>\r\n<li>Qwant Junior: <a href=\"https://www.qwantjunior.com/\" class=\"uri\">https://www.qwantjunior.com/</a></li>\r\n<li>Qwant browser extensions: <a href=\"https://help.qwant.com/help/qwant-search/add-qwant-on-desktop/\" class=\"uri\">https://help.qwant.com/help/qwant-search/add-qwant-on-desktop/</a></li>\r\n<li>Qwant privacy policy: <a href=\"https://about.qwant.com/en/legal/confidentialite/\" class=\"uri\">https://about.qwant.com/en/legal/confidentialite/</a></li>\r\n</ul></li>\r\n<li>Brave Search: <a href=\"https://search.brave.com/\" class=\"uri\">https://search.brave.com/</a>\r\n<ul>\r\n<li>Brave Search privacy policy: <a href=\"https://search.brave.com/help/privacy-policy\" class=\"uri\">https://search.brave.com/help/privacy-policy</a></li>\r\n</ul></li>\r\n<li>DuckDuckGo: <a href=\"https://duckduckgo.com/\" class=\"uri\">https://duckduckgo.com/</a>\r\n<ul>\r\n<li>DuckDuckGo browser extensions &amp; apps: <a href=\"https://duckduckgo.com/app\" class=\"uri\">https://duckduckgo.com/app</a></li>\r\n<li>DuckDuckGo privacy policy: <a href=\"https://duckduckgo.com/privacy\" class=\"uri\">https://duckduckgo.com/privacy</a></li>\r\n</ul></li>\r\n</ul>\r\n<hr />\r\n<p>\r\n<a href=\"https://hackerpublicradio.org/eps.php?id=0773\">hpr0773 :: Interview with Gabriel Weinberg of DuckDuckGo</a></p>\r\n',397,74,0,'CC-BY-SA','searx, whoogle, metager, gigablast, private.sh, ecosia, startpage, qwant, brave, duckduckgo',0,0,1),
(3446,'2021-10-18','Speech To Text',1378,'I talk about converting HPR audio to text and tagging','<ul>\r\n<li><p>speech recognition</p></li>\r\n<li><p>machine_learning (ML)</p></li>\r\n<li><p>artificial_intelligence (AI)</p></li>\r\n<li><p>speech_recognition</p></li>\r\n<li><p>Natural Language Processing (NLP)</p></li>\r\n<li><p><a href=\"https://rmccurdy.com/stuff/NLP/\" class=\"uri\">https://rmccurdy.com/stuff/NLP/</a> ( example files )</p></li>\r\n<li><p>Some higher maf here that is above my head for now ...<br />\r\n<a href=\"https://towardsdatascience.com/using-keyword-extraction-for-unsupervised-text-classification-in-nlp-10433a1c0cf9\" class=\"uri\">https://towardsdatascience.com/using-keyword-extraction-for-unsupervised-text-classification-in-nlp-10433a1c0cf9</a></p></li>\r\n<li><p><a href=\"https://www.interviewquery.com/blog-keyword-extraction/\" class=\"uri\">https://www.interviewquery.com/blog-keyword-extraction/</a></p></li>\r\n</ul>\r\n',36,0,0,'CC-BY-SA','AI,ML,scripting,audio',0,0,1),
(3721,'2022-11-07','HPR Community News for October 2022',3248,'HPR Volunteers talk about shows released and comments posted in October 2022','<style>\ntable td.shrink {\n white-space:nowrap\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nWelcome to our new hosts: <br />\n\n <a href=\"https://hackerpublicradio.org/correspondents/0411.html\" target=\"_blank\">Paul J</a>, \n <a href=\"https://hackerpublicradio.org/correspondents/0412.html\" target=\"_blank\">m0dese7en</a>, \n <a href=\"https://hackerpublicradio.org/correspondents/0413.html\" target=\"_blank\">CCHits.net Team</a>.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3696\" target=\"_blank\">3696</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2022-10-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3696\" target=\"_blank\">HPR Community News for September 2022</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3697\" target=\"_blank\">3697</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2022-10-04</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3697\" target=\"_blank\">Mis-information, Dis-information, and Fake News. You are a product and target for all of it.</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0405.html\" target=\"_blank\">Lurking Prion</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3698\" target=\"_blank\">3698</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2022-10-05</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3698\" target=\"_blank\">Spectrogram</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0078.html\" target=\"_blank\">Klaatu</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3699\" target=\"_blank\">3699</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2022-10-06</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3699\" target=\"_blank\">Old and new videogames/board games with guest binrc</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0407.html\" target=\"_blank\">Celeste</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3700\" target=\"_blank\">3700</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2022-10-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3700\" target=\"_blank\">Introduction to Batch Files</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0198.html\" target=\"_blank\">Ahuka</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3701\" target=\"_blank\">3701</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2022-10-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3701\" target=\"_blank\">ReiserFS - the file system of the future</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0411.html\" target=\"_blank\">Paul J</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3702\" target=\"_blank\">3702</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2022-10-11</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3702\" target=\"_blank\">Easter Ogg</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0225.html\" target=\"_blank\">Dave Morriss</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3703\" target=\"_blank\">3703</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2022-10-12</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3703\" target=\"_blank\">McCurdy House Tour</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0036.html\" target=\"_blank\">operat0r</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/ep
(3439,'2021-10-07','Linux Inlaws S01E40: The One with the BSDs',5834,'The other One Operating System to Rule them all','<p>In this episode, Martin and Chris host an eclectic panel of contributors to\r\nthe *other* major FLOSS operating system family - you guessed it: the\r\nflavours of the Berkeley Software Distribution (aka BSD among friends).\r\nDisclaimer: you may be tempted to diverge from the Path of the\r\nRighteousness also known as Linux and give this alternative a spin. So\r\nthis episode is *not* for the faint-hearted - listen at your own\r\ndiscretion! Also: the true defective nature of our beloved (?) hosts\' past\r\nwill be revealed - an episode not be missed despite the caveat! Plus\r\na refresher on spaced-out operating system concepts including library\r\noperating systems and a rant on Android and friends. In addition to some\r\ncool BSD trolling... </p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>OpenBSD: <a href=\"https://www.openbsd.org\" target=_blank>https://www.openbsd.org</a></li>\r\n<li>FeeBSD: <a href=\"https://www.freebsd.org\" target=_blank>https://www.freebsd.org</a></li>\r\n<li>NetBSD: <a href=\"https://www.netbsd.org\" target=_blank>https://www.netbsd.org</a></li>\r\n<li>DragonFlyBSD: <a href=\"https://www.dragonflybsd.org\" target=_blank>https://www.dragonflybsd.org</a></li>\r\n<li>386BSD: <a href=\"https://www.386bsd.org\" target=_blank>https://www.386bsd.org</a></li>\r\n<li>RUMP kernel: <a href=\"https://en.wikipedia.org/wiki/Rump_kernel\" target=_blank>https://en.wikipedia.org/wiki/Rump_kernel</a></li>\r\n<li>Library operating systems: <a href=\"https://www.sigarch.org/leave-your-os-at-home-the-rise-of-library-operating-systems\" target=_blank>https://www.sigarch.org/leave-your-os-at-home-the-rise-of-library-operating-systems</a></li>\r\n<li>Free BSD Linux Compatibility: <a href=\"https://docs.freebsd.org/en/books/handbook/linuxemu\" target=_blank>https://docs.freebsd.org/en/books/handbook/linuxemu</a></li>\r\n<li>BSD Jails (original paper): <a href=\"https://papers.freebsd.org/2000/phk-jails.files/sane2000-jail.pdf\" target=_blank>https://papers.freebsd.org/2000/phk-jails.files/sane2000-jail.pdf</a></li>\r\n<li>FeeBSD Ports: <a href=\"https://www.freebsd.org/ports\" target=_blank>https://www.freebsd.org/ports</a></li>\r\n<li>NetBSD pkgsrc: <a href=\"https://www.netbsd.org/docs/pkgsrc\" target=_blank>https://www.netbsd.org/docs/pkgsrc</a></li>\r\n<li>ZFS: <a href=\"https://en.wikipedia.org/wiki/ZFS\" target=_blank>https://en.wikipedia.org/wiki/ZFS</a></li>\r\n<li>BSD\'s pledge: <a href=\"https://unix.stackexchange.com/questions/410056/what-is-openbsds-pledge-in-short\" target=_blank>https://unix.stackexchange.com/questions/410056/what-is-openbsds-pledge-in-short</a></li>\r\n<li>FreeBSD and Netflix: <a href=\"https://papers.freebsd.org/2019/fosdem/looney-netflix_and_freebsd\" target=_blank>https://papers.freebsd.org/2019/fosdem/looney-netflix_and_freebsd</a></li>\r\n<li>BSD Firewalls: <a href=\"https://docs.freebsd.org/en/books/handbook/firewalls\" target=_blank>https://docs.freebsd.org/en/books/handbook/firewalls</a></li>\r\n<li>Michael W. Lucas\' \"Savaged by Systemd\": <a href=\"hhttps://www.goodreads.com/book/show/36190710-savaged-by-systemd\" target=_blank>hhttps://www.goodreads.com/book/show/36190710-savaged-by-systemd</a></li>\r\n<li>Linux vs. Minix: <a href=\"https://www.oreilly.com/openbook/opensources/book/appa.html\" target=_blank>https://www.oreilly.com/openbook/opensources/book/appa.html</a></li>\r\n<li>Pegasus spyware: <a href=\"https://en.wikipedia.org/wiki/Pegasus_(spyware)\" target=_blank>https://en.wikipedia.org/wiki/Pegasus_(spyware)</a></li>\r\n<li>BSD History presentation: <a href=\"https://www.youtube.com/watch?v=DEEr6dT-4uQ\" target=_blank>https://www.youtube.com/watch?v=DEEr6dT-4uQ</a></li>\r\n<li>The tragedy of systemd: <a href=\"https://www.youtube.com/watch?v=o_AIw9bGogo\" target=_blank>https://www.youtube.com/watch?v=o_AIw9bGogo</a></li>\r\n<li>The Rise and Fall of Copyleft: <a href=\"https://archive.org/download/OhioLinuxfest2013/24-Rob_Landley-The_Rise_and_Fall_
(3442,'2021-10-12','What is this thing called science',790,'Critical thinking is only part of the equation. Here\'s the other part.','<hr />\r\n<h3>Counter Point</h3>\r\n<p>This show is a counter point to: <a href=\"https://hackerpublicradio.org/eps.php?id=3414\">hpr3414 :: Critical Thinking may make You Critical of the Covid Crisis</a>\r\n</p>\r\n<hr />\r\n\r\n<p>Some time ago, I did some Hacker Public Radio episodes in which I ostensibly demonstrated how to create a PDF with Scribus. Secretly, I was actually demonstrating how unexpected payloads could be embedded into a PDF. Did the PDF I uploaded as part of that episode no longer contain a payload if the listener who downloaded it wasn\'t aware that the payload existed?</p>\r\n<p>I\'ve been diagnosed by educators as a \"life long learner,\" which as far as I can tell is a buzzword referring to someone who takes pleasure in learning new things. In our world of technology, dear listener, I think this term is just \"hacker.\" And that\'s appropriate, because this is Hacker Public Radio you\'re listening to now, and listeners of this show tend to be people who enjoy learning and exploring new ideas, taking apart gadgets to see what makes them tick, reverse engineering code and data to understand how it gets processed, and so on.</p>\r\n<p>The thing about being a hacker or a life-long learner is that there\'s a lot of stuff out there that wants to be hacked, or learnt. And it turns out that it\'s just not possible to learn everything. Sometimes, you\'re out of your depth. It can be tricky to recognize when you\'re out of your depth, and I think there\'s a certain learn-able skill to knowing that you don\'t know something. There\'s a lot of value to this skill, because when you can recognize you don\'t have expertise on something, you\'re able to look around you and find someone who has. That\'s significant because you can learn from someone with expertise.</p>\r\n<p>In my own humdrum life, before getting a full-time job at a tech company, I was commissioned on several occasions to build out infrastructure for a video game development project, an indie radio station, a few different multimedia projects, and so on. When I took on those roles, I became the resident expert. People turned to me for the authoritative word on what technological solutions should be used. When I told them, they were more or less obligated to listen, because that was the role I\'d been hired for. If they were to ask me what a workstation should run, and I said Linux, but they bought a Mac instead, then my role would be unarguably redundant. They could just as easily type the question into a search engine on the Internet, and ignore the result. Or they could roll a die, or whatever.</p>\r\n<p>In those cases, though, it\'s a question of my opinion compared to someone else\'s opinion. Both are valid. Because I was the architect, my opinion mattered more to the long-term plan, but if the long-term plan were to change from having a highly-available cluster for fast 3d model rendering to having workstations with a familiar desktop, then my opinion would be less valid.</p>\r\n<p>But there are some areas in life where opinions don\'t matter. Specifically, that area is science. But what is science, anyway? People talk about science a lot, but it took me a long time, especially as someone who largely came from an artistic background, to comprehend the significance of the term, much less how it worked.</p>\r\n<p>Forget about all the high school classes and pop dietitians and physicists. Science is a framework. It\'s a set of principles designed to help our human brains hack the world around us in a methodical and precise way. Instead of letting our opinions, which may or may not be relevant, influence conclusions and decisions we make, science looks at the results of controlled input and output. Wait a minute. \"Input and output\"? Those are words I understand. Those are computer terms!</p>\r\n<p>Yeah it turns out that computers are the product of science, and in fact building computers and programming comput
(3443,'2021-10-13','Neuton battery replacement',593,'Rho`n describes replacing the battery in his Neuton EM 4.1 electric lawn mower','<h1 id=\"audio-notes\">Audio Notes</h1>\r\n<p>During the audio I repeatedly called it the Neutron mower instead of the Neuton mower. I was too lazy edit those mispronunciations.</p>\r\n<h1 id=\"introduction\">Introduction</h1>\r\n<p>After recently reclaiming my Neuton EM 4.1 electric lawn mower from my parents, I needed to replace the battery to make it operational. This mower was purchased in the early 2000s, and replacement batteries for it are no longer available from the manufacturer. Thankfully replacement 12V 10A batteries are available through third parties.</p>\r\n<h1 id=\"replacing-parts\">Replacing Parts</h1>\r\n<p>I faced two issues with finding replacement parts. The Neuton mowers run at 24V and need batteries that can provide 10 amps of current. They come with a battery case that holds two 12V 10A batteries connected in series. The case holds the batteries and provides a connector and circuitry for a 24V DC charger. When I received the mower back from my parents, it didn\'t have a battery case with it. While the <a href=\"https://www.neutonpower.com/\">Neuton website</a> is still online, and looks like you can order some accessories still, they no longer carry replacement battery cases or batteries. I was able to find just the case on EBay. I then found replacement batteries on Amazon.</p>\r\n<p>Installing the batteries in the case is simple. One side of the case has a lid. The lid is held in place by plastic notches on the bottom and two screws at the top. The screws have size 10 star heads. The batteries sit side by side in the case, with their terminals facing the lid. I connected the inner terminals (negative of one battery to positive of the other) with the jumper wire that came with the case. I then connected the outer terminals to the battery case terminal wires, slid the batteries all the way into case, closed, and fastened the lid.</p>\r\n<h1 id=\"conclusion\">Conclusion</h1>\r\n<p>The batteries are currently charging. The red charging light did come on when I plugged in the 24V DC charger, and nothing has exploded yet, so I am optimistic I will be able to use the mower again shortly.</p>\r\n<h1 id=\"references\">References</h1>\r\n<ul>\r\n<li>Neuton CE5.4 24 volt rechargeable battery CASE ONLY - <a href=\"https://www.ebay.com/itm/114952181341\">EBay item</a></li>\r\n<li>Mighty Max Battery 12V 10AH Replaces HE12V127 HGL1012 LCRB1210P NEUTON CE5 POWPS12100 Battery - 2 Pack Brand Product - <a href=\"https://www.amazon.com/gp/product/B00K9713L4/ref=ppx_od_dt_b_asin_title_s00?ie=UTF8&amp;psc=1\">Amazon item</a></li>\r\n</ul>\r\n<h1 id=\"attribution\">Attribution</h1>\r\n<p>The transition sound used between audio clips is found on <a href=\"https://freesound.org/\">freesound.org</a>:<br />\r\nName: <a href=\"https://freesound.org/people/DanJFilms/sounds/529064/\">Harp Transition Music Cue</a><br />\r\nAuthor: <a href=\"https://freesound.org/people/DanJFilms/\">DanJFilms</a><br />\r\nLicense: <a href=\"https://creativecommons.org/publicdomain/zero/1.0/\">Creative Commons Zero</a></p>\r\n',293,0,0,'CC-BY-SA','electric lawnmower,lawnmower,rechargeable battery',0,0,1),
(3445,'2021-10-15','True critical thinking seems to be the key',4328,'A response to HPR 3414','<hr>\r\n<h3>Counter Point</h3>\r\n<p>This show is a counter point to: <a href=\"https://hackerpublicradio.org/eps.php?id=3414\">hpr3414 :: Critical Thinking may make You Critical of the Covid Crisis</a>\r\n</p>\r\n<hr />\r\n<h2 id=\"a-response-to-critical-thinking-may-make-you-critical-of-the-covid-crisis\">A response to <em>Critical Thinking may make You Critical of the Covid Crisis</em></h2>\r\n<p><strong>(HPR episode 3414, produced by CoGo and released on 2021-09-02)</strong></p>\r\n<h2 id=\"defining-terms\">Defining terms</h2>\r\n<ul>\r\n<li>What is <em>Critical Thinking</em>?\r\n<ul>\r\n<li>The Wikipedia definition begins: \"<em>Critical thinking is the analysis of facts to form a judgment.</em>\"</li>\r\n<li>It goes on to say: \"<em>The subject is complex, and several different definitions exist, which generally include the rational, skeptical, unbiased analysis, or evaluation of factual evidence.</em>\"</li>\r\n<li>See the references below.</li>\r\n</ul></li>\r\n</ul>\r\n<blockquote>\r\n<p>Note the use of the terms <strong>fact</strong>, <strong>factual evidence</strong> and <strong>unbiased analysis</strong>. It is my contention that HPR episode 3414 fails in these regards in several places.</p>\r\n</blockquote>\r\n<ul>\r\n<li>What is an \"<em>experiment</em>\"?\r\n<ul>\r\n<li>Wikipedias definition begins: \"<em>An experiment is a procedure carried out to support or refute a hypothesis. Experiments provide insight into cause-and-effect by demonstrating what outcome occurs when a particular factor is manipulated.</em>\"</li>\r\n</ul></li>\r\n</ul>\r\n<blockquote>\r\n<p>The term <strong>experiment</strong> is often used incorrectly in episode 3414. A better term would be <strong>observation</strong> or <strong>anecdote</strong></p>\r\n</blockquote>\r\n<ul>\r\n<li>The virus:\r\n<ul>\r\n<li>The virus is a <em>coronavirus</em>. There are many viruses classified in this way.</li>\r\n<li>The name of the virus is <em>SARS-CoV-2</em>. The <em>SARS</em> part stands for <em>Severe Acute Respiratory Syndrome</em>, the type of disease caused by the virus. <em>CoV</em> signifies that it is a <em>coronavirus</em> and the <em>2</em> means its the second SARS-type corona virus to have caused problems in the recent past. The other one, just called <em>SARS</em> occurred in 2003.</li>\r\n<li>The name of the disease caused by SARS-CoV-2 is <em>COVID-19</em>. The letters <em>COVID</em> define it as a coronavirus disease. The <em>19</em> part is because it was first discovered in 2019.</li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li><strong>References</strong>:\r\n<ul>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Critical_thinking\" title=\"Wikipedia article: Critical thinking\">Wikipedia article on Critical Thinking</a></li>\r\n<li><a href=\"https://www.gre.ac.uk/articles/ils/critical-thinking\" title=\"University of Greenwich article. What is critical thinking?\">University of Greenwich: What is critical thinking?</a></li>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Experiment\" title=\"Wikipedia article: Experiment\">Wikipedia article on Experiments</a></li>\r\n</ul></li>\r\n</ul>\r\n<h2 id=\"long-notes\">Long notes</h2>\r\n<p>Follow this link to <a href=\"https://hackerpublicradio.org/eps/hpr3445/full_shownotes.html\">read the detailed notes</a> associated with this episode.</p>\r\n<h2 id=\"collected-references\">Collected references:</h2>\r\n<ol type=\"1\">\r\n<li>Wikipedia article: Critical thinking:\r\n<ul>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Critical_thinking\">https://en.wikipedia.org/wiki/Critical_thinking</a></li>\r\n</ul></li>\r\n<li>University of Greenwich article. What is critical thinking?:\r\n<ul>\r\n<li><a href=\"https://www.gre.ac.uk/articles/ils/critical-thinking\">https://www.gre.ac.uk/articles/ils/critical-thinking</a></li>\r\n</ul></li>\r\n<li>Wikipedia article: Experiment:\r\n<ul>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Experiment\">https://en.wikipedia.org/wiki/Experiment</a></li>\r\n</ul></li
(3444,'2021-10-14','The Psion series 5mx',1178,'A show where I talk about my experiences of the Psion 5mx, a portable computer from the late 90s','<p>The psion series 5mx is a portable computer from the late 90s, here\'s my episode talking about it.</p>\r\n<ul>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Psion_Series_5\" class=\"uri\">https://en.wikipedia.org/wiki/Psion_Series_5</a></li>\r\n<li>PLPTools (syncing with modern linux): <a href=\"https://github.com/rrthomas/plptools\" class=\"uri\">https://github.com/rrthomas/plptools</a></li>\r\n<li>Nconvert (file converter): <a href=\"https://web.archive.org/web/20161130192611/https://neuon.com/downloads/nconvert/\" class=\"uri\">https://web.archive.org/web/20161130192611/https://neuon.com/downloads/nconvert/</a></li>\r\n<li>Programming book: <a href=\"https://archive.org/details/book_20210531\" class=\"uri\">https://archive.org/details/book_20210531</a></li>\r\n<li>psion linux SDK: <a href=\"https://github.com/static-void/psion_cpp_sdk_linux.git\" class=\"uri\">https://github.com/static-void/psion_cpp_sdk_linux.git</a></li>\r\n<li>Eric Lindsey\'s site, with lots of psion software: <a href=\"https://ericlindsay.com/epoc/index.htm\" class=\"uri\">https://ericlindsay.com/epoc/index.htm</a></li>\r\n</ul>\r\n<p>Apologies for talking quickly!</p>',381,0,0,'CC-BY-SA','retro, psion, programming, pdas',0,0,1),
(3452,'2021-10-26','Neuton battery test',324,'Rho`n describes testing the battery in his Neuton EM 4.1 electric lawn mower','<h2 id=\"introduction\">Introduction</h2>\r\n<p>On today\'s show I test whether the battery replacement for my Neuton mower is a success. This is a follow up to <a href=\"https://hackerpublicradio.org/eps.php?id=3443\">episode 3443</a>. After some audio recording difficulties with the blue tooth headset I used with my phone, we hear if the replacement was successful. Before I could test the battery, I needed to replace the mower key. I think it would have been simple to just jump the terminals with a wire and maybe some alligator clips to hold the wire to the key terminals, but I was worried this would not guarantee the wire shaking loose as I moved. I looked on EBay and found a replacement key for about fifteen dollars US, and decided it was worth the cost and the wait before trying out the mower.</p>\r\n<h2 id=\"testing-the-mower\">Testing the mower</h2>\r\n<p>After putting the key in the mower, pulling and holding the safety levers, and then pressing the start button. The mower wouldn\'t start. I checked the key was set properly, and saw the green LED on the handle lit and indicating that power was available. I pulled the key and battery out, and then reseated both of them, checking once again that the power indicator was lit. After some fooling around with the safety levers and start button, I realized you had to push the start button and then pull and hold the safety levers for the mower to start. The mower runs well, and the cost of the batteries and key will even out over time from the savings on not paying for a lawn service.</p>\r\n<h2 id=\"references\">References</h2>\r\n<ul>\r\n<li>DR Neuton Cordless Walk Behind 14\" Lawn Mower CE2 CE3 CE5 Reset Security Key - <a href=\"https://www.ebay.com/itm/184176055409?ViewItem=&amp;item=184176055409\">EBay item</a></li>\r\n</ul>\r\n<h2 id=\"attribution\">Attribution</h2>\r\n<p>The transition sound used between audio clips is found on <a href=\"https://freesound.org/\">freesound.org</a>:<br />\r\nName: <a href=\"https://freesound.org/people/DanJFilms/sounds/529064/\">Harp Transition Music Cue</a><br />\r\nAuthor: <a href=\"https://freesound.org/people/DanJFilms/\">DanJFilms</a><br />\r\nLicense: <a href=\"https://creativecommons.org/publicdomain/zero/1.0/\">Creative Commons Zero</a></p>',293,0,0,'CC-BY-SA','electric lawnmower,lawnmower,rechargeable battery',0,0,1),
(3447,'2021-10-19','BlacKernel\'s Journey Into Technology: Episode 2',1249,'In which BlacKernel struggles to talk about Windows','<h2>Talking Points</h2>\r\n<ul>\r\n <li>W*ndows Power User\r\n <ul>\r\n <li>Programmed a few Visual BASIC programs, but was underwhelmed with how BASIC the programming language was</li>\r\n <li>Tried installing Python and Ruby to much frustration</li>\r\n <li>Tried installing Cygw*n to make Python/Ruby easier to work with</li>\r\n <li>Read on the Cygw*n site about something called <b><a href=\"#show-notes\">Linux</a></b></li>\r\n <li>Started working with C and C++</li>\r\n </ul></li>\r\n <li>Customizing my deck\r\n <ul>\r\n <li>Tried to customize as much as I could about my W*ndows install</li>\r\n <li>Utilized tools to change the boot logo, the start menu, the init scripts, etc.</li>\r\n <li>Hit a few snags with problems boot-looping, not loading graphically, etc</li>\r\n <li>Tried editing the W*ndows registry and realized that the programs I was using to edit the operating system necessarily break the security and stability of the OS</li>\r\n <li>Didn\'t really know/care about open source, but was getting frustrated that I wasn\'t able to just reach in to my system\'s code to fix it.</li>\r\n </ul></li>\r\n</ul>\r\n\r\n<hr>\r\n\r\n<h2 id=\"show-notes\">Show Notes</h2>\r\n<h4>Important Links:</h4>\r\n<ul>\r\n <li>I couldn\'t really find any of the stuff that I used and, at this point, I\'m not super motivated to find them.</li>\r\n</ul>\r\n\r\n<h4>Wikipedia Articles:</h4>\r\n<ul>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Thomas_Hobbes\">https://en.wikipedia.org/wiki/Thomas_Hobbes</a></li>\r\n</ul>\r\n\r\n\r\n<hr>\r\n\r\n<i>Contact Me</i>\r\n<ul>\r\n<li><b>Email: </b><a href=\"mailto:izzyleibowitz@pm.me\">izzyleibowitz at pm dot me</a></li>\r\n<li><b>Mastodon: </b><a href=\"https://nixnet.social/BlacKernel\">at blackernel at nixnet dot social</a></li>\r\n</ul>\r\n\r\n',396,0,1,'CC-BY-SA','technology, windows, w*ndows, losedows, introductions, linux, dos',0,0,1),
(3449,'2021-10-21','Linux Inlaws S01E41: The Halloween Documents',3956,'The Halloween Documents','<p>In this infomercial on Microsoft, our hosts discuss the infamous Halloween\r\ndocuments (\'tis the season after all), a set of ancient scrolls dating back\r\nmore than twenty years and giving an overview of the behemoth\'s then strategy\r\non open source and how to possibly combat it. But fear not, ye of little faith\r\n:-), all is well now as the episode shows also the long way Microsoft has come\r\nsince then and its adoption (and giving back!) as an enterprise technology.</p>\r\n\r\n<p>Plus: How to increase your market cap by using FLOSS. And last but not least:\r\nThe Dark Side is back by popular demand! With a special episode on the usual\r\nHalloween stuff including vampires, Transylvania, politicians, QAnon, Zoom,\r\nTeams and other horror topics (Ever wondered what happened to Angela Merkel\r\nafter she stepped down as Germany\'s chancelorette in 2021? Then don\'t miss out\r\non this episode!).</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>Little Britain: <a href=\"https://www.bbc.co.uk/programmes/b006q2zd\" target=_blank>https://www.bbc.co.uk/programmes/b006q2zd</a></li>\r\n<li>SCO Group: <a href=\"https://en.wikipedia.org/wiki/SCO_Group\" target=_blank>https://en.wikipedia.org/wiki/SCO_Group</a></li>\r\n<li>SCO vs. IBM: <a href=\"https://en.wikipedia.org/wiki/SCO_Group,_Inc._v._International_Business_Machines_Corp.\" target=_blank>https://en.wikipedia.org/wiki/SCO_Group,_Inc._v._International_Business_Machines_Corp.</a></li>\r\n<li>Halloween documents: <a href=\"https://en.wikipedia.org/wiki/Halloween_documents\" target=_blank>https://en.wikipedia.org/wiki/Halloween_documents</a></li>\r\n<li>Microsoft and open source: <a href=\"https://en.wikipedia.org/wiki/Microsoft_and_open_source\" target=_blank>https://en.wikipedia.org/wiki/Microsoft_and_open_source</a></li>\r\n<li>Monsters of Man: <a href=\"https://www.imdb.com/title/tt6456326\" target=_blank>https://www.imdb.com/title/tt6456326</a></li>\r\n<li>Breeders: <a href=\"https://en.wikipedia.org/wiki/Breeders_(TV_series)\" target=_blank>https://en.wikipedia.org/wiki/Breeders_(TV_series)</a></li>\r\n<li>Permanent penis for the Welsh Dragon: <a href=\"https://www.dailymail.co.uk/news/article-9932657/Hilarious-campaigners-demand-famous-red-dragon-given-permanent-penis-Welsh-flags.html\" target=_blank>https://www.dailymail.co.uk/news/article-9932657/Hilarious-campaigners-demand-famous-red-dragon-given-permanent-penis-Welsh-flags.html</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','Microsoft, Google, The Dark Side, Halloween, Transylvania, Carmesine-colored Soy Milk, vegan vampire',0,0,1),
(3471,'2021-11-22','The Sony Walkman WM-F41',531,'A quick talk about one of my favorite Legacy Audio devices, a genuine Sony FM/AM cassette Walkman.','<p>This episode is just a quick talk about one of my favorite legacy audio devices, my Sony FM/AM cassette Walkman, model WM-F41.</p>\r\n\r\n\r\n<h2>Links</h2>\r\n\r\n<ul>\r\n<li><a href=\"https://retrospekt.com/products/sony-walkman-wm-f31-f41\">Sony Walkman WM-F41</a></li>\r\n<li><a href=\"https://www.behringer.com/product.html?modelCode=P0576\">Behringer Xenyx 502 Mixer</a></li>\r\n<li>Music is from Kimiko Ishizaka\'s <em>The Open Art of Fugue</em>: <a href=\"https://music.kimiko-piano.com/album/j-s-bach-the-art-of-the-fugue-kunst-der-fuge-bwv-1080\">https://music.kimiko-piano.com/album/j-s-bach-the-art-of-the-fugue-kunst-der-fuge-bwv-1080</a>, used by permission of its <a href=\"https://creativecommons.org/publicdomain/zero/1.0/\">CC0 1.0 Universal (CC0 1.0) Public Domain Dedication license</a>.</li>\r\n</ul>\r\n\r\n',238,0,0,'CC-BY-SA','audio, vintage audio, cassette tapes, tape players, portable stereos, audio repair',0,0,1),
(3468,'2021-11-17','Distro upgrade intervals on my Raspberry Pi',786,'In this episode I discuss Debian distro upgrade intervals for my raspberry Pi','<h2 id=\"a-discussion-about-debian-lts-distro-upgrade-intervals-on-my-raspberry-pi\">A discussion about Debian LTS distro upgrade intervals on my Raspberry Pi</h2>\r\n<h3 id=\"relevant-links-below\">Relevant links below</h3>\r\n<p><a href=\"https://wiki.debian.org/DebianReleases\">Debian release information</a></p>\r\n<p><a href=\"https://hackerpublicradio.org/eps.php?id=3266\">My previous episode from last year where I covered the upgrade on my raspberry Pi from Debian Jessie 8 to Stretch 9</a></p>\r\n<p><a href=\"https://hackerpublicradio.org/eps.php?id=2901\">A previous episode where I describe my raspberry Pi add-on board and what I use it for</a></p>\r\n',201,0,1,'CC-BY-SA','Linux, Distros, Raspberry Pi, Debian',0,0,1),
(3741,'2022-12-05','HPR Community News for November 2022',3276,'HPR Volunteers talk about shows released and comments posted in November 2022','<style>\ntable td.shrink {\n white-space:nowrap\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nWelcome to our new host: <br />\n\n <a href=\"https://hackerpublicradio.org/correspondents/0414.html\" target=\"_blank\">Kinghezy</a>.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3717\" target=\"_blank\">3717</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2022-11-01</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3717\" target=\"_blank\">Video editing with Shotcut on a low end PC</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0201.html\" target=\"_blank\">MrX</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3718\" target=\"_blank\">3718</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2022-11-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3718\" target=\"_blank\">Making Ansible playbooks to configure Single Sign On for popular open source applications</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0369.html\" target=\"_blank\">Jeroen Baten</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3719\" target=\"_blank\">3719</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2022-11-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3719\" target=\"_blank\">HPR News</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0391.html\" target=\"_blank\">Some Guy On The Internet</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3720\" target=\"_blank\">3720</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2022-11-04</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3720\" target=\"_blank\">Practicing Batch Files With ECHO</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0198.html\" target=\"_blank\">Ahuka</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3721\" target=\"_blank\">3721</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2022-11-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3721\" target=\"_blank\">HPR Community News for October 2022</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3722\" target=\"_blank\">3722</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2022-11-08</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3722\" target=\"_blank\">Bash snippet - plurals in messages</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0225.html\" target=\"_blank\">Dave Morriss</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3723\" target=\"_blank\">3723</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2022-11-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3723\" target=\"_blank\">HPR News</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0391.html\" target=\"_blank\">Some Guy On The Internet</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3724\" target=\"_blank\">3724</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2022-11-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3724\" target=\"_blank\">My top Android apps</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0318.html\" target=\"_blank\">Archer72</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3725\" target=\"_blank\">3725</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2022-11-11</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3725\" target=\"_blank\">How to use OS
(3464,'2021-11-11','Being irrational',777,'Being irrational is rational.','<p>When listening to <a href=\"https://hackerpublicradio.org/eps.php?id=3442\">HPR 3442</a> by Klaatu, which I recommend, some thoughts about how we think started rattling about in my head. In this show I riff on that and talk about the importance of our irrational mode of thought.</p>\r\n',268,0,0,'CC-BY-SA','philosophy,mathematics,science,chess,logic,music',0,0,1),
(3465,'2021-11-12','Walmart Onn 7 inch tablet gen 2',863,'Podcast about a new Android go Tablet I purchased ','<p>Just a basic podcast about a tablet.</p>\r\n<p><a href=\"https://www.walmart.com/ip/onn-7-Tablet/930669857\">https://www.walmart.com/ip/onn-7-Tablet/930669857</a></p>\r\n',129,0,0,'CC-BY-SA','Walmart, Android Go, Tablet',0,0,1),
(3466,'2021-11-15','Why HPR has less downloads',551,'A short summary on why podcast listening might be on decline.','<p>I did a show about why I do not listen to non-mainstream podcasts as much as I used to. For me two things happened: I switched from being in the car for 16 hours a week to being a remote sales person at home. So the 16 hours I listened to podcasts every week in the car went away. The second reason I reduced was that many of the podcasts I was listening to were presented by people who do not share my values. So I stopped listening to them. The third reason I listen less is the Army opened up the online book library to retired service members and I do a lot of audio books in the moment.</p>\r\n',129,0,0,'CC-BY-SA','podcasts, dowloads',0,0,1),
(3469,'2021-11-18','Linux Inlaws S01E43: The Great Battle or not',4138,'The Great Battle nor Not','<p>In this episode Martin and one of the Grumpies (as in Grumpy Old Coders)\r\nbattle it out: SQL or NoSQL - which technology is better? If you ever wondered\r\nwhy the Structured Query Language was invented in the first place and why the\r\nhipster abandoned ship for the latest (?) rage of the likes of the NoSQL\r\nvariety, this is for you. Plus: A whole family of never-heard-of sound effects\r\nmake their debut on this bumper of an episode.</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>SQL: <a href=\"https://www.iso.org/standard/63555.html\" target=_blank>https://www.iso.org/standard/63555.html</a></li>\r\n<li>NoSQL: <a href=\"https://en.wikipedia.org/wiki/NoSQL\" target=_blank>https://en.wikipedia.org/wiki/NoSQL</a></li>\r\n<li>NoSQL Geek: <a href=\"https://www.nosqlgeek.org\" target=_blank>https://www.nosqlgeek.org</a></li>\r\n<li>ACID compliance: <a href=\"https://en.wikipedia.org/wiki/ACID\" target=_blank>https://en.wikipedia.org/wiki/ACID</a></li>\r\n<li>redis: <a href=\"https://github.com/redis/redis\" target=_blank>https://github.com/redis/redis</a></li>\r\n<li>CAP theorem: <a href=\"https://en.wikipedia.org/wiki/CAP_theorem\" target=_blank>https://en.wikipedia.org/wiki/CAP_theorem</a></li>\r\n<li>TorroDB: <a href=\"https://github.com/gordol/torrodb-server\" target=_blank>https://github.com/gordol/torrodb-server</a></li>\r\n<li>Grumpy Old Coders episode on the Dark Side: <a href=\"https://soundcloud.com/user-498377588/grumpy-old-coders-ep-11-the-dark-side\" target=_blank>https://soundcloud.com/user-498377588/grumpy-old-coders-ep-11-the-dark-side</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','SQL, NoSQL, Grumpy Old Coders, Hipster databases, mainframes, Execution planners',0,0,1),
(3448,'2021-10-20','Installing GuixSD',2679,'Rho`n records installing GuixSD to an external USB drive to be run on a Mac Mini computer','<h2>Synopsis</h2>\r\n\r\n<p>In this episode Rho`n records his adventure in installing GuixSD on an external USB drive which will be run on a Mac Mini computer. After overcoming the initial difficulty of finding a keyboard that would connect wirelessly to the Mac Mini while using the Guix installer and some network difficulties, he describes the installation steps.</p>\r\n\r\n<p>Guix has a graphical text based installer. It is reminiscent of the mid to late 90s Debian installers. Even with its old school feel, the installer is very nice. It is well laid out, has good onscreen description for each step of the installation process, and provides ample configuration selections from language, to to key board layout, to desktop and software selection.</p>\r\n\r\n<h2>References</h2>\r\n\r\n<ul>\r\n <li><a href=\"https://guix.gnu.org/\">Guix website</a></li>\r\n <li><a href=\"https://guix.gnu.org/en/manual/en/html_node/System-Installation.html#System-Installation\">Instructions for installing Guix</a> as the main OS</li>\r\n <li><a href=\"https://www.riitek.com/product/k12x.html\">Rii 2.4G Mini Wireless Keyboard with Touchpad Mouse</a>,Lightweight Portable Wireless Keyboard Controller with USB Receiver Remote Control for Windows/ Mac/ Android/ PC/Tablets/ TV/Xbox/ PS3. X1-Black - <a href=\"https://www.amazon.com/gp/product/B00I5SW8MC/ref=ppx_yo_dt_b_asin_title_o04_s00?ie=UTF8&th=1\">EBay item</a></li>\r\n</ul>\r\n\r\n<h2>Attribution</h2>\r\n\r\n<p>The transition sound used between audio clips is found on <a href=\"https://freesound.org/\">freesound.org</a>:<br>\r\nName: <a href=\"https://freesound.org/people/DanJFilms/sounds/529064/\">Harp Transition Music Cue</a><br>\r\nAuthor: <a href=\"https://freesound.org/people/DanJFilms/\">DanJFilms</a><br>\r\nLicense: <a href=\"https://creativecommons.org/publicdomain/zero/1.0/\">Creative Commons Zero</a></p>\r\n',293,0,0,'CC-BY-SA','Guix,GuixSD,installer,install,USB drive,Mac Mini,grub rescue',0,0,1),
(3461,'2021-11-08','Changes to HPR Branding',2441,'Rho\'n, Dave and Ken read the entire email thread related to changing the HPR theme','<p>\r\nWe didn\'t have time to tackle the discussion in last months community news so today we dedicate an entire show to reading out all the comments relating to the HPR Branding.\r\n<br />\r\nSee <a href=\"https://hackerpublicradio.org/pipermail/hpr_hackerpublicradio.org/2021-October/thread.html\">https://hackerpublicradio.org/pipermail/hpr_hackerpublicradio.org/2021-October/thread.html</a>\r\n</p>\r\n<p>\r\nYour comments are appreciated !\r\n</p>',159,47,0,'CC-BY-SA','HPR, Branding, Intro, Outro',0,0,1),
(3453,'2021-10-27','Rust 101: Episode 1 - Hello, World!',1348,'In which BlacKernel introduces the cargo tool and goes into detail on the rust hello world program','<h2>Talking Points</h2>\r\n<ul>\r\n <li>main.rs\r\n <ul>\r\n <li>Like main.cpp in C++ or main.c in C</li>\r\n <li>Tells the compiler which file to start with</li>\r\n <li>Can link to other \"<i>crates</i>\" and \"<i>modules</i>\"</li>\r\n </ul></li>\r\n <li>Cargo.toml\r\n <ul>\r\n <li>Keeps track of application metadata</li>\r\n <li>This includes dependencies!</li>\r\n </ul></li>\r\n <li>Functions\r\n <ul>\r\n <li>Strictly typed, like everything in Rust</li>\r\n <li>Declared by <code>fn</code></li>\r\n <li>Argument typed with <code>argument: Type</code></li>\r\n <li>Return typed with <code>-&gt; Type</code> otherwise assumed to return nothing</li>\r\n </ul></li>\r\n <li>The Main Function\r\n <ul>\r\n <li>Like the main functions in C and C++</li>\r\n <li>Where the program starts within the main.rs file</li>\r\n <li>CLI arguments handled by <code>std::env</code>, rather than <code>argv</code> and <code>argc</code> in C</li>\r\n <li>Can return nothing or a <code>Result&lt;()&gt;</code></li>\r\n </ul></li>\r\n <li>Macros\r\n <ul>\r\n <li><i>Metafunctions</i> or functions for functions</li>\r\n <li>More general than functions, having flexibility in the number of arguments, etc, but harder to write</li>\r\n </ul></li>\r\n <li>The println! Macro\r\n <ul>\r\n <li>Can take any number of arguments that implement the <code>display</code> trait</li>\r\n <li>Usually things like strings or character literals</li>\r\n <li>Will format them into a string and display it on the terminal</li>\r\n <li>Similar to printf in C</li>\r\n </ul></li>\r\n <li>The Hello World program\r\n <ul>\r\n <li>Can be automagically generated with <code>cargo new</code> and then the name of your application</li>\r\n <li>Located in <code>Name-Of-Application/src/main.rs</code></li>\r\n </ul></li>\r\n\r\n</ul>\r\n\r\n<br>\r\n\r\n<pre>\r\nfn main() {\r\n&emsp;&emsp;println!(\"Hello, world!\");\r\n}\r\n</pre>\r\n\r\n<br>\r\n\r\n\r\n<hr>\r\n\r\n<h2 id=\"show-notes\">Show Notes</h2>\r\n<h4>Important Links:</h4>\r\n<ul>\r\n <li><a href=\"https://gitlab.com/BlacKernel/rust-101\">Git repo for this miniseries</a></li>\r\n <li><a href=\"https://doc.rust-lang.org/std/\">The Rust Standard Library</a></li>\r\n <li><a href=\"https://doc.rust-lang.org/std/macro.format.html\">The format! macro</a></li>\r\n <li><a href=\"https://doc.rust-lang.org/std/macro.println.html\">The println! macro</a></li>\r\n</ul>\r\n\r\n<h4>Wikipedia Articles:</h4>\r\n<ul>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Rust_(programming_language)\">The Rust Programming Language</a></li>\r\n</ul>\r\n\r\n<hr>\r\n\r\n<i>Contact Me</i>\r\n<ul>\r\n<li><b>Email: </b><a href=\"mailto:izzyleibowitz@pm.me\">izzyleibowitz at pm dot me</a></li>\r\n<li><b>Mastodon: </b><a href=\"https://nixnet.social/BlacKernel\">at blackernel at nixnet dot social</a></li>\r\n</ul>\r\n\r\n',396,25,1,'CC-BY-SA','rust, programming, hello world, macros, functions',0,0,1),
(3455,'2021-10-29','Podcast Recommendation: IBM and Quantum computing',193,'Highlights of a podcast from Moore\'s Lobby','<h2 id=\"moores-lobby\">Moore\'s Lobby</h2>\r\n<h3 id=\"ep.-34-the-latest-from-the-lab-how-ibm-research-is-inventing-whats-next\">Ep. 34 | The Latest from the Lab: How IBM Research Is Inventing What\'s Next</h3>\r\n<p><a href=\"https://www.allaboutcircuits.com/podcast/ep-34-the-latest-from-the-lab-how-ibm-research-is-inventing-whats-next\" class=\"uri\">https://www.allaboutcircuits.com/podcast/ep-34-the-latest-from-the-lab-how-ibm-research-is-inventing-whats-next</a></p>\r\n<ol type=\"1\">\r\n<li>Rss feed: <a href=\"https://eetech.libsyn.com/rss\" class=\"uri\">https://eetech.libsyn.com/rss</a></li>\r\n<li>Interview with Dr. Jeffrey Welser\r\n<ul>\r\n<li>VP of Exploratory Science at IBM Research</li>\r\n<li>IBM Release first 2nm chip this year</li>\r\n</ul></li>\r\n<li>Engineers vs Scientists and how they drive innovations</li>\r\n<li>Goal to replace the transistor when Moore\'s Law stops scaling</li>\r\n<li>Managing thermal loads</li>\r\n<li>Finding new structures and materials to control current</li>\r\n<li>Neural nets, image recognition and AI</li>\r\n<li>Quantum computing\r\n<ul>\r\n<li>Discussion starts at 34:35 into the podcast</li>\r\n<li>Richard Feynman, Early 80\'s\r\n<ul>\r\n<li><a href=\"https://www.feynman.com\" class=\"uri\">https://www.feynman.com</a></li>\r\n</ul></li>\r\n<li>qubits\r\n<ul>\r\n<li>superposition state</li>\r\n<li>\"Spooky action at a distance\"</li>\r\n</ul></li>\r\n<li>Encryption\r\n<ul>\r\n<li>Need millions of qubits to break current encryption\r\n<ul>\r\n<li>Only currently over 100 qubits</li>\r\n<li>At least a decade from having enough qubits</li>\r\n<li>Currently have classical systems that cannot be broken by quantum computers\r\n<ul>\r\n<li>The math does not map onto a quantum system</li>\r\n<li>Currently working with NIST to create quantum safe cryptography\r\n<ul>\r\n<li><a href=\"https://csrc.nist.gov/Projects/Cryptographic-Standards-and-Guidelines\" class=\"uri\">https://csrc.nist.gov/Projects/Cryptographic-Standards-and-Guidelines</a></li>\r\n</ul></li>\r\n</ul></li>\r\n</ul></li>\r\n</ul></li>\r\n<li>Quantum chemistry</li>\r\n<li>Quantum chip - cooling and superconducting\r\n<ul>\r\n<li>Dilution refrigerator\r\n<ul>\r\n<li>Low temperature and pressure</li>\r\n<li>Top is 4 Kelvin, bottom gets to 15 milli Kelvin</li>\r\n<li><a href=\"https://phys.org/news/2019-06-superconducting-quantum-refrigerator.html\" class=\"uri\">https://phys.org/news/2019-06-superconducting-quantum-refrigerator.html</a></li>\r\n<li><a href=\"https://www.nist.gov/si-redefinition/kelvin-introduction\" class=\"uri\">https://www.nist.gov/si-redefinition/kelvin-introduction</a></li>\r\n</ul></li>\r\n</ul></li>\r\n<li>Josephson junction\r\n<ul>\r\n<li>It is the reference Volt as defined by NIST</li>\r\n<li><a href=\"https://www.sciencedirect.com/topics/physics-and-astronomy/josephson-junctions\" class=\"uri\">https://www.sciencedirect.com/topics/physics-and-astronomy/josephson-junctions</a></li>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Josephson_voltage_standard\" class=\"uri\">https://en.wikipedia.org/wiki/Josephson_voltage_standard</a></li>\r\n</ul></li>\r\n<li>Use an IBM quantum computer online\r\n<ul>\r\n<li>May 2016 the first quantum computer was put on the \'Net\r\n<ul>\r\n<li><a href=\"https://quantum-computing.ibm.com\" class=\"uri\">https://quantum-computing.ibm.com</a></li>\r\n<li><a href=\"https://newsroom.ibm.com/2016-05-03-IBM-Makes-Quantum-Computing-Available-on-IBM-Cloud-to-Accelerate-Innovation\" class=\"uri\">https://newsroom.ibm.com/2016-05-03-IBM-Makes-Quantum-Computing-Available-on-IBM-Cloud-to-Accelerate-Innovation</a></li>\r\n<li>300,000 users</li>\r\n<li><a href=\"https://qiskit.org/documentation\" class=\"uri\">https://qiskit.org/documentation</a>\r\n<ul>\r\n<li>Qiskit is open-source software for working with quantum computers at the level of circuits, pulses, and algorithms.</li>\r\n</ul></li>\r\n</ul></li>\r\n</ul></li>\r\n</ul></li>\r\n</ol>\r\n',318,0,0,'CC
(3463,'2021-11-10','Clonezilla: A backup story',2046,'Rho`n walks through the process of backing up his laptop with Clonezilla','<h2>Notes on the audio quality</h2>\r\n<p>I have been looking into the audio quality issues of my shows. I think I have found a solution to them. Unfortunately, this show was recorded before I discovered it.</p>\r\n<h2>Synopsis</h2>\r\n<p>In today\'s episode, I take the audience along my adventure in backing up my laptop\'s hard drives. During recent OS updates, the kernel updates started to fall. In my efforts to resolve the problem, I made things worse &ndash; to the point I decided it was time to reinstall the operating system. To prevent any data loss, I chose Clonezilla to image the drives.</p>\r\n\r\n<p>The Clonezilla Live edition lets you boot into a ncurses menu driven system that walks you through the process of either backing up your hard drives or restoring a Clonezilla backup. Clonezilla backups save space by imaging only the data on your drives (for those filesystems it recognizes &ndash; otherwise it uses <a href=\"#dd\">dd</a> to do a sector-by-sector copy)</p>\r\n\r\n<p>Overall the process was very smooth, and, at the end, I was confident to move forward with wiping my main hard drive and reinstalling the operating system knowing I had a way to restore any lost data.</p>\r\n\r\n<h2>References</h2>\r\n\r\n<ul>\r\n <li><a href=\"https://clonezilla.org/\">Clonzilla website</a></li>\r\n <li><a href=\"https://unetbootin.org/\">UNETBOOTIN website</a></li>\r\n <li><a id=\"dd\" href=\"https://en.wikipedia.org/wiki/Dd_(Unix)\">dd</a>, command line utility for *nix like operating systems</li>\r\n</ul>\r\n\r\n<h2>Attribution</h2>\r\n\r\n<p>The transition sound used between audio clips is found on <a href=\"https://freesound.org/\">freesound.org</a>:<br>\r\nName: <a href=\"https://freesound.org/people/DanJFilms/sounds/529064/\">Harp Transition Music Cue</a><br>\r\nAuthor: <a href=\"https://freesound.org/people/DanJFilms/\">DanJFilms</a><br>\r\nLicense: <a href=\"https://creativecommons.org/publicdomain/zero/1.0/\">Creative Commons Zero</a></p>\r\n\r\n',293,0,0,'CC-BY-SA','Clonezilla,backup,backups,cloning,hard drives',0,0,1),
(3454,'2021-10-28','Engineering Notation',736,'Ken runs through the most common Engineering Notation used in HAM radio.','<h1 id=\"engineering-notation\">Engineering Notation</h1>\r\n<h3 id=\"learn-this-table\">Learn this table</h3>\r\n<pre>\r\n giga G 10<sup>9</sup> 1,000,000,000\r\n mega M 10<sup>6</sup> 1,000,000\r\n kilo k 10<sup>3</sup> 1,000\r\n 1\r\nmilli m 10<sup>3</sup> 0.001\r\nmicro μ 10<sup>6</sup> 0.000,001\r\n nano n 10<sup>9</sup> 0.000,000,001\r\n pico p 10<sup>12</sup> 0.000,000,000,001\r\n</pre>\r\n<h3 id=\"links\">Links</h3>\r\n<ul>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Engineering_notation\">Engineering notation</a></li>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Metric_prefix#List_of_SI_prefixes\">List of International System of Units (SI)</a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=3087\">hpr3087 :: Phonetic alphabet</a></li>\r\n</ul>\r\n',30,43,0,'CC-BY-SA','giga,mega,kilo,milli,micro,nano,pico,SI, International System of Units',0,0,1),
(3457,'2021-11-02','Tables',2260,'How and why I convert tables to lists','<p>\nMobile devices don\'t display them nicely.\nMost tables can be converted into a list:\n</p>\n\n<table>\n <tr>\n <th>OS</th><th>Init</th><th>Pkg</th>\n </tr>\n<tr>\n<td>Fedora</td><td>systemd</td><td>dnf</td>\n</tr>\n<tr>\n<td>Slackware</td><td>BSD-style</td><td>slackpkg</td>\n</tr>\n<tr>\n<td>Gentoo</td><td>OpenRC</td><td>emerge</td>\n</tr>\n</table>\n\n<p>Can be represented as a list. In YAML terms, this is a <em>sequence</em> of <em>mappings</em>.\n</p>\n\n<ul><li>Fedora\n<ul><li>Init system: systemd</li>\n<li>Package manager: dnf</li>\n</ul></li>\n<li>Slackware\n<ul>\n<li>Init system: BSD-style</li>\n<li>Package manager: slackpkg</li>\n</ul></li>\n\n<li>Gentoo\n<ul>\n<li>Init system: OpenRC</li>\n<li>Package manager: emerge</li>\n</ul></li>\n</ul>\n\n<p>A table doesn\'t always translate exactly to a list, but it probably can be restructured. </p>\n\n<table>\n<tr>\n<th>OS</th><th>Open source</th><th>Landed on Mars</th></tr>\n<tr>\n<td>Linux</td><td>Yes</td><td>Yes</td>\n</tr>\n<tr>\n<td>BSD</td><td>Yes</td><td>No</td>\n</tr>\n<tr>\n<td>macOS</td><td>No</td><td>No</td>\n</tr>\n</table>\n\n<p>Could be written like this instead:</p>\n\n<p>Linux and BSD are open source operating systems, while macOS is not. Of these POSIX-compliant systems, only Linux has landed on Mars so far.</p>\n\n<p>That\'s pretty casual and loses the visual impact of a table or a list. So alternately, you could summarize what\'s common and highlight differences:</p>\n\n<p>\nThere are a few Linux systems on Mars.\nNeither BSD or macOS have yet landed on Mars.\n</p>\n\n<ul>\n<li>Linux and BSD are both open source.</li>\n<li>macOS is based partially on open source and includes components from the BSD, KDE, GNU, and other projects.</li>\n</ul>\n',78,4,0,'CC-BY-SA','data,tables,communication',0,0,1),
(3458,'2021-11-03','Living in the Terminal 2: The Obligatory Sequel',3648,'A very tired BlacKernel tries to handle feedback from the previous episode','<h2>Talking Points</h2>\r\n<ul>\r\n <li>Listener Feedback\r\n <ul>\r\n <li>Dave Morriss and the Markdown/HTML debacle\r\n <ul>\r\n <li>Using validate_html</li>\r\n <li>Podcast logistics etc.</li>\r\n </ul>\r\n </li>\r\n <li>hackerdefo\'s suggestions\r\n <ul>\r\n <li>.less_termcap:<br/>\r\n <pre>\r\nexport LESS_TERMCAP_mb=$(tput bold; tput setaf 2)\r\nexport LESS_TERMCAP_md=$(tput bold; tput setaf 6)\r\nexport LESS_TERMCAP_me=$(tput sgr0)\r\nexport LESS_TERMCAP_so=$(tput bold; tput setaf 3; tput setab 4)\r\nexport LESS_TERMCAP_se=$(tput rmso; tput sgr0)\r\nexport LESS_TERMCAP_us=$(tput smul; tput bold; tput setaf 7)\r\nexport LESS_TERMCAP_ue=$(tput rmul; tput sgr0)\r\nexport LESS_TERMCAP_mr=$(tput rev)\r\nexport LESS_TERMCAP_mh=$(tput dim)\r\nexport LESS_TERMCAP_ZN=$(tput ssubm)\r\nexport LESS_TERMCAP_ZV=$(tput rsubm)\r\nexport LESS_TERMCAP_ZO=$(tput ssupm)\r\nexport LESS_TERMCAP_ZW=$(tput rsupm)\r\n </pre><br/>\r\n .bashrc:<br/>\r\n <pre>\r\nif [ -f $HOME/.less_termcap ];then\r\n . $HOME/.less_termcap\r\nfi\r\n </pre></li>\r\n <li>poca, castero, and gpodder cli</li>\r\n <li>My opinion on Python and Java</li>\r\n <li>ProtonMail Bridge with mutt</li>\r\n </ul>\r\n </li>\r\n <li>Comments from the last episode\r\n <ul>\r\n <li>(Please go to the last episode to read the full comments)</li>\r\n <li>NOTE: If you want a timely response, please email me or mention me on Mastodon</li>\r\n <li>Operat0r: Kids these days! https://www.nethack.org/</li>\r\n <li>b-yeezi: +1 for cnus</li>\r\n <li>sesamemucho: The text</li>\r\n <li>Dave Morriss: Very enjoyable</li>\r\n <li>Gumnos: Using \"c\" to pause in cmus</li>\r\n </ul>\r\n </li>\r\n </ul>\r\n </li>\r\n <li>New Talking Points\r\n <ul>\r\n <li>Here Documents\r\n <pre>\r\ncat &gt; text.txt &lt;&lt;EOF\r\nHello, World!\r\nEOF\r\n </pre>\r\n </li>\r\n <li>NetHack</li>\r\n </ul>\r\n </li>\r\n</ul>\r\n\r\n<hr/>\r\n\r\n<h2>Show Notes</h2>\r\n<h4>Important Links:</h4>\r\n<ul>\r\n <li><a href=\"https://hackerpublicradio.org/eps.php?id=3431\">HPR Episode 3431: Living in the Terminal by BlacKernel</a></li>\r\n <li><a href=\"https://brian-thompson.medium.com/setting-up-the-mutt-mail-client-with-protonmail-49c042486b3\">ProtonMail Bridge with Mutt by Medium</a></li>\r\n <li><a href=\"https://github.com/brokkr/poca/\">poca by brokkr</a></li>\r\n <li><a href=\"https://github.com/xgi/castero\">castero by xgi</a></li>\r\n <li><a href=\"https://gpodder.github.io/docs/user-manual.html#command-line-interface\">gpodder CLI interface</a></li>\r\n <li><a href=\"https://www.nethack.org/\">NetHack (The best game ever)</a></li>\r\n</ul>\r\n\r\n<h4>Wikipedia Articles:</h4>\r\n<ul>\r\n <li>None</li>\r\n</ul>\r\n\r\n<hr/>\r\n\r\n<i>Contact Me</i>\r\n<ul>\r\n<li><b>Email: </b><a href=\"mailto:izzyleibowitz@pm.me\">izzyleibowitz at pm dot me</a></li>\r\n<li><b>Mastodon: </b><a href=\"https://nixnet.social/BlacKernel\">at blackernel at nixnet dot social</a></li>\r\n</ul>\r\n',396,0,1,'CC-BY-SA','cli, linux, terminal, applications, picks, tired',0,0,1),
(3459,'2021-11-04','Linux Inlaws S01E42: The Open Source Initiative',4396,'The Open Source Initiative','<p>In this episode our two OAPs host Deb Nicholson, the general manager of the\r\nOpen Source Initiative (OSI). Apart from riveting insights into open source\r\nlicensing we discuss the greater FLOSS ecosystem and Deb\'s views on why\r\nwearing shoes is important in certain contexts, open source standards, law\r\nsuits and the differences between US and Europe among other things.</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>OSI: <a href=\"https://opensource.org\" target=_blank>https://opensource.org</a></li>\r\n<li>OSI\'s FLOSS definition: <a href=\"https://opensource.org/osd\" target=_blank>https://opensource.org/osd</a></li>\r\n<li>Commons Clause license: <a href=\"https://commonsclause.com\" target=_blank>https://commonsclause.com</a></li>\r\n<!-- <li>TerminusDB license change: <a href=\"https://blog.terminusdb.com/we-love-gplv3-but-are-switching-license-to-apache-2-0-terminusdb\" target=_blank>https://blog.terminusdb.com/we-love-gplv3-but-are-switching-license-to-apache-2-0-terminusdb</a></li> -->\r\n<li>TerminusDB license change: <a href=\"https://terminusdb.com/blog/we-love-gplv3-but-are-switching-license-to-apache-2-0-terminusdb/\" target=_blank>https://terminusdb.com/blog/we-love-gplv3-but-are-switching-license-to-apache-2-0-terminusdb/</a></li>\r\n<li>Open source licenses: <a href=\"https://en.wikipedia.org/wiki/Comparison_of_free_and_open-source_software_licences\" target=_blank>https://en.wikipedia.org/wiki/Comparison_of_free_and_open-source_software_licences</a></li>\r\n<li>Open Core model: <a href=\"https://en.wikipedia.org/wiki/Open-core_model\" target=_blank>https://en.wikipedia.org/wiki/Open-core_model</a></li>\r\n<li>Software Freedom Conservancy: <a href=\"https://sfconservancy.org\" target=_blank>https://sfconservancy.org</a></li>\r\n<li>Bruce Perens: <a href=\"https://en.wikipedia.org/wiki/Bruce_Perens\" target=_blank>https://en.wikipedia.org/wiki/Bruce_Perens</a></li>\r\n<li>Loki TV series: <a href=\"https://en.wikipedia.org/wiki/Loki_(TV_series)\" target=_blank>https://en.wikipedia.org/wiki/Loki_(TV_series)</a></li>\r\n<li>Luca movie: <a href=\"https://www.imdb.com/title/tt12801262/?ref_=fn_al_tt_1\" target=_blank>https://www.imdb.com/title/tt12801262/?ref_=fn_al_tt_1</a></li>\r\n<li>The Internet is made of cats: <a href=\"https://www.youtube.com/watch?v=zi8VTeDHjcM\" target=_blank>https://www.youtube.com/watch?v=zi8VTeDHjcM</a></li>\r\n<li>Gnome and systemd: <a href=\"https://blogs.gnome.org/benzea/2019/10/01/gnome-3-34-is-now-managed-using-systemd\" target=_blank>https://blogs.gnome.org/benzea/2019/10/01/gnome-3-34-is-now-managed-using-systemd</a></li>\r\n<li>Apparmor Profile: <a href=\"https://packages.debian.org/bullseye/apparmor-profiles\" target=_blank>https://packages.debian.org/bullseye/apparmor-profiles</a></li>\r\n<li>Apparmor Profile Extra: <a href=\"https://packages.debian.org/bullseye/apparmor-profiles-extra\" target=_blank>https://packages.debian.org/bullseye/apparmor-profiles-extra</a></li>\r\n</ul>\r\n\r\n<p><small><em>Editor\'s Note, 2021-12-09</em>: TerminusDB link changed as requested</small></p>\r\n',384,111,1,'CC-BY-SA','OSI, RMS, Open Core, the Cat Internet, Luca, Loki, open source licensing',0,0,1),
(3462,'2021-11-09','Metal marbles.',618,'Introduction of new host, with reference to semantic playgrounds.','<h2 id=\"title-metal-marbles.\">Title: Metal marbles.</h2>\r\n<h3 id=\"summary-introduction-of-host-with-reference-to-semantic-playgrounds.\">Summary: Introduction of host, with reference to semantic playgrounds.</h3>\r\n<p>Link to the rust converter recipe, which I found to be cheaper, and more sprayable than buckets of gel or paint-like substances which you might find elsewhere:</p>\r\n<p><a href=\"https://www.canada.ca/en/conservation-institute/services/conservation-preservation-publications/canadian-conservation-institute-notes/tannic-acid-rusted-iron-artifacts.html\" class=\"uri\">https://www.canada.ca/en/conservation-institute/services/conservation-preservation-publications/canadian-conservation-institute-notes/tannic-acid-rusted-iron-artifacts.html</a></p>\r\n<p>In case that link moves, search for tannic acid rust converters, then choose your buffers.</p>\r\n<p>Email:<br />\r\nhpr@spoons.one</p>\r\n<p>Mastodon, though very very rarely:<br />\r\n<span class=\"citation\" data-cites=\"one_of_spoons\">@one_of_spoons</span><span class=\"citation\" data-cites=\"hispagatos.space\">@hispagatos.space</span></p>',398,0,1,'CC-BY-SA','host zen',0,0,1),
(3472,'2021-11-23','consuming an AQI API',386,'just because the sky is clear, doesn\'t mean the air is safe to breathe','<h2>AQI</h2>\r\n<p>Air Quality Index - measures particles in the air</p>\r\n<ul>\r\n<li>\r\n<p>Ozone </p>\r\n<ul>\r\n<li>good at high altitudes</li>\r\n<li>bad on the earth surface <a href=\"https://en.wikipedia.org/wiki/Ozone#Low_level_ozone\">https://en.wikipedia.org/wiki/Ozone#Low_level_ozone</a></li>\r\n</ul>\r\n</li>\r\n<li>\r\n<p>PM2.5 </p>\r\n<ul>\r\n<li>Particulate Matter, 2.5 micrometers <a href=\"https://en.wikipedia.org/wiki/Particulates#Size,_shape_and_solubility_matter\">https://en.wikipedia.org/wiki/Particulates#Size,_shape_and_solubility_matter</a></li>\r\n</ul>\r\n</li>\r\n</ul>\r\n<p><a href=\"https://en.wikipedia.org/wiki/Particulates#Wildfire_smoke_risk\">https://en.wikipedia.org/wiki/Particulates#Wildfire_smoke_risk</a></p>\r\n<h2>Getting AQI data</h2>\r\n<p>Determining air quality in my area is as simple as visiting <a href=\"https://www.airnow.gov\">https://www.airnow.gov</a> and entering my zip code. Although my zip code covers 139.56 square miles, the result is accurate enough for my needs. When my zip code was submitted, the web page did not refresh. This means that the client interface made an API call to the backend server. </p>\r\n<p>It sure would be nice if the AQI status was emailed to my phone every hour, if the AQI was above a certain threshold. </p>\r\n<p>In order to get the data from the API, it is necessary to emulate the request made by the client to the API. This can be accomplished using Firefox.</p>\r\n<ul>\r\n<li>open Firefox</li>\r\n<li>go to <a href=\"https://www.airnow.gov\">https://www.airnow.gov</a></li>\r\n<li>open the Firefox developer tools, either through the menu or with CTRL+SHIFT+i</li>\r\n<li>in the dev tools, select the Network tab</li>\r\n<li>enter the zip code in the form and submit</li>\r\n<li>watch the Network tab for a POST request to https://airnowgovapi.com/reportingarea/get</li>\r\n<li>click on the request in the network tab</li>\r\n</ul>\r\n<p>Another set of tabs are now available to display various bits of information regarding the request. From this data, it is possible to recreate the query. \r\nHowever, I took an even easier route, and right-clicked on the query in the Network tab, and selected <code>Copy > Copy as cURL</code> to get the request as a curl command complete with all necessary arguments prefilled. Since I didn\'t want to write my entire AQI fetching script in bash, I copied the curl command into a text file and ported the request to Ruby. </p>\r\n<h2>The Finished Script</h2>\r\n<pre><code>#!/usr/bin/env ruby\r\nrequire \'net/http\'\r\nrequire \'uri\'\r\nrequire \'json\'\r\n\r\nuri =\"https://airnowgovapi.com/reportingarea/get\"\r\nparsed_uri = URI.parse(uri)\r\npayload={latitude:39.88,longitude:-120.76,stateCode:\'CA\',maxDistance:50}\r\nresponse = Net::HTTP.post_form(parsed_uri, payload)\r\ndata = JSON.parse(response.body)[0]\r\naqi=data[\"aqi\"].to_i\r\ncategory=data[\'category\']\r\nparameter=data[\'parameter\']\r\n\r\noutput= \"#{parameter}: #{aqi} - #{category}\"\r\nputs output\r\n\r\n\r\n/opt/textjezra \"#{output}\"` if aqi > 70\r\n</code></pre>\r\n',243,25,0,'CC-BY-SA','ruby, api, programming',0,0,1),
(3473,'2021-11-24','My journey into Amateur Radio',616,'Dave explains his journey into Amateur Radio, initial setup and successes.','<h2 id=\"opening\">Opening</h2>\r\n<p>Hello, my name is Dave, and welcome to another exciting episode of Hacker Public Radio. It\'s been a couple of years since my last episode, and I know that HPR is running low on shows. As I have had this one in planning for some time now, I though this was the right time to get it finished.</p>\r\n<h2 id=\"main\">Main</h2>\r\n<p>At the time of recording this, I\'ve been an <a href=\"https://en.m.wikipedia.org/wiki/Amateur_radio\">Amateur Radio</a> licence holder for 6 months. I took the notion of studying and applying for my Foundation licence (the first of three stages to a Full licence) when I read a blog post by Jon Spriggs G7VRI, back in March, entitled <a href=\"https://jon.sprig.gs/blog/post/2184\">Might Amateur Radio be a hobby for you?</a> I saw a <a href=\"https://jon.sprig.gs/blog/post/slideshow/amateur-radio\">presentation</a> by Jon at OggCamp in 2018 in Sheffield where he gave a whistle-stop tour of what Amateur Radio actually is, and how easy it is to get involved in it.</p>\r\n<p>As a bit of background, I was quite involved in the <a href=\"https://en.m.wikipedia.org/wiki/Citizens_band_radio\">CB Radio</a> scene back in the late 80s and early 90s - I was introduced to CB by my dad, whose handle was \"Screwball\", in the 70s... he had a CB rig in his car since as far back as I can remember. I picked up the hobby from him, by actually liberating him of his rig when he stopped using it. Unfortunately it got stolen from my car. C\'est la vie. Yes, my handle back then was \"The Love Bug\" - in fact, it was whilst looking for an alternative to \"Kool Kat\" as a handle that I first used the moniker \"The Love Bug\" - probably in the mid-80s - and it just stuck.</p>\r\n<p>So, after reading Jon\'s blog post, and doing some research into Amateur Radio myself, a whole bunch of things happened at the same time: I bought my first radio - a <a href=\"https://www.baofengradio.com/products/uv-5rtp\">Baofeng UV-5RTP</a> [<a href=\"https://www.amazon.co.uk/dp/B07PWGMT13\">Amazon UK</a>], I joined the <a href=\"https://rsgb.org/\">Radio Society of Great Britain</a> (not a requirement, but I would recommend it), signed up for Essex Ham\'s <a href=\"https://www.essexham.co.uk/train/online-exams/\">Foundation Training Course</a> (not a requirement, but strongly recommended as it\'s geared around the examination, and it\'s free!)</p>\r\n<p>The training took 3 weeks (in my own time), and I applied for my exam as soon as the training was complete. The exam was an hour long, under as close to exam conditions as an online exam would allow, and I was told by the online system that I\'d passed as soon as I submitted my answers. It then took a few days to get the confirmation of passing (and a certificate) in the post, which then allowed me to apply to <a href=\"https://en.m.wikipedia.org/wiki/Ofcom\">Ofcom</a> (the authority for the radio spectrum here in the UK) for my licence and callsign. I was able to choose the suffix of my callsign, and - as BUG was taken - I opted for TLB (for The Love Bug), and thus my callsign is - currently - M7TLB (Mike Seven Tango Lima Bravo). I say \"currently\" - I\'m not allowed to change my callsign, however the callsign is specific not only to me but also to the fact that I\'m a Foundation Licence holder. Therefore, when I go for my Intermediate and then Full licence, I\'ll get new callsigns for each one, each superseding the previous.</p>\r\n<p>Anyhoo, once I got my Foundation licence, I went out that Sunday to log some contacts, or <a href=\"https://en.m.wikipedia.org/wiki/Contact_(amateur_radio)\">QSO</a>s. So I parked up at a high point near to here, put a small aerial on the roof of the car (so that I didn\'t warm up my head when transmitting), and started calling <a href=\"https://en.m.wikipedia.org/wiki/CQ_(call)\">CQ</a> - essentially a way of saying \"I want to talk to somebody\" - \"Seek You\". As part of the licence condi
(3476,'2021-11-29','My mutt email setup',765,'My humble mutt email setup','\r\n<ol type=\"1\">\r\n<li>Get app password and enter it in a file call pass</li>\r\n</ol>\r\n<pre><code> set my_gpass= &quot;MyAppPassword&quot;</code></pre>\r\n<ol start=\"2\" type=\"1\">\r\n<li><p>Encrypt pass file with <code>\'gpg -e pass\'</code></p></li>\r\n<li><p>Shred pass file with \'shred -uv pass\', which uses verbose mode</p></li>\r\n</ol>\r\n<pre><code> shred - overwrite a file to hide its contents, and optionally delete it\r\n -u deallocate and remove file after overwriting\r\n -v, --verbose, show progress</code></pre>\r\n<ol start=\"4\" type=\"1\">\r\n<li><p>Use gpg encrypted key to open Gmail</p>\r\n<ul>\r\n<li>in .muttrc <code> source \"gpg -d ~/.mutt/pass.gpg |\" </code></li>\r\n</ul></li>\r\n<li><p>Source colors file: Custom color scheme</p></li>\r\n</ol>\r\n<pre><code> ## Custom - Shows a gray line on tagged emails\r\n color index yellow brightblack &quot;~T ~N | ~T&quot;</code></pre>\r\n<p><em>Tagged emails</em><br />\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3476/tagged_emails.png\" alt=\"Tagged emails\" /></p>\r\n<ol start=\"6\" type=\"1\">\r\n<li>Source hooks file: Redirect default save path for email sorting</li>\r\n</ol>\r\n<pre><code> ## Newsletters - Technology ##\r\n save-hook &#39;~f lists.linuxjournal.com&#39; =&#39;Linux&#39;\r\n save-hook &#39;~f arch-dev-public&#39; =Newsletters\r\n save-hook &#39;~f noreply@mmorpg.com&#39; =Newsletters\r\n save-hook &#39;~f ocw@mit.edu&#39;|&#39;~b Opencourseware&#39; =Newsletters\r\n save-hook &#39;~s Linux&#39;|&#39;~s Foundation&#39; =&#39;Newsletters&#39;\r\n save-hook &#39;~f weekly@raspberrypi.org&#39; =Newsletters\r\n save-hook &#39;~f hackspace@raspberrypi.org&#39; =Newsletters\r\n save-hook &#39;~f @pragmaticbookshelf.com&#39; =Newsletters\r\n save-hook &#39;~f comixology@e.comixology.com&#39; =Newsletters\r\n save-hook &#39;~f mrgroove@groovypost.com&#39; =Newsletters\r\n save-hook &#39;~f oreilly@post.oreilly.com&#39; =Newsletters\r\n save-hook &#39;~f mark ~s arduino&#39; =Bookmarks/Arduino\r\n save-hook &#39;~f smith@torproject.org&#39; =Newsletters/TorProject\r\n save-hook &#39;~f info@torproject.org&#39; =Newsletters/TorProject\r\n save-hook &#39;~f editor@eff.org&#39; =Newsletters.EFFdotOrg\r\n save-hook &#39;~f contact@diyodemag.com&#39; =Newsletters/DIYODE-Magazine\r\n save-hook &#39;~f weekly-update@allaboutcircuits.com&#39; =Newsletters/Circuits\r\n\r\n ## Recipes ##\r\n save-hook &#39;~f dora ~s Recipe | ~s Recipe | ~B recipe | ~B casserole | ~B bake | ~B &quot;omaha steaks&quot; &#39; =&#39;dabrat1972/Recipes&#39;</code></pre>\r\n<ol start=\"7\" type=\"1\">\r\n<li>Source aliases file: Frequently used contacts</li>\r\n</ol>\r\n<pre><code> alias tags tags@hackerpublicradio.org\r\n alias Dave_Morriss Dave Morriss &lt;perloid@autistici.org&gt;</code></pre>\r\n<ul>\r\n<li>HTML email\r\n<ul>\r\n<li>Install lynx</li>\r\n</ul></li>\r\n<li>Open URL\'s\r\n<ul>\r\n<li>Install urlscan</li>\r\n<li>Capital \'U\' open URL dialog</li>\r\n</ul></li>\r\n<li>Open pictures\r\n<ul>\r\n<li>Install feh</li>\r\n</ul></li>\r\n<li>PDF reader\r\n<ul>\r\n<li>Zathura\r\n<ul>\r\n<li><a href=\"https://bbs.archlinux.org/viewtopic.php?id=220572\" class=\"uri\">https://bbs.archlinux.org/viewtopic.php?id=220572</a></li>\r\n<li>Install zathura-pdf-mupdf and zathura-pdf-poppler\r\n<ul>\r\n<li>Just needed zathura-pdf-mupdf, zathura-pdf-poppler was included with zathura.</li>\r\n</ul></li>\r\n</ul></li>\r\n</ul></li>\r\n</ul>\r\n<pre><code>mailcap - metamail capabilities file\r\n\r\nDESCRIPTION\r\n The mailcap file is read by the metamail program to determine how to display non-text at the local site.</code></pre>\r\n<pre><code> image/*; feh %s; test=test -n &quot;$DISPLAY&quot;;\r\n text/html; lynx -nonumbers -dump %s; copiousoutput; nametemplate=%s.html\r\n application/pdf; zathura /dev/stdin</code></pre>\r\n<h2 id=\"more-reading\">More readin
(3485,'2021-12-10','50 years since the 1st Edition of Unix was published',747,'Ken (Fallon not Thompson) checks his unix like computer to see how many commands still exist.','<h1 id=\"top-ten-of-the-first-unix-commands\">top ten of the first unix commands</h1>\r\n<p>50 years after the 1st Edition of Unix was published, Ken (Fallon not Thompson) checks his unix like computer to see how many commands still exist (38) and how many are not installed by default (23).</p>\r\n<p>Thanks to <a href=\"https://twitter.com/bsdimp\">@bsdimp</a> on twitter for the post. Also to <a href=\"https://fosstodon.org/@atoponce/107219163009353638\">@atoponce@fosstodon.org</a> and <a href=\"https://mastodon.social/@obra/107217491430371868\">@obra@mastodon.social</a> for the tip.</p>\r\n<h3 id=\"packages-i-dont-have-installed\">Packages I don\'t have installed</h3>\r\n<p>Many are available under another name but I have not installed them. Seven of the of the twenty two relates to tapes.</p>\r\n<pre>\r\nB -- language\r\nbas -- basic\r\nbcd -- binary coded decimal conversion\r\nboot -- reboot system\r\nchdir -- change working directory\r\ncheck -- file system consistency check\r\ndb -- debug\r\ndbppt -- dump binary paper tape\r\ndsw -- delete interactively\r\ndtf -- DECtape format\r\nfor -- fortran\r\nform -- form letter generator\r\nhup -- hang up typewriter\r\nlbppt -- load binary paper tapes\r\nrew -- rewind tape\r\nrkd -- dump RK disk to tape\r\nrkf -- format RKO3 disk pack\r\nrkl -- reload RK disk from tape\r\nroff -- format text\r\nsdate -- set date and time\r\ntap -- manipulate DECtape\r\ntm -- provide time information\r\nun -- undefined symbols\r\n</pre>\r\n\r\n<h3 id=\"top-10-most-popular-50-year-old-commands-\">Top 10 most popular 50 year old commands !</h3>\r\n<pre>\r\n 1 10108 ls\r\n 2 2847 find\r\n 3 1985 rm\r\n 4 1482 mv\r\n 5 887 cat\r\n 6 649 for\r\n 7 544 mkdir\r\n 8 341 cp\r\n 9 280 rmdir\r\n 10 202 df\r\n</pre>\r\n',30,0,1,'CC-BY-SA','unix, unix commands',0,0,1),
(3474,'2021-11-25','H P R and Audio Fun',671,'Comments on show and audio processing ','<p><a href=\"https://matrix.to/#/#HPR:matrix.org\" class=\"uri\">https://matrix.to/#/#HPR:matrix.org</a></p>\r\n<ul>\r\n<li><p>media &gt; text &gt; keywords<br />\r\n<a href=\"https://github.com/freeload101/SCRIPTS/blob/master/Bash/Stream_to_Text_with_Keywords.sh\" class=\"uri\">https://github.com/freeload101/SCRIPTS/blob/master/Bash/Stream_to_Text_with_Keywords.sh</a></p></li>\r\n<li><p>NICE !<br />\r\n<a href=\"https://hackerpublicradio.org/rss-future.php\" class=\"uri\">https://hackerpublicradio.org/rss-future.php</a></p></li>\r\n<li><p>broken ?<br />\r\n<a href=\"https://gitlab.anhonesthost.com/HPR/HPR_Public_Code/\" class=\"uri\">https://gitlab.anhonesthost.com/HPR/HPR_Public_Code/</a> ( broken ? )</p></li>\r\n<li><p>Donate!<br />\r\n<a href=\"https://secure.anhonesthost.com/store/hpr-hosting-cost-donations\" class=\"uri\">https://secure.anhonesthost.com/store/hpr-hosting-cost-donations</a></p></li>\r\n<li><p>android compressor / limiter<br />\r\n<a href=\"https://play.google.com/store/apps/details?id=io.github.kushiheim.glycox\" class=\"uri\">https://play.google.com/store/apps/details?id=io.github.kushiheim.glycox</a></p></li>\r\n<li><p>notes on Linux Audio<br />\r\n<a href=\"https://docs.google.com/document/d/1E1xAwWpq-C4vEh8LCRw7MD7jnaclX9Faf2L3dZWiqQY/edit#heading=h.wp1n4j8ybidv\" class=\"uri\">https://docs.google.com/document/d/1E1xAwWpq-C4vEh8LCRw7MD7jnaclX9Faf2L3dZWiqQY/edit#heading=h.wp1n4j8ybidv</a></p></li>\r\n<li><p>possible automated silence detection to be used for noise profile !!!! ( let\'s talk about it ! )<br />\r\n<a href=\"https://stackoverflow.com/questions/45526996/split-audio-files-using-silence-detection/46001755\" class=\"uri\">https://stackoverflow.com/questions/45526996/split-audio-files-using-silence-detection/46001755</a></p></li>\r\n</ul>\r\n',36,0,1,'CC-BY-SA','audio',0,0,1),
(3491,'2021-12-20','My Github and flickmetrix',1553,'Bear with me as I go though my github over the past year some real gems in here','<ul>\r\n<li><p>main github (other stuff one there like SC_BADGER etc)<br />\r\n<a href=\"https://github.com/freeload101\" class=\"uri\">https://github.com/freeload101</a></p></li>\r\n<li><p>flickmetrix script<br />\r\n<a href=\"https://github.com/freeload101/SCRIPTS/blob/7279338b610c914812169e107cbbea45e4ca5254/fu.txt#L102\" class=\"uri\">https://github.com/freeload101/SCRIPTS/blob/7279338b610c914812169e107cbbea45e4ca5254/fu.txt#L102</a></p></li>\r\n<li><p>High_Contrast_Toggle_AutoHotkey.ahk<br />\r\n<a href=\"https://github.com/freeload101/SCRIPTS/tree/master/AutoHotkey\" class=\"uri\">https://github.com/freeload101/SCRIPTS/tree/master/AutoHotkey</a></p></li>\r\n<li><p>smart nmap<br />\r\n<a href=\"https://github.com/freeload101/SCRIPTS/blob/master/Bash/NMAP_SMART_FAST.sh\" class=\"uri\">https://github.com/freeload101/SCRIPTS/blob/master/Bash/NMAP_SMART_FAST.sh</a></p></li>\r\n<li><p>clean up script for media cool find regex here<br />\r\n<a href=\"https://raw.githubusercontent.com/freeload101/SCRIPTS/master/Bash/RMEMPTY.sh\" class=\"uri\">https://raw.githubusercontent.com/freeload101/SCRIPTS/master/Bash/RMEMPTY.sh</a></p></li>\r\n<li><p>good movies page<br />\r\n<a href=\"https://github.com/freeload101/SCRIPTS/blob/master/Bash/flickmetrix_good_movies.sh\" class=\"uri\">https://github.com/freeload101/SCRIPTS/blob/master/Bash/flickmetrix_good_movies.sh</a></p></li>\r\n<li><p>mobile mass SSL depinning script<br />\r\n<a href=\"https://github.com/freeload101/SCRIPTS/blob/master/JS/universal-android-ssl-pinning-bypass-with-frida.js\" class=\"uri\">https://github.com/freeload101/SCRIPTS/blob/master/JS/universal-android-ssl-pinning-bypass-with-frida.js</a></p></li>\r\n<li><p>android debloat and dump app names/ with file names<br />\r\n<a href=\"https://github.com/freeload101/SCRIPTS/blob/master/Windows_Batch/Android_Debloat_N_Dump.bat\" class=\"uri\">https://github.com/freeload101/SCRIPTS/blob/master/Windows_Batch/Android_Debloat_N_Dump.bat</a></p></li>\r\n<li><p>help debug CPU hogging apps in android logs<br />\r\n<a href=\"https://github.com/freeload101/SCRIPTS/blob/master/Windows_Batch/Android_logcat_cat.sh\" class=\"uri\">https://github.com/freeload101/SCRIPTS/blob/master/Windows_Batch/Android_logcat_cat.sh</a></p></li>\r\n<li><p>script that kills all processes and then cleans temp files etc<br />\r\n<a href=\"https://github.com/freeload101/SCRIPTS/blob/master/Windows_Batch/BleachBit_Quickkill.bat\" class=\"uri\">https://github.com/freeload101/SCRIPTS/blob/master/Windows_Batch/BleachBit_Quickkill.bat</a></p></li>\r\n<li><p>Cool script that debloats,hardends,installs cygwin and chocolatey apps<br />\r\n<a href=\"https://github.com/freeload101/SCRIPTS/blob/master/Windows_Batch/Chocolatey_Cygwin.cmd\" class=\"uri\">https://github.com/freeload101/SCRIPTS/blob/master/Windows_Batch/Chocolatey_Cygwin.cmd</a></p></li>\r\n<li><p>dump windows system info ,dxdiag info and battery info<br />\r\n<a href=\"https://github.com/freeload101/SCRIPTS/blob/master/Windows_Batch/DUMP_WINDOWS_INFO.bat\" class=\"uri\">https://github.com/freeload101/SCRIPTS/blob/master/Windows_Batch/DUMP_WINDOWS_INFO.bat</a></p></li>\r\n<li><p>youtube downloader (now yt-dlp) script to mass download multi threaed media all at the same time.<br />\r\n<a href=\"https://github.com/freeload101/SCRIPTS/blob/master/Windows_Batch/Youtube-dl-ffmpeg-aria2c-updater-downloader.bat\" class=\"uri\">https://github.com/freeload101/SCRIPTS/blob/master/Windows_Batch/Youtube-dl-ffmpeg-aria2c-updater-downloader.bat</a></p></li>\r\n<li><p>bunch of \'old\' one liners etc<br />\r\n<a href=\"https://github.com/freeload101/SCRIPTS/blob/master/fu.txt\" class=\"uri\">https://github.com/freeload101/SCRIPTS/blob/master/fu.txt</a></p></li>\r\n</ul>\r\n',36,0,1,'CC-BY-SA','scripts,hacking,github,windows,linux',0,0,1),
(3467,'2021-11-16','Protonmail in the terminal',2262,'One way of doing Protonmail in the terminal.','<p>I use email in the terminal with a combination of:</p>\r\n<dl>\r\n<dt>protonmail-bridge-cli</dt>\r\n<dd>local IMAP server to fetch Protonmail mails\r\n</dd>\r\n<dt>tmux</dt>\r\n<dd>to run protonmail-bridge in\r\n</dd>\r\n<dt>isync (or offlineimap etc)</dt>\r\n<dd>to sync IMAP with maildirs\r\n</dd>\r\n<dt>notmuch</dt>\r\n<dd>to tag and search mails\r\n</dd>\r\n<dt>afew</dt>\r\n<dd>to move mails found by certain notmuch queries in certain maildirs\r\n</dd>\r\n<dt>alot</dt>\r\n<dd>to read, compose, search and tag mails\r\n</dd>\r\n<dt>msmtp</dt>\r\n<dd>to send mails\r\n</dd>\r\n<dt>w3m (or lynx etc)</dt>\r\n<dd>to read HTML mails in the terminal\r\n</dd>\r\n<dt>rsync</dt>\r\n<dd>to copy archived mails\r\n</dd>\r\n<dt>a shell function and an alias</dt>\r\n<dd>to make it all less ridiculous\r\n</dd>\r\n</dl>\r\n<p>To most, Thunderbird will be suitable, the target audience here is unreasonable people.</p>\r\n<h3>Complete Show Notes</h3>\r\n<p>\r\nFollow this link for the complete show notes: <a href=\"https://hackerpublicradio.org/eps/hpr3467/\">https://hackerpublicradio.org/eps/hpr3467/</a>\r\n</p>',399,0,1,'CC-BY-SA','email,protonmail,alot,afew,notmuch,mbsync',0,0,1),
(3475,'2021-11-26','How I Watch Everything Using Open Source Software',878,'Using Libreelec, Kodi, a tuner, and a Raspberry Pi to create a great media center','<p>I\'ve been using this setup or one similar for several years now and it has worked out very well.</p>\r\n<p>Hardware:</p>\r\n<ul>\r\n<li>Clearstream TV antenna</li>\r\n<li>Coax cable</li>\r\n<li>Hauppage WinTV-dual HD USB Dual Tuner</li>\r\n<li>Raspberry Pi 4 4GB</li>\r\n<li>1 TB SSD connected via USB 3</li>\r\n<li>HDMI cable</li>\r\n</ul>\r\n<p>Software:</p>\r\n<ul>\r\n<li>Libreelec OS</li>\r\n<li>Kodi</li>\r\n<li>TVheadend server</li>\r\n<li>TVheadend client</li>\r\n<li>Debrid addon media streamer</li>\r\n</ul>\r\n<p>Any questions or comments you can reach me at minnix at minnix dot dev</p>\r\n',375,0,0,'CC-BY-SA','libreelec,kodi,raspberry pi,tvheadend',0,0,1),
(3477,'2021-11-30','Picking a Forth',1313,'Available forths, old and new','<ul>\r\n<li><p>arduino as a sketch download pdf at <a href=\"https://wiki.forth-ev.de\">wiki.forth-ev.de</a>, then cut and paste $</p></li>\r\n<li><p>the arduino controlled by eforth, search for this ter$</p></li>\r\n<li><p>amforth<br />\r\n<a href=\"https://amforth.sourceforge.net\">amforth.sourceforge.net</a></p></li>\r\n<li><p>flashforth<br />\r\n<a href=\"https://flashforth.com\">flashforth.com</a></p></li>\r\n<li><p>resources<br />\r\n<a href=\"https://arduino-forth.com\">arduino-forth.com</a><br />\r\n<a href=\"https://forth.org\">forth.org</a><br />\r\n<a href=\"https://forth.org/eforth.html\">forth.org/eforth.html</a><br />\r\n</p></li>\r\n</ul>\r\n',326,0,0,'CC-BY-SA','forth, arduino, history',0,0,1),
(3478,'2021-12-01','Audio Wiring Hack on a Classroom Podium',1093,'Listen in while I hack the wiring on our classroom podium for custom audio routing.','<p>In this episode I take you along for the ride as I hack the wiring in a classroom podium so that I can show musical scores on the Elmo document camera while playing audio through the podium\'s laptop VGA audio source. Without this hack, the students could either see the score, or they could hear the music, but not both. This simple hack installing two jumper wires allows them to see the score and hear the music at the same time, which is important in my classes. I could already do this by using a PDF music score on my laptop while playing the audio file, but this allows me to use a paper score and audio from my laptop at once. It essentially acts as an audio splitter, sending the audio signal to two channels at once.</p>\r\n\r\n<h2>Links</h2>\r\n\r\n<ul>\r\n <li>Music from Kimiko Ishizaka\'s <em>The Open Well-Tempered Clavier</em>: <a href=\"https://www.welltemperedclavier.org/\">https://www.welltemperedclavier.org/</a>, used by permission of its <a href=\"https://creativecommons.org/publicdomain/zero/1.0/\">CC0 1.0 Universal (CC0 1.0) Public Domain Dedication license</a>.</li>\r\n <li><a href=\"https://www.flickr.com/gp/137675441@N05/0K3EVq\">Pictures of the <em>Podium Audio Wiring Hack</em></a></li>\r\n</ul>\r\n\r\n',238,0,0,'CC-BY-SA','audio, wiring, higher education',0,0,1),
(3484,'2021-12-09','My vim setup with GnuPG',501,'My vim setup with the GnuPG vim plugin','<h2 id=\"using-the-gnupg-vim-plugin-to-edit-encrypted-files.\">Using the GnuPG vim plugin to edit encrypted files.</h2>\r\n<ul>\r\n<li><p>See show hpr3476 My mutt email setup<br />\r\n<a href=\"https://www.hackerpublicradio.org/eps.php?id=3476\" class=\"uri\">https://www.hackerpublicradio.org/eps.php?id=3476</a></p></li>\r\n<li><p>GnuPG Vim Plugin on vim.org<br />\r\n<a href=\"https://www.vim.org/scripts/script.php?script_id=3645\" class=\"uri\">https://www.vim.org/scripts/script.php?script_id=3645</a></p></li>\r\n<li><p>GnuPG Vim Plugin on Github<br />\r\n<a href=\"https://github.com/vim-scripts/gnupg.vim\" class=\"uri\">https://github.com/vim-scripts/gnupg.vim</a></p></li>\r\n</ul>\r\n<p><em>Line to directly clone from github</em></p>\r\n<pre><code> git clone https://github.com/vim-scripts/gnupg.vim</code></pre>\r\n<p>From <code>man 1 gpg-agent</code>:</p>\r\n<blockquote>\r\n<p>You should always add the following lines to your <code>.bashrc</code> or whatever initialization file is used for all shell invocations:</p>\r\n<pre><code>GPG_TTY=`tty`\r\nexport GPG_TTY</code></pre>\r\n<p>It is important that this environment variable always reflects the output of the tty command.</p>\r\n</blockquote>\r\n<p><em>.bashrc snippet</em></p>\r\n<pre><code> ## GPG Vim\r\n GPG_TTY=`tty`\r\n export GPG_TTY\r\n export EDITOR=vim</code></pre>\r\n<p><em>GnuPG folder structure</em></p>\r\n<pre><code> [mark@fedora-lt ~]$ tree .vim\r\n .vim\r\n &#x251C;&#x2500;&#x2500; plugin\r\n &#x2502; &#x2514;&#x2500;&#x2500; vim-gnupg\r\n &#x2502; &#x251C;&#x2500;&#x2500; autoload\r\n &#x2502; &#x2502; &#x2514;&#x2500;&#x2500; gnupg.vim\r\n &#x2502; &#x251C;&#x2500;&#x2500; doc\r\n &#x2502; &#x2502; &#x2514;&#x2500;&#x2500; gnupg.txt\r\n &#x2502; &#x251C;&#x2500;&#x2500; plugin\r\n &#x2502; &#x2502; &#x2514;&#x2500;&#x2500; gnupg.vim\r\n &#x2502; &#x2514;&#x2500;&#x2500; README.md\r\n &#x2514;&#x2500;&#x2500; spell\r\n &#x251C;&#x2500;&#x2500; en.utf-8.add\r\n &#x2514;&#x2500;&#x2500; en.utf-8.add.spl</code></pre>\r\n<p><em>vimrc</em></p>\r\n<pre><code>set tabstop=2 softtabstop=0 expandtab shiftwidth=2 smarttab textwidth=80\r\nsyntax on\r\nautocmd BufRead,BufNewFile *.log set filetype=logtalk\r\nset spell spelllang=en_us</code></pre>\r\n<p>Generate gpg full key<br />\r\n<code>gpg --full-generate-key</code></p>\r\n<p>or just a regular one, with less options<br />\r\n<code>gpg --gen-key</code></p>\r\n<p>Encrypt the file in question, with -r as the recipient<br />\r\nIn this case, I used part of the comment as the recipient</p>\r\n<p><em>Picture 1</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3484/picture001.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3484/picture001_thumbnail.png\" alt=\"Picture 1\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p>This is more like it.<br />\r\n<code>gpg -e -r test thisIsMyTestFile.txt</code></p>\r\n<p>Now test edit the file<br />\r\n<code>vim thisIsMyTestFile.txt.gpg</code></p>\r\n<p><em>Picture 2</em><br />\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3484/picture002.png\" alt=\"Picture 2\" /></p>\r\n<p>It is a good idea to shred the original text file</p>\r\n<pre><code> shred - overwrite a file to hide its contents, and optionally delete it\r\n -u deallocate and remove file after overwriting\r\n -v, --verbose, show progress</code></pre>\r\n<p>Example: <code>shred -u -v foo.txt</code></p>\r\n',318,11,0,'CC-BY-SA','vim, plugin, lightweight',0,0,1),
(3486,'2021-12-13','Unleash the true potential of GNU nano text editor',516,'Turn GNU nano text editor into a fancy, good looking & powerful editor','<p>Text editors are highly subjective and highly opinionated commodities. Everyone is aware of infamous rivalry between users of Emacs and Vi/Vim. Every single text editor has its own strengths and weaknesses. At the end of the day it\'s the question of your personal preferences and muscle memory when it comes to default key-bindings. Both Emacs and Vim have a learning curve. Steepness of that curve depends on the person\'s background and interests. Hey, but today I\'m not here to talk about Emacs and Vim. I\'m here to talk about a simple, easy to use and almost ever present text editor called <code>GNU nano</code>. So what exactly is this <code>nano</code> text editor? Well, according to documentation available on <code>GNU nano</code>\'s <a href=\"https://nano-editor.org/\">website</a>,</p>\r\n<blockquote>\r\n<p>GNU nano was designed to be a free replacement for the Pico text editor, part of the Pine email suite from The University of Washington. It aimed to \"emulate Pico as closely as is reasonable and then include extra functionality\".</p>\r\n</blockquote>\r\n<p>Pico and Pine email suites are still around so what was the need to create <code>nano</code> in the first place? The answer is license. Pico and Pine email suites nowadays are available under Apache-2.0 license but that always wasn\'t the case and this ambiguity in the original licensing terms of the Pico editor led to the creation of <code>nano</code>. It was first created in 1999 with the name TIP (an acronym for TIP Isn\'t Pico), by Chris Allegretta. The name was changed to <code>nano</code> on January 10th, 2000 to avoid a naming conflict with the existing Unix utility tip. The name comes from the system of SI prefixes, in which <code>nano</code> is 1000 times larger than pico. In February 2001, <code>nano</code> became a part of the GNU Project. BTW if you want to know more about SI prefixes, I\'d highly recommend you to listen to <a href=\"https://hackerpublicradio.org/eps.php?id=3454\">HPR episode 3453 - Engineering notation</a> by Ken Fallon.</p>\r\n<p><code>nano</code> is really small in footprint and is relatively easy to use compared to Emacs and Vim and perhaps this is the reason why you\'d invariably find it already installed on almost all GNU/Linux distributions. If you have ever used <code>nano</code> before you might have noticed that it looks kinda boring; there are no line-numbers nor there is any syntax highlighting and spell-checking also seems absent. But this is not true. <code>nano</code> has all of these features and even some more like regex searches, indentation, multiple buffers, available at its disposal. Then why does it come across as a plain Jane? The short answer is, I honestly don\'t know! For some unknown and obscure reasons many of <code>nano</code>\'s cool features are disabled by default. This results in <code>nano</code> coming across as a plain Jane little text editor that is uncool. And as I mentioned earlier, that is not true. But worry not! It is so darn easy to unleash the true potential of <code>nano</code> and make it shine. Are you ready? Great! Let\'s do it together then!</p>\r\n<p>First thing we need to to do is create a file with the name <code>.nanorc</code> in the <code>$HOME</code> directory. Open your terminal emulator and run,</p>\r\n<pre class=\"text\"><code>touch $HOME/.nanorc\r\n</code></pre>\r\n<p>We\'d also need to create a directory called <code>Nano_Backups</code> in our <code>Documents</code> directory. To do so run the following command,</p>\r\n<pre class=\"text\"><code>mkdir -p $HOME/Documents/Nano_Backups\r\n</code></pre>\r\n<p>Next open that <code>.nanorc</code> file and simply paste the following content in it,</p>\r\n<pre class=\"text\"><code>set atblanks\r\nset autoindent\r\nset backup\r\nset backupdir &quot;/home/USERNAME/Documents/Nano_Backups&quot;\r\nset boldtext\r\nset constantshow\r\nset cutfromcursor\r\nset indicator\r\nset linenumber
(3488,'2021-12-15','Binaural 3d audio recording, please listen at normal speed with good head phones.',302,'recorded November 19 2021 quick storm.','<p>Recorded November 19 2021 quick storm. Please search Binaural on HPR for similar recordings and description of procedure, enjoy and have a glorious 2022.</p>\r\n<h2 id=\"links\">Links</h2>\r\n<ul>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=0785\">hpr0785 :: binaural recording</a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=0792\">hpr0792 :: Binaural Recording</a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=2338\">hpr2338 :: Binaural recording 2 off to work</a></li>\r\n</ul>\r\n',110,101,0,'CC-BY-SA','Binaural, storm, thunder',0,0,1),
(3479,'2021-12-02','Linux Inlaws S01E49: Version Control Systems and why bother',3414,'Version Control Systems and why bother','<p>In this episode our two heroes contemplate the ins and outs of version\r\ncontrol systems (VCS) and how to maintain sanity using them. Particular focus\r\nis on the newer generation of such as git which enabled large-scale community\r\nprojects such as the Linux kernel, programming languages like Rust and Python\r\nand other shenanigans. Including a crash course on version control systems\r\n- you may credits at your local third-level education facility for listening\r\nto this episode. Just tell them the Inlaws sent you :-). Plus Martin reveals\r\nhis favourite Pay TV channel and his gun-buying habits being a minor. Don\'t\r\nmiss this episode if you\'re a minor and want to buy a gun in certain countries\r\n(details as part of the episode! :-).</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>V-Model: <a href=\"https://en.wikipedia.org/wiki/V-Model\" target=_blank>https://en.wikipedia.org/wiki/V-Model</a></li>\r\n<li>Mercurial: <a href=\"https://www.mercurial-scm.org\" target=_blank>https://www.mercurial-scm.org</a></li>\r\n<li>Concurrent Version Control System (CVS): <a href=\"https://cvs.nongnu.org\" target=_blank>https://cvs.nongnu.org</a></li>\r\n<li>Minix: <a href=\"https://www.minix3.org\" target=_blank>https://www.minix3.org</a></li>\r\n<li>Bazaar: <a href=\"https://bazaar.canonical.com/en\" target=_blank>https://bazaar.canonical.com/en</a></li>\r\n<li>Subversion (SVN): <a href=\"https://subversion.apache.org\" target=_blank>https://subversion.apache.org</a></li>\r\n<li>Git: <a href=\"https://git-scm.com\" target=_blank>https://git-scm.com</a></li>\r\n<li>Bitkeeper: <a href=\"https://www.bitkeeper.org\" target=_blank>https://www.bitkeeper.org</a></li>\r\n<li>IBM 390: <a href=\"https://www.ibm.com/ibm/history/exhibits/mainframe/mainframe_PP9000.html\" target=_blank>https://www.ibm.com/ibm/history/exhibits/mainframe/mainframe_PP9000.html</a></li>\r\n<li>gitea: <a href=\"https://gitea.io\" target=_blank>https://gitea.io</a></li>\r\n<li>Special K: <a href=\"https://en.wikipedia.org/wiki/Special_K\" target=_blank>https://en.wikipedia.org/wiki/Special_K</a></li>\r\n<li>Special K (song): <a href=\"https://en.wikipedia.org/wiki/Special_K_(song)\" target=_blank>https://en.wikipedia.org/wiki/Special_K_(song)</a></li>\r\n<li>Special K (former country, the Wikipedia page is slightly outdated): <a href=\"https://en.wikipedia.org/wiki/United_Kingdom\" target=_blank>https://en.wikipedia.org/wiki/United_Kingdom</a></li>\r\n<li>Imperium: <a href=\"https://www.imdb.com/title/tt4781612/?ref_=fn_al_tt_2\" target=_blank>https://www.imdb.com/title/tt4781612/?ref_=fn_al_tt_2</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','Version control systems, git, subversion, mercurial, bazaar, how to buy guns as a minor in NL',0,0,1),
(3483,'2021-12-08','Pinephone64 review',563,'Sigflup got a pinephone and wants to talk about it. ','<p>ringtone location: <code>/usr/share/sounds/freedesktop/stereo</code></p>\r\n\r\n<p>\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3483/hpr_pine.jpg\" /><br />\r\nGimp on a cellphone, for obvious reasons.</p>\r\n\r\n\r\n<h3>Links</h3>\r\n\r\n<ul>\r\n<li><a href=\"https://en.wikipedia.org/wiki/PinePhone\">wikipedia: https://en.wikipedia.org/wiki/PinePhone</a></li>\r\n<li><a href=\"https://www.pine64.org/pinephone/\">Official website: https://www.pine64.org/pinephone/</a></li>\r\n<li><a href=\"https://wiki.pine64.org/index.php/PinePhone\">PinePhone Wiki: https://wiki.pine64.org/index.php/PinePhone</a></li>\r\n</ul>\r\n',115,0,0,'CC-BY-SA','linux,cellphone,pinephone,mobie phone',0,0,1),
(3505,'2022-01-07','A DX with Hotel Bravo 9 Hotel November Tango',2890,'Ken (PA7KEN) and Beni (HB9HNT) talk about getting your HAM ticket in Switzerland','<h3>HAM Radio Organizations</h3>\r\n<p>\r\nThe HAM Page of the Swiss Federal Office of Communications, BAKOM: <a href=\"https://www.bakom.admin.ch/bakom/de/home/frequenzen-antennen/frequenznutzung-mit-oder-ohne-konzessionen/amateurfunk.html\">https://www.bakom.admin.ch/bakom/de/home/frequenzen-antennen/frequenznutzung-mit-oder-ohne-konzessionen/amateurfunk.html</a>\r\n</p>\r\n<p>\r\nUnion of Swiss Short Wave Amateurs, they manage the local associations and the use of the frequencies for relays and automated stations: <a href=\"https://www.uska.ch/en/\">https://www.uska.ch/en/</a>\r\n</p>\r\n\r\n<h3>Training</h3>\r\n\r\n<p>\r\nMost likely the best way to prepare for the exam is attending a preparation course from a local Association, of have a brother who did and forwarded all the background info and documents to me. ;) But apart from having a brother I did the following:\r\n</p>\r\n<p>\r\nThe online version of the books I read: <a href=\"https://www.darc.de/der-club/referate/ajw/darc-online-lehrgang/\">https://www.darc.de/der-club/referate/ajw/darc-online-lehrgang/</a> - again in German. They\'re mainly geared towards the German exams but the knowledge contained is useful for the Swiss exams, too.\r\n</p>\r\n<p>\r\nI mainly used the HamRadioTrainer to prepare for the exam. This is a Windows application which however works pretty well in wine. I was told that the Swiss questions are rather old, 2017ish.\r\n</p>\r\n<p>\r\nI was told that there are mobile apps with more recent questions but I couldn\'t be bothered to check whether they exist on F-Droid.\r\n</p>\r\n<p>\r\nThe BAKOM also has a site about the exams, containing PDFs with example questions, of course again everything in German: <a href=\"https://www.bakom.admin.ch/bakom/de/home/frequenzen-antennen/funkerpruefungen/amateurfunk-pruefungen.html\">https://www.bakom.admin.ch/bakom/de/home/frequenzen-antennen/funkerpruefungen/amateurfunk-pruefungen.html</a>\r\n</p>',288,43,0,'CC-BY-SA','Swiss,BAKOM,HamRadioTrainer,HB9',0,0,1),
(3482,'2021-12-07','Introduction to Post Apocalyptic Robotics Meta Technology',810,'Building robots from junk parts and tech prepping','<p><a href=\"https://solarbotics.net/bftgu/default.htm\" class=\"uri\">https://solarbotics.net/bftgu/default.htm</a><br />\r\n<a href=\"https://www.bitchute.com/video/jwD4sZhnXrEk/\" class=\"uri\">https://www.bitchute.com/video/jwD4sZhnXrEk/</a></p>\r\n<p>Hail to my Loyal Henchmen and fellow SuperVillains, welcome new recruits and greetings to the hackers of HPR.</p>\r\n<p>This is Mechatroniac the mechatronics maniac with the zeroth installment of Robot Warlords of the Apocalypse, where I will talk about post apocalyptic robotics and share my projects, philosophy and future ambitions.</p>\r\n<p>I am doing this podcast contribution for hacker public radio.</p>\r\n<p>hackerpublicradio.org</p>\r\n<p>After this has aired on HPR I will be adding video and to this presentation which will be uploaded to my channel at:</p>\r\n<p><a href=\"https://bitchute.com/channel/mechatroniac\" class=\"uri\">https://bitchute.com/channel/mechatroniac</a> point youtube-dl at it and download them all.</p>\r\n<p>Mechatronics is code, electronics and mechanics working together as a system. I am weak in all 3, but have built mini battlebot style robots completely from scratch, with every chassis part, every motor and wheel, and every circuit that drives them sourced for free from junk like discarded printers, dvds, tvs, computers and UPS.</p>\r\n<p>I am calling this ethos and the resultant aesthetic, Post Apocalyptic Robotics, that is robots that can be built by reclaiming existing post consumer products to create something new.</p>\r\n<p>Currently they are confined to smooth surfaces like battlebot arenas, but more rugged terrain bots are currently also being worked on, and I want to work towards autonomous and swarm robots as well.</p>\r\n<p>The recipes I release here, can be followed by anyone to build their own robots and devices, by simply gathering the required scrap units or similar as described; then disassembling, then finally reassembling into a new meta technological device.</p>\r\n<p>I hope that others will do the same, and come up with their own innovations and new recipes that can be added to our incipient swarms of meta-technological bots as they evolve ever more sophistication.</p>\r\n<p>Welcome to post apocalyptic robotics.</p>\r\n<p>Introduction to Post-Apocalypse Robotics Meta-technology</p>\r\n<p>Tech Prepping, Building a \'battlebot\' out of junk</p>\r\n<p>Meteors, asteroids, comets. Cataclysmic solar flares, massive volcanic eruptions and earthquakes triggering massive tsunamis, social unrest, runaway climate change, ransomware and EMPs attacks striking electric grids, deadly viral pandemics, mass hysteria, big boats blocking waterways, obscured malware in a systemd update, management engines at the heart of CPUs providing backdoors to Intel and AMD hardware at root -3 privilege... what could go wrong there?</p>\r\n<p>There are a large number of looming events which could collapse technological society as it is, wiping out most of the internet and shipping and transport and hopefully maybe even the government.</p>\r\n<p>Tech Prepping is more important than food prepping</p>\r\n<p>While most survivalist and prepper types concentrate on stacking cans of beans, seeds, fuel and ammo, the robot prepper will also be hoarding books on pdf, component datasheets, software libraries, breakout boards and every post EOL electronics product they can get their hands on.</p>\r\n<p>In a semi apocalyptic scenario where the trucks stop rolling, a lot of people who save seeds will be able to grow food in their communities, so food won\'t be such a big deal.</p>\r\n<p>There might even be some that figure out how to make petroleum from wood like mrteslonian channel on youtube.</p>\r\n<p>But a real crux will be analog, digital electronics technology, IT and mechatronics. Those communities with working electronics, mechatronics, and information technology infrastructure, will be at a distinct competitive advantage
(3489,'2021-12-16','Equality of structured errors',776,'Tuula talks about equality in Haskell','<p>Equality of structured errors</p>\r\n<h2 id=\"background\">Background</h2>\r\n<p>In previous episode, I built a system where error codes weren\'t defined in one huge type. This made compilation times faster and maintenance quite a bit more easier.</p>\r\n<h2 id=\"problem\">Problem</h2>\r\n<p>I wanted to write a test to see that parameters passed to <code>validatePatchApiPersonR</code> are validated correctly. <code>patchApiPersonR</code> is used by client to do partial updates on a <code>Person</code> entity. There\'s three different cases I wanted to check:</p>\r\n<ul>\r\n<li>trying to change life focus too soon (there\'s 5 year cooldown)</li>\r\n<li>trying to select same life focus that has already been selected</li>\r\n<li>trying to modify somebody else\'s avatar</li>\r\n</ul>\r\n<p>Code is shown below and the last 2 lines are the interesting ones. There I\'m using equality to compare if a given error exists in a list of errors created by <code>validatePatchApiPersonR</code>.</p>\r\n<pre><code>spec :: Spec\r\nspec = do\r\n describe &quot;people&quot; $ do\r\n describe &quot;life focus&quot; $ do\r\n describe &quot;Validating requests&quot; $ do\r\n it &quot;All errors are reported&quot; $ do\r\n forAll anyCompletelyFaultyRequest $\r\n \\(userE, personE, msg, date) -&gt;\r\n let res = validatePatchApiPersonR (userE ^. entityKeyL, userE ^. entityValL, personE, msg, date)\r\n newFocus = msg ^? patchPersonRequestLifeFocus . _Just . _Just\r\n in\r\n case res of\r\n V.Success _ -&gt;\r\n expectationFailure &quot;Invalid request was not detected&quot;\r\n\r\n V.Failure errs -&gt; do\r\n errs `shouldSatisfy` (\\xs -&gt; any (\\x -&gt; &quot;CanNotChangeLifeFocusSoSoon&quot; `isInfixOf` (pack $ show x)) xs)\r\n errs `shouldContain` [ canNotReselectSameLifeFocus newFocus ]\r\n errs `shouldContain` [ insufficientRights ]\r\n</code></pre>\r\n<h2 id=\"detour-on-equality\">Detour on equality</h2>\r\n<p>Equality in Haskell works slightly differently compared to for example C#. There is no built in, default implementation that gets used when the programmer hasn\'t written their own. If you want to compare equality, there needs to be implementation specific to your data types. This is done by making an instance of type class <code>Eq</code> (<a href=\"https://hackage.haskell.org/package/base-4.15.0.0/docs/Data-Eq.html\">https://hackage.haskell.org/package/base-4.15.0.0/docs/Data-Eq.html</a>).</p>\r\n<pre><code>class Eq a where\r\n (==) :: a -&gt; a -&gt; Bool\r\n (/=) :: a -&gt; a -&gt; Bool\r\n</code></pre>\r\n<p>There\'s two functions: <code>==</code> for equality and <code>/=</code> for inequality. You need to implement either one.</p>\r\n<h2 id=\"back-to-problem\">Back to problem</h2>\r\n<p><code>ECode</code> is our structured error code type and defined as follows (this is short recap of previous episode):</p>\r\n<pre><code>data ECode where\r\n ECode :: (ErrorCodeClass a, ToJSON a, Eq a, Show a) =&gt; a -&gt; ECode\r\n</code></pre>\r\n<p>It can wrap anything that has correct type class instances and you will always get <code>ECode</code> as a result. It hides the specific type of thing being wrapped and only functions defined in type classes are available.</p>\r\n<h2 id=\"first-try\">First try</h2>\r\n<p>Peel away <code>ECode</code> and compare what\'s inside and compare wrapped values:</p>\r\n<pre><code>instance Eq ECode where\r\n ECode a == ECode b =\r\n a == b\r\n</code></pre>\r\n<p>This will lead into a error \"Couldn\'t match expected type &#x2018;a&#x2019; with actual type &#x2018;a1&#x2019;. &#x201
(3487,'2021-12-14','Installing a cat door',1446,'Rho`n installs a cat door in his interior basement door','<h1>Synopsis</h1>\r\n<p>In today\'s episode, Rho`n installs a cat door in the basement door separating the finished side of the basement from the utility side. Follow along as he learns once again that it is best to read all the instructions before starting a project, and also learns that modern, inexpensive, interior doors are not made of wood.</p>\r\n\r\n<p>The following are the pictures taken during the project.</p>\r\n<style>\r\ndiv#figures {\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: wrap;\r\n justify-content: center;\r\n}\r\ndiv#figures figure { max-width: 492px; }\r\ndiv#figures img { max-width: 50vw; padding-bottom: 0.15em }\r\n</style>\r\n<div id=\"figures\">\r\n<figure>\r\n <a href=\"https://hackerpublicradio.org/eps/hpr3487/01.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3487/01-sm.jpg\"\r\n alt=\"Basement door laid out on a table with the cat door template applied\"></a>\r\n <figcaption>Basement door laid out on a table with the cat door template applied</figcaption>\r\n</figure>\r\n<figure>\r\n <a href=\"https://hackerpublicradio.org/eps/hpr3487/02.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3487/02-sm.jpg\"\r\n alt=\"Basement door after cutting a hole through it. Showing the hole and the interior of the door.\"></a>\r\n <figcaption>Basement door after cutting a hole through it. Showing the hole and the interior of the door.</figcaption>\r\n</figure>\r\n<figure>\r\n <a href=\"https://hackerpublicradio.org/eps/hpr3487/03.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3487/03-sm.jpg\"\r\n alt=\"View from the finished side of the basement showing the installed cat door.\"></a>\r\n <figcaption>View from the finished side of the basement showing the installed cat door.</figcaption>\r\n</figure>\r\n<figure>\r\n <a href=\"https://hackerpublicradio.org/eps/hpr3487/04.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3487/04-sm.jpg\"\r\n alt=\"View from the utility side of the basement showing the installed cat door.\"></a>\r\n <figcaption>View from the utility side of the basement showing the installed cat door.</figcaption>\r\n</figure>\r\n</div>\r\n<h1>Attribution</h1>\r\n\r\n<p>The transition sound used between audio clips is found on <a href=\"https://freesound.org/\">freesound.org</a>:<br>\r\nName: <a href=\"https://freesound.org/people/DanJFilms/sounds/529064/\">Harp Transition Music Cue</a><br>\r\nAuthor: <a href=\"https://freesound.org/people/DanJFilms/\">DanJFilms</a><br>\r\nLicense: <a href=\"https://creativecommons.org/publicdomain/zero/1.0/\">Creative Commons Zero</a></p>\r\n',293,0,0,'CC-BY-SA','Install, cat door',0,0,1),
(3492,'2021-12-21','Linux Inlaws S01E44: Pipewire Just another audio server Think again',3170,'Pipewire - Just another audio server? - Think again!','<p>In this episode - sadly missing Martin as he buggered off to do something\r\nelse - the remaining Inlaw hosts Wim Taymans, inventor and brain behind\r\nPipewire, a new approach to Linux audio. Don\'t miss out on this episode if\r\nyou\'re fed up with Pulseaudio (hello Martin :-) or find Jack just too\r\ncomplicated for every-day usage - you may see audio on Linux from a different\r\nperspective after this episode... Never mind those of you who are looking for\r\na crash-course on audio on Linux - this episode is for you!</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>Pipewire: <a href=\"https://github.com/PipeWire/pipewire\" target=_blank>https://github.com/PipeWire/pipewire</a></li>\r\n<li>gstreamer: <a href=\"https://gstreamer.freedesktop.org\" target=_blank>https://gstreamer.freedesktop.org</a></li>\r\n<li>ALSA: <a href=\"https://alsa-project.org/wiki/Main_Page\" target=_blank>https://alsa-project.org/wiki/Main_Page</a></li>\r\n<li>PulseAudio: <a href=\"https://www.freedesktop.org/wiki/Software/PulseAudio\" target=_blank>https://www.freedesktop.org/wiki/Software/PulseAudio</a></li>\r\n<li>Jack: <a href=\"https://jackaudio.org\" target=_blank>https://jackaudio.org</a></li>\r\n<li>eventfd: <a href=\"https://man7.org/linux/man-pages/man2/eventfd.2.html\" target=_blank>https://man7.org/linux/man-pages/man2/eventfd.2.html</a></li>\r\n<li>Rubik\'s Cube: <a href=\"https://www.rubiks.com/en-us\" target=_blank>https://www.rubiks.com/en-us</a></li>\r\n<li>And how to solve this: <a href=\"https://ruwix.com/the-rubiks-cube/advanced-cfop-fridrich\" target=_blank>https://ruwix.com/the-rubiks-cube/advanced-cfop-fridrich</a></li>\r\n<li>How to make Kefir: <a href=\"https://www.twopeasandtheirpod.com/how-to-make-kefir\" target=_blank>https://www.twopeasandtheirpod.com/how-to-make-kefir</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','Linux audio, Pipewire, PulseAudio, Jack, gstreamer, Rubik\'s Cube, Kefir',0,0,1),
(3499,'2021-12-30','Fixing a noisy blower motor',264,'I fix a noisy blower motor that I put off since last winter.','<p>A brief description of fixing a problem I put off from last winter, on the 2013 Hyundai Elantra.</p>\r\n<p><em>Motor with the electrical plug still attached</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3499/20211119_171709.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3499/20211119_171709_thumbnail.jpg\" alt=\"Motor with the electrical plug still attached\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>12 volt plug showing where to press the clip to remove it</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3499/20211120_134626.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3499/20211120_134626_thumbnail.jpg\" alt=\"12 volt plug showing where to press the clip to remove it\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Mess left by the lithium grease spray</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3499/20211119_172040.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3499/20211119_172040_thumbnail.jpg\" alt=\"Mess left by the lithium grease spray\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Broken clip: Don\'t try this</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3499/20211120_135727.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3499/20211120_135727_thumbnail.jpg\" alt=\"Broken clip: Don&#39;t try this\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Motor cage apart, showing the bearing</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3499/20211120_143842.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3499/20211120_143842_thumbnail.jpg\" alt=\"Motor cage apart, showing the bearing\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<!-- ![Motor with the electrical plug still attached.](20211119_171709.jpg) -->\r\n\r\n<!-- Motor with the electrical plug still attached. -->\r\n\r\n<!-- ![12 volt plug showing where to press the clip to remove it.](20211120_134626.jpg) -->\r\n\r\n<!-- 12 volt plug showing where to press the clip to remove it. -->\r\n\r\n<!-- ![Mess left by the lithium grease spray.](20211119_172040.jpg) -->\r\n\r\n<!-- Mess left by the lithium grease spray. -->\r\n\r\n<!-- ![Broken clip: Don\'t try this.](20211120_135727.jpg) -->\r\n\r\n<!-- Broken clip: Don\'t try this. -->\r\n\r\n<!-- ![Motor cage apart, showing the bearing.](20211120_143842.jpg) -->\r\n\r\n<!-- Motor cage apart, showing the bearing. -->\r\n\r\n<h2 id=\"attribution\">Attribution</h2>\r\n<p>The transition sound used between audio clips is found on <a href=\"https://freesound.org/\">freesound.org</a>:<br>\r\nName: <a href=\"https://freesound.org/people/juanto9889/sounds/414870\"> efectos de sonido cartoon &#xBB; transition </a><br>\r\nAuthor: <a href=\"https://freesound.org/people/juanto9889\">juanto9889</a><br>\r\nLicense: <a href=\"https://creativecommons.org/publicdomain/zero/1.0/\">Creative Commons Zero</a></p>\r\n',318,0,0,'CC-BY-SA','car,repair,maintenance,bearing',0,0,1),
(3508,'2022-01-12','Differences between C# and Haskell',1712,'Tuula talks about some of the differences between C# and Haskell','<p>This episode covers some of the differences between C# and Haskell. I\'m probably going to omit lot of things accidentally.</p>\r\n<ul>\r\n<li>Origin: practical language for solving real world problems vs. programming language research</li>\r\n<li>Main paradigm: object oriented vs purely functional</li>\r\n<li>Changing data: mutability vs. immutability</li>\r\n<li>Data structures: inheritance vs. composition</li>\r\n<li>Execution model: strict vs. nonstrict</li>\r\n<li>Side effects: anywhere vs. specifically marked areas in the code</li>\r\n</ul>\r\n<p>Thanks for listening, if you have any questions or comments, you can reach me via email or in fediverse, where I\'m <code>Tuula@tech.lgbt</code>. Or even better, you could record your own hacker public radio episode.</p>\r\n',364,107,0,'CC-BY-SA','haskell, c#, programming',0,0,1),
(3515,'2022-01-21','ADB and scrcpy',565,'Some useful tools for working with Android Devices','<h1 id=\"android-debugging\">Android Debugging</h1>\r\n<ul>\r\n<li><a href=\"https://developer.android.com/studio/command-line/adb\">Android Debug Bridge (adb) homepage</a></li>\r\n</ul>\r\n<h2 id=\"install-adb-tools\">Install ADB Tools</h2>\r\n<p>There are multiple guides online as to how to install, but I found <code>dnf install android-tools.x86_64 adb-enhanced.noarch</code> the easiest. Similar commands are available for the other distros. Use your package manager to search for <code>adb</code>.</p>\r\n<ul>\r\n<li><a href=\"https://www.xda-developers.com/install-adb-windows-macos-linux/\">https://www.xda-developers.com/install-adb-windows-macos-linux/</a></li>\r\n</ul>\r\n<h2 id=\"enable-developer-options\">Enable Developer options</h2>\r\n<p>Go to Settings. Usually via the pulldown menu from the top twice, and click the cog icon. Search for \'Build Number\', it\'s usually in Click on \'About Phone\' Click on \'Build Number\' seven times.</p>\r\n<p>Go back and then search for \'Developer options\' it\'s usually in the System section</p>\r\n<p>You\'ll need to turn on two features \'Android Debugging\' and \'ADB over network\'</p>\r\n<p>While we are at it, go back and then search for \'IP Address\' it\'s usually in the <code>About phone</code> section. You should see a IPv4 address eg: 192.168.1.100. Make note of the IP address as we\'ll use it later.</p>\r\n<h2 id=\"using-adb\">Using ADB</h2>\r\n<p>To get help use the command <code>adb help</code></p>\r\n<ul>\r\n<li>global options: Tell you how to connect to the phone</li>\r\n<li>general commands: Shows your devices, and gives help</li>\r\n<li>networking: Allows you to connect over the network but also to port forward and reverse traffic</li>\r\n<li>file transfer: The only reliable way to get files to and from your device.</li>\r\n<li>internal debugging: Shows how to control the server</li>\r\n</ul>\r\n<h3 id=\"usb\">USB</h3>\r\n<p>Plug your phone using a usb cable. There will be a notification and a popup to allow the connection.</p>\r\n<p>Run <code>adb shell</code> and all going well you should see your phone. Commands like <code>ls</code>, <code>cd</code>, and <code>find</code> work well. For example <code>find /storage/self/primary/</code>.</p>\r\n<h3 id=\"network\">Network</h3>\r\n<p>Unfortunately if you unplug your phone you no longer have a connection to it, but you can enable network access via tcp. Leave your phone connected to USB and then tell it to use a TCP/IP connection with the command <code>adb tcpip 5555</code>.</p>\r\n<p>Then connect to the phone using the phones IP address and port 5555, <code>adb connect 192.168.1.100:5555</code>. It should reply with a connected to message</p>\r\n<pre><code>$ adb connect 192.168.1.100:5555\r\nconnected to 192.168.1.100:5555</code></pre>\r\n<p>Now commands like <code>adb shell</code> should allow you to access the phone even if it\'s not physically connected via usb.</p>\r\n<h3 id=\"multiple-devices\">Multiple devices</h3>\r\n<p>Got multiple devices then you can connect them all in the same way as shown above. The only issue is you need to tell adb which one you want to address.</p>\r\n<p>The first thing you need to do is list the devices</p>\r\n<pre><code>$ adb devices -l\r\nList of devices attached\r\n192.168.1.100:5555 device product:XXXX model:XXXX device:XXXX transport_id:9\r\n192.168.1.101:5555 device product:YYYY:ZZZZ device:ZZZZ transport_id:14</code></pre>\r\n<p>The important bit is the <code>transport_id</code> at the end. You can then use the <code>adb</code> command as normal but specifying the <code>-t</code> option</p>\r\n<pre><code>-t: allocate a pty if on a tty (-tt: force pty allocation)</code></pre>\r\n<p>So for example <code>adb -t 14 shell</code> would connect to phone <em>YYYY</em></p>\r\n<p>So that\'s it for remote control from the shell, but what if you want to see and interact with the screen itself ?</p>\r\n<h2 id=\"remote-screen-sharing-with-scrcpy\">Remote screen sharing with <code>scrcpy</c
(3493,'2021-12-22','My First Spanish HPR Episode',302,'A short Spanish episode inspired by discussions about non-English episodes on the HPR mailing list.','<ul>\r\n<li>Mendoza, Argentina - <a href=\"https://en.wikipedia.org/wiki/Mendoza,_Argentina\">https://en.wikipedia.org/wiki/Mendoza,_Argentina</a></li>\r\n<li>Spanish (Castilian/Castellano) Language - <a href=\"https://en.wikipedia.org/wiki/Spanish_language\" class=\"uri\">https://en.wikipedia.org/wiki/Spanish_language</a></li>\r\n<li>Texto-Plano - <a href=\"https://texto-plano.xyz\" class=\"uri\">https://texto-plano.xyz</a></li>\r\n<li>El Podcast de Texto-Plano - <a href=\"https://podcast.texto-plano.xyz/\" class=\"uri\">https://podcast.texto-plano.xyz/</a></li>\r\n<li>SDF - <a href=\"https://sdf.org\" class=\"uri\">https://sdf.org</a></li>\r\n</ul>\r\n',152,0,0,'CC-BY-SA','spanish,languages,castellano,espanol,pubnix,textoplano,podcast',0,0,1),
(3498,'2021-12-29','Linux Inlaws S01E45: The Big Xmas New Year bash with the Grumpies',8076,'the same as the title so I\'m not going to repeat it','<p>In this end of year episode / Xmas bumper our two aging heroes host the Grumpy Old Coders\r\nonce again. Apart from having lots of fun, our four eclectic panelists discuss the year in\r\nreview and some obscure predictions the Inlaws made at the end of last year in S01E20 to\r\nsee if these became true or not. Plus a seriously long commercial break on mainframes\r\ndone by our own Chris (Arvind / Jim / IBM: If you\'re listening: the sponsor mail address\r\nis ibm_sponsor@linuxinlaws.eu). Plus some juicy competitive knowledge about some hyperscalers.\r\nBeans spilled right from the inside... In addition to cloud nightmares. So if you\'re into\r\nhorror after never mind beyond Halloween this is your episode... There might be the odd open source\r\nangle to this episode but we are not sure and this of course is purely by accident - just find out for yourself! :-)\r\n</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>Grumpy Old Coders (incuding the Darkside and Women in Tech episodes): <a href=\"https://grumpy-old-coders.org\" target=_blank>https://grumpy-old-coders.org</a></li>\r\n<li>Broken CentOS 8 promise: <a href=\"https://blog.centos.org/2020/12/future-is-centos-stream\" target=_blank>https://blog.centos.org/2020/12/future-is-centos-stream</a></li>\r\n<li>Mainframes and the cloud: <a href=\"https://www.forbes.com/sites/tomtaulli/2021/01/23/will-the-cloud-take-down-the-mainframe\" target=_blank>https://www.forbes.com/sites/tomtaulli/2021/01/23/will-the-cloud-take-down-the-mainframe</a></li>\r\n<li>Woman in the red dress: <a href=\"https://matrix.fandom.com/wiki/Woman_in_Red\" target=_blank>https://matrix.fandom.com/wiki/Woman_in_Red</a></li>\r\n<li>Goedel\'s theorems: <a href=\"https://en.wikipedia.org/wiki/G%C3%B6del%27s_incompleteness_theorems\" target=_blank>https://en.wikipedia.org/wiki/G%C3%B6del%27s_incompleteness_theorems</a></li>\r\n<li>Veritasium video on incompleteness: <a href=\"https://www.youtube.com/watch?v=HeQX2HjkcNo\" target=_blank>https://www.youtube.com/watch?v=HeQX2HjkcNo</a></li>\r\n<li>Bezos laughing after divorce: <a href=\"https://www.youtube.com/watch?v=MU8AyKO7qX4\" target=_blank>https://www.youtube.com/watch?v=MU8AyKO7qX4</a></li>\r\n<li>KGB (I): <a href=\"https://stackoverflow.com/questions/19904683/passing-a-kernel-global-buffer-to-a-local-function-in-opencl\" target=_blank>https://stackoverflow.com/questions/19904683/passing-a-kernel-global-buffer-to-a-local-function-in-opencl</a></li>\r\n<li>KGB (II): <a href=\"https://www.google.com/search?channel=fs&client=ubuntu&q=%22kellogs+greatest+beer%22\" target=_blank>https://www.google.com/search?channel=fs&client=ubuntu&q=%22kellogs+greatest+beer%22</a></li>\r\n<li>Shameless Zig plug (dedicated to Loris :-): <a href=\"https://ziglang.org\" target=_blank>https://ziglang.org</a></li>\r\n<li>TIOBE index: <a href=\"https://www.tiobe.com/tiobe-index\" target=_blank>https://www.tiobe.com/tiobe-index</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','Mainframes, IBM, Hyperscaler secrets, Rust, old men, programming languages',0,0,1),
(3495,'2021-12-24','Podcast Recommendation: The Retroist',92,'Podcast Recommendation: The Retroist number 243 - Die Hard','<p>Retroist Podcast Episode 243 (Die Hard)</p>\r\n<ul>\r\n<li><a href=\"https://retroist.com/retroist-die-hard-podcast\" class=\"uri\">https://retroist.com/retroist-die-hard-podcast<a/></li>\r\n<li><a href=\"https://archive.org/details/retroist-podcast-episode-243-die-hard\" class=\"uri\">https://archive.org/details/retroist-podcast-episode-243-die-hard</a></li>\r\n</ul>\r\n<p>A nostalgic look at the action film Die Hard, released in 1988. Also a look at whether or not Die Hard is a Christmas movie.</p>\r\n<ul>\r\n<li>Comments to this subject are welcome.</li>\r\n<li>Based on the book, Nothing Lasts Forever\r\n<ul>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Nothing_Lasts_Forever_(Thorp_novel)\" class=\"uri\">https://en.wikipedia.org/wiki/Nothing_Lasts_Forever_(Thorp_novel)</a></li>\r\n<li><a href=\"https://diehard.fandom.com/wiki/Nothing_Lasts_Forever\" class=\"uri\">https://diehard.fandom.com/wiki/Nothing_Lasts_Forever</a></li>\r\n</ul></li>\r\n<li>Bruce Willis was previously known for the TV Series, Moonlighting\r\n<ul>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Moonlighting_(TV_series)\" class=\"uri\">https://en.wikipedia.org/wiki/Moonlighting_(TV_series)</a></li>\r\n</ul></li>\r\n</ul>\r\n',318,75,0,'CC-BY-SA','retro,retroist,nostalgia,1988,die hard,bruce willis,podcast',0,0,1),
(3494,'2021-12-23','Recent Generator Repairs and Maintenance',1080,'I talk about my Generac 4000XL gasoline-powered generator and what I\'ve done to get it running right','<p>In this episode I talk about some work I\'ve done recently on my Generac 4000xl portable generator. Here are some images to accompany the episode. First a beefcake shot of the unit:</p>\r\n\r\n<p><img src=\"https://hackerpublicradio.org/eps/hpr3494/01Generac4000xl.jpeg\" /></p>\r\n\r\n\r\n<p>This is the power panel on the generator</p>\r\n<p><img src=\"https://hackerpublicradio.org/eps/hpr3494/02PowerPanel.jpeg\" /></p>\r\n\r\n<p>Here\'s the receptacle for the fat cable with a 4-prong plug. This goes right into my main electrical panel.</p>\r\n\r\n<p><img src=\"https://hackerpublicradio.org/eps/hpr3494/04ReceptableGoingtoBox.jpeg\" /></p>\r\n\r\n<p>Here\'s the interlock switch on my panel, which allows you to plug the generator into your panel safely.</p>\r\n\r\n<p><img src=\"https://hackerpublicradio.org/eps/hpr3494/03Interlock.jpeg\" /></p>\r\n\r\n<h2>Links</h2>\r\n\r\n<ul>\r\n <li>James Condon\'s YouTube Channel on small-engine repair (mostly generators) <a href=\"https://www.youtube.com/user/jcondon2007\">https://www.youtube.com/user/jcondon2007</a></li>\r\n <li>Wikipedia article about <a href=\"https://en.wikipedia.org/wiki/Hydrolock\">hydrolock</a> in engines\r\n</ul>\r\n\r\n',238,0,0,'CC-BY-SA','Engine repair, generators, electricity, emergency preparedness',0,0,1),
(3509,'2022-01-13','Linux Inlaws S01E46: The Matrix Project (Without Neo)',4315,'The Matrix Project Without Neo','<p>In this episode, the Inlaws are hosting Neil Johnson, VP of Engineering at Element. But this is\r\nnot just about this popular Matrix graphical user interface but rather about this federated communication\r\nnetwork dubbed as the next big thing after Mastodon and Discord, soon to take over the world (pretty\r\nmuch like the Inlaws themselves - it\'s gonna get crowded... :-).</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>The Matrix Foundation: <a href=\"https://matrix.org/foundation\" target=_blank>https://matrix.org/foundation</a></li>\r\n<li>Element: <a href=\"https://github.com/vector-im/element-web\" target=_blank>https://github.com/vector-im/element-web</a></li>\r\n<li>Synapse (Matrix reference implementation in Python): <a href=\"https://github.com/matrix-org/synapse\" target=_blank>https://github.com/matrix-org/synapse</a></li>\r\n<li>Dendrite (Matrix implementation in Gloang): <a href=\"https://github.com/matrix-org/dendrite\" target=_blank>https://github.com/matrix-org/dendrite</a></li>\r\n<li>Conduit (Matrix implementation in Rust): <a href=\"https://github.com/timokoesters/conduit\" target=_blank>https://github.com/timokoesters/conduit</a></li>\r\n<li>EU interoperability: <a href=\"https://ec.europa.eu/isa2/sites/default/files/eif_brochure_final.pdf\" target=_blank>https://ec.europa.eu/isa2/sites/default/files/eif_brochure_final.pdf</a></li>\r\n<li>Terry Pratchett: <a href=\"https://en.wikipedia.org/wiki/Terry_Pratchett#Works\" target=_blank>https://en.wikipedia.org/wiki/Terry_Pratchett#Works</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','Matrix, Element, federated social network, peer-to-peer communication',0,0,1),
(3496,'2021-12-27','How I record HPR Episodes',1707,'Some python to record short segments of audio.','<p><a href=\"https://gitlab.com/norrist/solocast\">https://gitlab.com/norrist/solocast</a></p>\r\n<h3 id=\"sample-scripttxt\">Sample script.txt</h3>\r\n<pre class=\"txt\"><code>This is a sample script for solocast.\r\nSeparate the segments with a blank line\r\n\r\nBulleted lists are OK, but keep the items together by not skipping a line\r\n- Item 1\r\n- Item 2\r\n\r\n### Markdown Formatting is OK\r\nBut the Formatting gets lost in the script\r\nso you can write show notes in loosely formatted markdown\r\n\r\nDon&#39;t have more than 1 blank line separating segments\r\n</code></pre>\r\n<h3 id=\"solocastpy\">solocast.py</h3>\r\n<pre class=\"python\"><code>#! /usr/bin/env python3\r\n\r\nimport click\r\nimport os\r\nfrom shutil import which\r\n\r\nscript_file = &quot;script.txt&quot;\r\nrecording_directory_name = &quot;Recordings&quot;\r\nrecording_format = &quot;wav&quot;\r\nscript_segments = {}\r\n\r\n\r\ndef test_sox_exists():\r\n try:\r\n assert which(&quot;sox&quot;)\r\n except AssertionError:\r\n print(&quot;Cant find sox. Install sox somewhere in your path.&quot;)\r\n exit(1)\r\n\r\n\r\ndef get_recording_file_name(slug):\r\n return f&quot;{recording_directory_name}/{slug}.{recording_format}&quot;\r\n\r\n\r\ndef project_prep():\r\n if not os.path.exists(recording_directory_name):\r\n os.makedirs(recording_directory_name)\r\n if not os.path.exists(f&quot;{recording_directory_name}/Archive&quot;):\r\n os.makedirs(f&quot;{recording_directory_name}/Archive&quot;)\r\n\r\n\r\ndef wait_for_input():\r\n click.echo(&quot;*&quot; * 40)\r\n _ = input(&quot;Press ENTER to Continue&quot;)\r\n\r\n\r\ndef add_slug_text(slug, text):\r\n script_segments[slug] = text\r\n\r\n\r\ndef recording_exists(slug):\r\n if os.path.isfile(get_recording_file_name(slug)):\r\n return True\r\n return False\r\n\r\n\r\ndef noise_profile_missing():\r\n if os.path.isfile(f&quot;{recording_directory_name}/noise.prof&quot;):\r\n return False\r\n return True\r\n\r\n\r\ndef truncate_audio(slug):\r\n recording = get_recording_file_name(slug)\r\n new_recording = f&quot;{recording_directory_name}/{slug}-truncated.{recording_format}&quot;\r\n click.echo(f&quot;truncating {recording}&quot;)\r\n\r\n SOX_CMD = (\r\n f&quot;sox -V2 {recording} {new_recording} silence -l 1 0.1 .1% -1 1.0 .1% stat&quot;\r\n )\r\n click.echo(SOX_CMD)\r\n os.system(SOX_CMD)\r\n os.system(\r\n f&quot; mv -v {recording} {recording_directory_name}/Archive/{slug}.{recording_format}&quot;\r\n )\r\n os.rename(new_recording, recording)\r\n review_audio(slug)\r\n\r\n\r\ndef play_audio(slug):\r\n recording = get_recording_file_name(slug)\r\n click.echo(f&quot;Playing {recording}&quot;)\r\n os.system(f&quot;play {recording}&quot;)\r\n review_audio(slug)\r\n\r\n\r\ndef delete_audio(slug):\r\n recording = get_recording_file_name(slug)\r\n os.remove(recording)\r\n\r\n\r\ndef review_audio(slug):\r\n review_menu = [&quot;(p)lay&quot;, &quot;(a)ccept&quot;, &quot;(r)eccord again&quot;, &quot;(t)runcate&quot;]\r\n click.echo(slug)\r\n for i in review_menu:\r\n click.echo(i)\r\n menu_action = input(&quot;&gt;&gt; &quot;)\r\n if menu_action == &quot;p&quot;:\r\n play_audio(slug)\r\n elif menu_action == &quot;a&quot;:\r\n exit()\r\n elif menu_action == &quot;r&quot;:\r\n delete_audio(slug)\r\n find_and_record_next()\r\n elif menu_action == &quot;t&quot;:\r\n truncate_audio(slug)\r\n else:\r\n review_audio(slug)\r\n\r\n\r\ndef record_audio(slug):\r\n new_recording = get_recording_file_name(slug)\r\n click.echo(f&quot;Creating {new_recording}&quot;)\r\n click.echo(&quot;press Enter to start then CRTL-C to quit&quot;)\r\n wait_for_input()\r\n os.system(f&quot;rec {new_recording}&quot;)\r\n\r\n\r\ndef record_silent_audio():\r\n silent_recording = f&quot;{recording_d
(3518,'2022-01-26','Linux Inlaws S01E47: BigBlueButton and NAT',3272,'Our two OAPs discuss running conferencing systems like BigBlueButton behind NAT','<p>In this episode of your favourite FLOSS podcast our two OAPs discuss the challenges of running\r\nconferencing systems like BigBlueButton behind a network address translation\r\n(NAT) configuration, something that the Inlaws have been struggeling (?) with\r\nfor quite some time but now have arrived a solution which might just work :-).\r\nIf you face similar challenges or just want to refresh your knowledge about\r\nintricate network architectures never mind their pitfalls, stay tuned. All\r\nwill be revealed (hopefully :-). But beware: This show is highly technical and\r\ngeek-only. Which may come in handy if you\'re not technical but suffer from\r\ninsomnia or similar sleep disorders - this is your show!</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>Network Address Translation (NAT): <a href=\"https://en.wikipedia.org/wiki/Network_address_translation\" target=_blank>https://en.wikipedia.org/wiki/Network_address_translation</a></li>\r\n<li>BigBlueButton (BBB): <a href=\"https://github.com/bigbluebutton/bigbluebutton\" target=_blank>https://github.com/bigbluebutton/bigbluebutton</a></li>\r\n<li>TURN server: <a href=\"https://gabrieltanner.org/blog/turn-server\" target=_blank>https://gabrieltanner.org/blog/turn-server</a></li>\r\n<li>STUN and more: <a href=\"https://en.wikipedia.org/wiki/STUN\" target=_blank>https://en.wikipedia.org/wiki/STUN</a></li>\r\n<li>Google TURN servers: <a href=\"https://gist.github.com/sagivo/3a4b2f2c7ac6e1b5267c2f1f59ac6c6b\" target=_blank>https://gist.github.com/sagivo/3a4b2f2c7ac6e1b5267c2f1f59ac6c6b</a></li>\r\n<li>Dehydrated: <a href=\"https://github.com/dehydrated-io/dehydrated\" target=_blank>https://github.com/dehydrated-io/dehydrated</a></li>\r\n<li>WebRTC: <a href=\"https://webrtc.org/getting-started/overview\" target=_blank>https://webrtc.org/getting-started/overview</a></li>\r\n<li>Parallels: <a href=\"https://www.imdb.com/title/tt3479316/?ref_=nv_sr_srsg_0\" target=_blank>https://www.imdb.com/title/tt3479316/?ref_=nv_sr_srsg_0</a></li>\r\n<li>Philip K. Dick\'s Vulcan Hammer: <a href=\"https://en.wikipedia.org/wiki/Vulcan%27s_Hammer\" target=_blank>https://en.wikipedia.org/wiki/Vulcan%27s_Hammer</a></li>\r\n<li>The Ice Road: <a href=\"https://www.imdb.com/title/tt3758814/?ref_=nm_flmg_act_7\" target=_blank>https://www.imdb.com/title/tt3758814/?ref_=nm_flmg_act_7</a></li>\r\n<li>Sorcerer: <a href=\"https://www.imdb.com/title/tt0076740/?ref_=fn_tt_tt_8\" target=_blank>https://www.imdb.com/title/tt0076740/?ref_=fn_tt_tt_8</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','BigBlueButton, Network Address Translation, TURN, STUN, WebRTC, Parallels, Vulcan\'s Hammer, The Ice ',0,0,1),
(3497,'2021-12-28','Jankilators.',1275,'Follow the wail of the janky scissor monster into the muddy flux of headtorch borderlands. ','<p>Three phase alternating current generated from an axial flux alternator.</p>\r\n<p>I did find plans which seem to describe themselves as open. I might get around to posting them at a web site, but that exists much less than other comprehensive banks of searchable information on the internet.</p>\r\n<p>Someone suggested some alternators constructed with as many wooden parts as possible, which makes the whole endeavour more accessible and energy efficient. Thank you HPR new year show, for that.</p>\r\n<p>Wind turbine towers are the difficult part, and obviously dangerous.</p>\r\n<p>Tiny generators are cool to cobble from discarded equipment junk.</p>\r\n<p>A solid axial alternator is easy and robust. They can channel a lot of power if the wires are thick enough. Gears exist.</p>\r\n<p>Pedal, and hang sacks.</p>\r\n',398,0,1,'CC-BY-SA','oscillators,complexity,flux,alternator,3phase,field,trees,sky',0,0,1),
(3502,'2022-01-04','New year Greetings and a short review of my new Juno PC',291,'I just ramble for a few minutes about my new Juno PC','<p>Hi to all HPR listeners this is a short show just to say Hi and a happy New Year to those in HPR land I may not have talked to over the Mumble marathon (and that is most of you). My main news is my new Juno PC which I got just before Christmas and It is a massive upgrade for me from my old Gen 3 i7 PC I was using. In real world tests it is about 5 times faster than my old PC and editing Audio and images is a breeze. I got the Brutus 5000 with a Ryzen 9 5900 CPU 32Gb RAM and a 1TB Nvme SSD. It came pre loaded with Ubuntu 20.04 but I installed Linux Mint 20.2 and after getting the details of the PPA for the Juno Drivers everything is working fine. Ports wise for a tiny PC it is OK but I have added a USB 3 powered Hub with 4 extra ports and in the new year will get one with a few more to help me tidy up the wiring snakes on the desk.</p>\r\n<p>For some reason it no longer sees any bootable USB drives at boot after pressing of the boot menu key so a bit of investigation is needed to get that to work again, but on the whole I am a happy camper.</p>\r\n<p>Well that\'s me for this show short as it was if you want more of my ramblings along with my fellow hosts Moss and Dale pop over to Distrohoppers\' Digest and see what we have been up to, we record a new show about once a month.</p>\r\n<ul>\r\n<li><p><a href=\"https://junocomputers.com/product/brutus-5000/\" class=\"uri\">https://junocomputers.com/product/brutus-5000/</a></p></li>\r\n<li><p><a href=\"https://distrohoppersdigest.blogspot.com/\" class=\"uri\">https://distrohoppersdigest.blogspot.com/</a></p></li>\r\n</ul>\r\n',338,0,0,'CC-BY-SA','Ubuntu, Linux Mint, Juno computers, Ryzen 5900, New Year Greetings',0,0,1),
(3503,'2022-01-05','Configuring Mumble',906,'In this episode we will show you how to connect to the HPR Community Room on Mumble.','<p>\r\nThe complete shownotes are available in <a href=\"/mumble-howto\">our mumble how-to</a>. \r\n</p>\r\n<p>\r\nWhen using Mumble <strong><em>you should always use a microphone and headset</em></strong> positioned close to your mouth but slightly off to the side.\r\n</p>\r\n<p>\r\nThe <a href=\"https://www.mumble.info/downloads/\">Mumble website offers download and install instructions</a> for different operating systems.\r\n</p>\r\n<p>\r\nOnce you have installed the client then connect to the <a href=\"mumble://chatter.skyehaven.net:64738/Hacker%20Public%20Radio?version=1.2.0\">HPR Room on Mumble</a>.\r\n<p>\r\nThere is a first run wizard that will step you through the process of configuring Mumble the first time. This will open up a series of configuration options.\r\n</p>\r\n<p>\r\nIt is <strong>very important</strong> that you set <strong>Push to Talk (PTT)</strong> and you <strong>Disable Text-To-Speech</strong>, as you will disturb the other people in the room if you select the other methods. It may seem to be working fine to you, but it <em>will</em> result in issues for the others.\r\n</p>\r\n<p>\r\nYou are expected to have a digital certificate when connecting to Mumble servers. An automatically created one is usually fine.\r\n</p>\r\n<p>\r\nOnce you have the Mumble client set up we can now start the process of connecting to the <a href=\"mumble://chatter.skyehaven.net:64738/Hacker%20Public%20Radio?version=1.2.0\">HPR Room on Mumble</a>.\r\n</p>\r\n<p>\r\nIf at any time you need to add the HPR server open mumble and press <strong>Server - Connect</strong>, press <strong>Add New...</strong>and enter the following information for the HPR server:\r\n</p>\r\n<ul>\r\n<li>Address: <strong>chatter.skyehaven.net</strong></li>\r\n<li>Port: 64738</li>\r\n<li>Username: <strong><em>Your Username</em></strong></li>\r\n<li>Label: chatter.skyehaven.net</li>\r\n</ul>\r\n<p>\r\nThink about your username a bit as if you register it on the server you will not be able to change it again.\r\n</p>\r\n<p>\r\nBefore connecting to any room it\'s good etiquette to make sure your audio is working correctly. The room <strong>Audio Test</strong> will allow you to speak and the <strong>OpieTheRepeatherBot</strong> will record your speech and after 10 seconds will play it back for you.\r\n</p>\r\n\r\n',30,0,0,'CC-BY-SA','mumble,hpr mumble, new year show',0,0,1),
(3761,'2023-01-02','HPR Community News for December 2022',2695,'HPR Volunteers talk about shows released and comments posted in December 2022','<style>\ntable td.shrink {\n white-space:nowrap\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nThere were no new hosts this month.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3739\" target=\"_blank\">3739</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2022-12-01</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3739\" target=\"_blank\">Multipactors for the masses.</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0398.html\" target=\"_blank\">one_of_spoons</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3740\" target=\"_blank\">3740</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2022-12-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3740\" target=\"_blank\">Batch File Variables; Nested Batch Files</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0198.html\" target=\"_blank\">Ahuka</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3741\" target=\"_blank\">3741</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2022-12-05</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3741\" target=\"_blank\">HPR Community News for November 2022</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3742\" target=\"_blank\">3742</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2022-12-06</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3742\" target=\"_blank\">Battery</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0030.html\" target=\"_blank\">Ken Fallon</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3743\" target=\"_blank\">3743</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2022-12-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3743\" target=\"_blank\">HPR News</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0391.html\" target=\"_blank\">Some Guy On The Internet</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3744\" target=\"_blank\">3744</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2022-12-08</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3744\" target=\"_blank\">Advent of code Day 1 - 4</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0382.html\" target=\"_blank\">Daniel Persson</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3745\" target=\"_blank\">3745</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2022-12-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3745\" target=\"_blank\">Pinecil walkthrough</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0318.html\" target=\"_blank\">Archer72</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3746\" target=\"_blank\">3746</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2022-12-12</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3746\" target=\"_blank\">Cpuinfo</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0078.html\" target=\"_blank\">Klaatu</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3747\" target=\"_blank\">3747</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2022-12-13</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3747\" target=\"_blank\">Twitter and Dinner with the Humans</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0377.html\" target=\"_blank\">Zen_Floater2</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org
(3504,'2022-01-06','James Webb Space Telescope',2718,'Andrew and Dave watch the launch of the JWST','<h2 id=\"overview\">Overview</h2>\r\n<p>On Christmas Day 2021 at 12:20 UTC the James Webb Space Telescope was launched. This is the largest telescope ever sent into space and the project has been delayed for many years. The entire astronomical community was very nervous about the launch and about the phase that will follow as the telescope is set up for use.</p>\r\n<p><a href=\"https://hackerpublicradio.org/correspondents/0268.html\" title=\"Andrew Conway\">Andrew Conway</a> was previously a professional Astronomer, and <a href=\"https://hackerpublicradio.org/correspondents/0225.html\" title=\"Dave Morriss\">Dave</a> is very interested in the subject as an amateur. They got together on Mumble to witness the launch, and the dialogue was recorded and is presented here.</p>\r\n<h2 id=\"the-jwst\">The JWST</h2>\r\n<p>Quote from <a href=\"https://en.wikipedia.org/wiki/James_Webb_Space_Telescope\" title=\"James Webb Space Telescope\">Wikipedia</a> (a page that is being updated as the project proceeds):</p>\r\n<blockquote>\r\n<p>The James Webb Space Telescope (JWST) is a space telescope developed by NASA with contributions from the European Space Agency (ESA), and the Canadian Space Agency (CSA). The telescope is named after James E. Webb, who was the administrator of NASA from 1961 to 1968 and played an integral role in the Apollo program. It is intended to succeed the Hubble Space Telescope as NASAs flagship mission in astrophysics. JWST was launched 25 December 2021 on Ariane flight VA256. It is designed to provide improved infrared resolution and sensitivity over Hubble, and will enable a broad range of investigations across the fields of astronomy and cosmology, including observations of some of the most distant events and objects in the Universe such as the formation of the first galaxies, and allowing detailed atmospheric characterization of potentially habitable exoplanets.</p>\r\n<p>JWSTs primary mirror, the Optical Telescope Element, consists of 18 hexagonal mirror segments made of gold-plated beryllium which combine to create a 6.5 meter (21 ft 4 inch) diameter mirror considerably larger than Hubbles 2.4 m (7.9 ft) mirror. Unlike Hubble, which observes in the near ultraviolet, visible, and near infrared (0.11.0 μm) spectra, JWST will observe in a lower frequency range, from long-wavelength visible light (red) through mid-infrared (0.628.3 μm). This will enable it to observe high-redshift objects that are too old and too distant for Hubble. The telescope must be kept very cold to observe in the infrared without interference, so it will be deployed in space near the SunEarth L2 Lagrange point, about 1.5 million kilometers (930,000 mi) from Earth. A large sunshield made of silicon- and aluminum-coated Kapton will keep its mirror and instruments below 50 K (223 °C; 370 °F).</p>\r\n<p>The NASA Goddard Space Flight Center (GSFC) in Maryland managed the development and the Space Telescope Science Institute is operating JWST. The prime contractor was Northrop Grumman.</p>\r\n<p>Development began in 1996 for a launch that was initially planned for 2007 with a US$500 million budget. There were many delays and cost overruns, including a major redesign in 2005, a ripped sunshield during a practice deployment, a recommendation from an independent review board, the COVID-19 pandemic, issues with the Ariane 5 rocket and the telescope itself, and communications issues between the telescope and the launch vehicle. Concerns among the involved scientists and engineers about the launch and deployment of the telescope have been well-described.</p>\r\n<p>Construction was completed in late 2016, when an extensive testing phase began. JWST was launched 12:20 UTC 25 December 2021 by an Ariane 5 launch vehicle from Kourou, French Guiana and was released from the upper stage 27 minutes later. The telescope was confirmed to be receiving power, and as of December 2021 is traveling to its target destination.</p>\r\
(3506,'2022-01-10','HPR CONTEST 2022 01',119,'I give away 50$ prize !','<h3 id=\"upload-today\">Upload today!</h3>\r\n<p><a href=\"https://hackerpublicradio.org/calendar.php\" class=\"uri\">https://hackerpublicradio.org/calendar.php</a></p>\r\n<h3 id=\"rules\">RULES:</h3>\r\n<ul>\r\n<li>only new host or existing host interviewing a 3rd party</li>\r\n<li>I pick the winner</li>\r\n<li>don\'t abuse the system to win the prize ;P</li>\r\n</ul>\r\n',36,0,1,'CC-BY-SA','contest',0,0,1),
(3529,'2022-02-10','Linux Inlaws S01E48: Year Two of the Five Year Plan',3127,'The two ageing heroes discuss the past year in review','<p>Right into the third year of the first five-year plan our two ageing heroes\r\ndiscuss the past year in review (blatantly stealing this concept from other\r\npopular podcasts), focussing on the hotter episodes of second year and\r\nprogress with increasing the number of active listeners from two to five and\r\nbeyond. Also, major fuck-ups and lessons learned from them are revealed\r\nincluding some ranting about badly designed and implemented software never\r\nmind documentation.</p>\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>Shameless self-promoting link to the Redis presentation at the 2021 MiniDebConf in Regensburg (among other things): <a href=\"https://meetings-archive.debian.net/pub/debian-meetings/2021/MiniDebConf-Regensburg\" target=_blank>https://meetings-archive.debian.net/pub/debian-meetings/2021/MiniDebConf-Regensburg</a></li>\r\n<li>Grumpy Old Coders: <a href=\"https://grumpy-old-coders.org\" target=_blank>https://grumpy-old-coders.org</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','2021, review, communism, five year plan, Grumpy Old Coders, MiniDebConf',0,0,1),
(3514,'2022-01-20','Hacking Stories: Soft Drink',1270,'I talk about old pentest stories','<p>Mass unlock/powershell</p>\r\n<p>Link to <a href=\"https://github.com/freeload101/SCRIPTS/blob/ab7f96678e488f7ac6209ac45d4cfe8ca090920b/Windows_Powershell_ps/NOTES.ps1#L175\">NOTES.ps1</a></p>\r\n',36,0,1,'CC-BY-SA','hacking stories',0,0,1),
(3535,'2022-02-18','template Haskell',2849,'turturto talks how she\'s using template Haskell to cut down amount of code she writes','<p>There\'s certain amount of boilerplate code in my game that keeps repeating time after time. I can\'t quite remove it, but I can hide it with template haskell.</p>\r\n<h2 id=\"newtype-recap\">newtype recap</h2>\r\n<p>I\'ll be using <code>PlanetName</code> as an example throughout the show. <code>newtype</code> is Haskell\'s way of defining a new type, that wraps around an old type. This lets us to give better meaning to the wrapped type. Instead of talking about <code>Text</code>, we can talk about <code>PlanetName</code> and we won\'t accidentally mix it up with <code>StarName</code> or <code>ContentsOfAlexandrianLibrary</code>. It comes with no performance cost at all, as the wrapping is removed during the compilation.</p>\r\n<p>Below is how our <code>PlanetName</code> is defined:</p>\r\n<pre><code>newtype PlanetName\r\n = MkPlanetName {_unPlanetName :: Text}\r\n deriving (Show, Read, Eq)\r\n</code></pre>\r\n<p>It has:</p>\r\n<ul>\r\n<li>type constructor <code>PlanetName</code></li>\r\n<li>data constructor <code>MkPlanetName</code></li>\r\n<li>single field <code>_unPlanetName</code></li>\r\n<li>type for that field <code>Text</code></li>\r\n<li>deriving clause, telling compiler to automatically generate <code>Show</code>, <code>Read</code> and <code>Eq</code> instances</li>\r\n</ul>\r\n<p>If it were wrapping a <code>Integer</code>, we would add <code>Ord</code> and <code>Num</code> instances too.</p>\r\n<p>These instances give us some basic functions that we can use to turn out value into <code>String</code> and back or compare two values to see if they\'re equal or not. <code>Ord</code> lets us compare their relative size and <code>Num</code> adds some basic arithmetics like addition and subtraction.</p>\r\n<p>Remember, type constructor is used when talking about the type (function signatures, declaring type of a value, etc.), while data constructor is used to create values of the type (\"Earth\", \"Mars\", etc.). <code>isPlanet :: PlanetName -&gt; Bool</code> states that <code>isPlanet</code> function takes one parameter of type <code>PlanetName</code> and returns value of type <code>Bool</code>. <code>planet = MkPlanetName \"Earth\"</code> creates a new value <code>planet</code>, that has type <code>PlanetName</code> and which value is <code>MkPlanetName \"Earth\"</code>.</p>\r\n<h2 id=\"boilerplate\">Boilerplate</h2>\r\n<p>When <code>PlanetName</code> is defined, I need to add some instances by hand: <code>IsString</code>, <code>ToJSON</code>, <code>FromJSON</code>, <code>PersistField</code> and <code>PersistFieldSql</code>.</p>\r\n<p><code>IsString</code> lets me use string literals in code, without having to call the data constructor. Compiler is smart enough to infer from context if string I typed should be <code>PlanetName</code> or something else.</p>\r\n<p><code>ToJSON</code> and <code>FromJSON</code> are used to turn value to and from json for transferring back and forth between client and server. In json our value is just simple string, but we still need to program that transformation.</p>\r\n<p><code>PersistFieldSql</code> tells Persistent (database layer I\'m using) what type of database field should be created to hold this data in database.</p>\r\n<p><code>PersistField</code> contains functions for serializing our value to database and loading it from there.</p>\r\n<p>Below is full code that I want to abstract out as much as I can:</p>\r\n<pre><code>newtype PlanetName\r\n = MkPlanetName {_unPlanetName :: Text}\r\n deriving (Show, Read, Eq)\r\n\r\ninstance IsString PlanetName where\r\n fromString = (MkPlanetName . fromString)\r\n\r\ninstance ToJSON PlanetName where\r\n toJSON = (toJSON . _unPlanetName)\r\n\r\ninstance FromJSON PlanetName where\r\n parseJSON = (withText &quot;PlanetName&quot;) (return . MkPlanetName)\r\n\r\ninstance PersistField PlanetName where\r\n toPersistValue (MkPlanetName s) = PersistText s\r\n fromPersistValue (PersistText s) = (Ri
(3516,'2022-01-24','Rant about RX',1303,'This is a rant mostly about prescriptions and health care','<p>It\'s a rant mostly about prescriptions and health care</p>\r\n',36,100,1,'CC-BY-SA','rant',0,0,1),
(3507,'2022-01-11','USB Turntable fix and sound journey',528,'USB Turntable fix and sound journey with arecord, asound and ffmpeg','<p>Partial list of albums</p>\r\n<ul>\r\n<li>Journey - Frontiers</li>\r\n<li>Journey - Evolution</li>\r\n<li>Journey - Greatest Hits</li>\r\n<li>Journey - Departure</li>\r\n<li>Chicago - 2 albums - unknown titles</li>\r\n<li>John Denver - Rocky Mountain Christmas</li>\r\n<li>Inside Star Trek (1976)\r\n<ul>\r\n<li>SIDE I Inside Star Trek Star Trek Theme William Shatner Meets Captain Kirk The Origin of Spock Sarek\'s Son Spock The Questor Affair</li>\r\n<li>SIDE II The Enterprise Runs Aground McCoy\'s Rx for Life The Star Trek Philosophy Asimov\'s World of Science Fiction A Letter From a Network Censor The Star Trek Dream Ballad I/Ballad II)*</li>\r\n</ul></li>\r\n</ul>\r\n<p><em>Inside Star Trek album: Cover</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3507/image_001.png\"><img\r\nsrc=\"https://hackerpublicradio.org/eps/hpr3507/image_001_thumbnail.png\"\r\nalt=\"Inside Star Trek album: Cover\" /></a> <br/><small><small><em>Click the\r\nthumbnail to see the full-sized image</em></small></small> - - </p>\r\n<p><em>Inside Star Trek album: Contents</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3507/image_002.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3507/image_002_thumbnail.png\" alt=\"Inside Star Trek album: Contents\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small> - - </p>\r\n<p>I found a turntable at the thrift store, and the spindle ran, but the platter did not. The belt had slipped off, and here is the fix.</p>\r\n<ul>\r\n<li><a href=\"https://www.youtube.com/watch?app=desktop&amp;v=rXkOoaIVsvE\" class=\"uri\">https://www.youtube.com/watch?app=desktop&amp;v=rXkOoaIVsvE</a></li>\r\n</ul>\r\n<p><em>How to remove platter</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3507/image_003.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3507/image_003_thumbnail.png\" alt=\"How to remove platter\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small> - - </p>\r\n<p><em>Belt placement</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3507/image_004.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3507/image_004_thumbnail.png\" alt=\"Belt placement\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small> - - </p>\r\n<h2 id=\"routing-audio-from-a-usb-turntable-to-hdmi-using-a-raspberry-pi\">Routing Audio from a USB Turntable to HDMI using a Raspberry Pi</h2>\r\n<ul>\r\n<li><a href=\"https://www.rickmakes.com/routing-audVmmsio-from-a-usb-turntable-to-hdmi-using-a-raspberry-pi\" class=\"uri\">https://www.rickmakes.com/routing-audVmmsio-from-a-usb-turntable-to-hdmi-using-a-raspberry-pi</a></li>\r\n</ul>\r\n<p>Send input to output</p>\r\n<pre><code>alsaloop -t 500000 -C hw:CARD=CODEC,DEV=0 -P default:CARD=b1</code></pre>\r\n<h2 id=\"alsaloop-man-page\">alsaloop man page</h2>\r\n<ul>\r\n<li><p><a href=\"https://linux.die.net/man/1/alsaloop\" class=\"uri\">https://linux.die.net/man/1/alsaloop</a></p>\r\n<p>-t <usec> | --tlatency=<usec> Requested latency in usec (1/1000000sec).</p></li>\r\n</ul>\r\n<p>Parameter b1 is found by</p>\r\n<pre><code>pi@retropie:~ $ aplay -l\r\n**** List of PLAYBACK Hardware Devices ****\r\ncard 0: b1 [bcm2835 HDMI 1], device 0: bcm2835 HDMI 1 [bcm2835 HDMI 1]</code></pre>\r\n<h2 id=\"raspberry-pi-as-a-usb-audio-capture-device\">Raspberry Pi as a USB audio capture device</h2>\r\n<ul>\r\n<li><p><a href=\"https://scruss.com/blog/2012/11/20/raspberry-pi-as-a-usb-audio-capture-device\" class=\"uri\">https://scruss.com/blog/2012/11/20/raspberry-pi-as-a-usb-audio-capture-device</a></p>\r\n<p>arecord -D \'pulse\' -V stereo -c 2 -f dat -d 900 out.wav</p>\r\n<p>arecord -D \'hw:CARD=CODEC,DEV=0\' -V stereo -c 2 -f dat -d 900 out.wav</p></li>\r\n</ul>\r\n<p>Used <code>hw:CARD=CODEC,DEV=0</code> derived from \'arecord -L\'</p>\r\n<pre><code>hw:CARD=CODEC,DEV=0\r\nUSB Audio COD
(3511,'2022-01-17','Podman like Vagrant',1160,'This is how I use Podman on the desktop','<p>I used to use Vagrant to spin up minimal virtual machines when I needed to test code on a different distro than what I ran. Lately I\'ve switched to <a href=\"https://podman.io\" target=\"_blank\">Podman</a>.</p>\r\n\r\n<p>Install Podman with your distribution\'s package manager.</p>\r\n\r\n<p>Configure it:</p>\r\n\r\n<pre><code>\r\n$ sudo --add-subuids 200000-265536 \\\r\n--add-subgids 200000-265536 \\\r\n$USER\r\n</code></pre>\r\n\r\n<p>Create a directory to share data between your container and your localhost:</p>\r\n\r\n<pre><code>\r\n$ mkdir data\r\n</code></pre>\r\n\r\n<p>Run a container, with your <strong>.&#47;data</strong> directory mapped to <strong>&#47;storage</strong> in the container:</p>\r\n\r\n<pre><code>\r\n$ podman run -it --volume ./data:/storage:Z busybox\r\n</code></pre>\r\n\r\n\r\n',78,8,0,'CC-BY-SA','containers, podman, docker, vagrant',0,0,1),
(3512,'2022-01-18','Auld Acquaintance',659,'flappin gums aboot auld hardware and how I use it.','<p>Toshiba Satellite L455-S5000<br />\r\n<a href=\"https://www.ifixit.com/Device/Toshiba_Satellite_L455-S5975\" class=\"uri\">https://www.ifixit.com/Device/Toshiba_Satellite_L455-S5975</a></p>\r\n<p>The script!</p>\r\n<pre><code>#!/bin/bash\r\n\r\n# target dir is ~/Photos/YYYY-MM-DD_Hm\r\ntargetDir=&quot;/home/$USER/Photos/$(date +&quot;%F_%H%M&quot;)&quot;\r\n\r\n# create the dir\r\nmkdir $targetDir\r\n\r\n# cd to dir\r\ncd $targetDir\r\n\r\n# kill all gphoto stuff\r\npkill -f gphoto2\r\n\r\n# get the files\r\ngphoto2 --get-all-files\r\n\r\n# delete all files on camera recursively\r\ngphoto2 -DR</code></pre>\r\n',243,0,0,'CC-BY-SA','auld hardware, photography',0,0,1),
(3513,'2022-01-19','HB9HNT and PA7KEN on SOTA, Summits on the Air',2595,'Summits on the Air is the combination of mountain climbing and amateur radio','<h2 id=\"links\">Links</h2>\r\n<p>You\'ll find further information under the following links:</p>\r\n<ul>\r\n<li><a href=\"https://de.wikipedia.org/wiki/Summits_on_the_Air\">Summits on the Air on Wikipedia</a></li>\r\n<li><a href=\"https://www.sota.org.uk/\">The main SOTA website</a></li>\r\n<li><a href=\"https://sotawatch.sota.org.uk/en/\">SotaWatch 3</a> where you post spots and alerts</li>\r\n<li><a href=\"https://www.sotadata.org.uk/en/\">SotaData</a> where you post your activation and chaser reports to claim points</li>\r\n<li><a href=\"https://reflector.sota.org.uk/\">SOTA Reflector</a> the SOTA internet forums</li>\r\n<li><a href=\"https://sotl.as\">SOTLAS</a> a map of SOTA summits with activations and other info</li>\r\n</ul>\r\n',288,0,1,'CC-BY-SA','ham, ham radio, hamradio, sota',0,0,1),
(3521,'2022-01-31','Upgrades to Acer Aspire 5 Slim',344,'Upgrades to Aspire 5 Slim and Specs','<h3 id=\"upgrades-to-aspire-5-slim-a515-43-r19l\">Upgrades to Aspire 5 Slim A515-43-R19L</h3>\r\n<p>Replacement for the Acer Aspire 5750</p>\r\n<p>Aspire A515-43 How to Install an Additional Hard Drive<br />\r\n<a href=\"https://www.youtube.com/watch?v=XiadRhJ70Rs\" class=\"uri\">https://www.youtube.com/watch?v=XiadRhJ70Rs</a></p>\r\n<h4 id=\"specs\">Specs</h4>\r\n<pre><code>{\r\n CPU: AMD Ryzen 3 3200U\r\n GPU: AMD Radeon RX Vega 3\r\n Display: 15.6&#x201D;, Full HD (1920 x 1080), IPS\r\n Storage: 128GB SSD, NMVE\r\n RAM: 4GB DDR4, upgradeable to 32Gb\r\n Weight: 1.90 kg (4.2 lbs)\r\n Ports and connectivity\r\n 2x USB Type-A 2.0\r\n 1x USB Type-A 3.2 Gen 1 (5 Gbps)\r\n HDMI\r\n}</code></pre>\r\n<h4 id=\"why\">Why?</h4>\r\n<ul>\r\n<li>The system would randomly kick me out, back to the login screen.</li>\r\n<li>This was due to low RAM (4Gb) and high RAM usage from Firefox</li>\r\n</ul>\r\n<h4 id=\"what\">What?</h4>\r\n<ul>\r\n<li>RAM: 16Gb DDR4</li>\r\n<li>HD: 500Gb spinning drive</li>\r\n</ul>\r\n<h4 id=\"other-uses-for-the-upgrade\">Other uses for the upgrade</h4>\r\n<ul>\r\n<li>Room for Virtual Machines</li>\r\n</ul>\r\n<h4 id=\"future-upgrade\">Future upgrade</h4>\r\n<ul>\r\n<li>SSD</li>\r\n</ul>\r\n<p><em>Screw locations</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3521/image_001.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3521/image_001_thumbnail.png\" alt=\"Screw locations\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Inside the laptop</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3521/image_002.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3521/image_002_thumbnail.png\" alt=\"Inside the laptop\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Power/Battery plug location</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3521/image_003.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3521/image_003_thumbnail.png\" alt=\"Power/Battery plug location\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Legend for inside the laptop</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3521/image_004.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3521/image_004_thumbnail.png\" alt=\"Legend for inside the laptop\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n',318,57,0,'CC-BY-SA','laptop, hardware, hardware upgrades, RAM, hard drive',0,0,1),
(3517,'2022-01-25','Hp stream laptop with Lubuntu 20.04',2257,'Laptop update','<p>Just a simple check of an old laptop with update</p>\r\n',129,0,0,'CC-BY-SA','Hp stream,Lubuntu,geko,Linux,pine64',0,0,1),
(3519,'2022-01-27','Rust 101: Episode 2 - Rolling With the Errors',3234,'In this episode, BlacKernel helps you construct a simple dice rolling application in rust.','<p>GitLab Repository: <a href=\"https://gitlab.com/BlacKernel/rust-roller\">https://gitlab.com/BlacKernel/rust-roller</a></p>\r\n<h2 id=\"rust-roller-dice-roller-tutorial-application\">Rust-Roller Dice Roller Tutorial Application</h2>\r\n<p>This is a simple dice rolling application that follows along with my <a href=\"https://hackerpublicradio.org\">Hacker Public Radio</a> course on learning the <a href=\"https://rust-lang.org\">rust programming language</a>.</p>\r\n<p>I will attempt to make the commits follow the episodes pretty closely with one commit after every episode with the episode number in the commit message.</p>\r\n<h3 id=\"usage\">Usage:</h3>\r\n<p><code>rust-roller &lt;number-of-dice&gt; &lt;number-of-sides-per-die&gt;</code></p>\r\n<h3 id=\"output\">Output:</h3>\r\n<p><code>Dice: &lt;value-of-die-1&gt; &lt;value-of-die-2&gt; ...</code></p>\r\n<p><code>Total: &lt;sum-of-all-dice-values&gt;</code></p>\r\n<hr />\r\n<h2 id=\"list-of-episodes\">List of Episodes</h2>\r\n<p><a href=\"https://hackerpublicradio.org/eps.php?id=3426\">Rust 101: Episode 0 - What in Tarnishing?</a></p>\r\n<p><a href=\"https://hackerpublicradio.org/eps.php?id=3453\">Rust 101: Episode 1 - Hello, World!</a></p>\r\n<p><a href=\"https://hackerpublicradio.org/eps.php?id=3519\">Rust 101: Episode 2 - Rolling With the Errors</a></p>\r\n<hr />\r\n<p>Contact Info:</p>\r\n<p><a href=\"https://nixnet.social/BlacKernel\">at blackernel at nixnet dot social</a></p>\r\n<p><a href=\"mailto@izzyleibowitz@pm.me\">izzyleibowitz at pm dot me</a></p>\r\n',396,25,1,'CC-BY-SA','rust, programming, dice, learning',0,0,1),
(3522,'2022-02-01','Set up your Robot Building Lab and build a $0 Robot Platform',1580,'Ep 1 of Robot Warlords of the Apocalypse, build a free robot platform/crash buggy from old printers ','<h2 id=\"be-the-assimilator-not-the-assimilated\"><em>be the assimilator not the assimilated</em></h2>\r\n<h2 id=\"setting-up-your-robot-building-lab-and-building-your-first-platform-crash-buggy.\">Setting up your robot building lab and building your first platform/ crash buggy.</h2>\r\n<h3 id=\"getting-started\">Getting started</h3>\r\n<ol type=\"a\">\r\n<li>stuff to buy:<br />\r\n\r\n<ul>\r\n<li>order Arduino Uno or kit (recommended)<br />\r\nKit is highly recommended because you can work through projects for the various sensors and relays and gain experience using sensors. This makes it easier to integrate sensors into your robot, enabling it to more effectively interact with it\'s environment. Kit should come with a case, booklet, and have links to the code involved.</li>\r\n<li>order extra Arduinos (for when you blow up the first one)</li>\r\n<li>small machine screws of various lengths with nuts and washers</li>\r\n<li>18650 4 cell battery compartment</li>\r\n<li>2 18650 1 cell compartments*</li>\r\n<li>18650 chargers (wavgat) - these plug into a usb device</li>\r\n<li>solder/flux/solder sucker (tree sap)</li>\r\n<li>perfboard</li>\r\n<li>extra dupont wires (male to male)</li>\r\n<li>extra resistors</li>\r\n<li>optional\r\n<ul>\r\n<li>ultrasonic sensors (or hack out of something)</li>\r\n<li>mp3 module</li>\r\n</ul></li>\r\n<li>L298N h-bridge modules</li>\r\n</ul></li>\r\n<li>get tools and acc:\r\n<ul>\r\n<li>solder station</li>\r\n<li>computer with internet (raspberry pi works too) - should have listened...</li>\r\n<li>adruino.cc download and install arduino IDE</li>\r\n<li>various screwdrivers, pliers, straight airplane snips, drill with assorted bits. hacksaw, ruler, soldering station, multimeter,</li>\r\n<li>parts drawers for organizing small parts,</li>\r\n<li>several rubbermaid bins or cardboard boxes for cct boards, ABS pieces, etc.</li>\r\n</ul></li>\r\n<li>Collect and disassemble post apocalyptic scraps:\r\n<ul>\r\n<li><em>safety note</em>: Be careful when disassembling; use pliers rather than your fingers as much as possible. Printers and other products can sometimes be tricky to take apart. There may not be any visible screws to remove. The case cover may just snap into place and sometimes it feels like you are going to break the part before it unsnaps. Be aware that the ABS can snap if you force it past its breaking point, it is strong but when it breaks it can have sharp edges. Be especially careful when taking apart laptop batteries. Try not to short any circuits, and watch out because the metal strips that connect the 18650 cells are very sharp. Use pliers and metal cutters and remember not to create any circuits with your metal tools!</li>\r\n</ul></li>\r\n</ol>\r\n<h3 id=\"ingredients\">Ingredients</h3>\r\n<ul>\r\n<li><p>Printers are a great source of mechanical and chassis parts, including motors. The best are the ones with scanners built-in, which means an extra stepper motor.</p>\r\n<ul>\r\n<li>motors A mid sized printer will usually have two electric motors of the same size along with a few other smaller motors and stepper motors. Have two identical printers and you will have the 4 identical motors needed. It is OK to have 2 smaller and 2 larger motors and put one pair in front and one pair in back.</li>\r\n<li>steel rods, wheels with rubber tires, gears, specialty steel plates, reed switches, rotary encoders, ir switches</li>\r\n<li>ABS parts including a power supply cover that can hold Arduino.</li>\r\n<li>Glass panel can be repurposed as solar panel with cheap Chinese solar cells.</li>\r\n</ul></li>\r\n<li><p>UPS - for relays and opto isolators</p></li>\r\n<li><p>TVs - wire, speakers, optoisolators, lots of transistors and other components in older tvs.</p></li>\r\n<li><p>laptops, power tools, cell phones - lithium ion batteries</p></li>\r\n<li><p>books: libgen.is</p>\r\n<ul>\r\n<li><a href=\"https://des
(3545,'2022-03-04','How I make coffee',302,'Making coffee, and a podcast recommendation','<h4 id=\"coffeemaker\">Coffeemaker</h4>\r\n<ul>\r\n<li>Bunn model: Speedbrew</li>\r\n<li>Heats a reservoir to 200 &#x2109;</li>\r\n<li>Displaces a minimum of 4 cups for a fresh pot</li>\r\n</ul>\r\n<p><em>Bunn Coffeemaker and grinder</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3545/image_001.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3545/image_001_thumbnail.jpg\" alt=\"Bunn Coffeemaker and grinder\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small> </p>\r\n<p><em>This was too coarse, but still had a good taste</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3545/image_002.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3545/image_002_thumbnail.jpg\" alt=\"This was too coarse, but still had a good taste\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small> </p>\r\n<h4 id=\"coffee-of-the-day\">Coffee of the day</h4>\r\n<ul>\r\n<li>Door County Coffee and Tea Co.: Jingle Bell Java\r\n<ul>\r\n<li>Located in the U.S., in Sturgeon Bay, Wisconsin</li>\r\n</ul></li>\r\n</ul>\r\n<p><em>Jingle Bell Java</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3545/image_003.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3545/image_003_thumbnail.jpg\" alt=\"Jingle Bell Java\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small> </p>\r\n<h4 id=\"ham-radio-crash-course\">Ham Radio Crash Course</h4>\r\n<ul>\r\n<li><p>Started by Josh Nass (KI6NAZ) as a YouTube channel,</p></li>\r\n<li><p>Ham Radio Crash Course (HRCC) has evolved into a rapidly growing community of radio enthusiasts that are excited to grow in the hobby, and help others grow as well.</p></li>\r\n<li><p><a href=\"https://www.qrz.com/db/ki6naz\" class=\"uri\">https://www.qrz.com/db/ki6naz</a></p></li>\r\n<li><p>RSS Feed</p>\r\n<ul>\r\n<li><a href=\"https://feed.podbean.com/hamradiocrashcourse/feed.xml\" class=\"uri\">https://feed.podbean.com/hamradiocrashcourse/feed.xml</a></li>\r\n</ul></li>\r\n<li><p>Youtube channel</p>\r\n<ul>\r\n<li><a href=\"https://www.youtube.com/channel/UChAu6Cof9KlfFxSbL9ytosQ\" class=\"uri\">https://www.youtube.com/channel/UChAu6Cof9KlfFxSbL9ytosQ</a></li>\r\n</ul></li>\r\n</ul>\r\n',318,88,0,'CC-BY-SA','coffee, podcast, ham radio',0,0,1),
(3538,'2022-02-23','Installing the Tenacity audio editor',272,'Installing Tenacity, and the reasons behind the fork.','<h4 id=\"audacity-vs.-tenacity\">Audacity vs. Tenacity</h4>\r\n<ul>\r\n<li><a href=\"https://www.engadget.com/audacity-privacy-policy-spyware-accusations-data-collection-210001803.html\" class=\"uri\">https://www.engadget.com/audacity-privacy-policy-spyware-accusations-data-collection-210001803.html</a></li>\r\n<li><a href=\"https://hackaday.com/2021/07/23/new-privacy-policy-gets-audacity-back-on-track\" class=\"uri\">https://hackaday.com/2021/07/23/new-privacy-policy-gets-audacity-back-on-track</a></li>\r\n</ul>\r\n<h4 id=\"tenacity-project-page\">Tenacity project page</h4>\r\n<ul>\r\n<li><a href=\"https://tenacityaudio.org\" class=\"uri\">https://tenacityaudio.org</a></li>\r\n</ul>\r\n<h5 id=\"reason-for-forking-the-audacity-project\">Reason for forking the Audacity project</h5>\r\n<p>Motivation</p>\r\n<p>Our project initially started as a fork of Audacity as a result of multiple controversies and public relation crises, which you can find out more about here:</p>\r\n<ul>\r\n<li><p><a href=\"https://github.com/audacity/audacity/issues/1213\">Privacy policy which may violate the original project\'s GPL license</a></p></li>\r\n<li><p><a href=\"https://github.com/audacity/audacity/discussions/932\">Contributor\'s License Agreement (CLA) which may violate the same GPL license</a></p></li>\r\n<li><p><a href=\"https://github.com/audacity/audacity/pull/835\">Attempts at adding telemetry using Google services for data collection</a></p></li>\r\n</ul>\r\n<p>Nevertheless, the goal of this project is to pick up what the original developers of Audacity the decades-long work by the original creators of Audacity and create an audio editor that is fresh, more modern, convenient and practical to use, with the help and the guidance of our users and our community.</p>\r\n<ul>\r\n<li><a href=\"https://github.com/tenacityteam/tenacity#motivation\" class=\"uri\">https://github.com/tenacityteam/tenacity#motivation</a></li>\r\n</ul>\r\n<h5 id=\"community-section\">Community section</h5>\r\n<ul>\r\n<li><a href=\"https://tenacityaudio.org/#community-buttons\" class=\"uri\">https://tenacityaudio.org/#community-buttons</a></li>\r\n</ul>\r\n<h5 id=\"flatpak-nightly-build\">Flatpak nightly build</h5>\r\n<ul>\r\n<li><a href=\"https://github.com/tenacityteam/tenacity-flatpak-nightly/blob/main/README.md\" class=\"uri\">https://github.com/tenacityteam/tenacity-flatpak-nightly/blob/main/README.md</a></li>\r\n</ul>\r\n<pre><code>flatpak remote-add tenacity oci+https://tenacityteam.github.io/tenacity-flatpak-nightly\r\nflatpak install tenacity org.tenacityaudio.Tenacity</code></pre>\r\n<ul>\r\n<li><h5 id=\"update-flatpak\">Update Flatpak</h5>\r\n<ul>\r\n<li><code>flatpak update tenacity org.tenacityaudio.Tenacity</code></li>\r\n</ul></li>\r\n</ul>\r\n<h4 id=\"build-instructions-for-cmake\">Build instructions for Cmake</h4>\r\n<ul>\r\n<li><a href=\"https://gist.github.com/ricemark20/17382125f04083b3cdcda3d8bed64e4a\" class=\"uri\">https://gist.github.com/ricemark20/17382125f04083b3cdcda3d8bed64e4a</a></li>\r\n</ul>\r\n<pre><code>Clone Tenacity from the Tenacity GitHub project.\r\n\r\n $ git clone https://github.com/tenacityteam/tenacity/\r\n $ cd tenacity\r\n\r\n Configure Tenacity using CMake:\r\n\r\n $ mkdir build &amp;&amp; cd build\r\n $ cmake -G &quot;Unix Makefiles&quot; -Duse_ffmpeg=loaded ..\r\n\r\n By default, Debug build will be configured. To change that, pass -DCMAKE_BUILD_TYPE=Release to CMake.\r\n\r\n Build Tenacity:\r\n\r\n $ make -j`nproc`\r\n\r\n $ sudo make install</code></pre>\r\n<p><em>Current version:3.0.2-895-g0665614</em><br />\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3538/inmage_001.png\" alt=\"Current version:3.0.2-895-g0665614\" /></p>\r\n',318,0,0,'CC-BY-SA','Tenacity, Audacity, Github, Cmake, make, audio editor, telemetry, Google, tracking',0,0,1),
(3523,'2022-02-02','The Compose key',406,'What is the compose key, and how to set it up on X, GNOME and Windows.','<p>The Compose key allows you to input any character or sequence of characters regardless what keyboard layout you use, by typing the Compose key followed by a sequence of other keys. To use it, you must activate it in your system and choose what key you want to serve as the Compose key.</p>\r\n<p>If on Windows, we don\'t judge, we understand it\'s because, like me, you have no choice, and that\'s OK, one day we\'ll all get to live the dream, until then we\'ll just make do... WinCompose enables the compose key on that wretched environment. It comes with a ton of additional sequences, plus a fancy GUI for creating your own.</p>\r\n<p>If you use X, I suggest looking at the ArchLinux Wiki: <a href=\"https://wiki.archlinux.org/title/Xorg/Keyboard_configuration#Configuring_compose_key\">https://wiki.archlinux.org/title/Xorg/Keyboard_configuration#Configuring_compose_key</a></p>\r\n<p>If you are a GNOME user, install GNOME Tweaks to activate the Compose key.</p>\r\n<p>$HOME/.XCompose</p>\r\n<pre><code>include &quot;%L&quot;\r\n&lt;Multi_key&gt; &lt;Multi_key&gt; &lt;braceleft&gt; : &quot;&amp;#123;&quot;\r\n&lt;Multi_key&gt; &lt;Multi_key&gt; &lt;braceright&gt; : &quot;&amp;#125;&quot;\r\n&lt;Multi_key&gt; &lt;Multi_key&gt; &lt;t&gt; &lt;f&gt; : &quot;(&#x256F;&#xB0;&#x25A1;&#xB0;&#xFF09;&#x256F;&#xFE35; &#x253B;&#x2501;&#x253B;&quot;\r\n&lt;Multi_key&gt; &lt;C&gt; &lt;C&gt; &lt;C&gt; &lt;P&gt; : &quot;&#x262D;&quot;\r\n</code></pre>\r\n<p>Note that that last one actually comes with X by default. In ArchLinux, all the default sequences can be found in <code>/usr/share/X11/locale/&lt;your-locale&gt;/Compose</code>. Also good to find out what to call your keys when writing your own sequences.</p>\r\n<p><code>/etc/X11/xorg.conf.d/00-keyboard.conf</code> is the file that makes the Compose key happen in X.</p>\r\n<pre><code>Section &quot;InputClass&quot;\r\n Identifier &quot;system-keyoard&quot;\r\n MatchIsKeyboard &quot;on&quot;\r\n Option &quot;XkbLayout&quot; &quot;us&quot;\r\n Option &quot;XkbModel&quot; &quot;acer_laptop&quot;\r\n Option &quot;XkbOptions&quot; &quot;compose:ralt,ctrl:nocaps&quot;\r\nEndSection\r\n</code></pre>\r\n<p>Note that it is not recommended to edit the file above, but use <code>localectl</code> to edit it. I don\'t know why that is. To learn more about that, and all the many options available, start with <a href=\"https://wiki.archlinux.org/title/Xorg/Keyboard_configuration#Using_localectl\">https://wiki.archlinux.org/title/Xorg/Keyboard_configuration#Using_localectl</a></p>\r\n',399,0,0,'CC-BY-SA','Xorg,X11,compose,composekey',0,0,1),
(3524,'2022-02-03','Wheels Addendum - How to Reliably Attach Wheels to PAR Robot Platform',393,'The most difficult part of Post Apocalyptic Robotics - how to keep the wheels on','<p><a href=\"https://hackerpublicradio.org/eps.php?id=3522\">https://hackerpublicradio.org/eps.php?id=3522</a></p>\r\n<p>Video is already uploaded <a href=\"https://www.bitchute.com/video/HyT5Yz5bhjfS/\">https://www.bitchute.com/video/HyT5Yz5bhjfS/</a></p>\r\n<p><em>Picture 1</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114225.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114225_thumbnail.jpg\" alt=\"Picture 1\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Picture 2</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114332.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114332_thumbnail.jpg\" alt=\"Picture 2\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Picture 3</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114438.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114438_thumbnail.jpg\" alt=\"Picture 3\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Picture 4</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114501.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114501_thumbnail.jpg\" alt=\"Picture 4\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Picture 5</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114514.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114514_thumbnail.jpg\" alt=\"Picture 5\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Picture 6</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114545.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114545_thumbnail.jpg\" alt=\"Picture 6\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Picture 7</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114717.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114717_thumbnail.jpg\" alt=\"Picture 7\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Picture 8</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114723.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114723_thumbnail.jpg\" alt=\"Picture 8\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Picture 9</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114731.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114731_thumbnail.jpg\" alt=\"Picture 9\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Picture 10</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114739.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114739_thumbnail.jpg\" alt=\"Picture 10\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Picture 11</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114940.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_114940_thumbnail.jpg\" alt=\"Picture 11\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><em>Picture 12</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3524/IMG_20220121_115057.jpg\">
(3525,'2022-02-04','Battling with English - part 4',920,'Some confusion with English plurals; strange language changes','<h2 id=\"confusing-plurals\">Confusing plurals</h2>\r\n<p>In this episode, the fourth of this series, Im looking at some words that have singular and plural forms that are very different. These lead to a lot of confusion as well see.</p>\r\n<p>I also want to look at the way that English is evolving in some very strange and apparently senseless ways!</p>\r\n<p><small><b>Personal note:</b> I notice I started preparing this show in 2019; unfortunately, COVID messed up my productivity for the next two years, but I hope I can now begin to be productive again! </small></p>\r\n<h2 id=\"long-notes\">Long notes</h2>\r\n<p>I have provided detailed notes as usual for this episode, and these can be viewed by following <a href=\"https://hackerpublicradio.org/eps/hpr3525/full_shownotes.html\">the full notes link</a>.</p>\r\n<h2 id=\"links\">Links</h2>\r\n<ul>\r\n<li>Plural of <em>thesis</em>:\r\n<ul>\r\n<li><a href=\"https://www.grammar-monster.com/plurals/plural_of_thesis.htm\">Grammar Monster</a>\r\n<ul>\r\n<li>This link has some good advice for dealing with weird plurals, though some you just have to remember, there are no rules!</li>\r\n</ul></li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>Irregular plurals which end with <code>\"ae\"</code> (or <code>\"æ\"</code>):\r\n<ul>\r\n<li><a href=\"https://en.wiktionary.org/wiki/Category:English_irregular_plurals_ending_in_%22-ae%22\">Wiktionary</a>\r\n<ul>\r\n<li>This is a list of these plurals, 159 of them at the time of writing. Many of these are obsolete however.</li>\r\n</ul></li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>The “is is” problem:\r\n<ul>\r\n<li><a href=\"https://english.stackexchange.com/questions/36683/why-do-some-people-say-the-reason-is-is-that-with-is-twice-in-a-row\">StackExchange: <em>Why do some people say “the reason is is that,” with “is” twice in a row?</em></a></li>\r\n<li><a href=\"https://www.grammarbook.com/blog/effective-writing/what-is-is-is-is-exasperating/\">GrammarBook.com: What Is-Is Is, Is Exasperating</a></li>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Double_copula\">Wikipedia article on the <em>Double Copula</em></a></li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>“Honing in”:\r\n<ul>\r\n<li><a href=\"https://www.merriam-webster.com/dictionary/hone%20in\">Merriam-Webster: <em>hone in</em></a></li>\r\n<li><a href=\"https://www.youtube.com/watch?v=JZ07FbgQkqk\"><em>Me Ears Are Alight</em> old British advertisement</a></li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>Previous episodes in this series:\r\n<ul>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=2558\">Battling with English - part 1</a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=2596\">Battling with English - part 2</a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=2751\">Battling with English - part 3</a></li>\r\n</ul></li>\r\n</ul>\r\n',225,120,1,'CC-BY-SA','grammar,spelling,plurals,word misuse,English,language evolution',0,0,1),
(3539,'2022-02-24','Linux Inlaws S01E50: The OpenSUSE Project',4079,'An interview with Doug DeMaio and Axel Braun from the OpenSUSE project','<p>In this episode of the Inlaws our two ageing heroes host Doug DeMaio and Axel Braun, both intimately\r\nassociated with and actively supporting the OpenSUSE project, the foundation of one of the popular Linux distros\r\napart from RedHat and Debian for companies of all sizes (yes, and Ubuntu before I get any hate mails\r\nfrom Mark Shuttleworth or Cannonical in general :-). Apologies for not mentioning Alma, CentOS or\r\nRocky Linux. Topics of discussion include the advantages of hipster concepts like rolling releases,\r\nthe year of the Linux desktop, other people\'s computers (aka Clouds) and philosophical things like\r\nIT security, all things cloud-native (well, almost) and Apple laptop users drinking fancy coffee\r\nderivatives. Never mind containers, edge-computing operating systems and live kernel patching.</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>OpenSUSE: <a href=\"https://www.opensuse.org\" target=_blank>https://www.opensuse.org</a></li>\r\n<li>SUSE: <a href=\"https://www.suse.com\" target=_blank>https://www.suse.com</a></li>\r\n<li>openQA: <a href=\"https://open.qa\" target=_blank>https://open.qa</a></li>\r\n<li>Open Build Service: <a href=\"https://openbuildservice.org\" target=_blank>https://openbuildservice.org</a></li>\r\n<li>CentOS debacle: <a href=\"https://arstechnica.com/gadgets/2020/12/centos-shifts-from-red-hat-unbranded-to-red-hat-beta\" target=_blank>https://arstechnica.com/gadgets/2020/12/centos-shifts-from-red-hat-unbranded-to-red-hat-beta</a></li>\r\n<li>OpenSUSE conference: <a href=\"https://events.opensuse.org\" target=_blank>https://events.opensuse.org</a></li>\r\n<li>MicroOS: <a href=\"https://microos.opensuse.org\" target=_blank>https://microos.opensuse.org</a></li>\r\n<li>Kubic: <a href=\"https://kubic.opensuse.org\" target=_blank>https://kubic.opensuse.org</a></li>\r\n<li>Rancher: <a href=\"https://www.suse.com/products/rancher-kubernetes-engine\" target=_blank>https://www.suse.com/products/rancher-kubernetes-engine</a></li>\r\n<li>OpenSUSE mailing lists: <a href=\"https://lists.opensuse.org/archives\" target=_blank>https://lists.opensuse.org/archives</a></li>\r\n<li>OpenSUSE bar: <a href=\"https://meet.opensuse.org/bar\" target=_blank>https://meet.opensuse.org/bar</a></li>\r\n<li>OpenSUSE social media: <a href=\"https://en.opensuse.org/openSUSE:Social_media_contacts\" target=_blank>https://en.opensuse.org/openSUSE:Social_media_contacts</a></li>\r\n<li>OpenSUSE IRC: <a href=\"https://en.opensuse.org/openSUSE:IRC_list\" target=_blank>https://en.opensuse.org/openSUSE:IRC_list</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','OpenSUSE, Kubic, MicroOS, Clouds, Lattes, Desktops',0,0,1),
(3527,'2022-02-08','My gEeeky Experiment - Part 3',816,'Claudio talks about how he upgraded the SSD on his Asus Eee PC 901 netbook.','<ul>\r\n<li><p>hpr3383 :: My gEeeky Experiment - Part 1<br />\r\n<a href=\"https://hackerpublicradio.org/eps.php?id=3383\" class=\"uri\">https://hackerpublicradio.org/eps.php?id=3383</a></p></li>\r\n<li><p>hpr3418 :: My gEeeky Experiment - Part 2<br />\r\n<a href=\"https://hackerpublicradio.org/eps.php?id=3418\" class=\"uri\">https://hackerpublicradio.org/eps.php?id=3418</a></p></li>\r\n<li><p>Blog post: <a href=\"https://claudiomiranda.wordpress.com/2020/10/04/my-geeeky-experiment-part-3\" class=\"uri\">https://claudiomiranda.wordpress.com/2020/10/04/my-geeeky-experiment-part-3</a></p></li>\r\n</ul>\r\n<p>Contact: claudiom@bsd.network (Mastodon)<br />\r\nIRC: ClaudioM on #oggcastplanet (Libera.chat)</p>\r\n',152,0,0,'CC-BY-SA','openbsd,netbook,asus,eeepc,upgrades,ssd',0,0,1),
(3528,'2022-02-09','Slackware on a netbook',346,'A response show to HPR3512','<h3 id=\"installed-slackware-on-acer-aspire-one\">Installed Slackware on Acer Aspire One</h3>\r\n<ul>\r\n<li><p>4.4.14-smp #2 SMP Fri Jun 24 14:44:24 CDT 2016 i686 Intel(R) Atom(TM) CPU N270 @ 1.60GHz GenuineIntel GNU/Linux</p></li>\r\n<li><p>1 Gb ram</p>\r\n<pre><code>[mark@archer72:~ ] $ free total --mega\r\n total used free shared buff/cache available\r\nMem: 1009 172 376 0 459 692\r\nSwap: 1048 0 1048</code></pre></li>\r\n<li><p>Runs a little warm</p>\r\n<pre><code>[mark@archer72:~ ] $ sensors\r\n\r\ncoretemp-isa-0000\r\nAdapter: ISA adapter\r\nCore 0: +45.0 &amp;#8451; (crit = +90.0 &amp;#8451;)</code></pre></li>\r\n<li><p>Ignore lid switch</p>\r\n<p><code>echo on &gt;/sys/bus/acpi/drivers/button/$PLATFORM\\:00/power/control</code></p>\r\n<p>Or in this case</p>\r\n<p><code>echo on &gt; /bus/acpi/drivers/button/LNXPWRBN\\:00/power/control</code></p></li>\r\n<li><p>Clear screen in BASH</p>\r\n<ul>\r\n<li><p>Enter in ~/.bashrc the line:</p>\r\n<p><code>bind -x $\'\"\\C-l\":clear;\'</code></p></li>\r\n<li><p>Not working between reboots</p></li>\r\n</ul></li>\r\n</ul>\r\n<p><quote></p>\r\n<p>If you always want the content of your .bashrc file processed, you can add the following lines to your .bash_profile file, creating that file if it does not already exist:</p>\r\n<pre><code>if [ -f ~/.bashrc ]; then\r\n . ~/.bashrc\r\nfi</code></pre>\r\n<p>Per its man page, bash \"[...] looks for ~/.bash_profile, ~/.bash_login, and ~/.profile, in that order, and reads and executes commands from the first one that exists and is readable.\" Conventions and policies of your local system will determine which, if any, of these files already exist.</p>\r\n<p>A word of caution: be aware that creating a new .bash_profile in your home directory could have the unintended side-effect of preventing the reading and executing of commands in a .bash_login or .profile file already present, changing further the behavior of subsequent logins. </quote></p>\r\n<p><a href=\"https://stackoverflow.com/questions/18393521/bashrc-not-loading-until-run-bash-command\" class=\"uri\">https://stackoverflow.com/questions/18393521/bashrc-not-loading-until-run-bash-command</a></p>\r\n<ul>\r\n<li><p>Change lilo menu timeout to 5 seconds</p>\r\n<ul>\r\n<li><p>edit /etc/lilo.conf</p>\r\n<pre><code>.\r\n.\r\n# This is given in tenths of a second, so 600 for every minute:\r\n# timeout = 1200\r\ntimeout = 50\r\n.\r\n.</code></pre></li>\r\n</ul></li>\r\n<li><p>Add custom bash prompt.</p>\r\n<pre><code> PS1=&quot;&quot;[\\d \\t \\u@\\h:\\w ]&quot; $ &quot;\r\n [Sat Feb 05 18:11:15 mark@archer72:~ ] $</code></pre></li>\r\n<li><p>For a more concise prompt:</p>\r\n<pre><code> PS1=&quot;[\\u@\\h:\\w ] $\r\n [mark@archer72:~ ] $</code></pre></li>\r\n<li><p>Not authorized to control networking</p>\r\n<p><code>sudo usermod -G netdev -a yourusername</code></p>\r\n<ul>\r\n<li><a href=\"https://askubuntu.com/questions/304159/not-authorized-to-control-networking#304181\" class=\"uri\">https://askubuntu.com/questions/304159/not-authorized-to-control-networking#304181</a></li>\r\n</ul></li>\r\n</ul>\r\n',318,0,0,'CC-BY-SA','Slackware, Auld hardware, netbook',0,0,1),
(3531,'2022-02-14','Barrier: Software KVM',1039,'A brief inroduction to the Barrier software KVM','<p>This episode is a quick software recommendation/introduction to <a href=\"https://github.com/debauchee/barrier\">Barrier</a>. Barrier is a software KVM, forked from <a href=\"https://symless.com/synergy\">Synergy</a>. It sends your keystrokes and mouse input over the network, so that you can share your input devices between computers.</p>\r\n',196,0,0,'CC-BY-SA','kvm,Barrier,network,keyboard,mouse',0,0,1),
(3532,'2022-02-15','Self-hosting in small scale E0: Disclaimer and general idea',545,'This ep is just explanation of the general idea and introducing useful communities around the topic','<p>By the end of the series I would like to end up with an example repository on Github/Gitlab with scenarios and example configuration file which makes them easy to replicate and modify to your need. I am interested in your opinion what type of service would you fancy to self-host yourself. So don\'t hesitate to contact me on twitter, matrix.org or in email.</p>\r\n<p>Twitter: <span class=\"citation\" data-cites=\"takov751\">@takov751</span><br />\r\nmatrix: takov751:matrix.org<br />\r\nemail: takov751+hpr@protonmail.com</p>\r\n<p>Few interesting communities/project:</p>\r\n<ul>\r\n<li><p>Community around making a curated list of their own docker images and maintain them:<br />\r\n<a href=\"https://linuxserver.io\" class=\"uri\">https://linuxserver.io</a></p></li>\r\n<li><p>Open source project for home automation: <a href=\"https://www.home-assistant.io/\" class=\"uri\">https://www.home-assistant.io/</a></p></li>\r\n</ul>\r\n',402,0,0,'CC-BY-SA','self-host, devsecops, docker',0,0,1),
(3533,'2022-02-16','Porridge',1741,'A show about porridge','<p>This is a show about porridge.</p>\r\n<p>Episodes mentioned in this episode:</p>\r\n<ul>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=3272\">hpr3272 :: In GNU/Linux, there is no \"diversity\", we\'re all just data. hosted by Some Guy On The Internet </a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=3257\">hpr3257 :: Lack of diversity in Linux and other open source communities hosted by swift110 </a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=3251\">hpr3251 :: Opposing Views on Alcohol hosted by Windigo </a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=3247\">hpr3247 :: Saturday Morning Automotive Routine hosted by TrumpetJohn </a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=3223\">hpr3223 :: My COVID year summary hosted by b-yeezi </a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=3121\">hpr3121 :: Opposing Views on Tattoos hosted by Windigo </a></li>\r\n</ul>\r\n<p>Island mentioned in this episode: <a href=\"https://en.wikipedia.org/wiki/St_Kilda,_Scotland\">https://en.wikipedia.org/wiki/St_Kilda,_Scotland</a></p>\r\n<p>All the porridge: <a href=\"https://en.wikipedia.org/wiki/List_of_porridges\">https://en.wikipedia.org/wiki/List_of_porridges</a></p>\r\n',399,0,0,'CC-BY-SA','porridge',0,0,1),
(3534,'2022-02-17','Vernier caliper',519,'Ken recommends a very useful tool for measuring stuff','<p>\r\nIn today\'s show Ken recommends a fairly affordable tool for measuring all sorts of dimensions.\r\n</p>\r\n\r\n<img src=\"/eps/hpr3534/Vernier_caliper.svg.png\" alt=\"An image of a Vernier caliper\" />\r\n\r\n<p>\r\nFrom <a href=\"https://en.wikipedia.org/wiki/Calipers#Vernier_caliper\">Wikipedia</a>\r\n</p>\r\n\r\n<ol>\r\n\r\n<li>Outside large jaws: used to measure external diameter of an object (like a hollow cylinder) or width of an object (like a rod), diameter of an object (like a sphere).</li>\r\n<li>Inside small jaws: used to measure the internal diameter of an object (like a hollow cylinder or pipe).</li>\r\n<li>Depth probe/rod: used to measure depths of an object (like a small beaker) or a hole.</li>\r\n<li>Main scale (Metric): marked every millimeter and helps to measure length correct up to 1 mm.</li>\r\n<li>Main scale (Imperial): marked in inches and fractions.</li>\r\n<li>Vernier scale (Metric) gives interpolated measurements to 0.1 mm or better.</li>\r\n<li>Vernier scale (Imperial) gives interpolated measurements in fractions of an inch.</li>\r\n<li>Retainer: used to block movable part to allow the easy transferring of a measurement.</li>\r\n</ol>\r\n',30,0,0,'CC-BY-SA','Vernier Caliper,measurement',0,0,1),
(3565,'2022-04-01','Heavy Hacking down in the quarry. ',468,'How to adjust a toggle plate on a MOBICAT MC 120 PRO Jaw Crusher','<p>Another trip down the quarry with Marshall aka Timtimmy. Today he\'s changing the toggle plate on a MOBICAT MC 120 PRO Jaw Crusher. We\'ve already covered it before but there is a brief refresher about the hydraulic, and pneumatic systems before we get to changing the plate itself. As always be sure you follow the safety instructions provided by the manufacturer.</p>\r\n\r\n<p>\r\n<img width=\"70%\" src=\"/eps/hpr3565/IMG_20220328_165606.jpg\" alt=\"Photo of the MOBICAT MC 120 PRO Jaw Crusher\" />\r\n</p>\r\n<p>\r\n<img width=\"70%\" src=\"/eps/hpr3565/IMG_20220328_165709.jpg\" alt=\"Photo of the MOBICAT MC 120 PRO Jaw Crusher\" />\r\n</p>\r\n\r\n<h3>Links</h3><ul><li><a href=\"https://www.wirtgen-group.com/ocs/en-in/kleemann/mc-120-pro-138-p/\">MOBICAT MC 120 PRO Jaw Crusher</a></li><li><a href=\"https://www.terex.com/evoquip/en/product/bison/bison-120\">Bison 120 Jaw Crusher</a></li><li><a href=\"https://www.hse.gov.uk/pubns/books/l118.htm\">Health and safety at quarries. The Quarries Regulations 1999. Approved Code of Practice </a></li><li><a href=\"https://en.wikipedia.org/wiki/British_Standard_Whitworth\">British Standard Whitworth (BSW)</a></li></ul>',392,0,0,'CC-BY-SA','quarry,hacking,Health and Safety',0,0,1),
(3536,'2022-02-21','Laptop power problems',1398,'This is a story of a laptop with two power problems.','<p>This is a story of a laptop with two power problems.</p>\r\n<p>The first and less severe is that sometimes the charging of the battery will get stuck at a certain percentage. This is not simply due to the effect commonly found with aging batteries but a fault with the laptop\'s charging hardware. A full reset of the charging system can fix it, which for this ASUS Zenbook UX550vd laptop requires a long press &#x2014; meaning 40 seconds &#x2014; from its shutdown state.</p>\r\n<p>The second and more serious issue is that the laptop thinks that it is plugged into AC power even when it is running only on battery. I ruled out an operating system or software issue because the issue remains whether running GNU/linux or Windows. The problem is serious because the power management software, in my case in KDE, will not respond to critically low battery levels by suspending or gracefully shutting down. It may be that a sudden loss of power damaged the previous SSD in this laptop, which was the subject of <a href=\"https://hackerpublicradio.org/eps.php?id=3428\">HPR 3428</a>.</p>\r\n<p>My first attempt to fool KDE into seeing accurate battery information under <code>/sys/class/power_supply/BAT0</code> using an overlay filesystem failed presumably because KDE\'s power system is listening out for some kind of event rather than simply monitoring those files. My second and successful attempt involved writing my own bash scripts run by cron to monitor battery levels and initiate actions when they got too low. There were errors with comedic consequences along the way. In fact, while writing these shownotes after I finished recording the audio, the laptop suspended itself because of a bug in my script - I used <code>le</code> (less than or equal to) rather than <code>lt</code> (less than) in my test for a change in the battery charge leading to unintended and fun consequences when the battery was fully charged.</p>\r\n',268,0,0,'CC-BY-SA','laptop,linux,power',0,0,1),
(3647,'2022-07-26','Weekend projects',1004,'Rho`n rambles about some weekend projects','<h1>Synopsis</h1>\r\n\r\n<p>In this episode, Rho`n rambles about some recent weekend repair projects. The main focus of this episode is fixing a bent patio table umbrella pole, along with his attempts to fix a punctured basketball. There are some successes, some failures, and some side stories along the way.</p>\r\n<style>\r\ndiv#figures {\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: wrap;\r\n justify-content: center;\r\n}\r\ndiv#figures figcaption { max-width: 490px; }\r\ndiv#figures img { max-width: 50vw; padding-bottom: 0.15em }\r\n</style>\r\n<div id=\"figures\">\r\n<figure>\r\n <a href=\"./eps/hpr3647/01.jpg\"><img src=\"./eps/hpr3647/01-sm.jpg\"\r\n alt=\"Initial fixed umbrella pole.\"></a>\r\n <br>\r\n <figcaption>Intial fix using 1.25\" dowel rod and wood screws.</figcaption>\r\n</figure>\r\n<figure>\r\n <a href=\"./eps/hpr3647/02.jpg\"><img src=\"./eps/hpr3647/02-sm.jpg\"\r\n alt=\"Fixed pole with epoxy resin wrap\"></a>\r\n <br>\r\n <figcaption>Fixed pole with epoxy resin wrap.</figcaption>\r\n</figure>\r\n<figure>\r\n <a href=\"./eps/hpr3647/03.jpg\"><img src=\"./eps/hpr3647/03-sm.jpg\"\r\n alt=\"Fixed pole in regular standing position\"></a>\r\n <br>\r\n <figcaption>Fixed pole in regular position.</figcaption>\r\n</figure>\r\n</div>\r\n',293,0,0,'CC-BY-SA','diy, repairs, umbrella, basketball',0,0,1),
(3858,'2023-05-17','The Oh No! News.',873,'Sgoti talks about Toyota\'s data leak and more, on the Oh No! News.','<h2 id=\"the-oh-no-news.\">The <em>Oh No!</em> news.</h2>\n<h2 id=\"oh-no-news-is-good-news.\"><em>Oh No!</em> News is Good\nNews.</h2>\n<ul>\n<li><p><strong>Threat analysis; your attack surface.</strong></p></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://www.ic3.gov/Media/Y2023/PSA230407\"\ntitle=\"...coerce sextortion victims into paying for their services.\">For-Profit\nCompanies Charging Sextortion Victims for Assistance and Using Deceptive\nTactics to Elicit Payments.</a><br />\n</p>\n<ul>\n<li><strong>Author:</strong> FBI Internet Crime Complaint Center. (2023,\nApr 7).<br />\n</li>\n<li>The companies use deceptive tactics&#x2014;including threats, manipulation,\nand providing false information&#x2014;to coerce sextortion victims into paying\nfor their services. Some of the services for which the companies charge\nfees, such as sending the perpetrators cease and desist orders, make\nvictims feel better but are not legally enforceable. The companies may\nalso attempt to discourage victims from reporting the sextortion to law\nenforcement. Limited reporting indicates the companies are directly or\nindirectly involved in the sextortion activity.<br />\n</li>\n</ul></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://www.bleepingcomputer.com/news/security/former-ubiquiti-dev-who-extorted-the-firm-gets-six-years-in-prison/\"\ntitle=\"Attempting to extort his employer.\">Former Ubiquiti dev who\nextorted the firm gets six years in prison.</a><br />\n</p>\n<ul>\n<li><strong>Author:</strong> <a\nhref=\"https://www.bleepingcomputer.com/author/bill-toulas/\"\ntitle=\"Technology writer and infosec news reporter.\">Bill Toulas</a>.\n(2023, May 11).<br />\n</li>\n<li>Nickolas Sharp, a former senior developer of Ubiquiti, was sentenced\nto six years in prison for stealing company data, attempting to extort\nhis employer, and aiding the publication of misleading news articles\nthat severely impacted the firm\'s market capitalization.<br />\n</li>\n</ul></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://www.bleepingcomputer.com/news/security/toyota-car-location-data-of-2-million-customers-exposed-for-ten-years/\"\ntitle=\"Misconfiguration of the cloud environment.\">Toyota: Car location\ndata of 2 million customers exposed for ten years.</a><br />\n</p>\n<ul>\n<li><strong>Author:</strong> <a\nhref=\"https://www.bleepingcomputer.com/author/bill-toulas/\"\ntitle=\"Technology writer and infosec news reporter.\">Bill Toulas</a>.\n(2023, May 12).<br />\n</li>\n<li>Toyota Motor Corporation disclosed a data breach on its cloud\nenvironment that exposed the car-location information of 2,150,000\ncustomers for ten years, between November 6, 2013, and April 17,\n2023.<br />\n</li>\n</ul></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://www.gov.uk/government/news/failure-to-comply-with-bus-open-data-regulations-leads-to-financial-penalty-for-operator\"\ntitle=\"Financial penalty under section 155 of the Transport Act 2000.\">Failure\nto comply with Bus Open Data regulations leads to financial penalty for\noperator.</a><br />\n</p>\n<ul>\n<li><strong>Author:</strong> Traffic Commissioners for Great Britain.\n(2023, May 4).<br />\n</li>\n<li>The Traffic Commissioner for the West Midlands, Miles Dorrington,\nimposed a financial penalty under section 155 of the Transport Act 2000\nof &#xA3;1500, based on a &#xA3;100 penalty for each of the vehicles authorised on\nthe operator&#x2019;s licence.<br />\n</li>\n</ul></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://www.ic3.gov/Media/Y2023/PSA230410\"\ntitle=\"The FBI warns of criminal actors posing as Chinese law enforcement.\">Criminals\nPose as Chinese Authorities to Target US-based Chinese\nCommunity.</a><br />\n</p>\n<ul>\n<li><strong>Author:</strong> FBI Internet Crime Complaint Center. (2023,\nApr 10).<br />\n</li>\n<li>The FBI warns of criminal actors posing as Chinese law enforcement\nofficials or prosecutors in financial fraud schemes t
(3549,'2022-03-10','Linux Inlaws S01E51: git and static site generators',3206,'git and static site generators','<p> Another fortnight, another episode of our beloved podcast called Linux\r\nInlaws :-). What starts as an episode on the history of Central Europe and the\r\nrole of the Netherlands and Germany in the greater scheme of things rapidly\r\nmoves sideways into a discussion of git-powered static HTML website generators\r\nin contrast to context management systems (CMSs) and their advantages,\r\ndisadvantages and why the hell even think about this. Chris uses an innocent\r\n(?) Linux User Group (LUG) as an example for a successful site migration from\r\na Python-powered CMS to a version of the website based on a static site\r\ngenerator written in Go and called Hugo. Even if you may find this boring to\r\ntears stay tuned as there may be an unexpected ending of this ditty in the\r\nshape of two interesting poxes... </p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>CMS: <a href=\"https://en.wikipedia.org/wiki/Content_management_system\" target=_blank>https://en.wikipedia.org/wiki/Content_management_system</a></li>\r\n<li>Adam and Eve: <a href=\"https://www.adam-and-eve.org\" target=_blank>https://www.adam-and-eve.org</a></li>\r\n<li>MoinMoin: <a href=\"https://moinmo.in\" target=_blank>https://moinmo.in</a></li>\r\n<li>WordPress: <a href=\"https://wordpress.org\" target=_blank>https://wordpress.org</a></li>\r\n<li>PEP 404: <a href=\"https://www.python.org/dev/peps/pep-0404\" target=_blank>https://www.python.org/dev/peps/pep-0404</a></li>\r\n<li>Python Enhancement Proposals: <a href=\"https://www.python.org/dev/peps\" target=_blank>https://www.python.org/dev/peps</a></li>\r\n<li>Static site generators (overview): <a href=\"https://kinsta.com/blog/static-site-generator\" target=_blank>https://kinsta.com/blog/static-site-generator</a></li>\r\n<li>Linux User Group Frankfurt: <a href=\"https://lugfrankfurt.de/en/Home\" target=_blank>https://lugfrankfurt.de/en/Home</a></li>\r\n<li>Gitea: <a href=\"https://gitea.io/en-us\" target=_blank>https://gitea.io/en-us</a></li>\r\n<li>HUGO: <a href=\"https://gohugo.io\" target=_blank>https://gohugo.io</a></li>\r\n<li>HUGO source code: <a href=\"https://github.com/gohugoio/hugo\" target=_blank>https://github.com/gohugoio/hugo</a></li>\r\n<li>Git (web)hooks: <a href=\"https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks\" target=_blank>https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks</a></li>\r\n<li>Reacher: <a href=\"https://en.wikipedia.org/wiki/Reacher_(TV_series)\" target=_blank>https://en.wikipedia.org/wiki/Reacher_(TV_series)</a></li>\r\n<li>The Comeback Trail: <a href=\"https://www.imdb.com/title/tt5420210/?ref_=nv_sr_srsg_0\" target=_blank>https://www.imdb.com/title/tt5420210/?ref_=nv_sr_srsg_0</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','git, content management systems, MoinMoin, HUGO, static site generators, HPR, PEPs, gitea, Reacher',0,0,1),
(3543,'2022-03-02','Idle thoughts on web browsers',476,'and a call for your own on the same','<p>Mentioned in this episode were:</p>\r\n<p>Sweet Maria\'s Coffee: Personal Brewing Routines &amp; The Weirdness of Coffee Culture <br />\r\n<a href=\"https://sweetmarias.libsyn.com/personal-brewing-routines-the-weirdness-of-coffee-culture\">https://sweetmarias.libsyn.com/personal-brewing-routines-the-weirdness-of-coffee-culture</a></p>\r\n<p>Hacker Public Radio 3273: Embrace Firefox, by Some Guy On The Internet <br />\r\n<a href=\"https://hackerpublicradio.org/eps.php?id=3273\">https://hackerpublicradio.org/eps.php?id=3273</a></p>\r\n<p>To contribute your own idle thoughts in voice message form, join #thoughtsonbrowsers:matrix.org and leave your voice message. Then join #hpr:matrix.org and say hello.</p>\r\n',399,0,1,'CC-BY-SA','browsers,firefox,qutebrowser,tridactyl',0,0,1),
(3537,'2022-02-22','getting to blinky with flashforth',1708,'making an arduino board useful','<ul>\r\n<li>intro <a href=\"https://www.paypal.com/donate/?item_name=Donation+to+FlashForth%3A+for+PIC+and+Atmega&amp;cmd=_donations&amp;business=mikael.nordman%40flashforth.com\">Donation link</a></li>\r\n<li>what you\'ll need\r\n<ul>\r\n<li>hardware\r\n<ul>\r\n<li>arduino uno or nano</li>\r\n<li>programmer<br />\r\n<a href=\"https://hackerpublicradio.org/eps.php?id=2799\" class=\"uri\">https://hackerpublicradio.org/eps.php?id=2799</a></li>\r\n<li>cables</li>\r\n</ul></li>\r\n<li>software\r\n<ul>\r\n<li>flashforth <a href=\"https://www.sourceforge.net/projects/flashforth\" class=\"uri\">https://www.sourceforge.net/projects/flashforth</a></li>\r\n<li>avrdude <a href=\"https://www.nongnu.org/avrdude/\" class=\"uri\">https://www.nongnu.org/avrdude/</a></li>\r\n<li>terminal program<br />\r\nemacs: M-x serial-term</li>\r\n</ul></li>\r\n<li><a href=\"https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf\">datasheet</a></li>\r\n</ul></li>\r\n<li>the install\r\n<ul>\r\n<li>the guide <a href=\"https://flashforth.com/atmega.html\" class=\"uri\">https://flashforth.com/atmega.html</a></li>\r\n<li>did it work?\r\n<ul>\r\n<li>troubleshooting\r\n<ul>\r\n<li>check connections</li>\r\n<li>permission issues</li>\r\n<li>set fuses separately, one at a time</li>\r\n<li>double checkterminal baud rate</li>\r\n</ul></li>\r\n</ul></li>\r\n</ul></li>\r\n<li>hello-world</li>\r\n</ul>\r\n<pre><code>: hw1 .&quot; Hello, world!&quot; ;\r\n: led-on %00100000 PORTB mset ;\r\n: led-off %00100000 PORTB mclr ;\r\n: flash-led begin led-on #1000 ms led-off #1000 ms again ;</code></pre>\r\n',326,0,0,'CC-BY-SA','arduino, forth',0,0,1),
(3786,'2023-02-06','HPR Community News for January 2023',2881,'HPR Volunteers talk about shows released and comments posted in January 2023','<style>\ntable td.shrink {\n white-space:nowrap\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nWelcome to our new host: <br />\n\n <a href=\"https://hackerpublicradio.org/correspondents/0415.html\" target=\"_blank\">enistello</a>.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3761\" target=\"_blank\">3761</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-01-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3761\" target=\"_blank\">HPR Community News for December 2022</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3762\" target=\"_blank\">3762</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-01-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3762\" target=\"_blank\">Existence is pain</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0036.html\" target=\"_blank\">operat0r</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3763\" target=\"_blank\">3763</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-01-04</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3763\" target=\"_blank\">The Baader-Meinhof Phenomenon</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0282.html\" target=\"_blank\">Mike Ray</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3764\" target=\"_blank\">3764</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-01-05</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3764\" target=\"_blank\">My text-focused journey into tech</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0415.html\" target=\"_blank\">enistello</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3765\" target=\"_blank\">3765</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-01-06</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3765\" target=\"_blank\">Fixing clock events in GBA pokemon cartridges</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0407.html\" target=\"_blank\">Celeste</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3766\" target=\"_blank\">3766</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-01-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3766\" target=\"_blank\">ACER Nitro 5 laptop review</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0365.html\" target=\"_blank\">Bookewyrmm</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3767\" target=\"_blank\">3767</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-01-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3767\" target=\"_blank\">LP article from Wikipedia</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0318.html\" target=\"_blank\">Archer72</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3768\" target=\"_blank\">3768</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-01-11</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3768\" target=\"_blank\">Jeep Ignition Repair</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0408.html\" target=\"_blank\">Stache_AF</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3769\" target=\"_blank\">3769</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-01-12</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3769\" target=\"_blank\">Crouching laptop, hidden server (part 0).</a></td>\n<td><a href=\"https://hacke
(3806,'2023-03-06','HPR Community News for February 2023',4592,'HPR Volunteers talk about shows released and comments posted in February 2023','<style>\ntable td.shrink {\n white-space:nowrap\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nWelcome to our new hosts: <br />\n\n <a href=\"https://hackerpublicradio.org/correspondents/0416.html\" target=\"_blank\">screwtape</a>, \n <a href=\"https://hackerpublicradio.org/correspondents/0417.html\" target=\"_blank\">StarshipTux</a>, \n <a href=\"https://hackerpublicradio.org/correspondents/0418.html\" target=\"_blank\">David Thrane Christiansen</a>.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3783\" target=\"_blank\">3783</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-02-01</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3783\" target=\"_blank\">Accessibility, and Navigating the HPR Web Pages with a Screen Reader</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0282.html\" target=\"_blank\">Mike Ray</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3784\" target=\"_blank\">3784</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-02-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3784\" target=\"_blank\">Two factor authentication without a phone number</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0407.html\" target=\"_blank\">Celeste</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3785\" target=\"_blank\">3785</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-02-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3785\" target=\"_blank\">Hacking Boba Bubble Tapioca Pearls Fail </a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0036.html\" target=\"_blank\">operat0r</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3786\" target=\"_blank\">3786</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-02-06</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3786\" target=\"_blank\">HPR Community News for January 2023</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3787\" target=\"_blank\">3787</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-02-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3787\" target=\"_blank\">It shouldn\'t crackle like that</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0293.html\" target=\"_blank\">Rho`n</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3788\" target=\"_blank\">3788</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-02-08</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3788\" target=\"_blank\">Nitecore Tube torch</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0225.html\" target=\"_blank\">Dave Morriss</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3789\" target=\"_blank\">3789</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-02-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3789\" target=\"_blank\">Common lisp portable games including acl2 formal logic</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0416.html\" target=\"_blank\">screwtape</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3790\" target=\"_blank\">3790</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-02-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3790\" target=\"_blank\">Tucson, Part 2</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0198.html\" target=\"_blank\">Ahuka</a></td>\n</tr>\n<tr>\n<td><strong><a hr
(3554,'2022-03-17','Guide to the Science and Technology Section of Bitchute',775,'Guide to some cool science and tech channels on Bitchute','<p>Forgot to mention this channel in the podcast<br />\r\n<a href=\"https://www.bitchute.com/channel/yourprivacytv/\" class=\"uri\">https://www.bitchute.com/channel/yourprivacytv/</a></p>\r\n<p>Cozytime<br />\r\n<a href=\"https://www.bitchute.com/channel/2mM8L9mZnvjt/\" class=\"uri\">https://www.bitchute.com/channel/2mM8L9mZnvjt/</a></p>\r\n<p>Grassroots Mechanic Movement<br />\r\n<a href=\"https://www.bitchute.com/channel/miGkQfBM24NZ/\" class=\"uri\">https://www.bitchute.com/channel/miGkQfBM24NZ/</a></p>\r\n<p>too lazy to add any more channels... make an account and you can browse and subscribe too.</p>\r\n',401,0,1,'CC-BY-SA','bitchute,videos,technology,science',0,0,1),
(3541,'2022-02-28','The case of missing ideas.',940,'With negotiation painful barely legible robotic voices will develop into beautiful expressive music ','<p>Just a mixed up overview of cases in the natural human languages of Russian and English types.</p>',398,0,1,'CC-BY-SA','language , cases , russian , grammar , ideas',0,0,1),
(3542,'2022-03-01','The Worst Car I Ever Had',651,'Beeza releases 30 years of frustration about a particularly dreadful car he once owned.','<p>Most of us who drive have probably owned a number of cars over the years. Some are inevitably better than others but there may be one which stands head and shoulders above the rest as the WORST car we\'ve ever owned.</p>\r\n<p>In this episode Beeza gets off his chest a tale of woe regarding a rogue car he had the misfortune to own in the mid 80s.</p>\r\n<p>Maybe other HPR listeners will care to tell their own horror stories in due course......</p>\r\n',246,0,0,'CC-BY-SA','Cars, automobiles',0,0,1),
(3544,'2022-03-03','All my microphones',655,'A show recording using every microphone I had to hand.','<p>I used the following microphones in roughly reverse order of my expectations of their quality:</p>\r\n<ul>\r\n<li><a href=\"https://www.bluemic.com/en-gb/products/yeti/\">Blue Yeti</a> via USB</li>\r\n<li>Plantronics headset via USB (no link as over 10 years old)</li>\r\n<li>Laptop (ASUS ZenBook UX550VD) internal mic</li>\r\n<li>Desktop mic on a Windows 10 PC via a jack plug (no link as over 10 years old)</li>\r\n<li>Phone (Samsung S9+) internal microphone</li>\r\n<li>Same phone but with <a href=\"https://www.willful.info/willful/products/earbuds/40.html\">T1 bluetooth earbuds</a></li>\r\n</ul>\r\n<p>All audio is mono. I used Audacity to record on my laptop at 44.1kHz. For the desktop mic I had to resort to using my son\'s desktop Windows 10 PC and Windows recording app which defaulted to 48kHz and I think it was the app rather than the mic that resulted in the surprisingly poor quality. It definitely sounds like some kind of noise gate is being applied but I didn\'t dig around to see what settings were available. For my phone\'s built-in mic I used Samsung\'s voice recording app which I presume came pre-installed on the phone. Recording via bluetooth on an android phone turned out to be tricky as the OS only wants you to use a bluetooth microphone for calls however I found an app called <a href=\"https://play.google.com/store/apps/details?id=com.wimlog.bluvoicerecorder&amp;hl=en_GB&amp;gl=US\">Bluetooth Headset Voice Recorder</a> and then enabled call audio on bluetooth and was able to record (the rubbish) audio.</p>\r\n<p>I edited this show in audacity and contrary to my normal practice I did <em>not</em> remove noise from any of the recordings so that you can hear any hiss in all its glory. I did however tweak the gain on each track manually so that they were about the same volume.</p>\r\n',268,0,1,'CC-BY-SA','audio,microphone,headset,Plantronics,ASUS ZenBook UX550VD',0,0,1),
(3548,'2022-03-09','Make a custom Git command',1177,'Make Git subcommands with shell scripts and Git rev-parse','<p>\r\nHow to make your own Git subcommands with shell scripts, and then how to pass arguments to them with git rev-parse. </p>\r\n\r\n<p>\r\nFor a real-world example of Git in scripts and hooks, see <a href=\"https://gitlab.com/slackermedia/git-portal\" target=\"_blank\">Git-portal</a>.</p>\r\n\r\n<p>The joke site Klaatu mentions in the episode is \r\n<a href=\"https://git-man-page-generator.lokaltog.net\" target=\"_blank\">git-man-page-generator</a>. It\'s a <strong>joke</strong> site. Do not attempt to run these commands. However, it could be fun inspiration on what Git command you could make next&#33;</p>\r\n',78,81,0,'CC-BY-SA','git',0,0,1),
(3547,'2022-03-08','Password Managers',811,'How I manage password security.','<h2 id=\"how-i-manage-password-security\">How I manage password security.</h2>\r\n<ol>\r\n<li><strong><a href=\"https://bitwarden.com/\">Bitwarden</a></strong></li>\r\n</ol>\r\n<ul>\r\n<li><a href=\"https://bitwarden.com/download/\">Bitwarden Download Options</a></li>\r\n<li><a href=\"https://bitwarden.com/compliance/\">Bitwarden Security and Compliance</a></li>\r\n</ul>\r\n<ol start=\"2\">\r\n<li><strong><a href=\"https://keepassxc.org/\">KeePassXC</a></strong></li>\r\n</ol>\r\n<ul>\r\n<li><a href=\"https://keepassxc.org/download/#linux\">KeePassXC Downloads</a></li>\r\n<li><a href=\"https://keepassxc.org/docs/KeePassXC_GettingStarted.html\">KeePassXC Documentations</a></li>\r\n</ul>\r\n<hr />\r\n<p><a rel=\"license\" href=\"https://creativecommons.org/licenses/by-sa/4.0/\"><img alt=\"Creative Commons License\" style=\"border-width:0\" src=\"https://i.creativecommons.org/l/by-sa/4.0/88x31.png\" /></a><br />This work is licensed under a <a rel=\"license\" href=\"https://creativecommons.org/licenses/by-sa/4.0/\">Creative Commons Attribution-ShareAlike 4.0 International License</a>.</p>\r\n',391,74,0,'CC-BY-SA','Password Managers, Online Security, Bitwarden, KeePassXC',0,0,1),
(3552,'2022-03-15','Unboxing a PineTime development kit',1684,'Rho`n talks about his new PineTime smart watch development kit','<h1>Synopsis</h1>\r\n\r\n<p>In this episode, Rho`n unboxes his new PineTime smart watch development kit, and gives his initial impressions. The development kit consists of two watches. One watch is fully assembled and ready for daily use. The other watch is disassembled, consisting of a watch band, the watch back cover, and the assembled display, system on a chip (SOC), CPU, and battery. The kit also comes with a serial cable for connecting from your computer to the SOC.</p>\r\n\r\n<p>The following are the photographs taken during the unboxing.</p>\r\n\r\n<style>\r\ndiv#figures {\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: wrap;\r\n justify-content: center;\r\n}\r\ndiv#figures figcaption { max-width: 490px; }\r\ndiv#figures img { max-width: 50vw; padding-bottom: 0.15em }\r\n</style>\r\n\r\n<div id=\"figures\">\r\n<figure>\r\n <a href=\"https://hackerpublicradio.org/eps/hpr3552/01.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3552/01-sm.png\"\r\n alt=\"Box containing PrimeTime development kit beside PineTime Pogopin Jig\"></a>\r\n <br>\r\n <figcaption>Box containing PrimeTime development kit beside PineTime Pogopin Jig</figcaption>\r\n</figure>\r\n<figure>\r\n <a href=\"https://hackerpublicradio.org/eps/hpr3552/02.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3552/02-sm.png\"\r\n alt=\"Open box displaying watch faces\"></a>\r\n <br>\r\n <figcaption>Open box displaying watch faces</figcaption>\r\n</figure>\r\n<figure>\r\n <a href=\"https://hackerpublicradio.org/eps/hpr3552/03.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3552/03-sm.png\"\r\n alt=\"Contents of the development kit\"></a>\r\n <br>\r\n <figcaption>Contents of the development kit</figcaption>\r\n</figure>\r\n<figure>\r\n <a href=\"https://hackerpublicradio.org/eps/hpr3552/04.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3552/04-sm.png\"\r\n alt=\"Assembled watch on a charger\"></a>\r\n <br>\r\n <figcaption>Assembled watch on a charger</figcaption>\r\n</figure>\r\n</div>\r\n\r\n<h1>References</h1>\r\n\r\n<ul>\r\n <li>InfiniTime firmware - <a href=\"https://github.com/InfiniTimeOrg/InfiniTime\">https://github.com/InfiniTimeOrg/InfiniTime</a></li>\r\n <li>PineTime watch - <a href=\"https://www.pine64.org/pinetime/\">https://www.pine64.org/pinetime/</a></li>\r\n <li>PineTime development kit - <a href=\"https://pine64.com/product/pinetime-dev-kit/\">https://pine64.com/product/pinetime-dev-kit/</a></li>\r\n <li>PineTime forum - <a href=\"https://forum.pine64.org/forumdisplay.php?fid=134\">https://forum.pine64.org/forumdisplay.php?fid=134</a></li>\r\n <li>PineTime Pogopin Jig - <a href=\"https://pine64.com/product/pinetime-pogopin-jig/\">https://pine64.com/product/pinetime-pogopin-jig/</a></li>\r\n</ul>\r\n\r\n',293,0,0,'CC-BY-SA','pinetime, pine64, smart watch, InfiniTime',0,0,1),
(3551,'2022-03-14','Bash snippet - some possibly helpful hints',1475,'Using \'eval\', \'mapfile\' and environment variables','<h2 id=\"overview\">Overview</h2>\r\n<p>I write a moderate number of Bash scripts these days. Bash is not a programming language as such, but its quite powerful in what it can do by itself, and with other tools its capable of many things.</p>\r\n<p>I have enjoyed writing such scripts for many years on a variety of hardware and operating systems, and Bash is my favourite - partly because Linux itself is so flexible.</p>\r\n<p>This is just a short show describing three things I tend to do in Bash scripts to assist with some tasks I find I need to undertake.</p>\r\n<ol type=\"1\">\r\n<li>Generate Bash variables from a text file - usually output from a program</li>\r\n<li>Fill Bash arrays with data from a file or other source</li>\r\n<li>Use environment variables to control the Bash scripts execution</li>\r\n</ol>\r\n<h2 id=\"long-notes\">Long notes</h2>\r\n<p>Follow this link to <a href=\"https://hackerpublicradio.org/eps/hpr3551/full_shownotes.html\">read the detailed notes</a> associated with this episode.</p>\r\n<h2 id=\"links\">Links</h2>\r\n<ul>\r\n<li>Various links:\r\n<ul>\r\n<li><a href=\"https://unix.stackexchange.com/questions/23111/what-is-the-eval-command-in-bash\">What is the “eval” command in bash?</a></li>\r\n<li><a href=\"https://www.shell-tips.com/bash/arrays/\">A Complete Guide on How To Use Bash Arrays</a></li>\r\n<li><a href=\"https://www.computerhope.com/unix/bash/mapfile.htm\">Bash mapfile builtin command</a></li>\r\n<li><a href=\"https://www.gnu.org/software/bash/manual/html_node/Simple-Command-Expansion.html\">Bash manual 3.7.1 Simple Command Expansion</a></li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>Previous episodes in this series about arrays:\r\n<ul>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=2709\">Bash Tips - 16</a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=2719\">Bash Tips - 17</a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=2729\">Bash Tips - 18</a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=2739\">Bash Tips - 19</a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=2756\">Bash Tips - 20</a></li>\r\n</ul></li>\r\n</ul>\r\n',225,42,1,'CC-BY-SA','Bash,eval,mapfile,environment variables',0,0,1),
(3559,'2022-03-24','Linux Inlaws S01E52: The Zig Project',4151,'An interview with Loris Cro of Zig Fame','<p>In this episode Martin and Chris have a very special guest: Loris Cro of\r\nZig fame. Zig fame? Stay tuned. Not only is Loris an ex-colleague of our two\r\naging heroes, he is also the community vice president at the Zig Software\r\nFoundation. So this episode will be all about this new programming language,\r\nwhy you should use it (and perhaps why you shouldn\'t) and life, the universe\r\nand the rest. And Rust. Of course. :-) Full disclosure: In contrast to other\r\nepisodes, this one is really tech-heavy and may offend the less technical\r\nlisteners. Listen at your own discretion if you want to into the weeds of\r\nClang, LLVM, typing and cross-compilation - you have been warned. If this is\r\nup alley, you may want consider seeking professional help just in case :-).</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>Zig: <a href=\"https://ziglang.org\" target=_blank>https://ziglang.org</a></li>\r\n<li>Zig Foundation financial update: <a href=\"https://ziglang.org/news/financials-update\" target=_blank>https://ziglang.org/news/financials-update</a></li>\r\n<li>Clang / LLVM: <a href=\"https://clang.llvm.org\" target=_blank>https://clang.llvm.org</a></li>\r\n<li>Rust: <a href=\"https://www.rust-lang.org\" target=_blank>https://www.rust-lang.org</a></li>\r\n<li>Cargo: <a href=\"https://doc.rust-lang.org/cargo\" target=_blank>https://doc.rust-lang.org/cargo</a></li>\r\n<li>Mitchell\'s Tweet: <a href=\"https://twitter.com/mitchellh/status/1481441162871279618?s=20&t=OBGncJWN4B0N7mhflxlAbg\" target=_blank>https://twitter.com/mitchellh/status/1481441162871279618?s=20&t=OBGncJWN4B0N7mhflxlAbg</a></li>\r\n<li>501cs (only read this if you can\'t get to sleep!): <a href=\"https://en.wikipedia.org/wiki/501(c)_organization\" target=_blank>https://en.wikipedia.org/wiki/501(c)_organization</a></li>\r\n<li>Miami Vice: <a href=\"https://www.imdb.com/title/tt0086759\" target=_blank>https://www.imdb.com/title/tt0086759</a></li>\r\n<li>Lord of the Rings Trilogy: <a href=\"https://www.imdb.com/list/ls072068350\" target=_blank>https://www.imdb.com/list/ls072068350</a></li>\r\n<li>Land of the Blind: <a href=\"https://www.imdb.com/title/tt0433405/?ref_=fn_al_tt_1\" target=_blank>https://www.imdb.com/title/tt0433405/?ref_=fn_al_tt_1</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','Zig, Zig Software Foundation, Rust, Money, Miami Vice, US Non-Profits',0,0,1),
(3553,'2022-03-16','Freedom of speech in open source',1432,'Is it free speech if you have to leave?','<ol>\r\n<li><strong><a href=\"https://constitution.congress.gov/constitution/\">First Amendment</a></strong> <em>(United States Constitution)</em>.<br />\r\nCongress shall make no law respecting an establishment of religion, or prohibiting the free exercise thereof; or abridging the freedom of speech, or of the press; or the right of the people peaceably to assemble, and to petition the Government for a redress of grievances.</li>\r\n</ol>\r\n<hr />\r\n<ol start=\"2\">\r\n<li>Read arch users the riot act.</li>\r\n</ol>\r\n<ul>\r\n<li><p><strong><a href=\"https://librivox.org/\">LibriVox</a></strong></p>\r\n<ul>\r\n<li><a href=\"https://librivox.org/the-riot-act-by-british-parliament/\">LibriVox: The Riot Act Download</a></li>\r\n<li><a href=\"https://www.youtube.com/watch?v=Cw6RtudEPl8\">Youtube: The Riot Act by LibriVox</a></li>\r\n</ul></li>\r\n<li><p><a href=\"https://en.wikipedia.org/wiki/Riot_Act\">Wikipedia</a></p>\r\n<ul>\r\n<li><a href=\"https://www.gutenberg.org/files/8142/8142-h/8142-h.htm\">Full text of the Riot Act</a></li>\r\n</ul></li>\r\n</ul>\r\n',391,69,1,'CC-BY-SA','Free Speech',0,0,1),
(3562,'2022-03-29','Creating a new project with Haskell and Stack',1230,'Tuula explains how to create a new haskell project and build it','<h1 id=\"stack\">Stack</h1>\r\n<p><a href=\"https://docs.haskellstack.org/en/stable/README/\">Stack</a> is a cross-platform program for developing Haskell projects. It features:</p>\r\n<ul>\r\n<li>Installing GHC automatically, in an isolated location.</li>\r\n<li>Installing packages needed for your project.</li>\r\n<li>Building your project.</li>\r\n<li>Testing your project.</li>\r\n<li>Benchmarking your project.</li>\r\n</ul>\r\n<p>Follow <a href=\"https://docs.haskellstack.org/en/stable/README/\">installation instructions</a> to get it installed in your system.</p>\r\n<h1 id=\"starting-a-new-project\">Starting a new project</h1>\r\n<p>Our game will be called Treasure Dungeon. After installing stack, we\'ll open a new terminal window, change into some suitable directory and use stack to create our project: <code>stack new treasure-dungeon rio</code>.</p>\r\n<p>This will create directory <code>treasure-dungeon</code> and initialize it by using <code>rio</code> template. <a href=\"https://hackage.haskell.org/package/rio\">rio</a> is a standard library that I have recently started using. There\'s a <a href=\"https://www.fpcomplete.com/haskell/library/rio/\">tutorial</a> available if you want to learn more about it. We\'ll cover only very basics while writing the game.</p>\r\n<h2 id=\"package.yaml\">package.yaml</h2>\r\n<p>Next step is to modify the project settings for the project that was created for us. Have a look at license file and change that to your liking. Then open up <code>package.yaml</code> and edit some of the metadata:</p>\r\n<ul>\r\n<li><code>git</code> this should point to your public repository</li>\r\n<li><code>license</code> this has machine readable info about the license terms</li>\r\n<li><code>author</code> here you should fill in your info</li>\r\n<li><code>maintainer</code> this is the person currently maintaining the package</li>\r\n<li><code>copyright</code> Copyright information</li>\r\n<li><code>executablebles</code> this section lists executable, you may want to edit the name</li>\r\n</ul>\r\n<p>I have a repository at <a href=\"https://codeberg.org/Tuula/treasure-dungeon\">codeberg</a> if you want to have a look what settings I ended up with.</p>\r\n<h2 id=\"stack.yaml\">stack.yaml</h2>\r\n<p>Having finished with <code>package.yaml</code>, save it and start editing <code>stack.yaml</code>. Here we change only one setting: - resolver: lts-18.27, this specifies which set of libraries to use. These are fetched from <a href=\"https://www.stackage.org/\">Stackage</a>.</p>\r\n<p>Final step is to edit <code>README.md</code> to suit your needs.</p>\r\n<h1 id=\"using-stack\">Using stack</h1>\r\n<p>Now we can work on our project. Lets start by building it: <code>stack build</code>. This will build the example code. There\'s one library and one executable there. If everything went correctly, we can start our executable with <code>stack exec -- treasure-dungeon</code>. This should print a little message on screen and exit. We can also turn on verbose logging, by starting the project with <code>stack exec -- treasure-dungeon --verbose 2&gt; log.txt</code>.</p>\r\n<p>Another useful command is <code>stack test</code>, which will compile and run tests for the project. There\'s couple simple ones as an example created by the template.</p>\r\n<p>And if you want to clean up your project of intermediate files and exes, you can use <code>stack clean</code>.</p>\r\n<h1 id=\"project-structure\">Project structure</h1>\r\n<p>Final thing before finishing, let\'s have a look at the project structure. There\'s three directories: <code>app</code>, <code>src</code> and <code>test</code>.</p>\r\n<p><code>app</code> contains code for our executable. This is where we will be placing big portion of the code, mainly one that deals with user interactions.</p>\r\n<p><code>src</code> contains code for our library. This is where we will be placing code that codifies rules of the game. We want to
(3555,'2022-03-18','PopKorn Episode 1: The Fallacy of the Unreasonable Effectiveness of Mathematics in the ETC',969,'BlacKernel tries talking off the cuff with mixed results','<h1>Talking Points</h1>\r\n<ul>\r\n <li>The concept of PopKorn</li>\r\n <li>The statement of \"The Unreasonable Effectiveness of Mathematics in the Natural Sciences\"</li>\r\n <li>The Fine-structure Constant</li>\r\n <li>The Axiom of Extentionality</li>\r\n <li>Why proofs of God are crap</li>\r\n <li>The \"First Mover\" argument of St. Thomas Aquinus</li>\r\n <li>The Blind Watchmaker by Dawkins</li>\r\n</ul>\r\n\r\n<hr>\r\n\r\n<h1>Show Notes</h1>\r\n<h4>Important Links:</h4>\r\n<ul>\r\n <li><a href=\"https://apps.kde.org/kwave/\">KWave</a></li>\r\n <li><a href=\"https://freesound.org/people/Trollarch2/sounds/331656/\">Keyboard Typing - FreeSound.org</a></li>\r\n <li><a href=\"https://rationalwiki.org/wiki/Non_sequitur\">Non-Sequitur Argument</a></li>\r\n <li><a href=\"https://rationalwiki.org/wiki/Circular_reasoning\">Circular Reasoning</a></li>\r\n</ul>\r\n\r\n<h4>Wikipedia Articles:</h4>\r\n<ul>\r\n <li><a href=\"https://en.wikipedia.org/wiki/The_Unreasonable_Effectiveness_of_Mathematics_in_the_Natural_Sciences\">The Unreasonable Effectiveness of Mathematics in the Natural Sciences</a></li>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Fine-structure_constant\">Fine-structure Constant</a></li>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Axiom_of_extensionality\">Axiom of Extentionality</a></li>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Cosmological_argument\">\"First Mover\" or Cosmological Argument</a></li>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Watchmaker_analogy\">Watchmaker Analogy</a></li>\r\n <li><a href=\"https://en.wikipedia.org/wiki/The_Blind_Watchmaker\">The Blind Watchmaker by Dawkins</a></li>\r\n</ul>\r\n\r\n<hr>\r\n\r\n<i>Contact Me</i>\r\n<ul>\r\n<li><b>Email: </b><a href=\"mailto:izzyleibowitz@pm.me\">izzyleibowitz at pm dot me</a></li>\r\n<li><b>Mastodon: </b><a href=\"https://nixnet.social/BlacKernel\">at blackernel at nixnet dot social</a></li>\r\n</ul>\r\n',396,0,1,'CC-BY-SA','improv, math, popkorn, fallacy',0,0,1),
(3556,'2022-03-21','TTS for HPR',226,'Few voice samples to swap espeak TTS in HPR intro','<p>Used the <a href=\"https://github.com/synesthesiam/opentts\">opentts</a> Project with default settings. The voices you will hear in order:</p>\r\n<ul>\r\n<li>coqui_en_ljspeech</li>\r\n<li>larynx_northern_english_male</li>\r\n<li>larynx_southern_english_female</li>\r\n<li>larynx_scottish_english_male</li>\r\n<li>larynx_glados</li>\r\n</ul>\r\n<p>I found the gladOS voice funny, hence I included that one, but these are the best sounding to my knowledge so far.</p>\r\n<p>I have seen that with there will be a new mimic release version 3 soon, which has a really great voice. And example with the voice of Alan Pope <a href=\"https://www.youtube.com/watch?v=QZmf1jk86y0\">mycroft_demo</a>. And synesthesiam who\'s working on these projects said that there will be hopefully a model, which can be trained with actual voice, which would fine tune the voice to sounds more like someone else.</p>\r\n',402,0,0,'CC-BY-SA','tts, hpr',0,0,1),
(3563,'2022-03-30','Home Coffee Roasting, part 1',1123,'What it\'s like to roast coffee at home','<h2 id=\"links\">Links</h2>\r\n<p><a href=\"https://www.sweetmarias.com/guatemala-huehuetenango-boqueroncito-6846.html\">Example of a coffee page</a></p>\r\n<p><a href=\"https://library.sweetmarias.com/green-coffee-outlook-march-2022-for-sweet-marias-and-coffee-shrub/\">Green coffee outlook for March</a></p>\r\n<p><a href=\"https://www.youtube.com/watch?v=r9xMarGcGp8\">A neat video of first crack</a></p>\r\n<p><a href=\"https://library.sweetmarias.com/glossary/\">Coffee Glossary</a></p>\r\n<p><a href=\"https://library.sweetmarias.com/good-reads-what-happened-to-zimbabwe-coffee/\">Article on Zimbabwe coffee</a></p>\r\n<p><a href=\"https://library.sweetmarias.com/ethiopian-cini-coffee-cups-at-sweet-marias/\">Ethiopian Cini cups</a></p>\r\n<p>If I left anything out, let me know in the comments or email me.</p>\r\n<p>I think I mentioned in the show that I would put in the sound of first crack, but then it didn\'t work because the motor was too loud and you couldn\'t hear anything. Sorry.</p>\r\n<p>For part 2, see <a href=\"https://hackerpublicradio.org/eps.php?id=3573\">hpr3573</a></p>\r\n',399,88,0,'CC-BY-SA','coffee,\"coffee roasting\"',0,0,1),
(3573,'2022-04-13','Home Coffee Roasting, part 2',1230,'How I\'ve roasted and brewed coffee','<h2 id=\"roasting\">Roasting</h2>\r\n<p>Popcorn popper</p>\r\n<p>Stovepop</p>\r\n<p><a href=\"https://behmor.com/\">Behmor 2000AB Plus</a></p>\r\n<p><a href=\"https://www.roastmasters.com/sr700.html\">FreshRoast SR700</a> (has been discontinued, newer models are available but the 700 I think was the last one or the only one with USB control)</p>\r\n<p><a href=\"https://github.com/Roastero/Openroast\">Openroast</a></p>\r\n<h2 id=\"brewing\">Brewing</h2>\r\n<p><a href=\"https://en.wikipedia.org/wiki/Moka_pot\">Moka pot</a></p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/French_press\">French Press</a></p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/Brewed_coffee#/media/File:Kaffeefilter.jpg\">Pour Over</a></p>\r\n<p><a href=\"https://www.bruer.co/\">Bruer</a></p>\r\n<p><a href=\"https://flairespresso.com/\">Flair</a></p>\r\n<p><a href=\"https://aeropress.com/\">Aeropress</a></p>\r\n<hr />\r\n<p>If I left anything out, let me know in the comments or email me.</p>\r\n<p>For part 1, see <a href=\"https://hackerpublicradio.org/eps.php?id=3563\">hpr3563</a></p>\r\n',399,88,0,'CC-BY-SA','coffee,\"coffee roasting\"',0,0,1),
(3561,'2022-03-28','Employment security',410,'Phone system for the state of Illinois','<p>Going through the phone system for the state of Illinois in the United States.</p>\r\n<p>Feel free to record your experience with various states/countries.</p>\r\n',318,0,0,'CC-BY-SA','Phone call, IDES, Unemployment, Government, Firefox, Internet Explorer',0,0,1),
(3557,'2022-03-22','A short story about Lenovo and laptop batteries',580,'How Lenovo is spicing up the life of their user with strange challenges','<ul>\r\n<li><strong>kvalitetsdatorer.se</strong> <a href=\"https://www.kvalitetsdatorer.se/se/\" class=\"uri\">https://www.kvalitetsdatorer.se/se/</a> The company where I bought my refurbished Thinkpad T530</li>\r\n<li><strong>inxi -Bxxx</strong> Command to get full information about all batteries in the system. Even on devices connected to the computer, as my Sansa Clip+ f.ex.</li>\r\n<li><strong>Thinkpad X230 battery patch</strong> <a href=\"https://bystram.be/posts/thinkpad-x230-battery-ec-patch/\" class=\"uri\">https://bystram.be/posts/thinkpad-x230-battery-ec-patch/</a></li>\r\n<li><strong>batteriexperten.se</strong> <a href=\"https://www.batteriexperten.com/sv/\" class=\"uri\">https://www.batteriexperten.com/sv/</a></li>\r\n<li><strong>tpacpi-bat</strong> A Perl script with ACPI calls for recent ThinkPads (such as T420 and W520) whose battery thresholds are not supported by tp_smapi</li>\r\n</ul>\r\n',309,0,0,'CC-BY-SA','lenovo,batteries,BIOS,customer service',0,0,1),
(3558,'2022-03-23','How I\'m learning Haskell',1394,'Tuula talks about how she\'s learning Haskell','<p>Online resources mentioned in the episode for learning Haskell:</p>\r\n<ul>\r\n<li><a href=\"https://github.com/bitemyapp/learnhaskell\">How to Learn Haskell - Chris Allen</a></li>\r\n<li><a href=\"https://www.seas.upenn.edu/~cis194/spring13/lectures.html\">CIS 194 - Brent Yorgey</a></li>\r\n<li><a href=\"https://www.learnyouahaskell.com/\">Learn You a Haskell for Great Good!</a></li>\r\n<li><a href=\"https://github.com/LambdaHack/LambdaHack\">LambdaHack</a> is a framework for Roguelike games.</li>\r\n</ul>\r\n<p>Books about Haskell:</p>\r\n<ul>\r\n<li><a href=\"https://haskellbook.com/\">Haskell Programming from First Principles - Chris Allen</a></li>\r\n<li><a href=\"https://algebradriven.design/\">Algebra-Driven Design - Sandy Maguire</a></li>\r\n<li><a href=\"https://leanpub.com/optics-by-example\">Optics by Example - Chris Penner</a></li>\r\n<li><a href=\"https://leanpub.com/production-haskell\">Production Haskell</a></li>\r\n<li><a href=\"https://thinkingwithtypes.com/\">Thinking With Types: Type-Level Programming in Haskell - Sandy Maguire</a></li>\r\n<li><a href=\"https://dev.stephendiehl.com/hask/\">What I Wish I Knew When Learning Haskell - Stephen Diehl</a></li>\r\n</ul>\r\n<p>Blogs I follow:</p>\r\n<ul>\r\n<li><a href=\"https://planet.haskell.org/\">Planet Haskell</a></li>\r\n<li><a href=\"https://mmhaskell.com/blog/\">Monday Morning Haskell</a></li>\r\n<li><a href=\"https://lexi-lambda.github.io/\">Alexis King</a></li>\r\n</ul>\r\n<p>Important reminders:</p>\r\n<ul>\r\n<li>haskell isn\'t impossible</li>\r\n<li>you don\'t need math degree to write Haskell</li>\r\n<li>you don\'t need to know category theory</li>\r\n<li>you need practice, you most likely can\'t just stare at code and learn it like that</li>\r\n</ul>\r\n<p>ad astra!</p>\r\n',364,107,0,'CC-BY-SA','haskell, learning, programming, blogs, books',0,0,1),
(3564,'2022-03-31','Removing EXIF data from an image',745,'An image might reveal data you want to keep private','<h2 id=\"introduction\">Introduction</h2>\r\n<p>Im writing a script to process image files sent in by HPR hosts with their shows. One of the things the script does is to strip <em>Exif</em> metadata from such images. Thats because this metadata may contain details that could identify the creator of the image - their camera, their location, and other things. Many people will be alert to this, but in case anything slips through it seems a courtesy to <em>anonymise</em> images sent to HPR.</p>\r\n<p>As I was implementing this I realised that one piece of Exif data: <code>\'Orientation\'</code>, cant just be removed. Sometimes images are created with a particular orientation by the camera but are written with an Exif orientation setting that shows another orientation. If this is just removed the image might be shown wrongly.</p>\r\n<p>This short episode describes the journey I had learning about this issue and finding how to get round it.</p>\r\n<h2 id=\"the-problem\">The Problem</h2>\r\n<p>A show was sent in early March 2022 which had three images with orientation values in the Exif metadata. They had apparently been taken with one orientation but were being rotated for viewing.</p>\r\n<p>I later discovered that the orientation setting can be viewed with the <a href=\"https://www.exiftool.org/\" title=\"ExifTool by Phil Harvey\"><code>exiftool</code></a> command:</p>\r\n<pre><code>$ exiftool -orientation testimage.jpg\r\nOrientation : Rotate 90 CW</code></pre>\r\n<p>You can find information about the <code>Orientation</code> tag on the <a href=\"https://www.exiftool.org/TagNames/EXIF.html\" title=\"ExifTool: EXIF Tags\">ExifTool web site</a>.</p>\r\n<p>The actual image in this case is rotated 90° anti-clockwise (the top of the image is to the left) and this needs to be reversed. The setting <code>\'Rotate 90 CW\'</code> causes it to be displayed after rotating 90° in the clockwise direction. The actual value for this setting is <strong>6</strong>.</p>\r\n<p>The problem is that removing <u>all</u> the Exif data causes such an image to revert to its <em>raw</em> state as explained below.</p>\r\n<h2 id=\"investigation\">Investigation</h2>\r\n<h3 id=\"demonstration\">Demonstration</h3>\r\n<p>It took me a little while to understand this problem because I couldnt find a good explanation of what was going on.</p>\r\n<p>I found a <a href=\"https://github.com/recurser/exif-orientation-examples\" title=\"EXIF Orientation-flag example images\">repository on GitHub</a> which would take a picture and generate all of the possible Exif orientations from it. I used it to generate pictures from one (a thumbnail) I used in an old HPR show. Heres the original picture with an orientation setting of 6 (<code>Rotate 90 CW</code>), and then with the Exif metadata removed.</p>\r\n<p><em>Original image with orientation 6</em><br />\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3564/P1020743_6_original_tn.JPG\" alt=\"Original image with orientation 6\" /></p>\r\n<p><em>Same image with Exif stripped</em><br />\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3564/P1020743_6_stripped_tn.JPG\" alt=\"Same image with Exif stripped\" /></p>\r\n<h3 id=\"methods-used-to-fix-this\">Methods used to fix this</h3>\r\n<p>I found and installed some tools:</p>\r\n<ul>\r\n<li><code>jpegexiforient</code> - reads or writes the Exif Orientation Tag</li>\r\n<li><code>exifautotran</code> - transforms Exif files so that Orientation becomes 1</li>\r\n<li><code>jpegtran</code> - lossless transformation of JPEG files</li>\r\n</ul>\r\n<p>Note that these only operate on JPEG images.</p>\r\n<p>The <code>exifautotran</code> tool is a shell script that uses <code>jpegexiforient</code> to find the orientation and <code>jpegtran</code> to undo whatever rotation (or other transformation) has been defined.</p>\r\n<p>Reading the <code>exifautotran</code> script helped me understand all of this, but I did not use these tools in t
(3579,'2022-04-21','PINN is not NOOBS',650,'Multibooting raspberry pi','<h3 id=\"multiboot-with-pinn\">Multiboot with PINN</h3>\r\n<p><a href=\"https://github.com/procount/pinn/blob/master/README_PINN.md\" class=\"uri\">https://github.com/procount/pinn/blob/master/README_PINN.md</a></p>\r\n<blockquote>\r\n<p>What is PINN (PINN Is Not NOOBS)?</p>\r\n<p>An easy enhanced Operating System installer for the Raspberry Pi</p>\r\n<p>The latest version of PINN can be downloaded from sourceforge.</p>\r\n<p>This README relates to v3.8</p>\r\n<p>(PINN-lite does not include any operating systems at all.</p>\r\n<p>It is more akin to NOOBS-lite rather than NOOBS. For that reason, the filename that you download is called pinn-lite.zip. More recently, pinn.zip has also been made available for download which includes versions of Raspbian and LibreELEC.)</p>\r\n</blockquote>\r\n<h4 id=\"sourceforge\">Sourceforge</h4>\r\n<p><a href=\"https://sourceforge.net/projects/pinn/\" class=\"uri\">https://sourceforge.net/projects/pinn/</a></p>\r\n<h4 id=\"github\">Github</h4>\r\n<p><a href=\"https://github.com/procount/pinn\" class=\"uri\">https://github.com/procount/pinn</a></p>\r\n<ul>\r\n<li><h5 id=\"release-page\">Release page</h5>\r\n<ul>\r\n<li><a href=\"https://github.com/procount/pinn/releases/tag/p3.8.1\" class=\"uri\">https://github.com/procount/pinn/releases/tag/p3.8.1</a></li>\r\n</ul></li>\r\n</ul>\r\n<h4 id=\"web-ui-for-pinn\">Web UI for PINN</h4>\r\n<p><a href=\"https://pinn.mjh.nz/\" class=\"uri\">https://pinn.mjh.nz/</a></p>\r\n<ul>\r\n<li><h5 id=\"instructions\">Instructions</h5></li>\r\n</ul>\r\n<blockquote>\r\n<p>Unzip pinn-lite.zip</p>\r\n</blockquote>\r\n<blockquote>\r\n<p>Replace recovery.cmdline file in PINN directory with downloaded file</p>\r\n</blockquote>\r\n<blockquote>\r\n<p>Copy the contents of the PINN directory to your FAT32 formatted media</p>\r\n</blockquote>\r\n<blockquote>\r\n<p>Boot your Raspberry Pi</p>\r\n</blockquote>\r\n<blockquote>\r\n<p>Select all systems and install</p>\r\n</blockquote>\r\n<blockquote>\r\n<p>Enjoy!</p>\r\n</blockquote>\r\n<p><em>Installation instructions</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3579/image_005.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3579/image_005_thumbnail.png\" alt=\"Installation instructions\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\r\n<p><a href=\"https://www.youtube.com/watch?v=tc2dSMiUfmI&amp;t=171s\" class=\"uri\">https://www.youtube.com/watch?v=tc2dSMiUfmI&amp;t=171s</a></p>\r\n<h4 id=\"raspberry-pi-os-64-bit-release-news\">Raspberry Pi OS 64-bit release news</h4>\r\n<p><a href=\"https://www.raspberrypi.com/news/raspberry-pi-os-64-bit/\" class=\"uri\">https://www.raspberrypi.com/news/raspberry-pi-os-64-bit/</a></p>\r\n<ul>\r\n<li><h5 id=\"downloads\">Downloads</h5>\r\n<ul>\r\n<li><a href=\"https://www.raspberrypi.com/software/operating-systems/\" class=\"uri\">https://www.raspberrypi.com/software/operating-systems/</a></li>\r\n</ul></li>\r\n</ul>\r\n<p><em>OS installation selection</em><br />\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3579/image_001.jpg\" alt=\"OS installation selection\" /></p>\r\n<p><em>Installing RetroPie</em><br />\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3579/image_002.jpg\" alt=\"Installing RetroPie\" /></p>\r\n<p><em>Installing Kodi/OSMC</em><br />\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3579/image_003.jpg\" alt=\"Installing Kodi/OSMC\" /></p>\r\n<p><em>Boot selection menu</em><br />\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3579/image_004.jpg\" alt=\"Boot selection menu\" /></p>\r\n',318,0,0,'CC-BY-SA','Raspberry Pi, 64 bit, multiboot, Retropie, Kodi',0,0,1),
(3569,'2022-04-07','Linux Inlaws S01E53: Rust Marketing',2661,'A shameless plug for this hippster programming language and why you should use it','<p>In this episode our two heroes explore the depths a new (?) hipster\r\nprogramming language called Rust. Being an obvious piece of blatant technology\r\nmarketing, the Linux Inlaws are still waiting for the funds to arrive from the\r\nRust Foundation :-) (@Foundation: If you want to get in touch please send\r\na mail to sponsor at linuxinlaws eu). Jokes aside, the episode give a short\r\noverview of this new programming language without going into deeper technical\r\ndetails as this podcast is only the usual four hours long.</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>Rust: <a href=\"https://en.wikipedia.org/wiki/Rust\" target=_blank>https://en.wikipedia.org/wiki/Rust</a></li>\r\n<li>Rust (II): <a href=\"https://www.rust-lang.org\" target=_blank>https://www.rust-lang.org</a></li>\r\n<li>Firefox and Rust: <a href=\"https://servo.org\" target=_blank>https://servo.org</a></li>\r\n<li>Rust on TIOBE: <a href=\"https://www.tiobe.com/tiobe-index/rust\" target=_blank>https://www.tiobe.com/tiobe-index/rust</a></li>\r\n<li>Rust adoption: <a href=\"https://thenewstack.io/rust-by-the-numbers-the-rust-programming-language-in-2021\" target=_blank>https://thenewstack.io/rust-by-the-numbers-the-rust-programming-language-in-2021</a></li>\r\n<li>Bottlerocket: <a href=\"https://aws.amazon.com/bottlerocket/\" target=_blank>https://aws.amazon.com/bottlerocket/</a></li>\r\n<li>Rust Foundation: <a href=\"https://foundation.rust-lang.org\" target=_blank>https://foundation.rust-lang.org</a></li>\r\n<li>Cargo (Rust\'s package management and build system): <a href=\"https://doc.rust-lang.org/cargo\" target=_blank>https://doc.rust-lang.org/cargo</a></li>\r\n<li>Rust\'s Crates: <a href=\"https://crates.io\" target=_blank>https://crates.io</a></li>\r\n<li>D-Wave\'s quantum machines: <a href=\"https://www.dwavesys.com/solutions-and-products/systems\" target=_blank>https://www.dwavesys.com/solutions-and-products/systems</a></li>\r\n<li>Grumpies: <a href=\"https://grumpy-old-coders.org\" target=_blank>https://grumpy-old-coders.org</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','Rust, The Rust Foundation, Firefox, D-Wave, Cargo',0,0,1),
(3568,'2022-04-06','PopKorn Episode 2: Programming, Mathematics, and Asymmetric Literacy',899,'in This episOde, blackeRnel Tries to help yoU undeRstand Enough about math and programming','<h1>Talking Points</h1>\r\n<ul>\r\n <li>Any audio is better than no audio?</li>\r\n <li>Mathematics = Logic</li>\r\n <li>ZFC Axioms show logical structure</li>\r\n <li>Peano Axioms illustrating this point</li>\r\n <li>Euclid\'s Axioms showing how just because something is logical doesn\'t mean that has anything to do with reality</li>\r\n <li>x86 Instruction set showing the axiomatic basis of programming</li>\r\n <li>Asymmetric Literacy in Chinese languages.</li>\r\n <li>NOTE: This section is slightly incorrect in that there is a separate written form for Cantonese as well, but I hope that the main idea is still intelligible.</li>\r\n</ul>\r\n\r\n<hr>\r\n\r\n<h1>Show Notes</h1>\r\n<h4>Important Links:</h4>\r\n<ul>\r\n <li><a href=\"https://nixnet.social/notice/AHe409EDWjWtFgnYIa\">Relevant Mastodon Status</a></li>\r\n</ul>\r\n\r\n<h4>Wikipedia Articles:</h4>\r\n<ul>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Zermelo%E2%80%93Fraenkel_set_theory\">ZFC set theory</a></li>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Von_Neumann%E2%80%93Bernays%E2%80%93G%C3%B6del_set_theory\">Von Neumann-Bernays-G&ouml;del set theory</a></li>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Peano_axioms\">Peano axioms</a></li>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Euclidean_geometry#Axioms\">Euclid\'s axioms</a></li>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Parallel_postulate#Equivalent_properties\">Equivalent Axioms to the 5th postulate (Number 8 is rectangles exist)</a></li>\r\n <li><a href=\"https://en.wikipedia.org/wiki/X86_instruction_listings\">x86 Instruction Listings</a></li>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Written_Chinese\">Written Chinese</a></li>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Cantonese\">Cantonese</a></li>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Mandarin_Chinese\">Mandarin Chinese</a></li>\r\n <li><a href=\"https://en.wikipedia.org/wiki/Written_Cantonese\">Written Cantonese</a></li>\r\n</ul>\r\n\r\n<hr>\r\n\r\n<i>Contact Me</i>\r\n<ul>\r\n<li><b>Email: </b><a href=\"mailto:izzyleibowitz@pm.me\">izzyleibowitz at pm dot me</a></li>\r\n<li><b>Mastodon: </b><a href=\"https://nixnet.social/BlacKernel\">at blackernel at nixnet dot social</a></li>\r\n</ul>\r\n',396,0,0,'CC-BY-SA','improv, math, popkorn, programming, language',0,0,1),
(3571,'2022-04-11','The Meatball Mystery',512,'A naming oddity leads to questions about geneaology and American history','<p>Discussing the interesting oddity that is the meatball; its origins, and some misconceptions and coincidences surrounding the tasty \"traditional\" dish of spaghetti and meatballs.</p>\r\n<p>Historical context and explanations were provided by the article \"<a href=\"https://www.smithsonianmag.com/arts-culture/is-spaghetti-and-meatballs-italian-94819690/\">Is Spaghetti and Meatballs Italian?</a>\" by <a href=\"https://www.smithsonianmag.com/author/shaylyn-esposito/\">Shaylyn Esposito</a>, published in <a href=\"https://www.smithsonianmag.com\">Smithsonian Magazine</a>.</p>',196,0,1,'CC-BY-SA','cuisine, food, genealogy',0,0,1),
(3572,'2022-04-12','More about NVMe',1142,'Who what when and were of NVMe','<p><a href=\"https://www.pcworld.com/article/432532/everything-you-need-to-know-about-nvme.html\" class=\"uri\">NVMe SSDs: Everything you need to know about this insanely fast storage</a></p>\r\n\r\n<p>\r\nNVM Express (NVMe) or Non-Volatile Memory Host Controller Interface Specification (NVMHCIS) is an open, logical-device interface specification for accessing a computer\'s non-volatile storage media usually attached via PCI Express (PCIe) bus. The acronym NVM stands for non-volatile memory, which is often NAND flash memory that comes in several physical form factors, including solid-state drives (SSDs), PCI Express (PCIe) add-in cards, and M.2 cards, the successor to mSATA cards. NVM Express, as a logical-device interface, has been designed to capitalize on the low latency and internal parallelism of solid-state storage devices<br />\r\n<a href=\"https://en.wikipedia.org/wiki/NVM_Express\">https://en.wikipedia.org/wiki/NVM_Express</a>\r\n</p>\r\n\r\n\r\n',129,0,0,'CC-BY-SA','ssd,NVME Storage,high performance',0,0,1),
(3567,'2022-04-05','What is NVMe™ and why is it important?',1020,'A short Podcast about NVMe how it works and it is good','<p><a href=\"https://blog.westerndigital.com/nvme-important-data-driven-businesses/\" class=\"uri\">https://blog.westerndigital.com/nvme-important-data-driven-businesses/</a></p>\r\n\r\n<p>\r\nNVM Express (NVMe) or Non-Volatile Memory Host Controller Interface Specification (NVMHCIS) is an open, logical-device interface specification for accessing a computer\'s non-volatile storage media usually attached via PCI Express (PCIe) bus. The acronym NVM stands for non-volatile memory, which is often NAND flash memory that comes in several physical form factors, including solid-state drives (SSDs), PCI Express (PCIe) add-in cards, and M.2 cards, the successor to mSATA cards. NVM Express, as a logical-device interface, has been designed to capitalize on the low latency and internal parallelism of solid-state storage devices<br />\r\n<a href=\"https://en.wikipedia.org/wiki/NVM_Express\">https://en.wikipedia.org/wiki/NVM_Express</a>\r\n</p>\r\n\r\n',129,0,0,'CC-BY-SA','ssd,NVME Storage,high performance',0,0,1),
(3826,'2023-04-03','HPR Community News for March 2023',5070,'HPR Volunteers talk about shows released and comments posted in March 2023','<style>\ntable td.shrink {\n white-space:nowrap\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nThere were no new hosts this month.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3803\" target=\"_blank\">3803</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-03-01</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3803\" target=\"_blank\">Chatbot hallucination</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3804\" target=\"_blank\">3804</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-03-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3804\" target=\"_blank\">2022-2023 New Years Show Episode 2</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3805\" target=\"_blank\">3805</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-03-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3805\" target=\"_blank\">Document File Formats on Wikipedia</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0318.html\" target=\"_blank\">Archer72</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3806\" target=\"_blank\">3806</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-03-06</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3806\" target=\"_blank\">HPR Community News for February 2023</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3807\" target=\"_blank\">3807</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-03-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3807\" target=\"_blank\">PeePaw builds a computer</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0326.html\" target=\"_blank\">Brian in Ohio</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3808\" target=\"_blank\">3808</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-03-08</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3808\" target=\"_blank\">Funkwhale A social platform to enjoy and share music</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0030.html\" target=\"_blank\">Ken Fallon</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3809\" target=\"_blank\">3809</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-03-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3809\" target=\"_blank\">The Abominable Post Apocalyptic Podcast Player</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0401.html\" target=\"_blank\">Mechatroniac</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3810\" target=\"_blank\">3810</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-03-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3810\" target=\"_blank\">Clifton, Arizona</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0198.html\" target=\"_blank\">Ahuka</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps.php?id=3811\" target=\"_blank\">3811</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-03-13</td>\n<td><a href=\"https://hackerpublicradio.org/eps.php?id=3811\" target=\"_blank\">mkfifo and named pipes</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0078.html\" target=\"_blank\">Klaatu</a></td>\n</tr>\n<t
(3574,'2022-04-14','Local Talking Newspapers',393,'Recordings of Local News for the Blind and Visually Impaired','<p>The Talking News Federation website:</p>\r\n<p><a href=\"https://tnf.org.uk/\" class=\"uri\">https://tnf.org.uk/</a></p>\r\n<p>With links to 300+ talking newspapers in the UK.</p>\r\n<p>The British Wireless for the Blind website:</p>\r\n<p><a href=\"https://www.bwbf.org.uk/\" class=\"uri\">https://www.bwbf.org.uk/</a></p>\r\n<p>Royalty Free Music from Bensound:</p>\r\n<p><a href=\"https://www.bensound.com/\" class=\"uri\">https://www.bensound.com/</a></p>\r\n<p>The Audacity website:</p>\r\n<p><a href=\"https://www.audacityteam.org/\" class=\"uri\">https://www.audacityteam.org/</a></p>\r\n',403,79,0,'CC-BY-SA','blind, audio, recording',0,0,1),
(3575,'2022-04-15','An Edinburgh Blether',3724,'MrX and Dave Morriss catching up after nearly a year','<h2 id=\"introduction\">Introduction</h2>\r\n<p>Hosts:</p>\r\n<ul>\r\n<li><a href=\"https://hackerpublicradio.org/correspondents/0201.html\">MrX</a></li>\r\n<li><a href=\"https://hackerpublicradio.org/correspondents/0225.html\">Dave Morriss</a></li>\r\n</ul>\r\n<p>We recorded this on Sunday March 6<sup>th</sup> 2022. The last time we set up a chat like this was back in March 2021, almost exactly a year ago surprisingly!</p>\r\n<p><small>Note on the title: we spoke a little on the subject of the Scots language in the show - when speaking of the current census - so the title uses a Scots term.</small></p>\r\n<h2 id=\"topics-discussed\">Topics discussed</h2>\r\n<ul>\r\n<li>COVID:\r\n<ul>\r\n<li>Losing track of time</li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>Christmas:\r\n<ul>\r\n<li>A quiet time for both of the hosts, with some family time</li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>Daves family matters:\r\n<ul>\r\n<li>Son graduated after doing an MSc and got a job quite quickly last year</li>\r\n<li>Daughter had graduated from an MSc the year before and also got a job this year.</li>\r\n<li>Dave had a bout of <em>shingles</em> in early January, which lasted about 6-7 weeks overall. If you can get a shingles vaccination as you age, get one!</li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>UK heating, boilers, etc.\r\n<ul>\r\n<li>MrXs in-laws had a boiler failure during the cold weather, and a gas leak!</li>\r\n<li>Dave had a leak in his cold water tank in the attic which flooded the room below. He decided to completely upgrade the heating system, remove all tanks and put in a new pressurised condensing gas boiler. See the Wikipedia page for an overview of <a href=\"https://en.wikipedia.org/wiki/Central_heating\" title=\"Central heating\">central heating systems</a>.</li>\r\n<li>Old-style plumbing; coal fires, back boilers and dampers.</li>\r\n<li>The era of coal:\r\n<ul>\r\n<li><a href=\"https://en.wiktionary.org/wiki/gas_poker\" title=\"Gas poker\">Gas poker</a> used for starting domestic (usually coal) fires</li>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Coal_gas\" title=\"Coal gas\">Coal gas</a> made from coal, superseded by natural gas</li>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Gas_holder\" title=\"Gasometer or Gas holder\">Gasometer</a> storage device for coal gas</li>\r\n</ul></li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>Internet connectivity:\r\n<ul>\r\n<li>Dave has transitioned from ADSL to fibre since the last show\r\n<ul>\r\n<li><em>Fibre to the Premises</em>, with up to 1 Gbit/s if desired</li>\r\n<li>New router using <em>Wireless 6</em></li>\r\n</ul></li>\r\n<li>MrX has <em>Fibre to the Cabinet</em></li>\r\n<li>Daves new router doesnt allow the Pi-hole to work at the moment</li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>Chromebook:\r\n<ul>\r\n<li>MrX has acquired a Chromebook since our last show\r\n<ul>\r\n<li>It is convenient to use. Made answering the online Scottish Census quite straightforward.</li>\r\n</ul></li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>Census and <a href=\"https://en.wikipedia.org/wiki/Scots_language\" title=\"Scots Language\">Scots Language</a>:\r\n<ul>\r\n<li>The Census asks about the Scots Language, whether the person can speak and understand it.</li>\r\n<li>Dave follows <a href=\"https://twitter.com/Lenniesaurus\" title=\"@lenniesaurus on Twitter\"><code>@lenniesaurus</code> on Twitter</a> who introduces a daily Scots word.</li>\r\n<li>According to Wikipedia:</li>\r\n</ul>\r\n<blockquote>\r\n<p><em>Scots is recognised as an indigenous language of Scotland, a regional or minority language of Europe, and a vulnerable language by UNESCO. In the 2011 Scottish Census, over 1.5 million people in Scotland reported being able to speak Scots.</em></p>\r\n</blockquote></li>\r\n</ul>\r\n<h2 id=\"links\">Links</h2>\r\n<ul>\r\n<li>Scots words:\r\n<ul>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Scots_language\">Scots Language</a></li>\r\n<li><a href=\"\">The online Scots dictionary (E
(3576,'2022-04-18','First impressions of Ubuntu 22.04 as a daily driver.',1380,'Knightwise gives his first impressions on the latest LTS release of Ubuntu','<p>Knightwise gives us a good first impression of the Ubuntu 22.04 release and answers the question if its ready for prime time. We go down a little rabbithole on why there will never be a year of the Linux desktop.</p>\r\n<p>The app mentioned to Sync Onedrive with Ubuntu is Insync: <a href=\"https://www.insynchq.com\" class=\"uri\">https://www.insynchq.com</a></p>\r\n<p>The podcast about Knightwise\'s favorite command line apps is here: <a href=\"https://knightwise.com/kw1607-conquering-the-command-line/\" class=\"uri\">https://knightwise.com/kw1607-conquering-the-command-line/</a></p>\r\n<p>The podcast mentioned \'Linux for a Living\" can be found here: <a href=\"https://knightwise.com/kw1604-linux-on-the-workplace-desktop/\" class=\"uri\">https://knightwise.com/kw1604-linux-on-the-workplace-desktop/</a></p>\r\n',111,0,0,'CC-BY-SA','ubuntu, linux, desktop, open-source',0,0,1),
(3578,'2022-04-20','Linux Inlaws S01E54: Electronic Freedom Never Mind the Civil Rest',5234,'A discussion with members of the Electronic Frontier Georgia about electronic freedom, civil rights ','<p>In this episode our two hosts talk to an eclectic panel consisting of\r\nmembers of the Georgian affiliation of the Electronic Frontier Foundation\r\n(EFF) called Electronic Frontiers Georgia. Among other topics, civil rights\r\n(especially in the digital age), sharing of ideas never mind other\r\nintellectual capital and why this still matters in socialist America are the\r\nfocus of discussion. Plus Chris manages to recount most of the founding\r\nfathers of the US (gaps may be present... :-)</p>\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>Electronic Frontiers Georgia: <a href=\"https://ef-georgia.org\" target=_blank>https://ef-georgia.org</a></li>\r\n<li>Electronic Frontier Foundation: <a href=\"https://www.eff.org\" target=_blank>https://www.eff.org</a></li>\r\n<li>Software Freedom Conservancy: <a href=\"https://sfconservancy.org\" target=_blank>https://sfconservancy.org</a></li>\r\n<li>American Civil Liberties Union: <a href=\"https://www.aclu.org\" target=_blank>https://www.aclu.org</a></li>\r\n<li>The Hacker Crackdown: <a href=\"https://www.gutenberg.org/ebooks/101\" target=_blank>https://www.gutenberg.org/ebooks/101</a></li>\r\n<li>The Electronic Frontier Alliance: <a href=\"https://www.eff.org/fight\" target=_blank>https://www.eff.org/fight</a></li>\r\n<li>Shodan: <a href=\"https://www.shodan.io\" target=_blank>https://www.shodan.io</a></li>\r\n<li>Shotspotter: <a href=\"https://www.shotspotter.com\" target=_blank>https://www.shotspotter.com</a></li>\r\n<li>High velocity winds: <a href=\"https://en.wikipedia.org/wiki/Storm\" target=_blank>https://en.wikipedia.org/wiki/Storm</a></li>\r\n<li>Super amigos: <a href=\"https://www.imdb.com/title/tt0923928/?ref_=fn_al_tt_2\" target=_blank>https://www.imdb.com/title/tt0923928/?ref_=fn_al_tt_2</a></li>\r\n<li>Chaos Communication Congress: <a href=\"https://en.wikipedia.org/wiki/Chaos_Communication_Congress\" target=_blank>https://en.wikipedia.org/wiki/Chaos_Communication_Congress</a></li>\r\n<li>Authors of US constitution: <a href=\"https://en.wikipedia.org/wiki/Founding_Fathers_of_the_United_States\" target=_blank>https://en.wikipedia.org/wiki/Founding_Fathers_of_the_United_States</a></li>\r\n<li>The Federalist Papers: <a href=\"https://en.wikipedia.org/wiki/The_Federalist_Papers\" target=_blank>https://en.wikipedia.org/wiki/The_Federalist_Papers</a></li>\r\n<li>US Consitution: <a href=\"https://guides.loc.gov/constitution\" target=_blank>https://guides.loc.gov/constitution</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','EFF,Electronic Frontier Foundation, Georgia, US Constitution, Civil Rights, Positive Lobbying',0,0,1),
(3589,'2022-05-05','Sample of my microphones',434,'Microphones I have around the apartment','<h3 id=\"microphones-around-the-apartment\">Microphones around the apartment</h3>\r\n<h4 id=\"tozo-t9\">Tozo T9</h4>\r\n<p><a href=\"https://www.amazon.com/TOZO-Environmental-Cancellation-Cancelling-Headphones/dp/B09G2ZN5FX\" class=\"uri\">https://www.amazon.com/TOZO-Environmental-Cancellation-Cancelling-Headphones/dp/B09G2ZN5FX</a></p>\r\n<p><em>Tozo T9 earbuds</em><br />\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3589/Screenshot_Tozo_T9.png\" alt=\"Tozo T9 earbuds\" /> </p>\r\n<h4 id=\"moto-g-power\">Moto G Power</h4>\r\n<h4 id=\"acer-aspire-slim\">Acer Aspire Slim</h4>\r\n<h4 id=\"memorex\">Memorex?</h4>\r\n<ul>\r\n<li>Bought at Office Depot</li>\r\n</ul>\r\n<h4 id=\"mpow-hc6-usb-headset3.5mm-computer-pc-on-ear-office-headphones\">Mpow HC6 USB Headset/3.5mm Computer PC On-Ear Office Headphones</h4>\r\n<p><a href=\"https://www.ebay.com/itm/402912231079\" class=\"uri\">https://www.ebay.com/itm/402912231079</a></p>\r\n<p><em>Mpow Headset</em><br />\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3589/Screenshot_Mpow_HC6.png\" alt=\"Mpow Headset\" /> </p>\r\n<h4 id=\"mobile-audio-recorder-on-f-droid\">Mobile Audio Recorder on F-droid</h4>\r\n<p><a href=\"https://f-droid.org/en/packages/com.github.axet.audiorecorder\" class=\"uri\">https://f-droid.org/en/packages/com.github.axet.audiorecorder</a></p>\r\n',318,0,0,'CC-BY-SA','microphones, headsets, bluetooth',0,0,1),
(3581,'2022-04-25','My daily Linux driver.',1376,'Knightwise talks about the Linux system he uses as a daily driver.','<p>I talk about how I use Linux on a Daily basis from my home workstation.</p>\r\n\r\n<h3>Products mentioned in this episode</h3>\r\n<p><small>Added by Ken</small></p>\r\n<ul>\r\n<li><a href=\"https://jysk.be/nl/bureau/bureau/computertafel/verstelbaar-bureau-slangerup-zwart\">jysk Standing Desks</a> EUR 499</li>\r\n<li><a href=\"https://www.amazon.de/-/en/ASUS-XG349C-86-36-Inch-3440x1440/dp/B09641MM21\">34 ASUS Repubic of Gamers Monitor</a> EUR 1,049</li>\r\n<li><a href=\"https://www.amazon.de/-/en/S2722DC-Inches-Monitor-extreme-Anti-Glare/dp/B09CGYHJ84\">27\" Dell Display</a> EUR 339.99</li>\r\n<li><a href=\"https://www.amazon.de/-/en/Logitech-Wireless-Keyboard-Bluetooth-Connection/dp/B07W7KRXDW\">Logitech MX Keys Wireless Keyboard, Bluetooth and USB Receiver, USB-C Connection</a> EUR 79</li>\r\n<li><a href=\"https://www.amazon.de/-/en/Logitech-Bluetooth-connection-ultra-fast-scrolling/dp/B07W6JG6Z7\">Logitech MX Master 3 Wireless Mouse</a> EUR 66</li>\r\n<li><a href=\"https://www.amazon.de/-/en/Evolve-including-Bluetooth-Headset-7099-823-409/dp/B078P2Y7RL\">Jabra Evolve 75e UC including Link 370 Bluetooth Headset</a> EUR 222.50</li>\r\n<li><a href=\"https://www.lenovo.com/us/en/p/desktops/thinkcentre/m-series-sff/thinkcentre-m710s/11tc1md710s\">Lenovo ThinkCentre M710</a>i5, 16G RAM, 265G SSD Linux Mint ~EUR 500-1500</li>\r\n<li><a href=\"https://www.microsoft.com/en-us/windows/microsoft-edge\">Microsoft Edge</a></li>\r\n<li><a href=\"https://www.ocf.berkeley.edu/~ckuehl/tmux/\">tmux</a></li>\r\n<li><a href=\"https://www.spotify.com/\">spotify</a></li>\r\n<li>(?)Pistero(?) Podcast App</li>\r\n<li><a href=\"https://newsboat.org/\">Newsboat RSS Reader</a></li>\r\n<li><a href=\"https://irssi.org/\">Irssi IRC Client</a></li>\r\n<li><a href=\"https://apps.microsoft.com/store/detail/windows-terminal-preview/9N8G5RFZ9XK3\">Windows Terminal Preview</a></li>\r\n<li><a href=\"https://mobaxterm.mobatek.net/\">MobaXterm</a> Windows with X11 server</li>\r\n<li><a href=\"https://www.microsoft.com/en-us/d/surface-pro-x/8xtmb6c575md\">Windows Surface Pro X</a></li>\r\n</ul>\r\n',111,0,0,'CC-BY-SA','linux, workstation, ubuntu, budgie, mint',0,0,1),
(3583,'2022-04-27','takov751 and dnt talk about browsers',473,'After episode 3543, some messages were exchanged','<p>This is the follow up to episode 3543. HPR host takov751 had some things to say and I responded.</p>\r\n<p>If you have any topic ideas for a show in this type of format, let me know or post a show yourself.</p>',399,0,1,'CC-BY-SA','browsers',0,0,1),
(3588,'2022-05-04','Linux Inlaws S01E55: Get yer boots on for a fresh look at init systems',2779,'Martin and Chris discuss what happens when you turn on a computer (preferably running Linux)','<p>In this episode, Martin and Chris discuss init systems and Chris outs\r\nhimself as a systemd fan boy (Devuan followers take note :-). Even Linux and\r\nother FLOSS OS geeks not interested in what happens when you flick the power\r\nswitch on a computer may find this episode (vaguely) interesting as some light\r\nis also shed on the philosophy of the different system architectures and their\r\nhistory (Ever wanted to know what an /360 IPL really is? Then stay tuned...).\r\nDisclosure: The following text may resort to regular expressions to keep\r\nthings concise and simple. Some of the PCRE-challenged readers may take\r\noffence - you have been warned.</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>Booting a PC: <a href=\"https://en.wikipedia.org/wiki/Booting#Personal_computers_(PC)\" target=_blank>https://en.wikipedia.org/wiki/Booting#Personal_computers_(PC)</a></li>\r\n<li>GRUB: <a href=\"https://www.gnu.org/software/grub\" target=_blank>https://www.gnu.org/software/grub</a></li>\r\n<li>([A-Z][a-z]+ux) Init systems (general overview): <a href=\"https://arxiv.org/pdf/0706.2748v1.pdf\" target=_blank>https://arxiv.org/pdf/0706.2748v1.pdf</a></li>\r\n<li>SysV init: <a href=\"https://en.wikipedia.org/wiki/Init#SysV-style\" target=_blank>https://en.wikipedia.org/wiki/Init#SysV-style</a></li>\r\n<li>systemd: <a href=\"https://0pointer.de/blog/projects/systemd.html\" target=_blank>https://0pointer.de/blog/projects/systemd.html</a></li>\r\n<li>OpenRC: <a href=\"https://github.com/OpenRC/openrc\" target=_blank>https://github.com/OpenRC/openrc</a></li>\r\n<li>Canonical\'s Upstart: <a href=\"https://upstart.ubuntu.com\" target=_blank>https://upstart.ubuntu.com</a></li>\r\n<li>Switch from upstart to systemd: <a href=\"https://www.markshuttleworth.com/archives/1316\" target=_blank>https://www.markshuttleworth.com/archives/1316</a></li>\r\n<li>Runlevels: <a href=\"https://www.linfo.org/runlevel_def.html\" target=_blank>https://www.linfo.org/runlevel_def.html</a></li>\r\n<li>Serial console: <a href=\"https://www.kernel.org/doc/html/latest/admin-guide/serial-console.html\" target=_blank>https://www.kernel.org/doc/html/latest/admin-guide/serial-console.html</a></li>\r\n<li>Hello Magazine: <a href=\"https://www.hellomagazine.com\" target=_blank>https://www.hellomagazine.com</a></li>\r\n<li>Unix philosophy: <a href=\"https://en.wikipedia.org/wiki/Unix_philosophy\" target=_blank>https://en.wikipedia.org/wiki/Unix_philosophy</a></li>\r\n<li>And in much more detail: <a href=\"https://www.catb.org/~esr/writings/taoup/html/ch01s06.html\" target=_blank>https://www.catb.org/~esr/writings/taoup/html/ch01s06.html</a></li>\r\n<li>Devuan: <a href=\"https://www.devuan.org\" target=_blank>https://www.devuan.org</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','init, SysVInit, Upstart, systemd, GRUB, Unix philosophy, Hello Magazine',0,0,1),
(3591,'2022-05-09','Small Flashlights',675,'Stuff that goes in your pocket','<p>Just had my birthday got some lights</p>\r\n',129,0,0,'CC-BY-SA','Flashlight,usb,pocket device ',0,0,1),
(3577,'2022-04-19','Hello and how I got into tech',444,'Hi, I\'m Sarah and this is how I got into Tech','<p>Hi, I\'m Sarah. In this show, I introduce myself and ramble about how I got into tech. Despite saying I hate talking about myself, I managed 7 minutes and 25 seconds. I started as a kid with a Tandy and eventually ended up being a librarian and a sysadmin for a RedHat system.</p>',404,29,1,'CC-BY-SA','intro, linux',0,0,1),
(3605,'2022-05-27','Aspire-ing to use 13 year hardware',502,'Part 2 of using Slackware on the old netbook','<h3 id=\"aspireing-to-use-13-year-hardware\">Aspire-ing to use 13 year hardware</h3>\r\n<h4 id=\"dual-boot\">Dual boot</h4>\r\n<pre><code>image = /boot/vmlinuz\r\n root = /dev/sda3\r\n label = Slackware15.0\r\n read-only\r\nimage = /boot/vmlinuz\r\n root = /dev/sda2\r\n label = Slackware14.2\r\n read-only</code></pre>\r\n<h4 id=\"first-change\">First change</h4>\r\n<pre><code># LILO configuration file\r\n# Append any additional kernel parameters:\r\nappend=&quot;acpi=ht&quot;</code></pre>\r\n<p>Dropped CPU usage to 50%</p>\r\n<h4 id=\"second-change\">Second change</h4>\r\n<pre><code>grep . -r /sys/firmware/acpi/interrupts/\r\n\r\n/sys/firmware/acpi/interrupts/gpe1D:322734808 STS enabled unmasked\r\n\r\necho &quot;mask&quot; &gt; /sys/firmware/acpi/interrupts/gpeXX</code></pre>\r\n<h4 id=\"interrupts\">Interrupts</h4>\r\n<p><em>Interrupts</em><br />\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3605/interrupts.png\" alt=\"Interrupts\" /> </p>\r\n<p>My case was</p>\r\n<pre><code>echo &quot;mask&quot; &gt; /sys/firmware/acpi/interrupts/gpe1D</code></pre>\r\n<p>Dropped usage to 0-5%</p>\r\n<p>Then added the mask to crontab -e under root</p>\r\n<p>Add \'acpi_mask_gpe=0x1D\' or whatever interrupt corresponds to the overactive one, and remember to run the lilo command afterward to make the kernel option active.</p>\r\n<p><em>Htop options for CPU usage</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3605/options.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3605/options_thumbnail.png\" alt=\"Htop options for CPU usage\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small> </p>\r\n<p><em>Htop display</em><br />\r\n<img src=\"https://hackerpublicradio.org/eps/hpr3605/htop.png\" alt=\"Htop display\" /> </p>\r\n<h4 id=\"upgrades\">Upgrades</h4>\r\n<p>Fan from AliExpress</p>\r\n<p><a href=\"https://www.aliexpress.com/item/32861732299.html\" class=\"uri\">https://www.aliexpress.com/item/32861732299.html</a></p>\r\n<p><em>Replacement fan</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3605/fan.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3605/fan_thumbnail.png\" alt=\"Replacement fan\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small> </p>\r\n<p>2GB DDR2 667MHz SODIMM PC2-5300</p>\r\n<p><a href=\"https://www.amazon.com/gp/product/B00C53A37K\" class=\"uri\">https://www.amazon.com/gp/product/B00C53A37K</a></p>\r\n<p><em>2Gb ram upgrade</em><br />\r\n<a href=\"https://hackerpublicradio.org/eps/hpr3605/memory.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3605/memory_thumbnail.jpg\" alt=\"2Gb ram upgrade\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small> </p>\r\n<h4 id=\"resources\">Resources</h4>\r\n<p><a href=\"https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/kernel_administration_guide/listing_of_kernel_parameters_and_values\" class=\"uri\">https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/kernel_administration_guide/listing_of_kernel_parameters_and_values</a></p>\r\n<pre><code>acpi=ht</code></pre>\r\n<p><a href=\"https://www.kernel.org/doc/ols/2005/ols2005v1-pages-59-76.pdf\" class=\"uri\">https://www.kernel.org/doc/ols/2005/ols2005v1-pages-59-76.pdf</a></p>\r\n<p>Use ACPI boot table parsing, but do not enable ACPI interpreter This disables any ACPI functionality that is not required for Hyper Threading.</p>\r\n<p>ACPI (Advanced Configuration and Power Interface) is an open industry specification establishing industry-standard interfaces for OS-directed configuration and power management on laptops, desktops, and servers.</p>\r\n<h4 id=\"hpr3511-podman-like-vagrant\">HPR3511 Podman like Vagrant</h4>\r\n<p><a href=\"https://archive.org/details/hpr3511\" class=\"uri\">https://archive.org/details/hpr3511</a></p>\r\n',318,0,0,'CC-BY-SA','Slackware, netbook, int
(3592,'2022-05-10','A quick look at the Surface pro X',1380,'Knightwise gives a quick overview of 3 months on the Surface pro X','<p>I talk about the Surface Pro X I got at the beginning of the year and what the pro\'s and cons of it are.<br />\r\nMore at <a href=\"https://www.knightwise.com\">www.knightwise.com</a><br />\r\nTwitter: <a href=\"https://twitter.com/knightwise\">twitter.com/knightwise</a></p>\r\n\r\n<hr />\r\n<p><small>Added by Ken when posting</small></p>\r\n<p>\r\n<a href=\"https://en.wikipedia.org/wiki/Surface_Pro_X\">From Wikipedia, the free encyclopedia</a>\r\n</p>\r\n\r\n<img src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/d/d5/Surface_Pro_X.png/528px-Surface_Pro_X.png\" />\r\n\r\n<p>The <b>Surface Pro X</b> is a 2-in-1 detachable <a href=\"https://en.wikipedia.org/wiki/Tablet_computer\" title=\"Tablet computer\">tablet computer</a> developed by <a href=\"https://en.wikipedia.org/wiki/Microsoft\" title=\"Microsoft\">Microsoft</a>. It was developed alongside and was announced on 2 October 2019 alongside the <a href=\"https://en.wikipedia.org/wiki/Surface_Pro_7\" title=\"Surface Pro 7\">Surface Pro 7</a> and <a href=\"https://en.wikipedia.org/wiki/Surface_Laptop_3\" title=\"Surface Laptop 3\">Surface Laptop 3</a>.<sup id=\"cite_ref-Faulkner_1-0\" class=\"reference\"><a href=\"https://en.wikipedia.org/wiki/Surface_Pro_X#cite_note-Faulkner-1\">[1]</a></sup> Updated hardware was announced alongside <a href=\"https://en.wikipedia.org/wiki/Surface_Laptop_Go\" title=\"Surface Laptop Go\">Surface Laptop Go</a> and Surface accessories on October 1, 2020<sup id=\"cite_ref-2\" class=\"reference\"><a href=\"https://en.wikipedia.org/wiki/Surface_Pro_X#cite_note-2\">[2]</a></sup> and September 22, 2021.<sup id=\"cite_ref-3\" class=\"reference\"><a href=\"https://en.wikipedia.org/wiki/Surface_Pro_X#cite_note-3\">[3]</a></sup> The device starts at $899.99 <a href=\"https://en.wikipedia.org/wiki/United_States_Dollar\" class=\"mw-redirect\" title=\"United States Dollar\">US</a>D / £849.99.<sup id=\"cite_ref-4\" class=\"reference\"><a href=\"https://en.wikipedia.org/wiki/Surface_Pro_X#cite_note-4\">[4]</a></sup><sup id=\"cite_ref-5\" class=\"reference\"><a href=\"https://en.wikipedia.org/wiki/Surface_Pro_X#cite_note-5\">[5]</a></sup>\r\n</p><p>The Surface Pro X comes with a <a href=\"https://en.wikipedia.org/wiki/List_of_Qualcomm_Snapdragon_systems-on-chip#Microsoft_SQ1_and_SQ2\" class=\"mw-redirect\" title=\"List of Qualcomm Snapdragon systems-on-chip\">Microsoft SQ1 or SQ2</a> <a href=\"https://en.wikipedia.org/wiki/ARM_architecture\" class=\"mw-redirect\" title=\"ARM architecture\">ARM</a> processor, which the company claimed has three times the performance of an x86 <a href=\"https://en.wikipedia.org/wiki/MacBook_Air\" title=\"MacBook Air\">MacBook Air</a>, whilst also having a 13-hour battery life. This is due to the increased power efficiency of ARM processors compared to traditional x86 processors.<sup id=\"cite_ref-Faulkner_1-1\" class=\"reference\"><a href=\"https://en.wikipedia.org/wiki/Surface_Pro_X#cite_note-Faulkner-1\">[1]</a></sup><sup id=\"cite_ref-6\" class=\"reference\"><a href=\"https://en.wikipedia.org/wiki/Surface_Pro_X#cite_note-6\">[6]</a></sup><sup id=\"cite_ref-7\" class=\"reference\"><a href=\"https://en.wikipedia.org/wiki/Surface_Pro_X#cite_note-7\">[7]</a></sup> Microsoft has previously used ARM processors in the discontinued <a href=\"https://en.wikipedia.org/wiki/Surface_RT\" class=\"mw-redirect\" title=\"Surface RT\">Surface RT</a> and <a href=\"https://en.wikipedia.org/wiki/Windows_Phone\" title=\"Windows Phone\">Windows Phone</a> devices.\r\n</p><p>Microsoft now offers a Wifi-only version of the device as announced at their Surface Event on September 22, 2021.<sup id=\"cite_ref-8\" class=\"reference\"><a href=\"https://en.wikipedia.org/wiki/Surface_Pro_X#cite_note-8\">[8]</a></sup>\r\n</p>\r\n',111,0,0,'CC-BY-SA','surface, windows, laptop, hardware, review',0,0,1),
(3582,'2022-04-26','Rolling a new character',1793,'Tuula continues writing an example Haskell game, this time rolling a new character','<h1 id=\"quick-peek-at-some-places-in-code\">Quick peek at some places in code</h1>\n<p><code>Main.hs</code> has our <code>Main</code> module definition. It was generated by <code>Stack</code> when we started. In the end of the <code>main</code> function, it calls <code>run</code> function, which is defined in <code>Run.hs</code> file. This is the place where we can see overall flow of the program in one glance.</p>\n<pre><code>run :: RIO App ()\nrun = do\n choice &lt;- showMainMenu\n case choice of\n StarNewGame -&gt; do\n logDebug &quot;New game starting...&quot;\n logDebug &quot;Rolling new character...&quot;\n player &lt;- liftIO $ evalRandIO rollNewCharacter\n displayNewCharacter player\n logDebug &quot;Selecting starting gear...&quot;\n gear &lt;- selectStartingGear $ playerGear player\n logDebug &quot;Preparing game...&quot;\n game &lt;- liftIO $ evalRandIO $ startGame player gear\n logDebug &quot;Dealing first card...&quot;\n finishedGame &lt;- playGame game\n logDebug &quot;Displaying game over...&quot;\n displayGameOver finishedGame\n\n ExitGame -&gt;\n return ()</code></pre>\n<p>Another interesting module is <code>Types</code>. Here you can find how player, items, monsters and such are represented.</p>\n<p>Third and biggest module is <code>UserInterface</code>, which contains functions to display game status to player and ask their input.</p>\n<p>So, what does our <code>run</code> function do? Lets have a look:</p>\n<ul>\n<li><code>choice &lt;- showMainMenu</code>\n<ul>\n<li>show main menu and ask for player input</li>\n</ul></li>\n<li><code>case choice of</code>\n<ul>\n<li>depending on the choice, continue with game logic or exit the function</li>\n</ul></li>\n<li><code>player &lt;- liftIO $ evalRandIO rollNewCharacter</code>\n<ul>\n<li>roll a new character</li>\n<li><code>evalRandIO</code> indicates we\'re dealing with random numbers</li>\n</ul></li>\n<li><code>displayNewCharacter player</code>\n<ul>\n<li>display the new character on screen</li>\n</ul></li>\n<li><code>gear &lt;- selectStartingGear $ playerGear player</code>\n<ul>\n<li>select starting gear</li>\n</ul></li>\n<li><code>game &lt;- liftIO $ evalRandIO $ startGame player gear</code>\n<ul>\n<li>shuffle the deck and set up the game</li>\n<li>again using random numbers here</li>\n</ul></li>\n<li><code>finishedGame &lt;- playGame game</code>\n<ul>\n<li>play game until we\'re done</li>\n</ul></li>\n<li><code>displayGameOver finishedGame</code>\n<ul>\n<li>display game over screen</li>\n</ul></li>\n</ul>\n<h1 id=\"word-about-input-and-output\">Word about input and output</h1>\n<p>One of the features of Haskell I like is the ability to show which functions are pure (always returning same output with given set of inputs and not having any side effects). In our program, every function that returns <code>RIO a b</code> has access to input and output. In addition to that, it also has access to system wide configuration (which we don\'t use much here) and logging functions.</p>\n<p>To write on the screen, we use <code>putStrLn</code> and reading a user input <code>readLine</code>. Since they\'re designed to work with <code>IO</code> instead of <code>RIO a b</code>, we have to use <code>liftIO</code>. But all that is technical details that we won\'t worry now.</p>\n<p><code>App</code> is our configuration. We aren\'t directly using it, so it\'s safe to ignore for now.</p>\n<h1 id=\"showing-main-menu\">Showing main menu</h1>\n<p><code>showMainMenu</code> function will print out the menu and then call <code>mainMenuInput</code>. <code>mainMenuInput</code> will read input, validate that it\'s either <code>1</code> or <code>2</code> and return respectively <code>StarNewGame</code> or <code>ExitGame</code>. In case user enters something else, <code>mainMenuInput</code> will recurse until user enters valid input.</p>\n<pre><code>-- | Display main menu\nshowMain
(3584,'2022-04-28','The collective history of RAID controller brands',1074,'The story of Raid cards 1999 to present','<p>The market segment of RAID adapters has a long history and tradition, and has undergone gradual concentration, followed by upstream mergers of the owning corporations - a feeding frenzy of sorts, among the semiconductor manufacturers.</p>\n<p><a href=\"https://support.fccps.cz/industry/RAID_history/index.htm\" class=\"uri\">https://support.fccps.cz/industry/RAID_history/index.htm</a></p>\n',129,0,0,'CC-BY-SA','HBA,Raid,Raid card,Mylex,Adaptec',0,0,1),
(3585,'2022-04-29','Freedom of speech in open source, Part 2.',793,'Freedom has a cost.','<p>Check out the first episode of <a href=\"https://hackerpublicradio.org/eps.php?id=3553\">Freedom of speech in open source</a></p>\n',391,0,0,'CC-BY-SA','Free Speech',0,0,1),
(3587,'2022-05-03','20220406_UDM',766,'I talk about my Home Router U D M from ubiquity','<p>My firewall rules!</p>\n<p><a href=\"https://rmccurdy.com/stuff/.iptables.txt\" class=\"uri\">https://rmccurdy.com/stuff/.iptables.txt</a></p>\n',36,0,1,'CC-BY-SA','routers,firewalls,wireless,home networking',0,0,1),
(3593,'2022-05-11','Home office setup mouse shoulder and Auto Hot Key Scripts',1371,'I talk about my issues and solutions for desk ergonomics','<ul>\n<li><p>Anti Fatigue Floor Mat,Kitchen Mat<br />\n<a href=\"https://smile.amazon.com/gp/product/B076SPLWQF\" class=\"uri\">https://smile.amazon.com/gp/product/B076SPLWQF</a></p></li>\n<li><p>FEZIBO Dual Motor Height Adjustable<br />\n<a href=\"https://smile.amazon.com/gp/product/B07QCNL73Y\" class=\"uri\">https://smile.amazon.com/gp/product/B07QCNL73Y</a></p></li>\n<li><p>WALMANN 24\" Folding Shelf Brackets, Collapsible Brackets for Shelves Wall Mounted Hinges Space Saving DIY Bracket for Table Bench, Max Load 500 LBS<br />\n<a href=\"https://smile.amazon.com/gp/product/B08F4VNT9P\" class=\"uri\">https://smile.amazon.com/gp/product/B08F4VNT9P</a></p></li>\n<li><p>Adesso iMouse E9 Left-Handed Vertical Ergonomic Mouse<br />\n<a href=\"https://smile.amazon.com/gp/product/B01N4WA12I\" class=\"uri\">https://smile.amazon.com/gp/product/B01N4WA12I</a></p></li>\n<li><p>Autohotkey macros for LEFT HANDED person!<br />\n<a href=\"https://github.com/freeload101/SCRIPTS/tree/master/AutoHotkey\" class=\"uri\">https://github.com/freeload101/SCRIPTS/tree/master/AutoHotkey</a></p>\n<ul>\n<li>auto installs Autohotkey</li>\n<li>pulls down latest config/AHK script from github</li>\n<li>runs it and based on IP address sets different configurations</li>\n</ul></li>\n</ul>\n',36,0,0,'CC-BY-SA','Ergonomic,back pain,health,fitness',0,0,1),
(3594,'2022-05-12','Peely-wally in Edinburgh',4057,'MrX and Dave Morriss chatting about this and that','<article>\n<h2 id=\"introduction\">Introduction</h2>\n<p>Hosts:</p>\n<ul>\n<li><a href=\"https://hackerpublicradio.org/correspondents/0201.html\">MrX</a></li>\n<li><a href=\"https://hackerpublicradio.org/correspondents/0225.html\">Dave Morriss</a></li>\n</ul>\n<p>We recorded this on Sunday April 24<sup>th</sup> 2022. This is effectively a continuation of the last show, since we found we had lots more to talk about!</p>\n<p><small>Note on the title: again we spoke about the Scots language on the show, so it seemed like a good idea to include more of it in the notes and so on.</small></p>\n<h2 id=\"topics-discussed\">Topics discussed</h2>\n<ul>\n<li>Dampers (in relation to coal fires), a topic we discussed last time:\n<ul>\n<li>MrX found a version of the <a href=\"https://youtu.be/KbauWEfiCMo\">Damper song</a> on YouTube</li>\n</ul></li>\n</ul>\n<ul>\n<li>PC issues:\n<ul>\n<li>Daves home-built desktop PC had another disk problem</li>\n<li>Running a SMART daemon (under SystemD) gives warnings of imminent disk problems</li>\n<li>HP Proliant MicroServer - an AMD-based machine sold in the 2010s (?) by HP with a substantial discount. (Prices cited in the audio are probably not reliable!)</li>\n<li>Regarding the failed PSU mentioned last time, there was speculation about whether turning off at the mains every day is a good idea. MrX is inclined to think that it is not.</li>\n</ul></li>\n</ul>\n<ul>\n<li>Remote-controlled plugs:\n<ul>\n<li>Dave used a set of <em>Brennenstuhl</em> plugs for a while until several of them were destroyed!</li>\n<li>Now has two <em>Sonoff</em> plugs which can be flashed with firmware and controlled with MQTT as part of a Smart Home</li>\n</ul></li>\n</ul>\n<ul>\n<li>Programming:\n<ul>\n<li>MrX has recently been writing a Bash script, and found it difficult to get back into it.</li>\n<li>Dave had written in DEC Pascal on a VAXCluster for many years, but cant remember any of it any more.</li>\n<li>Discussion of Delphi, Borland C++</li>\n<li>Neither MrX nor Dave has used C very much</li>\n</ul></li>\n</ul>\n<ul>\n<li>Difficulty of producing HPR shows:\n<ul>\n<li>Pandemic effects on motivation</li>\n<li>Complications of working from home</li>\n<li>Happily the rate of contributions to HPR has been increasing in the past few months</li>\n<li>Adding pictures to shows still needs documentation</li>\n</ul></li>\n</ul>\n<ul>\n<li>Smart speakers:\n<ul>\n<li>MrX already had two Google Home devices and got a free Amazon Echo (with Alexa software) from his ISP.</li>\n<li>The Echo didnt prove to be very useful as a means of listening to BBC radio, and the sign-up was intrusive.</li>\n<li>The Google Home devices are preferable; they give easier access to BBC Radio as well as services like Spotify.</li>\n<li>Dave is avoiding all such devices!</li>\n</ul></li>\n</ul>\n<ul>\n<li>Old computing equipment:\n<ul>\n<li>Dave has an old 132-column Anadex matrix printer with a Centronics interface in his attic - found recently when clearing it out.</li>\n<li>MrX remembered removable Diablo disks.</li>\n<li>Dave reminisced about writing software in Coral66 on a CTL Modular 1 computer in the 1970s, which also had removable disks.</li>\n</ul></li>\n</ul>\n<ul>\n<li>Being back at work again:\n<ul>\n<li>MrX is now in the office twice a week</li>\n<li>The Scotland mask mandate has ended but many people are still wearing them</li>\n<li>People are catching SARS-CoV-2 at work, and particularly from children who are back at school, but vaccination means the effects tend to be milder.</li>\n</ul></li>\n</ul>\n<ul>\n<li>Hayfever (seasonal allergies):\n<ul>\n<li>MrX is taking a <em>30C</em> remedy (a remedy labeled 30C has been serially diluted 1:100 thirty times, so is <em>extremely</em> dilute)</li>\n<li>Dave still suffers from hayfever and takes Cetirizine through spring and summer</li>\n<li>Dave thinks he developed hayfever in the hot summer and drought of 1976 on a field course in Gloucestershire. (BBC News story: <a hre
(3595,'2022-05-13','I am sure I changed my password last...???',641,'Pilot episode. Change your password','<p>Pilot episode. Change your password. Leave me feedback but be gentle...or not</p>\n',405,74,0,'CC-BY-SA','password, cybersecurity,password1234',0,0,1),
(3599,'2022-05-19','Linux Inlaws S01E56: Slackware - A User\'s Perspective',2676,'A discussion with a long-time Slackware user about this oldest Linux distro still alive','<p>In this episode Martin and Chris managed to ensnare a member of the Linux User Group\nFrankfurt (FraLUG) to talk about his history with Slackware, currently the\noldest Linux distribution still maintained. If you ever fancied to know more\nabout this grandfather of a distribution and its ins and outs, this is your\nshow. Plus we get to know more about one of Chris\' well-kept secrets...</p>\n\n<h2>Links:</h2>\n<ul>\n<li>Slackware: <a href=\"https://www.slackware.com\" target=_blank>https://www.slackware.com</a></li>\n<li>LILO: <a href=\"https://www.joonet.de/lilo\" target=_blank>https://www.joonet.de/lilo</a></li>\n<li>sed: <a href=\"https://www.gnu.org/software/sed\" target=_blank>https://www.gnu.org/software/sed</a></li>\n<li>Linux From Scratch: <a href=\"https://www.linuxfromscratch.org\" target=_blank>https://www.linuxfromscratch.org</a></li>\n<li>Arch Linux on ARM 32 bit support: <a href=\"https://archlinuxarm.org/forum/viewtopic.php?f=3&t=15721\" target=_blank>https://archlinuxarm.org/forum/viewtopic.php?f=3&t=15721</a></li>\n<li>Seafile\'s demise: <a href=\"https://github.com/haiwen/seafile/graphs/code-frequency\" target=_blank>https://github.com/haiwen/seafile/graphs/code-frequency</a></li>\n<li>Distrowatch: <a href=\"https://distrowatch.com\" target=_blank>https://distrowatch.com</a></li>\n<li>The Ipcress File (65\'s movie): <a href=\"https://www.imdb.com/title/tt0059319/?ref_=nv_sr_srsg_3\" target=_blank>https://www.imdb.com/title/tt0059319/?ref_=nv_sr_srsg_3</a></li>\n<li>The Ipcress File (22\'s TV miniseries): <a href=\"https://www.imdb.com/title/tt13636038/?ref_=nv_sr_srsg_0\" target=_blank>https://www.imdb.com/title/tt13636038/?ref_=nv_sr_srsg_0</a></li>\n<li>Meet the Feebles: <a href=\"https://www.imdb.com/title/tt0097858/?ref_=nv_sr_srsg_0\" target=_blank>https://www.imdb.com/title/tt0097858/?ref_=nv_sr_srsg_0</a></li>\n<li>Peter Jackson: <a href=\"https://en.wikipedia.org/wiki/Peter_Jackson\" target=_blank>https://en.wikipedia.org/wiki/Peter_Jackson</a></li>\n</ul>\n',384,111,1,'CC-BY-SA','Linux, Slackware, Linux from Scratch, sed, LILO, Peter Jackson',0,0,1),
(3602,'2022-05-24','Hacker Stories April 20 22',1561,'origin story and trouble in school','<p>I guess I lost the document from Lanier Tech :( it was hilarious..</p>\n',36,0,1,'CC-BY-SA','Hacker Stories',0,0,1),
(3609,'2022-06-02','Linux Inlaws S01E57: Operating System Level Virtualisation and Martin\'s Faith',3238,'An in-depth discussion about Jails, Containers, religion and others sorts of confinement','<p>In this episode our two ageing heroes take a closer at operating system\n(OS) level virtualisation. The main different legacy virtualisation\ntechnologies like virtual machines (VMs) and this new-fangled approach is\nthat the OS kernel remains the same across virtualisation domains, thus giving\nthe hippsters and other followers of fashion a cheaper and potentially much\nfaster solution than virtualising the kernel and surrounding hawrdware and all\nthe rest of it. Plus more details on Martin\'s real faith. Don\'t miss out on\nthis episode if you\'re interested in any of these...</p>\n\n<h2>Links:</h2>\n<ul>\n<li>Craíc: <a href=\"https://www.irelandlogue.com/irish-slang/irish-slang.html\" target=_blank>https://www.irelandlogue.com/irish-slang/irish-slang.html</a></li>\n<li>Celts: <a href=\"https://en.wikipedia.org/wiki/Celts\" target=_blank>https://en.wikipedia.org/wiki/Celts</a></li>\n<li>Celtic languages: <a href=\"https://en.wikipedia.org/wiki/Celtic_languages#Living_languages\" target=_blank>https://en.wikipedia.org/wiki/Celtic_languages#Living_languages</a></li>\n<li>[a-zA-Z]+ Virtualisation: <a href=\"https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/VMware_paravirtualization.pdf\" target=_blank>https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/VMware_paravirtualization.pdf</a></li>\n<li>Hypervisor: <a href=\"https://en.wikipedia.org/wiki/Hypervisor\" target=_blank>https://en.wikipedia.org/wiki/Hypervisor</a></li>\n<li>BSD Jails: <a href=\"https://docs.freebsd.org/en/books/handbook/jails\" target=_blank>https://docs.freebsd.org/en/books/handbook/jails</a></li>\n<li>Solaris Zones: <a href=\"https://www.oracle.com/technical-resources/articles/it-infrastructure/o11-092-s11-zones-intro.html\" target=_blank>https://www.oracle.com/technical-resources/articles/it-infrastructure/o11-092-s11-zones-intro.html</a></li>\n<li>Docker: <a href=\"https://docs.docker.com/engine\" target=_blank>https://docs.docker.com/engine</a></li>\n<li>LXC: <a href=\"https://linuxcontainers.org\" target=_blank>https://linuxcontainers.org</a></li>\n<li>Open Container Iniative: <a href=\"https://opencontainers.org\" target=_blank>https://opencontainers.org</a></li>\n<li>Podman: <a href=\"https://podman.io\" target=_blank>https://podman.io</a></li>\n<li>Double-fork: <a href=\"https://thelinuxjedi.blogspot.com/2014/02/why-use-double-fork-to-daemonize.html\" target=_blank>https://thelinuxjedi.blogspot.com/2014/02/why-use-double-fork-to-daemonize.html</a></li>\n<li>CRI-O: <a href=\"https://github.com/cri-o/cri-o\" target=_blank>https://github.com/cri-o/cri-o</a></li>\n<li>CGroups: <a href=\"https://www.kernel.org/doc/html/latest/admin-guide/cgroup-v2.html\" target=_blank>https://www.kernel.org/doc/html/latest/admin-guide/cgroup-v2.html</a></li>\n<li>Namespaces: <a href=\"https://en.wikipedia.org/wiki/Linux_namespaces\" target=_blank>https://en.wikipedia.org/wiki/Linux_namespaces</a></li>\n<li>The gory details: <a href=\"https://www.haifux.org/lectures/299/netLec7.pdf\" target=_blank>https://www.haifux.org/lectures/299/netLec7.pdf</a></li>\n<li>Dockerfiles: <a href=\"https://docs.docker.com/engine/reference/builder\" target=_blank>https://docs.docker.com/engine/reference/builder</a></li>\n<li>Containerd: <a href=\"https://containerd.io\" target=_blank>https://containerd.io</a></li>\n<li>From Dusk Till Dawn (TV series): <a href=\"https://en.wikipedia.org/wiki/From_Dusk_till_Dawn:_The_Series\" target=_blank>https://en.wikipedia.org/wiki/From_Dusk_till_Dawn:_The_Series</a></li>\n</ul>\n',384,111,1,'CC-BY-SA','Celts, Celtic languages, Containers, Jails, Zones, Docker, CRI-O, From Dusk till Dawn, religion',0,0,1),
(3618,'2022-06-15','The nnn terminal file manager',434,'The nnn terminal file manager and common uses','<h5 id=\"set-default-text-editor\">Set default text editor</h5>\n<h6 id=\"edit-.bashrc-in-fedora\">Edit .bashrc (in Fedora)</h6>\n<pre><code># Export Default editor and while we&#39;re at it, the PATH to /opt\nexport EDITOR=vim\nexport PATH=/opt:$PATH</code></pre>\n<h4 id=\"enable-icons-in-terminal-icons\">Enable icons-in-terminal icons</h4>\n<p><a href=\"https://github.com/jarun/nnn/wiki/Advanced-use-cases\" class=\"uri\">https://github.com/jarun/nnn/wiki/Advanced-use-cases</a></p>\n<p><a href=\"https://github.com/sebastiencs/icons-in-terminal#installation\" class=\"uri\">https://github.com/sebastiencs/icons-in-terminal#installation</a></p>\n<p>To enable icons-in-terminal icons</p>\n<pre><code>Install icons-in-terminal\nClone the nnn repo\nCompile nnn with make O_ICONS=1 from the root s</code></pre>\n<p>To enable Nerdfont icons</p>\n<pre><code>Download and install a patched Nerdfont.\nApply that font as your terminal emulator&#39;s font. This will vary from emulator to\nemulator, but usually involves editing a config file or changing a setting within a\nGUI menu system.\nClone the nnn repo\nCompile nnn with make O_NERD=1 from the root</code></pre>\n<p>Note:</p>\n<pre><code>Arch Linux users can check out the AUR packages nnn-icons and nnn-nerd.</code></pre>\n<h4 id=\"set-default-applications-via-.configmineapps.list\">Set default applications via .config/mineapps.list</h4>\n<h5 id=\"xdg-mime-manpage\">xdg-mime manpage</h5>\n<ul>\n<li><a href=\"https://linux.die.net/man/1/xdg-mime\" class=\"uri\">https://linux.die.net/man/1/xdg-mime</a></li>\n</ul>\n<h5 id=\"update-mime-database-manpage\">update-mime-database manpage</h5>\n<ul>\n<li><a href=\"https://linux.die.net/man/1/update-mime-database\" class=\"uri\">https://linux.die.net/man/1/update-mime-database</a></li>\n</ul>\n<h5 id=\"add-entry-and-use-right-away\">Add entry and use right away</h5>\n<ul>\n<li><p>xdg-mime default mpv.desktop video/mpeg</p></li>\n<li><p>Query the entry</p></li>\n</ul>\n<pre><code>xdg-mime query default image/png\nfeh.desktop</code></pre>\n<ul>\n<li>Query the file in question</li>\n</ul>\n<pre><code>xdg-mime query filetype cory-doctorow-makers.epub\napplication/epub+zip</code></pre>\n<h5 id=\"examples\">Examples</h5>\n<pre><code>image/jpeg=feh.desktop\naudio/x-wav=mpv.desktop\naudio/flac=mpv.desktop\napplication/epub+zip=calibre-ebook-viewer.desktop\nvideo/mpg=mpv.desktop\nvideo/mpeg=mpv.desktop\nvideo/iso=vlc.desktop\naudio/ogg=mpv.desktop\ntext/pdf=zathura.desktop\napplication/pdf=org.pwmt.zathura-pdf-mupdf.desktop\ntext/markdown=ebook-viewer.desktop\n\n[Added Associations]\nimage/png=feh.desktop;\nvideo/x-matroska=mpv.desktop;\nimage/jpeg=feh.desktop;\naudio/x-wav=mpv.desktop;\naudio/flac=mpv.desktop;\napplication/epub+zip=calibre-ebook-viewer.desktop;\napplication/x-cd-image=vlc.desktop;</code></pre>\n<h4 id=\"how-i-use-nnn\">How I use nnn</h4>\n<ul>\n<li>Watching movies and tv shows from samba Pi server\n<ul>\n<li>Moving video rips to another directory</li>\n</ul></li>\n</ul>\n<p><em>Sample with folder icons</em><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3618/photo_1.png\" alt=\"Sample with folder icons\" /> </p>\n<ul>\n<li><p>Reading pdf files</p>\n<ul>\n<li>Zathura</li>\n</ul></li>\n<li><p>Reading epub books</p>\n<ul>\n<li>Calibre e-book viewer</li>\n</ul></li>\n<li><p>Editing files in vim</p>\n<ul>\n<li>\'e\' to edit</li>\n</ul></li>\n<li><p>Creating new files</p></li>\n<li><p>Creating new directories</p></li>\n<li><p>Dropping to a command prompt temporarily, using \'!\'</p></li>\n<li><p>Extracting tar.gz and zip files</p></li>\n<li><p>Bulk file renaming</p></li>\n<li><p>Organizing files</p>\n<ul>\n<li>use \'/\' to find like files and \'ESC\'</li>\n</ul></li>\n<li><p>Send file as attachment in mutt</p>\n<ul>\n<li>\'o\' to open file, \'mutt -a\' to attach files</li>\n</ul></li>\n<li><p>KDEconnect to send files and web links</p>\n<pre><code>#!/bin/bash\n\nkdeconnect-cli -d $(kdeconnect-cli -a --id-only) --share $1</code></p
(3627,'2022-06-28','Only Key Duo',982,'I talk about my new Hardware password manager','<p><a href=\"https://onlykey.io/products/onlykey-duo-dual-usb-c-and-usb-a-security-key\" class=\"uri\">https://onlykey.io/products/onlykey-duo-dual-usb-c-and-usb-a-security-key</a></p>\n<p><code>set __COMPAT_LAYER=RUNASINVOKER</code> example usage</p>\n<p><a href=\"https://github.com/freeload101/SCRIPTS/blob/704689e4febf164008089ecaf192cf03dde752c3/AutoHotkey/AutoHotkey.bat#L65\" class=\"uri\">https://github.com/freeload101/SCRIPTS/blob/704689e4febf164008089ecaf192cf03dde752c3/AutoHotkey/AutoHotkey.bat#L65</a></p>\n<p>My post about ghosting your backers:<br />\n<a href=\"https://onlykey.discourse.group/t/onlykey-duo-hello/643\" class=\"uri\">https://onlykey.discourse.group/t/onlykey-duo-hello/643</a></p>\n<p><a href=\"https://twitter.com/operat0r/status/1511475178345222145\" class=\"uri\">https://twitter.com/operat0r/status/1511475178345222145</a></p>\n',36,74,1,'CC-BY-SA','passwords,password managers,Hardware Security',0,0,1),
(3630,'2022-07-01','Planning an RV Trip',1150,'Tools and suggestions for planning a long RV trip.','<p>This begins our series about our RV trip by looking at the planning process. We give a suggestion for a nice online course that is not too expensive, and offer some tips on using Google Maps in planning your trip.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://courses.saadigital.com/p/how-to-plan-your-epic-rv-adventure/\" class=\"uri\">https://courses.saadigital.com/p/how-to-plan-your-epic-rv-adventure/</a></li>\n<li><a href=\"https://www.visitnasa.com/nasa-visitor-centers\" class=\"uri\">https://www.visitnasa.com/nasa-visitor-centers</a></li>\n<li><a href=\"https://www.palain.com/travel/planning-an-rv-trip/\" class=\"uri\">https://www.palain.com/travel/planning-an-rv-trip/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, trip planning, Google Maps',0,0,1),
(3640,'2022-07-15','Expert DIR use',878,'We continue with DOS. This time it is mastering the DIR commands','<p>DIR can just be simple list of files and sub-directories, but you can so much more. We can use the information about Wildcards and Attributes to make DIR a kind of search function.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.ahuka.com/dos-lessons-for-self-study-purposes/dos-lesson-12-expert-dir-use/\" class=\"uri\">https://www.ahuka.com/dos-lessons-for-self-study-purposes/dos-lesson-12-expert-dir-use/</a></li>\n</ul>\n',198,117,0,'CC-BY-SA','DOS, early PC computing, directory listing',0,0,1),
(3650,'2022-07-29','Major Destinations',910,'Building a plan around major destinations, and using memberships to get discounted stays.','<p>We continue our look at the planning process by looking at how to build a plan around major destinations, and add memberships that give discounted stays like Escapees and Passport America.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.escapees.com/benefits/rv-parking/discount-park-directory/maps/\" class=\"uri\">https://www.escapees.com/benefits/rv-parking/discount-park-directory/maps/</a></li>\n<li><a href=\"https://passportamerica.com/\" class=\"uri\">https://passportamerica.com/</a></li>\n<li><a href=\"https://www.palain.com/travel/major-destinations/\" class=\"uri\">https://www.palain.com/travel/major-destinations/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, trip planning, Google Maps, Escapees, Passport America',0,0,1),
(3660,'2022-08-12','BASIC',485,'We continue our technological archeology to explore the old warhorse, DOS. This time it is BASIC.','<p>BASIC came bundled as a free programming language when you bought DOS, but it is also the language used for two key components, EDIT and HELP. You need BASIC, therefore, to run either of these key applications, such as on your Emergency Boot Disk.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.ahuka.com/dos-lessons-for-self-study-purposes/dos-lesson-13-basic/\" class=\"uri\">https://www.ahuka.com/dos-lessons-for-self-study-purposes/dos-lesson-13-basic/</a></li>\n</ul>\n',198,117,0,'CC-BY-SA','DOS, early PC computing, BASIC',0,0,1),
(3670,'2022-08-26','Changing Plans',988,'We look at some potential Covid-19 issues and consider alternatives','<p>We continue our look at the planning process as we discard one plan due to Covid-19 and turn to a different plan. And we introduce an RV-specific planning tool called RV Trip Wizard.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.rvtripwizard.com/app\" class=\"uri\">https://www.rvtripwizard.com/app</a></li>\n<li><a href=\"https://www.palain.com/travel/changing-plans/\" class=\"uri\">https://www.palain.com/travel/changing-plans/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, Google Maps, RV Trip Wizard ',0,0,1),
(3680,'2022-09-09','EDIT',739,'More on DOS. This time it is EDIT','<p>EDIT is a key built-in applet that you can use to edit your AUTOEXEC.BAT and CONFIG.SYS files, which makes it a key addition to your Emergency Boot Disk.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.ahuka.com/dos-lessons-for-self-study-purposes/dos-lesson-14-the-edit-applet/\" class=\"uri\">https://www.ahuka.com/dos-lessons-for-self-study-purposes/dos-lesson-14-the-edit-applet/</a></li>\n</ul>\n',198,117,0,'CC-BY-SA','DOS, early PC computing, EDIT',0,0,1),
(3690,'2022-09-23','Planning the Trip',817,'Taking our revised plan to completion','<p>We take our revised objectives from the last episode and flesh out a completed plan that gets us out west and back home again.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.palain.com/travel/planning-the-trip/\" class=\"uri\">https://www.palain.com/travel/planning-the-trip/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, trip planning, full trip',0,0,1),
(3700,'2022-10-07','Introduction to Batch Files',882,'More on DOS. This time it is Introduction to Batch Files','<p>Batch files are an important topic to mastering DOS, and in this episode we begin exploring them. Batch files in DOS are similar to BASH scripts in Unix/Linux in that they let you run multiple commands from one file.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.ahuka.com/dos-lessons-for-self-study-purposes/dos-lesson-15-introduction-to-batch-files/\" class=\"uri\">https://www.ahuka.com/dos-lessons-for-self-study-purposes/dos-lesson-15-introduction-to-batch-files/</a></li>\n</ul>\n',198,117,0,'CC-BY-SA','DOS, early PC computing, Batch Files',0,0,1),
(3710,'2022-10-21','Changing Plans Again',1262,'One more trip change, then on the road','<p>Once again we had to change plans due to some health issues that were not serious but had to be dealt with. But we finally got on the road and started traveling.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://blog.campersinn.com/blog/ultimate-rv-packing-list-for-a-first-time-camper\" class=\"uri\">https://blog.campersinn.com/blog/ultimate-rv-packing-list-for-a-first-time-camper</a></li>\n<li><a href=\"https://www.palain.com/travel/changing-plans-2/\" class=\"uri\">https://www.palain.com/travel/changing-plans-2/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, trip planning',0,0,1),
(3720,'2022-11-04','Practicing Batch Files With ECHO',731,'More on DOS. This time it is using the ECHO command with batch files.','<p>This continues our look at batch files by demonstrating the use of the ECHO command. This command can be used to display things on the screen, or hide them, as you wish.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.ahuka.com/dos-lessons-for-self-study-purposes/dos-lesson-16-practicing-batch-files-with-echo/\" class=\"uri\">https://www.ahuka.com/dos-lessons-for-self-study-purposes/dos-lesson-16-practicing-batch-files-with-echo/</a></li>\n</ul>\n',198,117,0,'CC-BY-SA','DOS, early PC computing, batch files, ECHO',0,0,1),
(3730,'2022-11-18','Into Arizona',858,'Hitting our first major stop in Arizona.','<p>We get to our first major stop for a week in Topock, Arizona. From here we can check out places like Oatman, Arizona and Lake Havasu, Arizona. We make a few more mistakes, but learn from them.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.palain.com/travel/into-arizona/\" class=\"uri\">https://www.palain.com/travel/into-arizona/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, RV life, Arizona',0,0,1),
(3740,'2022-12-02','Batch File Variables; Nested Batch Files',730,'More on DOS. This time it is using variables in batch files, and nesting batch files.','<p>This final episode of the DOS series continues the look at batch files by first looking at how you can use variables in writing your batch files. Then we look at how batch files can be nested, that is, how one batch file can call another batch file, thus chaining batch files together.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.ahuka.com/dos-lessons-for-self-study-purposes/dos-lesson-17-batch-file-variables-nested-batch-files/\" class=\"uri\">https://www.ahuka.com/dos-lessons-for-self-study-purposes/dos-lesson-17-batch-file-variables-nested-batch-files/</a></li>\n</ul>\n',198,117,0,'CC-BY-SA','DOS, early PC computing, batch files, variables, nesting',0,0,1),
(3750,'2022-12-16','Southern Arizona',1022,'We move into Southern Arizona, near the Mexican border.','<p>We wrap up our stay in Topock, Arizona and move down to Ajo, Arizona, not far from the Mexican border. Kevin gets a head cold and takes it easy for a few days, but we still manage to get out and see some things. At the end we repair our steps and head off to the Tucson area.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.palain.com/travel/southern-arizona/\" class=\"uri\">https://www.palain.com/travel/southern-arizona/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, RV life, Arizona',0,0,1),
(3596,'2022-05-16','Extracting text, tables and images from docx files using Python',517,'In this episode, I describe how I used 2 python libraries to extract import data from docx files','<h2 id=\"tools-to-extract-data-from-docx-files\">Tools to extract data from docx files:</h2>\n<ol>\n<li><a href=\"https://manpages.ubuntu.com/manpages/focal/man1/docx2txt.1.html\">docx2txt</a></li>\n<li><a href=\"https://github.com/ankushshah89/python-docx2txt\">python-docx2txt</a></li>\n<li><a href=\"https://python-docx.readthedocs.io/en/latest/\">python-docx</a></li>\n</ol>\n<h2 id=\"code-snippets\">Code Snippets</h2>\n<pre><code>text = docx2txt.process(src, img_dest)\nwith open(&quot;data.txt&quot;, &quot;wt&quot;) as f:\n f.write(text)\n</code></pre>\n<pre><code>document = docx.Document(src)\ntables = document.tables\ndata = []\nfor table in tables:\n table_data = []\n for row in table.rows:\n row_data = []\n for cell in row.cells:\n row_data.append(cell.text)\n table_data.append(row_data)\n data.append(table_table)\n\nfor i, table in enumerate(tables):\n with open(f&quot;{i}.csv&quot;, &quot;wt&quot;) as f:\n writer = csv.writer(f)\n writer.writerows(table)\n</code></pre>\n',300,38,0,'CC-BY-SA','python,docx',0,0,1),
(3597,'2022-05-17','Good Idea Fairy Hunting',570,'Tracing my security woes to the source using \"Good Idea Fairy Hunting\"','<p>This is the beginning of a series where I am going to discuss how to handle and tackle security as a people problem. We often lose sight of the trees for the forest and vice versa. Let\'s get out from behind our desks and go meet the people that need our help, even if they don\'t know it yet.</p>\n',405,74,1,'CC-BY-SA','adminadmin,Lurking Prion,2022,cybersecurity,infosec',0,0,1),
(3598,'2022-05-18','Slackware 15 - 32 bit Operating System from day one.',3756,'The PRO\'s of using a Slackware 32 bit operating system','<ul>\n<li>The Slackware Linux website:<br />\n<a href=\"https://www.slackware.com/info/\" class=\"uri\">https://www.slackware.com/info/</a></li>\n<li>Wiki on Slackware Linux<br />\n<a href=\"https://www.wikiwand.com/en/Slackware\" class=\"uri\">https://www.wikiwand.com/en/Slackware</a></li>\n<li>List of distributions based on Slackware - Suse excluded<br />\n<a href=\"https://www.primidi.com/list_of_linux_distributions/slackware-based\" class=\"uri\">https://www.primidi.com/list_of_linux_distributions/slackware-based</a></li>\n<li>Slackbuilds.org website<br />\n<a href=\"https://slackbuilds.org/repository/15.0/multimedia/vlc/\" class=\"uri\">https://slackbuilds.org/repository/15.0/multimedia/vlc/</a></li>\n<li>Freenix - formerly FreeSlacks<br />\n<a href=\"https://freeslack.net/\" class=\"uri\">https://freeslack.net/</a></li>\n</ul>\n',377,0,1,'CC-BY-SA','32bitOS, Security,Simplicity,Freedom,usercontrol',0,0,1),
(3601,'2022-05-23','Re: The Worst Car I Ever Had',356,'In the 1980\'s, out of ignorance, I bought a real dud of a car','<article>\n<h2 id=\"introduction\">Introduction</h2>\n<p>This episode was prompted by show <a href=\"https://hackerpublicradio.org/eps.php?id=3542\">3542</a> from <a href=\"https://hackerpublicradio.org/correspondents/0246.html\">Beeza</a> entitled <em>The Worst Car I Ever Had</em>. Heres my story.</p>\n<p>I moved to Edinburgh in 1981, and before long bought myself a car - the first one I had owned. Before that Id owned a series of Lambretta motor scooters and small to medium powered motorbikes. Id been using a bicycle a lot after that.</p>\n<p>The car I bought was an oldish <a href=\"https://en.wikipedia.org/wiki/Peugeot_104\">Peugeot 104</a>, small, not very powerful, but it did the job. It was fine for driving around town and I used it to go and visit my parents in Norwich, England a few times, a long journey. I once drove north, up to Ullapool, a shorter drive, but it wasnt the car for long journeys. Mostly it was used around town.</p>\n<p>As the Peugeot started to give me trouble I looked around for a replacement. I was visiting my parents and went to a car dealer in Norwich and was shown an <a href=\"https://en.wikipedia.org/wiki/Austin_Maestro\">Austin Maestro</a>. It was newer than the Peugeot and seemed to be in good condition, so I bought it, trading in the Peugeot as I did so.</p>\n<p>The Maestro range was seen as reasonably good as far as I knew, but this one suffered from some design flaws, in my opinion.</p>\n<p>The car I bought was only a few years old and had a fairly low mileage. It was the HLE model with a 1.3 litre petrol engine. It had 4 doors and a <em>hatch</em> at the back giving access to a reasonable amount of luggage space (often such <em>hatchbacks</em> are called 5-door cars in the UK). All Maestro models had front-wheel drive, and this one had a manual gearbox. Automatic British cars were not common at that time.</p>\n<p>The Maestro had a bunch of economy features:</p>\n<ul>\n<li>a 4-speed gearbox with some <em>economy</em> gear ratios</li>\n<li>an <em>econometer</em> on the dashboard with green and red LEDs indicating how economically the car was being driven</li>\n</ul>\n<h2 id=\"the-issues\">The Issues</h2>\n<p>The Maestro seemed to have been designed to be driven as empty as possible. As soon as there were any passengers, or luggage, or <u><mark>both</mark></u>, the car was a nightmare to drive.</p>\n<p>There were models in the range that performed well, I think. Being passed by them on motorways and when trying to drive up any kind of hill showed this to be true. Ive read that the standard 1.3 model was pretty good without the economy features, but I never experienced one.</p>\n<p>The problem was that the gap in gear ratios between the second and third gear was enormous, as if youd accidentally skipped a gear. The fourth <em>economy</em> gear could only be resorted to on flat roads or going downhill or with a tail wind or with the car completely empty.</p>\n<p>I was happy to find a link describing these problems when doing research for this show. The <a href=\"https://www.aronline.co.uk/cars/austin/maestro/not-their-finest-hour-austin-maestro-1-3-hle/\">description of the car</a> made me laugh, but also brought back memories of the extreme frustration I experienced with this car!</p>\n<p>So, I conclude that this particular Maestro was a failure. It might be the reason I got it at a good price; the previous owner was probably keen to get rid of it. Also the car dealer knew a sucker when he saw one, and I was that fool!</p>\n<p>I kept the car for a few years, did very few long journeys in it and eventually replaced it with a Vauxhall Astra Mark III, which was in a totally different league!</p>\n<h2 id=\"links\">Links</h2>\n<ul>\n<li>Peugeot 104\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Peugeot_104\">Wikipedia page on the Peugeot 104</a></li>\n</ul></li>\n</ul>\n<ul>\n<li>Austin Maestro:\n<ul>\n<li><a href=\"https://en.wikipedia.org/
(3603,'2022-05-25','Who the heck is Evil Steve? Part 1',852,'Security as a people problem: Who is actually attacking us? Meet Evil Steve.\r','<p>admin admin with Lurking Prion</p>\r\n<p>Episode 3: Who the heck is Evil Steve?</p>\r\n<p>Picking up from Episode 2: Good Idea Fairy Hunting we continue exploring the concept of security as a people problem.<br />\r\nThis week we stop to take a moment to focus on the Who rather than the What is attacking us. In CyberSecurity, we tend to get caught up in things that happen to us, that we forget that it is actually a person attacking us. Learning more about who wants the information we have will tell us the ways they go about stealing it. This gives us information to better protect our assets and begin active threat hunting. The show is about 15 minutes long.</p>\r\n<h2 id=\"links-to-information-about-threat-actors-listed-below\">Links to information about Threat Actors listed below:</h2>\r\n<ul>\r\n<li><a href=\"https://www.cisa.gov/\" class=\"uri\">https://www.cisa.gov/</a></li>\r\n<li><a href=\"https://www.cisa.gov/cybersecurity\" class=\"uri\">https://www.cisa.gov/cybersecurity</a></li>\r\n<li><a href=\"https://www.cisa.gov/cert\" class=\"uri\">https://www.cisa.gov/cert</a></li>\r\n<li><a href=\"https://www.csoonline.com/article/3619011/the-10-most-dangerous-cyber-threat-actors.html\" class=\"uri\">https://www.csoonline.com/article/3619011/the-10-most-dangerous-cyber-threat-actors.html</a></li>\r\n<li><a href=\"https://threatmap.checkpoint.com/\" class=\"uri\">https://threatmap.checkpoint.com/</a></li>\r\n</ul>\r\n',405,74,1,'CC-BY-SA','adminadmin,cyber security,security,threats,threat actors,Evil Steve',0,0,1),
(3612,'2022-06-07','Who is Evil Steve? Part 2',959,'We take a closer look at the types of Evil Steve\'s attacking us','<p>admin admin with Lurking Prion</p>\n<h2 id=\"episode-4-who-is-evil-steve-part-2\">Episode 4: Who is Evil Steve? Part 2</h2>\n<p>Picking up from Episode 3: Picking up from the last episode, we delve a bit more into the types of threat actors (people) that are attacking us. We explore the run of the mill data theft hacker to the more professional Advanced Persistent Threats (APTs). The show is about 16 minutes long.</p>\n<h2 id=\"links-to-information-about-threat-actors-listed-below\">Links to information about Threat Actors listed below:</h2>\n<ul>\n<li><a href=\"https://www.cisa.gov/\" class=\"uri\">https://www.cisa.gov/</a></li>\n<li><a href=\"https://www.cisa.gov/cybersecurity\" class=\"uri\">https://www.cisa.gov/cybersecurity</a></li>\n<li><a href=\"https://www.cisa.gov/cert\" class=\"uri\">https://www.cisa.gov/cert</a></li>\n<li><a href=\"https://www.csoonline.com/article/3619011/the-10-most-dangerous-cyber-threat-actors.html\" class=\"uri\">https://www.csoonline.com/article/3619011/the-10-most-dangerous-cyber-threat-actors.html</a></li>\n<li><a href=\"https://threatmap.checkpoint.com/\" class=\"uri\">https://threatmap.checkpoint.com/</a></li>\n</ul>\n',405,74,1,'CC-BY-SA','adminadmin,cybersecurity,security,threats,threat actors,Evil Steve',0,0,1),
(3617,'2022-06-14','admin admin S01E05: To Do List - 2FA',874,'Making ourselves a less attractive target by implementing 2FA.','<p>Picking up from the last episode, we are now delving in to the security measures we can implement to make ourselves less attractive for Evil Steve. Two Factor Authentication (2FA) is at the top of the list.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.pcmag.com/picks/the-best-authenticator-apps?\" class=\"uri\">https://www.pcmag.com/picks/the-best-authenticator-apps?</a></li>\n<li><a href=\"https://www.ledger.com/es/academy/why-two-factor-authentication-2fa-matters-now-more-than-ever\" class=\"uri\">https://www.ledger.com/es/academy/why-two-factor-authentication-2fa-matters-now-more-than-ever</a></li>\n</ul>\n<ul>\n<li>Permanent link because it\'s very cool.<br />\n<a href=\"https://threatmap.checkpoint.com/\" class=\"uri\">https://threatmap.checkpoint.com/</a></li>\n</ul>\n',405,74,1,'CC-BY-SA','adminadmin,Lurking Prion,cybersecurity,security,threats,2FA,Evil Steve, two factor',0,0,1),
(3619,'2022-06-16','Linux Inlaws S01E58: Kubernetes and Friends and Sarah',4090,'The fun continues with a discussion of container orchestration frameworks, death (of containers) and','In this continuation of S01E57 our two chaps discuss how you can take containers from\nsingle instances to production-ready, scalable deployments handling large app stacks\nand that new-fangled hipster concept called micro-services. Using the once Google-owned project called Borg which later evolved into something now known as Kubernetes (k8s) as an example,\nMartin and Chris discuss typical challenges when using containers as the main infrastructure\nto modern workloads. Including such gory topics such as what happens if a container dies and\ndoesn\'t go to heaven, contradictions in terms such as ephemeral storage and why many k8s developers\nhave defected to VMware.\n<h2>Links:</h2>\n<ul>\n<li>S01E57: <a href=\"https://linuxinlaws.eu/#episodes\" target=_blank>https://linuxinlaws.eu/#episodes</a></li>\n<li>k8s: <a href=\"https://kubernetes.io\" target=_blank>https://kubernetes.io</a></li>\n<li>Mesos: <a href=\"https://mesos.apache.org\" target=_blank>https://mesos.apache.org</a></li>\n<li>DC OS: <a href=\"https://dcos.io\" target=_blank>https://dcos.io</a></li>\n<li>Redis Stack: <a href=\"https://redis.io/docs/stack\" target=_blank>https://redis.io/docs/stack</a></li>\n<li>Docker Swarm: <a href=\"https://docs.docker.com/engine/swarm\" target=_blank>https://docs.docker.com/engine/swarm</a></li>\n<li>Open Container Initiative: <a href=\"https://opencontainers.org\" target=_blank>https://opencontainers.org</a></li>\n<li>cri-o: <a href=\"https://github.com/cri-o/cri-o\" target=_blank>https://github.com/cri-o/cri-o</a></li>\n<li>containerd: <a href=\"https://github.com/containerd/containerd\" target=_blank>https://github.com/containerd/containerd</a></li>\n<li>minikube: <a href=\"https://minikube.sigs.k8s.io/docs/start\" target=_blank>https://minikube.sigs.k8s.io/docs/start</a></li>\n<li>kubeadm: <a href=\"https://kubernetes.io/docs/reference/setup-tools/kubeadm\" target=_blank>https://kubernetes.io/docs/reference/setup-tools/kubeadm</a></li>\n<li>kubeadm tutorial: <a href=\"https://citizix.com/how-to-set-up-kubernetes-cluster-on-debian-11-with-kubeadm-and-cri-o\" target=_blank>https://citizix.com/how-to-set-up-kubernetes-cluster-on-debian-11-with-kubeadm-and-cri-o</a></li>\n<li>YAML: <a href=\"https://yaml.org\" target=_blank>https://yaml.org</a></li>\n<li>OpenShift: <a href=\"https://www.redhat.com/en/technologies/cloud-computing/openshift\" target=_blank>https://www.redhat.com/en/technologies/cloud-computing/openshift</a></li>\n<li>HELM: <a href=\"https://helm.sh\" target=_blank>https://helm.sh</a></li>\n<li>k8s operators: <a href=\"https://kubernetes.io/docs/concepts/extend-kubernetes/operator\" target=_blank>https://kubernetes.io/docs/concepts/extend-kubernetes/operator</a></li>\n<li>openstack: <a href=\"https://www.openstack.org\" target=_blank>https://www.openstack.org</a></li>\n<li>Redis operator: <a href=\"https://github.com/AmadeusITGroup/Redis-Operator\" target=_blank>https://github.com/AmadeusITGroup/Redis-Operator</a></li>\n<li>k8s grid: <a href=\"https://tanzu.vmware.com/kubernetes-grid\" target=_blank>https://tanzu.vmware.com/kubernetes-grid</a></li>\n<li>Bradley Kuhn\'s Non-Profit blog post: <a href=\"https://sfconservancy.org/blog/2013/dec/05/non-profit-home\" target=_blank>https://sfconservancy.org/blog/2013/dec/05/non-profit-home</a></li>\n<li>Sarah\'s HPR episode: <a href=\"https://hackerpublicradio.org/eps.php?id=3577\" target=_blank>https://hackerpublicradio.org/eps.php?id=3577</a></li>\n<li>Volodymyr Zelenskyy: <a href=\"https://en.wikipedia.org/wiki/Volodymyr_Zelenskyy\" target=_blank>https://en.wikipedia.org/wiki/Volodymyr_Zelenskyy</a></li>\n</ul>\n',384,111,1,'CC-BY-SA','Kubernetes, Mesos, cri-o, YAML, OpenShift, hpr3577',0,0,1),
(3626,'2022-06-27','The stuff Evil Steve doesn\'t want you to know S01E06: Use a Password Manager',1100,'Making ourselves a less attractive target by utilizing a password manager.','<p>The stuff Evil Steve doesn\'t want you to know with Lurking Prion. This is Season 1, Episode 6. Picking up from the last episode, we are now delving in to the security measures we can implement to make ourselves a less attractive for Evil Steve. After implementing 2FA, we should now be setting up and using a password manager. Then we look for and changed passwords involved in known breaches (haveibeenpwned - link in show notes). The show is approximately 19 minutes long.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><p>Has your password been involved in a breach?<br />\n<a href=\"https://haveibeenpwned.com/\" class=\"uri\">https://haveibeenpwned.com/</a></p></li>\n<li><p>Password Manager Reviews:<br />\n<a href=\"https://www.tomsguide.com/us/best-password-managers,review-3785.html\" class=\"uri\">https://www.tomsguide.com/us/best-password-managers,review-3785.html</a><br />\n<a href=\"https://www.pcmag.com/picks/the-best-password-managers\" class=\"uri\">https://www.pcmag.com/picks/the-best-password-managers</a><br />\n<a href=\"https://www.nytimes.com/wirecutter/reviews/best-password-managers/\" class=\"uri\">https://www.nytimes.com/wirecutter/reviews/best-password-managers/</a></p></li>\n<li><p>Stand-Alone Password Managers<br />\n</p>\n<ul>\n<li>KeePass <a href=\"https://keepass.info/\" class=\"uri\">https://keepass.info/</a></li>\n<li>KeePassXC <a href=\"https://keepassxc.org/\" class=\"uri\">https://keepassxc.org/</a></li>\n</ul></li>\n<li><p>Recent Authenticator App Reviews<br />\n<a href=\"https://www.pcmag.com/picks/the-best-authenticator-apps\" class=\"uri\">https://www.pcmag.com/picks/the-best-authenticator-apps</a><br />\n<a href=\"https://www.nytimes.com/wirecutter/reviews/best-two-factor-authentication-app/\" class=\"uri\">https://www.nytimes.com/wirecutter/reviews/best-two-factor-authentication-app/</a></p></li>\n<li><p>Google password manager articles<br />\n<a href=\"https://privacycrypts.com/password-managers/guides/is-chrome-password-manager-safe/\" class=\"uri\">https://privacycrypts.com/password-managers/guides/is-chrome-password-manager-safe/</a><br />\n<a href=\"https://www.experian.com/blogs/ask-experian/is-google-passwordmanager-secure/\" class=\"uri\">https://www.experian.com/blogs/ask-experian/is-google-passwordmanager-secure/</a></p></li>\n<li><p>Apple iCloud Keychain<br />\n<a href=\"https://www.imore.com/icloud-keychain\" class=\"uri\">https://www.imore.com/icloud-keychain</a><br />\n<a href=\"https://www.intego.com/mac-security-blog/mac-and-ios-keychain-tutorial-how-apples-icloud-keychain-works/\" class=\"uri\">https://www.intego.com/mac-security-blog/mac-and-ios-keychain-tutorial-how-apples-icloud-keychain-works/</a><br />\n<a href=\"https://www.podfeet.com/blog/2021/06/icloud-keychain-vs-1password/\" class=\"uri\">https://www.podfeet.com/blog/2021/06/icloud-keychain-vs-1password/</a></p></li>\n<li><p>iCloud Keychain 2FA - how to<br />\n<a href=\"https://www.guidingtech.com/use-icloud-keychain-two-factor-authentication/\" class=\"uri\">https://www.guidingtech.com/use-icloud-keychain-two-factor-authentication/</a></p></li>\n<li><p>Apple iCloud Keychain security issues<br />\n<a href=\"https://www.wired.com/story/keysteal-apple-keychain-attack-shenanigans/\" class=\"uri\">https://www.wired.com/story/keysteal-apple-keychain-attack-shenanigans/</a></p></li>\n<li><p>Microsoft Authenticator vs Google Authenticator<br />\n<a href=\"https://www.365tech.ca/which-one-is-better-microsoft-authenticator-or-google-authenticator/\" class=\"uri\">https://www.365tech.ca/which-one-is-better-microsoft-authenticator-or-google-authenticator/</a></p></li>\n<li><p>Google Authenticator<br />\n<a href=\"https://www.techdim.com/what-is-google-authenticator/\" class=\"uri\">https://www.techdim.com/what-is-google-authenticator/</a></p></li>\n<li><p>Google Authenticator security issue<br />\n<a href=\"https://privacypros.io/u2f/stop-usin
(3604,'2022-05-26','Everything You Always Wanted to Know About PEX Part 01- Let\'s Talk About PEX - Introduction ',782,'Introduction to PEX','<h2 id=\"everything-you-always-wanted-to-know-about-pex\">Everything You Always Wanted to Know About PEX</h2>\n<h3 id=\"part-01--lets-talk-about-pex---introduction\">Part 01- Let\'s Talk About PEX - Introduction</h3>\n<h3 id=\"why-my-story\">Why? My story</h3>\n<ol type=\"1\">\n<li>Why am I posting about plumbing on HPR? \"Of interest to hackers\"\n<ol type=\"1\">\n<li>I find it interesting</li>\n<li>We like to learn new things</li>\n<li>We like to understand\n<ol type=\"1\">\n<li>How things work</li>\n<li>How things break</li>\n<li>How to use non-standard approached to solve problems</li>\n</ol></li>\n<li>Others can learn from my experience, troubleshooting process, etc...</li>\n<li>I had fun creating the episode titles.</li>\n</ol></li>\n<li>Pinhole leaks in copper pipe\n<ol type=\"1\">\n<li>Causes &#x2013; Note plumbing is around 40 years old and original to house</li>\n<li>Poor quality copper Shoddy installation</li>\n<li>Failure to de-bur pipe before soldering</li>\n<li>Not properly hung from joists\n<ol type=\"1\">\n<li>Pipe on pipe</li>\n<li>Pipe on steel wire</li>\n</ol></li>\n<li>Bad soldering technique\n<ol type=\"1\">\n<li>Lumpy solder</li>\n<li>Flux residue</li>\n<li>Excessive flux</li>\n</ol></li>\n<li>Hard water\n<ol type=\"1\">\n<li>Only some neighbors experiencing the same issue, and their houses were constructed by the same builder.</li>\n</ol></li>\n<li>Learn more about copper pipe corrosion\n<ol type=\"1\">\n<li>How to Stop Copper Pipe Corrosion - This Old House YouTube Channel</li>\n<li><a href=\"https://www.youtube.com/watch?v=nD5lMITzx_Y\" class=\"uri\">https://www.youtube.com/watch?v=nD5lMITzx_Y</a></li>\n</ol></li>\n<li>High Water Pressure\n<ol type=\"1\">\n<li>Normal = 60-80 PSI</li>\n<li>Tested at 63 PSI = GOOD!!</li>\n</ol></li>\n<li>Damage</li>\n<li>Water leaks caused damage to drywall in parts of my house and to items stored in my garage.</li>\n<li>Leaks in some areas can sometimes go unidentified for long enough to do extensive damage and even lead to dangerous mold growth.</li>\n</ol></li>\n<li>Possible solutions\n<ol type=\"1\">\n<li>Short term</li>\n<li>Patch\n<ol type=\"1\">\n<li>Epoxy kits</li>\n<li>Can be inconsistent</li>\n<li>May not bond to corroded pipe</li>\n<li>Some require turning off water and dry pipes</li>\n<li>Water activated tape</li>\n<li>Access around pipe</li>\n<li>May not bond to corroded pipe</li>\n<li>Some require turning off water and dry pipes</li>\n<li>Solder on patch</li>\n<li>Expensive</li>\n<li>Requires clean dry pipe exterior</li>\n<li>Requires draining the pipe</li>\n<li>Might as well cut out the leaking section and replace</li>\n<li>Repair Clamps</li>\n<li>Fast</li>\n<li>Strong</li>\n<li>Can be used while pipe is under pressure</li>\n<li>Minimal clearance needed</li>\n<li>Examples\n<ol type=\"1\">\n<li><a href=\"https://www.grainger.com/category/plumbing/pipe-tubing-and-fittings/pipe-repair-clamps-and-couplings/pipe-repair-clamps\" class=\"uri\">https://www.grainger.com/category/plumbing/pipe-tubing-and-fittings/pipe-repair-clamps-and-couplings/pipe-repair-clamps</a></li>\n<li><a href=\"https://www.homedepot.com/b/Plumbing-Plumbing-Accessories-Repair-Clamps/Copper/N-5yc1vZbqomZ1z0vifv\" class=\"uri\">https://www.homedepot.com/b/Plumbing-Plumbing-Accessories-Repair-Clamps/Copper/N-5yc1vZbqomZ1z0vifv</a></li>\n<li><a href=\"https://www.homedepot.com/b/Plumbing-Plumbing-Accessories-Repair-Clamps/Multi-Purpose/N-5yc1vZbqomZ1z0vhwh\" class=\"uri\">https://www.homedepot.com/b/Plumbing-Plumbing-Accessories-Repair-Clamps/Multi-Purpose/N-5yc1vZbqomZ1z0vhwh</a></li>\n</ol></li>\n</ol></li>\n<li>Long Term</li>\n<li>Repair copper\n<ol type=\"1\">\n<li>Cut out damaged section and replace using SharkBite fittings</li>\n<li>Expensive</li>\n<li>Cut out damaged section and solder in new section of pipe</li>\n<li>Expensive</li>\n<li>Time consuming</li>\n<li>Many areas of corrosion visible</li>\n<li>Whack-a-mole - Where &amp; when will n
(3614,'2022-06-09','Everything You Always Wanted to Know About PEX Part 02- The Joy of PEX - What is it and how is it us',838,'Information about PEX and how it is used','<h2 id=\"everything-you-always-wanted-to-know-about-pex\">Everything You Always Wanted to Know About PEX</h2>\n<h3 id=\"part-02--the-joy-of-pex---what-is-it-and-how-is-it-used\">Part 02- The Joy of PEX - What is it and how is it used?</h3>\n<ol type=\"1\">\n<li>What is PEX?\n<ol type=\"1\">\n<li>According to Wikipedia, Cross-linked polyethylene tubing is commonly abbreviated PEX, XPE or XLPE -<a href=\"https://en.wikipedia.org/wiki/Cross-linked_polyethylene\" class=\"uri\">https://en.wikipedia.org/wiki/Cross-linked_polyethylene</a></li>\n<li>This tubing is made of crosslinked polyethelene chains</li>\n<li>Type A, Type B, &amp; Type C</li>\n<li>These differ based on the process used to make them and the resulting properties of the resulting tubing</li>\n<li>PEX is used for a variety of products</li>\n<li>Insulation on high voltage high tension electrical cables</li>\n<li>Domestic water pipes</li>\n<li>Irrigation and hydroponic systems</li>\n<li>Natural gas and oil pipes</li>\n<li>Chemical handling and storage systems</li>\n</ol></li>\n<li>Domestic plumbing\n<ol type=\"1\">\n<li>Advantages</li>\n<li>Flexible &#x2013; easy to install and fish through walls and crawl spaces</li>\n<li>It will stretch a little &#x2013; Less likely to rupture if water contained in PEX freezes</li>\n<li>Does not rust or corrode</li>\n<li>Less expensive than copper</li>\n<li>Multiple colors for easy identification</li>\n<li>Easy to cut</li>\n<li>Connections are easy\n<ol type=\"1\">\n<li>Type A &#x2013; Expansion PEX</li>\n<li>Process\n<ol type=\"1\">\n<li>A roughly 1/2\" - 3/4\"sleeve of slightly larger PEX expansion sleeve is slipped over the end of the PEX-A tubing</li>\n<li>A special tool is inserted into the end of the tubing which stretches it outward a predefined amount.</li>\n<li>The tubing is slipped over the end of the desired PEX-A connector and allowed to shrink back to normal size, creating a seal</li>\n<li>Video: <a href=\"https://www.youtube.com/watch?v=Xot95W8vni0\" class=\"uri\">https://www.youtube.com/watch?v=Xot95W8vni0</a></li>\n</ol></li>\n<li>Advantages\n<ol type=\"1\">\n<li>Fast and easy to install</li>\n<li>Can install in tight places, since tool does not need to be at the connector</li>\n<li>More resistant to damage from kinks if bent over too tight a radius</li>\n<li>More resistant to damage from freezing</li>\n</ol></li>\n<li>Disadvantages\n<ol type=\"1\">\n<li>The tool is expensive (~$300 - $600 USD)</li>\n<li>In the United states, PEX-A connectors have limited availability in typical hardware and home improvement stores</li>\n</ol></li>\n<li>Type B &#x2013; Crimp PEX (Doesn\'t stretch)</li>\n<li>Process\n<ol type=\"1\">\n<li>A metal ring or band is placed around the end of the PEX-B tubing</li>\n<li>The tubing is slipped over the end of the desired PEX-B connector</li>\n<li>A special tool us used to crimp the metal ring or a different tool may be used to tighten the metal band, creating a seal</li>\n<li>Video: <a href=\"https://www.youtube.com/watch?v=U-t-ZeHv9s0\" class=\"uri\">https://www.youtube.com/watch?v=U-t-ZeHv9s0</a></li>\n</ol></li>\n<li>Advantages\n<ol type=\"1\">\n<li>Fast &amp; easy to install</li>\n<li>Crimping tools are less expensive</li>\n<li>Higher availability of a wider range of connectors at typical home improvement stores in the United States</li>\n</ol></li>\n<li>Disadvantages\n<ol type=\"1\">\n<li>If PEX-B is kinked, that portion is no longer safe to use and it must be replaced.</li>\n<li>Can be more difficult to connect in tight places</li>\n<li>This can be remedied with the use of SharkBite press on fittings.</li>\n<li>Less resistant to damage from freezing.</li>\n</ol></li>\n</ol></li>\n<li>Connections are also easily removed</li>\n<li>Disadvantages</li>\n<li>Easily damaged by ultraviolet light from sunlight or even LED &amp; fluorescent lights (Check manufacturer specifications. Most rated for only 30-60 days of sun exposu
(3624,'2022-06-23','Everything You Always Wanted to Know About PEX Parts 3 &amp; 4',816,'Discusses plumbing code and installation','<h2 id=\"everything-you-always-wanted-to-know-about-pex\">Everything You Always Wanted to Know About PEX</h2>\n<h3 id=\"part-03-pex-and-the-city-ordinances---how-to-make-certain-your-installation-meets-code\">Part 03 &#x2013; PEX and the City (Ordinances) - How to make certain your installation meets code</h3>\n<p>This will be a short episode, but a very important one.</p>\n<p>Since we have people from around the world who listen to Hacker Public Radio, I cannot begin to speculate what your local building codes allow or prohibit. In the majority of states within the United States of America, a property owner can perform plumbing maintenance on their own residence. Otherwise you need to be a licensed plumber. That may not be true for all states, and there can be inspections required and sometimes even fines for code violations.</p>\n<p>Rules also vary for where PEX can be installed, how and how frequently it must be supported, and whether the work must be inspected or whether it requires a permit.</p>\n<p>The point of this section is to remind you to do your research to find out what the rules are in your specific region, and then be sure to follow them. When in doubt, consult a licensed plumber in your area.</p>\n<h3 id=\"part-04-pex-lies-and-silicone-tape-my-installation-experience-part-1\">Part 04 &#x2013; PEX, Lies, and Silicone Tape &#x2013; My installation experience part 1</h3>\n<p>If you have missed the previous episodes in this series, I encourage you to review them before continuing because they will provide valuable context around my plumbing adventures.</p>\n<ol type=\"1\">\n<li>Design &#x2013; The best place to start.\n<ol type=\"1\">\n<li>Option 1 &#x2013; Follow existing pipe</li>\n<li>Option 2 &#x2013; Install manifold valve system for greater control</li>\n<li>Replacing everything or connecting to existing pipe or fixtures?</li>\n</ol></li>\n<li>Materials\n<ol type=\"1\">\n<li>PEX-A &#x2013;vs- PEX-B</li>\n<li>Decisions, decisions.</li>\n<li>PEX-B Wins</li>\n<li>Manifold</li>\n<li>Allows specific sections to be turned on and off independently</li>\n<li>Examples: <a href=\"https://www.supplyhouse.com/PEX-Manifolds-518000\" class=\"uri\">https://www.supplyhouse.com/PEX-Manifolds-518000</a></li>\n<li>Connectors</li>\n<li>New Valves</li>\n<li>Transition connectors\n<ol type=\"1\">\n<li>To copper</li>\n<li>Sharkbite</li>\n<li>Solder</li>\n<li>To PVC</li>\n<li>Sharkbite</li>\n<li>Glue</li>\n<li>To main water line</li>\n<li>To/From Water heater</li>\n</ol></li>\n<li>Silicone tape or pipe dope</li>\n<li>Hangers &amp; Wall clamps</li>\n<li>Crimp rings</li>\n</ol></li>\n<li>Tools\n<ol type=\"1\">\n<li>Crimp tool</li>\n<li>Removal tool</li>\n<li>Sharkbite</li>\n<li>Depth gauge</li>\n<li>Removal tool</li>\n<li>Tape measure</li>\n<li>String / wire phish</li>\n</ol></li>\n<li>Planning\n<ol type=\"1\">\n<li>Most important step</li>\n<li>With proper planning you can reduce service outage</li>\n<li>Some steps can be done before shutting off water</li>\n<li>Access holes</li>\n<li>Running / connecting PEX sections</li>\n</ol></li>\n<li>Assistance\n<ol type=\"1\">\n<li>While an individual installer can redo a house with PEX, it is not ideal. If you can get another person to help, it will make the process go much easier.</li>\n</ol></li>\n</ol>\n',394,0,0,'CC-BY-SA','diy, plumbing,PEX',0,0,1),
(3634,'2022-07-07','Everything You Always Wanted to Know About PEX Part 05 - PEX and the Single Installer',1667,'My PEX installation experience part 2','<h2 id=\"everything-you-always-wanted-to-know-about-pex\">Everything You Always Wanted to Know About PEX</h2>\n<h3 id=\"part-05-pex-and-the-single-installer-my-pex-installation-experience-part-2\">Part 05&#x2013; PEX and the Single Installer &#x2013; My PEX installation experience part 2</h3>\n<h3 id=\"pulling-pex\">Pulling PEX</h3>\n<ol type=\"1\">\n<li>Much like pulling thick wire\n<ol type=\"1\">\n<li>My method\n<ol type=\"1\">\n<li>Used fish tape to pull mason\'s line</li>\n<li>Tied mason\'s line to PEX about 4 inches from end.</li>\n<li>Taped above &amp; below with electrical tape</li>\n<li>Then tied line again closer to the end of PEX.</li>\n<li>Wrapped again with electrical tape</li>\n</ol></li>\n<li>Pull extra</li>\n<li>Unroll and let it lay straight for 24 hours if \"curve memory\" is a problem</li>\n<li>Can be challenging and require an individual installer to go back and forth between the feed point and the pull point.</li>\n</ol></li>\n<li>Supporting PEX\n<ol type=\"1\">\n<li>1\" and smaller PEX must be supported horizontally every 32 inches</li>\n<li>Vertically, it must be supported at every floor and midway between floors (every 4-6 feet)</li>\n<li><a href=\"https://www.pexuniverse.com/providing-proper-support-long-runs-pex-tubing\" class=\"uri\">https://www.pexuniverse.com/providing-proper-support-long-runs-pex-tubing</a></li>\n<li>Can be challenging to hold in place until secured</li>\n<li>Zip ties are your friend!</li>\n</ol></li>\n<li>Using a manifold\n<ol type=\"1\">\n<li>Determine your needs</li>\n<li>Number of hot and cold outputs</li>\n<li>Valve type\n<ol type=\"1\">\n<li>Handled</li>\n<li>Wrench/key</li>\n</ol></li>\n<li>Find a location with</li>\n<li>Easy access</li>\n<li>Fairly central to avoid long delays for hot water</li>\n<li>Limited light exposure</li>\n<li>Build or buy?</li>\n<li>Costs</li>\n<li>Appearance</li>\n<li>Materials</li>\n<li>Securing manifold in place</li>\n<li>Anchor securely\n<ol type=\"1\">\n<li>Block wall with anchors</li>\n<li>To wood for spanning wall studs (I don\'t know why I kept saying \"Joist\" during the recording)</li>\n<li>Do not anchor to drywall</li>\n</ol></li>\n<li>Insulate from wall if needed</li>\n</ol></li>\n<li>Connecting to the main line\n<ol type=\"1\">\n<li>What to replace and what to use</li>\n<li>Size matters</li>\n<li>Plan to include manifold if needed</li>\n</ol></li>\n<li>Connecting to water heater\n<ol type=\"1\">\n<li>Where/how to connect</li>\n<li>Pipe Unions?</li>\n<li>Protect from heat</li>\n<li>Shut-off valve</li>\n<li>Expansion tank</li>\n<li>Silicon tape or pipe dope</li>\n</ol></li>\n<li>Connecting to endpoints\n<ol type=\"1\">\n<li>What to keep and what to replace</li>\n<li>Transition connectors</li>\n<li>SharkBite</li>\n<li>Solder</li>\n<li>Thread</li>\n<li>Glue</li>\n</ol></li>\n<li>Exterior hose taps\n<ol type=\"1\">\n<li>Reuse or replace?</li>\n<li>Frost free / anti-siphon</li>\n<li>Anchor securely</li>\n<li>Help is better!</li>\n</ol></li>\n<li>Turning it on!\n<ol type=\"1\">\n<li>If using a manifold turn on one section at a time, from the bottom up</li>\n<li>Open sink valves</li>\n<li>Ease it on a little at a time</li>\n<li>Then increase flow</li>\n<li>Turn off sink tap (Slowly) to let pressure build</li>\n<li>Keep watching for leaks</li>\n<li>Coordinate with a partner and communicate (cell phone?)</li>\n</ol></li>\n<li>Afterwards\n<ol type=\"1\">\n<li>Cover any PEX exposed to light</li>\n<li>Watch for leaks</li>\n<li>Repair holes</li>\n<li>Run water daily to flush out bad taste</li>\n<li>Inspection?</li>\n</ol></li>\n</ol>\n',394,0,0,'CC-BY-SA','diy, plumbing,PEX',0,0,1),
(3760,'2022-12-30','Bookwyrm',825,'This episode looks at a relatively new but promising alternative to Goodreads that is firmly in the ','<p>Federated social media can open up some wonderful possibilities to reimagine some of the social apps we already use and find ways to do them better. In this episode I want to highlight a new contender for a Fediverse application that may be able to replace Goodreads. Is it up to the task? We\'ll look at the pluses and minuses in this episode.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://joinbookwyrm.com/\" class=\"uri\">https://joinbookwyrm.com/</a></li>\n<li><a href=\"https://www.goodreads.com/\" class=\"uri\">https://www.goodreads.com/</a></li>\n<li><a href=\"https://github.com/bookwyrm-social/bookwyrm\" class=\"uri\">https://github.com/bookwyrm-social/bookwyrm</a></li>\n<li><a href=\"https://bookwyrm.social/\" class=\"uri\">https://bookwyrm.social/</a></li>\n<li><a href=\"https://www.zwilnik.com/better-social-media/bookwyrm/\" class=\"uri\">https://www.zwilnik.com/better-social-media/bookwyrm/</a></li>\n</ul>\n',198,108,0,'CC-BY-SA','social media, alternative, Fediverse, ActivityPub, Goodreads, library, Bookwyrm',0,0,1),
(3770,'2023-01-13','Tucson',908,'We move to Benson, a town just southeast of Tucson, where we will stay for a month.','<p>We wrap up our stay in Ajo, Arizona and move over to Benson, Arizona, not far from Tucson. Here we will stay for a month. And we don\'t run out of things to do. This was one of our favorite stops of the trip.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://flic.kr/s/aHBqjzKvKF\" class=\"uri\">https://flic.kr/s/aHBqjzKvKF</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKwew\" class=\"uri\">https://flic.kr/s/aHBqjzKwew</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKwWe\" class=\"uri\">https://flic.kr/s/aHBqjzKwWe</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKDGL\" class=\"uri\">https://flic.kr/s/aHBqjzKDGL</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKCT2\" class=\"uri\">https://flic.kr/s/aHBqjzKCT2</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKCBS\" class=\"uri\">https://flic.kr/s/aHBqjzKCBS</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKDbP\" class=\"uri\">https://flic.kr/s/aHBqjzKDbP</a></li>\n<li><a href=\"https://www.palain.com/travel/tucson/\" class=\"uri\">https://www.palain.com/travel/tucson/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, RV life, Arizona',0,0,1),
(3790,'2023-02-10','Tucson, Part 2',778,'We continue our month-long stay in Benson, a town just southeast of Tucson.','<p>We wrap up our stay in Tucson, Arizona and move over to Benson, Arizona, not far from Tucson. Here we will stay for a month. And we don\'t run out of things to do. This was one of our favorite stops of the trip. In this episode we visit an old west movie set, Saguaro National Park, and tour a copper mine.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://flic.kr/s/aHBqjzKEoM\" class=\"uri\">https://flic.kr/s/aHBqjzKEoM</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKKPu\" class=\"uri\">https://flic.kr/s/aHBqjzKKPu</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKLPk\" class=\"uri\">https://flic.kr/s/aHBqjzKLPk</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKMsj\" class=\"uri\">https://flic.kr/s/aHBqjzKMsj</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKNpv\" class=\"uri\">https://flic.kr/s/aHBqjzKNpv</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKMS9\" class=\"uri\">https://flic.kr/s/aHBqjzKMS9</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKRuY\" class=\"uri\">https://flic.kr/s/aHBqjzKRuY</a></li>\n<li><a href=\"https://www.palain.com/travel/tucson-part-2/\" class=\"uri\">https://www.palain.com/travel/tucson-part-2/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, RV life, Arizona, Tucson',0,0,1),
(3629,'2022-06-30','Linux Inlaws S01E59: The Show with Red Pandas Mosaic Killers and Metal Corrosion',4365,'An interview with Eric Rescorla (Firefox CTO) on Browsers, the Internet and hard-core sci-fi','<p>\r\nIn this episode, Martin and Chris interview Eric Rescorla, the CTO of Firefox at Mozilla. After\r\ndiscussing the weather situation in the Kingdom formerly known as the UK, our two aging heros\r\ngo right into browsers, programming languages, the Mozilla ecosystem and internet history and future\r\nalike. This episode again is not for the faint-hearted as none of the gory details are spared: We learn about Chris\' t-shirt situation (and how you can kidnap apparel), why Google is so sucessful, data privacy and Internet monetization. Never mind rendering engines. Plus: more Rust marketing (Rebecca Rumbul: Take note :-). \r\n</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>Firefox: <a href=\"https://www.mozilla.org/en-US/firefox/browsers\" target=_blank>https://www.mozilla.org/en-US/firefox/browsers</a></li>\r\n<li>Mozilla Foundation: <a href=\"https://foundation.mozilla.org\" target=_blank>https://foundation.mozilla.org</a></li>\r\n<li>Mozilla Corporation: <a href=\"https://www.mozilla.org\" target=_blank>https://www.mozilla.org</a></li>\r\n<li>Gecko: <a href=\"https://developer.mozilla.org/en-US/docs/Glossary/Gecko\" target=_blank>https://developer.mozilla.org/en-US/docs/Glossary/Gecko</a></li>\r\n<li>Blink: <a href=\"https://www.chromium.org/blink\" target=_blank>https://www.chromium.org/blink</a></li>\r\n<li>Servo: <a href=\"https://servo.org\" target=_blank>https://servo.org</a></li>\r\n<li>Quantum: <a href=\"https://wiki.mozilla.org/Quantum\" target=_blank>https://wiki.mozilla.org/Quantum</a></li>\r\n<li>Webkit: <a href=\"https://webkit.org\" target=_blank>https://webkit.org</a></li>\r\n<li>Trident (MSHTML): <a href=\"https://en.wikipedia.org/wiki/MSHTML\" target=_blank>https://en.wikipedia.org/wiki/MSHTML</a></li>\r\n<li>CSS: <a href=\"https://www.w3.org/Style/CSS\" target=_blank>https://www.w3.org/Style/CSS</a></li>\r\n<li>Rust: <a href=\"https://www.rust-lang.org\" target=_blank>https://www.rust-lang.org</a></li>\r\n<li>Ada standard: <a href=\"https://www.iso.org/standard/16028.html\" target=_blank>https://www.iso.org/standard/16028.html</a></li>\r\n<li>Web Monetization: <a href=\"https://foundation.mozilla.org/de/campaigns/web-monetization\" target=_blank>https://foundation.mozilla.org/de/campaigns/web-monetization</a></li>\r\n<li>Mozilla\'s Vision for the Web: <a href=\"https://webvision.mozilla.org/full\" target=_blank>https://webvision.mozilla.org/full</a></li>\r\n<li>Peter Watt\'s Blindsight: <a href=\"https://rifters.com/real/Blindsight.htm\" target=_blank>https://rifters.com/real/Blindsight.htm</a></li>\r\n<li>Mozilla Manifesto: <a href=\"https://www.mozilla.org/en-US/about/manifesto/details\" target=_blank>https://www.mozilla.org/en-US/about/manifesto/details</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','Firefox, rendering engines, Mozilla (Foundation and Corporation), Peter Watt, Rust',0,0,1),
(3636,'2022-07-11','The Importance of Data Reduction',2349,'I have a discussion about data reduction with special guest and author, R. Brady Frost','<h2 id=\"the-stuff-evil-steve-doesnt-want-you-to-know-with-lurking-prion.-this-is-season-1-episode-7.\">The stuff Evil Steve doesn\'t want you to know with Lurking Prion. This is Season 1, Episode 7.</h2>\n<p>In this episode, I have a discussion about data reduction with special guest and author, R. Brady Frost. The discussion revolves around the security risk of keeping too much data available, and things that can be done to mitigate those risks.</p>\n<h2 id=\"pics-of-the-week\">Pics of the week:</h2>\n<ul>\n<li><p>Hackers (The Movie)<br />\n<a href=\"https://www.imdb.com/title/tt0113243/?ref_=fn_al_tt_1\" class=\"uri\">https://www.imdb.com/title/tt0113243/?ref_=fn_al_tt_1</a></p></li>\n<li><p>Our Flag Means Death<br />\n<a href=\"https://www.imdb.com/title/tt11000902/\" class=\"uri\">https://www.imdb.com/title/tt11000902/</a></p></li>\n<li><p>R. Brady Frost<br />\n<a href=\"https://www.rbradyfrost.com/\" class=\"uri\">https://www.rbradyfrost.com/</a><br />\n<a href=\"https://www.rbradyfrost.com/blog/category/a-battle-mage-reborn/\" class=\"uri\">https://www.rbradyfrost.com/blog/category/a-battle-mage-reborn/</a></p></li>\n</ul>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><p>Has your password been involved in a breach?<br />\n<a href=\"https://haveibeenpwned.com/\" class=\"uri\">https://haveibeenpwned.com/</a></p></li>\n<li><p>Realtime Global Cyber Attack Map<br />\n<a href=\"https://threatmap.checkpoint.com/\" class=\"uri\">https://threatmap.checkpoint.com/</a></p></li>\n</ul>\n',405,74,1,'CC-BY-SA','cybersecurity,security,EvilSteve,breach,data reduction,privacy',0,0,1),
(3639,'2022-07-14','Linux Inlaws S01E60: The Job Interview',3262,'An interview with Kris Jenkins from Confluent','<p>\r\n\r\nIn this episode, the Linux Inlaws interview a potential new recruit :-) call Kris Jenkins, from Kafka, an Apache project implementing a scalable distributed event streaming platform (don\'t know what that is? Listen to the show! :-) . A cautious warning: This episode contains strong philosophical / political views, language and insights which may change your views on messaging systems in general and Kafka in particular. Two hints: Chris shares his view on what a database *really* is and Kris Jenkins tries hard to convince our two aging heroes that he\'s the man for the job (teaser: he decided to stay at his current position as a dev advocate at Confluent after all). Plus: More on love, death and robots. Interested in the details? Then don\'t miss this show! \r\n</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>Apache Kafka: <a href=\"https://kafka.apache.org\" target=_blank>https://kafka.apache.org</a></li>\r\n<li>Confluent: <a href=\"https://www.confluent.io\" target=_blank>https://www.confluent.io</a></li>\r\n<li>Redis: <a href=\"https://redis.io\" target=_blank>https://redis.io</a></li>\r\n<li>Databases: <a href=\"https://en.wikipedia.org/wiki/Database\" target=_blank>https://en.wikipedia.org/wiki/Database</a></li>\r\n<li>Event-Driven Architecture: <a href=\"https://en.wikipedia.org/wiki/Event-driven_architecture\" target=_blank>https://en.wikipedia.org/wiki/Event-driven_architecture</a></li>\r\n<li>RabbitMQ: <a href=\"https://github.com/rabbitmq\" target=_blank>https://github.com/rabbitmq</a></li>\r\n<li>Zookeeper note: <a href=\"https://medium.com/knerd/eureka-why-you-shouldnt-use-zookeeper-for-service-discovery-4932c5c7e764\" target=_blank>https://medium.com/knerd/eureka-why-you-shouldnt-use-zookeeper-for-service-discovery-4932c5c7e764</a></li>\r\n<li>KRaft: <a href=\"https://docs.confluent.io/platform/current/zookeeper/kraft.html\" target=_blank>https://docs.confluent.io/platform/current/zookeeper/kraft.html</a></li>\r\n<li>KIP: <a href=\"https://cwiki.apache.org/confluence/display/kafka/kafka+improvement+proposals\" target=_blank>https://cwiki.apache.org/confluence/display/kafka/kafka+improvement+proposals</a></li>\r\n<li>Monster Hunter: <a href=\"https://www.monsterhunter.com\" target=_blank>https://www.monsterhunter.com</a></li>\r\n<li>LOVE DEATH + ROBOTS: <a href=\"https://www.imdb.com/title/tt9561862\" target=_blank>https://www.imdb.com/title/tt9561862</a></li>\r\n<li>Unix Philosophy: <a href=\"https://www.linfo.org/unix_philosophy.html\" target=_blank>https://www.linfo.org/unix_philosophy.html</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','Kafka, Confluent, distributed event platforms, databases, Redis, Love, Death, Robots, Zookeeper',0,0,1),
(3780,'2023-01-27','Fediverse Update May 2022',824,'This episode reports on some updates to the Fediverse that I ran across in May 2022','<p>One of the things I love about the Fediverse is that there is constant activity and development. As I mentioned in the previous report on Bookwyrm, it is not unusual to return to an app a few months later and see new features have been added that make it better. In this report I want to highlight three news stories that I think may be of interest.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.starshipchangeling.net/mastodon/\" class=\"uri\">https://www.starshipchangeling.net/mastodon/</a></li>\n<li><a href=\"https://www.theverge.com/2018/8/31/17801404/mastodon-harassment-wil-wheaton-mobs-twitter\" class=\"uri\">https://www.theverge.com/2018/8/31/17801404/mastodon-harassment-wil-wheaton-mobs-twitter</a></li>\n<li><a href=\"https://fediverse.info/\" class=\"uri\">https://fediverse.info/</a></li>\n<li><a href=\"https://golangexample.com/gotosocial-a-fediverse-server-project-written-in-golang/\" class=\"uri\">https://golangexample.com/gotosocial-a-fediverse-server-project-written-in-golang/</a></li>\n<li><a href=\"https://apps.apple.com/us/app/metatext/id1523996615\" class=\"uri\">https://apps.apple.com/us/app/metatext/id1523996615</a></li>\n<li><a href=\"https://wordpress.org/plugins/activitypub/\" class=\"uri\">https://wordpress.org/plugins/activitypub/</a></li>\n<li><a href=\"https://www.zwilnik.com/better-social-media/bookwyrm/\" class=\"uri\">https://www.zwilnik.com/better-social-media/bookwyrm/</a></li>\n</ul>\n',198,108,0,'CC-BY-SA','social media, alternative, Fediverse, ActivityPub, Mastodon, Screen readers, WordPress',0,0,1),
(3608,'2022-06-01','Battling with English - part 5',927,'Confused homophones; misunderstanding words from other countries; Eggcorns','<article>\n<h2 id=\"overview\">Overview</h2>\n<p>This time I have three main subjects to discuss, all of them dealing with misunderstandings of words:</p>\n<ul>\n<li>Mistakes made with <em>homophones</em>, one group of examples\n<ul>\n<li>The definition gets a little technical, see the <a href=\"https://en.wikipedia.org/wiki/Homophone\" title=\"Wikipedia: words that sound the same but have different meaning\">Wikipedia</a> description.</li>\n</ul></li>\n<li>Misunderstandings of words from other languages\n<ul>\n<li><em>Pundit</em></li>\n</ul></li>\n<li>Looking at <em>Eggcorns</em> (a name chosen from a misspelling of <em>acorn</em>)\n<ul>\n<li>Wikipedia: <em>an alteration of a phrase through the mishearing or reinterpretation of one or more of its elements</em></li>\n</ul></li>\n</ul>\n<h2 id=\"long-notes\">Long notes</h2>\n<p>Follow this link to <a href=\"https://hackerpublicradio.org/eps/hpr3608/full_shownotes.html\">read the detailed notes</a> associated with this episode.</p>\n<h2 id=\"links\">Links</h2>\n<ul>\n<li>Misunderstanding homophones:\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Homophone\">Wikipedia article on <em>homophones</em></a></li>\n<li><a href=\"https://www.dictionary.com/e/reign-vs-rein/\">Confusing <em>reign</em> and <em>rein</em></a></li>\n<li>Definitions of <em>reign</em>:\n<ul>\n<li><a href=\"https://www.thefreedictionary.com/reign\">Free Dictionary: <em>reign</em></a></li>\n<li><a href=\"https://www.merriam-webster.com/dictionary/reign\">Merriam-Webster: <em>reign</em></a></li>\n</ul></li>\n<li>Definitions of <em>rein</em>:\n<ul>\n<li><a href=\"https://www.thefreedictionary.com/rein\">Free Dictionary: <em>rein</em></a></li>\n<li><a href=\"https://www.merriam-webster.com/dictionary/rein\">Merriam-Webster: <em>rein</em></a></li>\n</ul></li>\n</ul></li>\n</ul>\n<ul>\n<li>Misunderstanding imported words:\n<ul>\n<li><a href=\"https://www.beedictionary.com/common-errors/pundint_vs_pundit\">Bee Dictionary: <em>pundint or pundit</em></a></li>\n<li>Definitions of <em>pundit</em>:\n<ul>\n<li><a href=\"https://www.thefreedictionary.com/Pundit\">Free Dictionary: <em>pundit</em></a></li>\n<li><a href=\"https://www.merriam-webster.com/dictionary/pundit\">Merriam-Webster: <em>pundit</em></a></li>\n</ul></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Jawaharlal_Nehru\">Wikipedia article: Jawaharlal Nehru, aka <em>Pandit Nehru</em></a></li>\n</ul></li>\n</ul>\n<ul>\n<li><em>Eggcorns</em>:\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Eggcorn\">Wikipedia article on <em>Eggcorns</em></a></li>\n<li><a href=\"https://eggcorns.lascribe.net/\">The Eggcorn Database</a></li>\n<li><a href=\"https://eggcorns.lascribe.net/forum/\">The Eggcorn Forum</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Alzheimer%27s_disease\">Wikipedia article on Alzheimers disease</a></li>\n<li><a href=\"https://www.goodreads.com/quotes/8690878-cruel-clever-cat-sally-having-swallowed-cheese-directs-down-holes\"><em>Cruel, Clever Cat</em>, by Geoffrey Taylor</a> a joke on the Eggcorn <em>baited breath</em></li>\n</ul></li>\n</ul>\n<ul>\n<li>Previous episodes in this series:\n<ul>\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=2558\">Battling with English - part 1</a></li>\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=2596\">Battling with English - part 2</a></li>\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=2751\">Battling with English - part 3</a></li>\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=3525\">Battling with English - part 4</a></li>\n</ul></li>\n</ul>\n</article>\n',225,120,1,'CC-BY-SA','grammar,spelling,homonym,Eggcorn',0,0,1),
(3641,'2022-07-18','Turntable audio capture Part 2',354,'I revise previous capture scripts','<h4 id=\"update-to-hpr-3507\">Update to HPR 3507</h4>\n<p><a href=\"https://hackerpublicradio.org/eps.php?id=3507\">hpr3507 :: USB Turntable fix and sound journey</a> </p>\n<pre><code>record_capture_wav.sh\n#!/bin/bash\n\necho &quot;Record name?&quot;\nread record\necho &quot;Which side is this?&quot;\nread side\n\narecord --device=&#39;hw:CARD=CODEC,DEV=0&#39; --rate=96000 --channels=2 --vumeter=stereo --duration=1500 --format=dat --file-type wav $record&quot;_Side_&quot;$side.wav\n</code></pre>\n<pre><code>record_capture_flac.sh\n#!/bin/bash\n\n echo &quot;Record name&quot;\n read record\n echo &quot;Which side is this?&quot;\n read side\n\narecord --device=&#39;hw:CARD=CODEC,DEV=0&#39; --rate=96000 --channels=2 --vumeter=stereo --duration=1500 --format=dat --file-type wav - | flac - -o $record&quot;_Side_&quot;$side.flac</code></pre>\n<p>Used hw:CARD=CODEC,DEV=0 derived from \'arecord -L\'</p>\n<p>hw:CARD=CODEC,DEV=0 USB Audio CODEC, USB Audio Direct hardware device without any conversions</p>\n<h4 id=\"arecord-manpage\">arecord manpage</h4>\n<pre><code>...\n\n-f --format=FORMAT\n\n Sample format\n Recognized sample formats are: S8 U8 S16_LE S16_BE U16_LE U16_BE S24_LE S24_BE U24_LE U24_BE S32_LE S32_BE U32_LE U32_BE FLOAT_LE FLOAT_BE\n FLOAT64_LE FLOAT64_BE IEC958_SUBFRAME_LE IEC958_SUBFRAME_BE MU_LAW A_LAW IMA_ADPCM MPEG GSM SPECIAL S24_3LE S24_3BE U24_3LE U24_3BE S20_3LE\n S20_3BE U20_3LE U20_3BE S18_3LE S18_3BE U18_3LE\n\n Some of these may not be available on selected hardware\n The available format shortcuts are:\n\n -f cd (16 bit little endian, 44100, stereo) [-f S16_LE -c2 -r44100]\n -f cdr (16 bit big endian, 44100, stereo) [-f S16_BE -c2 -f44100]\n -f dat (16 bit little endian, 48000, stereo) [-f S16_LE -c2 -r48000]\n\n If no format is given U8 is used.\n\n-d, --duration=#\n Interrupt after # seconds. A value of zero means infinity. The default is zero, so if this option is omitted then the arecord process will run until it is killed.\n\n-t, --file-type TYPE\n File type (voc, wav, raw or au). If this parameter is omitted the WAVE format is used.\n\n...\n\n</code></pre>\n<p><a href=\"https://hackerpublicradio.org/eps.php?id=2881\">hpr2881 :: Automatically split album into tracks in Audacity</a> </p>\n<h4 id=\"changes-as-of-5-20-2022\">Changes as of 5-20-2022</h4>\n<ul>\n<li>Old way : Select the entire track and select Analyze &gt; Silence Finder</li>\n<li>Update : Select the entire track and select Analyze &gt; Label Sounds</li>\n</ul>\n<p><em>Label sounds menu</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3641/audacity_screenshot_1.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3641/audacity_screenshot_1_thumbnail.png\" alt=\"Label sounds menu\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small> </p>\n<p><em>Silence detection options</em><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3641/audacity_screenshot_2.png\" alt=\"Silence detection options\" /> </p>\n<p>HowTo: Split MP3s by silence detection using mp3splt</p>\n<p><a href=\"https://blog.dornea.nu/2012/04/01/howto-split-mp3s-by-silence-detection-using-mp3splt/\" class=\"uri\">https://blog.dornea.nu/2012/04/01/howto-split-mp3s-by-silence-detection-using-mp3splt/</a></p>\n<p>mp3splt -s -p th=-40,min=6,rm</p>\n<p>Parameters explanation:</p>\n<pre><code>&#39;-s&#39;: silence mode; activate silence detection\n&#39;-p&#39;: specify arguments for the silence mode\n&#39;th=-40&#39;: threshold level (dB) to be considered silence\n&#39;min=6&#39;: minimum number of seconds to be considered as splitpoint\n&#39;rm&#39;: remove silence from splitted files</code></pre>\n<h4 id=\"what-worked-for-me\">What worked for me</h4>\n<p>mp3splt -s -p th=-30,min=0.5,rm $1</p>\n<p>Fix tracks not splitting</p>\n<ul>\n<li>Manually seek the silence in mplayer/mpv</li>\n<li>Note the silent areas</li>\n<li>Cut with ffmpeg ie.\n<ul>\n<li>ffmpeg -i track.flac -ss 00:03:05 -to 0
(3606,'2022-05-30','Infinity is just a big number and other proofs',561,'Ken proves Mathematically that programming is not easier with maths.','<h1 id=\"response-to-hpr3568\">Response to hpr3568</h1>\n<pre><code> Title PopKorn Episode 2: Programming, Mathematics, and Asymmetric Literacy\n Artist BlacKernel\n Album Hacker Public Radio\n Comment https://hackerpublicradio.org Clean; in This episOde, blackeRnel Tries to help yoU undeRstand Enough about math and programming The license is CC-BY-SA\n Date 2022\n Track Number 3568\n Genre Podcast\n</code></pre>\n<p><a href=\"https://en.wikipedia.org/wiki/Mathematical_joke\">https://en.wikipedia.org/wiki/Mathematical_joke</a><br />\nMathematicians are also shown as averse to making hasty generalizations from a small amount of data, even if some form of generalization seems plausible:</p>\n<pre><code>An astronomer, a physicist and a mathematician are on a train in Scotland.\nThe astronomer looks out of the window, sees a black sheep standing in\na field, and remarks, &quot;How odd. All the sheep in Scotland are black!&quot; &quot;No,\nno, no!&quot; says the physicist. &quot;Only some Scottish sheep are black.&quot; The\nmathematician rolls his eyes at his companions&#39; muddled thinking and says,\n&quot;In Scotland, there is at least one sheep, at least one side of which\nappears to be black from here some of the time.&quot;[Stewart, Ian (1995).\nConcepts of Modern Mathematics. ISBN 9780486134956.]\n</code></pre>\n<p><a href=\"https://en.wikipedia.org/wiki/Mathematical_proof\">https://en.wikipedia.org/wiki/Mathematical_proof</a></p>\n<pre><code>A mathematical proof is an inferential argument for a mathematical\nstatement, showing that the stated assumptions logically guarantee the\nconclusion.\n</code></pre>\n<h2 id=\"stated-assumptions\">Stated assumptions</h2>\n<ul>\n<li><p><a href=\"https://nixnet.social/objects/bc9d7dd8-66a5-4aae-ab21-6f77ad4191d3\">https://nixnet.social/objects/bc9d7dd8-66a5-4aae-ab21-6f77ad4191d3</a></p>\n<pre><code> BlacKernel @BlacKernel@nixnet.social Mar 21, 2022, 19:01.\n Saying you don&#39;t need to know math to do programming is like saying\n you don&#39;t need to know how to read in order to write. Technically\n true, but it makes it way easier.\n</code></pre></li>\n</ul>\n<p>Simplifying the statement</p>\n<pre><code> Knowing math makes programming way easier.\n</code></pre>\n<p>Rearrange and problem</p>\n<pre><code>There are no humans that ever existed or will ever exist that will not\nfind programming easier having a knowledge of maths.\n</code></pre>\n<p>I exist. I do not find programming easier despite my knowledge of maths.</p>\n<p>Q.E.D.</p>\n<h1 id=\"other-points\">other points</h1>\n<p>\"Ability to think logically - which is what math is.\"</p>\n<p>This assumes that math is the only field where the ability to think logically exists. Math is a subset of logical thinking and not the other way around. I can think of hundreds of occupations that require logical thinking that do not require any maths. It would be difficult to argue this point as it could be argued, as most people are exposed to counting no matter what level of literacy they may have access to. So let us refer to studies with crows that shows that they do think logically - despite any math knowledge.</p>\n<ul>\n<li><a href=\"https://www.plosone.org/article/info%3Adoi%2F10.1371%2Fjournal.pone.0092895\">Using the Aesop\'s Fable Paradigm to Investigate Causal Understanding of Water Displacement by New Caledonian Crows</a></li>\n<li><a href=\"https://users.ox.ac.uk/~kgroup/tools/tool_manufacture.shtml\">Tool Manufacture in Crows</a></li>\n</ul>\n<h1 id=\"programming-is-\">Programming is ...</h1>\n<p>The wikipeda entry has 19 other definitions for programming but OK.<br />\n<a href=\"https://en.wikipedia.org/wiki/Program\">https://en.wikipedia.org/wiki/Program</a></p>\n<h2 id=\"asymmetric-literacy\">Asymmetric literacy</h2>\n<p>\"Is an example where you can read or write in a specific language but not necessarily doing both.\"
(3621,'2022-06-20','Watching YouTube in 2022',1236,'A few of the channels that distracted me through COVID-19 and beyond','<article>\n<h2 id=\"another-youtube-list-yes--\">Another YouTube list? Yes ;-)</h2>\n<p>I found myself watching YouTube a lot during the worst of the pandemic, and as I saw the world falling apart in many ways. YouTube has been something of a lifeline in the past years, helping me find stuff I actually want to watch, which (mostly) doesnt have all the fake crap thats on TV. I must say though, that I loathe and detest the apparent trend towards <code>#shorts</code> - I really dont see the point of them!</p>\n<p>The channels I chose at this time were to help me understand something of what was going on in the pandemic and in world politics, and a few gave me some distractions from it all.</p>\n<p>This is a fairly short list that Im sharing; I could list quite a few more, but I thought some of these recommendations might be of interest to the HPR audience.</p>\n<h2 id=\"channels\">Channels</h2>\n<ol type=\"1\">\n<li><p><font size=\"+1\"><b>Just Have a Think</b></font></p>\n<ul>\n<li><p>Dave Borlace, the host, talks about climate and sustainable energy.</p></li>\n<li><p>The episodes are well researched and explained clearly, and I find they can often give out some hope that we can lessen the effects of the climate change that is certainly coming.</p></li>\n<li><p>Recent episodes have covered: the <a href=\"https://www.ipcc.ch/\" title=\"The Intergovernmental Panel on Climate Change (IPCC) is the United Nations body for assessing the science related to climate change.\">IPCC</a> <em>Survival Guide</em>, plastic eating enzymes and CO<sub>2</sub> removal from the oceans.</p></li>\n<li><p><a href=\"https://www.youtube.com/c/JustHaveaThink\" class=\"uri\">https://www.youtube.com/c/JustHaveaThink</a></p></li>\n</ul></li>\n<li><p><font size=\"+1\"><b>Undecided with Matt Ferrell</b></font></p>\n<ul>\n<li><p>Matt Ferrell, the host, looks at how smart and sustainable technology impacts our lives.</p></li>\n<li><p>Another clear-sighted and well researched look at technology, particularly in the current world context. Theres also a podcast <em>Still To Be Determined</em> where Matt and his brother Sean have a conversation following on from the shows on YouTube.</p></li>\n<li><p>Recent episodes have covered:</p>\n<ul>\n<li>An improved method of generating <em>green</em> hydrogen</li>\n<li>Using machine learning to boost renewable energy generation and reduce costs of wind farms</li>\n<li>Plastic recycling is not as weve been led to believe.</li>\n</ul></li>\n<li><p><a href=\"https://www.youtube.com/c/UndecidedMF\" class=\"uri\">https://www.youtube.com/c/UndecidedMF</a> (with the podcast <a href=\"https://feeds.transistor.fm/still-to-be-determined\" class=\"uri\">https://feeds.transistor.fm/still-to-be-determined</a>)</p></li>\n</ul></li>\n<li><p><font size=\"+1\"><b>Second Thought</b></font></p>\n<ul>\n<li><p>A channel devoted to education and analysis of current events from a Socialist perspective.</p></li>\n<li><p>My Socialist, anti-Capitalist sympathies fit well with the contents of this channel, and Im learning from it. Its very well done, and has obviously taken some effort to produce.</p></li>\n<li><p>Some recent episode titles:</p>\n<ul>\n<li><em>What if we just stopped working?</em></li>\n<li><em>How Consulting firms secretly run entire countries</em></li>\n</ul></li>\n<li><p><a href=\"https://www.youtube.com/c/SecondThought\" class=\"uri\">https://www.youtube.com/c/SecondThought</a></p></li>\n</ul></li>\n<li><p><font size=\"+1\"><b>Democracy at Work</b></font></p>\n<ul>\n<li><p>Channel description: <em>Democracy at Work is a non-profit 501(c)3 that produces media and live events. Our work analyzes capitalism critically as a systemic problem and advocates for democratizing workplaces as part of a systemic solution. We seek a stronger, fuller democracy in our politics and culture as well as in our economy - based on workers equal collaboration and shared leadership inside enterp
(3607,'2022-05-31','The Best Eggs in the World',799,'Emergency Show: The Best Eggs in the World','<h3>This is an Emergency show</h3>\r\n<p>\r\nThis show is from the emergency show pool.<br />\r\nYou are hearing this because there was a free slot that was not filled.<br />\r\nHacker Public Radio is a community effort, that will only continue if people like you submit shows.<br />\r\nIf you have not submitted a show this year, then please record an introduction about yourself, and how you got into tech.<br />\r\nThen post it to, Hacker Public Radio dot org forward slash, upload.\r\n</p>\r\n<h2>The Best Eggs in the World</h2>\r\n<p>\r\nToday\'s show is brought to you by pokey\r\n</p>\r\n<ul>\r\n<li>1/6 large onion</li>\r\n<li>3-5 medium mushrooms</li>\r\n<li>2 eggs</li>\r\n<li>1-2 slices of cheese</li>\r\n<li>2 pieces of toast</li>\r\n<li>Garlic Powder, Salt, Pepper, butter to taste.</li>\r\n</ul>\r\n\r\n<p>\r\nIf you have comments, please leave them in the comments section for the show here at https://hackerpublicradio.org\r\nIf you had submitted a real episode of HPR, you wouldn\'t have found this in your feed today. :-P\r\n</p>\r\n',128,93,0,'CC-BY-SA','Emergency Show,Eggs,Cooking',0,0,1),
(3613,'2022-06-08','Man buys cheap Adirondack chair',453,'An anecdote about buying a cheap lawn chair and trying to get a part replaced.','<p>Part C (left front leg), one 30cm piece of unfinished fir, with a sort of fan-shaped piece attached with 2 screws, is duly replaced. The customer has been served. The prize is a wobbly chair and, in a few months time, some firewood. What we learned? I\'ll build my own chair next time.</p>\n',399,0,0,'CC-BY-SA','\"late capitalism\"',0,0,1),
(3891,'2023-07-03','HPR Community News for June 2023',6145,'HPR Volunteers talk about shows released and comments posted in June 2023','<style>\ntable td.shrink {\n white-space:nowrap\n}\nhr.thin {\n border: 0;\n height: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n border-bottom: 1px solid rgba(255, 255, 255, 0.3);\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nThere were no new hosts this month.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3869/index.html\" target=\"_blank\">3869</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-06-01</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3869/index.html\" target=\"_blank\">5 minute war game</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0078.html\" target=\"_blank\">Klaatu</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3870/index.html\" target=\"_blank\">3870</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-06-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3870/index.html\" target=\"_blank\">Texas</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0198.html\" target=\"_blank\">Ahuka</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3871/index.html\" target=\"_blank\">3871</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-06-05</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3871/index.html\" target=\"_blank\">HPR Community News for May 2023</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3872/index.html\" target=\"_blank\">3872</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-06-06</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3872/index.html\" target=\"_blank\">Sgoti update with replies.</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0391.html\" target=\"_blank\">Some Guy On The Internet</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3873/index.html\" target=\"_blank\">3873</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-06-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3873/index.html\" target=\"_blank\">Nextcloud instance updating</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0273.html\" target=\"_blank\">ToeJet</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3874/index.html\" target=\"_blank\">3874</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-06-08</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3874/index.html\" target=\"_blank\">2022-2023 New Years Show Episode 9</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3875/index.html\" target=\"_blank\">3875</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-06-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3875/index.html\" target=\"_blank\">Parlons Linux Season 1 Episode 7, le sticky bit</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0030.html\" target=\"_blank\">Ken Fallon</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3876/index.html\" target=\"_blank\">3876</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-06-12</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3876/index.html\" target=\"_blank\">Recording An Episode For Hacker Public Radio</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0419.html\" target=\"_blank\">Ryuno-Ki</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3877/index.html\" target=\"_blank\">3877</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">202
(3615,'2022-06-10','I am a troll and I\'m trolling HPR, trolling HPR, trolling HPR.',1608,'We got trolled and what we\'re going to do about it.','<p>In today\'s show Dave and I will read out the mail list thread we didn\'t cover in the Community News.</p>\n<p>Before we get to that, I wanted to inform you that we now know that the host in question was deliberately trolling HPR.</p>\n<p>I know this because they told me, and when I asked them to stop they went on to explain that they are a gadfly. I had to look that one up.</p>\n<p>Whatever they claim to be, the end effect for us is trolling.</p>\n<p>Both Josh and Myself have had some unnecessary stressful weeks for someone\'s idea of a joke.</p>\n<p>That said there have been some positives about this as well.</p>\n<p>Again we see the HPR community at its best in providing support and reasoned arguments.</p>\n<p>We have identified a possible loop hole in governance, that has been addressed by having a special advisory committee aka the auditor team of volunteers.</p>\n<p>And when we come up with a way of dealing with troll issues, we also get a mechanism to deal with DMCA take down requests, and other complaints.</p>\n<p>So what do we do with a troll ? Easy, just ignore them, or to put it another way \"Stay Calm and Go On\".</p>\n<p>This works well for comments but its not enough when the tactic is deliberate targeting of HPR.</p>\n<p>A lot of effort has gone into this attack:</p>\n<ul>\n<li>First they built trust by posting technical shows. This is a similar tactic that we see spammers use.</li>\n<li>Then they submitted a series of shows that would cause HPR legal issues.</li>\n<li>They then did not respond to questions, presumably in the hope that we would delete the shows ourselves.</li>\n</ul>\n<p>By moving the shows out to later in the queue we were able to avoid claims of \"censorship\", and they eventually removed the problem shows of their own accord.</p>\n<p>So what attack vector will be used next, and how will we deal with it ?</p>\n<p>I have no idea, but how to deal with it is also not so easy. We\'ll have to cross that bridge when we come to it.</p>\n<p>We do however need to tackle the risky situation of having problem content available on the website.</p>\n<p>So I suggest that we continue to post the shows as normal, if we get a complaint then the Janitors will contact the host as normal.</p>\n<p>Should they be unavailable, uncooperative, or disagree, then the Janitors can either move the show to the backup queue, or hide it depending on the severity of the complaint.</p>\n<p>In all cases we\'ll keep the special advisory committee aka the auditor team of volunteers in the loop to make sure all is above board.</p>\n<p>The community can then decide on the best course of action.</p>\n<p>So therefore I would like to propose the following changes to our policies.</p>\n<p>Both relate to <a href=\"https://hackerpublicradio.org/stuff_you_need_to_know.php#not_moderated\" class=\"uri\">https://hackerpublicradio.org/stuff_you_need_to_know.php#not_moderated</a></p>\n<p>Currently: \"We do not vet, edit, moderate or in any way censor any of the audio you submit, we trust you to do that.\"</p>\n<p>Proposed: \"We do not vet, edit, moderate or in any way censor any of the audio you submit, we trust you not to upload anything that will harm HPR.\"</p>\n<p>Add the line: \"Any material that is reported as harming HPR may be unlisted until such a time as the situation can be resolved.\"</p>\n',30,0,1,'CC-BY-SA','troll, policy change',0,0,1),
(3616,'2022-06-13','Filling free Slots from the Reserve Queue',899,'You can now submit shows to the Reserve Queue for when free slots are not filled on time.','<p>\nIn today\'s show the Janitors discuss how the erratic feast/famine nature of the queue may be helped by filling free slots in the main feed from a reserve queue.\n</p>\n<p>\nThe current Emergency Queue would be renamed to the Reserve Queue.<br />\nIf a free slot in the calendar is not filled in time, then a show will be used from the Reserve Queue.<br />\nShows will be taken from the Reserve Queue on a first in first out basis.<br />\nHosts can either schedule a show for a particular slot or have their shows added to the Reserve Queue.<br />\nEventually we will we work on a dedicated upload option, but for now hosts can pick a random slot and just make a note in the show notes that the show is intended for the Reserve Queue.<br />\n</p>\n',225,0,1,'CC-BY-SA','HPR Scheduling, Queue, Reserve Queue',0,0,1),
(3622,'2022-06-21','My Network Setup.',1355,'How I\'ve Constructed My Home Network.','<h1 id=\"sgotis-network-documentation\">Sgoti\'s Network Documentation.</h1>\n<h2 id=\"device-list\">Device List.</h2>\n<ul>\n<li>Device01, <a href=\"https://www.amazon.com/gp/product/B08QTXNWZ1/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&amp;psc=1\">TP-Link ER605</a></li>\n<li>Device02, <a href=\"https://www.amazon.com/gp/product/B0141JX92G/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&amp;psc=1\">TP-Link TL-SG2210P V3</a></li>\n<li>Device03, <a href=\"https://www.amazon.com/gp/product/B08PW34WPX/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&amp;psc=1\">TP-Link EAP660 HD</a></li>\n<li>Device04, <a href=\"https://www.amazon.com/gp/product/B07GX6GVB6/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&amp;psc=1\">TP-Link Omada Hardware Controller</a></li>\n</ul>\n<h2 id=\"client-list\">Client List.</h2>\n<ul>\n<li>Client01, SGOTI\n<ul>\n<li>MAC Address: 00-00-00-00-00-00</li>\n</ul></li>\n<li>Client02, SGOTI\n<ul>\n<li>MAC Address: 00-00-00-00-00-00</li>\n</ul></li>\n<li>Client03, SGOTI\n<ul>\n<li>MAC Address: 00-00-00-00-00-00</li>\n</ul></li>\n<li>Client04, USER\n<ul>\n<li>MAC Address: 00-00-00-00-00-00</li>\n</ul></li>\n<li>Client05, USER\n<ul>\n<li>MAC Address: 00-00-00-00-00-00</li>\n</ul></li>\n<li>Client06, USER\n<ul>\n<li>MAC Address: 00-00-00-00-00-00</li>\n</ul></li>\n<li>Client07, USER\n<ul>\n<li>MAC Address: 00-00-00-00-00-00</li>\n</ul></li>\n<li>Client08, USER\n<ul>\n<li>MAC Address: 00-00-00-00-00-00</li>\n</ul></li>\n</ul>\n<h2 id=\"server-list\">Server List.</h2>\n<ul>\n<li>Server01, SGOTI@HQBAK\n<ul>\n<li>AMD x86 FX w/ 1 SATA III 2.5\" Seagate 240Gig</li>\n<li>2 SATA III 3.5\" Western Digital Red 8TB</li>\n</ul></li>\n<li>Server02, NASPi\n<ul>\n<li>Pi4 model B, 8Gig, Geekworm NASPi w/ SATA III 2.5\" 1TB</li>\n</ul></li>\n<li>Server03, ArgonOne\n<ul>\n<li>Pi4 model B, 8Gig, ArgonOne w/ m.2 Western Digital Blue 500Gig</li>\n</ul></li>\n<li>Server04, DEVPi\n<ul>\n<li>Pi4 model B, 4Gig</li>\n</ul></li>\n<li>Server05, ZeroHero01\n<ul>\n<li>Pi Zero 2 W w/ microSD 128Gig</li>\n</ul></li>\n</ul>\n<h2 id=\"lan\">LAN.</h2>\n<ul>\n<li>VLAN: NUMBERS</li>\n<li>IP Block: 192.168.0.1/24</li>\n<li>Subnet Mask: 255.255.255.0</li>\n<li>Gateway: 192.168.0.1</li>\n<li>Broadcast: 192.168.0.255</li>\n<li>Group01: DEVICES\n<ul>\n<li>192.168.0.02, Device02</li>\n<li>192.168.0.03, Device03</li>\n<li>192.168.0.04, Device04</li>\n<li>192.168.0.05</li>\n<li>192.168.0.06</li>\n<li>192.168.0.07</li>\n<li>192.168.0.08</li>\n<li>192.168.0.09</li>\n</ul></li>\n<li>Group02: SGOTI\n<ul>\n<li>192.168.0.10, Client01</li>\n<li>192.168.0.11</li>\n</ul></li>\n<li>Group03: DHCP\n<ul>\n<li>192.168.0.12</li>\n<li>192.168.0.13</li>\n<li>192.168.0.14</li>\n<li>192.168.0.15</li>\n</ul></li>\n</ul>\n<h2 id=\"resistance-network\">Resistance Network.</h2>\n<ul>\n<li>VLAN: NUMBERS</li>\n<li>IP Block: 192.168.2.1/27</li>\n<li>Subnet Mask: 255.255.255.224</li>\n<li>Gateway: 192.168.2.1</li>\n<li>Broadcast: 192.168.2.31</li>\n<li>Group01: SGOTI\n<ul>\n<li>192.168.2.02</li>\n<li>192.168.2.03</li>\n<li>192.168.2.04</li>\n<li>192.168.2.05</li>\n<li>192.168.2.06</li>\n</ul></li>\n<li>Group02: USER\n<ul>\n<li>192.168.2.07</li>\n<li>192.168.2.08</li>\n<li>192.168.2.09</li>\n<li>192.168.2.10</li>\n<li>192.168.2.11</li>\n</ul></li>\n<li>Group03: USER\n<ul>\n<li>192.168.2.12</li>\n<li>192.168.2.13</li>\n<li>192.168.2.14</li>\n<li>192.168.2.15</li>\n<li>192.168.2.16</li>\n</ul></li>\n<li>Group04: USER\n<ul>\n<li>192.168.2.17</li>\n<li>192.168.2.18</li>\n<li>192.168.2.19</li>\n<li>192.168.2.20</li>\n<li>192.168.2.21</li>\n</ul></li>\n<li>Group04: SERVERS\n<ul>\n<li>192.168.2.22</li>\n<li>192.168.2.23</li>\n<li>192.168.2.24</li>\n<li>192.168.2.25</li>\n<li>192.168.2.26</li>\n</ul></li>\n<li>Group05: DHCP\n<ul>\n<li>192.168.2.27</li>\n<li>192.168.2.28</li>\n<li>192.168.2.29</li>\n<li>192.168.2.30</li>\n</ul></li>\n</ul>\n<h2 id=\"t100-network\">T100 Network.</h2>\n<ul>\n<li>VLAN: NUMBERS</li>\n<li>IP Block: 192.168.3.1/27</li>\n<li>Subnet Mask: 255.255.255.224</li>\n<li>Gateway: 192.168.3.1</li>\n<l
(3623,'2022-06-22','Internet Security - Child Edition',2487,'I have a discussion about Internet security with R. Brady Frost along with our sons','<p>The stuff Evil Steve doesn\'t want you to know with Lurking Prion. This is Season 1, Episode 8.</p>\n<p>In this episode, I have a discussion about Internet security with special guest and author, R. Brady Frost along with his son and mine. The discussion revolves around how our kids view Internet security and we discuss dangers they hadn\'t considered.</p>\n<h2 id=\"pics-of-the-week\">Pics of the week:</h2>\n<ul>\n<li><p>Hackers (The Movie)<br />\n<a href=\"https://www.imdb.com/title/tt0113243/?ref_=fn_al_tt_1\" class=\"uri\">https://www.imdb.com/title/tt0113243/?ref_=fn_al_tt_1</a></p></li>\n<li><p>Our Flag Means Death<br />\n<a href=\"https://www.imdb.com/title/tt11000902/\" class=\"uri\">https://www.imdb.com/title/tt11000902/</a></p></li>\n<li><p>R. Brady Frost<br />\n<a href=\"https://www.rbradyfrost.com/\" class=\"uri\">https://www.rbradyfrost.com/</a><br />\n<a href=\"https://www.rbradyfrost.com/blog/category/a-battle-mage-reborn/\" class=\"uri\">https://www.rbradyfrost.com/blog/category/a-battle-mage-reborn/</a></p></li>\n</ul>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><p>Has your password been involved in a breach?<br />\n<a href=\"https://haveibeenpwned.com/\" class=\"uri\">https://haveibeenpwned.com/</a></p></li>\n<li><p>Realtime Global Cyber Attack Map<br />\n<a href=\"https://threatmap.checkpoint.com/\" class=\"uri\">https://threatmap.checkpoint.com/</a></p></li>\n</ul>\n',405,74,1,'CC-BY-SA','cybersecurity,security,EvilSteve,breach,data reduction,privacy',0,0,1),
(3649,'2022-07-28','Linux Inlaws S01E61: 20 years in review',4319,'The last 20 years in review','<hr />\r\n<h3>Counter Point</h3>\r\n<p>A counter point to this show is available: <a href=\"https://hackerpublicradio.org/eps.php?id=3648\">hpr3648 :: A response to tomorrows show</a>\r\n</p>\r\n<hr />\r\n<p>In this episode, Martin and Chris take a closer look at twenty years of Linux Inlaws\r\nhistory. Why, you may ask, given the fact that this podcast has only been in existence\r\nfor roughly over two years, are we reviewing this history? The answer - of course - is\r\nstraight forward: by sheer coincidence our two heroes got hold of a future episode\r\nwhich traveled back in time from the future. If you ever wondered about time-travel,\r\nthe paradoxes associated with this and what the next twenty years have in store not\r\njust from a Linux Inlaws perspective, this episode is for you.</p>\r\n\r\n<h2>Links:</h2>\r\n<ul>\r\n<li>DeLorean: <a href=\"https://en.wikipedia.org/wiki/DMC_DeLorean#Back_to_the_Future\" target=_blank>https://en.wikipedia.org/wiki/DMC_DeLorean#Back_to_the_Future</a></li>\r\n<li>Time-travel: <a href=\"https://en.wikipedia.org/wiki/Closed_timelike_curve\" target=_blank>https://en.wikipedia.org/wiki/Closed_timelike_curve</a></li>\r\n<li>Timespace: <a href=\"https://en.wikipedia.org/wiki/Spacetime\" target=_blank>https://en.wikipedia.org/wiki/Spacetime</a></li>\r\n<li>Altered Carbon: <a href=\"https://www.imdb.com/title/tt2261227\" target=_blank>https://www.imdb.com/title/tt2261227</a></li>\r\n<li>Linux Outlaws: <a href=\"https://en.wikipedia.org/wiki/Linux_Outlaws\" target=_blank>https://en.wikipedia.org/wiki/Linux_Outlaws</a></li>\r\n<li>The Inlaws @ YouTube: <a href=\"https://www.youtube.com/channel/UC1j_uaAbB3magzPs4Z0Y-mg\" target=_blank>https://www.youtube.com/channel/UC1j_uaAbB3magzPs4Z0Y-mg</a></li>\r\n<li>Timetravel with a DeLorean: <a href=\"https://www.backtothefuture.com\" target=_blank>https://www.backtothefuture.com</a></li>\r\n<li>D-Wave SPAC: <a href=\"https://www.datacenterdynamics.com/en/news/quantum-computing-firm-d-wave-to-ipo-via-16bn-spac-merger\" target=_blank>https://www.datacenterdynamics.com/en/news/quantum-computing-firm-d-wave-to-ipo-via-16bn-spac-merger</a></li>\r\n<li>Alphabet\'s attempt at longer living: <a href=\"https://www.calicolabs.com\" target=_blank>https://www.calicolabs.com</a></li>\r\n<li>The Fly: <a href=\"https://www.imdb.com/title/tt0091064/?ref_=fn_al_tt_1\" target=_blank>https://www.imdb.com/title/tt0091064/?ref_=fn_al_tt_1</a></li>\r\n<li>Hello! Magazine: <a href=\"https://www.hellomagazine.com\" target=_blank>https://www.hellomagazine.com</a></li>\r\n<li>Jeff Bezo\'s purgatory: <a href=\"https://www.livemint.com/companies/people/amazon-founder-jeff-bezos-divorce-with-mackenzie-bezos-final-with-38-billion-settlement-report-1562387250690.html\" target=_blank>https://www.livemint.com/companies/people/amazon-founder-jeff-bezos-divorce-with-mackenzie-bezos-final-with-38-billion-settlement-report-1562387250690.html</a></li>\r\n<li>Internet Archive: <a href=\"https://archive.org\" target=_blank>https://archive.org</a></li>\r\n<li>The GNU World Order: <a href=\"https://gnuworldorder.info\" target=_blank>https://gnuworldorder.info</a></li>\r\n</ul>\r\n',384,111,1,'CC-BY-SA','Time-travel, DeLorean, D-Wave, Hello! Magazine, Calico Labs',0,0,1),
(3625,'2022-06-24','Shell Tips and Snippets - Collaborative Effort',1225,'Carl and special guests provide some shell tips and examples.','<p>Carl talks about a method to move function definitions to the bottom of a script using sed:</p>\n<pre><code>#!/bin/sh\nsource &lt;(sed &#39;1,/^exit/ d&#39; $0)\n\n__say &quot;hello&quot;\n\nexit\n\n__say()\n{\n echo $1\n}\n</code></pre>\n<p>Guest Host #1 (scroll to the bottom to ruin the surprise) talks about the shift command using this example:</p>\n<pre class=\"bash\"><code>startdate=&quot;$1&quot; # Pick up date\nshift\ndays=0\n\n# Loop through args and create events\nwhile [ $1 ] ; do # as many times as you add a timestamp\n [ $1 != &quot;off&quot; ] &amp;&amp; khal new $(date -j -v+&quot;$days&quot;d -f %Y-%m-%d +%Y-%m-%d $startdate) $1 8H Work\n let days++\n shift\ndone\n</code></pre>\n<p>Guest Host #2 provides tips and examples on how to use variables safely and politely provide default values. One example of assigning a default value is:</p>\n<pre><code>foo=${foo:-&quot;blah&quot;}\n</code></pre>\n<p>Carl then closes out with the : (colon) shell builtin and provides a variation on the above default value:</p>\n<pre><code>: ${foo:=&quot;blah&quot;}\n</code></pre>\n',380,42,0,'CC-BY-SA','shell',0,0,1),
(3628,'2022-06-29','Building a Mobile Computer Battlestation: Extended Power Supply',1235,'Mobile computer Battlestation part 1; 16 cell power supply and BMS','<p>At the end, I am a little disappointed in the performance. One of the cell banks was discharging quicker than the others, but I replaced it and it is much more efficient now.</p>\n<p>All the cells were salvaged from old laptops.</p>\n<p><em>Figure 0.1</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3628/fig0.1.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3628/fig0.1_thumbnail.1.png\" alt=\"Figure 0.1\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 0.2</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3628/fig0.2.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3628/fig0.2_thumbnail.2.png\" alt=\"Figure 0.2\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 0.3</em><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3628/fig0.3.png\" alt=\"Figure 0.3\" /></p>\n<p><em>Figure 1</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3628/fig1.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3628/fig1_thumbnail.jpg\" alt=\"Figure 1\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 2.0</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3628/fig2.0.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3628/fig2.0_thumbnail.0.jpg\" alt=\"Figure 2.0\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 2.1</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3628/fig2.1.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3628/fig2.1_thumbnail.1.jpg\" alt=\"Figure 2.1\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 2.2</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3628/fig2.2.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3628/fig2.2_thumbnail.2.jpg\" alt=\"Figure 2.2\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 2.3</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3628/fig2.3.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3628/fig2.3_thumbnail.3.jpg\" alt=\"Figure 2.3\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 3</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3628/fig3.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3628/fig3_thumbnail.jpg\" alt=\"Figure 3\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 4</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3628/fig4.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3628/fig4_thumbnail.jpg\" alt=\"Figure 4\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 5</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3628/fig5.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3628/fig5_thumbnail.jpg\" alt=\"Figure 5\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 6</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3628/fig6.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3628/fig6_thumbnail.jpg\" alt=\"Figure 6\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 7</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3628/fig7.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3628/fig7_thumbnail.jpg\" alt=\"Figure 7\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 8</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3628/fig
(3632,'2022-07-05','Intro to web scraping with Python',1915,'Using requests and Beautiful Soup to scrape websites','<p>A beginner introduction to web scraping with Python.</p>\n',78,25,0,'CC-BY-SA','python, web, internet',0,0,1),
(3633,'2022-07-06','The collective history of RAID controller brands',821,'Computer memory is a generic term for all of the different types of data storage technology that a c','<p><a href=\"https://www.enterprisestorageforum.com/hardware/types-of-computer-memory/\" class=\"uri\">https://www.enterprisestorageforum.com/hardware/types-of-computer-memory/</a></p>\n',129,0,0,'CC-BY-SA','memory, sdram,ddr, dram, ssd, hhd',0,0,1),
(3652,'2022-08-02','Registered memory',690,'Not to be confused with ECC memory, although memory modules often use both technologies.','<p><a href=\"https://en.wikipedia.org/wiki/Registered_memory\" class=\"uri\">https://en.wikipedia.org/wiki/Registered_memory</a></p>\n<p><a href=\"https://www.futureplus.com/ddr4-3ds-dimms-the-next-big-thing-in-the-data-center/\" class=\"uri\">https://www.futureplus.com/ddr4-3ds-dimms-the-next-big-thing-in-the-data-center/</a></p>\n',129,0,0,'CC-BY-SA','R-Dimm,DD4,3DS',0,0,1),
(3635,'2022-07-08','A short podcast on a nice tool called system-monitoring-center',243,'This is a short podcast on a nice tool called system-monitoring-center','<p>GitHub repo where you can find system-monitoring-center:<br />\n<a href=\"https://github.com/hakandundar34coding/system-monitoring-center\" class=\"uri\">https://github.com/hakandundar34coding/system-monitoring-center</a></p>\n',369,23,0,'CC-BY-SA','system-monitoring-center, linux',0,0,1),
(3638,'2022-07-13','Ken drops a bear on his android phone',316,'How to enable sftp using a sshd server on android/lineageos','<p>I have previously used <a href=\"https://f-droid.org/en/packages/org.primftpd/\" class=\"uri\">https://f-droid.org/en/packages/org.primftpd/</a> to enable sftp to my android phone</p>\r\n<p>For more information on How to mount remote storage using sshfs, see <a href=\"https://hackerpublicradio.org/eps.php?id=1944\">hpr1944 :: sshfs - Secure SHell FileSystem</a></p>\r\n<p>Also you will need to know about some useful tools for working with Android Devices <a href=\"https://hackerpublicradio.org/eps.php?id=3515\">hpr3515 :: ADB and scrcpy</a></p>\r\n<p><img src=\"eps/hpr3638/thumb-01-simplesshd-icon.png\" alt=\"simplesshd-icon\" /></p>\r\n<p>I found <a href=\"https://www.galexander.org/software/simplesshd/\" class=\"uri\">https://www.galexander.org/software/simplesshd/</a></p>\r\n<p>SimpleSSHD is an SSH2 server based on dropbear that supports scp, sftp, and rsync. It only supports public-key based authentication (no password/interactive auth except for bootstrapping). It does not use root, which means it must listen on a port over 1024 (defaults to port 2222).</p>\r\n<h2 id=\"install-from-fdroid\">Install from fdroid</h2>\r\n<p><a href=\"https://f-droid.org/en/packages/org.galexander.sshd\" class=\"uri\">https://f-droid.org/en/packages/org.galexander.sshd</a></p>\r\n<p><a href=\"eps/hpr3638/02-SimpleSSHD.jpeg\"><img src=\"eps/hpr3638/thumb-02-SimpleSSHD.jpeg\" alt=\"Start Screen\" /></a> </p>\r\n<p><a href=\"eps/hpr3638/03-port-number.jpeg\"><img src=\"eps/hpr3638/thumb-03-port-number.jpeg\" alt=\"Changing Port Number\" /></a> </p>\r\n<p><a href=\"eps/hpr3638/04-path.jpeg\"><img src=\"eps/hpr3638/thumb-04-path.jpeg\" alt=\"Changing Path\" /></a> </p>\r\n<h2 id=\"before\">before</h2>\r\n<pre>\r\nlaptop$ adb root\r\nlaptop$ adb shell\r\nphone: # cd /data/user/0/org.galexander.sshd/files\r\nphone:/data/user/0/org.galexander.sshd/files # ls -al\r\ntotal 56\r\ndrwxrwx--x 2 u0_a268 u0_a268 4096 2022-06-17 12:06 .\r\ndrwx------ 6 u0_a268 u0_a268 4096 2022-06-17 11:59 ..\r\n-rw-rw-rw- 1 root root 490 2022-06-17 12:05 authorized_keys\r\n-rw------- 1 u0_a268 u0_a268 475 2022-06-17 12:07 dropbear.err\r\n-rw------- 1 u0_a268 u0_a268 650 2022-06-17 12:03 dropbear.err.old\r\n-rw------- 1 u0_a268 u0_a268 6 2022-06-17 12:06 dropbear.pid\r\n-rw------- 1 u0_a268 u0_a268 83 2022-06-17 12:03 dropbear_ed25519_host_key\r\n</pre>\r\n<h2 id=\"commands-to-run\">Commands to run</h2>\r\n<pre>\r\nphone:/data/user/0/org.galexander.sshd/files # restorecon -F authorized_keys\r\nSELinux: Loaded file_contexts\r\nphone:/data/user/0/org.galexander.sshd/files # chmod 600 authorized_keys\r\nphone:/data/user/0/org.galexander.sshd/files # chown u0_a268:u0_a268 authorized_keys\r\n</pre>\r\n<h2 id=\"after\">after</h2>\r\n<pre>\r\nphone:/data/user/0/org.galexander.sshd/files # ls -al\r\ntotal 56\r\ndrwxrwx--x 2 u0_a268 u0_a268 4096 2022-06-17 12:06 .\r\ndrwx------ 6 u0_a268 u0_a268 4096 2022-06-17 11:59 ..\r\n-rw------- 1 u0_a268 u0_a268 490 2022-06-17 12:05 authorized_keys\r\n-rw------- 1 u0_a268 u0_a268 475 2022-06-17 12:07 dropbear.err\r\n-rw------- 1 u0_a268 u0_a268 650 2022-06-17 12:03 dropbear.err.old\r\n-rw------- 1 u0_a268 u0_a268 6 2022-06-17 12:06 dropbear.pid\r\n-rw------- 1 u0_a268 u0_a268 83 2022-06-17 12:03 dropbear_ed25519_host_key\r\n\r\nlaptop$ sshfs -p 2222 192.168.1.123: /mnt/phone/\r\n</pre>\r\n',30,0,0,'CC-BY-SA','SimpleSSHD,SSH2,dropbear,android,lineageos,primitive ftpd',0,0,1),
(3642,'2022-07-19','Interview with a Hacker: Vitaliy',5954,'We go back ... WAY BACK to golden days of hacking','<p>Lost interview I never uploaded!</p>\n',36,0,1,'CC-BY-SA','interviews,hacking,pentesting',0,0,1),
(3645,'2022-07-22','How to set up a small Linux Wireguard VPN',855,'I set up a small VPN and wrote a blog post about it. This is just an audiorecording of that','<p>The blogpost where I describe how to set up a Wireguard VPN network:<br />\n<a href=\"https://www.jeroenbaten.nl/the-complete-guide-to-setting-up-a-multi-peer-wireguard-vpn/\" class=\"uri\">https://www.jeroenbaten.nl/the-complete-guide-to-setting-up-a-multi-peer-wireguard-vpn/</a></p>\n',369,61,0,'CC-BY-SA','wireguard,linux, vpn',0,0,1),
(3648,'2022-07-27','A response to tomorrows show',1682,'Ken brings the DeLorean up to 141.6Kph to address monochromec\'s comment on stats','<hr />\r\n<h3>\r\nCounter Point\r\n</h3>\r\n<p>\r\nThis show is a counter point to: <a href=\"https://hackerpublicradio.org/eps.php?id=3649\">hpr3649 :: Linux Inlaws S01E61: 20 years in review</a>\r\n</p>\r\n<hr />\r\n<p><em>There are three kinds of lies: <a href=\"https://en.wikipedia.org/wiki/Lies%2C_damned_lies%2C_and_statistics\">Lies, damned lies, and statistics</a></em></p>\r\n<p>In today\'s show we discover that Hacker Public Radio is <strong>not</strong> a Podcast Hosting Platform.</p>\r\n<p>Each day your show will be heard by as many people as can squeeze into the main auditorium at FOSDEM, or between two and three <a href=\"https://en.wikipedia.org/wiki/Airbus_A380\">Airbus A380-800</a>. You know the big double decker passenger plane. Every month we have on average 33,584 downloads, that\'s about 40 fully loaded <a href=\"https://en.wikipedia.org/wiki/Airbus_A380\">Airbus A380-800</a>.</p>\r\n<p><a href=\"https://commons.wikimedia.org/wiki/File:FOSDEM%2712_-_Opening_Talk.jpg\"><img src=\"eps/hpr3648/thumb-FOSDEM12-Opening_Talk.jpg\" alt=\"\" /></a></p>\r\n<p>Podcast \"Hosting\" Sites, like Spotify, Apple Podcast or Google Podcasts, etc. do not host the media, they are essentially monetizing Hacker Public Radio content. And we are all absolutely fine with that because our shows are released under a <a href=\"https://creativecommons.org/licenses/by-sa/3.0/\">Creative Commons Attribution-ShareAlike 3.0 Unported license</a>.</p>\r\n<p><a href=\"eps/hpr3648/10-actual_hpr_downloads.png\"><img src=\"eps/hpr3648/thumb-10-actual_hpr_downloads.png\" alt=\"actual_hpr_downloads\" /></a></p>\r\n<p>Every one of those dots is a download that is <strong>not without cost</strong>, but is provided <strong>entirely free of charge</strong> to us by our kind hosting Provider <a href=\"https://anhonesthost.com/hosting/shared-hosting\">AnHonestHost.com</a> and the volunteer project <a href=\"https://archive.org/donate/\">the Internet Archive</a>. Both of which donates terabytes of storage and data transfer to us for free.</p>\r\n<p>The people to thank are our own <a href=\"https://hackerpublicradio.org/correspondents/0174.html\">Josh Knapp</a> over at <a href=\"https://anhonesthost.com/hosting/shared-hosting\">AnHonestHost.com</a>, who provides the Hacker Public Radio web site.</p>\r\n<p>And <a href=\"https://archive.org/donate/\">the Internet Archive</a> which is an American digital library with the stated mission of \"universal access to all knowledge\", who provide hosting for the media.</p>\r\n<p>\r\n<strong>For more details, <a href=\"eps/hpr3648/index.html\">see the full show notes</a>.</strong>\r\n</p>\r\n',30,0,1,'CC-BY-SA','statistics,syndication,reality',0,0,1),
(3637,'2022-07-12','HPR feed to Sqlite',454,'First step in creating a static copy of HPR','<ul>\n<li>Mailing list discussion - Source Code for the HPR website\n<ul>\n<li>What are the best ways to reproduce the HPR site using a static site generator.</li>\n<li>I would like the DB to be made public, but I understand why that may not be possible</li>\n</ul></li>\n</ul>\n<p>One interesting thing I read during the discussion is Ken said Every thing needed to recreate an HPR site is in the feed</p>\n<ul>\n<li>Challenge accepted\n<ul>\n<li>A lot of my toy projects have been around RSS and podcasts</li>\n<li>I am working on a Episode describing a project I did looking for podcasts that have podfaded.</li>\n<li>I starting thinking about what data is in the feed and thinking through a process for using the RSS data to recreate the HPR site</li>\n</ul></li>\n<li>Project\n<ul>\n<li>Link to Project <a href=\"https://gitlab.com/norrist/hprfeed2db\" class=\"uri\">https://gitlab.com/norrist/hprfeed2db</a></li>\n</ul></li>\n<li>DATA pulled directly from feed\n<ul>\n<li><p>explicit</p></li>\n<li><p>title</p></li>\n<li><p>author_name</p></li>\n<li><p>author_email</p></li>\n<li><p>link</p></li>\n<li><p>description</p></li>\n<li><p>summary - I think this is the same as description</p></li>\n<li><p>pubdate</p></li>\n<li><p>enclosures</p></li>\n<li><p>Episode ID - extracted from title - HPR2341</p></li>\n<li><p>feedparser and peewee</p></li>\n<li><p>full feed to SQLite specs</p>\n<ul>\n<li>40 Seconds on <strong>My Machine</strong></li>\n<li>20M hpr.sqlite</li>\n</ul></li>\n</ul></li>\n<li>Notably Missing from the RSS feeds\n<ul>\n<li>Episode Series</li>\n<li>Episode Tags</li>\n</ul></li>\n<li>Next steps\n<ul>\n<li>markdown from db info\n<ul>\n<li>Main page</li>\n<li>Corespondent pages</li>\n<li>Episode pages</li>\n<li>comments from comments feed</li>\n</ul></li>\n<li>Manually build other markdown for static pages</li>\n<li>about, contributing, ...</li>\n<li>Static site generator</li>\n<li>I don\'t think the tags are in the feed data</li>\n</ul></li>\n</ul>\n<pre class=\"bash\"><code>git clone https://gitlab.com/norrist/hprfeed2db\ncd hprfeed2db/\npython3 -m venv venv\nsource venv/bin/activate\npip install feedparser peewee\npython data_models.py\npython feed.py\nsqlite3 hpr.sqlite &quot;select count(*) from episode&quot;</code></pre>\n',342,0,0,'CC-BY-SA','python, rss, sqlite',0,0,1),
(3916,'2023-08-07','HPR Community News for July 2023',4533,'HPR Volunteers talk about shows released and comments posted in July 2023','<style>\ntable td.shrink {\n white-space:nowrap\n}\nhr.thin {\n border: 0;\n height: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n border-bottom: 1px solid rgba(255, 255, 255, 0.3);\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nWelcome to our new hosts: <br />\n\n <a href=\"https://hackerpublicradio.org/correspondents/0420.html\" target=\"_blank\">HopperMCS</a>, \n <a href=\"https://hackerpublicradio.org/correspondents/0421.html\" target=\"_blank\">Reto</a>.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3891/index.html\" target=\"_blank\">3891</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-07-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3891/index.html\" target=\"_blank\">HPR Community News for June 2023</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3892/index.html\" target=\"_blank\">3892</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-07-04</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3892/index.html\" target=\"_blank\">Emacs package curation, part 1</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3893/index.html\" target=\"_blank\">3893</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-07-05</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3893/index.html\" target=\"_blank\">Game card design resources</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0078.html\" target=\"_blank\">Klaatu</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3894/index.html\" target=\"_blank\">3894</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-07-06</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3894/index.html\" target=\"_blank\">The Page 42 Show: Ugly News Week, Show\'s Epoch!</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0420.html\" target=\"_blank\">HopperMCS</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3895/index.html\" target=\"_blank\">3895</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-07-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3895/index.html\" target=\"_blank\">What\'s in my backpack</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0408.html\" target=\"_blank\">Stache_AF</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3896/index.html\" target=\"_blank\">3896</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-07-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3896/index.html\" target=\"_blank\">The Brochs of Glenelg</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0268.html\" target=\"_blank\">Andrew Conway</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3897/index.html\" target=\"_blank\">3897</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-07-11</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3897/index.html\" target=\"_blank\">HPR AudioBook Club 22 - Murder at Avedon Hill</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0157.html\" target=\"_blank\">HPR_AudioBookClub</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3898/index.html\" target=\"_blank\">3898</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-07-12</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3898/index.html\" target=\"_blank\">The Oh No! News.</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0391.html\" t
(3643,'2022-07-20','My computing history and the software I use',3345,'Rambling about my computing history and tech stack. ','<p>I introduce myself by describing my computing history and tech stack. Disjointed rambling and tangentially related thoughts ensue.</p>\n',406,0,1,'CC-BY-SA','UNIX, Linux, first show, BSD, Android',0,0,1),
(3658,'2022-08-10','Linux Inlaws S01E62: HPR\'s inner workings',1975,'An overview of HPRs inner workings and stats based on a ludicrous claim by the Inlaws','<p>In this episode our two ageing heroes explore the inner workings of a podcast (or podcast hosting platform depending on your perspective) called Hacker Public Radio. Yes, the platform that the Inlaws have been using since the very inception of this rapidly growing FLOSS podcast content. Wondering what the heck this episode is all about, why exactly Martin and Chris are talking about this now and the importance of statistics, lies and damned lies? Then just listen to this episode. You may also find out the difference between mere caching and content syndication. Never mind HPR\'s inner workings.</p>\n<h2>Links:</h2>\n<ul>\n<li>hpr3648: <a href=\"https://hackerpublicradio.org/eps.php?id=3648\" target=_blank>https://hackerpublicradio.org/eps.php?id=3648</a></li>\n<li>The Internet Archive: <a href=\"https://archive.org\" target=_blank>https://archive.org</a></li>\n<li>Extraterrestrial sheep: <a href=\"https://aliens.fandom.com/wiki/Sheep_(Kaeloo)\" target=_blank>https://aliens.fandom.com/wiki/Sheep_(Kaeloo)</a></li>\n<li>QuickAxe: <a href=\"https://fireemblem.fandom.com/wiki/Quick_Axe\" target=_blank>https://fireemblem.fandom.com/wiki/Quick_Axe</a></li>\n<li>Linux Episode S01E35 (The Free Software Foundation Europe): <a href=\"https://hackerpublicradio.org/eps.php?id=3388\" target=_blank>https://hackerpublicradio.org/eps.php?id=3388</a></li>\n<li>Ford v Ferrari: <a href=\"https://www.imdb.com/title/tt1950186/?ref_=nv_sr_srsg_0\" target=_blank>https://www.imdb.com/title/tt1950186/?ref_=nv_sr_srsg_0</a></li>\n<li>Book of Monsters: <a href=\"https://www.imdb.com/title/tt7260818/?ref_=fn_al_tt_1\" target=_blank>https://www.imdb.com/title/tt7260818/?ref_=fn_al_tt_1</a></li>\n</ul>\n',384,111,1,'CC-BY-SA','Lies, damned lies, stats, projections, CDNs, Ford, Ferrari, Monsters, Books',0,0,1),
(3679,'2022-09-08','Linux Inlaws S01E64: Non-profits in the US: A closer look at 501(c)s',2177,'The Ins and Outs of 501(c)s','<p>In this episode, Martin and Chris shed more light on the riveting subject of non-profit\nand not-for-profit organisations especially in the US with a special focus on the all-\nimportant topic of tax implications. Warning: Due to the fast-paced and gripping never\nmind explicit nature of this topic, people with sleeping disabilities or who are easily startled\n/ offended by graphic content should consult a member of the medical profession to ensure\nthat they are capable of handling this episode. You have been warned.</p>\n<h2>Links:</h2>\n<ul>\n<li>501(c) overview: <a href=\"https://en.wikipedia.org/wiki/501(c)_organization\" target=_blank>https://en.wikipedia.org/wiki/501(c)_organization</a></li>\n<li>501(c)3: <a href=\"https://en.wikipedia.org/wiki/501(c)(3)_organization\" target=_blank>https://en.wikipedia.org/wiki/501(c)(3)_organization</a></li>\n<li>NATO 5th article: <a href=\"https://www.nato.int/cps/en/natohq/topics_110496.htm\" target=_blank>https://www.nato.int/cps/en/natohq/topics_110496.htm</a></li>\n<li>Johnson amendment: <a href=\"https://en.wikipedia.org/wiki/Johnson_Amendment\" target=_blank>https://en.wikipedia.org/wiki/Johnson_Amendment</a></li>\n<li>St IGNUcius / Church of Emacs: <a href=\"https://stallman.org/saint.html\" target=_blank>https://stallman.org/saint.html</a></li>\n<li>Richard Stallman rejoins the FSF board: <a href=\"https://www.theregister.com/2021/03/22/richard_stallman_back_on_fsf_board\" target=_blank>https://www.theregister.com/2021/03/22/richard_stallman_back_on_fsf_board</a></li>\n<li>The Undeclared War: <a href=\"https://en.wikipedia.org/wiki/The_Undeclared_War\" target=_blank>https://en.wikipedia.org/wiki/The_Undeclared_War</a></li>\n<li>Serviettenknödel: <a href=\"http://gingerandbread.com/2014/12/19/serviettenknodel-a-dumpling-for-special-occasions\" target=_blank>http://gingerandbread.com/2014/12/19/serviettenknodel-a-dumpling-for-special-occasions</a></li>\n<li>HPR website project (discussion on the mailing list): <a href=\"http://hackerpublicradio.org/pipermail/hpr_hackerpublicradio.org/2022-July/thread.html\" target=_blank>http://hackerpublicradio.org/pipermail/hpr_hackerpublicradio.org/2022-July/thread.html</a></li>\n</ul>\n',384,111,1,'CC-BY-SA','501(c)3, 501(c)6, non-profits, not-for-profits, Church of Emacs, RMS, Serviettenknödel',0,0,1),
(3644,'2022-07-21','Pinball Machine Repair Tips',1483,'As a first show, I introduce myself and show some repairability tips for 90s pinball machines','<p>After the introduction, as this is my first show, i tell you how i got my current Pinball machine, an \"Indiana Jones, the Pinball adventure\" from Williams.</p>\n<p>I suggest tips to anyone trying to repair one, or simply to curious people out there.</p>\n',407,103,1,'CC-BY-SA','first show,pinball,repair,electronics,90s',0,0,1),
(3646,'2022-07-25','arm, slackware, forth oh my!',834,'a description of a laptop ','<p><em>Image 1</em><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3646/image1.jpg\" alt=\"Image 1\" /></p>\n<p><em>Image 2</em><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3646/image2.jpg\" alt=\"Image 2\" /></p>\n<p><em>Image 3</em><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3646/image3.jpg\" alt=\"Image 3\" /></p>\n<h3 id=\"pi-top-the-company\">pi-top the company</h3>\n<ul>\n<li>make educational products using the rasp-pi</li>\n<li>uk based company 24 million $ funding 3 employees</li>\n<li>products\n<ul>\n<li>pitop ceed</li>\n<li>pitop 2 laptop</li>\n<li>pitop 3 laptop</li>\n<li>pitop 4 case+ for rpi4</li>\n<li>robot kit, etc</li>\n</ul></li>\n</ul>\n<h3 id=\"my-pi-top-3\">my pi-top 3</h3>\n<ul>\n<li>had a pi-top 2, keyboard was bad, battery was worse</li>\n<li>ebay purchase pi-top 3, wanted to try new form factor and see if the battery was better</li>\n<li>came with experimentor kit, included a slide in solderless breadboard, and an rpi!</li>\n<li>description</li>\n<li>modifications\n<ul>\n<li>slackware install,lost some of the built in scripts that monitored the system, especially battery monitoring</li>\n<li>added a daughter board with an atmega328 running forth to do the battery monitoring</li>\n<li>added an rtc ds1307, installed via instructions from the sarpi website</li>\n</ul></li>\n<li>pluses\n<ul>\n<li>better keyboard, with better mechanical design</li>\n<li>better battery life, charging great</li>\n<li>better screen</li>\n</ul></li>\n<li>minuses\n<ul>\n<li>charging board seems closed source, that would be the keys to the kingdom</li>\n<li>old software hard to come by</li>\n<li>stuck in rpi3 form factor</li>\n</ul></li>\n<li>plans\n<ul>\n<li>+upgrade to slackware 15-64 bit+</li>\n<li>leave the rpi and go to a pineboard</li>\n<li>reverse engineer charging board?</li>\n<li>easier to modify case to accept new hardware</li>\n</ul></li>\n</ul>\n',326,0,0,'CC-BY-SA','raspberry pi, hardware',0,0,1),
(3653,'2022-08-03','Hello HPR Community',53,'Introducing myself to the HPR community','<p>Long time listener, first time caller...</p>\n',408,0,0,'CC-BY-SA','Introductions',0,0,1),
(3668,'2022-08-24','Linux Inlaws S01E63: John Hawley on kernel dot org and other shenanigans',5514,'An interview with John Hawley of kernel.org fame','<p>In this episode Martin and Chris host John Hawley of kernel.org fame. The\ndiscussion centers around Python, the royal British family and other FLOSS\ntopics such as some break-away colonies like the US, version control systems,\nwireless wikis and containers. Never mind Python. Did I mention Python? :-)\nAnd perhaps VMware. Ever wondered why early versions of git just gobbled up\nyour main memory? You may or may not find the answer in this episode. Or its\nouttakes...</p>\n\n<h2>Links:</h2>\n<ul>\n<li>The Linux kernel: <a href=\"https://kernel.org\" target=_blank>https://kernel.org</a></li>\n<li>The wireless subsystem: <a href=\"https://wireless.kernel.org\" target=_blank>https://wireless.kernel.org</a></li>\n<li>git: <a href=\"https://git-scm.com\" target=_blank>https://git-scm.com</a></li>\n<li>Linux kernel VCS before git: <a href=\"https://www.linuxjournal.com/content/git-origin-story\" target=_blank>https://www.linuxjournal.com/content/git-origin-story</a></li>\n<li>xkcd on git: <a href=\"https://xkcd.com/1597\" target=_blank>https://xkcd.com/1597</a></li>\n<li>Guido @ Microsoft: <a href=\"https://twitter.com/gvanrossum/status/1326932991566700549\" target=_blank>https://twitter.com/gvanrossum/status/1326932991566700549</a></li>\n<li>Episode on The Halloween Documents: <a href=\"https://linuxinlaws.eu/archive.html#S01\" target=_blank>https://linuxinlaws.eu/archive.html#S01</a></li>\n<li>TIOBE index: <a href=\"https://www.tiobe.com/tiobe-index\" target=_blank>https://www.tiobe.com/tiobe-index</a></li>\n<li>PhotonOS: <a href=\"https://vmware.github.io/photon/assets/files/html/3.0/Introduction.html\" target=_blank>https://vmware.github.io/photon/assets/files/html/3.0/Introduction.html</a></li>\n<li>BusyBox: <a href=\"https://www.busybox.net\" target=_blank>https://www.busybox.net</a></li>\n<li>Python Software Foundation: <a href=\"https://www.python.org/psf\" target=_blank>https://www.python.org/psf</a></li>\n<li>Google Summier of Code: <a href=\"https://summerofcode.withgoogle.com\" target=_blank>https://summerofcode.withgoogle.com</a></li>\n<li>trace-cruncher: <a href=\"https://github.com/vmware/trace-cruncher\" target=_blank>https://github.com/vmware/trace-cruncher</a></li>\n<li>Zero Dark Thirty: <a href=\"https://www.imdb.com/title/tt1790885/?ref_=nv_sr_srsg_0\" target=_blank>https://www.imdb.com/title/tt1790885/?ref_=nv_sr_srsg_0</a></li>\n<li>Command Line Heroes: <a href=\"https://www.redhat.com/en/command-line-heroes/about\" target=_blank>https://www.redhat.com/en/command-line-heroes/about</a></li>\n</ul>\n',384,111,1,'CC-BY-SA','git, kernel.org, GSoC, Command Line Heroes, Zero Dark Thirty, trace cruncher',0,0,1),
(3654,'2022-08-04','Use the data in the Ogg feed to create a website.',807,'How much of of site can I make using only the data from the feed?','<h1 id=\"make-a-website-using-the-hpr-rss-feed\">Make a website using the HPR RSS Feed</h1>\n<p>Welcome to part II of my experiment in how much can be done with the data ion the HPR feed</p>\n<p>In my previous episode <a href=\"https://hackerpublicradio.org/eps.php?id=3637\" class=\"uri\">https://hackerpublicradio.org/eps.php?id=3637</a> I discussed taking the data from the HPR feed and stuffing the useful bits into a sqlite database.</p>\n<p>Today, Ill discuss some of my adventures generating a static site using the feed data</p>\n<h2 id=\"lessons-learned\">Lessons learned</h2>\n<ul>\n<li>Maybe skip DB step</li>\n<li>I tend to over use Markdown - sometimes HTML is Better</li>\n<li>So much content on HPR</li>\n</ul>\n<h2 id=\"tech\">Tech</h2>\n<p>My original intent was to create markdown files that could be feed into an existing static site generator, something like Hugo or Jekyll.</p>\n<p>I started with markdown but had to add too much html.</p>\n<p>I\'m am a bit fan of using Markdown, but it did not fit this particular use case</p>\n<ul>\n<li>Peewee - ORM - <a href=\"https://docs.peewee-orm.com\" class=\"uri\">https://docs.peewee-orm.com</a></li>\n<li>Jinja - Templates - <a href=\"https://jinja.palletsprojects.com\" class=\"uri\">https://jinja.palletsprojects.com</a></li>\n</ul>\n<h2 id=\"feed-as-source-of-data\">Feed as source of data</h2>\n<p>I added some HTML for header footer</p>\n<ul>\n<li>Header\n<ul>\n<li>bootstrap CSS columns</li>\n<li>hpr logo</li>\n</ul></li>\n<li>footer\n<ul>\n<li>Links</li>\n<li>Copyright</li>\n</ul></li>\n</ul>\n<h2 id=\"pages\">Pages</h2>\n<ul>\n<li>Main page listing the most recent shows</li>\n<li>A page listing all shows</li>\n<li>Individual pages for each show</li>\n<li>A page listing all the hosts</li>\n<li>individual page for each host</li>\n</ul>\n<p>One thing I would like to see on the HPR page is a count of how many shows there are for each host. I have enough data, so I added show counts.</p>\n<h2 id=\"missing-data\">Missing data</h2>\n<ul>\n<li>host profiles - web page, avatars</li>\n<li>tags</li>\n<li>series</li>\n<li>Summary - The short 100 character summary of what your show is about</li>\n<li>License</li>\n<li>Other pages on the HPR site.\n<ul>\n<li>What you need to know</li>\n<li>How to help out</li>\n<li>Requested topics</li>\n<li>...</li>\n</ul></li>\n</ul>\n<h2 id=\"how-does-it-work\">How does it work</h2>\n<ul>\n<li>Peewee to read from sqlite file</li>\n<li>Python aggregates the appropriate data</li>\n<li>Jinja Templates for\n<ul>\n<li>index - passed data from most recent shows</li>\n<li>All shows</li>\n<li>host page</li>\n<li>corespondents - all host</li>\n</ul></li>\n</ul>\n<h3 id=\"todo\">TODO</h3>\n<ul>\n<li>Incorporate Comment feed</li>\n<li>Generate static copy of RSS feed.</li>\n<li>Copy content from HPR pages that are not in the RSS feed.</li>\n<li>Generate Tags from Keywords in the show notes.</li>\n<li>Only use the Full Feed on the first run.</li>\n</ul>\n<h3 id=\"links\">Links</h3>\n<ul>\n<li>Project - <a href=\"https://gitlab.com/norrist/hprfeed2db\" class=\"uri\">https://gitlab.com/norrist/hprfeed2db</a> - Suggestions/Pull Requests are welcome</li>\n<li>Example site - <a href=\"https://hpr.norrist.xyz/\" class=\"uri\">https://hpr.norrist.xyz/</a></li>\n</ul>\n',342,0,0,'CC-BY-SA','python, rss, sqlite',0,0,1),
(3661,'2022-08-15','Ham Radio testing',361,'Study and testing for the ARRL Ham license','<h4 id=\"study-tools\">Study tools</h4>\n<ul>\n<li><a href=\"https://hamstudy.org\" title=\"HamStudy.org\">HamStudy.org</a></li>\n<li>HamStudy.org Offline App\n<ul>\n<li><a href=\"https://play.google.com/store/apps/details?id=org.hamstudy.mobile\" title=\"HamStudy Android app\">Android app link</a></li>\n</ul></li>\n</ul>\n<h4 id=\"arrl-american-radio-relay-league\">ARRL (American Radio Relay League)</h4>\n<ul>\n<li><a href=\"http://www.arrl.org/find-an-amateur-radio-license-exam-session\" title=\"Find an Amateur Radio License Exam Session\">ARRL Find an Amateur Radio License Exam Session</a></li>\n</ul>\n<h4 id=\"pictures\">Pictures</h4>\n<p><em>Picture of sign on the test day</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3661/Test_day_sign.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3661/Test_day_sign_thumbnail.png\" alt=\"Picture of sign on the test day\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small> </p>\n<p><em>Picture of Masonic Lodge sign</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3661/Lodge_sign.png\"><img src=\"https://hackerpublicradio.org/eps/hpr3661/Lodge_sign_thumbnail.png\" alt=\"Picture of Masonic Lodge sign\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small> </p>\n',318,43,0,'CC-BY-SA','ham radio, ARRL, testing',0,0,1),
(3655,'2022-08-05','BSD for Linux users',4073,'I attempt to explain the wacky and wonderful world of BSD in a Linux friendly way','<h1 >UNIX, Linux, and BSD</h1>\n<blockquote><p><q>Linux was created by PC users attempting to use mainframe UNIX. BSD was created by mainframe UNIX users attempting to use a PC.</q></p></blockquote>\n<p>BSD is what I like to call a “Pedigree UNIX”, meaning that it is a pure blooded descendant of AT&amp;T UNIX. Although all of the original AT&amp;T code has been re-written so a permissive license, the heritage persists.</p>\n<p>In contrast to Linux (which shares no original Bell Labs code), BSD was originally all Labs code.</p>\n<h1 >BSD in the wild</h1>\n<p>BSD style licensing is quite simple to understand compared to the tome that is the GPL. Interpreting it usually goes something like follows:</p>\n<blockquote><p><q>Do whatever the hell you want with this code, just dont blame me when it breaks something and dont claim you wrote it</q></p></blockquote>\n<p>Permissive licensing means that various companies can put lipstick on the UNIX pig and falsely assert that its anything other than lipstick on the UNIX pig. Not that UNIX is a pig, but you cannot disguise a pig with lipstick. Those burdened with the gift of sight and knowledge can spot a UNIX system quite easily.</p>\n<ul >\n<li>Apple software is basically stolen BSD</li>\n<li>Windows TCP/IP stack (and ftp/rcp/rsh/ssh/scp and other various non-trash networking protocols) is basically stolen BSD</li>\n<li>Sony PlayStation is basically stolen BSD</li>\n<li>Nintendo switch is basically stolen BSD</li>\n<li>a million others that I cant be bothered to list because theyre either abandonware or are embedded in your e-toaster and internet enabled dishwasher so no one cares</li>\n</ul>\n<h1 >Interacting with BSD guys</h1>\n<p>Most Linux enthusiasts are missionaries. They are generally helpful and seek to guide the computing neophyte into the inner circle of FSF initiates.</p>\n<p>The BSD guys tend to be like hermits. They dont care if you use their code, they only care that the code works for them. When you ask for help, a typical response will be “did you even read the error logs?” or “did you even RTFM? What about supplemental documentation? We didnt write TFM just so you could go online and ask something clearly documented in TFM.”</p>\n<p>Not all BSD guys are bitter, but you really should consult available resources before asking questions</p>\n<h1 >Forking vs distros</h1>\n<p>In Linux land, all the distros are basically the same with varying coats of paint. We call these distributions because all “implementations” of linux are nearly identical code bases built with varying compile time options.</p>\n<p>In BSD land, distros dont exist. Free/Net/Open are entirely independent and dont share a common upstream. They are forks of primordial BSD that run separate kernels, separate userlands, etc. Although code is shared amongst each other, a statically linked binary cant simply be dumped from one to another and still run as it would in Linux land.</p>\n<p>Meta-distos of FreeBSD do exist but they are short lived unless they have corporate backers.</p>\n<h1 >Idiots guide to picking a BSD</h1>\n<blockquote><p><q>I want basically Linux desktop out of the box but with a BSD kernel so I can look cool when I post a neofetch screenshot to the /g/ desktop thread!!</q></p></blockquote>\n<p>Selecting a FreeBSD fork that comes with a desktop is your goto. The currently maintained desktop distros are HelloSystems, GhostBSD, NomadBSD, and MidnightBSD.</p>\n<blockquote><p><q>I want a viable desktop operating system</q></p></blockquote>\n<p>FreeBSD with a non-GNOME DE is fairly reliable. Ive had success with KDE, XFCE, and various tiling window managers. GNOME is too reliant on systemd so the port is janky.</p>\n<blockquote><p><q>I want something to learn by example with</q></p></blockquote>\n<p>OpenBSD is a great learning platform. The source code for userland utils is simple, short, and generally free from OS s
(3663,'2022-08-17','How I got into Tech',358,'Follow-up episode about how I got into tech','<p>From deleting command.com in Windows 95 to tinkering with circuitpython, this is a brief introduction of how I got into tech</p>\n',408,29,0,'CC-BY-SA','tech, personal history, introductions',0,0,1),
(3662,'2022-08-16','2021-2022 New Years Show Part 1',11138,'The HPR community comes together to chat','<h2 id=\"hacker-public-radio-new-years-eve-show-2021---2022\">Hacker Public Radio New Years Eve Show 2021 - 2022</h2>\n<h3 id=\"part-1\">Part 1</h3>\n<h4 id=\"t100000z\">2021-12-31T10:00:00Z</h4>\n<p>Welcome to the 9th Annual Hacker Public Radio show. It is December the 31st 2021 and the time is 10 hundred hours UTC. We start the show by sending Greetings to Christmas Island/Kiribati and Samoa Kiritimati, Apia.</p>\n<p>LINT Christmas Island/Kiribati Kiritimati</p>\n<p>Ken and Honkey talk about setting up streaming</p>\n<p>Mumble &#x2192; Client (Butt) &#x2192; Ice Cast</p>\n<p><a href=\"https://www.mumble.info/downloads/\" class=\"uri\">https://www.mumble.info/downloads/</a></p>\n<p><a href=\"https://danielnoethen.de/butt/\" class=\"uri\">https://danielnoethen.de/butt/</a></p>\n<p><a href=\"https://icecast.org/\" class=\"uri\">https://icecast.org/</a></p>\n<p><a href=\"http://www.darkice.org/\" class=\"uri\">http://www.darkice.org/</a></p>\n<p>Ken and Honkey talk about COVID-19 Omicron Variant</p>\n<p><a href=\"https://www.cdc.gov/coronavirus/2019-ncov/variants/omicron-variant.html\" class=\"uri\">https://www.cdc.gov/coronavirus/2019-ncov/variants/omicron-variant.html</a></p>\n<p><a href=\"https://www.alzheimers.org.uk/get-support/coronavirus/about-coronavirus\" class=\"uri\">https://www.alzheimers.org.uk/get-support/coronavirus/about-coronavirus</a></p>\n<p>Ken, Honkey, and Netminer talk about mental health, Asperger\'s Syndrome, Eli The Computer Guy</p>\n<p><a href=\"https://en.wikipedia.org/wiki/Asperger_syndrome\" class=\"uri\">https://en.wikipedia.org/wiki/Asperger_syndrome</a></p>\n<p><a href=\"https://www.webmd.com/brain/autism/mental-health-aspergers-syndrome\" class=\"uri\">https://www.webmd.com/brain/autism/mental-health-aspergers-syndrome</a></p>\n<p><a href=\"https://aspergersfromtheinside.com/\" class=\"uri\">https://aspergersfromtheinside.com/</a></p>\n<p><a href=\"https://www.youtube.com/channel/UC-FpBZR7DbpvNj5UrFN8qUA\" class=\"uri\">https://www.youtube.com/channel/UC-FpBZR7DbpvNj5UrFN8qUA</a></p>\n<p><a href=\"https://www.youtube.com/c/Elithecomputerguypage\" class=\"uri\">https://www.youtube.com/c/Elithecomputerguypage</a></p>\n<p>Ken gets his HAM radio license</p>\n<p><a href=\"http://www.arrl.org/getting-licensed\" class=\"uri\">http://www.arrl.org/getting-licensed</a></p>\n<p>Ken talks about rebuilding the house</p>\n<p>Growing up in the 60\'s</p>\n<p><a href=\"https://en.wikipedia.org/wiki/Andrew_Greeley\" class=\"uri\">https://en.wikipedia.org/wiki/Andrew_Greeley</a></p>\n<p><a href=\"https://www.goodreads.com/book/show/1197497.The_High_Tech_Knight\" class=\"uri\">https://www.goodreads.com/book/show/1197497.The_High_Tech_Knight</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/Leo_Frankowski\" class=\"uri\">https://en.wikipedia.org/wiki/Leo_Frankowski</a></p>\n<p>What is a Dunny?</p>\n<p><a href=\"https://www.warrenfahey.com.au/the-dunny-a-history/\" class=\"uri\">https://www.warrenfahey.com.au/the-dunny-a-history/</a></p>\n<p><a href=\"https://www.pinterest.com.au/rosepat52/old-aussie-dunnies/\" class=\"uri\">https://www.pinterest.com.au/rosepat52/old-aussie-dunnies/</a></p>\n<p>Farming Talk</p>\n<p>Isaac &amp; James <a href=\"https://www.facebook.com/IsaacenJames/?fref=mentions&amp;__tn__=K-R\" class=\"uri\">https://www.facebook.com/IsaacenJames/?fref=mentions&amp;__tn__=K-R</a></p>\n<p>More Amateur Radio</p>\n<p>Harmonised Amateur Radio Examination Certificate (HAREC)</p>\n<p><a href=\"http://www.zs6mrk.org/RAE%20Handleiding/The-HAREC-syllabus---CEPT-T_R-61-02-Annex-6---Class-A-only.PDF\" class=\"uri\">http://www.zs6mrk.org/RAE%20Handleiding/The-HAREC-syllabus---CEPT-T_R-61-02-Annex-6---Class-A-only.PDF</a></p>\n<p>Raspberry Pi 400 Chat &amp; Makulu Linux (installs Android APKs)</p>\n<p><a href=\"https://www.raspberrypi.com/products/raspberry-pi-400/\" class=\"uri\">https://www.raspberrypi.com/products/raspberry-pi-400/</a></p>\n<p><a href=\"http://www.makululinux.com/wp/\" class=\"uri\">ht
(3667,'2022-08-23','2021-2022 New Years Show Part 2',11268,'The HPR community comes together to chat','<h2 id=\"hacker-public-radio-new-years-eve-show-2021---2022\">Hacker Public Radio New Years Eve Show 2021 - 2022</h2>\n<h3 id=\"part-2\">Part 2</h3>\n<p>Massachusetts MCAS Tests</p>\n<p><a href=\"https://www.doe.mass.edu/mcas/\" class=\"uri\">https://www.doe.mass.edu/mcas/</a></p>\n<p>A Level Test mention -</p>\n<p><a href=\"http://www.gostudyuk.com/a-levels-and-equivalents/\" class=\"uri\">http://www.gostudyuk.com/a-levels-and-equivalents/</a></p>\n<p>COVID-19: quarantine, masks, vaccination, testing, etc.</p>\n<p>Michael Mina <span class=\"citation\" data-cites=\"michaelmina_lab\">@michaelmina_lab</span></p>\n<p><a href=\"https://twitter.com/michaelmina_lab\" class=\"uri\">https://twitter.com/michaelmina_lab</a></p>\n<p>West Virginia &amp; Kentucky Accents</p>\n<p><a href=\"https://www.dialectsarchive.com/west-virginia\" class=\"uri\">https://www.dialectsarchive.com/west-virginia</a></p>\n<p><a href=\"https://www.dialectsarchive.com/kentucky\" class=\"uri\">https://www.dialectsarchive.com/kentucky</a></p>\n<p>Netminer talks about being a security guard &amp; Security Guard tools of the trade</p>\n<p>Detex Clock</p>\n<p><a href=\"https://www.watchmanclocks.com/productdetails.aspx?ProductID=56\" class=\"uri\">https://www.watchmanclocks.com/productdetails.aspx?ProductID=56</a></p>\n<p>Mag light flashlight</p>\n<p><a href=\"https://maglite.com/\" class=\"uri\">https://maglite.com/</a></p>\n<p>Ohio Linux Fest</p>\n<p><a href=\"https://olfconference.org/\" class=\"uri\">https://olfconference.org/</a></p>\n<p>Not Curses</p>\n<p><a href=\"https://notcurses.com/notcurses.3.html\" class=\"uri\">https://notcurses.com/notcurses.3.html</a></p>\n<p>Sixel</p>\n<p><a href=\"https://en.wikipedia.org/wiki/Sixel\" class=\"uri\">https://en.wikipedia.org/wiki/Sixel</a></p>\n<p>The Book Of Boba Fett</p>\n<p><a href=\"https://www.imdb.com/title/tt13668894/\" class=\"uri\">https://www.imdb.com/title/tt13668894/</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/The_Book_of_Boba_Fett\" class=\"uri\">https://en.wikipedia.org/wiki/The_Book_of_Boba_Fett</a></p>\n<p>Under The Helmet : The Legacy of Boba Fett</p>\n<p><a href=\"https://www.imdb.com/title/tt15715890/\" class=\"uri\">https://www.imdb.com/title/tt15715890/</a></p>\n<p>Mordancy talks about Mark from Command Line Magic</p>\n<p>Command Line Magic Homepage - <a href=\"http://www.climagic.org/\" class=\"uri\">http://www.climagic.org/</a></p>\n<p>Command Line Magic Youtube - <a href=\"https://www.youtube.com/user/climagic/videos\" class=\"uri\">https://www.youtube.com/user/climagic/videos</a></p>\n<p>Command Line Magic Twitter - <a href=\"https://twitter.com/climagic\" class=\"uri\">https://twitter.com/climagic</a></p>\n<p>Command Line Magic Mastadon - <a href=\"https://mastodon.social/@climagic\" class=\"uri\">https://mastodon.social/@climagic</a></p>\n<p>Mordancy also suggests</p>\n<p><a href=\"https://www.commandlinefu.com/commands/browse\" class=\"uri\">https://www.commandlinefu.com/commands/browse</a></p>\n<p><a href=\"https://explainshell.com/\" class=\"uri\">https://explainshell.com/</a></p>\n<p>More Website Suggestions</p>\n<p>Regex Crossword is a crossword puzzle game, where the crossword clues are defined using regular expressions</p>\n<p><a href=\"https://regexcrossword.com\" class=\"uri\">https://regexcrossword.com</a></p>\n<p>Learn VIM while playing a game</p>\n<p><a href=\"https://vim-adventures.com/\" class=\"uri\">https://vim-adventures.com/</a></p>\n<p>Tennesee Valley Authority</p>\n<p><a href=\"https://www.tva.com/\" class=\"uri\">https://www.tva.com/</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/Tennessee_Valley_Authority\" class=\"uri\">https://en.wikipedia.org/wiki/Tennessee_Valley_Authority</a></p>\n<p>West Virginia Coal Mines</p>\n<p><a href=\"https://www.americangeosciences.org/critical-issues/maps/interactive-map-coal-mines-west-virginia\" class=\"uri\">https://www.americangeosciences.org/critical-issues/maps/interactive-map-coal-mines-west-virginia</a></p>\
(3656,'2022-08-08','Importance of Small toy projects',1149,'Toy projects are a great way to learn a new language, and a project I did just for fun.','<h2 id=\"importance-of-small-toy-projects\">Importance of Small toy projects</h2>\n<p>Inspired by</p>\n<ul>\n<li><a href=\"https://talkpython.fm/episodes/transcript/327/little-automation-tools-in-python\" class=\"uri\">https://talkpython.fm/episodes/transcript/327/little-automation-tools-in-python</a>\n<ul>\n<li>Automating little things</li>\n</ul></li>\n<li>hpr3558 :: How I\'m learning Haskell\n<ul>\n<li>The Host talks about learning Haskell and says something like</li>\n<li>Finishing a small project is better than Starting a big project and not completing it.</li>\n<li>And You can not learn to code by reading, you need practice</li>\n</ul></li>\n</ul>\n<h3 id=\"my-recommendation-for-learning-a-new-language.\">My recommendation for learning a new language.</h3>\n<ol type=\"1\">\n<li>Think about a small problem you want to solve with code.</li>\n<li>Start banging away at it.</li>\n<li>Redo over and over, its OK</li>\n<li>Same project but better</li>\n<li>Learn new tech and practice</li>\n</ol>\n<h3 id=\"an-example-of-one-of-my-small-projects\">An example of one of my small projects</h3>\n<ul>\n<li>Original intent of my podfaded project\n<ul>\n<li>Mostly Tech/Linux podcasts</li>\n<li>Find every podcast I could</li>\n<li>Track release cadence</li>\n<li>Rate how podfaded the feed is</li>\n<li>Use search API to find RSS feeds</li>\n</ul></li>\n</ul>\n<h3 id=\"first-attempt-plan\">First attempt plan</h3>\n<ul>\n<li>Scrape podcast networks\n<ul>\n<li>used beautiful soup - something I wanted to learn anyway</li>\n<li>HTML\n<ul>\n<li>Jinja templating - something I wanted to learn anyway</li>\n<li>Bootstrap - something I wanted to learn anyway</li>\n<li>Different colors based on how podfaded</li>\n</ul></li>\n</ul></li>\n</ul>\n<h3 id=\"first-attempt-problems\">First attempt problems</h3>\n<ul>\n<li>individual script per network</li>\n<li>4-5 different scripts</li>\n<li>took forever to run</li>\n<li>Broke when networks changed their page layout</li>\n</ul>\n<h3 id=\"redo\">Redo</h3>\n<ul>\n<li>Test Driven Development and pytest\n<ul>\n<li>Red Green Refactor</li>\n<li>Confidence to change code</li>\n</ul></li>\n<li>Simplify - one scrapper script</li>\n<li>Embed audio player for latest episode</li>\n</ul>\n<h3 id=\"how-it-works---scraping-pages-for-feeds\">How it works - Scraping pages for feeds</h3>\n<ul>\n<li><code>scrape_for_feeds.py</code></li>\n<li>Provide a list of websites that have lists of podcasts</li>\n<li>Search the page for any links</li>\n<li>Check if the feed is valid by trying to parse it with <code>feedparser</code></li>\n<li>Add feed to database</li>\n</ul>\n<h3 id=\"podcasts-pages-i-scrape\">Podcasts pages I scrape</h3>\n<ul>\n<li><a href=\"https://wiki.ubuntu.com/Podcasts\" class=\"uri\">https://wiki.ubuntu.com/Podcasts</a></li>\n<li><a href=\"http://www.thelinuxlink.net\" class=\"uri\">http://www.thelinuxlink.net</a></li>\n<li><a href=\"http://freeculturepodcasts.org\" class=\"uri\">http://freeculturepodcasts.org</a></li>\n</ul>\n<h3 id=\"how-it-works---checking-the-feeds\">How it works - Checking the feeds</h3>\n<ul>\n<li><code>feed_info.py</code></li>\n<li>loop through feeds</li>\n<li>use <code>feedparser</code> to find latest episode\n<ul>\n<li>title and enclosure (audio file)</li>\n</ul></li>\n</ul>\n<h3 id=\"html-output\">HTML Output</h3>\n<ul>\n<li><a href=\"https://podfaded.norrist.xyz/\" class=\"uri\">https://podfaded.norrist.xyz/</a></li>\n<li>Currently hosted on a Free Tier VPS</li>\n<li>No Promises it will be there forever</li>\n</ul>\n<h3 id=\"feedback-welcome\">Feedback Welcome</h3>\n<ul>\n<li><a href=\"https://gitlab.com/norrist/podfaded2\" class=\"uri\">https://gitlab.com/norrist/podfaded2</a></li>\n<li>Bugs\n<ul>\n<li>Sometimes the title is missing, so some of the CSS coloring doesn\'t work</li>\n<li>Excluded podcasts still occasionally show up on the list</li>\n</ul></li>\n<li>Looking for more curated lists of podcast pages\n<ul>\n<li>not search
(3672,'2022-08-30','2021-2022 New Years Show Part 3',11934,'The HPR community comes together to chat','<h2 id=\"hacker-public-radio-new-years-eve-show-2021---2022\">Hacker Public Radio New Years Eve Show 2021 - 2022</h2>\n<h3 id=\"part-3\">Part 3</h3>\n<p>WebRTC with RPi Zero - resolution of the ribbon cable camera could be better.</p>\n<p>Tried without success: uv4l (h264) <a href=\"https://www.linux-projects.org\" class=\"uri\">https://www.linux-projects.org</a></p>\n<p>Raspberry Pi Zero</p>\n<p><a href=\"https://www.raspberrypi.com/products/raspberry-pi-zero/\" class=\"uri\">https://www.raspberrypi.com/products/raspberry-pi-zero/</a></p>\n<p>ESP 32 Camera</p>\n<p><a href=\"https://makeradvisor.com/esp32-camera-cam-boards-review-comparison/\" class=\"uri\">https://makeradvisor.com/esp32-camera-cam-boards-review-comparison/</a></p>\n<p>CHDK - Canon Hack Development Kit</p>\n<p><a href=\"https://chdk.fandom.com/wiki/CHDK\" class=\"uri\">https://chdk.fandom.com/wiki/CHDK</a></p>\n<p>uStreamer (mjpg stream) <a href=\"https://github.com/pikvm/ustreamer\" class=\"uri\">https://github.com/pikvm/ustreamer</a></p>\n<p>PiKrellCam (mjpeg stream) <a href=\"https://billw2.github.io/pikrellcam/pikrellcam.html\" class=\"uri\">https://billw2.github.io/pikrellcam/pikrellcam.html</a></p>\n<p>to forward H264 instead of mjpeg</p>\n<p>WebRTC-streamer <a href=\"https://github.com/mpromonet/webrtc-streamer\" class=\"uri\">https://github.com/mpromonet/webrtc-streamer</a></p>\n<p>WebRTC streamer (RWS) <a href=\"https://github.com/kclyu/rpi-webrtc-streamer\" class=\"uri\">https://github.com/kclyu/rpi-webrtc-streamer</a></p>\n<p>CET Germany and 45 more Brussels, Madrid, Paris, Rome, Algiers</p>\n<p>Moss talks about investing with Robin Hood</p>\n<p><a href=\"https://robinhood.com/us/en/\" class=\"uri\">https://robinhood.com/us/en/</a></p>\n<p>Robin Hood Controversy With Game Stop</p>\n<p><a href=\"https://www.nytimes.com/2021/02/18/business/gamestop-robinhood-hearing.html\" class=\"uri\">https://www.nytimes.com/2021/02/18/business/gamestop-robinhood-hearing.html</a></p>\n<p>FOSS North</p>\n<p><a href=\"https://foss-north.se/\" class=\"uri\">https://foss-north.se/</a></p>\n<p>The Grahm Norton Show</p>\n<p><a href=\"https://www.bbc.co.uk/programmes/b006xnzc\" class=\"uri\">https://www.bbc.co.uk/programmes/b006xnzc</a></p>\n<p>Stephen Colbert</p>\n<p><a href=\"https://www.cbs.com/shows/the-late-show-with-stephen-colbert/\" class=\"uri\">https://www.cbs.com/shows/the-late-show-with-stephen-colbert/</a></p>\n<p>Jon Stewart</p>\n<p><a href=\"https://en.wikipedia.org/wiki/Jon_Stewart\" class=\"uri\">https://en.wikipedia.org/wiki/Jon_Stewart</a></p>\n<p>Highest Point in the Netherlands</p>\n<p><a href=\"https://en.wikipedia.org/wiki/Vaalserberg\" class=\"uri\">https://en.wikipedia.org/wiki/Vaalserberg</a></p>\n<p>Seinfeld TV Show</p>\n<p><a href=\"https://www.imdb.com/title/tt0098904/\" class=\"uri\">https://www.imdb.com/title/tt0098904/</a></p>\n<p>Big Bang Theory</p>\n<p><a href=\"https://www.imdb.com/title/tt0898266/\" class=\"uri\">https://www.imdb.com/title/tt0898266/</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/The_Big_Bang_Theory\" class=\"uri\">https://en.wikipedia.org/wiki/The_Big_Bang_Theory</a></p>\n<p>Joe Talks Installing Linux on Tablets</p>\n<p>ASUS Transformer Line - where Joe started his journey with installing Linux on tablets</p>\n<p><a href=\"https://en.wikipedia.org/wiki/Asus_Transformer\" class=\"uri\">https://en.wikipedia.org/wiki/Asus_Transformer</a></p>\n<p>Dell Tablets</p>\n<p><a href=\"https://www.dell.com/en-us/shop/handhelds-tablet-pcs/ac/4327\" class=\"uri\">https://www.dell.com/en-us/shop/handhelds-tablet-pcs/ac/4327</a></p>\n<p><a href=\"https://i.dell.com/sites/doccontent/corporate/secure/en/Documents/dell-venue-11pro-brochure.pdf\" class=\"uri\">https://i.dell.com/sites/doccontent/corporate/secure/en/Documents/dell-venue-11pro-brochure.pdf</a></p>\n<p><a href=\"https://www.dell.com/support/home/en-us/product-support/product/dell-venue-11i-pro/overview\" class=\"uri\">https://www.dell.com/support/home/en-us/produc
(3677,'2022-09-06','2021-2022 New Years Show Part 4',11653,'The HPR community comes together to chat','<h2 id=\"hacker-public-radio-new-years-eve-show-2021---2022\">Hacker Public Radio New Years Eve Show 2021 - 2022</h2>\n<h3 id=\"part-4\">Part 4</h3>\n<p>Star Wars : The Bad Batch</p>\n<p><a href=\"https://en.wikipedia.org/wiki/Star_Wars:_The_Bad_Batch\" class=\"uri\">https://en.wikipedia.org/wiki/Star_Wars:_The_Bad_Batch</a></p>\n<p><a href=\"https://www.starwars.com/series/star-wars-the-bad-batch\" class=\"uri\">https://www.starwars.com/series/star-wars-the-bad-batch</a></p>\n<p>Star Wars Rebels</p>\n<p><a href=\"https://en.wikipedia.org/wiki/Star_Wars_Rebels\" class=\"uri\">https://en.wikipedia.org/wiki/Star_Wars_Rebels</a></p>\n<p><a href=\"https://www.starwars.com/series/star-wars-rebels\" class=\"uri\">https://www.starwars.com/series/star-wars-rebels</a></p>\n<p>Star Wars - The Clone Wars</p>\n<p><a href=\"https://en.wikipedia.org/wiki/Star_Wars:_The_Clone_Wars_(2008_TV_series)\" class=\"uri\">https://en.wikipedia.org/wiki/Star_Wars:_The_Clone_Wars_(2008_TV_series)</a></p>\n<p><a href=\"https://www.starwars.com/series/star-wars-the-clone-wars\" class=\"uri\">https://www.starwars.com/series/star-wars-the-clone-wars</a></p>\n<p>Star Wars - Book Of Boba Fett</p>\n<p><a href=\"https://en.wikipedia.org/wiki/The_Book_of_Boba_Fett\" class=\"uri\">https://en.wikipedia.org/wiki/The_Book_of_Boba_Fett</a></p>\n<p><a href=\"https://www.starwars.com/series/the-book-of-boba-fett\" class=\"uri\">https://www.starwars.com/series/the-book-of-boba-fett</a></p>\n<p>Father Ted</p>\n<p><a href=\"https://www.imdb.com/title/tt0111958/\" class=\"uri\">https://www.imdb.com/title/tt0111958/</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/Father_Ted\" class=\"uri\">https://en.wikipedia.org/wiki/Father_Ted</a></p>\n<p>Gary Gygax - Creator of Dungeons &amp; Dragons</p>\n<p><a href=\"https://dungeons.fandom.com/wiki/Gary_Gygax\" class=\"uri\">https://dungeons.fandom.com/wiki/Gary_Gygax</a></p>\n<p><a href=\"https://www.wired.com/2008/03/dungeon-master-life-legacy-gary-gygax/\" class=\"uri\">https://www.wired.com/2008/03/dungeon-master-life-legacy-gary-gygax/</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/Gary_Gygax\" class=\"uri\">https://en.wikipedia.org/wiki/Gary_Gygax</a></p>\n<p>Tolkien, The Hobbit, Lord Of The Rings</p>\n<p><a href=\"https://www.tolkiensociety.org/author/biography/\" class=\"uri\">https://www.tolkiensociety.org/author/biography/</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/J._R._R._Tolkien\" class=\"uri\">https://en.wikipedia.org/wiki/J._R._R._Tolkien</a></p>\n<p><a href=\"http://tolkiengateway.net/wiki/The_Hobbit\" class=\"uri\">http://tolkiengateway.net/wiki/The_Hobbit</a></p>\n<p><a href=\"http://tolkiengateway.net/wiki/Lord_of_the_rings\" class=\"uri\">http://tolkiengateway.net/wiki/Lord_of_the_rings</a></p>\n<p>The Wheel Of Times (Book series and TV show)</p>\n<p><a href=\"https://stoneblackfiction.com/2020/07/26/book-review-the-wheel-of-time-a-complete-series-review/\" class=\"uri\">https://stoneblackfiction.com/2020/07/26/book-review-the-wheel-of-time-a-complete-series-review/</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/The_Wheel_of_Time\" class=\"uri\">https://en.wikipedia.org/wiki/The_Wheel_of_Time</a></p>\n<p><a href=\"https://www.imdb.com/title/tt7462410/\" class=\"uri\">https://www.imdb.com/title/tt7462410/</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/The_Wheel_of_Time_(TV_series)\" class=\"uri\">https://en.wikipedia.org/wiki/The_Wheel_of_Time_(TV_series)</a></p>\n<p>Good Omens TV Show</p>\n<p><a href=\"https://www.imdb.com/title/tt1869454/\" class=\"uri\">https://www.imdb.com/title/tt1869454/</a></p>\n<p>Colour Of Magic - TV &amp; Book</p>\n<p><a href=\"https://www.imdb.com/title/tt1869454/\" class=\"uri\">https://www.imdb.com/title/tt1869454/</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/The_Colour_of_Magic\" class=\"uri\">https://en.wikipedia.org/wiki/The_Colour_of_Magic</a></p>\n<p><a href=\"https://www.imdb.com/title/tt1079959/\" class=\"uri\">https://www.imdb.com/title
(3682,'2022-09-13','2021-2022 New Years Show Part 5',11161,'The HPR community comes together to chat','<h2 id=\"hacker-public-radio-new-years-eve-show-2021---2022\">Hacker Public Radio New Years Eve Show 2021 - 2022</h2>\r\n<h3 id=\"part-5\">Part 5</h3>\r\n<p>What is a Recliner Chair</p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/Recliner\" class=\"uri\">https://en.wikipedia.org/wiki/Recliner</a></p>\r\n<p>Shillelagh</p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/Shillelagh\" class=\"uri\">https://en.wikipedia.org/wiki/Shillelagh</a></p>\r\n<p>Goedendag</p>\r\n<p><a href=\"https://www.military-history.org/feature/medieval/the-goedendag-medieval-weaponry.htm\" class=\"uri\">https://www.military-history.org/feature/medieval/the-goedendag-medieval-weaponry.htm</a></p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/Goedendag\" class=\"uri\">https://en.wikipedia.org/wiki/Goedendag</a></p>\r\n<p>Flail</p>\r\n<p><a href=\"https://medievalbritain.com/type/medieval-life/weapons/medieval-flail/\" class=\"uri\">https://medievalbritain.com/type/medieval-life/weapons/medieval-flail/</a></p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/Flail_(weapon)\" class=\"uri\">https://en.wikipedia.org/wiki/Flail_(weapon)</a></p>\r\n<p><a href=\"http://myarmoury.com/talk/viewtopic.12645.html\" class=\"uri\">http://myarmoury.com/talk/viewtopic.12645.html</a></p>\r\n<p>That \'70s Show</p>\r\n<p><a href=\"https://www.imdb.com/title/tt0165598/\" class=\"uri\">https://www.imdb.com/title/tt0165598/</a></p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/That_%2770s_Show\" class=\"uri\">https://en.wikipedia.org/wiki/That_%2770s_Show</a></p>\r\n<p>Tommy Chong</p>\r\n<p><a href=\"https://tommychong.com/\" class=\"uri\">https://tommychong.com/</a></p>\r\n<p><a href=\"https://www.imdb.com/name/nm0001045/\" class=\"uri\">https://www.imdb.com/name/nm0001045/</a></p>\r\n<p>That \'80s Show</p>\r\n<p><a href=\"https://www.imdb.com/title/tt0305472/\" class=\"uri\">https://www.imdb.com/title/tt0305472/</a></p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/That_%2780s_Show\" class=\"uri\">https://en.wikipedia.org/wiki/That_%2780s_Show</a></p>\r\n<p>The Goldbergs</p>\r\n<p><a href=\"https://www.imdb.com/title/tt2712740/\" class=\"uri\">https://www.imdb.com/title/tt2712740/</a></p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/The_Goldbergs_(2013_TV_series)\" class=\"uri\">https://en.wikipedia.org/wiki/The_Goldbergs_(2013_TV_series)</a></p>\r\n<p>Leverage - Redemption</p>\r\n<p><a href=\"https://www.imdb.com/title/tt12197698/\" class=\"uri\">https://www.imdb.com/title/tt12197698/</a></p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/Leverage:_Redemption\" class=\"uri\">https://en.wikipedia.org/wiki/Leverage:_Redemption</a></p>\r\n<p>The Librarians</p>\r\n<p><a href=\"https://www.imdb.com/title/tt3663490/\" class=\"uri\">https://www.imdb.com/title/tt3663490/</a></p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/The_Librarians_(2014_TV_series)\" class=\"uri\">https://en.wikipedia.org/wiki/The_Librarians_(2014_TV_series)</a></p>\r\n<p>Warehouse 13</p>\r\n<p><a href=\"https://warehouse13.fandom.com/wiki/Warehouse_13_(Series)\" class=\"uri\">https://warehouse13.fandom.com/wiki/Warehouse_13_(Series)</a></p>\r\n<p><a href=\"https://www.imdb.com/title/tt1132290/\" class=\"uri\">https://www.imdb.com/title/tt1132290/</a></p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/Warehouse_13\" class=\"uri\">https://en.wikipedia.org/wiki/Warehouse_13</a></p>\r\n<p>The Librarian (TV Movies)</p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/The_Librarian_(franchise)\" class=\"uri\">https://en.wikipedia.org/wiki/The_Librarian_(franchise)</a></p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/The_Librarian:_Quest_for_the_Spear\" class=\"uri\">https://en.wikipedia.org/wiki/The_Librarian:_Quest_for_the_Spear</a></p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/The_Librarian:_Return_to_King_Solomon%27s_Mines\" class=\"uri\">https://en.wikipedia.org/wiki/The_Librarian:_Return_to_King_Solomon%27s_Mines</a></p>\r\n<p><a href=\"https://en.wikipedia.org/wiki/The_Librarian:_Curse_of_the_Judas_C
(3687,'2022-09-20','2021-2022 New Years Show Part 6',11137,'The HPR community comes together to chat','<h2 id=\"hacker-public-radio-new-years-eve-show-2021---2022\">Hacker Public Radio New Years Eve Show 2021 - 2022</h2>\n<h3 id=\"part-6\">Part 6</h3>\n<p><a href=\"https://rsgb.org/main/clubs-training/for-students/foundation/\" class=\"uri\">https://rsgb.org/main/clubs-training/for-students/foundation/</a></p>\n<p><a href=\"https://logseq.com/\" class=\"uri\">https://logseq.com/</a></p>\n<p><strong>The End!</strong></p>\n<ul>\n<li>Thanks To:\n<ul>\n<li>Mumble Server: Delwin</li>\n<li>HPR Site/VPS: Joshua Knapp - AnHonestHost.com</li>\n<li>Streams: Honkeymagoo</li>\n<li>EtherPad: HonkeyMagoo</li>\n<li>Shownotes: HPLovecraft</li>\n</ul></li>\n</ul>\n<h3 id=\"aftershow\">Aftershow</h3>\n<p>Swedish new words of 2021: <a href=\"https://www.svt.se/kultur/experten-de-orden-kommer-jag-sakna-mest\" class=\"uri\">https://www.svt.se/kultur/experten-de-orden-kommer-jag-sakna-mest</a> (Swedish)</p>\n<p><a href=\"https://en.wikipedia.org/wiki/Endometriosis\" class=\"uri\">https://en.wikipedia.org/wiki/Endometriosis</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/Vulvar_vestibulitis\" class=\"uri\">https://en.wikipedia.org/wiki/Vulvar_vestibulitis</a></p>\n',159,121,1,'CC-BY-SA','HPR, New Years, Talking',0,0,1);
INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hostid`, `series`, `explicit`, `license`, `tags`, `version`, `downloads`, `valid`) VALUES (3659,'2022-08-11','Developing an HPR static site generator',673,'Rho`n describes his approach to developing a static site generator for HPR','<h1 id=\"synopsis\">Synopsis</h1>\n<p>In this episode, I describe my ongoing attempt to develop a static site generator for the HPR website. As a search through the community mailing list will reveal, the idea for moving the HPR website has been rattling around for a few years. I have been interested in helping out with the website for a while, so when the latest round of discussion occurred I decided to give it a whirl.</p>\n<p>While I have read about various static site generators over the years, the only one I had any experience with was Template-Toolkit (TT2) when helping Ken Fallon and Dave Morriss develop the Free Culture Podcasts webpage. It is the tool Dave uses for various projects. Since they are the janitors for HPR, I figured a website generator based on the TT2 would be something relatively painless enough for them to use, and update when needed.</p>\n<p>The code for this generator is hosted at <a href=\"https://repo.anhonesthost.net/rho_n/hpr_generator\">https://repo.anhonesthost.net/rho_n/hpr_generator</a>. The generator is written in Perl and generates the pages using TT2 templates.</p>\n<p>Anyone interested in helping out is encouraged to create an account on repo.anhonesthost.net and start hacking away.</p>\n<h1 id=\"references\">References</h1>\n<ul>\n<li><p><a href=\"https://repo.anhonesthost.net/rho_n/hpr_generator\">site-generator source code</a>; <a href=\"https://repo.anhonesthost.net/rho_n/hpr_generator\">https://repo.anhonesthost.net/rho_n/hpr_generator</a></p></li>\n<li><p><a href=\"http://template-toolkit.org/\">Template Tookit website</a>; <a href=\"http://template-toolkit.org/\">http://template-toolkit.org/</a></p></li>\n<li><p><a href=\"https://www.cpan.org/\">Comprehensive Perl Archive Network (CPAN) website</a>; <a href=\"https://www.cpan.org/\">https://www.cpan.org/</a></p></li>\n<li><p><a href=\"https://repo.anhonesthost.net/explore/repos\">HPR repositories at anHonestHost.net</a>; <a href=\"https://repo.anhonesthost.net/explore/repos\">https://repo.anhonesthost.net/explore/repos</a></p></li>\n<li><p><a href=\"https://hpr.horning.us/\">Rho`n\'s public test HPR website</a>; <a href=\"https://hpr.horning.us\">https://hpr.horning.us</a></p></li>\n<li><p><a href=\"https://freeculturepodcasts.org/\">Free Culture Podcasts</a>; <a href=\"https://freeculturepodcasts.org/\">https://freeculturepodcasts.org/</a></p></li>\n<li><p><a href=\"https://hackerpublicradio.org/pipermail/hpr_hackerpublicradio.org/2019-April/014388.html\">HPR Mailing list: Static Site Generators - NOT a flat file CMS</a>; message thread; <a href=\"https://hackerpublicradio.org/pipermail/hpr_hackerpublicradio.org/2019-April/014388.html\">https://hackerpublicradio.org/pipermail/hpr_hackerpublicradio.org/2019-April/014388.html</a></p></li>\n<li><p><a href=\"https://hackerpublicradio.org/pipermail/hpr_hackerpublicradio.org/2022-June/015296.html\">HPR Mailing list: Source Code for the HPR website.</a>; message thread; <a href=\"https://hackerpublicradio.org/pipermail/hpr_hackerpublicradio.org/2022-June/015296.html\">https://hackerpublicradio.org/pipermail/hpr_hackerpublicradio.org/2022-June/015296.html</a></p></li>\n<li><p><a href=\"https://github.com/dumblob/mysql2sqlite\">MySQL to SQLite conversion script</a>; <a href=\"https://github.com/dumblob/mysql2sqlite\">https://github.com/dumblob/mysql2sqlite</a></p></li>\n</ul>\n',293,0,0,'CC-BY-SA','HPR, static site generator, Perl, SQLite, Template Toolkit',0,0,1),
(3665,'2022-08-19','UNIX Is Sublime',3586,'I talk about all of the reasons I love UNIX','<h1 id=\"unix-is-sublime\">UNIX is sublime</h1>\n<h6 id=\"or-how-to-use-a-computer-without-hating-yourself-for-it-in-the-morning\">Or, \"how to use a computer without hating yourself for it in the morning\"</h6>\n<h6 id=\"or-unix-is-basically-a-simple-operating-system---\">Or, \"Unix is basically a simple operating system . . .\"</h6>\n<h6 id=\"or-my-weariness-and-disdain-for-computers-grow-with-each-additional-unit-of-knowledge\">Or, \"My weariness and disdain for computers grow with each additional unit of knowledge\"</h6>\n<h6 id=\"or-worse-is-better\">Or, \"Worse is better\"</h6>\n<h1 id=\"origins\">Origins</h1>\n<p>UNIX is not Multics</p>\n<p>Multics = Multiplexed Information and Computer Service</p>\n<p>UNIX = Uniplexed Information and Computing Service</p>\n<p>The name \'UNIX\' is a pun on the name \'Multics\'. Multics was entirely too large and complicated to be useful so the boys at Bell Labs cooked up something smaller, less complicated, and easier to use.</p>\n<hr />\n<h3 id=\"ancient-emulation-interlude\">Ancient emulation interlude</h3>\n<p><a href=\"https://www.multicians.org/sim-inst.html\">How to run Multics in 2022.</a></p>\n<p><a href=\"https://gunkies.org/wiki/Running_Unix_v5_in_SIMH\">This wiki helped me emulate UNIXv5.</a></p>\n<p><a href=\"https://gunkies.org/wiki/Installing_v7_on_SIMH\">And this one helped me emulate UNIXv7.</a></p>\n<p><a href=\"https://livingcomputers.org/Computer-Collection/Online-Systems.aspx\">These guys host ancient systems accessible via guest accounts over ssh.</a></p>\n<blockquote>\n<p>\"Cool, but useless.\"</p>\n</blockquote>\n<hr />\n<p>I know almost nothing about Multics and I\'m not sure if it\'s even worth learning. This is about UNIX, not Multics. Maybe I\'ll come back to it.</p>\n<h1 id=\"philosophy-implementations-ducks\">Philosophy, implementations, ducks</h1>\n<p>When I think of \"UNIX\", I do not think of the trademark. Instead, I think of the <a href=\"https://en.wikipedia.org/wiki/Unix_philosophy\">Unix philosophy.</a> and the general design principles, interface, and behavior of a UNIX system.</p>\n<p>A better way of thinking about \"UNIX\" is as something \"POSIX-like\" rather than \"AT&amp;T\'s commercial UNIX\". Example: although Linux and GNU are overly complicated, they pass the duck test for being a UNIX. Pedigree or not, you know a nix when you see one.</p>\n<p>Also, when I say \"UNIX\", I mean \"Free UNIX\". I have no interest in proprietary implementations that only exist for the purpose of restricting users and disempowering/discouraging sysadmins from becoming self-reliant.</p>\n<p>So what is the philosophy?</p>\n<ul>\n<li>Do one thing and do it well</li>\n<li>Design programs that work together using text as the common interface</li>\n<li>KISS: Keep it simple, stupid</li>\n<li>Test early, test often</li>\n</ul>\n<p>And additionally:</p>\n<ul>\n<li>everything is a file or a process</li>\n</ul>\n<h1 id=\"design\">Design</h1>\n<h2 id=\"10000-ft-view\">10,000 Ft View</h2>\n<p>UNIX is a multiuser time sharing networked operating system, running as an always online service. A UNIX system is a single mainframe computer running an operating system designed for multiple users to access concurrently over the network, equally (depending on implementation) sharing resources amongst the active users.</p>\n<p>In a traditional network setup, there is one mainframe UNIX machine with multiple dumb terminals connected to it over the network. None of the users touch the mainframe physically. Instead, they interact with it exclusively through their own dumb terms. These dumb terminals have minimal or no computing power of their own because all of the actual computation takes place on the mainframe. Built in networking is a given.</p>\n<p>As for the actual software running on the mainframe, it\'s quite simple to visualize. A Unix system is a flexible but organized stack of concepts, each depending on the concept below, all working together for the sole purpose of enabling the end
(3657,'2022-08-09','Small time sysadmin',1568,'How I maintain my Linux Box, Part One.','<ol>\n<li>Creating Backups.</li>\n</ol>\n<ul>\n<li><p>This script was trimmed to serve as an example.</p></li>\n<li><p>The three options shown (email, jop, dots) demonstrates, how to list items with case statements:</p>\n<ul>\n<li>Single item/directory (jop).</li>\n<li>Multiple items in single directory (dots).</li>\n<li>Multiple items in multiple directories (email).</li>\n</ul></li>\n<li><p>The text files created after the archive serves as an item list<br />\nwith current permissions.</p></li>\n<li><p><code>tar --directory= /path/to/directory/ --create --file INSERT_ARCHIVE_NAME.tar /path/to/file;</code></p></li>\n</ul>\n<pre><code>#!/bin/bash\n#License: GPL v3\n# This program is free software: you can redistribute it and/or modify\n# it under the terms of the GNU General Public License as published by\n# the Free Software Foundation, either version 3 of the License, or\n# (at your option) any later version.\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU General Public License for more details.\n#\n# You should have received a copy of the GNU General Public License\n# along with this program. If not, see &lt;https://www.gnu.org/licenses/&gt;.\n\n#Name: getoverhere.sh\n#Purpose:\n#Version: beta 0.07\n#Author: SGOTI (Some Guy On The Internet)\n#Date: Sat 29 Jan 2022 02:19:29 AM EST\n\n#variables:\nVAR_TBALL=\nVAR_TARGET=\nVAR_JUMP=\nVAR_VALUE=\n\n#start:\ncat &lt;&lt; &quot;EOT01&quot;\nOptions:\n email |&quot;${HOME}/.thunderbird/&quot;\n jop |&quot;${HOME}/Documents/joplin&quot;\n dots |&quot;${HOME}/.bashrc .vimrc .bash_aliases&quot;\nEOT01\n\necho -e &quot;What do you want to backup? : \\c.&quot;\nread VAR_VALUE\n\ncase ${VAR_VALUE} in\n &quot;email&quot; )\nVAR_TBALL=&quot;INSERT_EMAIL_NAME$(date +%m-%d-%Y).tar.gz&quot;\nVAR_TARGET=&quot;msgFilterRules.dat&quot;\nVAR_JUMP=&quot;${HOME}/.thunderbird/*.default-release/ImapMail/imap.mail.yahoo.com/&quot;\n echo -e &quot;Grabbing INSERT_EMAIL_NAME...\\n&quot;\ntar -C ${VAR_JUMP} --create --file ${VAR_TBALL} --gzip ${VAR_TARGET}\n sleep 1\n\nVAR_TBALL=&quot;INSERT_EMAIL_NAME$(date +%m-%d-%Y).tar.gz&quot;\nVAR_TARGET=&quot;msgFilterRules.dat&quot;\nVAR_JUMP=&quot;${HOME}/.thunderbird/*.default-release/ImapMail/imap.gmail.com/&quot;\n echo -e &quot;Grabbing INSERT_EMAIL_NAME...\\n&quot;\ntar -C ${VAR_JUMP} --create --file ${VAR_TBALL} --gzip ${VAR_TARGET}\n sleep 1\n\nVAR_TBALL=&quot;EMAIL_ARCHIVES$(date +%m-%d-%Y).tar.gz&quot;\nVAR_TARGET=&quot;Mail/&quot;\nVAR_JUMP=&quot;${HOME}/.thunderbird/*.default-release/&quot;\n echo -e &quot;Grabbing email EMAIL_ARCHIVES...\\n&quot;\ntar -C ${VAR_JUMP} --create --file ${VAR_TBALL} --gzip ${VAR_TARGET}\n echo -e &quot;Creating List for ${VAR_TBALL}...\\n&quot;\nls -lhAR --group-directories-first ${VAR_JUMP}${VAR_TARGET} &gt; EMAIL_ARCHIVES$(date +%m-%d-%Y).txt\n sleep 1\n\nVAR_TBALL=&quot;THUNDERBIRD_CALENDER$(date +%m-%d-%Y).tar.gz&quot;\nVAR_TARGET=&quot;calenders/&quot;\nVAR_JUMP=&quot;${HOME}/Documents/&quot;\n echo -e &quot;Grabbing email THUNDERBIRD_CALENDER...\\n&quot;\ntar -C ${VAR_JUMP} --create --file ${VAR_TBALL} --gzip ${VAR_TARGET}\n echo -e &quot;Creating List for ${VAR_TBALL}...\\n&quot;\nls -lhAR --group-directories-first ${VAR_JUMP}${VAR_TARGET} &gt; THUNDERBIRD_CALENDER$(date +%m-%d-%Y).txt\n sleep 1\n\nVAR_TBALL=&quot;THUNDERBIRD_ADDRESS_BOOK$(date +%m-%d-%Y).tar.gz&quot;\nVAR_TARGET=&quot;address-book/&quot;\nVAR_JUMP=&quot;${HOME}/Documents/&quot;\n echo -e &quot;Grabbing ${VAR_TARGET}...\\n&quot;\ntar -C ${VAR_JUMP} --create --file ${VAR_TBALL} --gzip ${VAR_TARGET}\n echo -e &quot;Creating List for ${VAR_TBALL}...\\n&quot;\nls -lhAR --group-directories-first ${VAR_JUMP}${VAR_TARGET} &gt; THUNDERBIRD_ADDRESS_BOOK$(date +%m-%d-%Y).txt\n sleep 1\n\nVAR_TBALL=&quot;THUNDERBIRD_ALL$(date +%m-%d-%Y).tar.gz&quot;\nVAR_T
(3664,'2022-08-18','Secret hat conversations',1070,'You\'ll need your tin hat for this one.','<p><a href=\"https://en.wikipedia.org/wiki/Tin_foil_hat\">The Tin Foil Hat</a> often worn in the belief or hope that it shields the brain from threats such as electromagnetic fields, mind control, and mind reading.</p>\n<ol>\n<li><a href=\"https://www.youtube.com/watch?v=KD7zTSaiigg\">Proper hat construction video</a>. Also includes the &#x201C;why&#x201D; along with the &#x201C;how&#x201D;.</li>\n<li><a href=\"https://www.youtube.com/watch?v=p0mEuIvfFCA\">Proper hat construction music</a>. Just something to keep you focused.</li>\n</ol>\n<hr />\n<p><a href=\"https://www.fcc.gov/spoofing\">FCC Caller ID Spoofing info</a>: Spoofing is when a caller deliberately falsifies the information transmitted to your caller ID display to disguise their identity.</p>\n<p><a href=\"https://www.fcc.gov/call-blocking\">FCC Call Blocking info</a>: Call blocking is a tool used by phone companies to stop illegal and unwanted calls from reaching your phone. A second annual FCC report released in June 2021 found that many voice service providers and third-party analytics companies are improving their call blocking and labeling services and use new data to better detect robocalls. Billions of unwanted calls to American consumers are being blocked each year.</p>\n<p>The <a href=\"https://pine64.com/product/pinephone-pro-explorer-edition/\">PinePhone Pro Explorer Edition</a> is aimed at Linux developers with an extensive knowledge of embedded systems and/or experience with mobile Linux.</p>\n<p><a href=\"https://en.wikipedia.org/wiki/Time-based_one-time_password\">Time-based one-time password</a> (TOTP) is a computer algorithm that generates a one-time password (OTP) that uses the current time as a source of uniqueness. As an extension of the HMAC-based one-time password algorithm (HOTP), it has been adopted as Internet Engineering Task Force (IETF) standard RFC 6238.</p>\n<p><a href=\"https://matrix.org/\">Matrix</a> is an open standard for interoperable, decentralised, real-time communication over IP.</p>\n<hr />\n<p><strong>Password Managers:</strong> <em>Used by Some Guy On The Internet.</em><br />\n<a href=\"https://bitwarden.com/\">Bitwarden</a><br />\n<a href=\"https://keepassxc.org/\">KeePassXC</a></p>\n<hr />\n',391,0,1,'CC-BY-SA','Tin hat, call spoofing',0,0,1),
(3936,'2023-09-04','HPR Community News for August 2023',3397,'HPR Volunteers talk about shows released and comments posted in August 2023','<style>\ntable td.shrink {\n white-space:nowrap\n}\nhr.thin {\n border: 0;\n height: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n border-bottom: 1px solid rgba(255, 255, 255, 0.3);\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nWelcome to our new host: <br />\n\n <a href=\"https://hackerpublicradio.org/correspondents/0422.html\" target=\"_blank\">Fred Black</a>.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3912/index.html\" target=\"_blank\">3912</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-08-01</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3912/index.html\" target=\"_blank\">Emergency Show: Biltong and Rooibos</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0250.html\" target=\"_blank\">Shane Shennan</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3913/index.html\" target=\"_blank\">3913</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-08-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3913/index.html\" target=\"_blank\">Lurking Prion Q and A</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0405.html\" target=\"_blank\">Lurking Prion</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3914/index.html\" target=\"_blank\">3914</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-08-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3914/index.html\" target=\"_blank\">how to deal with blisters</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3915/index.html\" target=\"_blank\">3915</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-08-04</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3915/index.html\" target=\"_blank\">Why the hell is my audio clipping?</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0201.html\" target=\"_blank\">MrX</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3916/index.html\" target=\"_blank\">3916</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-08-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3916/index.html\" target=\"_blank\">HPR Community News for July 2023</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3917/index.html\" target=\"_blank\">3917</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-08-08</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3917/index.html\" target=\"_blank\">Response to \"Permission Tickets\" by oneofspoons</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3918/index.html\" target=\"_blank\">3918</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-08-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3918/index.html\" target=\"_blank\">Emacs package curation, part 3</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3919/index.html\" target=\"_blank\">3919</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-08-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3919/index.html\" target=\"_blank\">How I hacked my voice</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0364.html\" target=\"_blank\">Tuula</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3920
(3666,'2022-08-22','One Weird Trick',997,'I talk about getting into or advancing in cybersecurity & how keyboards could trick malware.','<p>In this episode, I talk about getting in to the field of cybersecurity or moving up in the field. I also talk about how keyboards could keep malware from going Boom on your system.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><p>Try This One Weird Trick Russian Hackers Hate<br />\n<a href=\"https://krebsonsecurity.com/2021/05/try-this-one-weird-trick-russian-hackers-hate/\" class=\"uri\">https://krebsonsecurity.com/2021/05/try-this-one-weird-trick-russian-hackers-hate/</a></p></li>\n<li><p>Fake VM Sandbox artifacts - not talked about in this episode<br />\n<a href=\"https://github.com/NavyTitanium/Fake-Sandbox-Artifacts\" class=\"uri\">https://github.com/NavyTitanium/Fake-Sandbox-Artifacts</a></p></li>\n<li><p>Has your password been involved in a breach?<br />\n<a href=\"https://haveibeenpwned.com/\" class=\"uri\">https://haveibeenpwned.com/</a></p></li>\n<li><p>Realtime Global Cyber Attack Map<br />\n<a href=\"https://threatmap.checkpoint.com/\" class=\"uri\">https://threatmap.checkpoint.com/</a></p></li>\n</ul>\n',405,74,1,'CC-BY-SA','cybersecurity,security,EvilSteve,malware, career',0,0,1),
(3669,'2022-08-25','My First Podcast: My Journey into the Computer World',1207,'How I was introduced into computers, Linux, robotics, programming, cibersecurity and more...','<h1 id=\"milestones-in-my-journey\">Milestones in my Journey</h1>\n<ol>\n<li>Studied Windows office and played online games</li>\n<li>Electronics</li>\n<li>Programming with Scratch</li>\n<li>Studied Javascript with Khan Academy</li>\n<li>Used Processing</li>\n<li>Learned Arduino and robotics</li>\n<li>Programmed with Visual Studio Code</li>\n<li>Learned Git</li>\n<li>Learned Windows Batch, VBS, registry, and others</li>\n<li>Introduction to Linux and disks with Tails</li>\n<li>Installation of Linux mint</li>\n<li>Installation of Debian</li>\n<li>Learned Apt, sudo, and other commands</li>\n<li>Discovered the Raspberry Pi</li>\n<li>Learned ssh, vnc, servers and networking with the Raspberry Pi</li>\n<li>Received a Thinkpad laptop and installed on it Bodhi Linux, Linux Lite and Alpine Linux</li>\n<li>Learned about erasure, recovery and encryption of data</li>\n<li>Learned more about Linux (Screen, network configuration, emacs, programming in C)</li>\n<li>Discovered <a href=\"https://nethackwiki.com/wiki/NetHack\">Nethack</a> and <a href=\"https://gitlab.com/esr/open-adventure\">Open Adventure</a> console games</li>\n<li>Studied hacking and pentesting</li>\n<li>Helped a company with its computers and learned from it guys</li>\n<li>Introduction to Python and BSD</li>\n</ol>\n',410,29,0,'CC-BY-SA','linux, programming, cibersecurity, robotics, hardware',0,0,1),
(3678,'2022-09-07','\"Stupid Users\" ... no, not those users, the other \"stupid users\"',907,'Brady & I discuss stupid things done by those of us who really should know better.','<p>In this week\'s episode, I chat with R. Brady Frost about the little plumber vs the gigantic rock. Then we move in to a discussion about the fallacy of stupid users with some great stories of stupid things done by those of us who really should know better. The moral of the story, is that we are all human and nothing will ever change that. Instead, we need to be prepared for when humans are human.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li>Realtime Global Cyber Attack Map<br />\n<a href=\"https://threatmap.checkpoint.com/\" class=\"uri\">https://threatmap.checkpoint.com/</a></li>\n</ul>\n',405,74,1,'CC-BY-SA','cybersecurity,security,EvilSteve,users,stupid human tricks,customer service',0,0,1),
(3689,'2022-09-22','Linux Inlaws S01E65: TerminusDB',4071,'TerminusDB NoSQL database','<p>As part of the effort of turning the planet\'s premier Rust marketing podcast into a full-blown NoSQL show, in this episode Chris hosts some of the key people behind a NoSQL database called TerminusDB (Martin couldn\'t make it as he was firing, um, re-organising the Inlaw\'s marketing department once again). Luke (the CEO) and Gavin (CTO) of TerminusDB spill the beans on the history of the project, ontologies and why they still matter not only in a mobile-first world and why a website called DB Engines simply doesn\'t do the trick (putting it very diplomatically). Never mind the road ahead... (including quantum AI and some other fancy stuff - you heard it here first!). And also next week\'s lotto numbers (perhaps).</p>\n<h2>Links:</h2>\n<ul>\n<li>Trinity College Dublin: <a href=\"https://tcd.ie\" target=_blank>https://tcd.ie</a></li>\n<li>TerminusDB: <a href=\"https://terminusdb.com\" target=_blank>https://terminusdb.com</a></li>\n<li>TerminusDB on Github: <a href=\"https://github.com/terminusdb/terminusdb\" target=_blank>https://github.com/terminusdb/terminusdb</a></li>\n<li>Seshat: <a href=\"http://seshatdatabank.info\" target=_blank>http://seshatdatabank.info</a></li>\n<li>DBpedia: <a href=\"https://www.dbpedia.org\" target=_blank>https://www.dbpedia.org</a></li>\n<li>Terminus @ Isaac Asimov: <a href=\"https://en.wikipedia.org/wiki/Foundation_series\" target=_blank>https://en.wikipedia.org/wiki/Foundation_series</a></li>\n<li>RDFs: <a href=\"https://www.w3.org/TR/rdf11-concepts\" target=_blank>https://www.w3.org/TR/rdf11-concepts</a></li>\n<li>HDT: <a href=\"https://www.rdfhdt.org/what-is-hdt\" target=_blank>https://www.rdfhdt.org/what-is-hdt</a></li>\n<li>Rust episode (S01E53): <a href=\"http://hackerpublicradio.org/eps.php?id=3569\" target=_blank>http://hackerpublicradio.org/eps.php?id=3569</a></li>\n<li>Open source licenses episode (S01E536): <a href=\"https://hackerpublicradio.org/eps.php?id=3399\" target=_blank>https://hackerpublicradio.org/eps.php?id=3399</a></li>\n<li>TerminusDB @ Social: <a href=\"https://terminusdb.com/community\" target=_blank>https://terminusdb.com/community</a></li>\n<li>AI Infrastructure Alliance: <a href=\"https://ai-infrastructure.org\" target=_blank>https://ai-infrastructure.org</a></li>\n<li>Google\'s Carbon: <a href=\"https://github.com/carbon-language/carbon-lang\" target=_blank>https://github.com/carbon-language/carbon-lang</a></li>\n<li>When we cease to understand the world: <a href=\"https://en.wikipedia.org/wiki/Benjam%C3%ADn_Labatut#When_We_Cease_to_Understand_the_World\" target=_blank>https://en.wikipedia.org/wiki/Benjamín_Labatut#When_We_Cease_to_Understand_the_World</a></li>\n<li>Substack: <a href=\"https://benn.substack.com\" target=_blank>https://benn.substack.com</a></li>\n<li>Chi-Raq: <a href=\"https://www.imdb.com/title/tt4594834/?ref_=fn_al_tt_1\" target=_blank>https://www.imdb.com/title/tt4594834/?ref_=fn_al_tt_1</a></li>\n</ul>\n',384,111,1,'CC-BY-SA','TerminusDB, graph databases, Seshat, Rust, Carbon by Google, Substack',0,0,1),
(3671,'2022-08-29','Response to Episode 3655, \"BSD for Linux Users\"',674,'Claudio responds to binrc\'s episode on BSD for Linux Users and rambles on about other BSD stuff.','<h2 id=\"my-geeeky-experiment-blog-posts\">My gEeeky Experiment blog posts:</h2>\n<ul>\n<li>Part 1: <a href=\"https://claudiomiranda.wordpress.com/2020/01/04/my-geeeky-experiment-part-1/\" class=\"uri\">https://claudiomiranda.wordpress.com/2020/01/04/my-geeeky-experiment-part-1/</a></li>\n<li>Part 2: <a href=\"https://claudiomiranda.wordpress.com/2020/01/12/my-geeeky-experiment-part-2/\" class=\"uri\">https://claudiomiranda.wordpress.com/2020/01/12/my-geeeky-experiment-part-2/</a></li>\n<li>Part 3: <a href=\"https://claudiomiranda.wordpress.com/2020/10/04/my-geeeky-experiment-part-3/\" class=\"uri\">https://claudiomiranda.wordpress.com/2020/10/04/my-geeeky-experiment-part-3/</a></li>\n</ul>\n<h2 id=\"my-geeeky-experiment-hpr-episodes\">My gEeeky Experiment HPR Episodes:</h2>\n<ul>\n<li>Part 1: <a href=\"https://hackerpublicradio.org/eps.php?id=3383\" class=\"uri\">https://hackerpublicradio.org/eps.php?id=3383</a></li>\n<li>Part 2: <a href=\"https://hackerpublicradio.org/eps.php?id=3418\" class=\"uri\">https://hackerpublicradio.org/eps.php?id=3418</a></li>\n<li>Part 3: <a href=\"https://hackerpublicradio.org/eps.php?id=3527\" class=\"uri\">https://hackerpublicradio.org/eps.php?id=3527</a></li>\n</ul>\n<ul>\n<li>Blog post about my Evoo laptop (and then some): <a href=\"https://claudiomiranda.wordpress.com/2022/06/20/a-new-beastie-and-an-old-slacker/\" class=\"uri\">https://claudiomiranda.wordpress.com/2022/06/20/a-new-beastie-and-an-old-slacker/</a></li>\n</ul>\n',152,0,1,'CC-BY-SA','bsd, openbsd, freebsd, netbsd, binrc, response, unix',0,0,1),
(3673,'2022-08-31','Recording for Hacker Public Radio',1066,'My experiences recording episodes of HPR','<ul>\n<li>How I\'ve recorded episodes:\n<ul>\n<li>iPhone 7 with Apple earbuds</li>\n<li>Zoom H1 Handy Recorder</li>\n<li>Sennheiser MB Pro 2 with <a href=\"https://gitlab.com/norrist/solocast\">Solocast</a></li>\n<li>Google Pixel 3 with the Dolby On app</li>\n</ul></li>\n<li>What is the compressor, and how to use it.</li>\n<li>What is the EQ, and how to use it.</li>\n<li>Environment, noise and reverberation</li>\n<li>Warming up, breathing</li>\n</ul>\n<p>Episodes referenced here:<br />\n<a href=\"http://hackerpublicradio.org/eps.php?id=3625\">hpr3625 :: Shell Tips and Snippets - Collaborative Effort hosted by Carl</a><br />\n<a href=\"http://hackerpublicradio.org/eps.php?id=3496\">hpr3496 :: How I record HPR Episodes</a><br />\n<a href=\"http://hackerpublicradio.org/eps.php?id=1342\">hpr1342 :: Power Tool Drag Racing! hosted by MrGadgets</a></p>\n<p>All the information in this show is just what I have learned and what I think. Let us know if you have learned other things by recording your own show!</p>\n',399,45,0,'CC-BY-SA','\"sound editing\"',0,0,1),
(3675,'2022-09-02','Plan 9: An exercise in futility',4771,'I talk about the design of Plan 9 and how I use it','<h1 id=\"plan-9-an-exercise-in-futility\">Plan 9: An exercise in futility</h1>\n<h5 id=\"it-is-my-right-to-exercise-my-futility-wherever-whenever-and-with-whoever-i-please\">It is my right to exercise my futility wherever, whenever, and with whoever I please</h5>\n<h1 id=\"some-ideas-about-plan-9\">Some ideas about Plan 9:</h1>\n<blockquote>\n<p>It\'s like the uncanny valley of UNIX</p>\n</blockquote>\n<blockquote>\n<p>Cool, but useless</p>\n</blockquote>\n<blockquote>\n<p>Can you sum up plan 9 in layman\'s terms? It does everything Unix does only less reliably - Ken Thompson</p>\n</blockquote>\n<blockquote>\n<p>If you cannot imagine a use for a computer that does not involve a web browser, Plan 9 may not be for you - 9front FQA</p>\n</blockquote>\n<blockquote>\n<p><code>#d/0:28: null list in concatenation</code></p>\n</blockquote>\n<h1 id=\"history-and-description\">History and description</h1>\n<p>The boys at bell labs decide UNIX wasn\'t good enough so they decided to build something better: a distributed multiuser operating system composed of many machines. Many of the same ideas behind UNIX were pushed to absurd extremes. The idea that \"everything is a file\" is made blatantly apparent to everyone and sometimes, in my opinion, can feel \'overly-abstracted\'. Additionally, the concept of private namespaces makes the concept of virtual filesystems seem like \'baby\'s first filesystem abstraction\'.</p>\n<p>Just like UNIX, 9 started as a research operating system. Both are enjoyed by hobbyists, both are interesting ways of using a computer, both have a lot of fun in store. But the systems do diverge in one major aspect: UNIX is mainstream and 9 is still a research operating system. Plan 9 is currently distributed under the MIT license.</p>\n<p>\"What is plan 9?\", Taken directly from <code>intro(1)</code>:</p>\n<blockquote>\n<p>Plan 9 is a distributed computing environment assembled from separate machines acting as terminals, CPU servers, and file servers. A user works at a terminal, running a window system on a raster display. Some windows are connected to CPU servers; the intent is that heavy computing should be done in those windows but it is also possible to compute on the terminal. A separate file server provides file storage for terminals and CPU servers alike.</p>\n</blockquote>\n<p>In practice, modern 9 users just run all of these services on a single machine because maintaining many machines to achieve a single usable \'operating system\' is unnecessary; the 9 user finds himself scared and alone without enough users (1 is rarely enough) to justify building a distributed environment.</p>\n<h1 id=\"use-cases\">Use cases</h1>\n<p>Intended: distributed multiuser network (ie not mainframe), later embedded since UNIX was too bad to be stopped</p>\n<p>Actual: Acting like a UNIX hipster, pretending that 9 is anything other than vaporware, imagining that you are gaining social credit by posting screenshots of abandonware on internet forums. See also: Operating System Tourism</p>\n<h1 id=\"9-in-the-wild\">9 in the wild</h1>\n<ul>\n<li>Unicode is now a plague</li>\n<li>rfork</li>\n<li>9p\n<ul>\n<li>leveraged by microsoft to discourage end users from actually running GNU+Linux as St Ignucius intended</li>\n<li>QEMU\'s VirtFS</li>\n</ul></li>\n<li>various window managers for UNIX, written by people who like the ideas behind 9 but not enough to actually run 9</li>\n<li>\"cool idea, I\'m adding it to Linux\"</li>\n</ul>\n<ul>\n<li>private namespaces</li>\n<li>union directories</li>\n<li>see: docker</li>\n</ul>\n<h1 id=\"design\">Design</h1>\n<p>The goal of 9 was to build a distributed operating system that expands upon Unixy ideas, <strong>not</strong> to build something that\'s backwards compatible. \"We want to improve UNIX\" is mutually exclusive to \"we want to port UNIX to this wacky new kernel\". UNIX programs (and behemoths like FireFox) are difficult^impossible to port to 9 because of this design decision
(3688,'2022-09-21','Education, Certifications, and sipping on the Socials',1820,'I discuss the value of an Education, certifications, and a positive Social Media presence.','<p>I have had a lot of questions over the years about how to proceed with a career, education, and certifications. So, I give my take on these and what they mean relative to my life experiences. Individual mileage may vary. I also discuss the need to have a public facing social media presence that is active and consistent. Hide the private Socials and search to see what actually shows up when searching for yourself. Your future employers will. Just sayin\'.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li>Realtime Global Cyber Attack Map<br />\n<a href=\"https://threatmap.checkpoint.com/\" class=\"uri\">https://threatmap.checkpoint.com/</a></li>\n</ul>\n',405,74,1,'CC-BY-SA','cybersecurity,security,EvilSteve,socialmedia,education,certifications',0,0,1),
(3674,'2022-09-01','Emergency Show posted in 2012. MUD',1241,'In today\'s show klaatu drags us through the mud with his somewhat belated descovery.','<p>\n<strong>MUD</strong><br />\n<em>From Wikipedia, the free encyclopedia</em><br />\nA MUD ( originally Multi-User Dungeon, with later variants Multi-User Dimension and Multi-User Domain), is a multiplayer real-time virtual world, usually text-based. MUDs combine elements of role-playing games, hack and slash, player versus player, interactive fiction, and online chat. Players can read or view descriptions of rooms, objects, other players, non-player characters, and actions performed in the virtual world. Players typically interact with each other and the world by typing commands that resemble a natural language.<br />\n<a href=\"https://en.wikipedia.org/wiki/Multi-User_Dungeon\">https://en.wikipedia.org/wiki/Multi-User_Dungeon</a>\n</p>\n\n<p>\nTinTin++, aka tt++, is a free MUD client for Mac OS X, Linux, and Windows. The Windows port named WinTin++ (using the PuTTY derived mintty terminal) is available for those who do not use Cygwin (A Linux/Unix emulator for Windows) and runs on Windows Xp, Windows Vista, and Windows 7. Besides MUDs, TinTin++ also works well with MUSH, Rogue, BBS, and Linux servers.<br />\n<a href=\"http://tintin.sourceforge.net/\">http://tintin.sourceforge.net/</a>\n</p>\n\n<p>\n<strong>Ancient Anguish</strong><br />\n<em>From Wikipedia, the free encyclopedia</em><br />\nAncient Anguish, abbreviated AA, is a fantasy-themed MUD, a text-based online role-playing game. Founded in 1991 by Balz \"Zor\" Meierhans and Olivier \"Drake\" Maquelin, it opened to the public on February 2, 1992. It is free to play, but has been supported by player donations since 1994.<br />\n<a href=\"https://en.wikipedia.org/wiki/Ancient_Anguish\">https://en.wikipedia.org/wiki/Ancient_Anguish</a>\n</p>\n',78,0,0,'CC-BY-SA','RPG,MUD,TinTin++,WinTin++',0,0,1),
(3681,'2022-09-12','Rust 101 Episode 3: Functionally Insane',2481,'In this episode BlacKernel teaches you how to make functions and for loops in rust','<p>In this episode BlacKernel is back! (Although a lot more loopy than I remember being while recording)</p>\n<p>And teaching you how to make functions, for loops, and match statements in Rust.</p>\n<p>Points covered in this episode:</p>\n<ul>\n<li>isize and usize number types in rust</li>\n<li>fn (function) declarations with arguments and return types</li>\n<li>match statements both bare and part of variable assignment</li>\n<li>for _ in 1..x loops. That is for loops over an iterator variable across a range of integers.<br />\n</li>\n</ul>\n<p>Email: izzyleibowitz@pm.me<br />\nMastodon: <a href=\"https://nixnet.social/BlacKernel\" class=\"uri\">https://nixnet.social/BlacKernel</a></p>\n',396,25,1,'CC-BY-SA','rust, for loop, for, match, functions, loops, usize, isize, programming, tutorial',0,0,1),
(3697,'2022-10-04','Mis-information, Dis-information, and Fake News. You are a product and target for all of it.',4297,'Brady and I discuss Mis-information, Dis-information, and Fake News.','<p>Brady and I discuss Mis-information, Dis-information, and Fake News. We discuss what it is, how it is used, and we are all a product and target for all of it. We discuss ways to avoid deception which leads to a philosophical discussion about truth, morals, and ethics. Brady takes a moment on the couch discussing how understanding the matrix for what it is can affect you on a personal level.</p>\n<h2 id=\"links-and-resources\">Links and Resources:</h2>\n<p>Definitely NOT real NEWS, but FUN to read:</p>\n<ul>\n<li><p>The Onion <a href=\"https://www.theonion.com/\" class=\"uri\">https://www.theonion.com/</a></p></li>\n<li><p>The Weekly World News <a href=\"https://weeklyworldnews.com/\" class=\"uri\">https://weeklyworldnews.com/</a></p></li>\n<li><p>Mad Magazine <a href=\"https://www.madmagazine.com/\" class=\"uri\">https://www.madmagazine.com/</a></p></li>\n</ul>\n<h2 id=\"fight-disinformation-with-fact-checking-sites\">Fight Disinformation with Fact Checking Sites:</h2>\n<ul>\n<li><p>Snopes<br />\n(almost everything including politics, history, science, and technology)<br />\nSnopes is one of the oldest fact-checking websites on the internet and it was started by David and Barbara Mikkelson in 1994. Apart from its huge repository of debunked stories, Snopes still tackles fake news and misinformation in a smart way. As fake information is getting more sophisticated in its language and tone, users are easily falling for it. So to counter the misinformation, Snopes offers detailed explanations from genuine sources (like WHO, CDC) and sets the facts straight.<br />\n<a href=\"https://www.snopes.com/\" class=\"uri\">https://www.snopes.com/</a></p></li>\n<li><p>Politifact<br />\n(all about fact-checking political claims)<br />\nPolitiFact is one of the largest political fact-checking newsrooms in the US and for its impressive work in 2008, the website was awarded Pulitzer Prize for National Reporting. It&#x2019;s run by the prestigious Poynter Institute (founder of International Fact-Checking Network) and reporters from the independent Tampa Bay Times.<br />\n<a href=\"https://www.politifact.com/\" class=\"uri\">https://www.politifact.com/</a></p></li>\n<li><p>FactCheck.org<br />\n(political claims, rhetorics, deception, and lies)<br />\nPrimarily deals with political claims and rhetorics. However, the website also tries to bring accountability to public officials by exposing deception and their lies. It&#x2019;s an attempt to bring more factual accuracy to the public discourse which is not just limited to politics, but also extends to TV ads, speeches, interviews, and news releases.<br />\n<a href=\"https://www.factcheck.org/fake-news/\" class=\"uri\">https://www.factcheck.org/fake-news/</a></p></li>\n<li><p>ProPublica<br />\n(deep dive for hidden truth)<br />\nProPublica is an independent investigative online newsroom. More than a fact-checking website, but a portal where you can dive deep and find the hidden truth. For its far-reaching work in the public interest, ProPublica has been awarded several Pulitzer Prizes for public service, explanatory reporting, national reporting, and investigative journalism. As for the coverage, it goes beyond politics and looks into healthcare, education, finances, criminal justice and more. The website is funded by the Knight Foundation, MacArthur Foundation, Ford Foundation, and other few philanthropic institutes.<br />\n<a href=\"https://www.propublica.org/\" class=\"uri\">https://www.propublica.org/</a></p></li>\n<li><p>OpenSecrets<br />\n(politics)<br />\nOpenSecrets finds the effects of money lobbying into electoral politics and fact-checks political speeches and claims. It tracks how a politician is being funded and who are the firms that are funneling money into politics. It was started by the Center for Responsive Politics (CSR) way back in 1983. And as a result of the long operation, OpenSec
(3706,'2022-10-17','The Future of Technology',3054,'A philosophical look at the future of technology.','<p>Brady and I discuss people and technology; where it was, where we are, and where we are going. Put on your philosophy hats!</p>\n<h3 id=\"podcast-stuff\">Podcast Stuff:</h3>\n<ul>\n<li><p>Robert actually had an Atari 1200 XL:<br />\n<a href=\"http://oldcomputers.net/atari-1200xl.html\" class=\"uri\">http://oldcomputers.net/atari-1200xl.html</a></p></li>\n<li><p>Ray Ban Smart Glasses:<br />\n<a href=\"https://www.ray-ban.com/usa/electronics/RW4002%20UNISEX%20ray-ban%20stories%20%7C%20wayfarer-shiny%20black/8056597489478?fbclid=IwAR08oSxzKyvMfsPYKa1PtvVkda6rJtAlAyJ24pDFSCo03tIqaIxDnVC9IWw&amp;cid=PM-SBI_080622-1.US-RayBanStories-EN-B-Related-Exact_RayBan_Related_ray+ban+camera+glasses&amp;gclid=c6b5a6ec15e015a94bb7c5f91c52a69c&amp;gclsrc=3p.ds&amp;msclkid=c6b5a6ec15e015a94bb7c5f91c52a69c&amp;utm_source=bing&amp;utm_medium=cpc&amp;utm_campaign=1.US-RayBanStories-EN-B-Related-Exact&amp;utm_term=ray%20ban%20camera%20glasses&amp;utm_content=RayBan_Related\" class=\"uri\">https://www.ray-ban.com/usa/electronics/RW4002%20UNISEX%20ray-ban%20stories%20%7C%20wayfarer-shiny%20black/8056597489478?fbclid=IwAR08oSxzKyvMfsPYKa1PtvVkda6rJtAlAyJ24pDFSCo03tIqaIxDnVC9IWw&amp;cid=PM-SBI_080622-1.US-RayBanStories-EN-B-Related-Exact_RayBan_Related_ray+ban+camera+glasses&amp;gclid=c6b5a6ec15e015a94bb7c5f91c52a69c&amp;gclsrc=3p.ds&amp;msclkid=c6b5a6ec15e015a94bb7c5f91c52a69c&amp;utm_source=bing&amp;utm_medium=cpc&amp;utm_campaign=1.US-RayBanStories-EN-B-Related-Exact&amp;utm_term=ray%20ban%20camera%20glasses&amp;utm_content=RayBan_Related</a></p></li>\n<li><p>Google Glass is Back:<br />\n<a href=\"https://www.google.com/glass/start/\" class=\"uri\">https://www.google.com/glass/start/</a></p></li>\n<li><p>Microsoft Research:<br />\n<a href=\"https://www.microsoft.com/en-us/research/about-microsoft-research/\" class=\"uri\">https://www.microsoft.com/en-us/research/about-microsoft-research/</a></p></li>\n<li><p>Microsoft Open Source Blog:<br />\n<a href=\"https://cloudblogs.microsoft.com/opensource/\" class=\"uri\">https://cloudblogs.microsoft.com/opensource/</a></p></li>\n<li><p>Microsoft Open Source Hardware:<br />\n<a href=\"https://azure.microsoft.com/en-us/global-infrastructure/hardware-innovation/\" class=\"uri\">https://azure.microsoft.com/en-us/global-infrastructure/hardware-innovation/</a></p></li>\n</ul>\n<h3 id=\"picks-of-the-week\">Picks of the Week:</h3>\n<h4 id=\"bradys-picks\">Brady\'s Picks</h4>\n<ul>\n<li>Defeating the Hacker: A non-technical guide to computer security by Robert Schifreen<br />\n<a href=\"https://www.amazon.com/Defeating-Hacker-non-technical-computer-security/dp/0470025557\" class=\"uri\">https://www.amazon.com/Defeating-Hacker-non-technical-computer-security/dp/0470025557</a></li>\n</ul>\n<h4 id=\"roberts-pick\">Robert\'s Pick:</h4>\n<ul>\n<li>The Satanic Verses by Salman Rushdie<br />\n<a href=\"https://en.wikipedia.org/wiki/The_Satanic_Verses\" class=\"uri\">https://en.wikipedia.org/wiki/The_Satanic_Verses</a></li>\n</ul>\n<h3 id=\"cool-shit\">Cool Shit:</h3>\n<ul>\n<li>Realtime Global Cyber Attack Map<br />\n<a href=\"https://threatmap.checkpoint.com/\" class=\"uri\">https://threatmap.checkpoint.com/</a></li>\n</ul>\n',405,74,1,'CC-BY-SA','cybersecurity,security,EvilSteve,socialmedia,technology,philosophy,future',0,0,1),
(3716,'2022-10-31','How I got in to Tech',531,'My journey in to technology','<p>I share my story about how I got in to technology.</p>\n',405,29,1,'CC-BY-SA','career,technology',0,0,1),
(3683,'2022-09-14','Add a favourite to OSMAnd',97,'Ken keeps forgetting how to add a favourite to OSMAnd','<p>I keep forgetting how to add a favorite to OSMAnd, so I\'ve recorded this show to remind myself how to do it.</p>\n\n<ol>\n<li>Search for a location, either in the Hamburger Menu or clicking the Magnifying glass icon</li>\n<li>Type in your address and select the place</li>\n<li>The screen will appear with a Locator Pin</li>\n<li>On the bottom click Add and Save</li>\n<li>You can optionally include them in a group</li>\n</ol>\n\n<p><img src=\"/eps/hpr3683/01.jpg\" alt=\"Click Search\" /></p>\n<p><img src=\"/eps/hpr3683/02.jpg\" alt=\"Or Menu Search\" /></p>\n<p><img src=\"/eps/hpr3683/03.jpg\" alt=\"Type address eg Amsterdam Centraal\" /></p>\n<p><img src=\"/eps/hpr3683/04.jpg\" alt=\"Locate address, and click Add\" /></p>\n<p><img src=\"/eps/hpr3683/05.jpg\" alt=\"Click Save\" /></p>\n\n<p>\nAbout <a href=\"https://en.wikipedia.org/wiki/OsmAnd\">https://en.wikipedia.org/wiki/OsmAnd</a><br />\n<em>\nOsmAnd is a map and navigation app for Android and iOS. It uses the OpenStreetMap map database for its primary displays, but is an independent app not endorsed by the OpenStreetMap Foundation</em>\n</p>\n<h3>Links</h3>\n<ul>\n<li><a href=\"https://osmand.net/\">https://osmand.net/</a></li>\n<li><a href=\"https://f-droid.org/en/packages/net.osmand.plus/\">https://f-droid.org/en/packages/net.osmand.plus/\"</a></li>\n</ul>\n\n\n',30,0,0,'CC-BY-SA','OSMAnd, OSM, Open Street Maps, Android',0,0,1),
(3685,'2022-09-16','Budget and an Android app',122,'Zoho docs for budgeting','<h2 id=\"zoho-sheets\">Zoho sheets</h2>\n<p><a href=\"https://sheet.zoho.com\" title=\"Zoho Spreadsheet\">Zoho Sheets</a></p>\n<h2 id=\"zoho-android-app\">Zoho Android app</h2>\n<p><a href=\"https://play.google.com/store/apps/details?id=com.zoho.sheet.android&amp;gl=US\" title=\"Zoho Sheets - Android app\">Zoho Sheets - Android app</a></p>\n<h4 id=\"places\">Places</h4>\n<ul>\n<li>Dropbox.com</li>\n<li>Box.com</li>\n</ul>\n<p><a href=\"https://hackerpublicradio.org/eps/hpr3685/Budget_sample_2022-9-9.ods\" title=\"Budget sample in LibreOffice dated 9-9-2022\">Budget sample from LibreOffice</a></p>\n',318,0,0,'CC-BY-SA','Budget, spreadsheet, LibreOffice, Android',0,0,1),
(3684,'2022-09-15','Wake on Lan',602,'Wake on Lan mother board feature','<h2 id=\"wakeonlan-wol\">WakeOnLAN (WOL)</h2>\n<p>From <a href=\"https://wiki.wireshark.org/WakeOnLAN#:~:text=WakeOnLAN%20is%20the%20protocol%20name%20given%20to%20the,automatically%20powered-down%20because%20of%20its%20power%20management%20features\">wiki.wireshark.org</a></p>\n<blockquote>\n<p><em>WakeOnLAN is the protocol name given to the so-called Magic Packet technology, developed by AMD and Hewlett Packard for remotely waking up a remote host that may have been automatically powered-down because of its power management features. Although power management allows companies and individuals to cut power usage costs, it presents a problem for IT departments especially in being able to quickly and efficiently remotely manage PC\'s, especially during off-hours operation when those PC\'s are most likely to be in a suspended or standby state, assuming power management features are enabled.</em></p>\n</blockquote>\n',129,0,0,'CC-BY-SA','Wake on Lan, wol',0,0,1),
(3686,'2022-09-19',' Followup for HPR3675: Clarifications on the path traversal bug',2335,'installing a plan 9 cpu+web server, namespaces to the rescue, web app security models and more','<h1 id=\"followup-for-hpr3675-installing-a-plan-9-cpu-server-plan-9-web-server-clarifications-on-the-path-traversal-bug-private-namespaces-to-the-rescue-web-application-security-models\">Followup for HPR3675: Installing a Plan 9 CPU server, Plan 9 web server, clarifications on the path traversal bug, private namespaces to the rescue, web application security models</h1>\n<hr />\n<h1 id=\"installing-plan-9-with-libvirt\">Installing Plan 9 with libvirt</h1>\n<pre class=\"sh\"><code>[root@localhost]# virt-install -n 9pwn \\\n--description &quot;pre-patched rc-httpd&quot; \\\n--osinfo=unknown \\\n--memory=4096 \\\n--vcpus=4 \\\n--disk path=/var/lib/libvirt/images/9pwn.qcows,bus=virtio,size=10 \\\n--graphics spice \\\n--cdrom ~/Downloads/9front-8593.acc504c319a4b4188479cfa602e40cb6851c0528.amd64.iso \\\n--network bridge=virbr0\n\n[root@localhost]# virt-viewer 9pwn\n</code></pre>\n<p>How I find the IP of my guests and add it to my /etc/hosts for faster access.</p>\n<pre class=\"sh\"><code>[root@localhost]# virsh domiflist 9pwn\n Interface Type Source Model MAC\n----------------------------------------------------------\n vnet3 bridge virbr0 e1000 52:54:00:43:8a:50\n\n[root@localhost]# arp -e | grep 52:54:00:43:8a:50\n192.168.122.20 ether 52:54:00:43:8a:50 C virbr0\n\n[root@localhost]# echo cirno 192.168.122.20 &gt;&gt; /etc/hosts\n</code></pre>\n<p>Proceed as normal with a 9 installation</p>\n<hr />\n<h1 id=\"set-up-cpu-server-with-rc-httpd-and-werc\">Set up CPU server with rc-httpd and werc</h1>\n<p><a href=\"https://0x19.org/posts/2022-09-03.php\">I wrote about configuring a CPU server</a> and also mirrored the notes at <a href=\"https://9.0x19.org/9notes/9front-web-server\">my 9front webserver containing a mirror of my plan 9 related things (using self-signed certs but it\'s fine)</a> I\'ve snarfed+pasted it here for the sake of completeness and modified it slightly so that it\'s more accessible for other people. I\'ve also revised these notes so that they\'re less-broken. I may or may not update them.</p>\n<p>I\'m using <a href=\"https://9front.org\">9front</a> for this. It has more secure authentication protocols when it comes to remotely connecting.</p>\n<h2 id=\"configuring-a-cpu-server\">Configuring a CPU server</h2>\n<h3 id=\"add-users-to-file-server\">Add users to file server</h3>\n<p>Connect to the file server and add a new user called <code>&lt;ExampleUser&gt;</code> who is in the groups <code>sys</code>, <code>adm</code>, and <code>upas</code></p>\n<pre class=\"sh\"><code>term% con -C /srv/cwfs.cmd\nnewuser &lt;ExampleUser&gt;\nnewuser sys +&lt;ExampleUser&gt;\nnewuser adm +&lt;ExampleUser&gt;\nnewuser upas +&lt;ExampleUser&gt;\n</code></pre>\n<p>Reboot and set <code>user=&lt;ExampleUser&gt;</code> when prompted at boot time.</p>\n<h3 id=\"configure-users-environment\">Configure user\'s environment</h3>\n<p>This is similar to <code>cp -r /etc/skel /home/&lt;ExampleUser&gt;</code> on a UNIX system.</p>\n<pre class=\"sh\"><code>/sys/lib/newuser\n</code></pre>\n<h3 id=\"configure-headless-booting\">Configure headless booting</h3>\n<p>Mount the boot partition:</p>\n<pre class=\"sh\"><code>term% 9fs 9fat\n</code></pre>\n<p>edit the boot config, <code>/n/9fat/plan9.ini</code></p>\n<pre class=\"sh\"><code>bootfile=9pc64\nnobootprompt=local!/dev/sdC0/fscache\nmouseport=ps2\nmonitor=vesa\nvgasize=1024x768x14\nuser=&lt;ExampleUser&gt;\ntiltscreen=none\nservice=cpu\n</code></pre>\n<h3 id=\"add-hostowner-info-to-nvram\">Add hostowner info to nvram</h3>\n<p>Hostowner is similar to root but not quite. In our configuration, hostowner is close to being equivalent to a root user. The <code>user=</code> line in our bootprompt sets the hostowner.</p>\n<p>For automatic booting (aka not entering a password at the physical machine every time we power it in), we need to add the hostowner\'s key t
(3695,'2022-09-30','How I watch youtube with newsboat',663,'Using youtube\'s channel RSS feeds to watch youtube from the command line','<h1 id=\"how-i-watch-youtube-with-newsboat\">How I watch youtube with <code>newsboat</code></h1>\n<p>I find that the youtube web ui is designed to keep users on the site by feeding them an unending stream of information. Bright colors, distracting thumbnails, peanut galleries, etc. I prefer to consume my videos in the same way I consume everything else: via RSS.</p>\n<p>RSS is my favorite way of aggregating things that other people have made because it allows me, the user, to interact with their things</p>\n<p>The only dependencies not on a standard UNIX system are <code>newsboat</code> and a video player. I also use <code>yt-dlp</code> to download videos for later viewing. I like <code>mpv</code> but you can substitute your own.</p>\n<pre><code>$ sudo $pkgmrg install newsboat mpv yt-dlp</code></pre>\n<h1 id=\"getting-rss-feeds-from-youtube\">Getting RSS feeds from youtube</h1>\n<p>Youtube (currently) provides RSS feeds for channels.</p>\n<h2 id=\"finding-youtube-channel-id\">Finding Youtube channel ID</h2>\n<p>Sometimes channels have vanity URLs that can make it difficult to find the channel ID. Other times, the URL contains the channel ID. All youtube channel IDs start with the string <code>UC</code> so we can easily grep for them.</p>\n<pre><code>$ curl https://www.youtube.com/c/RMCRetro | grep --color &quot;href=\\&quot;https://www.youtube.com/channel/UC\\&quot;&quot;\n[ lots of nonsense ]\nhref=&quot;https://www.youtube.com/channel/UCLEoyoOKZK0idGqSc6Pi23w&quot;\n[ lots of nonsense ]</code></pre>\n<p>In order to turn this channel ID into something useful, we create the following URL:</p>\n<pre><code>https://www.youtube.com/feeds/videos.xml?channel_id=UCLEoyoOKZK0idGqSc6Pi23w</code></pre>\n<p><a href=\"https://takeout.google.com/\">Google takeout can also be used to export youtube subscriptions.</a></p>\n<p>The export format is a CSV that contains the channel IDs for all of our subscriptions.</p>\n<pre><code>Channel Id,Channel Url,Channel Title\nUCLEoyoOKZK0idGqSc6Pi23w,http://www.youtube.com/channel/UCLEoyoOKZK0idGqSc6Pi23w,RMC - The Cave</code></pre>\n<h1 id=\"newsboat-url-list\">Newsboat url list</h1>\n<p>Newsboat reads its list of URLs from <code>~/.config/newsboat/urls</code>. Every url we add to this list will be automaticlly fetched. You can make separate URL lists for your list of videos and list of standard text based RSS feeds</p>\n<p>If you have an exported CSV, you can easily modify it so that newsboat will accept it as a list of URLs by deleting row 1, column 1+comma, and replacing the comma between the URL and channel name with a tab character. Doing a <code>sed \'s/channel\\//feeds\\/videos.xml?channel_id=/g\'</code> on the file is an easy way to replace the website URL with the feed url. Newsboat only reads the first field of every row so the channel name can be kept for easier subscription management.</p>\n<pre><code>http://www.youtube.com/feeds/videos.xml?channel_id=UCLEoyoOKZK0idGqSc6Pi23w RMC - The Cave</code></pre>\n<h1 id=\"newsboat-config\">Newsboat config</h1>\n<p>In order to play videos, we need to add some macros to the newsboat config file at <code>~/.config/newsboat/config</code></p>\n<p>Mine looks like this.</p>\n<pre><code># load URLS on launch\nauto-reload yes\n\n# vim binds\nbind-key j down\nbind-key k up\nbind-key j next articlelist\nbind-key k prev articlelist\nbind-key J next-feed articlelist\nbind-key K prev-feed articlelist\nbind-key G end\nbind-key g home\nbind-key d pagedown\nbind-key u pageup\nbind-key l open\nbind-key h quit\nbind-key a toggle-article-read\nbind-key n next-unread\nbind-key N prev-unread\nbind-key D pb-download\nbind-key U bashow-urls\nbind-key x pb-delete\n\n# macro setup\nbrowser linkhandler\nmacro , open-in-browser\n\n# launch video player\nmacro v set browser &quot;setsid -f mpv&quot; ; open-in-browser ; set browser linkhandler\n\n# download video\nmacro d set browser &quot;yt-dlp&quot;; open-in-browser ; set brows
(3956,'2023-10-02','HPR Community News for September 2023',2470,'HPR Volunteers talk about shows released and comments posted in September 2023','<style>\ntable td.shrink {\n white-space:nowrap\n}\nhr.thin {\n border: 0;\n height: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n border-bottom: 1px solid rgba(255, 255, 255, 0.3);\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nWelcome to our new hosts: <br />\n\n <a href=\"https://hackerpublicradio.org/correspondents/0423.html\" target=\"_blank\">Noodlez</a>, \n <a href=\"https://hackerpublicradio.org/correspondents/0424.html\" target=\"_blank\">hobs</a>.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3935/index.html\" target=\"_blank\">3935</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-09-01</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3935/index.html\" target=\"_blank\">Server build retrospective</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0382.html\" target=\"_blank\">Daniel Persson</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3936/index.html\" target=\"_blank\">3936</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-09-04</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3936/index.html\" target=\"_blank\">HPR Community News for August 2023</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3937/index.html\" target=\"_blank\">3937</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-09-05</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3937/index.html\" target=\"_blank\">Adventures in Pi-Hole</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0423.html\" target=\"_blank\">Noodlez</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3938/index.html\" target=\"_blank\">3938</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-09-06</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3938/index.html\" target=\"_blank\">An open directory of web audio stream</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3939/index.html\" target=\"_blank\">3939</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-09-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3939/index.html\" target=\"_blank\">How I got into tech and hacking</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0149.html\" target=\"_blank\">Trixter</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3940/index.html\" target=\"_blank\">3940</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-09-08</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3940/index.html\" target=\"_blank\">Equipment Maintenance</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0198.html\" target=\"_blank\">Ahuka</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3941/index.html\" target=\"_blank\">3941</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-09-11</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3941/index.html\" target=\"_blank\">Interview with Yosef Kerzner</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0036.html\" target=\"_blank\">operat0r</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3942/index.html\" target=\"_blank\">3942</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-09-12</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3942/index.html\" target=\"_blank\">RE: How to make friends.</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0391.html\" target=\"_blank\">Some G
(3691,'2022-09-26','Starship.rs the best prompt I don\'t use',1529,'Bash prompts','<p>Here\'s the snippets I use in my .bashrc file.</p>\n\n<pre><code>RED=&#39;&#92;033&#91;0;31m&#39;\nPLAIN=&#39;&#92;033&#91;0m&#39; # No Color\nWHITE=&#39;&#92;e&#91;97m&#39;\nGREEN=&#39;&#92;e&#91;0;32m&#39;\nPURPLE=&#39;&#92;e&#91;35;35m&#39;\nCYAN=&#39;&#92;e&#91;36;36m&#39;\n\nJAVA_VERSION=`java --version | head -1 | cut -f2 -d&#39; &#39;`\n\nIP=&#36;&#40;hostname -I | awk &#39;{print &#36;1;}&#39; &#41;\nsource &#47;usr&#47;doc&#47;git-2.35.1&#47;contrib&#47;completion&#47;git-prompt.sh\nPS1=&#39;&#92;! &#91;&#92;&#91;&#39;&#36;GREEN&#39;&#92;&#93;&#36;&#40;hostname -s&#41; &#36;IP&#92;&#91;&#39;&#36;PLAIN&#39;&#92;&#93;&#93; &#91;&#92;&#91;&#39;&#36;CYAN&#39;&#92;&#93;&#36;&#40;pwd -P&#41;&#92;&#91;&#39;&#36;PLAIN&#39;&#92;&#93;&#93; &#36;&#40;__git_ps1 &#34;&#91;&#92;&#91;&#39;&#36;PURPLE&#39;&#92;&#93; %s&#92;&#91;&#39;&#36;PLAIN&#39;&#92;&#93;&#93;&#34;&#41;&#91;☕ &#39;&#36;JAVA_VERSION&#39;&#93;&#92;n&#92;&#91;&#39;&#36;GREEN&#39;&#92;&#93;&#36;&#92;&#91;&#39;&#36;PLAIN&#39;&#92;&#93; &#39;</code></pre>\n',78,0,0,'CC-BY-SA','bash,ps1,terminal,linux',0,0,1),
(3698,'2022-10-05','Spectrogram',949,'Edit audio as a spectrogram','<p>Here\'s a view of my voice. The bright spots at the bottom of the image are my voice, and the bright burst at the top is a click caused by saliva.</p>\n<img src=\"https://i.imgur.com/CmL49Ne.png\" />\n<p>Here\'s me inhaling. Notice how sparse this is compared to my voice.</p>\n<img src=\"https://i.imgur.com/DXGrh5u.png\" />\n<p>One thing I fail to mention in the episode is that there are network monitors that render network activity as a spectrogram, too. If you don\'t have a <a href=\"https://www.metageek.com/wi-spy/\" target=\"_blank\">Wi-Spy</a>, it\'s worth looking at.</p>\n',78,0,0,'CC-BY-SA','audio',0,0,1),
(3726,'2022-11-14','Breaches ever reaching',251,'A short episode about the reaching effects of breaches and forgotten accounts','<p>A short episode about the reaching effects of breaches and accounts you may have forgotten about.</p>\n<ul>\n<li><p>New Marriot Breach:<br />\n<a href=\"https://techcrunch.com/2022/07/06/marriott-breach-again/\" class=\"uri\">https://techcrunch.com/2022/07/06/marriott-breach-again/</a></p></li>\n<li><p>Privacy Fix: How to Find Old Online Accounts from Consumer Reports:<br />\n<a href=\"https://www.consumerreports.org/digital-security/how-to-find-old-online-accounts-a1266305698/\" class=\"uri\">https://www.consumerreports.org/digital-security/how-to-find-old-online-accounts-a1266305698/</a></p></li>\n<li><p>Has you email or phone number been in a breach?<br />\n<a href=\"https://haveibeenpwned.com/\" class=\"uri\">https://haveibeenpwned.com/</a></p></li>\n<li><p>Cool Shit:</p>\n<ul>\n<li>Realtime Global Cyber Attack Map<br />\n<a href=\"https://threatmap.checkpoint.com/\" class=\"uri\">https://threatmap.checkpoint.com/</a></li>\n</ul></li>\n</ul>\n',405,74,1,'CC-BY-SA','cybersecurity,security,EvilSteve,breach,data reduction,privacy',0,0,1),
(3692,'2022-09-27','What is a real hacker?',1840,'I discuss the issue of what makes a real hacker with my my son','<p>In this episode, I discuss the ever prominent question of \"What is a real hacker?\" in explicitly explicit language. So enjoy the discussion and give me your thoughts. This topic always gets peoples feathers ruffled, so agree, disagree? Leave your thoughts or post your own segment on HPR!</p>\n',405,74,1,'CC-BY-SA','cybersecurity,security,EvilSteve,hacking,hacker',0,0,1),
(3693,'2022-09-28','Fixing the automatic cutoff mechanism to an electric mower',274,'Rho`n describes fixing the safety mechanism to his electric mower','<h1>Synopsis</h1>\n\n<p>In this episode, Rho`n fixes the safety mechanism to his Neuton electric mower. Recently the automatic cutoff mechanism was getting finicky. Needing to pull the safety bar back just the correct amount to keep the mower running. Often needing to keep hands on both the left and right sides of the safety bar to prevent the mower from turning off.</p>\n<p>After opening up the housing holding the safety bars, it appeared that the tension spring which causes the bars to disengage from the switch when the bars are released was loose. This would allow the prong that the bars push into the switch contact to slip off the contact and slide overtop of the switch&mdash;turning off the mower. After tightening the coils and putting it back in place, the issue was resolved.</p>\n<style>\ndiv#figures {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n justify-content: center;\n}\ndiv#figures figcaption { max-width: 490px; }\ndiv#figures img { max-width: 50vw; padding-bottom: 0.15em }\n</style>\n<div id=\"figures\">\n<figure>\n <a href=\"https://hackerpublicradio.org/eps/hpr3693/mower01-lg.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3693/mower01-sm.jpg\"\n alt=\"Neuton electric mower\"></a>\n <br>\n <figcaption>Neuton electric mower with handle collapsed showing the bottom of the safety handle housing.</figcaption>\n</figure>\n<figure>\n <a href=\"https://hackerpublicradio.org/eps/hpr3693/mower02-lg.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3693/mower02-sm.jpg\"\n alt=\"Internal view of safety mechanism\"></a>\n <br>\n <figcaption>Internal view of the automatic cutoff mechanism.</figcaption>\n</figure>\n</div>\n\n<h1>Attribution</h1>\n\n<p>The <a href=\"https://freesound.org/\">transition sound used between audio clips is found on freesound.org</a>:<br>\n<a href=\"https://freesound.org/people/DanJFilms/sounds/529064/\">Name: Harp Transition Music Cue</a><br>\n<a href=\"https://freesound.org/people/DanJFilms/\">Author: DanJFilms</a><br>\n<a href=\"http://creativecommons.org/publicdomain/zero/1.0/\">License: Creative Commons Zero</a></p>\n\n',293,0,0,'CC-BY-SA','electric lawnmower,lawnmower,repair',0,0,1),
(3694,'2022-09-29','Robo Tripping Ravelords of the Apocalypse',616,'Organic Synthesis of Human and Machine Occurs Post Cosmic Event ','\r\n<p>In the aftermath of the cosmic event that destroyed all computers below a certain die size, more robust machines emerge from the ashes.</p>\r\n\r\n<p><a href=\"/eps/hpr3694/3694.jpg\"><img src=\"/eps/hpr3694/3694-thumb.jpg\" alt=\"Sketch of the machine\" /></a></p>\r\n',401,0,0,'CC-BY-SA','beam,righttorepair,robots,mechatronics,apocalypse',0,0,1),
(3699,'2022-10-06','Old and new videogames/board games with guest binrc',2552,'We will dive into our favorite games or others with interesting mechanics.','<h1 id=\"videogames\">Videogames</h1>\n<p>Cruelty Squad on Steam <a href=\"https://store.steampowered.com/app/1388770/Cruelty_Squad/\">Steam</a></p>\n<p>Half-Life <a href=\"https://store.steampowered.com/app/70/HalfLife/\">Steam</a></p>\n<p>Half-Life 2 <a href=\"https://store.steampowered.com/app/220/HalfLife_2/\">Steam</a></p>\n<p>Deus Ex <a href=\"https://store.steampowered.com/app/6910/Deus_Ex_Game_of_the_Year_Edition/\">Steam</a>, <a href=\"https://www.gog.com/en/game/deus_ex\">GOG</a></p>\n<p>Fallout 3 <a href=\"https://store.steampowered.com/app/22300/Fallout_3/\">Steam</a>, <a href=\"https://www.gog.com/en/game/fallout_3_game_of_the_year_edition\">GOG</a></p>\n<p>Slay the Spire <a href=\"https://store.steampowered.com/app/646570/Slay_the_Spire/\">Steam</a>, <a href=\"https://www.gog.com/game/slay_the_spire\">GOG</a></p>\n<p>Crypt of the NecroDancer <a href=\"https://store.steampowered.com/app/247080/Crypt_of_the_NecroDancer/\">Steam</a>, <a href=\"https://www.gog.com/game/crypt_of_the_necrodancer\">GOG</a></p>\n<p>Spin the bottle Bumpie\'s party (Nintendo WiiU) <a href=\"http://spinthebottlethegame.com/\">website</a></p>\n<p>Affordable space adventures (Nintendo WiiU) <a href=\"http://affordablespaceadventures.com/\">website</a></p>\n<p>Old School Runescape <a href=\"https://play.runescape.com/oldschool\">website</a>, <a href=\"https://runelite.net/\">open-source client</a></p>\n<p>Runescape music: Sea shanty 2 <a href=\"https://www.youtube.com/watch?v=BJhF0L7pfo8\">original</a>, <a href=\"https://www.youtube.com/watch?v=bfcZacwnVCk\">remix</a></p>\n<p>Life is strange <a href=\"https://store.steampowered.com/app/319630/Life_is_Strange__Episode_1/\">Steam</a>, <a href=\"https://www.gog.com/game/life_is_strange_complete_season\">GOG</a></p>\n<p>Grim Fandango <a href=\"https://store.steampowered.com/app/316790/Grim_Fandango_Remastered/\">Steam</a></p>\n<h2 id=\"linux-native-games\">Linux-native games</h2>\n<p>These games can be found in most linux distro repositories.</p>\n<p>Endless Sky <a href=\"https://endless-sky.github.io/\">website</a>, <a href=\"https://store.steampowered.com/app/404410/Endless_Sky/\">Steam</a></p>\n<p>Powermanga <a href=\"https://linux.tlk.fr/games/Powermanga/\">website</a></p>\n<p>SuperTuxKart <a href=\"https://supertuxkart.net/Main_Page\">website</a></p>\n<p>Xbill <a href=\"https://en.wikipedia.org/wiki/XBill\">Wikipedia</a>, <a href=\"http://www.xbill.org/\">website</a></p>\n<h2 id=\"retrogame\">Retrogame</h2>\n<p>Banjo Kazooie (Nintendo 64) <a href=\"https://en.wikipedia.org/wiki/Banjo-Kazooie\">Wikipedia</a></p>\n<p>Ducktales (NES) <a href=\"https://en.wikipedia.org/wiki/DuckTales_(video_game)\">Wikipedia</a></p>\n<h1 id=\"board-games\">Board Games</h1>\n<p>Labyrinth <a href=\"https://www.ravensburger.us/products/games/award-winning-games/labyrinth-26448/index.html\">website</a></p>\n<p>Tokaido <a href=\"https://funforge.fr/game/en/tokaido\">website</a>, <a href=\"https://store.steampowered.com/app/648750/Tokaido/\">Steam</a></p>\n<p>Wingspan <a href=\"https://stonemaiergames.com/games/wingspan/\">website</a>, <a href=\"https://store.steampowered.com/app/1054490/Wingspan/\">Steam</a></p>\n',407,0,1,'CC-BY-SA','games,guest,videogames,board games',0,0,1),
(3701,'2022-10-10','ReiserFS - the file system of the future',1171,'The history and future of ReiserFS, its involvement with DARPA, a sordid murder and Kernel politics','<ul>\n<li>ReiserFS &#x2013; The file system of the future</li>\n<li>Intro: Welcome to HPR; What I do; How I got in to computing; How I got in to Slackware and discovered ReiserFS</li>\n<li>A history of ReiserFS: Previous episode; Brief recap; A brief history; Lessons learned and experiences gained; Some tools to use</li>\n<li>Outro: Thanks</li>\n</ul>\n\n<h3>ReiserFS</h3>\n<em><a href=\"https://en.wikipedia.org/wiki/ReiserFS\">From Wikipedia, the free encyclopedia</a></em>\n\n<p>\nReiserFS is a general-purpose, journaling file system initially designed and implemented by a team at Namesys led by Hans Reiser and licensed under GPLv2. Introduced in version 2.4.1 of the Linux kernel, it was the first journaling file system to be included in the standard kernel. ReiserFS was the default file system in Novell\'s SUSE Linux Enterprise until Novell decided to move to ext3 on October 12, 2006, for future releases.<br />\n\nNamesys considered ReiserFS version 3.6 which introduced a new on-disk format allowing bigger filesizes, now occasionally referred to as Reiser3, as stable and feature-complete and, with the exception of security updates and critical bug fixes, ceased development on it to concentrate on its successor, Reiser4. Namesys went out of business in 2008 after Reiser\'s conviction for murder. The product is now maintained as open source by volunteers. The reiserfsprogs 3.6.27 were released on 25 July 2017.<br />\n\nReiserFS is currently supported on Linux without quota support. It has been discussed for removal from the Linux kernel since early 2022 due to a lack of maintenance upstream, and technical issues inherent to the filesystem, such as the fact it suffers from the year 2038 problem; it was deprecated in Linux 5.18, with removal planned for 2025.\n</p>\n',411,0,0,'CC-BY-SA','hans reiser, reiserfs, reiser4, reiser5, slackware, linux, intro, darpa, acorn, amiga, commodore',0,0,1),
(3702,'2022-10-11','Easter Ogg',3722,'From Scotland, another chat between MrX and Dave Morriss','<article>\n<h2 id=\"introduction\">Introduction</h2>\n<p>Hosts:</p>\n<ul>\n<li><a href=\"https://hackerpublicradio.org/correspondents/0201.html\">MrX</a></li>\n<li><a href=\"https://hackerpublicradio.org/correspondents/0225.html\">Dave Morriss</a></li>\n</ul>\n<p>We recorded this on Monday September 12<sup>th</sup> 2022. We have a list of talking points each time and <em>never</em> get through them!</p>\n<h2 id=\"topics-discussed\">Topics discussed</h2>\n<ul>\n<li>Places visited:\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Lake_District\">Lake District, England</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Loch_Lomond\">Loch Lomond, Scotland</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Stockbridge,_Edinburgh\">Stockbridge, Edinburgh</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Water_of_Leith\">Water of Leith, Edinburgh</a></li>\n</ul></li>\n</ul>\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Death_and_state_funeral_of_Elizabeth_II\">Death of Queen Elizabeth</a>\n<ul>\n<li>Died September 8<sup>th</sup> 2022 at Balmoral Castle, Scotland, aged 96</li>\n<li>State funeral 2022-09-19</li>\n</ul></li>\n</ul>\n<ul>\n<li>Navigation by phone:\n<ul>\n<li>Daves phone battery out of charge on the outskirts of Liverpool on the way to OggCamp.</li>\n<li>MrXs old Garmin GPS used weird routes when travelling</li>\n<li>Dave once met a lost driver going down Donkey Lane<a href=\"#fn1\" class=\"footnote-ref\" id=\"fnref1\" role=\"doc-noteref\"><sup>1</sup></a> to the pedestrian railway crossing due to bad GPS directions</li>\n</ul></li>\n</ul>\n<ul>\n<li>Domestic stuff:\n<ul>\n<li>Daves house has been painted. Its covered in <a href=\"https://en.wikipedia.org/wiki/Harling_(wall_finish)\"><em>harling</em></a> (aka <em>rough-cast</em> or <em>pebble-dash</em> in England) which has very sharp stones embedded in it, and this paint covers these sharp stones.</li>\n<li>Plumbing issues: stopping a dripping tap, replacing the washer, or with modern taps <em>the module</em>.</li>\n<li>Advisability of calling in a plumber!</li>\n</ul></li>\n</ul>\n<ul>\n<li>COVID-19, and related:\n<ul>\n<li>The virus has not gone, even though there are many who pretend that it has.</li>\n<li>MrX and MrsX visited <a href=\"https://en.wikipedia.org/wiki/St_Bees\">St Bees</a> for a wedding with a <a href=\"https://en.wikipedia.org/wiki/C%C3%A8ilidh\">Cèilidh</a> and MrX caught COVID there, though it wasnt serious. MrsX did not catch it!</li>\n<li>Immunology is hard to understand! Some cold-like illnesses may be caused by other corona viruses and may help protect against SARS-CoV-2.</li>\n<li>Dave has an Immunology book, but hasnt read it yet! See the links for details.</li>\n<li>MrX mentioned <a href=\"https://www.taxresearch.org.uk/Blog/\">Richard J Murphy</a> in the context of being realistic about COVID-19 and continuing to take precautions.</li>\n<li>Reluctance to go shopping. Dave makes a weekly trip, wearing a mask. MrX uses <em>Click and Collect</em>.</li>\n<li>Dave has lost weight so some of his clothes are too big. MrX has trouble finding smaller sized clothes when shopping.</li>\n</ul></li>\n</ul>\n<ul>\n<li>Old technology:\n<ul>\n<li>MrX recently found a box in his wardrobe with six <a href=\"https://en.wikipedia.org/wiki/Psion_Series_3#Psion_Series_3c\">Psion 3c Organisers</a> in it, in various states of disrepair. From these a functioning organiser was made, which is in regular use.</li>\n<li>MrX used to have a <a href=\"https://en.wikipedia.org/wiki/Psion_Series_3#Psion_Series_3a\">Psion Series 3a</a> but the hinge failed.</li>\n<li>Dave had a <a href=\"https://en.wikipedia.org/wiki/Psion_Series_5\">Psion Series 5mx</a> for a time, as did MrsX. Daves failed either because of a screen fault or a failure of the ribbon cable connecting to the screen.</li>\n<li>The Series 3c, and the later 3mx, have an Easter Egg available through a particular key sequence. This is a rendition of the anthem “Jerusalem”
(3705,'2022-10-14','The Year of the FreeBSD Desktop',4155,'I talk about configuring FreeBSD as a desktop OS and give tips for those coming from Linux','<h1 id=\"getting-an-installer\">Getting an installer</h1>\n<p><a href=\"https://www.freebsd.org/where/\">Link to FreeBSD downloads</a></p>\n<p>Choose the correct arch for your system. amd64 is probably the one you want if you know nothing about computer architectures.</p>\n<p>you will have a lot of options:</p>\n<ul>\n<li>*-bootonly.iso is a netinstall image that is for burning to a CD</li>\n<li>*-disc1.iso is a supplementary CD image for *-bootonly.iso</li>\n<li>*-dvd1.iso is a complete DVD image with extra packages</li>\n<li>*-memstick.img is a complete image for burning to a USB stick</li>\n<li>*-mini-memstick.img is a netinstall image for burning to a USB stick</li>\n</ul>\n<p>I typically download and use one of the compressed memstick images. The mini image is fine but you probably want the regular memstick image if this is the first time you\'ve ever installed FreeBSD. It alleviates some of the stress that comes with installing wireless drivers.</p>\n<p>To burn a memstick image, use the <code>disk destroyer</code> program:</p>\n<pre class=\"sh\"><code>root@fbsd# xunz FreeBSD-13.1-RELEASE-amd64-memestick.img.xz\nroot@fbsd# sudo dd if=./FreeBSD-13.1-RELEASE-amd64-memestick.img of=/dev/sdx status=progress\nroot@fbsd# sudo eject /dev/sdx\n</code></pre>\n<hr />\n<h1 id=\"initial-installation\">Initial installation</h1>\n<h2 id=\"pre-installation\">pre-installation</h2>\n<p>The standard steps for installing Linux apply:</p>\n<ol>\n<li>disable secure boot</li>\n<li>enable USB booting</li>\n<li>select boot device at startup time</li>\n</ol>\n<p>Because this is hardware specific, it\'s a homework assignment for the audience.</p>\n<h2 id=\"installation\">Installation</h2>\n<p>FreeBSD has a menu driven installer that walks the user through various steps:</p>\n<h3 id=\"1-set-keymap-leave-default-if-you-dont-know\">1. set keymap (leave default if you don\'t know)</h3>\n<h3 id=\"2-set-hostname\">2. set hostname</h3>\n<h3 id=\"3-select-sets\">3. select sets</h3>\n<p>There are many sets to choose from. New users probably want to install all of them. I typically only install the <code>lib32</code> set and add the rest later.</p>\n<h3 id=\"4-partitioning\">4. Partitioning</h3>\n<p><code>bsdinstall</code> makes it easy to partition your drives. The <code>Auto(ZFS)</code> option is probably what you want as the default UFS configuration is unjournaled.</p>\n<p>In the <code>Auto(ZFS)</code> menu, for a single hard drive installation, you want to stripe one disk. Select your hard drive.</p>\n<p>If you want full disk encryption, select the <code>Encrypt Disks</code> option.</p>\n<p>You also want to bump up the swap size to <code>ram*1.5</code> as a general rule (so, for 4g of ram you will set 6g of swap, for 8g or ram you set 12g swap). If you selected <code>Encrypt Disks</code>, you should also select <code>Encrypt Swap</code></p>\n<p>When you are done, proceed with the installation. You will gt a confirmation message asking if you want to destroy the disk(s) you selected. This is your last chance to go back.</p>\n<p>If you selected <code>Encrypt Disks</code>, you will be presented with a password prompt. This is the disk encryption password, not any user password.</p>\n<h3 id=\"5-wait-for-sets-to-install\">5. Wait for sets to install</h3>\n<h3 id=\"6-configure-root-user\">6. Configure root user</h3>\n<p>After the sets are installed, you will set a root password.</p>\n<h3 id=\"7-network-config\">7. Network Config</h3>\n<p>If your wireless card is supported, all the hard parts are already done for you. If your wireless card is not supported, you might need to plug in an ethernet cable and compile the drivers into the kernel.</p>\n<p>Select your card (<code>em*</code> is ethernet, wifi cards are named after their drivers)</p>\n<p>If you choose wifi, the installer will scan for networks and give you a menu to select one. If the network is encrypted, you will be presented with a password pr
(3704,'2022-10-13','Follow up to hpr3685 :: Budget and an Android app',104,'I add a calendar to the budget spreadsheet in LibreOffice','<h4 id=\"follow-up-on-hpr3685-budget-and-an-android-app\">Follow up on hpr3685 :: Budget and an Android app</h4>\n<p>I added a calendar from OpenOffice.org</p>\n<p><a href=\"https://templates.openoffice.org/en/template/any-year-calendar-holidays\" title=\"Open Office calendar template for any year\">OpenOffice.org Template</a></p>\n<p><img src=\"eps/hpr3704/Copy_sheet_1.png\" title=\"Copying a sheet, image 1\" alt=\"Copying a sheet, screenshot 1\" /></p>\n<p><img src=\"eps/hpr3704/Copy_sheet_2.png\" title=\"Copying a sheet, image 2\" alt=\"Copying a sheet screenshot 2\" /></p>\n<p><a href=\"eps/hpr3704/Design_mode_sm.png\" title=\"Switching to Design Mode\"><img src=\"eps/hpr3704/Design_mode_sm_thumbnail.png\" title=\"Switching to Design Mode\" alt=\"Switching to Design Mode\" /></a></p>\n<p><img src=\"eps/hpr3704/Form_control_sm.png\" title=\"Form Control example\" alt=\"Form Control example\" /></p>\n<p><a href=\"eps/hpr3704/Budget_Sample_Any_Year_2022-9-26_05.33.15.ods\" title=\"Budget sample with a calendar in LibreOffice\">Budget sample with a calendar in LibreOffice (Download link)</a></p>\n',318,0,0,'CC-BY-SA','Budget, spreadsheet, LibreOffice, OpenOffice',0,0,1),
(3708,'2022-10-19','Insomnia as a Hobby',466,'Fighting insomnia? Enjoy it...with a few tricks!','<p>I struggle with insomnia, instead of dreading it - I rather enjoy it now...here\'s how!</p>\n',389,0,0,'CC-BY-SA','insomnia,podcasts,librivox',0,0,1),
(3713,'2022-10-26','Bash snippet - short-circuit evaluation in Bash Boolean expressions',1000,'Found I could do this in Bash, so wanted to share!','<article>\n<h2 id=\"preamble\">Preamble</h2>\n<p>This is a case where I came upon a thing in Bash I had never considered before and was pleased and surprised that there was a way of doing what I wanted to do! If this is completely obvious to you, apologies, but it wasnt to me!</p>\n<h2 id=\"overview\">Overview</h2>\n<p>Many programming languages have the concept of <a href=\"https://en.wikipedia.org/wiki/Short-circuit_evaluation\">short-circuit evaluation</a> in Boolean expressions. What this means is that in an expression such as:</p>\n<pre><code>A AND B</code></pre>\n<p>if <code>A</code> is <strong>false</strong> then the whole expression must be <strong>false</strong>, and <code>B</code> doesnt have to be evaluated. That is because both arguments to <code>AND</code> have to be <strong>true</strong> for the overall result to be <strong>true</strong>.</p>\n<p>If <code>A</code> is <strong>true</strong> on the other hand, then <code>B</code> has to be evaluated to determine if the overall result is <strong>true</strong>.</p>\n<p>Similarly with:</p>\n<pre><code>A OR B</code></pre>\n<p>if <code>A</code> is <strong>true</strong> then the whole expression must be <strong>true</strong> and <code>B</code> can be skipped without evaluation. This is because only one argument to <code>OR</code> needs to be <strong>true</strong> to return a <strong>true</strong> result.</p>\n<p>If <code>A</code> is <strong>false</strong> on the other hand, then <code>B</code> has to be evaluated to determine if the overall result is <strong>false</strong>.</p>\n<p>Both of these expressions are evaluated from left to right. This is not a given in all languages. Some use special operators such as <code>\'and_then\'</code> and <code>\'or_else\'</code> which explicitly perform short-circuiting and left-to-right evaluation.</p>\n<h3 id=\"definition\">Definition</h3>\n<p>In simple terms, short-circuiting is where the evaluation of an expression is stopped as soon as its outcome is determined.</p>\n<p>The Wikipedia article <a href=\"https://en.wikipedia.org/wiki/Short-circuit_evaluation\">Short-circuit evaluation</a> defines it as:</p>\n<blockquote>\n<p>Short-circuit evaluation, minimal evaluation, or McCarthy evaluation (after John McCarthy) is the semantics of some Boolean operators in some programming languages in which the second argument is executed or evaluated only if the first argument does not suffice to determine the value of the expression: when the first argument of the AND function evaluates to false, the overall value must be false; and when the first argument of the OR function evaluates to true, the overall value must be true.</p>\n</blockquote>\n<p>This article contains a table entitled <a href=\"https://en.wikipedia.org/wiki/Short-circuit_evaluation#Support_in_common_programming_and_scripting_languages\"><em>Boolean operators in various languages</em></a> which shows details of how various programming and scripting languages cater for this feature.</p>\n<h2 id=\"use-case\">Use case</h2>\n<p>I was writing a Bash script in which I wanted to ask questions about various steps - should they be done or not? Alternatively, I wanted to be able to set an option to run without interaction and assume the answer is <code>\'yes\'</code> to all questions.</p>\n<p>Id encountered <em>short-circuit evaluation</em> before in Pascal and Perl so I wondered if I could use it in Bash.</p>\n<p>The expression I was trying to write was:</p>\n<pre><code>if [[ $YES -eq 1 ]] || yes_no &#39;Create directory? %s &#39; &#39;N&#39;; then\n # Create directory\nfi</code></pre>\n<ul>\n<li>Variable <code>YES</code> is being set through an option <code>\'-Y\'</code>; its normally set to zero but is set to 1 if the option is used.</li>\n<li><code>yes_no</code> is a function I wrote, and talked about in <a href=\"https://hackerpublicradio.org/eps.php?id=2096\">HPR episode 2096: “Useful Bash functions - part 2”<
(3703,'2022-10-12','McCurdy House Tour',767,'operat0r brings us on a House Tour','<p>CL4P-TP Claptrap Borderlands Lego Bricklink<br />\n<a href=\"https://rmccurdy.com/.scripts/downloaded/CL4P-TP%20Claptrap%20Borderlands%20Bricklink.pdf\" class=\"uri\">https://rmccurdy.com/.scripts/downloaded/CL4P-TP%20Claptrap%20Borderlands%20Bricklink.pdf</a><br />\n<a href=\"https://rmccurdy.com/.scripts/downloaded/CL4P-TP%20Claptrap%20Borderlands%20Bricklink.xml\" class=\"uri\">https://rmccurdy.com/.scripts/downloaded/CL4P-TP%20Claptrap%20Borderlands%20Bricklink.xml</a></p>\n<p>Lightsabers (get mystery box or whatever boneyard etc because much cheaper if you really just want programable full pixel blade)<br />\n<a href=\"https://www.crimsondawn.com/products/mystery-box?variant=33206141681741\" class=\"uri\">https://www.crimsondawn.com/products/mystery-box?variant=33206141681741</a></p>\n<p>I paid $268USD for Neopixel Proffie ( I think it\'s all xenopixel stuff nowadays ): <a href=\"https://darkwolfsabers.com/shop/ols/products/rgb-baslix-saber/v/RGB-BSL-SBR-NPX-PRF\" class=\"uri\">https://darkwolfsabers.com/shop/ols/products/rgb-baslix-saber/v/RGB-BSL-SBR-NPX-PRF</a></p>\n<p>RGB\'s from LGT Store (60-70$)<br />\n<a href=\"https://www.aliexpress.com/store/1101560967\" class=\"uri\">https://www.aliexpress.com/store/1101560967</a></p>\n',36,0,1,'CC-BY-SA','ASMR',0,0,1),
(3707,'2022-10-18','Recovering a Massive 3.5 HP Electric Motor from a Treadmill',1006,'Retrieval of future robot parts in the field','<p><em>Figure 1 - trash</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3707/fig1trash.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3707/fig1trash_thumbnail.jpg\" alt=\"Figure 1 - trash\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 2 - close-up</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3707/fig2close.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3707/fig2close_thumbnail.jpg\" alt=\"Figure 2 - close-up\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 3 - screen</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3707/fig3screen.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3707/fig3screen_thumbnail.jpg\" alt=\"Figure 3 - screen\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 3 - parts collected</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3707/fig4gets.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3707/fig4gets_thumbnail.jpg\" alt=\"Figure 3 - parts collected\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 5 - scrap iron</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3707/fig5iron.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3707/fig5iron_thumbnail.jpg\" alt=\"Figure 5 - scrap iron\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n<p><em>Figure 6 - size comparison</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3707/fig6compare.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3707/fig6compare_thumbnail.jpg\" alt=\"Figure 6 - size comparison\" /></a> <br/><small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n',401,0,1,'CC-BY-SA','beam,righttorepair,robots,mechatronics',0,0,1),
(3709,'2022-10-20','Relationships to games and console generations',568,'Some ramblings about what next generation consoles used to mean to games, gamers and game developers','<p>I talk about my views on how much of an impact technological jumps\nused to make on gaming in previous decades vs this decade.</p>\n',412,0,0,'CC-BY-SA','Video Games, Game Consoles',0,0,1),
(3715,'2022-10-28','Secret hat conversations, Part 2.',3899,'Twin Tin Hats, feat. archer72.','<ul>\n<li><p><strong>Quantum computing</strong></p>\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Quantum_computing\">Quantum\ncomputing</a> is a type of computation whose operations can harness the\nphenomena of quantum mechanics, such as superposition, interference, and\nentanglement. Devices that perform quantum computations are known as\nquantum computers. Though current quantum computers are too small to\noutperform usual (classical) computers for practical applications,\nlarger realizations are believed to be capable of solving certain\ncomputational problems, such as integer factorization (which underlies\nRSA encryption), substantially faster than classical computers.</li>\n<li>Today&#x2019;s <a\nhref=\"https://www.intel.com/content/www/us/en/research/quantum-computing.html\">quantum\nsystems</a> only include tens or hundreds of entangled qubits, limiting\nthem from solving real-world problems. To achieve quantum practicality,\ncommercial quantum systems need to scale to over a million qubits and\novercome daunting challenges like qubit fragility and software\nprogrammability.</li>\n<li><a\nhref=\"https://www.cnet.com/tech/computing/quantum-computers-could-crack-todays-encrypted-messages-thats-a-problem/\">Quantum\ncomputers</a>, if they mature enough, will be able to crack much of\ntoday\'s encryption. That\'ll lay bare private communications, company\ndata and military secrets. Today\'s quantum computers are too rudimentary\nto do so. But data surreptitiously gathered now could still be sensitive\nwhen more powerful quantum computers come online in a few years.</li>\n<li><a\nhref=\"https://www.intego.com/mac-security-blog/how-quantum-computing-will-affect-computer-security-and-passwords/\">Simple\npasswords</a> can be cracked using brute force; this is where an\nattacker uses tools that try every possible password until the correct\none is found. This generally done using a dictionary attack, where an\nattacker will try known passwords and words until they find the one that\nunlocks an account. There are databases available on the internet that\ncontain personal names as well as dictionary and slang words, in scores\nof languages, along with passwords found in data breaches, and\nmore.</li>\n</ul></li>\n<li><p><strong>Encryption.</strong></p>\n<ul>\n<li>The <a\nhref=\"https://www.nist.gov/publications/advanced-encryption-standard-aes\">Advanced\nEncryption Standard</a> (AES) specifies a FIPS-approved cryptographic\nalgorithm that can be used to protect electronic data. The AES algorithm\nis a symmetric block cipher that can encrypt (encipher) and decrypt\n(decipher) information. Encryption converts data to an unintelligible\nform called ciphertext; decrypting the ciphertext converts the data back\ninto its original form, called plaintext. The AES algorithm is capable\nof using cryptographic keys of 128, 192, and 256 bits to encrypt and\ndecrypt data in blocks of 128 bits.</li>\n<li>The National Security Agency (NSA) reviewed all the <a\nhref=\"https://en.wikipedia.org/wiki/Advanced_Encryption_Standard\">AES</a>\nfinalists, including Rijndael, and stated that all of them were secure\nenough for U.S. Government non-classified data. In June 2003, the U.S.\nGovernment announced that AES could be used to protect classified\ninformation: For cryptographers, a cryptographic \"break\" is anything\nfaster than a brute-force attack &#x2013; i.e., performing one trial decryption\nfor each possible key in sequence. A break can thus include results that\nare infeasible with current technology. Despite being impractical,\ntheoretical breaks can sometimes provide insight into vulnerability\npatterns. The largest successful publicly known brute-force attack\nagainst a widely implemented block-cipher encryption algorithm was\nagainst a 64-bit RC5 key by distributed.net in 2006.</li>\n</ul></li>\n<li><p><strong>Password Management.</strong></p>\n<ul>\n<li><a href=\"https://bitwarden.com/\">Bitwarden</a></li>\n<li><a href=\"https:/
(3981,'2023-11-06','HPR Community News for October 2023',3085,'HPR Volunteers talk about shows released and comments posted in October 2023','<style>\ntable td.shrink {\n white-space:nowrap\n}\nhr.thin {\n border: 0;\n height: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n border-bottom: 1px solid rgba(255, 255, 255, 0.3);\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nWelcome to our new host: <br />\n\n <a href=\"https://hackerpublicradio.org/correspondents/0425.html\" target=\"_blank\">gemlog</a>.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3956/index.html\" target=\"_blank\">3956</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-10-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3956/index.html\" target=\"_blank\">HPR Community News for September 2023</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3957/index.html\" target=\"_blank\">3957</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-10-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3957/index.html\" target=\"_blank\">The Oh No! News.</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0391.html\" target=\"_blank\">Some Guy On The Internet</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3958/index.html\" target=\"_blank\">3958</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-10-04</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3958/index.html\" target=\"_blank\">Bikepacking in 1993 without technology</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0111.html\" target=\"_blank\">knightwise</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3959/index.html\" target=\"_blank\">3959</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-10-05</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3959/index.html\" target=\"_blank\">Download any HPR series with english file names</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0425.html\" target=\"_blank\">gemlog</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3960/index.html\" target=\"_blank\">3960</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-10-06</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3960/index.html\" target=\"_blank\">On The Road At Last</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0198.html\" target=\"_blank\">Ahuka</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3961/index.html\" target=\"_blank\">3961</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-10-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3961/index.html\" target=\"_blank\">RERE: How to make friends.</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0391.html\" target=\"_blank\">Some Guy On The Internet</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3962/index.html\" target=\"_blank\">3962</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-10-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3962/index.html\" target=\"_blank\">It\'s your data</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0030.html\" target=\"_blank\">Ken Fallon</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3963/index.html\" target=\"_blank\">3963</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-10-11</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3963/index.html\" target=\"_blank\">Storytelling Games</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/h
(3800,'2023-02-24','NIST Quantum Cryptography Update 20221008',928,'An update on the preparations for quantum computing','<p>The process NIST initiated in 2016 continues as it looks for\nencryption algorithms that will be secure against the anticipated\narrival of practical quantum computing. In this update I report on the\nfirst 4 Candidates to be Standardized, and the timeline for completion.\nIt is coming faster than you may have realized.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://miracl.com/blog/backdoors-in-nist-elliptic-curves/\"\nclass=\"uri\">https://miracl.com/blog/backdoors-in-nist-elliptic-curves/</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Qubit\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Qubit</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Transport_Layer_Security\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Transport_Layer_Security</a></li>\n<li><a href=\"https://csrc.nist.gov/Projects/post-quantum-cryptography\"\nclass=\"uri\">https://csrc.nist.gov/Projects/post-quantum-cryptography</a></li>\n<li><a\nhref=\"https://www.zwilnik.com/security-and-privacy/encryption-and-quantum-computing/\"\nclass=\"uri\">https://www.zwilnik.com/security-and-privacy/encryption-and-quantum-computing/</a></li>\n<li><a href=\"http://hackerpublicradio.org/eps.php?id=2860\"\nclass=\"uri\">http://hackerpublicradio.org/eps.php?id=2860</a></li>\n<li><a\nhref=\"https://www.zwilnik.com/security-and-privacy/nists-quantum-cryptography-update-20200815/\"\nclass=\"uri\">https://www.zwilnik.com/security-and-privacy/nists-quantum-cryptography-update-20200815/</a></li>\n<li><a href=\"http://hackerpublicradio.org/eps.php?id=3147\"\nclass=\"uri\">http://hackerpublicradio.org/eps.php?id=3147</a></li>\n<li><a\nhref=\"https://csrc.nist.gov/News/2016/Post-Quantum-Cryptography-Proposed-Requirements\"\nclass=\"uri\">https://csrc.nist.gov/News/2016/Post-Quantum-Cryptography-Proposed-Requirements</a></li>\n<li><a\nhref=\"https://csrc.nist.gov/Projects/post-quantum-cryptography/selected-algorithms-2022\"\nclass=\"uri\">https://csrc.nist.gov/Projects/post-quantum-cryptography/selected-algorithms-2022</a></li>\n<li><a\nhref=\"https://csrc.nist.gov/Projects/post-quantum-cryptography/round-4-submissions\"\nclass=\"uri\">https://csrc.nist.gov/Projects/post-quantum-cryptography/round-4-submissions</a></li>\n<li><a\nhref=\"https://csrc.nist.gov/projects/pqc-dig-sig/standardization/call-for-proposals\"\nclass=\"uri\">https://csrc.nist.gov/projects/pqc-dig-sig/standardization/call-for-proposals</a></li>\n<li><a\nhref=\"https://www.nist.gov/blogs/taking-measure/post-quantum-cryptography-qa-nists-matt-scholl\"\nclass=\"uri\">https://www.nist.gov/blogs/taking-measure/post-quantum-cryptography-qa-nists-matt-scholl</a></li>\n<li><a\nhref=\"https://thehackernews.com/2022/07/nist-announces-first-four-quantum.html\"\nclass=\"uri\">https://thehackernews.com/2022/07/nist-announces-first-four-quantum.html</a></li>\n<li><a href=\"https://csrc.nist.gov/Projects/post-quantum-cryptography\"\nclass=\"uri\">https://csrc.nist.gov/Projects/post-quantum-cryptography</a></li>\n<li><a\nhref=\"https://www.zwilnik.com/security-and-privacy/nist-quantum-cryptography-update-20221008/\"\nclass=\"uri\">https://www.zwilnik.com/security-and-privacy/nist-quantum-cryptography-update-20221008/</a></li>\n</ul>\n',198,74,0,'CC-BY-SA','NIST, Encryption, quantum computing',0,0,1),
(3810,'2023-03-10','Clifton, Arizona',963,'We move to another Arizona town, Clifton.','<p>We have left the Tucson area and moved up into the mountains to\nClifton, Arizona, a mining town. Arizona is a major source of Copper for\nthe U.S., and Clifton has one of the larger open pit mines in the world,\nand the largest in the U.S.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://flic.kr/s/aHBqjzKQCb\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKQCb</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKSz8\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKSz8</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKTKL\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKTKL</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKUba\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKUba</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKSqt\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKSqt</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKUkN\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKUkN</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKU3S\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKU3S</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKXtk\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKXtk</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKXk8\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKXk8</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKYXo\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKYXo</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKZr5\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKZr5</a></li>\n<li><a href=\"https://www.palain.com/travel/clifton-arizona/\"\nclass=\"uri\">https://www.palain.com/travel/clifton-arizona/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, RV life, Arizona, Clifton',0,0,1),
(3820,'2023-03-24','Introduction to Gaming',991,'How I first got started with Computer Strategy Games','<p>This starts out the series on Computer Strategy Games, and we begin\nwith the game that got me hooked, the first Civilization game created by\nSid Meier and published by Microprose. Though it is pretty old now, it\nis still fond in my heart, and in the hearts of so many other gamers. If\nthis comes across as a love letter, so be it. We will also in this\nseries look at where you can obtain old games, and where you can find\nmore information about the games I cover.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Civilization_(series)\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Civilization_(series)</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/4X\"\nclass=\"uri\">https://en.wikipedia.org/wiki/4X</a></li>\n<li><a\nhref=\"http://flashofsteel.com/index.php/2006/09/18/gamers-bookshelf-civilization-or-rome-on-640k-a-day/\"\nclass=\"uri\">http://flashofsteel.com/index.php/2006/09/18/gamers-bookshelf-civilization-or-rome-on-640k-a-day/</a></li>\n<li><a\nhref=\"https://www.amazon.com/Sid-Meiers-Civilization-Chronicles-PC/dp/B000IU1PQA\"\nclass=\"uri\">https://www.amazon.com/Sid-Meiers-Civilization-Chronicles-PC/dp/B000IU1PQA</a></li>\n<li><a href=\"https://playclassic.games/\"\nclass=\"uri\">https://playclassic.games/</a></li>\n<li><a href=\"https://www.myabandonware.com/\"\nclass=\"uri\">https://www.myabandonware.com/</a></li>\n<li><a\nhref=\"https://www.myabandonware.com/game/sid-meier-s-civilization-1nj\"\nclass=\"uri\">https://www.myabandonware.com/game/sid-meier-s-civilization-1nj</a></li>\n<li><a href=\"https://www.civfanatics.com/civ1/manual/civ1_man.htm\"\nclass=\"uri\">https://www.civfanatics.com/civ1/manual/civ1_man.htm</a></li>\n<li><a href=\"https://www.civfanatics.com/civ1/cia/\"\nclass=\"uri\">https://www.civfanatics.com/civ1/cia/</a></li>\n<li><a\nhref=\"https://forums.civfanatics.com/media/categories/civilization-gallery.16/\"\nclass=\"uri\">https://forums.civfanatics.com/media/categories/civilization-gallery.16/</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=CkmHeepmjEc\"\nclass=\"uri\">https://www.youtube.com/watch?v=CkmHeepmjEc</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=VF8Ribe5AFU\"\nclass=\"uri\">https://www.youtube.com/watch?v=VF8Ribe5AFU</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=L7GkX4h-TP8\"\nclass=\"uri\">https://www.youtube.com/watch?v=L7GkX4h-TP8</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=3UuXa3PRSGo\"\nclass=\"uri\">https://www.youtube.com/watch?v=3UuXa3PRSGo</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=Q1d08T8_wI4\"\nclass=\"uri\">https://www.youtube.com/watch?v=Q1d08T8_wI4</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=AJ-auWfJTts\"\nclass=\"uri\">https://www.youtube.com/watch?v=AJ-auWfJTts</a></li>\n<li><a\nhref=\"https://www.amazon.com/Sid-Meiers-Memoir-Computer-Games/dp/B08MNG8VX8/\"\nclass=\"uri\">https://www.amazon.com/Sid-Meiers-Memoir-Computer-Games/dp/B08MNG8VX8/</a></li>\n<li><a href=\"https://www.palain.com/gaming/sid-meiers-civilization/\"\nclass=\"uri\">https://www.palain.com/gaming/sid-meiers-civilization/</a></li>\n</ul>\n',198,122,0,'CC-BY-SA','Computer games, strategy games, Civilization',0,0,1),
(3830,'2023-04-07','Into New Mexico',856,'We move to another state, New Mexico.','<p>We made a change in our itinerary and instead of going up into the\nmountains of New Mexico we went down to the area of the border of\nMexico. Our first stop was in Deming, NM for a few days, the on to\nAnthony, NM for a longer stay of nearly three weeks. Anthony is located\nbetween Las Cruces, NM, and El Paso, Texas, so it was a convenient\nlocation for visiting both of the places, and we did so. In hindsight,\nwe liked Las Cruces and the New Mexico part a lot better than El\nPaso.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://flic.kr/s/aHBqjzKYwL\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKYwL</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzL1pH\"\nclass=\"uri\">https://flic.kr/s/aHBqjzL1pH</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKYwM\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKYwM</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKZcd\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKZcd</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKYVh\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKYVh</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzL1F8\"\nclass=\"uri\">https://flic.kr/s/aHBqjzL1F8</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzKZLE\"\nclass=\"uri\">https://flic.kr/s/aHBqjzKZLE</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzL6F3\"\nclass=\"uri\">https://flic.kr/s/aHBqjzL6F3</a></li>\n<li><a href=\"https://www.palain.com/travel/into-new-mexico/\"\nclass=\"uri\">https://www.palain.com/travel/into-new-mexico/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, RV life, New Mexico, Deming, Anthony, Las Cruces, El Paso',0,0,1),
(3840,'2023-04-21','Playing the Original Civilization',899,'Hints on playing the game that started it all','<p>This game is pretty old, but I found that wen I started a game\nrecently to prepare for this episode that it was still as addictive as\never. I won\'t claim it is essential for everyone to run out and get it,\nbut if you did happen to find a copy somewhere and play it, you might\nfind you enjoy it. In this episode I give a few hints about getting\nstarted with this game.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a\nhref=\"https://civilization.fandom.com/wiki/Help_with_playing_Civ1#Choice_of_initial_city_site\"\nclass=\"uri\">https://civilization.fandom.com/wiki/Help_with_playing_Civ1#Choice_of_initial_city_site</a></li>\n<li><a\nhref=\"https://www.palain.com/gaming/sid-meiers-civilization/playing-the-original-civilization-hints/\"\nclass=\"uri\">https://www.palain.com/gaming/sid-meiers-civilization/playing-the-original-civilization-hints/</a></li>\n</ul>\n',198,122,0,'CC-BY-SA','Computer games, strategy games, Civilization',0,0,1),
(3850,'2023-05-05','New Mexico 2',822,'We finish our stay in New Mexico and head to Presidio, Texas.','<p>We finished our stay in Anthony with a Saturday trip into Las Cruces\nto see the local market and the museums, more hiking, and a trip to see\nNative American Petroglyphs. We also went into El Paso to check out the\nzoo. It was fine, but we confirmed that we don\'t really like going into\nEl Paso. We are not much on driving in big cities any longer,\nparticularly in a big truck. Then it was time to move on to our next\nstop, Presidio, Texas. This is so close to the border that a 5 minute\nwalk takes you to the Rio Grande.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://flic.kr/s/aHBqjzL5vB\"\nclass=\"uri\">https://flic.kr/s/aHBqjzL5vB</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzL5VY\"\nclass=\"uri\">https://flic.kr/s/aHBqjzL5VY</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzL7XD\"\nclass=\"uri\">https://flic.kr/s/aHBqjzL7XD</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzL9jQ\"\nclass=\"uri\">https://flic.kr/s/aHBqjzL9jQ</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzL8cZ\"\nclass=\"uri\">https://flic.kr/s/aHBqjzL8cZ</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzLc5f\"\nclass=\"uri\">https://flic.kr/s/aHBqjzLc5f</a></li>\n<li><a href=\"https://www.palain.com/travel/new-mexico-2/\"\nclass=\"uri\">https://www.palain.com/travel/new-mexico-2/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, RV life, New Mexico, Anthony, Las Cruces, El Paso, Presidio',0,0,1),
(3860,'2023-05-19','Civilization II',923,'The game I spent the most time on: Civilization II','<p>This game is not quite as old, and it did make some changes. But the\nsame \"One-more-turn\" addictiveness is still there. I can\'t tell you many\ntimes I started a game, and the next thing I knew the Sun was coming up\noutside my window. I\'m too old to do that any more, but if I start\nanother game of Civ II I will be right back in it.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://playclassic.games/?s=Civilization+II\"\nclass=\"uri\">https://playclassic.games/?s=Civilization+II</a></li>\n<li><a href=\"https://www.myabandonware.com/browse/name/C/page/38/\"\nclass=\"uri\">https://www.myabandonware.com/browse/name/C/page/38/</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=sHfk5VhAvWU\"\nclass=\"uri\">https://www.youtube.com/watch?v=sHfk5VhAvWU</a></li>\n<li><a href=\"http://www.replacementdocs.com/download.php?view.365\"\nclass=\"uri\">http://www.replacementdocs.com/download.php?view.365</a></li>\n<li><a href=\"https://sleague.civfanatics.com/index.php?title=Main_Page\"\nclass=\"uri\">https://sleague.civfanatics.com/index.php?title=Main_Page</a></li>\n<li><a\nhref=\"https://www.mobygames.com/game/windows/civilization-ii-test-of-time\"\nclass=\"uri\">https://www.mobygames.com/game/windows/civilization-ii-test-of-time</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=Ysk4o1zKsuE&amp;t=5s\"\nclass=\"uri\">https://www.youtube.com/watch?v=Ysk4o1zKsuE&amp;t=5s</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=9XokQ-VDd88\"\nclass=\"uri\">https://www.youtube.com/watch?v=9XokQ-VDd88</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=owt0CR9YHiA&amp;t\"\nclass=\"uri\">https://www.youtube.com/watch?v=owt0CR9YHiA&amp;t</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=pbGJrUTBHAY\"\nclass=\"uri\">https://www.youtube.com/watch?v=pbGJrUTBHAY</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=yKs9Mtu_Fn4\"\nclass=\"uri\">https://www.youtube.com/watch?v=yKs9Mtu_Fn4</a></li>\n<li><a href=\"https://www.palain.com/gaming/civilization-ii/\"\nclass=\"uri\">https://www.palain.com/gaming/civilization-ii/</a></li>\n</ul>\n',198,122,0,'CC-BY-SA','Computer games, strategy games, Civilization II',0,0,1),
(3870,'2023-06-02','Texas',765,'We wrap up our trip in Texas before heading back home to Michigan','<p>Our stay in Presidio was a nice one, and we enjoyed the companionship\nat the RV park. This gave us access to the Big Bend Ranch State Park,\nand we had a few good outings there. But we wanted to visit the Big Bend\nNational Park, which was not as reachable as we would like, so we booked\na few days in Alpine, Texas. This turned out to be fortuitous for an\nimportant repair. And after seeing the National Park it was time to head\nback to Michigan. We had a long but very nice trip, but as always at the\nend of a trip we look forward to being back in our home and sleeping in\nour bed.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://flic.kr/s/aHBqjzLaJR\"\nclass=\"uri\">https://flic.kr/s/aHBqjzLaJR</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzLbSF\"\nclass=\"uri\">https://flic.kr/s/aHBqjzLbSF</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzLeL8\"\nclass=\"uri\">https://flic.kr/s/aHBqjzLeL8</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzLexu\"\nclass=\"uri\">https://flic.kr/s/aHBqjzLexu</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzLfXK\"\nclass=\"uri\">https://flic.kr/s/aHBqjzLfXK</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjzLeLR\"\nclass=\"uri\">https://flic.kr/s/aHBqjzLeLR</a></li>\n<li><a href=\"https://www.palain.com/travel/texas/\"\nclass=\"uri\">https://www.palain.com/travel/texas/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, RV life, Texas, Presidio, Alpine',0,0,1),
(3711,'2022-10-24','Cars',2042,'A short review of Cars today','<h2 id=\"car-company\">Car company</h2>\n<ul>\n<li><p>A:<br />\n<a href=\"https://www.ford.com/\"\nclass=\"uri\">https://www.ford.com/</a></p></li>\n<li><p>B:<br />\n<a href=\"https://www.chevrolet.com/\"\nclass=\"uri\">https://www.chevrolet.com/</a></p></li>\n<li><p>C:<br />\n<a href=\"https://www.dodge.com/\"\nclass=\"uri\">https://www.dodge.com/</a></p></li>\n<li><p>D:<br />\n<a href=\"https://www.chrysler.com/#\"\nclass=\"uri\">https://www.chrysler.com/#</a></p></li>\n<li><p>E:<br />\n<a href=\"https://www.buick.com/\"\nclass=\"uri\">https://www.buick.com/</a></p></li>\n<li><p>F:<br />\n<a href=\"https://www.cadillac.com/\"\nclass=\"uri\">https://www.cadillac.com/</a></p></li>\n<li><p>G:<br />\n<a href=\"https://www.lincoln.com/\"\nclass=\"uri\">https://www.lincoln.com/</a></p></li>\n<li><p>H:<br />\n<a href=\"https://www.toyota.com/\"\nclass=\"uri\">https://www.toyota.com/</a></p></li>\n<li><p>I:<br />\n<a href=\"https://www.nissanusa.com/\"\nclass=\"uri\">https://www.nissanusa.com/</a></p></li>\n<li><p>J:<br />\n<a href=\"https://automobiles.honda.com/\"\nclass=\"uri\">https://automobiles.honda.com/</a></p></li>\n<li><p>K:<br />\n<a\nhref=\"https://www.nytimes.com/2003/08/31/us/cries-of-activism-and-terrorism-in-suv-torching.html\"\nclass=\"uri\">https://www.nytimes.com/2003/08/31/us/cries-of-activism-and-terrorism-in-suv-torching.html</a></p></li>\n<li><p>L:<br />\n<a\nhref=\"https://www.autoweek.com/news/technology/a36189339/solid-state-batteries/\"\nclass=\"uri\">https://www.autoweek.com/news/technology/a36189339/solid-state-batteries/</a>\n<a\nhref=\"https://www.washingtonpost.com/technology/2022/05/18/solid-state-batteries-electric-vehicles-race/\"\nclass=\"uri\">https://www.washingtonpost.com/technology/2022/05/18/solid-state-batteries-electric-vehicles-race/</a></p></li>\n</ul>\n',377,0,0,'CC-BY-SA','Cars, EV\'s, Terrorists, Hydrogen, Fusion, Power Systems',0,0,1),
(3712,'2022-10-25','The last ever CCHits.net Show',5756,'The team talk about the nearly 12 years of producing CCHits.net.','<p>Over 12 years ago, <a href=\"https://jon.sprig.gs\">Jon \"The Nice Guy\"\nSpriggs</a> went to a \"Pod Crawl\" with (among others) <a\nhref=\"https://thelovebug.org/\">Dave \"The Love Bug\" Lee</a>, where he\npitched the idea of a daily music promotion show, with a twist - it\nwould all be automated, and use text-to-speech to introduce\neverything.</p>\n<p>The <a href=\"https://cchits.net/show/1\">first show</a> was released\non 2010-10-24 and the last ever show (this one) was released on\n2022-10-12.</p>\n<p>Over the twelve years, Jon would go on to meet to meet <a\nhref=\"https://twitter.com/frenchguych\">Yannick</a> and Ken Fallon, both\nof whom would go on to shape changes (big and small) to CCHits.</p>\n<p>This year, the cracks started to re-appear in the architecture\nunderneath CCHits - between APIs shutting down that were used to load\ntracks to CCHits, and the general framework being used to write CCHits\nnot receiving the care and attention it needed... and the team finally\ndecided to stop adding new tracks, and let the process build the last\nfew shows.</p>\n<p>This podcast gives you a peek behind the curtain to the team involved\nin the system, and gives you some of the high- and low-lights in the 12\nyears the site ran for.</p>\n',413,0,0,'CC-BY','music,creative commons,podcast',0,0,1),
(3724,'2022-11-10','My top Android apps',579,'I walk through the top apps on my phone','<h3 id=\"my-most-used-apps\">My most used apps</h3>\n<h3 id=\"aio-launcher\">AIO Launcher</h3>\n<ul>\n<!-- <li><a href=\"%5B%5D(https://aiolauncher.app%20%22AIO%20Launcher%22)\">AIO Launcher</a></li> -->\n<li><a href=\"https://aiolauncher.app\" title=\"AIO Launcher\">AIO Launcher</a></li>\n</ul>\n<p><img src=\"https://hackerpublicradio.org/eps/hpr3724/main_sm.png\"\ntitle=\"Main screen\" alt=\"Main screen\" /></p>\n<p><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3724/quick_launch_sm.png\"\ntitle=\"Quick Launch screen\" alt=\"Quick Launch screen\" /></p>\n<p><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3724/side_panel_sm.png\"\ntitle=\"Side panel screen\" alt=\"Side panel screen\" /></p>\n<h4 id=\"termux-terminal-emulator-with-packages\">Termux: Terminal\nemulator with packages</h4>\n<ul>\n<li><p><a href=\"https://f-droid.org/en/packages/com.termux\"\ntitle=\"Termux: Terminal emulator with packages\">Termux: Terminal\nemulator with packages</a></p></li>\n<li><p>Connect to the home network</p>\n<ul>\n<li>Start a video encoding, or rip a DVD</li>\n</ul></li>\n<li><p>Vim editor</p></li>\n<li><p>Secure files</p>\n<ul>\n<li>pwgen -y 30 3: Generate three 30 character passwords with\nsymbols</li>\n<li>Other confidential info\n<ul>\n<li>hpr3484 :: My vim setup with GnuPG\n<ul>\n<li><a href=\"https://www.hackerpublicradio.org/eps.php?id=3484\"\ntitle=\"My vim setup with GnuPG\">My vim setup with GnuPG</a></li>\n</ul></li>\n</ul></li>\n</ul></li>\n</ul>\n<h4 id=\"qksms-messaging\">QKSMS Messaging</h4>\n<ul>\n<li><p><a href=\"https://f-droid.org/en/packages/com.moez.QKSMS\"\ntitle=\"QKSMS Messaging: F-droid\">QKSMS Messaging: F-droid</a></p></li>\n<li><p><a href=\"https://github.com/moezbhatti/qksms\"\ntitle=\"QKSMS Messaging: Github\">QKSMS Messaging: Github</a></p></li>\n</ul>\n<h4 id=\"firefox-browser\">Firefox browser</h4>\n<ul>\n<li><a\nhref=\"https://play.google.com/store/apps/details?id=org.mozilla.firefox\"\ntitle=\"Firefox browser\">Firefox browser</a></li>\n</ul>\n<h4 id=\"opera-browser\">Opera browser</h4>\n<ul>\n<li><a\nhref=\"https://play.google.com/store/apps/details?id=com.opera.browser\"\ntitle=\"Opera browser\">Opera browser</a></li>\n</ul>\n<h4 id=\"brave-browser\">Brave browser</h4>\n<ul>\n<li><a\nhref=\"https://play.google.com/store/apps/details?id=com.brave.browser\"\ntitle=\"Brave browser\">Brave browser</a></li>\n</ul>\n<h4 id=\"clear-scanner-pdf-scanner-and-ocr\">Clear Scanner PDF scanner and\nOCR</h4>\n<ul>\n<li><p><a href=\"https://indymobileapp.com\"\ntitle=\"Clear Scanner PDF scanner and OCR\">Clear Scanner PDF scanner and\nOCR</a></p>\n<ul>\n<li>OCR: Optical character recognition</li>\n<li>Multiple folders</li>\n<li>Donation option</li>\n</ul></li>\n</ul>\n<h4 id=\"antennapod\">Antennapod</h4>\n<ul>\n<li><a href=\"https://f-droid.org/en/packages/de.danoeh.antennapod\"\ntitle=\"Antennapod\">Antennapod</a></li>\n</ul>\n<h4 id=\"tusky\">Tusky</h4>\n<ul>\n<li><a href=\"https://f-droid.org/en/packages/com.keylesspalace.tusky\"\ntitle=\"Tusky for Mastodon\">Tusky for Mastodon</a></li>\n</ul>\n<h4 id=\"k-9-mail-client\">K-9 mail client</h4>\n<ul>\n<li><a href=\"https://f-droid.org/en/packages/com.fsck.k9/\"\ntitle=\"K-9 mail client\">K-9 mail client</a></li>\n</ul>\n<h4 id=\"viber\">Viber</h4>\n<ul>\n<li><p><a href=\"https://www.viber.com/en/download\"\ntitle=\"Viber\">Viber</a></p>\n<ul>\n<li>Android and Fedora/Ubuntu desktop app</li>\n<li>App image</li>\n</ul></li>\n</ul>\n<h4 id=\"audio-recorder\">Audio recorder</h4>\n<ul>\n<li><p><a\nhref=\"https://f-droid.org/en/packages/com.github.axet.audiorecorder\"\ntitle=\"Audio recorder: F-droid\">Audio recorder: F-droid</a></p></li>\n<li><p><a href=\"https://gitlab.com/axet/android-audio-recorder\"\ntitle=\"Audio recorder: F-droid\">Audio recorder: Gitlab</a></p></li>\n</ul>\n<h4 id=\"x-plore-dual-pane-file-manager\">X-plore dual-pane file\nmanager</h4>\n<ul>\n<li><a\nhref=\"https://play.google.com/store/apps/details?id=com.lonelycatgames.Xplore&amp;gl=US\"\ntitle=\"X-pl
(3725,'2022-11-11','How to use OSMAnd with Public Transport ',124,'Ken shows you how to use this mapping tool to display transit routes in your area.','<p>\r\n<a href=\"/eps/hpr3725/01.jpeg\"><img src=\"/eps/hpr3725/01.jpeg\" alt=\"\" /></a><br />\r\nMap of Dublin showing the Temple Bar tourist area. A red arrow points to where you can change the profile.\r\n</p>\r\n<p>\r\n<a href=\"/eps/hpr3725/02.jpeg\"><img src=\"/eps/hpr3725/02.jpeg\" alt=\"\" /></a><br />\r\nWith the Configure Map > Profile selection menu open, a red square surrounds the Bus icon to indicate the \"public transport\" profile is now selected.\r\n</p>\r\n<p>\r\n<a href=\"/eps/hpr3725/03.jpeg\"><img src=\"/eps/hpr3725/03.jpeg\" alt=\"\" /></a><br />\r\nThe map now opens to show more information about public transport is now displayed on the map. This is highlighted with a red square.<br />\r\nClicking the bustop (highlighted with a red circle ) will show more information about the routes available at this location.\r\n</p>\r\n<p>\r\n<a href=\"/eps/hpr3725/04.jpeg\"><img src=\"/eps/hpr3725/04.jpeg\" alt=\"\" /></a><br />\r\nOnce the transport stop is selected, a list of all the routes that service this location are displayed. Along with other routes that are available within a short distance.\r\n</p>\r\n<p>\r\n<a href=\"/eps/hpr3725/05.jpeg\"><img src=\"/eps/hpr3725/05.jpeg\" alt=\"\" /></a><br />\r\nClicking any of the routes numbers/names will give a zoomed out map showing in red the route many of the stops towards it\'s source and destination.\r\n</p>\r\n',30,0,0,'CC-BY-SA','OSMAnd, OSM, Maps, Public Transport',0,0,1),
(4001,'2023-12-04','HPR Community News for November 2023',0,'HPR Volunteers talk about shows released and comments posted in November 2023','<style>\ntable td.shrink {\n white-space:nowrap\n}\nhr.thin {\n border: 0;\n height: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n border-bottom: 1px solid rgba(255, 255, 255, 0.3);\n}\np#ignore, li#ignore {\n background-color: lightgreen;\n color:maroon;\n}\ndiv#highlight {\n border-style: solid;\n border-color: red;\n padding-right: 20px;\n padding-left: 20px;\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nThere were no new hosts this month.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3978/index.html\" target=\"_blank\">3978</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-11-01</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3978/index.html\" target=\"_blank\">Driving in Virginia.</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0391.html\" target=\"_blank\">Some Guy On The Internet</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3979/index.html\" target=\"_blank\">3979</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-11-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3979/index.html\" target=\"_blank\">FireStick and ad blocking</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0036.html\" target=\"_blank\">operat0r</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3980/index.html\" target=\"_blank\">3980</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-11-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3980/index.html\" target=\"_blank\">Huntsville to Vicksburg</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0198.html\" target=\"_blank\">Ahuka</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3981/index.html\" target=\"_blank\">3981</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-11-06</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3981/index.html\" target=\"_blank\">HPR Community News for October 2023</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3982/index.html\" target=\"_blank\">3982</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-11-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3982/index.html\" target=\"_blank\">Conversation with ChatGPT</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0318.html\" target=\"_blank\">Archer72</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3983/index.html\" target=\"_blank\">3983</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-11-08</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3983/index.html\" target=\"_blank\">ChatGPT Output is not compatible with CC-BY-SA</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0030.html\" target=\"_blank\">Ken Fallon</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3984/index.html\" target=\"_blank\">3984</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-11-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3984/index.html\" target=\"_blank\">Whoppers. How Archer72 and I made moonshine. Volume one.</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0391.html\" target=\"_blank\">Some Guy On The Internet</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3985/index.html\" target=\"_blank\">3985</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-11-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3985/index.html\" target=\"_blank\">Bash snippet - be careful when feeding data to loops</a></td>\n<td><a href=\"h
(3714,'2022-10-27','The News with Some Guy On the Internet',609,'Threat Analysis','<h1 id=\"threat-analysis-your-attack-surface\">Threat Analysis; your\nattack surface.</h1>\n<h2 id=\"the-hacker-news\">The Hacker News</h2>\n<h3\nid=\"new-chinese-malware-attack-framework-targets-windows-macos-and-linux-systems\">New\nChinese Malware Attack Framework Targets Windows, macOS, and Linux\nSystems.</h3>\n<p>A previously undocumented command-and-control (C2) framework dubbed\nAlchimist is likely being used in the wild to target Windows, macOS, and\nLinux systems.</p>\n<p>\"Alchimist C2 has a web interface written in Simplified Chinese and\ncan generate a configured payload, establish remote sessions, deploy\npayloads to the remote machines, capture screenshots, perform remote\nshellcode execution, and run arbitrary commands,\" Cisco Talos said in a\nreport shared with The Hacker News. Written in GoLang, Alchimist is\ncomplemented by a beacon implant called Insekt, which comes with remote\naccess features that can be instrumented by the C2 server.&#x201D;</p>\n<p>\"Since Alchimist is a single-file based ready-to-go C2 framework, it\nis difficult to attribute its use to a single actor such as the authors,\nAPTs, or crimeware syndicates.\"</p>\n<p>The trojan, for its part, is equipped with features typically present\nin backdoors of this kind, enabling the malware to get system\ninformation, capture screenshots, run arbitrary commands, and download\nremote files, among others.</p>\n<p>Alchimist C2 panel further features the ability to generate first\nstage payloads, including PowerShell and wget code snippets for Windows\nand Linux, potentially allowing an attacker to flesh out their infection\nchains to distribute the Insekt RAT binary. The instructions could then\nbe potentially embedded in a maldoc attached to a phishing email that,\nwhen opened, downloads and launches the backdoor on the compromised\nmachine. What\'s more, the Linux version of Insekt is capable of listing\nthe contents of the \".ssh\" directory and even adding new SSH keys to the\n\"~/.ssh/authorized_keys\" file to facilitate remote access over SSH.</p>\n<h2 id=\"the-hacker-news-1\">The Hacker News</h2>\n<h3\nid=\"hackers-using-vishing-to-trick-victims-into-installing-android-banking-malware\">Hackers\nUsing Vishing to Trick Victims into Installing Android Banking\nMalware.</h3>\n<p>Malicious actors are resorting to voice phishing (vishing) tactics to\ndupe victims into installing Android malware on their devices.</p>\n<p>The Dutch mobile security company said it identified a network of\nphishing websites targeting Italian online-banking users that are\ndesigned to get hold of their contact details.</p>\n<p>Telephone-oriented attack delivery (TOAD), as the social engineering\ntechnique is called, involves calling the victims using previously\ncollected information from the fraudulent websites.</p>\n<p>The caller, who purports to be a support agent for the bank,\ninstructs the individual on the other end of the call to install a\nsecurity app and grant it extensive permissions, when, in reality, it\'s\nmalicious software intended to gain remote access or conduct financial\nfraud.</p>\n<p>What\'s more, the infrastructure utilized by the threat actor has been\nfound to deliver a second malware named SMS Spy that enables the\nadversary to gain access to all incoming SMS messages and intercept\none-time passwords (OTPs) sent by banks.</p>\n<p>The new wave of hybrid fraud attacks presents a new dimension for\nscammers to mount convincing Android malware campaigns that have\notherwise relied on traditional methods such as Google Play Store\ndroppers, rogue ads, and smishing.</p>\n<h2 id=\"the-hacker-news-2\">The Hacker News</h2>\n<h3\nid=\"64000-additional-patients-impacted-by-omnicell-data-breach---what-is-your-data-breach-action-plan\">64,000\nAdditional Patients Impacted by Omnicell Data Breach - What is Your Data\nBreach Action Plan?</h3>\n<p>Founded in 1992, Omnicell is a leading provider of medication\nmanagement solutions for hospitals, long-term care faciliti
(3717,'2022-11-01','Video editing with Shotcut on a low end PC',695,'In this episode I explain how I use the shotcut video editor to edit video on a low end PC.','<h2 id=\"links\">Links</h2>\n<p><a href=\"https://shotcut.org/\">Shotcut video editor website</a></p>\n<h2 id=\"useful-shortcut-keys-for-the-shotcut-video-editor\">Useful\nShortcut keys for the Shotcut video editor</h2>\n<pre><code>C = copy\nV = paste\nA = duplicate\nX = ripple delete\nCtrl + X = ripple delete but send to clipboard\nS = split</code></pre>\n<h2 id=\"tip-not-covered-in-my-podcast\">Tip not covered in my\nPodcast</h2>\n<p>Splits are not fixed and can be adjusted. Once you\'ve split up clips\nand put them in the right order on the timeline you can still adjust the\ncut point even though you previously split the clip because the clip is\nreferenced to the original file in the playlist.</p>\n<h2 id=\"introduction\">Introduction</h2>\n<p>Hello and welcome Hacker Public Radio audience my name is Mr X\nwelcome to this podcast. As per usual I\'d like to start by thanking the\npeople at HPR for making this podcast possible. HPR is a Community led\npodcast provided by the community for the community that means you can\ncontribute to. The HPR team have gone to great deal of effort to\nsimplify and streamline the process of providing podcasts. There are\nmany ways to record an episode these days using phones tablets PCs and\nalike. The hardest barrier is sending in your first show. Don\'t get too\nhung up about quality, it\'s more important just to send something in.\nThe sound quality of some of my early shows wasn\'t very good. If I can\ndo it anyone can and you might just get hooked in the process.</p>\n<p>Well it\'s been almost a year since I\'ve sent in a show. Looking at\nthe HPR site my last episode was back in November 2021. I suspect like\nmany others life has become more complicated and I find I have much less\nspare time and because I have much less spare time I have much less time\nto pursue my hobbies and because of this I have less to speak about and\nbecause of this I have less time to record what I\'ve been doing and it\nall turns into to vicious circle. Fortunately I recently had some time\noff work and had a lovely holiday. During the holiday I ended up\nrecording some video which I decided I wanted to edit. I\'ve done some\nvideo editing in the past using various video editing packages. The best\nand most recent of which is shotcut.</p>\n<h2 id=\"specific-details-and-equipment\">Specific details and\nequipment</h2>\n<p>Video resolution 1920 x 1080, Codec h264 mpeg-4, Frame rate 30 frames\nper second.</p>\n<p>Computer Dell Optiplex 780. Fitted with 4 GB of internal RAM and\nonboard video graphics card.</p>\n<p>Shotcut version 22.06.23 Shotcut is a free open-source cross-platform\nvideo editor licenced under the GNU general public licence version\n3.0</p>\n<p>This episode will only cover basic shotcut video editing techniques.\nShotcut contains many advanced features and effects that will not be\ncovered in this episode. A lot of the workflow I&#x2019;ll share with you today\nis intended to get around limitations imposed by my low spec PC</p>\n<p>I\'ll try my best to cover the video editing process in this podcast\nusing words alone; however I am conscious that an accompanying video\nwould make it easier to follow along.</p>\n<h2 id=\"shotcut-workflow\">Shotcut workflow</h2>\n<p>Start by creating a folder to hold all the required media files.\nAudio tracks and sound effects can be added to this folder later. Make\nsure all your video files are using the same frame rate in my case 30\nframes per second.</p>\n<p>Open each video file in VLC one at a time going through each video\nfile looking for the best portions of video. Make a note of where the\nbest portions of the video are by writing down the start and end points\nin minutes and seconds.</p>\n<p>I do this because the interface of VLC is more responsive than\nshortcut and the resolution of displayed video is far greater than the\npreview in shortcut. This makes it quicker and easier to f
(3719,'2022-11-03','HPR News',594,'InfoSec; the language of security.','<h1 id=\"infosec-the-language-of-security\">InfoSec; the language of\nsecurity.</h1>\n<h2 id=\"what-is-typosquatting-and-how-do-scammers-use-it\"><a\nhref=\"https://www.howtogeek.com/devops/what-is-typosquatting-and-how-do-scammers-use-it/\">What\nis Typosquatting and How Do Scammers Use it?</a></h2>\n<ul>\n<li>Typosquatting, as an attack, uses modified or misspelled domain\nnames to trick users into visiting fraudulent websites; the heart of\nthis attack is domain name registration. Typosquatting is deployed by\nscammers to defraud unaware users. Attackers will attempt to: mimic\nlogin pages, redirect traffic, download malware, and extort users.</li>\n<li><strong>Past Known Typosquatting Attacks.</strong>\n<ul>\n<li><a\nhref=\"https://thehackernews.com/2021/07/several-malicious-typosquatted-python.html\">Several\nMalicious Typosquatted Python Libraries Found On PyPI\nRepository</a></li>\n<li><a\nhref=\"https://thehackernews.com/2020/04/rubygem-typosquatting-malware.html\">Over\n700 Malicious Typosquatted Libraries Found On RubyGems\nRepository</a></li>\n<li><a\nhref=\"https://blog.rust-lang.org/2022/05/10/malicious-crate-rustdecimal.html\">Security\nadvisory: malicious crate rustdecimal</a></li>\n<li><a\nhref=\"https://blog.sonatype.com/this-week-in-malware-may-13th-edition\">This\nWeek in Malware-Malicious Rust crate, \'colors\' Typosquats</a></li>\n</ul></li>\n<li><strong>Solutions to Typosquatting.</strong>\n<ul>\n<li><a\nhref=\"https://opensource.com/article/20/1/stop-typosquatting-attacks\">How\nto stop typosquatting attacks</a></li>\n<li><a\nhref=\"https://www.howtogeek.com/363735/what-is-a-checksum-and-why-should-you-care/\">What\nIs a Checksum (and Why Should You Care)?</a></li>\n<li><a href=\"https://docs.pi-hole.net/\">PiHole</a></li>\n<li><a href=\"https://design.ubuntu.com/font/\">Ubuntu font\nfamily</a></li>\n</ul></li>\n<li><strong>DNS monitoring services.</strong>\n<ul>\n<li>Link to dnstwister: <a\nhref=\"https://dnstwister.report/\">https://dnstwister.report/</a></li>\n<li>Link to whois: <a\nhref=\"https://www.whois.com/whois\">https://www.whois.com/whois</a></li>\n</ul></li>\n<li><strong>Password Managers.</strong>\n<ul>\n<li>Link to bitwarden: <a\nhref=\"https://bitwarden.com/\">https://bitwarden.com/</a></li>\n<li>Link to keepassxc: <a\nhref=\"https://keepassxc.org/\">https://keepassxc.org/</a></li>\n</ul></li>\n</ul>\n<hr />\n<h2 id=\"two-factor-and-multifactor-authentication\">Two-factor and\nMultifactor Authentication.</h2>\n<ul>\n<li><p>First, authentication. This is the process of verifying the\nvalidity of something; in our case, user credentials/identity. The most\ncommon way to authenticate is: <em>USERNAME</em> and <em>PASSWORD</em>.\nThis is just a single layer (single-factor authentication) and isn&#x2019;t\nenough to discourage attackers.</p></li>\n<li><p>Second, 2FA (Two-factor Authentication). 2FA increases the\ndifficulty for attackers by providing users an additional layer of\nsecurity to accomplish authentication. Common 2FA methods are: TOTP/OTP\n(<em>the</em> <strong>One Time Password</strong>), Authenticator\nApplications (<a href=\"https://bitwarden.com/\">Bitwarden</a>, <a\nhref=\"https://keepassxc.org/\">KeePassXC</a>,...), and Security Keys (<a\nhref=\"https://www.yubico.com/\">Yubikey</a>). This works similar to ATMs;\nto authenticate the user must provide both knowledge (account\n<strong>PIN</strong>) and a physical object (bank card).</p></li>\n<li><p>Last, but not least, MFA (Multifactor Authentication). Similar to\n2FA, MFA offers users security with the addition of biometrics\n(fingerprint scan, retina scan, facial recognition, and voice\nrecognition). Attackers must overcome the knowledge factor, Possession\nfactor, Inherence/Biometric factor, Time factor, and sometimes Location\nfactor.</p></li>\n<li><p><strong>MORE helpful security information.</strong></p>\n<ul>\n<li><a href=\"https://fidoalliance.org/specifications/\">FIDO Alliance\nSpecifications.</a></li>\n<li><a\nhref=\"https://bitwarden.com/
(3718,'2022-11-02','Making Ansible playbooks to configure Single Sign On for popular open source applications',239,'A small introduction into my latest project when I spoke at the recent Nextcloud 2022 conference.','<p>This is a recording of a short introduction into my latest\nproject.</p>\n<p>To help sysadmins everywhere the Onestein organization (an\norganization specialized in Odoo implementations) invested 4 month of\nresearch to create a set of easy to use Ansible playbooks to configure\nsingle sign on (SSO) for popular open source applications to enable them\nto authenticate to a Keycloak server as the central identity\nprovider.</p>\n<p>These playbooks have been published on <a\nhref=\"https://github.com/onesteinbv/project_single_sign_on\"\nclass=\"uri\">https://github.com/onesteinbv/project_single_sign_on</a>.</p>\n<p>The list of supported applications are currently:</p>\n<ul>\n<li>Bitwarden</li>\n<li>Jenkins</li>\n<li>Gitlab</li>\n<li>Keycloak (not SSO, but the identity provider)</li>\n<li>Nextcloud</li>\n<li>Odoo</li>\n<li>Xwiki</li>\n<li>Zabbix</li>\n</ul>\n<p>All playbooks and servers are for Ubuntu servers and are meant to be\nused as a starting point.</p>\n<p>5 minute YouTube talk at the 2022 Nextcloud conference about this\nproject:<br />\n<a href=\"https://www.youtube.com/watch?v=pDPKzo8Bi10\"\nclass=\"uri\">https://www.youtube.com/watch?v=pDPKzo8Bi10</a></p>\n',369,61,0,'CC-BY-SA','ansible, playbooks, sso, keycloak, single sign on',0,0,1),
(3735,'2022-11-25','i3 Tiling Window Manager',953,'i3 Tiling Window Manager with a bonus KDE Plasma integration','<h2 id=\"what-is-i3\"><em><em>What is i3?</em></em></h2>\n<ul>\n<li>Lightweight tiling window manager</li>\n<li>Configured with 2 files\n<ul>\n<li>~/.config/i3/config</li>\n<li>/etc/i3status.conf</li>\n</ul></li>\n</ul>\n<h2 id=\"multi-monitor-support\"><em><em>Multi-monitor\nsupport</em></em></h2>\n<h4 id=\"monitor-properties\"><em><em>Monitor properties</em></em></h4>\n<pre><code> xrandr -q | grep HDMI</code></pre>\n<ul>\n<li>HDMI-A-0 disconnected primary (normal left inverted right x axis y\naxis)</li>\n</ul>\n<pre><code> xrandr --prop | grep HDMI</code></pre>\n<ul>\n<li><p>HDMI-A-0 disconnected primary (normal left inverted right x axis\ny axis)</p></li>\n<li><p>supported: Unknown, VGA, DVI-D, HDMI, DP, Wireless,\nNative</p></li>\n</ul>\n<pre><code> ## dualmonitor.sh\n\n #!/bin/bash\n echo &#39;1 for on 2 for off&#39;\n read monitor\n if [ $monitor == 1 ]; then\n xrandr --output HDMI-A-0 --auto --left-of eDP\n elif [ $monitor == 2 ]; then\n xrandr --output HDMI-A-0 --off\n fi</code></pre>\n<h3 id=\"top-keybindings\"><em><em>Top keybindings</em></em></h3>\n<pre><code>Mod + O --&gt; Open Firefox\nMod + Enter --&gt; Open Terminal\nMod + M --&gt; Open the Mutt email client\nMod + Shift + M --&gt; Open the Sylpheed email client\n\nMod1 + D --&gt; Open Dmenu\nMod1 + T --&gt; Open Tenacity</code></pre>\n<h3 id=\"mod-keys\"><em><em>Mod keys</em></em></h3>\n<pre><code>mod1 Alt_L (0x40), Meta_L (0xcd)\n\nmod4 Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)</code></pre>\n<h3 id=\"area-selection-screenshots\"><em><em>Area selection\nscreenshots</em></em></h3>\n<pre><code> bindsym --release Shift+Print exec import Pictures/Screenshots/screenshot_&quot;$(date &quot;+%a %b %F_%H-%M-%S&quot;)&quot;.png</code></pre>\n<h3 id=\"screenshot-entire-screen\"><em><em>Screenshot entire\nscreen</em></em></h3>\n<pre><code> bindsym --release Print exec import -window root Pictures/Screenshots/screenshot_&quot;$(date &quot;+%a %b %F_%H-%M-%S&quot;)&quot;.png</code></pre>\n<h3 id=\"compositor\"><em><em>Compositor</em></em></h3>\n<p>picom</p>\n<h3 id=\"set-wallpaper\"><em><em>Set wallpaper</em></em></h3>\n<pre><code> exec --no-startup-id feh --bg-fill &quot;~/Pictures/Wallpaper/Star\\ Trek/STAR-TREK-Starships-star-trek-2952089-1024-768.jpg&quot;</code></pre>\n<h3 id=\"i3-with-kde\"><em><em>i3 with KDE</em></em></h3>\n<p><code>systemctl --user mask plasma-kwin_x11.service</code></p>\n<ul>\n<li>plasma-i3.service</li>\n</ul>\n<pre><code> [Install]\n WantedBy=plasma-workspace.target\n\n [Unit]\n Description=Plasma Custom Window Manager\n Before=plasma-workspace.target\n\n [Service]\n ExecStart=/usr/bin/i3\n Slice=session.slice\n Restart=on-failure</code></pre>\n<p><code>systemctl --user daemon-reload</code></p>\n<p><code>systemctl --user enable plasma-i3.service</code></p>\n<h3 id=\"files\"><em><em>Files</em></em></h3>\n<p><a href=\"https://hackerpublicradio.org/eps/hpr3735/config\"\ntitle=\"~/.config/i3/config\">~/.config/i3/config</a></p>\n<p><a href=\"https://hackerpublicradio.org/eps/hpr3735/i3status.conf\"\ntitle=\"/etc/i3status.conf\">/etc/i3status.conf</a></p>\n<p><a\nhref=\"https://hackerpublicradio.org/eps/hpr3735/dualmonitor.sh.txt\"\ntitle=\"dualmonitor.sh\">dualmonitor.sh</a></p>\n<p><a\nhref=\"https://hackerpublicradio.org/eps/hpr3735/i3_with_kde_plasma_config.conf\"\ntitle=\"i3_with_kde_plasma_config.conf\">i3_with_kde_plasma_config.conf</a></p>\n<h3 id=\"links\"><em><em>Links</em></em></h3>\n<p><a href=\"https://en.wikipedia.org/wiki/Tiling_window_manager\"\ntitle=\"Wikipedia article on i3\">Wikipedia article on i3</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/Xinerama\"\ntitle=\"Wikipedia article on Xinerama\">Wikipedia article on\nXinerama</a></p>\n<p><a href=\"https://wiki.archlinux.org/title/I3\"\ntitle=\"Archwiki entry on i3\">Archwiki entry on i3</a></p>\n<p><a href=\"https://i3wm.org/docs/userguide.html\"\ntitle=\"i3 User Gu
(3722,'2022-11-08','Bash snippet - plurals in messages',513,'How to use English singular and plural words in messages','<article>\n<h2 id=\"overview\">Overview</h2>\n<p>Have you ever written a Bash script (or any shell script) where you\ngenerate a message like <code>\'Found 42 files\'</code> and the day comes\nwhen it reports <code>\'Found 1 files\'</code>?</p>\n<p>Have you been irritated by this? I have, and I go to lengths to deal\nproperly with (English) plurals in my Bash scripts.</p>\n<h2 id=\"method-1\">Method 1</h2>\n<p>The simplest solution would be to use an <code>\'if\'</code>\nstatement:</p>\n<pre><code>if [[ $fcount -eq 1 ]]; then\n echo &quot;Found 1 file&quot;\nelse\n echo &quot;Found $fcount files&quot;\nfi</code></pre>\n<p>This works, but to have to do it for every message would be a\npain!</p>\n<h2 id=\"method-2\">Method 2</h2>\n<p>The next approach to this problem might be to write a Bash\nfunction.</p>\n<pre><code>pluralise () {\n local singular=&quot;${1}&quot;\n local plural=&quot;${2}&quot;\n local count=&quot;${3}&quot;\n\n if [[ $count -eq 1 ]]; then\n echo &quot;$singular&quot;\n else\n echo &quot;$plural&quot;\n fi\n}</code></pre>\n<p>This can be called as follows:</p>\n<pre><code>$ i=1; echo &quot;Found $i $(pluralise &quot;file&quot; &quot;files&quot; $i)&quot;\nFound 1 file\n$ i=42; echo &quot;Found $i $(pluralise &quot;file&quot; &quot;files&quot; $i)&quot;\nFound 42 files</code></pre>\n<p>The string being displayed with <code>echo</code> contains a command\nsubstitution (<code>\'$(command)\'</code>) which returns\n<code>\'file\'</code> or <code>\'files\'</code> depending on the value\ngiven.</p>\n<p>The first two arguments can be more complex than plain strings:</p>\n<pre><code>$ i=1; echo &quot;There $(pluralise &quot;is 1 light&quot; &quot;are $i lights&quot; $i)&quot;\nThere is 1 light\n$ i=4; echo &quot;There $(pluralise &quot;is 1 light&quot; &quot;are $i lights&quot; $i)&quot;\nThere are 4 lights</code></pre>\n<p>The <a\nhref=\"https://hackerpublicradio.org/eps/hpr3722/pluralise.sh\"><code>pluralise</code>\nfunction</a> is available for download.</p>\n<h2 id=\"method-3\">Method 3</h2>\n<p>The GNU project has developed a set of utilities called the <em>GNU\ngettext utilities</em> consisting of tools and <a\nhref=\"https://www.gnu.org/software/gettext/\">documentation</a> for\ntranslation. This is a large subject which is not suitable for a short\nHPR episode such as this one.</p>\n<p>Among the tools is <code>\'ngettext\'</code> which performs the\nfunction we have been discussing - choosing among plural forms. It also\nimplements translations if desired (and translation files are provided\nas part of the software being developed).</p>\n<p>We will not discuss the translation topic here, but the choice of\nplurals is something that can be used in Bash scripts.</p>\n<p>The <code>\'ngettext\'</code> tool takes three mandatory\nparameters:</p>\n<ul>\n<li><em>MSGID</em> - the singular form of the text</li>\n<li><em>MSGID-PLURAL</em> - the plural form of the text</li>\n<li><em>COUNT</em> - the value used to make the singular/plural\nchoice</li>\n</ul>\n<p>There are other optional parameters and options but they are not\nrelevant here.</p>\n<p>The tool can be used in exactly the same way as the\n<code>\'pluralise\'</code> example above.</p>\n<pre><code>$ i=1; echo &quot;There $(ngettext &quot;is 1 light&quot; &quot;are $i lights&quot; $i)&quot;\nThere is 1 light\n$ i=4; echo &quot;There $(ngettext &quot;is 1 light&quot; &quot;are $i lights&quot; $i)&quot;\nThere are 4 lights</code></pre>\n<p>Whether you use this or a Bash function is your choice.</p>\n<h2 id=\"conclusion\">Conclusion</h2>\n<p>I have been using <code>ngettext</code> in my scripts since I\ndiscovered it. If you also need to provide messages in your projects in\nother languages then this might be a good idea.</p>\n<p>I admit that my understanding of the GNU <code>gettext</code> project\nis superficial, so, on reflection it might be better to use a Bash\nfunction, since I dont currently n
(3723,'2022-11-09','HPR News',722,'News for the Community, by the Community.','<h1 id=\"hpr-news\">HPR News.</h1>\n<h2 id=\"threat-analysis-your-attack-surface\"><strong>Threat Analysis;\nyour attack surface.</strong></h2>\n<p><a\nhref=\"https://thehackernews.com/2022/10/european-police-arrest-gang-that-hacked.html\">Wireless\nkey fobs compromised in European nations (France, Spain, and\nLatvia)</a>. On October 10, 2022, European authorities arrested 31\nsuspects across three nations. The suspects are believed to be related\nto a cybercrime ring that allegedly advertised an &#x201C;automotive diagnostic\nsolution&#x201D; online and sent out fraudulent packages to their victims. The\nfraudulent packages contained malware and once installed onto the\nvictims vehicle, the attackers were able to unlock the vehicle, start\nthe ignition, then steal the vehicle without the physical key fob.\nEuropean authorities confiscated over &#x20AC;1 million in criminal assets\n(malicious software, tools, and an online domain).</p>\n<p><a\nhref=\"https://thehackernews.com/2022/10/researchers-claim-microsoft-office-365.html\">Microsoft\nOffice 365 has a broken encryption algorithm.</a> Microsoft Office 365\nuses an encryption algorithm called &#x201C;Office 365 Message Encryption&#x201D; to\nsend and receive encrypted email messages. The messages are encrypted in\nan Electronic Codebook (ECB). The U.S. National Institute of Standards\nand Technology (NIST) reported, \"ECB mode encrypts plaintext blocks\nindependently, without randomization; therefore, the inspection of any\ntwo ciphertext blocks reveals whether or not the corresponding plaintext\nblocks are equal\". Emails can be harvested today then decrypted later\nfor future attacks.</p>\n<h2 id=\"user-space\"><strong>User Space.</strong></h2>\n<p><a\nhref=\"https://www.cnet.com/culture/entertainment/netflixs-password-sharing-crackdown-is-coming/#ftag=CAD590a51e\">Netflix\ncrackdown on freeloaders.</a> Netflix is testing in Argentina, the\nDominican Republic, El Salvador, Guatemala, and Honduras Chile, Costa\nRica and Peru <a\nhref=\"https://about.netflix.com/en/news/paying-to-share-netflix-outside-your-household&#39;\">different\nefforts</a> to crackdown on freeloaders. The term &#x201C;freeloaders&#x201D; covers\nthe multiple users sharing a single Netflix account from different\nlocations. Netflix plans to charge an additional $3.00 - $4.00 per\nsubaccount.</p>\n<p><a\nhref=\"https://www.cnet.com/tech/services-and-software/samsung-touts-a-better-connected-smart-home-with-blockchain-security/#ftag=CADe34d7bf\">Samsung\nimplements private blockchain to link user devices.</a> While claiming\nthe private blockchain, &#x201C;has nothing to do with cryptomining&#x201D;, the Knox\nMatrix security system links all your devices together in a private\nblockchain instead using a server based group verification system. The\nsystem, Knox Matrix, is suppose to allow devices to &#x201C;manage themselves&#x201D;\nby auto updating, caching updates for other devices then distributing\nthe updates to other devices on the private blockchain.</p>\n<h2 id=\"toys-for-techs\">Toys for Techs.</h2>\n<ul>\n<li><a href=\"https://junocomputers.com/us/product/juno-tablet/\">Juno\nTablet:</a>\n<ul>\n<li><a href=\"https://www.whois.com/whois/junocomputers.com\">whois\nlookup</a></li>\n<li><a\nhref=\"https://dnstwister.report/search?ed=6a756e6f636f6d7075746572732e636f6d\">DNS\nTwister Report</a></li>\n</ul></li>\n</ul>\n<p>Juno Tablet is a Beta product; overall it works with a few bugs. This\nis a non-refundable product, you will only get store credit.</p>\n<ul>\n<li><p>Price: $429.00 USD.</p></li>\n<li><p>Screen Size: 10.1&#x201D;</p>\n<ul>\n<li>Screen Type: Full HD IPS screen 1920&#xD7;1200 Capacitive touch,\nCapacitive (10-Point) MIPI-DSI.</li>\n<li>Refresh Rate: 60 Hz.</li>\n</ul></li>\n<li><p>CPU: <a\nhref=\"https://www.intel.com/content/www/us/en/products/sku/212329/intel-celeron-processor-n5100-4m-cache-up-to-2-80-ghz/specifications.html\">Intel\nJasper Lake Intel Celeron N5100</a> (4 Cores / 4 Threads) &#x20
(3727,'2022-11-15','Expanding your filesystem with LVM',1480,'Rho`n describes adding a new hard drive to his work computer and expanding its filesystem','<h1 id=\"synopis\">Synopis</h1>\n<p>I installed a new 1TB Crucial MX500 SSD into my work computer. While\nwe are mostly a Windows based business, as the IT guy I do get a bit of\ndiscretion when updating my own machine (i.e. I get to solve all the\nproblems I create). Last year, I decided to run the Pop!_OS distribution\nof Linux on my work computer and run Windows in a VM on it. Recently the\nWindows image had grown and was causing disk space notifications. This\nprompted the additional hard drive.</p>\n<p>During the initial installation of Pop!_OS, I remember deciding not\nto bother with installing Linux Volume Management (LVM). I have used it\nin the past, but I am still much more comfortable with the old style\ndevice mapping and mounting disk partitions to directories. I even\nrationalized that if I needed to add more space, I will just add a new\ndisk with one big partition and map it to the home directory.</p>\n<p>Now a year later I am adding a new HD and thinking, I really hate all\nthe space that is most likely going to be wasted once I move the Windows\nimage to the new drive. Ok, I guess I should figure out how to install\nLVM, and use it to manage the space on both drives. Luckily there a\nnumber of good blogs to be found on adding LVM to an existing system.\nThe following are the steps and commands I used to accomplish my\ngoal.</p>\n<h1 id=\"commands\">Commands</h1>\n<p>Most of the following commands need to be run as root. I decided to\nchange to root user instead of typing sudo before every command. The\nbasic steps to creating a single filesystem sharing the storage space\nbetween two physical disk partitions are:</p>\n<ol type=\"1\">\n<li>Let LVM know about the new disk.</li>\n<li>In my case, create a volume group and add the new disk and its full\nstorage space to it.</li>\n<li>Copy the disk partition with the root filesystem from the origin\ndisk to the new volume group</li>\n<li>Expand the root filesystem on the volume group to the full size of\nthe volume group.</li>\n<li>Update system configuration to boot with the root filesystem on the\nnew volume group.</li>\n<li>Let LVM know about the old root disk partition.</li>\n<li>Add the old root partition to the volume group.</li>\n<li>Expand the root filesystem on the volume group to include the new\nspace in the volume group.</li>\n</ol>\n<pre><code>root@work# pvcreate /dev/sdb\n\nroot@work# pvdisplay\n &quot;/dev/sdb&quot; is a new physical volume of &quot;931.51 GiB&quot;\n --- NEW Physical volume ---\n PV Name /dev/sdb\n VG Name\n PV Size 931.51 GiB\n Allocatable NO\n PE Size 0\n Total PE 0\n Free PE 0\n Allocated PE 0\n PV UUID wRBz38-xxxx-xxxx-xxxx-xxxx-xxxx-xxxxxx\n\nroot@work# vgcreate workvg /dev/dsb\n No device found for /dev/dsb.\nroot@work# vgcreate workvg /dev/sdb\n Volume group &quot;workvg&quot; successfully created\nroot@work# vgdisplay\n --- Volume group ---\n VG Name workvg\n System ID\n Format lvm2\n Metadata Areas 1\n Metadata Sequence No 1\n VG Access read/write\n VG Status resizable\n MAX LV 0\n Cur LV 0\n Open LV 0\n Max PV 0\n Cur PV 1\n Act PV 1\n VG Size 931.51 GiB\n PE Size 4.00 MiB\n Total PE 238467\n Alloc PE / Size 0 / 0\n Free PE / Size 238467 / 931.51 GiB\n VG UUID 67DSwP-xxxx-xxxx-xxxx-xxxx-xxxx-xxxxxx\n\nroot@work# pvdisplay\n --- Physical volume ---\n PV Name /dev/sdb\n VG Name workvg\n PV Size 931.51 GiB / not usable 1.71 MiB\n Allocatable yes\n PE Size 4.00 MiB\n Total PE 238467\n Free PE 238467\n Allocated PE
(3728,'2022-11-16','Pinebook Pro review',2917,'I talk about the Pinebook Pro (and bricking various other arm devices)','<h1 id=\"why-the-pbp\">Why the PBP?</h1>\n<p>Lately I\'ve been thinking a lot about power consumption when it comes\nto computing. Intuitively, I know that arm devices pull significantly\nless power than amd64 machines but I\'ve never really tested this in the\nreal world. So, some preliminary power consumption stats:</p>\n<ul>\n<li>big amd64 laptops (thinkpad x220 and t490) pull at most 65\nwatts</li>\n<li>small arm SOCs typically pull at most 15 watts</li>\n<li>most android phones pull at most 18 watts</li>\n<li>Pentium 4 pulls at most 250 watts</li>\n</ul>\n<p>These numbers are fairly easy to find: just look at the power supply\nfor a MAXIMUM OUTPUT value or something similar. This is the point at\nwhich the power supply fails so we can safely assume this is the maximum\npower draw for any given computer. Of course, this is DC output and not\nAC output and anyone who knows anything about electricity knows that\nconverting AC to DC is expensive but these values are useful as a\ngeneral estimate. <a href=\"https://0x19.org/posts/2022-01-08.php\">I\nwrote something similar about computer power consumption some time\nago</a></p>\n<p>My goal in all of this was to find a self contained computer that\nruns UNIX, doesn\'t take much power, isn\'t a consumption rectangle\n(smartphone), and can be charged from both AC with a rectifier and\nstored DC without an inverter. Charging from existing stored power was\nprobably the most novel consideration. Everything else is a given.</p>\n<p>A few obvious answers come to mind:</p>\n<ul>\n<li><a\nhref=\"https://www.raspberrypi.com/products/raspberry-pi-4-model-b/\">Raspberry\nPi 4</a> is not self contained and using a pitop in public is a good way\nto get the bomb squad called on you</li>\n<li><a href=\"https://beagleboard.org/black\">beaglebone black</a> is good\ntoo but neither self contained nor popular enough for wide OS\nsupport</li>\n<li><a\nhref=\"https://pine64.com/product/14%e2%80%b3-pinebook-pro-linux-laptop-ansi-us-keyboard/\">Pinebook\nPro</a> is self contained and is supported by some of the operating\nsystems I\'d like to run</li>\n</ul>\n<p>The PBP is an obvious choice. It\'s an open hardware ARM laptop that\ncan be charged via a barrel cable (AC-&gt;DC) or via USB-C. Charging\nfrom USB-C is a very useful feature because it means I can easily choose\nbetween charging from the mains where efficiency loss is acceptable and\ncharging from a DC source where efficiency loss is unacceptable.</p>\n<p>The actual use case is \"what computer can I run off of a old car\nbattery or the alternator in my car without burning power with an\ninverter?\". I\'ll revisit this use case in a later section.</p>\n<hr />\n<h1 id=\"initial-notes\">Initial notes</h1>\n<p>I took these notes immediately upon opening the PBP. They remain\nunedited because I want to be honest on the first impressions.</p>\n<h2 id=\"shipping\">shipping</h2>\n<p>I was worried about DHL dropping my package out of a plane. Or\nleaving it out in the rain. Or having one of the employees use it as a\nsoccer ball. Or having the thing get stuck in customs. It ended up\narriving safely and was packaged well. Two boxes within a padded\nenvelope within another envelope. Surprising for DHL.</p>\n<h2 id=\"hardware-impressions\">hardware impressions</h2>\n<ul>\n<li>Touchpad sucks and trackpad scrolling sucks (it\'s probably just\nKDE). Installing synaptics drivers allegedly fix this problem.</li>\n<li>keyboard is comfortable, clickly, full sized despite being a\nchicklet keyboard. I don\'t like that the <code>&lt;ctl&gt;</code> and\n<code>&lt;fn&gt;</code> keys are backwards when compared to a thinkpad.\nI really like the thinkpad keyboard layout.</li>\n<li>Shift+enter seems to type the <code>M</code> character. My muscle\nmemory for key chording is now broken. This appears to be a fundamental\ndesign flaw with KDE.</li>\n<li>Passively cooled, gets a bit warm.</li>\n<li>display is sharp (IPS) and almost too high res
(3734,'2022-11-24','Inetd: the internet super-server',1008,'I talk about inetd and give an example of how to write a service for it','<h1 id=\"inetd-the-internet-super-server\">Inetd, the internet\nsuper-server</h1>\n<p>Inetd is slowly becoming one of my favorite daemons. It makes writing\nprograms that talk over the network super easy. Inetd handles all of the\nhard socket stuff and allows admins to write simple UNIX-ey programs.\nInetd is useful because it allows us to write services that only run\nwhen they are requested in order to reduce total system load.</p>\n<h1 id=\"how-inetd-works\">How inetd works</h1>\n<p>Inetd can be conceptualized as a sort of \"wrapper daemon\". Inetd is\nalways running <em>despite the fact that many of it\'s sub-services are\nnot always running</em>.</p>\n<p>Inetd listens on a specific port. When it gets a request, it handles\nall of the hard socket parts. This request is then passed to one of our\n<em>inetd services</em></p>\n<p>We will use a simple server that echoes the request back to the user\nas an example. We will call this <em>inetd service</em>\n<code>echod</code></p>\n<p>Inetd passes requests to <code>echod</code> as text.\n<code>echod</code> will read from stdin and write to stdout. Everything\nwritten to stdout is passed to the client. <code>echod</code> will then\nexit.</p>\n<h2 id=\"echo-server-example\">echo server example</h2>\n<p>I use OpenBSD on my webserver. Sadly, systemd sockets have replaced\ninetd on many linux systems. systemd sockets are entirely painful to\nuse. I can\'t verify that these examples will work on non-OpenBSD systems\nbut the <code>openbsd-inetd</code> package is available on a wide\nvariety of debianoiads.</p>\n<p>Let\'s write out out <code>echod</code> service and the configuration\nfiles required to get it working.</p>\n<p>Edit <code>/etc/inetd.conf</code></p>\n<pre><code># port socket type protocol wait/nowait user server program server arguments(optional)\n9999 stream tcp nowait daemon /opt/echod/echod.sh</code></pre>\n<p>And our <code>echod</code> service file, located at\n<code>/opt/echod/echod.sh</code>:</p>\n<pre><code>#!/bin/sh\nwhile read l; do\n echo $l;\ndone;\n\nexit 0;</code></pre>\n<p>Be sure to <code>chmod +x echod.sh</code> and\n<code>rcctl enable inetd &amp;&amp; rcctl start inetd</code> or it won\'t\nrun.</p>\n<h3 id=\"testing\">Testing</h3>\n<p>Sometimes you can use curl to test a service but I will use netcat\ninstead because it doesn\'t assume http.</p>\n<pre><code>$ echo &quot;foobar&quot; | nc -N localhost 9999\nfoobar\n$</code></pre>\n<p>You can also use telnet to test the service:</p>\n<pre><code>$ telnet localhost 9999\nTrying 127.0.0.1...\nConnected to localhost.\nEscape character is &#39;^]&#39;.\nfoo\nfoo\nfoobar\nfoobar\necho back\necho back\n^]\ntelnet&gt; Connection closed.\n$</code></pre>\n<h2 id=\"finger-server-example\">Finger server example</h2>\n<p>Many months ago, I wrote a finger server to learn more about how\ninetd works (and to write a finger daemon that doesn\'t allow for\nenumerating non-regular users). <a\nhref=\"https://gitlab.com/binrc/fingerd/\">You can download the source\ncode for my finger server from my gitlab</a>.</p>\n<p>This finger server only allows information from users who have a home\ndirectory in <code>/home/</code> to be displayed. It also has hard-coded\nfilenames it looks for. Example output looks something like:</p>\n<pre><code>$ finger binrc@localhost\n[localhost/127.0.0.1]\nbinrc@openbsd.my.domain\n\nhttps://0x19.org\n\nWorking on an HPR episode\n\nbinrc.nospam@nospam.protonmail.com\n\nNo .pgpkey\n\n$</code></pre>\n<h2 id=\"gopher-server-example\">Gopher server example</h2>\n<p>Currently, I am working on a gopher server that runs through inetd to\nlearn more about how gopher works (and to write a gopher server that\ndoesn\'t allow for path traversal). I have yet to add autoindex support\nbut I thought it would be good to include anyway because it really\ndemonstrates how simple it can be to write an inetd service. <a\nhref=\"https://gitlab.c
(3729,'2022-11-17','Contributing to SuperTuxKart',914,'Explaining the workflow to contribute to this foss game with media assets','<ul>\n<li><p>Main website of the game <a href=\"https://supertuxkart.net\"\nclass=\"uri\">https://supertuxkart.net</a></p></li>\n<li><p>Stk core engine (C++) <a\nhref=\"https://github.com/supertuxkart/stk-code\"\nclass=\"uri\">https://github.com/supertuxkart/stk-code</a></p></li>\n<li><p>Tools for 2d and 3d production <a\nhref=\"https://supertuxkart.net/Installing_Tools\"\nclass=\"uri\">https://supertuxkart.net/Installing_Tools</a></p></li>\n<li><p>Media repo with all source files <a\nhref=\"https://supertuxkart.net/Media_Repo\"\nclass=\"uri\">https://supertuxkart.net/Media_Repo</a></p></li>\n<li><p>Style guidelines to maintain visual consistency <a\nhref=\"https://supertuxkart.net/Texture_Guidelines\"\nclass=\"uri\">https://supertuxkart.net/Texture_Guidelines</a></p></li>\n<li><p>Addons website to publish your creation <a\nhref=\"https://online.supertuxkart.net/\"\nclass=\"uri\">https://online.supertuxkart.net/</a></p></li>\n</ul>\n<p>This time I tried a \"car rambling podcast\", where I record while I\ndrive and stop the recording only when reaching the destination</p>\n',407,0,1,'CC-BY-SA','computer graphics,supertuxkart,audio production,assets,contribution,blender,3d model,krita,hand draw',0,0,1),
(3732,'2022-11-22','My experience owning an Atari Jaguar',1976,'I talk about my experience with the Atari Jaguar and Jaguar CD','<p>My experience owning and playing the Atari Jaguar and Jaguar CD.</p>\n',412,0,0,'CC-BY-SA','atari jaguar, video games, atari',0,0,1),
(3731,'2022-11-21','Speech recognition in Kdenlive',332,'A brief description of how you can use speech recognition to transcribe your clips in Kdenlive','<p>Recently I returned to Kdenlive after about a 10-year break, and was\npleased to discover the speech recognition feature.</p>\n<p><a\nhref=\"https://docs.kdenlive.org/en/effects_and_compositions/speech_to_text.html#install-python\"\nclass=\"uri\">https://docs.kdenlive.org/en/effects_and_compositions/speech_to_text.html#install-python</a></p>\n',399,0,0,'CC-BY-SA','kdenlive,\"video editing\",\"speech recognition\"',0,0,1),
(3733,'2022-11-23','Smite',1738,'The battleground of the gods.','<h2 id=\"smite-the-battleground-of-the-gods\"><a\nhref=\"https://smitegame.com/\">Smite</a>, the battleground of the\nGODS.</h2>\n<p>SMITE is a free-to-play online MOBA (Multiplayer Online Battle Arena)\nand ARTS (action real-time strategy) game developed by Titan Forge Games\nand published by Hi-Rez Studios. The game is currently available on PC,\nXbox One, PlayStation 4 and Nintendo Switch. Players choose from a large\nselection of playable gods, immortals, and creatures from ancient\nmythology and join session-based arena combat. Each of the playable\ncharacters have their own unique abilities and fighting styles. This\nsession-based arena combat is mostly 5 players against another set of 5\nplayers, but there are several other Game Modes with different rules and\nobjectives, and the goal in most of them is to defeat the Titan located\nin the opposite team\'s base while protecting your own Titan.</p>\n<p><a href=\"https://smite.fandom.com/wiki/Smite_Wiki\">Smite wiki</a>:\nThe most comprehensive source of SMITE information maintained by the\ncommunity.</p>\n<p><a href=\"https://smitegame.com/gods/\">List of all in-game gods</a>.\nLinks to <a href=\"https://smitegame.com/gods/bastet\">Bastet</a> &amp; <a\nhref=\"https://smitegame.com/gods/ares\">Ares</a>.</p>\n<p><a href=\"https://smitegame.com/items/\">List of all in-game\nitems</a>.</p>\n',391,0,1,'CC-BY-SA','Smite, MOBA, Arena, Bastet, Gaming',0,0,1),
(3737,'2022-11-29','Review of KOBO Libra H20 e-reader',708,'Rho`n talks about his new KOBO Libra H20 e-reader','<h2 id=\"introduction\">Introduction</h2>\n<p>I have wanted an e-ink based e-reader for a while. Reading on my\ncomputer is ok. Reading on my phone is doable, but is very annoying. If\nI don\'t keep my finger on the screen, it will go blank and then I have\nto make sure and press the power button to bring the screen back to life\nbefore it locks. A tablet would probably be a nice compromise, but I\nreally wanted to try out an e-ink display, and didn\'t want the potential\ndistractions of a more multi-purpose device. I wanted not only and e-ink\ndisplay, but also one that ran a linux operating system, and a reader\nthat I could potentially put a different Linux distribution on, or\nmodify myself somehow. When asked what I wanted for Christmas this year\nby my wonderful girlfriend, I sent her a link to the KOBO Libra H20.</p>\n<h2 id=\"kobo-libra-h20-specification\">KOBO Libra H20 specification</h2>\n<ul>\n<li><p>processor - Freescale i.MX6 SLL 1 GHz</p></li>\n<li><p>RAM - 512 MB</p></li>\n<li><p>hard drive - 8GB</p></li>\n<li><p>display - 7 inch HD 300 PPI E Ink touchscreen with 1680 x 1264\nresolution</p></li>\n<li><p>dimensions - 6.3 by 5.7 by 0.3 inches (HWD) and 6.8 ounces or 159\nby 144 by 7.6 mm and 192g</p></li>\n<li><p>battery - 1200 mAh. Good battery life. Currently I use it\ninfrequently, and have charged it maybe 4 or 5 times of the last\nyear</p></li>\n<li><p>Connectivity -WiFi 802.11 b/g/n and Micro USB. I have it\nconnected to my home network. Have only used WiFi to update the OS. I\nuse the USB port to transfer books I\'ve downloaded to my computer, and\nto charge the Kobo.</p></li>\n</ul>\n<h2 id=\"calibre-ebook-management\">Calibre ebook management</h2>\n<p>I knew about Calibre, but had never used it. So far it has been a\ngreat e-book manager. Has very nice features for editing meta data and\norganizing my books. It will also transfer the books to the Libra H20\nand update its internal database. One thing I found is KOBO does have\nits own EPUB format that it uses to optimize display of books. In\nparticular, it fixes an issue where images in standard EPUB format don\'t\nscale to the size of the page. Calibre has a plugin system, and a 3rd\nparty plugin is available that will convert a standard EPUB format to\nKePUB when you transfer the book to the e-reader.</p>\n<h2 id=\"conclusion\">Conclusion</h2>\n<p>I have been enjoying my KOBO reader. It can feel a little slow at\ntimes, especially rendering pdf files where the page is a picture of the\ntext and not made up of electronic characters, and it does render images\nin standard epub format a bit small at times. Other than these two\nthings, it is very easy to read in all lighting settings, and I enjoy\nreading using the KOBO.</p>\n<h2 id=\"references\">References</h2>\n<ul>\n<li><p><a href=\"https://www.kobo.com/\">KOBO website</a></p></li>\n<li><p><a href=\"https://us.kobobooks.com/products/kobo-libra-h2o\">KOBO\nLibra H20</a></p></li>\n<li><p><a href=\"https://www.manua.ls/kobo/libra-h2o/manual?p=1\">Kobo\nLibra H2O manual</a></p></li>\n<li><p><a href=\"https://www.techradar.com/reviews/kobo-libra-h2o\">Kobo\nLibra H2O review</a>; Sharmishta Sarkar, Dan Gardiner; May 20,\n2020</p></li>\n<li><p><a href=\"https://calibre-ebook.com/\">Calibre ebook\nmanagement</a></p></li>\n<li><p><a\nhref=\"https://www.epubor.com/how-to-convert-epub-to-kepub-calibre.html\">How\nto Convert EPUB to Kepub Calibre</a>; Ada Wang; 2/13/2020</p></li>\n<li><p><a\nhref=\"https://hunterzee.gcbackup.us/kobotouchextended/\">Kobotouchextended</a></p></li>\n<li><p><a href=\"https://www.eink.com/electronic-ink.html\">E\nInk</a></p></li>\n</ul>\n',293,0,0,'CC-BY-SA','e-reader,KOBO,KOBO Libra, KOBO Libra H20, e-ink, Calibre, epub, kepub',0,0,1),
(3736,'2022-11-28','Metasyntactic words',703,'Blah blah blah (literally)','<p>Metasyntactic words are vocables such as \"foo\", \"bar\", \"baz\", \"blah\", and so on.</p>\n',78,0,0,'CC-BY-SA','linguistics, programming, syntax',0,0,1),
(3746,'2022-12-12','Cpuinfo',894,'How to get CPU info on Linux','<p>Various ways to get information about your CPU on Linux.</p>\n',78,0,0,'CC-BY-SA','cpu,utilities,programming',0,0,1),
(3739,'2022-12-01','Multipactors for the masses.',1587,'Seemingly advanced artefacts of one\'s locale are tangled whims upon exponential inspiration. ','<p>I found an copy of an old video. This episode is just a verbal\ntranscription of that lecture.</p>\n<ul>\n<li>Electrostatic containment.</li>\n<li>Fusor.</li>\n<li>Riggatron.</li>\n<li>Multipactor.</li>\n</ul>\n<p>Robert Murray Smith has got some thoroughly practical and useful\ninstructional material on Youtube. His channel is his name. He is keen\nto transmit knowledge and to stimulate innovation.</p>\n<p>I just looked up the books which he has written, and one of them is\non the subject of this episode:</p>\n<p><em>Beyond The Fusor: A New Design For A Table Top Fusion Reactor And\nHow To Build It</em><br />\nby Robert Murray-Smith.</p>\n',398,0,1,'CC-BY-SA','fusor,riggatron,multipactor,electrostatic ',0,0,1),
(3756,'2022-12-26','Verify yourself on Mastodon with PGP and Keyoxide',1940,'Verify your Mastodon account using GnuPG and Keyoxide.org','<p>Keyoxide is a project that parses a PGP key and makes its data available to Mastodon for identity verification.</p>\r\n<p><small>Added by Ken - 2022-12-27</small></p>\r\n<p>To list the key</p>\r\n<p><code>gpg2 --list-secret-keys</code></p>\r\n<p>To update and export your key</p>\r\n<pre><code>YOUR_GPG_UID=$( gpg2 --list-secret-keys | grep -A1 &#39;sec&#39; | tail -1 | awk &#39;{print $NF}&#39; )\r\n\r\n$ gpg2 --list-secret-keys ${YOUR_GPG_UID}\r\n\r\n$ gpg2 --edit-key ${YOUR_GPG_UID}\r\n\r\ngpg&gt; uid 1\r\n\r\ngpg&gt; primary\r\n\r\ngpg&gt; notation\r\nEnter the notation: proof@ariadne.id=https://YOUR-MASTODON-SERVER/@YOUR_MASTODON_ID\r\n\r\ngpg&gt; showpref \r\n\r\ngpg&gt; save \r\n\r\n$ gpg2 --armor --export ${YOUR_GPG_UID} &gt; pub-key.asc</code></pre>\r\n<p>Upload to <a href=\"https://keys.openpgp.org/\">https://keys.openpgp.org/</a></p>\r\n<p>Select Verify email</p>\r\n<p>Click the email link</p>\r\n<p>You should get a message \"Your key ${YOUR_GPG_UID} is now published for the identity YOUR_EMAIL_ADDRESS.\"</p>\r\n<p>Got to your mastodon server https://YOUR-MASTODON-SERVER/settings/profile</p>\r\n<p>And on the page add GPG and https://keyoxide.org/hkp/${YOUR_GPG_UID}</p>\r\n\r\n\r\n\r\n<h3>Links</h3>\r\n<ul>\r\n<li><a href=\"https://opensource.com/article/22/12/verified-mastodon-pgp-keyoxide\">https://opensource.com/article/22/12/verified-mastodon-pgp-keyoxide</a></li>\r\n<li><a href=\"https://www.youtube.com/watch?v=nLhiNOa4DBs\">https://www.youtube.com/watch?v=nLhiNOa4DBs</a></li>\r\n</ul>\r\n\r\n',78,0,0,'CC-BY-SA','pgp, gnupg, crypto, identity',0,0,1),
(3754,'2022-12-22','GOD probably will use a Chromebook',2250,'A Squirrels Rebuttal of GNU World Order episode 489 Cloud Services','<hr />\r\n<h3>Counter Point</h3>\r\n<p>A counter point to this show is available: <a href=\"https://hackerpublicradio.org/eps.php?id=3793\">hpr3793 :: RE: Zen_Floater2</a>\r\n</p>\r\n<hr />\r\n\r\n\r\n\r\n<ul>\r\n<li><a href=\"https://gnuworldorder.info/\"\r\nclass=\"uri\">https://gnuworldorder.info/</a> See episode 489 Cloud\r\nServices</li>\r\n</ul>\r\n<p>How using a Chromebook could eventually result in Mankind creating\r\nGOD in his own image.</p>\r\n<p>A brief discussion of my attempt to emulate Google Services from a\r\nChromebook on a Devuan equipped Lenovo Laptop and how all of this will\r\neventually result in mankind actually creating a real GOD who will be\r\nmasters of EVERYTHING.</p>\r\n<p>A Squirrels perspective on life, the universe and everything - even\r\nCloud Services and the lie that is A.I.</p>\r\n',377,0,1,'CC-BY-SA','Chromebooks,Cloud_Services,gnuworldorder,GOD,ALIENS,SQUIRRELS',0,0,1),
(3745,'2022-12-09','Pinecil walkthrough',525,'Details of the Pinecil soldering iron menu with a secret menu','<p>Pinecil &#x2013; a RISC-V powered, open and versatile soldering iron. It can\nbe <br> powered via USB-C PD as well as a DC5525 jack, and runs\ncommunity developed <br> software. Moreover, it is compatible with\npopular TS-100 tips. All this at half <br> the price of the\ncompetition.</p>\n<p><a href=\"https://pine64.com/product-category/pinecil\"\ntitle=\"Pine64 Pinecil\">Pine64 Pinecil</a></p>\n<p><em><em>Version</em></em></p>\n<ul>\n<li>Long press on minus button shows the version <br/> v2.18.A1A569A\n17-07-22</li>\n</ul>\n<p><em><em>Secret setting</em></em></p>\n<ul>\n<li>Long press on minus button then short press on the plus button shows\nthe version with the elapsed time the iron is on.\n<ul>\n<li>This is is seconds, with the last digit in 100mS increments\n<ul>\n<li>example 101 = 10 seconds and 100 milliseconds</li>\n</ul></li>\n</ul></li>\n</ul>\n<p><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3745/image_version_screen.png\"\ntitle=\"Software version v2.18.A1A569A\" alt=\"Software version\" /></p>\n<p><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3745/test3_480_5fps.gif\"\ntitle=\"Sample screen animation showing power settings\"\nalt=\"Sample screen animation\" /></p>\n<p><em><em>Menu</em></em></p>\n<ul>\n<li><p>Power Settings</p>\n<ul>\n<li>Power source\n<ul>\n<li>Sets cutoff voltage. (DC 10V) (S 3.3V per cell, disabled power\nlimit)</li>\n</ul></li>\n<li>QC Voltage 20.0\n<ul>\n<li>Max QC Voltage the iron should negotiate for</li>\n<li>Range: 9 to 22 volts</li>\n</ul></li>\n<li>PD Timeout (20)\n<ul>\n<li>PD negotiation timeout in 100ms steps for compatibility with some QC\nchargers</li>\n<li>Range: 1 to 50 seconds / Off <br/><br/></li>\n</ul></li>\n</ul></li>\n<li><p>Soldering settings</p>\n<ul>\n<li>Boost temp 410<span class=\"math inline\"><sup>&#x2218;</sup></span>\n<ul>\n<li>Tip temperature used in \"boost mode\"</li>\n<li>Range: 10 to 450 degrees (Increments of 10)</li>\n</ul></li>\n<li>Start-up behavior (0)\n<ul>\n<li>0=off | S=heat up to soldering temp | Z=standby at sleep temperature\nuntil moved | R=Standby without heating until moved</li>\n</ul></li>\n<li>Temperature change short (1)\n<ul>\n<li>Temperature-change-increment on short button press</li>\n<li>Range: 1 to 50</li>\n</ul></li>\n<li>Temperature change long (10)\n<ul>\n<li>Temperature-change-increment on short button press</li>\n<li>Range: 5 to 90 (Increments of 5)</li>\n</ul></li>\n<li>Allow locking buttons (D)\n<ul>\n<li>While soldering, hold down both buttons to toggle locking them</li>\n<li>(D=disable | B=boost mode only | F=full locking) <br/><br/></li>\n</ul></li>\n</ul></li>\n<li><p>Sleep mode</p>\n<ul>\n<li>Motion Sensitivity (7)\n<ul>\n<li>0=off | 1=least sensitive | ... | 9=most sensitive</li>\n</ul></li>\n<li>Sleep temp (110 degrees)\n<ul>\n<li>Tip temperature while in \"sleep mode\"</li>\n<li>Range: 10 to 300</li>\n</ul></li>\n<li>Sleep timeout (50s)\n<ul>\n<li>Interval before \"sleep mode\" kicks in (s=seconds | m=minutes)</li>\n<li>Range: 10s to 50s | 1m to 10m | Off</li>\n</ul></li>\n<li>Shutdown timeout 10m\n<ul>\n<li>Interval before the iron shuts down (m=minutes)</li>\n<li>Range: 1m to 60m | Off <br/><br/></li>\n</ul></li>\n</ul></li>\n<li><p>User interface</p>\n<ul>\n<li>Temperature unit (C)\n<ul>\n<li>C=Celsius | F=Fahrenheit</li>\n</ul></li>\n<li>Display orientation (R)\n<ul>\n<li>R=right-handed | L=left-handed | A=automatic</li>\n</ul></li>\n<li>Cooldown flashing &#x2610;\n<ul>\n<li>Flash the temperature reading after heating was halted while the tip\nis still hot</li>\n</ul></li>\n<li>Scrolling speed (S)\n<ul>\n<li>Speed info text scrolls past at (S=slow | F=fast)</li>\n</ul></li>\n<li>Swap +- key &#x2610;\n<ul>\n<li>Reverse assignment of buttons for temperature adjustment</li>\n</ul></li>\n<li>Anim. speed (M)\n<ul>\n<li>Pace of icon animations in the menu (0=off | S=slow | M=medium |\nF=fast)</li>\n</ul></li>\n<li>Anim. loop &#x2610;\n<ul>\n<li>Loop icon animations in main menu</li>\n</ul></li>\n<li>(Br
(3749,'2022-12-15','Making your own parts',855,'3D printers are useful for making your own custom parts and I talk about the parts I\'ve made.','<p>The part I made moments before the show is available at <a href=\"https://www.thingiverse.com/thing:5686075\">Thingiverse</a>.\nHere is a screenshot of modeling it in Blender followed by the piece installed on the microphone holder.</p>\n\n<p><img src=\"https://suso.suso.org/mediafiles/blender-modeling-mic-pop-filter-holder.jpg\" alt=\"Blender modeling pop filter holder\" width=\"800\"></p>\n<p><a href=\"https://suso.suso.org/mediafiles/blender-modeling-mic-pop-filter-holder.jpg\">See full image</a></p>\n\n<p><img src=\"https://suso.suso.org/mediafiles/microphone-pop-filter-holder1.jpg\" alt=\"Microphone pop filter holder\" width=\"800\"></p>\n<p><a href=\"https://suso.suso.org/mediafiles/microphone-pop-filter-holder1.jpg\">See full image</a></p>\n\n<p>Also a photo of the green screen hooks I created for hanging these large holiday light things.</p>\n\n<p><img src=\"https://suso.suso.org/mediafiles/green-screen-hooks.jpg\" alt=\"Green screen hooks\" width=\"800\"></p>\n<p><a href=\"https://suso.suso.org/mediafiles/green-screen-hooks.jpg\">See full image</a></p>\n\n<p><a href=\"https://www.thingiverse.com/thing:3023372\">The drill dust collector (on Thingiverse)</a></p>\n',194,0,0,'CC-BY-SA','3D printing,DIY,Maker,microphones',0,0,1),
(3738,'2022-11-30','Intro to KMyMoney',182,'Brief Intro to KMyMoney on KDE','<p>Brief discussion on kmymoney.</p>\n<p>Website: <a href=\"https://kmymoney.org/\"\nclass=\"uri\">https://kmymoney.org/</a></p>\n<p>P.S. uses of \"scheduled tasks\" jump from 2 to 4 because #3 had\ncorruption in the recording.</p>\n',414,0,0,'CC-BY-SA','Kmymoney',0,0,1),
(3748,'2022-12-14','The Squirrels gift to HPR',569,'The Squirrels have modified Bash Podder to do something different','<p>Humans,</p>\n<p>Download the following compressed tar file containing the Squirrels\nPodcast thingie.</p>\n<p><a\nhref=\"https://drive.google.com/file/d/1akf74fhM6s1DtDFPhrVvvbKXkzCCa4JQ/view?usp=sharing\"\nclass=\"uri\">https://drive.google.com/file/d/1akf74fhM6s1DtDFPhrVvvbKXkzCCa4JQ/view?usp=sharing</a></p>\n<p>Untar the thingie;</p>\n<pre><code>tar -zxvf PODTHING</code></pre>\n<p>explore the subdirectories it created.</p>\n<p>You can copy the Media_Gift directory to where ever you want it to\nreside and even rename it\n<code>mv Media_Gift /home/me/mythingie</code></p>\n<p>install your own korn shell {KSH} or modify the bashpodder.shell\nscripts located inside to point to where ever you keep bash on your\nsystem.</p>\n<p>Run the entire script from the Media_Gift directory</p>\n<pre><code>./get_all_podcasts</code></pre>\n<p>Enjoy Humans. All Squirrels love all humans. Happy Holidays. Eat more\nnuts.</p>\n',377,0,1,'CC-BY-SA','podcastcatcher,bashpoddermod',0,0,1),
(3743,'2022-12-07','HPR News',575,'News for the Community, by the Community.','<h1 id=\"hpr-news\">HPR NEWS</h1>\n<h1 id=\"news-for-the-community-by-the-community\">News for the community,\nby the community.</h1>\n<ul>\n<li><p><strong>TAGS:</strong> Ransomware, Malware, Phishing, Security\nBreach</p></li>\n<li><p><a\nhref=\"https://thehackernews.com/2022/10/microsoft-confirms-server.html\">Microsoft\nConfirms Server Misconfiguration Led to 65,000+ Companies\' Data\nLeak</a></p>\n<ul>\n<li>Microsoft &#x201C;misconfigured&#x201D; an <a\nhref=\"https://azure.microsoft.com/en-us/products/storage/blobs/#overview\">Azure\nBlob Storage</a> server causing a security breach. Attackers were able\nto access unauthorized customer data; business transactions and other\ninteractions between Microsoft and its customers. <a\nhref=\"https://socradar.io/\">SOCRadar</a>, a cyber security company, is\ncalling the security breach &#x201C;BlueBleed&#x201D;. SOCRadar discovered the breach\non September 24, 2022 Microsoft is downplaying the security breach but\nsecurity researcher Kevin Beaumont isn\'t buying it. Mr. Beaumont suggest\nMicrosoft dropped the ball on informing its customers, and federal\nregulators, of the security breach in a timely manner.</li>\n</ul></li>\n<li><p><a\nhref=\"https://www.mcafee.com/blogs/other-blogs/mcafee-labs/new-hiddenads-malware-that-runs-automatically-and-hides-on-google-play-1m-users-affected/\">HiddenAds\nmalware affects 1M+ Android users</a></p>\n<ul>\n<li>McAfee&#x2019;s Mobile Research Team identified multiple apps containing\nmalware on the Google Play Store. After install, the malicious android\napps automatically run services without the user knowing or interacting\nwith the app. That&#x2019;s right, they auto run after install. These malicious\napps then disguise themselves by changing their icon to the &#x201C;Google\nPlay&#x201D; icon and renaming to themselves to &#x201C;Google Play&#x201D; or &#x201C;Settings&#x201D;.\nThe malicious apps quickly create permanent malicious services. McAfee&#x2019;s\nMobile Research Team demonstrates the resilience of the malware by using\n<a href=\"https://www.man7.org/linux/man-pages/man1/kill.1.html\">kill\n-9</a> on the service processes. More malicious processes generate\nimmediately as if nothing happened.</li>\n</ul></li>\n<li><p><a\nhref=\"https://thehackernews.com/2022/10/experts-warn-of-stealthy-powershell.html\">Fully\nundetectable PowerShell backdoor disguised as part of a Windows\nupdate</a></p>\n<ul>\n<li>Director of security research at SafeBreach, Tomer Bar stated, \"The\ncovert self-developed tool and the associated C2 commands seem to be the\nwork of a sophisticated, unknown threat actor who has targeted\napproximately 100 victims.\"</li>\n<li>Based on the metadata found within a malicious document, this seems\nto be a LinkedIn-based spear-phishing attack, which ultimately leads to\nthe execution of a PowerShell script via a piece of embedded macro\ncode.</li>\n<li>\"The Macro drops \'updater.vbs\' creates a scheduled task pretending\nto be part of a Windows update, which will execute the updater.vbs\nscript from a fake update folder under\n\'%appdata%\\local\\Microsoft\\Windows,\'\"said Tomar.</li>\n<li>Currently 32 security vendors and 18 anti-malware engines have\nflagged the decoy document and the PowerShell scripts as malicious.</li>\n<li>The findings come as Microsoft has <a\nhref=\"https://thehackernews.com/2022/07/microsoft-resumes-blocking-office-vba.html\">taken\nsteps</a> to block Excel 4.0 (XLM or XL4) and Visual Basic for\nApplications (VBA) macros by default across Office apps, prompting\nthreat actors to pivot to <a\nhref=\"https://thehackernews.com/2022/07/hackers-opting-new-attack-methods-after.html\">alternative\ndelivery methods</a>.</li>\n</ul></li>\n<li><p><a\nhref=\"https://apnews.com/6f1ec0c740d878ad00f5b08d2521f831\">Millions of\npatients compromised in hospital data leak.</a></p>\n<ul>\n<li>Nearly 3 million Illinois &amp; Wisconsin patients are caught in a\nhospital data breach. Advocate Aurora Health, which operates 27\
(3744,'2022-12-08','Advent of code Day 1 - 4',308,'Talking about my experience of advent of code so far','<p>Advent of code:</p>\n<p><a href=\"https://adventofcode.com/\"\nclass=\"uri\">https://adventofcode.com/</a></p>\n<p>Here are some links to the recording of my puzzle-solving:</p>\n<ul>\n<li><p>Day 1<br />\n<a href=\"https://youtu.be/yxXL5gP2RpE\"\nclass=\"uri\">https://youtu.be/yxXL5gP2RpE</a></p></li>\n<li><p>Day 2<br />\n<a href=\"https://youtu.be/OoRyHjTvmIg\"\nclass=\"uri\">https://youtu.be/OoRyHjTvmIg</a></p></li>\n<li><p>Day 3<br />\n<a href=\"https://youtu.be/Le5WRtjyOyI\"\nclass=\"uri\">https://youtu.be/Le5WRtjyOyI</a></p></li>\n<li><p>Day 4<br />\n<a href=\"https://youtu.be/E2FJCrbrdDc\"\nclass=\"uri\">https://youtu.be/E2FJCrbrdDc</a></p></li>\n</ul>\n',382,0,0,'CC-BY-SA','advent of code, aoc, java',0,0,1),
(3742,'2022-12-06','Battery',626,'The wikipedia article on the Battery','<p>A battery converts chemical energy into electrical energy by a\nchemical reaction. Usually the chemicals are kept inside the battery. It\nis used in a circuit to power other components. A battery produces\ndirect current (DC) electricity (electricity that flows in one\ndirection, and does not switch back and forth).</p>\n<p>Using the electricity from an outlet in a building is cheaper and\nmore efficient, but a battery can provide electricity in areas that do\nnot have electric power distribution. It is also useful for things that\nmove, such as electric vehicles and mobile phones.</p>\n<p>Batteries may be primary or secondary. The primary is thrown away\nwhen it can no longer provide electricity. The secondary can be\nrecharged and reused.</p>\n<p><a href=\"https://simple.wikipedia.org/wiki/Battery\">Continue Reading\non Wikipedia</a></p>\n',30,43,0,'CC-BY-SA','battery, cell, ham, wikipedia',0,0,1),
(3747,'2022-12-13','Twitter and Dinner with the Humans',1614,'I talk about Twitter after dinner with some Humans','<p>Reality 2.0 Podcast<br />\n<a href=\"https://www.reality2cast.com/\"\nclass=\"uri\">https://www.reality2cast.com/</a></p>\n',377,0,1,'CC-BY-SA','Dinner,Humans,Twitter',0,0,1),
(3751,'2022-12-19','Using Noisetorch',427,'Noisetorch is a program for Linux that creates a virtual microphone that removes background sounds.','<p>Official Noisetorch repo: <a href=\"https://github.com/noisetorch/NoiseTorch\">https://github.com/noisetorch/NoiseTorch</a></p>\n\n<p><a href=\"https://www.youtube.com/watch?v=DzN9rYNeeIU\">Noisetorch demo video</A> by <a href=\"https://www.youtube.com/@LinuxForEveryone\">Linux for everyone</a></p>\n\n<p><a href=\"https://pipewire.org/\">The Pipewire soundsystem</a> for Linux.</p>\n',194,0,0,'CC-BY-SA','audio,podcasting,microphone,linux',0,0,1),
(3755,'2022-12-23','Synergy over ssh',1495,'Control your other PC securely using synergy over ssh','<p>In today\'s show we will talk about installing synergy so that you can\ncontrol the keyboard and mouse of another computer securely over\nssh.</p>\n<p>Install synergy on both computers as root</p>\n<pre><code># dnf install synergy\n# apt install synergy</code></pre>\n<p>The main pc is <code>pc_middle</code> and it is the one with the\nkeyboard and mouse we intend to use for all the computers.</p>\n<p>The only other pc in this configuration is, one on the right which we\ncall <code>pc_right</code></p>\n<p>On <code>pc_middle</code> create a configuration file. I put it in\n<code>~/etc/synergy-work.conf</code></p>\n<pre><code>section: screens\n pc_middle:\n pc_right:\nend\n\nsection: links\npc_middle:\n right = pc_right\npc_right:\n left = pc_middle\nend</code></pre>\n<p>On <code>pc_middle</code> add entry to <code>~/.ssh/config</code> to\nallow portforwarding back, for the <strong>synergy</strong> port\n<em>24800</em></p>\n<pre><code>Host pc_right\n Hostname 192.168.0.150\n RemoteForward 127.0.0.1:24800 127.0.0.1:24800 # send back from the client to me</code></pre>\n<p>On <code>pc_middle</code> run synergy server in the foreground with\ndebug enabled</p>\n<pre><code>[user@pc_middle ~]$ synergys --debug DEBUG --no-daemon --server --address 127.0.0.1 --config ~/etc/synergy-work.conf --name pc_middle --log /tmp/synergy-work.conf.log\n[2022-12-03T16:29:05] DEBUG: opening configuration &quot;~/etc/synergy-work.conf&quot;\n[2022-12-03T16:29:05] DEBUG: configuration read successfully\n[2022-12-03T16:29:05] DEBUG: XOpenDisplay(&quot;:0&quot;)\n[2022-12-03T16:29:05] DEBUG: xscreensaver window: 0x00c00001\n[2022-12-03T16:29:05] DEBUG: screen shape: 0,0 5760x2160 (xinerama)\n[2022-12-03T16:29:05] DEBUG: window is 0x05e00004\n[2022-12-03T16:29:05] DEBUG: adopting new buffer\n[2022-12-03T16:29:05] DEBUG: opened display\n[2022-12-03T16:29:05] WARNING: LANGUAGE_DEBUG Poll result 0\n[2022-12-03T16:29:05] DEBUG: registered hotkey ScrollLock (id=ef14 mask=0000) as id=1\n[2022-12-03T16:29:05] NOTE: started server, waiting for clients\n[2022-12-03T16:29:05] DEBUG: event queue is ready\n[2022-12-03T16:29:05] DEBUG: add pending events to buffer\n[2022-12-03T16:29:05] DEBUG: screen &quot;pc_middle&quot; shape changed</code></pre>\n<p>On <code>pc_middle</code> you can check that it\'s running</p>\n<pre><code>[user@pc_middle ~]$ netstat -anp | grep 24800\ntcp 0 0 127.0.0.1:24800 0.0.0.0:* LISTEN 90859/synergys</code></pre>\n<p>On <code>pc_middle</code> you can connect to\n<code>pc_right</code></p>\n<pre><code>[user@pc_middle ~]$ ssh pc_right\nuser@pc_right:~$</code></pre>\n<p>On <code>pc_right</code> (either on its own keyboard, or via ssh\nsession from <code>pc_middle</code>), check that port <code>24800</code>\nis listening</p>\n<pre><code>user@pc_right:~$ netstat -anp | grep 24800\ntcp 0 0 127.0.0.1:24800 0.0.0.0:* LISTEN</code></pre>\n<p>On the other keyboard that is connected to the <code>pc_right</code>\n(see note below &#x2020;)</p>\n<pre><code>user@pc_right:~$ synergyc --debug INFO --no-daemon --name pc_right 127.0.0.1\n[2022-12-03T16:38:59] NOTE: started client\n /build/synergy-3N7yN5/synergy-1.8.8-stable+dfsg.1/src/lib/synergy/ClientApp.cpp,404\n[2022-12-03T16:38:59] NOTE: connecting to &#39;127.0.0.1&#39;: 127.0.0.1:24800\n /build/synergy-3N7yN5/synergy-1.8.8-stable+dfsg.1/src/lib/client/Client.cpp,146\n[2022-12-03T16:38:59] NOTE: connected to server\n /build/synergy-3N7yN5/synergy-1.8.8-stable+dfsg.1/src/lib/synergy/ClientApp.cpp,294</code></pre>\n<p>Back on <code>pc_middle</code>, you should see the the log that you\nhave connected</p>\n<pre><code>[2022-12-03T16:40:15] DEBUG: Opening new socket: 18FC73A0\n[2022-12-03T16:40:15] NOTE: accepted client connection\n[2022-12-03T16:40:16] DEBUG: received client &quot;pc_right&quot; info shape=0,0 5760x2160 at 2787,1371\n[2022-12-03T16:40:16] NOTE: client &quot;pc_right&quot; has con
(4021,'2024-01-01','HPR Community News for December 2023',0,'HPR Volunteers talk about shows released and comments posted in December 2023','',159,47,1,'CC-BY-SA','Community News',0,0,1),
(3752,'2022-12-20','It only took me 2 years to record using some \'new\' hardware',582,'the why and what of some new recording hardware','<p>I tend to put the \"no\" in notes!</p>\n<p><a href=\"https://www.presonus.com/products/AudioBox-USB-96\"\nclass=\"uri\">https://www.presonus.com/products/AudioBox-USB-96</a><br />\n<a href=\"https://www.pine64.org/pinebook-pro/\"\nclass=\"uri\">https://www.pine64.org/pinebook-pro/</a></p>\n',243,0,0,'CC-BY-SA','linux, audacity, audio, hardware',0,0,1),
(3762,'2023-01-03','Existence is pain',1329,'RSI, carpal tunnel syndrome and ergonomics','<p>I know right no show notes .. ok FINE !</p>\n<p><a\nhref=\"https://www.google.com/search?q=herman+miller+aeron+%22used%22\"\nclass=\"uri\">https://www.google.com/search?q=herman+miller+aeron+%22used%22</a></p>\n<ul>\n<li><p>Freestyle Pro<br />\n<a href=\"https://kinesis-ergo.com/shop/freestyle-pro/\"\nclass=\"uri\">https://kinesis-ergo.com/shop/freestyle-pro/</a></p></li>\n<li><p>Freestyle VIP3 Pro Premium<br />\n<a href=\"https://kinesis-ergo.com/shop/ac925/\"\nclass=\"uri\">https://kinesis-ergo.com/shop/ac925/</a></p></li>\n<li><p>FUTURO-48462 Night Wrist Support SIOC, Helps Provide Nighttime\nRelief of Carpal Tunnel Symptoms, Breathable, One Size - Navy<br />\n<a href=\"https://smile.amazon.com/dp/B0057D86QA\"\nclass=\"uri\">https://smile.amazon.com/dp/B0057D86QA</a></p></li>\n<li><p>Futuro Energizing Wrist Support, Left, Large/X-Large<br />\n<a href=\"https://smile.amazon.com/dp/B0026RHGB6\"\nclass=\"uri\">https://smile.amazon.com/dp/B0026RHGB6</a></p></li>\n<li><p>Dr. Frederick\'s Original Arthritis Gloves for Women &amp; Men -\nCompression for Arthritis Pain Relief - Large<br />\n<a href=\"https://smile.amazon.com/dp/B01LR4VNZI\"\nclass=\"uri\">https://smile.amazon.com/dp/B01LR4VNZI</a></p></li>\n<li><p>Dynamic Health Organic Tart Cherry | Unsweetened 100% Juice\nConcentrate | Vegan, Gluten Free, BPA Free (16oz)<br />\n<a href=\"https://smile.amazon.com/dp/B00NALVQWM\"\nclass=\"uri\">https://smile.amazon.com/dp/B00NALVQWM</a></p></li>\n<li><p>Lunix LX3 Cordless Electric Hand Massager with Compression, 6\nLevels Pressure Point Therapy Massager for Arthritis, Pain Relief,\nCarpal Tunnel and Finger Numbness, Shiatsu Massage Machine with\nHeat<br />\n<a href=\"https://smile.amazon.com/dp/B07QNFWY7J\"\nclass=\"uri\">https://smile.amazon.com/dp/B07QNFWY7J</a></p></li>\n<li><p>The Original 1 inch Thick Comfort Anti Fatigue Floor Mat, Perfect\nfor Kitchens and Standing Desks (Black, 20x30x1-Inch)</p></li>\n<li><p>Electric Stand up Desk Frame - FEZIBO Dual Motor and Cable\nManagement Rack Height Adjustable Sit Stand Standing Desk Base\nWorkstation (Frame Only)</p></li>\n</ul>\n',36,0,1,'CC-BY-SA','rsi, carpal tunnel and ergonomics\nhealth,rsi,carpal tunnel,ergonomics',0,0,1),
(3753,'2022-12-21','Some thoughts on \"Numeronyms\"',716,'AKA alphanumeric acronyms, alphanumeric abbreviations, or numerical contractions','<article>\n<h2 id=\"overview\">Overview</h2>\n<p>I have recently been wondering about the use of abbreviations which\nare built from the first letter of a word followed by a number and the\nlast letter. The number represents the count of letters between the\nstart and end letter. Thus <code>accessibility</code> becomes\n<code>a11y</code>. This came to light (to me anyway) during an email\nexchange with Mike Ray regarding the accessibility issues on the tag\nindex page on the HPR site. The website issues were resolved, but I was\nleft wondering how useful the term <code>a11y</code> is, or whether it\njust jars with me!</p>\n<p>According to the <a\nhref=\"https://en.wikipedia.org/wiki/Numeronym\">Wikipedia article</a>\nthis type of word is known as a <em>numeronym</em>, but they may also be\nreferred to as <em>alphanumeric acronyms</em>, <em>alphanumeric\nabbreviations</em>, or <em>numerical contractions</em>.</p>\n<p>As the Wikipedia article notes these types of abbreviations are\nalmost always used to refer to their computing sense — such as\n<em>g11n</em> for <em>globalisation</em> — in the context of computing,\nnot the general context.</p>\n<h2 id=\"looking-at-a11y-as-an-example\">Looking at <em>a11y</em> as an\nexample</h2>\n<p>While I sympathise with the motivation behind using\n<code>\'a11y\'</code> to mean <em>accessibility</em>, I do find it odd and\ncounter-intuitive. I often find myself pondering the acceptability of\nthis type of abbreviation. How many other words in common English fit\npatterns like this I wonder? Quite a few I would expect. How does this\naffect the admissibility of such abbreviations?</p>\n<p>Not only are they adventurously strange to my simple brain, but I\nfind them to be aesthetically displeasing. My experiments with the\nstandard Linux dictionary looking for words that fit this pattern I find\naffirmatively supportive of this view. I describe this experiment\nlater.</p>\n<p>Algebraically, it is to be expected that there are many dictionary\nwords of 13 characters which start with <code>\'a\'</code> and end with\n<code>\'y\'</code>. Looking at them allegorically, such numeronyms convey\nlittle meaning except in very limited contexts since the motivation\nseems to be to reduce the need to type long words. Alternatively, if\nthey were accepted by data entry software and expanded automatically a\nbetter case could be made for applicability, but only one word could be\nassigned to a numeronym.</p>\n<p>In my mind there is a certain artificiality in the use of these\nabbreviations. </p>\n<hr />\n<p>You might wonder at the weird rambling nature of the above section -\nthis was my (small) joke to try and use many of the words that match the\n<em>a11y</em> pattern.</p>\n<p>Heres the result of transforming them:</p>\n<blockquote>\n<p><small>While I sympathise with the motivation behind\n<code>\'a11y\'</code> to mean <em>accessibility</em>, I do find it odd and\ncounter-intuitive. I often find myself pondering the <code>a11y</code>\nof this type of abbreviation. How many other words in common English fit\nthese patterns I wonder? Quite a few I would expect. How does this\naffect the <code>a11y</code> of such abbreviations?</small></p>\n<p><small>Not only are they <code>a11y</code> strange to my simple brain, but I\nfind them to be <code>a11y</code> displeasing. My experiments with the\nstandard Linux dictionary looking for words that fit this pattern I find\n<code>a11y</code> supportive of this view. I describe this experiment\nlater.</small></p>\n<p><small><code>A11y</code>, it is to be expected that there are many\ndictionary words of 13 characters which start with <code>\'a\'</code> and\nend with <code>\'y\'</code>. Looking at them <code>a11y</code>, such\nnumeronyms convey little meaning except in very limited contexts since\nthe motivation seems to be to reduce the need to type long words.\n<code>A11y</code>, if they were accepted by data entry so
(3757,'2022-12-27','Career changes.',1625,'Chatting about recent career changes','<ul>\n<li><p><a\nhref=\"https://www.google.com/url?client=internal-element-cse&amp;cx=004021148943282517298:oscb2opeqqq&amp;q=https://www.dmv.virginia.gov/webdoc/pdf/dmv60a.pdf&amp;sa=U&amp;ved=2ahUKEwiDq_nWwYv8AhVvnXIEHftcBtgQFnoECAAQAQ&amp;usg=AOvVaw1iPgvhHhKfYRIsTwiEWEuc\">Virginia\nCDL Manual</a></p></li>\n<li><p><a\nhref=\"https://www.google.com/url?client=internal-element-cse&amp;cx=004021148943282517298:oscb2opeqqq&amp;q=https://www.dmv.virginia.gov/webdoc/pdf/dl8.pdf&amp;sa=U&amp;ved=2ahUKEwiEkd30wYv8AhURg3IEHeq1DucQFnoECAEQAg&amp;usg=AOvVaw3v6tYiEbtT_btwp8qGVfTN\">CDL\nDL-8 form</a></p></li>\n<li><p><a\nhref=\"https://www.google.com/url?client=internal-element-cse&amp;cx=004021148943282517298:oscb2opeqqq&amp;q=https://www.dmv.virginia.gov/drivers/cdl_medical.html&amp;sa=U&amp;ved=2ahUKEwiPlOONwov8AhWHgnIEHWUvD_UQFnoECAcQAQ&amp;usg=AOvVaw1b8wX0dvFqoCNyoY0ddlnf\">CDL\nMedical Exam form</a></p></li>\n</ul>\n',391,0,0,'CC-BY-SA','CDL, Class A CDL',0,0,1),
(3759,'2022-12-29','Chatting with dnt.',2629,'Small talk on SBCs and free software.','<ul>\n<li>Amazon Scalpers selling raspberry pi 4:\n<ul>\n<li><a\nhref=\"https://www.amazon.com/LANDZO-Raspberry-Pi-Model-8gb/dp/B08R87H4RR/ref=sr_1_4?crid=168SFYYOB8U0X&amp;keywords=raspberry+pi+4&amp;qid=1671673312&amp;sprefix=Ras%2Caps%2C85&amp;sr=8-4\">$219.00\npi4 8gb</a></li>\n<li><a\nhref=\"https://www.amazon.com/iUniker-Raspberry-Power-Supply-Heatsink/dp/B0B5KXJD9N/ref=sr_1_2_sspa?crid=168SFYYOB8U0X&amp;keywords=raspberry+pi+4&amp;qid=1671673312&amp;sprefix=Ras%2Caps%2C85&amp;sr=8-2-spons&amp;psc=1&amp;spLa=ZW5jcnlwdGVkUXVhbGlmaWVyPUExVTRHOFhXRDQ3STAwJmVuY3J5cHRlZElkPUEwNTY1NTExMTJNOEE5REc1NFpYWCZlbmNyeXB0ZWRBZElkPUEwMjI4NzgzMlJUMzFOMVFJTDJMNyZ3aWRnZXROYW1lPXNwX2F0ZiZhY3Rpb249Y2xpY2tSZWRpcmVjdCZkb05vdExvZ0NsaWNrPXRydWU=\">$285.99\niUniker pi 4 8gb kit</a></li>\n<li><a\nhref=\"https://www.amazon.com/Raspberry-CM4108032-Quad-Core-Processor-Bluetooth/dp/B0BJQ9Q7SH/ref=sr_1_1_sspa?crid=O19CYY1CXLNJ&amp;keywords=raspberry%2Bpi%2Bcompute%2Bmodule%2B4&amp;qid=1671673531&amp;sprefix=raspberry%2Bpi%2Bcompu%2Caps%2C84&amp;sr=8-1-spons&amp;spLa=ZW5jcnlwdGVkUXVhbGlmaWVyPUExMVRUUU1GWldZTTNSJmVuY3J5cHRlZElkPUEwOTYzMTM5MUpDWTUzME1UTTFCWiZlbmNyeXB0ZWRBZElkPUEwMTQwMDQxRURUWTg0SEM4T0lWJndpZGdldE5hbWU9c3BfYXRmJmFjdGlvbj1jbGlja1JlZGlyZWN0JmRvTm90TG9nQ2xpY2s9dHJ1ZQ&amp;th=1\">$285.99\npi 4 8gb compute module</a></li>\n<li><a\nhref=\"https://www.amazon.com/seeed-studio-Raspberry-Personal-Computer/dp/B08T6KSF7F/ref=sr_1_3?crid=1QIY5KXLCRV9X&amp;keywords=raspberry%2Bpi%2B400&amp;qid=1671673797&amp;sprefix=raspberry%2Bpi%2B400%2Caps%2C92&amp;sr=8-3&amp;th=1\">$145.99\npi 400</a></li>\n<li><a\nhref=\"https://www.amazon.com/RasTech-Raspberry-Starter-Heatsinks-Screwdriver/dp/B0B6NMQFVR/ref=sr_1_2_sspa?crid=3KPRQRSZCG7FL&amp;keywords=raspberry+pi+3&amp;qid=1671673889&amp;sprefix=raspberry+pi+3%2Caps%2C84&amp;sr=8-2-spons&amp;psc=1&amp;spLa=ZW5jcnlwdGVkUXVhbGlmaWVyPUFEQzBMQlRYNU85VDcmZW5jcnlwdGVkSWQ9QTAxNjE0MzVHU0JDT1BBR0dLREUmZW5jcnlwdGVkQWRJZD1BMDcxNjY1MjFRVUJSU0NKTzVMTjcmd2lkZ2V0TmFtZT1zcF9hdGYmYWN0aW9uPWNsaWNrUmVkaXJlY3QmZG9Ob3RMb2dDbGljaz10cnVl\">$235.99\npi 3 kit</a></li>\n</ul></li>\n</ul>\n<hr />\n<h2 id=\"software-and-documentation-mentioned-during-the-show\">Software\nand documentation mentioned during the show.</h2>\n<ul>\n<li><a href=\"https://git-annex.branchable.com/\">git-annex</a>\n<ul>\n<li>git-annex allows managing large files with git, without storing the\nfile contents in git. It can sync, backup, and archive your data,\noffline and online.</li>\n</ul></li>\n<li><a href=\"https://taskwarrior.org/\">Taskwarrior</a>\n<ul>\n<li>Taskwarrior is Free and Open Source Software that manages your TODO\nlist from the command line.</li>\n</ul></li>\n<li><a href=\"https://www.haskell.org/\">Haskell.org</a>\n<ul>\n<li>An advanced, purely functional programming language.</li>\n<li><a href=\"https://wiki.haskell.org/Haskell\">Haskell wiki</a></li>\n<li><a href=\"http://www.learnyouahaskell.com/\">Haskell Book: Learn you a\nHaskell for great good!</a></li>\n<li><a\nhref=\"https://www.hackerpublicradio.org/correspondents/0364.html\">tutorto</a>\n&#x2190; insert <a\nhref=\"https://www.youtube.com/watch?v=g78FIFSdi8U&amp;list=PL6F112y8X_M5F7_DFgeIbSI5Tb9Cx7CA4&amp;index=4\">battle\nmusic</a> from <a\nhref=\"https://elderscrolls.bethesda.net/en/skyrim/\">Skyrim</a></li>\n<li>Because <a\nhref=\"https://www.hackerpublicradio.org/correspondents/0399.html\">dnt</a>\nmust answer for his crimes against Haskell.</li>\n</ul></li>\n<li><a href=\"https://radicale.org/v3.html\">Radicale</a>\n<ul>\n<li>Radicale is a small but powerful CalDAV (calendars, to-do lists) and\nCardDAV (contacts) server.</li>\n</ul></li>\n<li><a href=\"https://www.ssh.com/academy/ssh/command\">SSH\nDocumentation</a>\n<ul>\n<li><a href=\"https://www.ssh.com/academy/ssh/port\">port 22 and info on\nnon-privileged or non-root ports</a></li>\n<li><a href=\"https://www.ssh.com/academy/ssh/sshd_config\">sshd\nconfig</a>: checkout <code>AllowUsers</code> and <code>DenyUsers</code>\nfor your config.</li
(3758,'2022-12-28','First sysadmin job - war story',1685,'How I got my first job as a sysadmin and a story about NFS','<p>I love show notes, but I don\'t have any this time.</p>\r\n\r\n<p>\r\nHow Norrist moving into a new IT Linux Admin career. Can he solve the mystery of the NFS issues he inherited ?\r\n</p>',342,0,0,'CC-BY-SA','career, nfs, php',0,0,1),
(3763,'2023-01-04','The Baader-Meinhof Phenomenon',767,'A look into this psychological phenomenon ','<h1 id=\"baader-meinhof-phenomenon\">Baader-Meinhof Phenomenon</h1>\n<p>This is a psychological experience.</p>\n<p>When I describe it in full, if you are of any age, you will almost\ncertainly think \"oh yes, that has happened to me.\"</p>\n<p>For older listeners, the name Baader-Meinhof might be memorable as a\nname given to a group who liked to call themselves the \'Red Army\nFaction.\'</p>\n<p>The name Baader-Meinhof, after two notable members of the group, was\ngiven to it by journalists.</p>\n<p>In the late sixties, all through the seventies, and even into the\neighties, the Red Army Faction were responsible for a number of\nterrorist attacks in and around East and West Germany. One person\'s\nterrorist is another person\'s freedom fighter, but we will not get into\nthat discussion.</p>\n<p>This psychological phenomenon was given the name, after a man wrote a\nletter to a newspaper in 1994 pointing out that he had recently heard\nthe name, Baader-Meinhof, and thereafter, seemed to hear or see it again\nand again.</p>\n<p>Following that, many people wrote to the same newspaper making\nsimilar comments, about recently heard names, usually nouns, which were\nthen noticed by them frequently.</p>\n<p>The phenomenon was also given the name \'Frequency Illusion\' in\n2005.</p>\n<h2 id=\"wikipedia\">Wikipedia</h2>\n<p><a href=\"https://en.wikipedia.org/wiki/Frequency_illusion\">Here is\nthe Wikipedia link to the page for the \'Frequency Illusion\', also known\nas the \'Baader-Meinhof Phenomenon.</a></p>\n',282,0,1,'CC-BY-SA','Baader-Meinhof Phenomenon',0,0,1),
(3773,'2023-01-18','My Public Speaking Rules',1055,'Some tips on public speaking for technical talks or lectures.','<h1 id=\"public-speaking\">Public Speaking</h1>\n<p>For many people, public speaking is a very traumatic thing.</p>\n<p>It is not something that has ever held any great terror for me. That\nis especially true now I am totally blind.</p>\n<h2 id=\"my-public-speaking-rules\">My Public Speaking Rules</h2>\n<p>These are some rules I live by when public speaking. These apply to\nthings like technical talks or lectures. Not necessarily to after dinner\nspeaking, or the speech you might give as the best man at a wedding.\nThose things are different entirely:</p>\n<ol type=\"1\">\n<li><p>NEVER start a talk with an apology for being a bad public\nspeaker. You will be implanting in the audience the subconscious\nsuggestion that they are about to sit through a talk given by a bumbling\nidiot with limited knowledge of the published subject.</p></li>\n<li><p>Three part rule. A talk about a technical or serious subject\nshould be divided into these three parts</p>\n<ul>\n<li>tell them what you are going to be talking about</li>\n<li>the meat of the talk</li>\n<li>summarise what you just told them.</li>\n</ul>\n<p>This was given to me a very long time ago by a retired lecturer from\nthe London School of Economics.</p></li>\n<li><p>The people in the audience wanted to be there. So there is little\nor no hostility in the room. And much empathy.</p></li>\n<li><p>Don\'t rush yourself. Pace the talk. Rushing can be a nasty\nfeedback loop which makes your pace increase and your level of\nconfidence plummet.</p></li>\n<li><p>Don\'t be afraid of pauses, or silence. These moments can give you\nbreathing space to summarise in your own mind where you are at, whether\nthe last thing you said needs amplification, and what is to come\nnext.</p></li>\n<li><p>Don\'t be afraid of the \'ums and erms.\' But keep it to a minimum.\nSilence is better than verbal ticks.</p></li>\n<li><p>Keep humour to a minimum. Depends on the kind of event. If you\nare the best man at a wedding, you are supposed to inject humour,\nprobably at the expense of the groom.</p></li>\n<li><p>You don\'t need to pick out one audience member to talk to. You\nare just as effective if you are focused on the back wall. Talking to\njust one member of the audience, particularly if they are right at the\nfront, is probably not a good look. Glancing round the room helps to\nmake everybody feel included.</p></li>\n</ol>\n<h2 id=\"notes\">Notes</h2>\n<p>I probably broke some of my rules, in particular inserting verbal\nticks early in the podcast. I think I improved focus as I went on.</p>\n<p>I inserted some humour, including some comments about my family\nChristmas, but then it is, well, Christmas.</p>\n<p>I am almost never happier than when I am learning new things.</p>\n<p>I am fiercely proud of, and amazed at the amount of things I know\nabout a lot of subjects. I am a knowledge sponge.</p>\n<p>The one thing that does make me happier than learning, is sharing\nwhat I know. Which I often do in a tone which suggests I am just amazed\nat the fact I know this stuff at all.</p>\n<p>Remember, the things you don\'t yet know are more important than the\nthings you already know. That is true for everybody. So share your\nknowledge in good spirit, keeping arrogance out of the picture.</p>\n',282,0,1,'CC-BY-SA','public speaking,',0,0,1),
(3783,'2023-02-01','Accessibility, and Navigating the HPR Web Pages with a Screen Reader',1304,'Mike puts the HPR Web Site to the test.','<h1\nid=\"accessibility-and-navigating-the-hpr-web-pages-with-a-screen-reader\">Accessibility,\nand Navigating the HPR Web Pages with a Screen Reader</h1>\n<p>Some time in the last year there has been some discussion on the HPR\nmailing list about some of the problems I was having, particularly with\nthe tags page, on the HPR site.</p>\n<p>Here is a show in which you can hear both me and my screen reader, as\nI navigate the HPR home page, and then the HPR tags page.</p>\n<p>Dave Morriss has made a nice job of fixing the issues I had, and made\nthe tags page a lot more friendly for blind and visually impaired\nusers.</p>\n<p>It\'s quite a long podcast, and it took a lot of editing. So most of\nthe polish wore off by the time I \'finished\' it and decided enough was\nenough.</p>\n',282,0,1,'CC-BY-SA','Accessibility, HPR, Screen Reader',0,0,1),
(3764,'2023-01-05','My text-focused journey into tech',1151,'My journey into technology covering some of the prose-writing technology I\'ve used along the way.','<ul>\n<li>Wikipedia\'s entry for the ZX81:<br />\n<a href=\"https://en.wikipedia.org/wiki/ZX81\"\nclass=\"uri\">https://en.wikipedia.org/wiki/ZX81</a></li>\n<li>WordPerfect in many of its forms, complete with download\nlinks:<br />\n<a href=\"https://winworldpc.com/product/wordperfect/3x-dos\"\nclass=\"uri\">https://winworldpc.com/product/wordperfect/3x-dos</a></li>\n<li>Hog Bay Software\'s WriteRoom for Mac:<br />\n<a href=\"https://www.hogbaysoftware.com/products/writeroom/\"\nclass=\"uri\">https://www.hogbaysoftware.com/products/writeroom/</a></li>\n<li>FocusWriter:<br />\n<a href=\"https://gottcode.org/focuswriter/\"\nclass=\"uri\">https://gottcode.org/focuswriter/</a></li>\n<li>How to turn Vim into a word processor:<br />\n<a href=\"https://www.maketecheasier.com/turn-vim-word-processor/\"\nclass=\"uri\">https://www.maketecheasier.com/turn-vim-word-processor/</a></li>\n<li>Hunspell:<br />\n<a href=\"http://hunspell.github.io/\"\nclass=\"uri\">http://hunspell.github.io/</a></li>\n<li>The GNU Emacs site:<br />\n<a href=\"https://www.gnu.org/software/emacs/\"\nclass=\"uri\">https://www.gnu.org/software/emacs/</a></li>\n<li>GNU aspell:<br />\n<a href=\"http://aspell.net/\" class=\"uri\">http://aspell.net/</a></li>\n<li>Flycheck for GNU Emacs:<br />\n<a href=\"https://www.flycheck.org/en/latest/\"\nclass=\"uri\">https://www.flycheck.org/en/latest/</a></li>\n<li>Help for sufferers of RSI:<br />\n<a href=\"https://www.rsiprevention.com/\"\nclass=\"uri\">https://www.rsiprevention.com/</a></li>\n</ul>\n<p>enistello can be reached by email:<br />\n<a href=\"mailto:enistello@tuta.io\"\nclass=\"email\">enistello@tuta.io</a><br />\nOr on Mastodon:<br />\n<span class=\"citation\" data-cites=\"ensitello\">@ensitello</span><span\nclass=\"citation\" data-cites=\"fosstodon.org\">@fosstodon.org</span></p>\n',415,0,0,'CC-BY-SA','text,emacs,linux,mac,distraction-free,vim,prose,plain text',0,0,1),
(3765,'2023-01-06','Fixing clock events in GBA pokemon cartridges',823,'Tinkering with the RTC (Real Time Clock) hardware on Gameboy Advance cartridges','<p>Pokemon games for the GBA (Game Boy Advance) have an internal RTC\nchip with a coin battery to keep track of the time when the console is\npowered off.<br />\nWhat happens when the internal battery runs dry? How to fix it?<br />\nIs this enough to completely restore calendar-based events?</p>\n<ul>\n<li><p>Tools:</p>\n<ul>\n<li><a\nhref=\"https://github.com/megaboyexe/GBA_RTCRead\">https://github.com/megaboyexe/GBA_RTCRead</a></li>\n<li><a\nhref=\"https://gbatemp.net/threads/how-to-reset-the-rtc-in-gba-pokemon-games-after-replacing-the-battery.558620/\">https://gbatemp.net/threads/how-to-reset-the-rtc-in-gba-pokemon-games-after-replacing-the-battery.558620/</a></li>\n<li>Swapping battery instructions <a\nhref=\"https://www.youtube.com/watch?v=1piXd3ffwug\">https://www.youtube.com/watch?v=1piXd3ffwug</a></li>\n</ul></li>\n<li><p>Additional resources:</p>\n<ul>\n<li><a\nhref=\"https://www.youtube.com/watch?v=jzauCmOvF_U\">https://www.youtube.com/watch?v=jzauCmOvF_U</a>\n(few mistakes about here)</li>\n<li><a\nhref=\"https://www.youtube.com/watch?v=TrIAyAKg2S0\">https://www.youtube.com/watch?v=TrIAyAKg2S0</a>\n(followup videos with corrections)</li>\n</ul></li>\n</ul>\n',407,103,0,'CC-BY-SA','nintendo,gba,swapping battery,RTC clock,savefile editing,game boy advance',0,0,1),
(3767,'2023-01-10','LP article from Wikipedia',2561,'LP article from Wikipedia about the long playing vinyl record and its history.','<h2 id=\"lp-record-entry-from-wikipedia\">LP record entry from\nWikipedia</h2>\n<p><a href=\"https://en.wikipedia.org/wiki/LP_record\"\ntitle=\"LP record entry from Wikipedia\">Wikipedia - LP</a></p>\n<ul>\n<li><p>The RIAA did something right.</p>\n<p>In 1954, the Recording Industry Association of America (RIAA)\nintroduced a standard equalization curve to be used by all record\nmanufacturers.</p></li>\n</ul>\n',318,0,1,'CC-BY-SA','audio, vinyl, record, media, history',0,0,1),
(3768,'2023-01-11','Jeep Ignition Repair',631,'Replacing ignition on my 1999 Jeep Wrangler','<p>I should have started by removing these two screws</p>\n<p><a href=\"https://hackerpublicradio.org/eps/hpr3768/Pic_00.jpg\"><img alt=\"Kneeboard Screws\" src=\"https://hackerpublicradio.org/eps/hpr3768/Pic_00_thumbnail.jpg\" /></a><br />\n<small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n\n<p>But I actually started with two of these screws, removed the knee board, then removed the third screw</p>\n<p><a href=\"https://hackerpublicradio.org/eps/hpr3768/Pic_01.jpg\"><img alt=\"Column Housing Screws\" src=\"https://hackerpublicradio.org/eps/hpr3768/Pic_01_thumbnail.jpg\" /></a><br />\n<small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n\n<p>I removed the ignition assembly by removing these three screws. There is a large bump on the bottom, this is where the spring that lifts the ignition locking mechanism goes</p>\n<p><a href=\"https://hackerpublicradio.org/eps/hpr3768/Pic_02.jpg\"><img alt=\"Lower Ignition Screws\" src=\"https://hackerpublicradio.org/eps/hpr3768/Pic_02_thumbnail.jpg\" /></a><br />\n<small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n\n<p><a href=\"https://hackerpublicradio.org/eps/hpr3768/Pic_03.jpg\"><img alt=\"Side Ignition Screw\" src=\"https://hackerpublicradio.org/eps/hpr3768/Pic_03_thumbnail.jpg\" /></a><br />\n<small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n\n<p>The piece of ignition that had broken</p>\n<p><a href=\"https://hackerpublicradio.org/eps/hpr3768/Pic_04.jpg\"><img alt=\"Broken Ignition Piece\" src=\"https://hackerpublicradio.org/eps/hpr3768/Pic_04_thumbnail.jpg\" /></a><br />\n<small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n\n<p>Replacement part. The marked part is very delicate and will snap easily</p>\n<p><a href=\"https://hackerpublicradio.org/eps/hpr3768/Pic_05.jpg\"><img alt=\"Good Ignition\" src=\"https://hackerpublicradio.org/eps/hpr3768/Pic_05_thumbnail.jpg\" /></a><br />\n<small><small><em>Click the thumbnail to see the full-sized image</em></small></small></p>\n',408,0,0,'CC-BY-SA','cars, repairs',0,0,1),
(3766,'2023-01-09','ACER Nitro 5 laptop review',588,'ACER Nitro 5 laptop review','<h3 id=\"some-scant-notes-and-web-links\">Some scant notes and web\nlinks</h3>\n<p>The manufacturers website:<br />\n<a\nhref=\"https://store.acer.com/en-us/nitro-5-gaming-laptop-an515-57-537y\"\nclass=\"uri\">https://store.acer.com/en-us/nitro-5-gaming-laptop-an515-57-537y</a></p>\n<table>\n<tbody>\n<tr class=\"odd\">\n<td style=\"text-align: left;\">Device name</td>\n<td style=\"text-align: left;\">Not disclosed</td>\n</tr>\n<tr class=\"even\">\n<td style=\"text-align: left;\">Processor</td>\n<td style=\"text-align: left;\">Intel(R) Core(TM) i5-10300H CPU @ 2.50GHz\n2.50 GHz</td>\n</tr>\n<tr class=\"odd\">\n<td style=\"text-align: left;\">Installed RAM</td>\n<td style=\"text-align: left;\">8.00 GB (7.83 GB usable)</td>\n</tr>\n<tr class=\"even\">\n<td style=\"text-align: left;\">System type</td>\n<td style=\"text-align: left;\">64-bit operating system, x64-based\nprocessor</td>\n</tr>\n<tr class=\"odd\">\n<td style=\"text-align: left;\">Pen and touch</td>\n<td style=\"text-align: left;\">No pen or touch input is available for\nthis display</td>\n</tr>\n</tbody>\n</table>\n',365,0,0,'CC-BY-SA','laptop reviews, ACER',0,0,1),
(3769,'2023-01-12','Crouching laptop, hidden server (part 0).',835,'Virtualized battlegrounds.','<h1 id=\"crouching-laptop-hidden-server-part-0\">Crouching laptop, hidden\nserver (part 0).</h1>\n<h2 id=\"virtualized-battlegrounds\">Virtualized battlegrounds.</h2>\n<ul>\n<li>Archer72\'s system: <a\nhref=\"https://gadgetaz.com/Laptop/Acer_Aspire_AS5750-6866--5402\">Acer\nAspire 5750-6866</a>\n<ul>\n<li>CPU: Intel Core i3 2350M (2.3 GHz max, 2 cores, 3MB cache).</li>\n<li>RAM: 4GB DDR3-1600 SODIMM (2 x 2GB currently, 2 x 4GB upgrade\nplanned).</li>\n<li>Video: Integrated Intel GMA HD 3000.</li>\n<li>DISK: 120GB SATA SSD.</li>\n<li>NIC: Integrated 1000 mbps.\n<ul>\n<li>802.11 b/g/n Wi-Fi.</li>\n<li>Bluetooth not installed.</li>\n</ul></li>\n</ul></li>\n<li>SGOTI\'s system: <a\nhref=\"https://support.hp.com/us-en/document/c06060339\">HP Notebook\n14-ck0052cl</a>\n<ul>\n<li>CPU: Intel Core i3-8130U (2.2 GHz - 4 GHz max, 2 cores, 4MB\ncache).</li>\n<li>RAM: 16GB DDR4-2400 SDRAM (2 x 8GB, upgraded).</li>\n<li>Video: Integrated Intel UHD Graphics 620.</li>\n<li>DISK: 1TB 5400 rpm SATA HDD (with empty m.2 SATA slot).</li>\n<li>NIC: Integrated 10/100/1000 GbE LAN.\n<ul>\n<li>802.11 b/g/n Wi-Fi &amp; Bluetooth 4.2 combo.</li>\n</ul></li>\n</ul></li>\n</ul>\n<hr />\n<h2 id=\"software-and-documumentation-mentioned-during-the-show\">Software\nand documumentation mentioned during the show.</h2>\n<ul>\n<li>Running Laptop, server style, with the Lid closed.\n<ol type=\"1\">\n<li>Edit logind.conf\n<code>sudo vim /etc/systemd/logind.conf</code>.</li>\n<li>Remove the <code>#</code> from these lines then set values to\n<code>ignore</code>:\n<ul>\n<li><code>HandleSuspendkey=ignore</code></li>\n<li><code>HandleLidSwitch=ignore</code></li>\n<li><code>HandleLidSwitchDocked=ignore</code></li>\n</ul></li>\n<li>Save then quit.\n<ul>\n<li>I\'m not going to tell you how ;)</li>\n</ul></li>\n<li>Finally, restart systemd-logind.\n<ul>\n<li><code>sudo systemctl restart systemd-logind.service</code></li>\n</ul></li>\n</ol></li>\n</ul>\n<h2 id=\"way-of-the-archer72\">Way of the Archer72.</h2>\n<ul>\n<li><a href=\"https://www.proxmox.com/en/\">Proxmox Homepage.</a>\n<ul>\n<li>Proxmox VE is a complete open-source platform for enterprise\nvirtualization. With the built-in web interface you can easily manage\nVMs and containers, software-defined storage and networking,\nhigh-availability clustering, and multiple out-of-the-box tools on a\nsingle solution.</li>\n<li><a href=\"https://pbs.proxmox.com/docs/\">Proxmox backup\ndocumentation.</a></li>\n<li><a href=\"https://pbs.proxmox.com/docs/proxmox-backup.pdf\">Proxmox\nbackup documentation .pdf download.</a></li>\n<li><a\nhref=\"https://www.proxmox.com/en/training/video-tutorials\">Proxmox video\ntutorials</a></li>\n<li><a href=\"https://pbs.proxmox.com/wiki/index.php/Main_Page\">Proxmox\nwiki.</a></li>\n<li><a href=\"https://bobcares.com/blog/proxmox-vlan-bridge\">Proxmox vLAN\nnetworking information.</a></li>\n<li><a href=\"https://bobcares.com/blog/setup-nat-on-proxmox/\">Proxmox\nNAT config information.</a></li>\n</ul></li>\n<li><a href=\"https://www.youtube.com/watch?v=_u8qTN3cCnQ\">Youtube\nvideo:</a> install/config Proxmox.</li>\n<li><a href=\"https://www.duckdns.org/why.jsp\">Duck DNS</a>\n<ul>\n<li>hosted on AWS, with no upfront cost to the user.</li>\n<li>Dynamic DNS service; dynamically update DNS records without the need\nfor human interaction. Connect to your home/local network from a remote\nnetwork using a domain name instead of an IP address.</li>\n</ul></li>\n</ul>\n<h2 id=\"way-of-the-sgoti\">Way of the SGOTI.</h2>\n<ul>\n<li><a\nhref=\"https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/virtualization_deployment_and_administration_guide/sect-guest_virtual_machine_installation_overview-creating_guests_with_virt_install\">RHEL\nDocumentation:</a> Creating guests with <code>virt-install</code>\n<ul>\n<li><a\nhref=\"https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9\">RHEL\n9 product documentation list</a></li>\n<li>You can use the <code>virt-insta
(3776,'2023-01-23','A linux distro review',572,'A linux distro review','<h2 id=\"xerolinux\">Xerolinux</h2>\n<p><a href=\"https://xerolinux.xyz\"\nclass=\"uri\">https://xerolinux.xyz</a></p>\n<p>I installed XeroLinux on an older I mac I had, mostly due to 2\nfactors,</p>\n<ol type=\"1\">\n<li>I had the hardware and</li>\n<li>A review I saw touted the MAC like interface from a modified KDE\nPlasma base.</li>\n</ol>\n<p>As a Plasma user, how could I resist.</p>\n<p>I had previously installed Fedora 36 on the MAC and was receiving\nrandom hardware issues at boot time, I wanted to see if the issue\npersisted on and Arch base, and since I had never used Arch, this was a\nperfect test case.</p>\n<p>The install:</p>\n<ul>\n<li>Power on the MAC and (if you have a MAC keyboard) press and hold the\nOption key. This presented me with 2 options, boot into fedora, or to\nthe EFI partition on my USB with XeroLinux installer.</li>\n<li>Select the EFI USB device</li>\n<li>I was then presented with 4 menu options, XeroLinux installer, REFI\nboot options, MAC OS and reboot</li>\n<li>I chose to boot into the Installer</li>\n<li>In the GUI installer I was first given the options to install\nseveral fixes for virtual environments including Qemu and VMWare as well\nas an install option</li>\n<li>Next I was greeting (literally with a welcome screen proclaiming\n&#x201C;Welcome Fellow Linux Nerds&#x201D; )</li>\n</ul>\n<p>I am at home...lol</p>\n<p>After selecting language, time zone and Keyboard layouts, The disk\npartitioning options are presented (and in much less confusing verbage\nthan Fedora) and you are given choice of what swap partition type to\nuse, No Swap, Swap no hibernate swap with hibernate and swap to file\nalso a choice of file system, xfs, btrfs of ext4. I chose xfs the\ndefault, and since this is just a toy, not a high availability/high\ncapacity server, there is no need for BTRFS, and if I am happy with the\nstate of the system, I may well use it as a media server or Plex server\nand in that case I&#x2019;ll need the larger file capacity of XFS Also\navailable are the file system encryption check box and a manual\npartition options</p>\n<p>Under the user account setup, it detected and offered to set the\nmachine name as MAcPro51, which is fine, it&#x2019;ll help me id the device on\nmy network, VS a unique name I would then have to come up with but would\ninevitably also contain &#x201C;MAC&#x201D; The page also included check boxes to\nvalidate password strength (forcing strong passwords, an auto-login\noption and an option to &#x201C;reuse user password as root password. Obviously\nfor SUDO purposes, this would not be recommended, but in my situation, I\ndid chose it and the strong passwords validation</p>\n<p>The next screen verifies all the selections and when next is clicked,\nA pop-up wants you to confirm again that you want to make the changes\nselected.</p>\n<p>(insert jeopardy music while the install happens)</p>\n<p>During the install, there is a button to observe what is actually\ngoing on in the background, partitioning, file copies, compiles,\netc<br />\nFirst boot and login<br />\nWell poop,I see a message in the boot screens referring to a hardware\nissue in CPU0 bank 8, there might be a hardware issue, it IS and older\nIntel MAC after all&#x2026;</p>\n<p>Step one is, as always, update the system</p>\n<p><em>Picture 1</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3776/PXL_20230103_204014040.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3776/PXL_20230103_204014040_thumbnail.jpg\"\nalt=\"Picture 1\" /></a> <br/><small><small><em>Click the thumbnail to see\nthe full-sized image</em></small></small></p>\n<p>Yes, that is a silhouette of the MST3K guys, I&#x2019;m using a 720 P TV as\nmy monitor and watch movies when I&#x2019;m in my home office. 121 packages are\nready fro update including Kernel 5.19.12</p>\n<p>(more jeopardy Music)</p>\n<p>next stop: install proprietary driver , open source drivers and\nnon-preinstalled apps All this went very smoothly, as though the distro\nmaintainers ha
(4046,'2024-02-05','HPR Community News for January 2024',0,'HPR Volunteers talk about shows released and comments posted in January 2024','',159,47,1,'CC-BY-SA','Community News',0,0,1),
(3771,'2023-01-16','How I eliminated pain naturally',1186,'I describe how I managed to eliminate pain from carpal tunnel syndrome and osteoarthritis.','<p>Wikipedia articles used:<br />\n<a href=\"https://en.wikipedia.org/wiki/Hypoalgesia\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Hypoalgesia</a><br />\n<a href=\"https://en.wikipedia.org/wiki/Interval_training\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Interval_training</a></p>\n<p>Transcript and accompanying photos can be found here by the date this\npodcast is released to the feed: <a href=\"https://pquirk.com\"\nclass=\"uri\">https://pquirk.com</a></p>\n<p>Wikipedia article on the Microsoft ergonomic keyboards:<br />\n<a href=\"https://en.wikipedia.org/wiki/Microsoft_ergonomic_keyboards\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Microsoft_ergonomic_keyboards</a></p>\n<p>Latest version of the Microsoft natural keyboard: <a\nhref=\"https://www.microsoft.com/en-us/d/microsoft-ergonomic-keyboard/93841ngdwr1h\"\nclass=\"uri\">https://www.microsoft.com/en-us/d/microsoft-ergonomic-keyboard/93841ngdwr1h</a></p>\n',383,0,0,'CC-BY-NC-SA','elliptical,ergonomics,pain,natural,Microsoft,Logitech,Elecom',0,0,1),
(3792,'2023-02-14','Learning to read music, part one',1404,'In which we learn to read music by going for a walk','<p>Although many people can create music easily enough on their\ncomputers, not as many can read the traditional stave-and-dots notation\nthat have been in use for hundreds of years.</p>\n<p>In less than half an hour, you can grasp the basics of reading music\nin a way that\'s as natural as putting one foot in front of the\nother.</p>\n<p>I\'d advise either printing out the handout from <a\nhref=\"https://enistello.info\" class=\"uri\">https://enistello.info</a> or\nhaving it on a screen you can see easily while outdoors. But it\'s not\nessential!</p>\n<p>Keep your eyes (and ears) peeled for part two of this series on\nHacker Public Radio, when I\'ll cover more complex rhythms and you\'ll\nlearn a lot more about pitch in written music.</p>\n<p>Handout and more information at:<br />\n<a href=\"https://enistello.info\"\nclass=\"uri\">https://enistello.info</a></p>\n<p>The book I mention in this episode is The Songlines, by Bruce\nChatwin, published in 1987, and available from all good bookshops. Don\'t\nbuy it from Amazon, it only encourages them.</p>\n',415,0,0,'CC-BY-SA','music,self-learning,auto-didactic',0,0,1),
(3772,'2023-01-17','Adventures with a small solar panel',1663,'I have a look at a cheap solar panel and learn a bit about how it works, and doesn\'t work.','<p>Solar panels are not like other sources of electricity that we are\nused to using, such as the mains or batteries. In this episode I recount\nwhat I have learned from playing with a small few-watt solar panel and\nhow to coax useful electricity out of it. Some multimeters were harmed\nin the making of this episode.</p>\n',268,0,0,'CC-BY-SA','solar,electricity,power,electronics',0,0,1),
(3781,'2023-01-30','The Joule Thief',791,'Using the Joule Thief to suck energy out of flat batteries','<p>The Joule Thief is a delightfully simple circuit that can light an\nLED that requires 2V or more from a battery that is depleted to 1V or\nless. There are three components in addition to the battery and LED: an\nNPN transistor, a resistor and a double wound inductor. The key thing\nabout the inductor is that the same core shares two windings but in\nopposite directions.</p>\n<p>The explanation of how it works is simple enough, as long as you\nalready understand how inductors and transistors work. In other words,\nit isn\'t simple at all! In short, the double wound inductor and\ntransistor conspire to generate a transient high voltage spike and so\nturn LED on and off so rapidly that the human eye cannot perceive\nit.</p>\n<p>The idea of such a circuit is approaching its centenary but the name\nitself is only around 20 years old. I recommend you check out <a\nhref=\"http://bigclive.com/joule.htm\">Big Clive\'s web site</a> as it was\nhe who came up with the name \"Joule Thief\". I also recommend <a\nhref=\"https://www.youtube.com/watch?v=K53beWYdIpc\">this video</a> in\nwhich he constructs a circuit using some ninja-level soldering\nskills.</p>\n',268,0,0,'CC-BY-SA','electronics',0,0,1),
(3785,'2023-02-03','Hacking Boba Bubble Tapioca Pearls Fail ',3321,'Hacking Boba Bubble Tapioca Pearls Fail ','<p>Listen to me cook / fail / hack Boba Green Tea!</p>\n<h2 id=\"links\">Links</h2>\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Bubble_tea\">Wikipedia\'s\narticle on Bubble or Boba tea</a></li>\n</ul>\n',36,93,1,'CC-BY-SA','cooking,hacking,fail',0,0,1),
(3774,'2023-01-19','Emergency Show posted in 2014. Chump Car Report',1500,'The racing series for $500 cars.','<p>\n<em>From Wikipedia, the free encyclopedia</em><br />\nThe <b>Optima Batteries ChumpCar World Series</b> is a series of automotive endurance races held on paved road race courses across North America. The races range in length from 6 to 36 hours. The name is a parody of Champ Car, a defunct open wheel professional racing series. Races are sanctioned throughout the United States, as well as in Canada and Mexico. Teams are encouraged, but not required, to decorate their cars with themes.\n</p>\n\n<ul>\n<li><a href=\"http://www.freesound.org/\">http://www.freesound.org/</a>\n</li>\n<!-- <li><a href=\"http://chumpcar.com/downloads/2014-2016chumpcar-rules.pdf\">http://chumpcar.com/downloads/2014-2016chumpcar-rules.pdf</a> -->\n<li><a href=\"https://web.archive.org/web/20131007174250/http://chumpcar.com/downloads/2014-2016chumpcar-rules.pdf\">http://chumpcar.com/downloads/2014-2016chumpcar-rules.pdf</a>\n</li>\n<!-- <li><a href=\"http://chumpcar.com/downloads/chumpcar-rules.pdf\">http://chumpcar.com/downloads/chumpcar-rules.pdf</a> -->\n<li><a href=\"https://web.archive.org/web/20131209032918/http://www.chumpcar.com/downloads/chumpcar-rules.pdf\">http://chumpcar.com/downloads/chumpcar-rules.pdf</a>\n</li>\n<!-- <li><a href=\"http://chumpcar.com/register/results/89.pdf\">http://chumpcar.com/register/results/89.pdf</a> -->\n<li><a href=\"https://web.archive.org/web/20160324200039/https://www.chumpcar.com/register/results/89.pdf\">http://chumpcar.com/register/results/89.pdf</a>\n</li>\n<li>Charles please grade my math!: <a href=\"http://hackerpublicradio.org/eps.php?id=1353\">http://hackerpublicradio.org/eps.php?id=1353</a>\n</li>\n</ul>\n\n<p>\nI am using dimensional analysis. <br />\n(1.97 miles X 60 seconds X 60 minutes) / (110 seconds lap time X 1 minute X 1 hour) = 64.47 MPH for one lap.<br />\nnow it\'s your turn! A slower lap took 120 seconds - how fast was Jonny going?\n</p>\n\n<p>\n <small><small><em>Editor\'s Note 2023-01-23</em>: All of the above chumpcar.com links seem to be dead. They have been replaced with links from the WayBack Machine (archive.org).</small></small>\n</p>\n',209,0,1,'CC-BY-SA','Racing, Chump Car World Series, MonsterB, Portland Oregon, sounds, boring',0,0,1),
(3775,'2023-01-20','Emergency Show posted in 2014. How to make a punch-card computer',850,'How to make a punch-card computer from stuff from the kitchen','\n<h2>How to make a punch-card computer</h2>\n\n<p>In this show we are going to make a punch-card computer out of stuff from your kitchen.</p>\n\n<p>Most of the materials are things you would otherwise have thrown away.</p>\n\n<h3>What you will need</h3>\n\n<ul>\n<li>An empty breakfast cereal box.</li>\n<li>Some bamboo barbecue skewers, eight for an eight bit computer, nine for a nine bit etc. These things come in cheap packs of many skewers. Or you could clean up used skewers.</li>\n<li>Scissors or a sharp craft knife.</li>\n<li>Some glue. Preferably washable PVA glue if you care about your clothes or have a small child \'helping\'.</li>\n<li>Some pieces of card which you can write on, the number corresponds to the \'bit-ness\' of the computer. If you used eight skewers, you need eight bits of card. These need to be slightly narrower than the cereal box. They could be made from other cereal boxes sliced up. A height of about four inches, ten centimetres is good.</li>\n<li>An enquiring mind and temporarily suspended credulity.</li>\n</ul>\n\n<h2>What to do</h2>\n\n<h4>Step 1:</h4>\n\n<p>Prepare the case of the computer.</p>\n\n<p>Cut off the box flaps at the top where the cereal was poured out.</p>\n\n<p>The computer will eventually be used standing up in the usual position with the open end at the top.</p>\n\n<h4>Step 2:</h4>\n\n<p>Making a chute at the bottom.</p>\n\n<p>You need to make a sort of chute at the bottom so that stuff that falls down into the box will slide out the front.</p>\n\n<p>Do this by cutting a horizontal line across the width of the box about four or five inches, about eight centimetres from the bottom edge of the box.</p>\n\n<p>Now cut down the front edges of the box from the horizontal slit to the bottom.</p>\n\n<p>This will make a flap that you can fold down by putting your hand inside and pushing it out.</p>\n\n<p>Hinge it down and make a fold in this flap about half an inch (one centimetre) from the front edge of the flap.</p>\n\n<p>Coat the inside of the flap, above the fold, with glue. Now push the flap back up and press the folded (gluey) portion of the flap against the inside of the back of the box. You could use some sticky tape to hold it down while it dries.</p>\n\n<p>When the glue has dried you will be able to see how this now forms a chute at the bottom of the box.</p>\n\n<h4>Step 3:</h4>\n\n<p>Now draw a horizontal line across the front side of the box about an inch, or 2.5 centimetres from the open end.</p>\n\n<p>Now is the trickiest part because you will need to do some arithmetic. Pity you don\'t have a computer, right?</p>\n\n<p>You need to measure out a number of points across this line which correspond to the bit-ness of your computer. So if you are making an eight bit computer, you need eight marks spaced equally across this line, that\'s nine gaps across.</p>\n\n<p>When you have done this you are going to pierce holes in the box with either one of the BBQ skewers or something sharper. You need for the skewers to pass right through the box and out the back side, in the same position as accurately as possible. This might be easier if you draw and measure out the same points on the back panel and push holes through from both sides.</p>\n\n<p>Either way what you are aiming for is to make the path through the box as accurately level and equi-distant as possible. The skewers should pass through the box and remain parallel.</p>\n\n<h4>Step 4:</h4>\n\n<p>We are now going to make the punched cards.</p>\n\n<p>Create the same number of cards as the bit-ness of your computer. So an eight bit computer will require eight cards.</p>\n\n<p>The cards will be almost as wide as the inside of the box, and tall enough to write stuff on but not high enough to show their bottom edges through the chute hole at the bottom of the computer. And not so tall that when they fall to the bottom they get wedged between the chute and the ba
(3777,'2023-01-24','Running Haiku on Bhyve, the BSD Hypervisor',531,'Claudio talks about installing and running Haiku R1/beta4 on Bhyve','<ul>\n<li><p>Bhyve - The BSD Hypervisor<br />\n<a href=\"https://bhyve.org/\" class=\"uri\">https://bhyve.org/</a></p></li>\n<li><p>vm-bhyve - Management system for FreeBSD bhyve virtual\nmachines<br />\n<a href=\"https://github.com/churchers/vm-bhyve\"\nclass=\"uri\">https://github.com/churchers/vm-bhyve</a></p></li>\n<li><p>Haiku - Open-source OS inspired by BeOS<br />\n<a href=\"https://www.haiku-os.org/\"\nclass=\"uri\">https://www.haiku-os.org/</a></p></li>\n<li><p>UEFI Booting Haiku<br />\n<a href=\"https://www.haiku-os.org/guides/uefi_booting/\"\nclass=\"uri\">https://www.haiku-os.org/guides/uefi_booting/</a></p></li>\n</ul>\n',152,0,0,'CC-BY-SA','freebsd,haiku,beos,bhyve,vmbhyve,bsd,virtualization,hypervisor',0,0,1),
(3778,'2023-01-25','A Squirrel Beeing on Google Products and Google Security',1223,'I made a \'beeing\" podcast about Google products, interoperability and their lousy security','<p>I have a discussion about my Android \"WIPING\" and how it affected my\n2 factor authorization with Google. Further I \"beein\" some more about\nAndroid not being able to authenticate against a known chromebook using\nGOOGLE SECURITY, what a \"beeing\" , \"beeing\"!!!!</p>\n<p>And I also cover Google\'s lousy support for chromebooks through\nAndroid, not sharing bandwidth via the cell communication channels. I\ncover easytether and ask why Google hasn\'t given chromebooks the same\nbandwidth access any Android phone would have??? WHY???</p>\n<p>Google is so piggish and stupid that Android and chromebooks are\nalmost as if they were separate companies who are in competition with\neach other instead of two products from the same company.</p>\n<p>I also cover the overbearing Android growth via QR codes and programs\nlike healio.</p>\n',377,0,1,'CC-BY-SA','Android, chromebooks, easytether, cellphones, bandwidth,beeing,sucks, QRcodes, healio',0,0,1),
(3779,'2023-01-26','Just Because You Can Do a Thing... ',198,'Just because you can do a thing, does that mean you should?','<p>Hello Hacker Public Radio fans. This is Trey, and I am throwing this\nrecording together for several reasons:</p>\n<ol type=\"1\">\n<li><p>The queue of shows is abysmally sparse. There are far more\nopenings for shows in the next few weeks than there are shows\nposted.</p></li>\n<li><p>This show is a pitiful excuse for why I haven\'t posted any shows\nrecently</p></li>\n</ol>\n<p>If you like what you hear on Hacker Public Radio, please express your\ngratitude by recording your own show. It doesn\'t need to be long, or\nsound professional, or anything. Introduce yourself and share something\nyou find interesting.</p>\n<p>If you do not like any or all of what you hear on Hacker Public\nRadio, then it is the perfect opportunity for you to take a few minutes\nand record a short (or long) podcast of your own which \"fills the gap\"\nof what you might feel is needed on HPR.</p>\n<p>Alright. Enough preliminaries.</p>\n<p>A long time ago, at an undisclosed university far, far away, I took\nmy first class about Ethics. One of the things I remember most was the\nquestion of \"Just because you can do a thing, does that mean you should\ndo the thing?\"</p>\n<p>This was applied to many different scenarios - from nation states\nbuilding weapons of mass destruction, to authoring computer viruses, and\neven to saying what you are thinking at any given moment.</p>\n<p>It should quickly become obvious that you should not always do a\nthing simply because you can do it. And today, I would like to relate\nthat to DIY home improvement projects, especially as we work our way up\nin years.</p>\n<p>For regular listeners, you may recall my series \"Everything You\nAlways Wanted to Knox about PEX\" recorded and shared in May through July\nof 2022 (<a\nhref=\"http://hackerpublicradio.org/eps.php?id=3604\">hpr3604</a>, <a\nhref=\"http://hackerpublicradio.org/eps.php?id=3614\">hpr3614</a>, <a\nhref=\"http://hackerpublicradio.org/eps.php?id=3624\">hpr3624</a> &amp; <a\nhref=\"http://hackerpublicradio.org/eps.php?id=3634\">hpr3634</a>). In\nthis series, I recounted the process of replumbing my home using PEX\nwith helpful advice for anyone else who wants to try it. What I did not\nrealize at the time I was doing the project was the toll that doing so\nmuch work overhead, by myself, was taking on my old shoulder joints. It\nwas only one straw, but a rather significant one, which eventually broke\nthe camel\'s back. Or, in my case, resulted in several severe tears in my\nrotator cuff and bicep tendon.</p>\n<p>Therapy was marginally effective, and surgery was eventually required\nto put things back together the way they belonged. My effort to save\nmoney and do the project myself \"Because I could\" helped lead to\nsignificantly more expenses and more than a year of recovery.</p>\n<p>I am not sharing this for sympathy, but rather because I learned\nsomething important. Now that I am getting older, as I decide which\nprojects I should do myself and which to pay professionals to do, it is\nimportant to factor in the potential impact on my body, my mind and\nthose around me, even if all goes well.</p>\n<p>Just because you can do a thing does not necessarily mean you should\ndo a thing.</p>\n<p>Unless that \"Thing\" is recording a podcast for HPR. THAT is something\nyou can and should do.</p>\n',394,0,0,'CC-BY-SA','aging, diy, health',0,0,1),
(3782,'2023-01-31','Content Format article from Wikipedia',300,'Wikipedia article on the various types of content formats','<p><a href=\"https://en.wikipedia.org/wiki/Content_format\"\ntitle=\"Wikipedia article discussing content formats\">Wikipedia\narticle</a></p>\n',318,0,0,'CC-BY-SA','media, formats, encoding',0,0,1),
(3784,'2023-02-02','Two factor authentication without a phone number',1107,'Diving into privacy-aware and offline methods to generate one time passwords','<p>Many services implement 2FA (Two factor authentication) by sending\nyou a OTP (One Time Password) using an SMS with a random code, but this\nforces you to give them your valuable phone number. What alternatives do\nexist?</p>\n<p>Let\'s dive into the <a\nhref=\"https://en.wikipedia.org/wiki/HMAC-based_one-time_password\">HOTP</a>,\nused by some banks years ago through a physical token and the recent <a\nhref=\"https://en.wikipedia.org/wiki/Time-based_one-time_password\">TOTP</a>,\nwhich both let you generate completely <em>offline</em> codes without\nusing any phone number or any other personal detail. They use the <a\nhref=\"https://en.wikipedia.org/wiki/HMAC\">HMAC</a> technique usually\nwith a SHA-1 one-way hashing function, but other hashing functions can\nbe used too.</p>\n<p>Useful links:</p>\n<ul>\n<li>a little visual explanation I found <a\nhref=\"https://www.onelogin.com/learn/otp-totp-hotp\">here</a></li>\n<li><a\nhref=\"https://f-droid.org/en/packages/com.beemdevelopment.aegis/\">Aegis</a>\nandroid OTP generator</li>\n<li>use TOTP in KeepassXC for a desktop generator <a\nhref=\"https://keepassxc.org/docs/KeePassXC_UserGuide.html#_adding_totp_to_an_entry\">guide</a></li>\n</ul>\n<p>Let\'s keep <a\nhref=\"https://en.wikipedia.org/wiki/WebAuthn\">Webauthn</a> maybe for a\nfuture episode, I\'m still exploring it and have to do more research.</p>\n',407,74,0,'CC-BY-NC-SA','2FA, OTP, TOTP, HOTP, security',0,0,1),
(3787,'2023-02-07','It shouldn\'t crackle like that',584,'Rho`n describes fixing the wiring to a ceramic Christmas tree','\n <h1>Synopsis</h1>\n <p>The Friday before Christmas, my partner\'s mother called and asked if I had a short indoor extension cord she could borrow. When I arrived at her house, she showed me her display of ceramic Christmas trees for which she needed the extension cord. These decorations have two pieces. A base which holds a small light bulb, and then the tree which sits over the light and has translucent colored plastic \'Christmas lights\' which are illuminated by the light bulb inside the tree. There were four ceramic trees of varying heights&mdash;from 14\" (~36 cm) to 6\" (~15 cm) tall. While helping to arrange each of the trees electrical cords and plugging them into the extension cable, one of the trees wouldn\'t stay lit. If you turned the base or moved the cord it would light back up, but then go out once you took pressure off the cord. I could also hear crackling at times when moving the cord&mdash;not a sound you want to hear in an electric ornament.</p>\n <p>After separating the pieces and turning over the base, I could see not only the sparks, but why it was sparking. At some point, one of wires had come lose from the light socket and was taped back in place with what looks like duct tape. The ornament was made in the 1950s. I\'m not sure when the repair was made. It is an ornament that has been passed through the family over the years. The plastic which held the wire in place had failed over the years, and the tape was also failing from the electric sparks that would occur when the wire was moved around. You could see burn marks on the tape around the wire.</p>\n <p>At first I thought I may be able to fix the side with the bad wiring. Maybe solder the wire onto the socket to give it a good electrical connection, and then use electrical tape to cover the hole where the socket casing had failed, but in the process of taking the wire out and removing all the old duct tape, the socket\'s electrical contact fell apart. This was for the best, the whole socket needed replacing, but I wasn\'t sure I could find a replacement socket that would fit through the hole in the ceramic base.</p>\n <p>While doing my last minute Christmas shopping on Christmas Eve, I stopped at one of the big box hardware stores to browse the electrical section and see if I could find a replacement socket that might work. Of course I hadn\'t brought either the old socket or the light bulb, but I found a small rack with replacement sockets that looked like it might work. The candelabra style socket replacement looked like the correct size&mdash;for both the light bulb and the hole in the base of the ornament.</p>\n <p>Once I was home, I tested the fit of the light bulb, and the socket was the correct size. It was just a little to big for the hole in the base, but I was hoping I could just grind off some of the raised plastic lettering and maybe a little off the sides of the socket here and there to get it to fit in the base. I was leery of using my Dremel tool to make the hole bigger in the ceramic base. I didn\'t want it to crack or chip the finish. I ended up doing both. Grinding down some of the plastic on the replacement socket and grinding out the hole in the ceramic base.</p>\n <p>A bit of electrical tape wrapped around the new socket created a snug fit between the hole in the ornament\'s base and the socket. I then hot glued the socket to the inside of the base to provide extra stability. Next step was attaching the old cord to the new socket. The cord was in good shape except where it was connected to the old socket. I evened up the end of the cord, then stripped it, and then connected the cord to the new socket with wire nuts.</p>\n <p>After flipping over the base and screwing in the light bulb, I tested the repair. Success!</p>\n <style>\ndiv#figures {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n justify-content: center;\n}\ndiv#figures figure { text-align: center; width: 300px;\n box-shadow:
(3788,'2023-02-08','Nitecore Tube torch',397,'I have owned one of these for many years and find it very useful','<article>\n<h2 id=\"introduction\">Introduction</h2>\n<p>This torch (aka <em>flashlight</em>) came up during the recording of\nthe Community News for May 2022. I have owned an example of this device\nsince 2016. Its been extensively reviewed elsewhere but I thought Id\nbriefly tell you about my experiences.</p>\n<h2 id=\"nitecore-tube-v1\">Nitecore Tube (V1)</h2>\n<figure>\n<img src=\"https://hackerpublicradio.org/eps/hpr3788/Nitecore_ruler.png\" alt=\"My Nitecore Tube\" />\n<figcaption aria-hidden=\"true\">My Nitecore Tube</figcaption>\n</figure>\n<p>I bought this from Amazon after seeing a video of it on the <em>Big\nClive</em> YouTube channel. It was under £10. This version is no longer\navailable but there is a version 2 for a similar price. I havent tried\nthis one.</p>\n<p>The Nitecore Tube is a small plastic-bodied torch with fittings for a\nkey ring. I have not been keen to keep it on my keyring for fear of\ndamage from the keys, so I keep it always in my shirt pocket.</p>\n<p>The torch is controlled through a rubber-like button on one side, and\nhas a micro USB port on the edge which is covered by a rubber cap.</p>\n<p>While charging, a blue LED can be seen inside the body of the torch,\nwhich turns off when the charging process is complete.</p>\n<p>The torch can operate at a number of brightness levels and has a\n<em>lock</em> mode:</p>\n<ul>\n<li>Single press - turns the low light level on and off</li>\n<li>Double press - turns on the permanent high level mode, a single\npress for off</li>\n<li>Single press and hold for more than 1 second - temporary high\nmode</li>\n<li>Press and hold when in low mode increases in brightness in\nsteps</li>\n<li>Press and hold for more than 5 seconds when in high mode will lock\nthe torch against accidental button presses. The light blinks to show\nits locked. Press and hold to return to normal.</li>\n</ul>\n<h2 id=\"usage\">Usage</h2>\n<p>I dont use this torch a huge amount. The fact that its always in my\npocket means I have a source of quite bright light when I need one. The\nlower level light is useful for moving around in the dark or in a gloomy\nplace. The brighter level I tend to use to read labels on jars, bottles\nand other containers. For some reason, these labels are often designed\nwith minimal contrast (like a dull orange lettering on a purple\nbackground) which my eyes just cant cope with. The Nitecore is my\nsaviour with this sort of stuff!</p>\n<p>I dont charge it very often, but it is easy to do it with a phone\ncharger - I have several micro USB cables around, so its no\nproblem.</p>\n<h2 id=\"conclusion\">Conclusion</h2>\n<p>This is a great little device. I have other torches for when I need a\nstronger, more broadly illuminating light source. I wouldnt be carrying\nany of these around with me though. The Nitecore is small and compact\nenough that I can keep it on me all the time.</p>\n<p>If I lost this one, or it died, Im pretty sure Id get another!</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li>Big Clive:\n<ul>\n<li><a href=\"https://www.youtube.com/watch?v=6Wq5q2ihoIs\">Fixing two\nNitecore Tube torches</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=K1BpfpO9BfY\">Comparison\nwith a shaker torch</a></li>\n<li><a\nhref=\"https://www.youtube.com/watch?v=yxI2Ln26ivY\">Teardown</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=YZNA8vxBcJE\">Teardown of a\nfake</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=tjX8S2G1Czc\">Worst clone\nyet</a></li>\n</ul></li>\n<li><a href=\"https://1lumen.com/review/nitecore-tube/\">1LUMEN.COM\nNitecore Tube</a> - a very detailed review.</li>\n</ul>\n</article>\n\n',225,0,1,'CC-BY-SA','torch,flashlight,rechargeable,Lithium Ion',0,0,1),
(3789,'2023-02-09','Common lisp portable games including acl2 formal logic',3220,'Describing exploratory libre common lisp portable games I am using acl2 formal methods in modules of','<p>Source I was looking through while talking WIP:<br />\ngopher://gopher.club/1/users/screwtape/car-game</p>\n<ul>\n<li>Compilers:\n<ul>\n<li>sbcl<br />\n<a href=\"https://sbcl.org/\" class=\"uri\">https://sbcl.org/</a></li>\n<li>ecl<br />\n<a href=\"https://ecl.common-lisp.dev/\"\nclass=\"uri\">https://ecl.common-lisp.dev/</a></li>\n<li>acl2<br />\n<a\nhref=\"https://www.cs.utexas.edu/users/moore/acl2/manuals/current/manual/index-seo.php/ACL2____Common_02Lisp\"\nclass=\"uri\">https://www.cs.utexas.edu/users/moore/acl2/manuals/current/manual/index-seo.php/ACL2____Common_02Lisp</a></li>\n</ul></li>\n<li>System definition:\n<ul>\n<li>asdf<br />\n<a href=\"https://common-lisp.net/project/asdf/\"\nclass=\"uri\">https://common-lisp.net/project/asdf/</a></li>\n</ul></li>\n<li>Books mentioned:\n<ul>\n<li>Land of Lisp</li>\n<li>Advances in Formal methods (whatever by Kaufmann)</li>\n</ul></li>\n</ul>\n',416,0,0,'CC-BY-SA','common-lisp,acl2,asdf3,formal-methods,game,programming',0,0,1),
(3791,'2023-02-13','My Hardware Problem - Keyboards',1418,'I\'m always looking for new computer hardware. This is about my keyboards','<p>I discuss my quest for the perfect keyboard for me.</p>\r\n\r\n<h3>Links</h3>\r\n<ul>\r\n<li><a href=\"https://www.duckychannel.com.tw/en\">https://www.duckychannel.com.tw/en</a></li>\r\n<li><a href=\"https://steelseries.com/apex\">https://steelseries.com/apex</a></li>\r\n<li><a href=\"https://www.razer.com/pc/gaming-keyboards-and-keypads\">https://www.razer.com/pc/gaming-keyboards-and-keypads</a></li>\r\n<li><a href=\"https://www.redragonzone.com/collections/keyboard\">https://www.redragonzone.com/collections/keyboard</a></li>\r\n<li><a href=\"https://www.keychron.com/\">https://www.keychron.com/</a></li>\r\n<li><a href=\"https://hyperx.com/collections/gaming-keyboards\">https://hyperx.com/collections/gaming-keyboards</a></li>\r\n<li><a href=\"https://keebworks.com/kailh-box-white/\">https://keebworks.com/kailh-box-white/</a></li>\r\n</ul>\r\n\r\n<p><small><a href=\"https://auphonic.com/blog/2022/06/10/new-noise-reduction-algorithms-beta/\">Noise reduction</a> applied</small></a>\r\n\r\n\r\n',417,57,0,'CC-BY-SA','Keyboards, Ducky, Razer, Red Dragon, Cherry, Kailh, MX, Keycaps, HyperX, Pudding',0,0,1),
(3793,'2023-02-15','RE: Zen_Floater2',1127,'GOD probably will use a Chromebook.','<hr />\r\n<h3>Counter Point</h3>\r\n<p>This show is a counter point to: <a href=\"https://hackerpublicradio.org/eps.php?id=3754\">hpr3754 :: GOD probably will use a Chromebook.</a>\r\n</p>\r\n<hr />\r\n\r\n<h2\r\nid=\"make-sure-no-one-is-in-the-room-with-you-before-you-play-this-and-put-your-secret-hat-on\">Make\r\nsure no one is in the room with you before you play this and put your\r\nsecret hat on.</h2>\r\n<ul>\r\n<li><a\r\nhref=\"https://hackerpublicradio.org/eps.php?id=3754#comments\">hpr3754:</a>\r\nGOD probably will use a Chromebook.</li>\r\n<li><a href=\"https://gnuworldorder.info/\">GNU World Order:</a> Episode\r\n489 Cloud Services.</li>\r\n<li><a\r\nhref=\"https://www.samsung.com/us/computing/galaxy-chromebook-go/\">samsung:</a>\r\nGalaxy Chromebook Go.\r\n<ul>\r\n<li><a\r\nhref=\"https://www.samsung.com/us/computing/chromebooks/12-14/galaxy-chromebook-go-14---silver--wifi--xe340xda-ka1us/\">samsung:</a>\r\nGalaxy Chromebook Go 14inch, Silver, Wi-Fi.</li>\r\n</ul></li>\r\n<li><a\r\nhref=\"https://en.wikipedia.org/wiki/Artificial_intelligence\">wikipedia:</a>\r\nArtificial intelligence is intelligence&#x2014;perceiving, synthesizing, and\r\ninferring information&#x2014;demonstrated by machines, as opposed to\r\nintelligence displayed by non-human animals and humans.</li>\r\n<li><a href=\"https://en.wikipedia.org/wiki/God\">wikipedia:</a> In\r\nmonotheistic thought, God is usually viewed as the supreme being,\r\ncreator, and principal object of faith. God is typically conceived as\r\nbeing omnipotent, omniscient, omnipresent, and omnibenevolent, as well\r\nas having an eternal and necessary existence.</li>\r\n<li><a\r\nhref=\"https://en.wikipedia.org/wiki/Planned_obsolescence\">wikipedia:</a>\r\nIn economics and industrial design, planned obsolescence (also called\r\nbuilt-in obsolescence or premature obsolescence) is a policy of planning\r\nor designing a product with an artificially limited useful life or a\r\npurposely frail design, so that it becomes obsolete after a certain\r\npre-determined period of time upon which it decrementally functions or\r\nsuddenly ceases to function, or might be perceived as\r\nunfashionable.</li>\r\n<li><a href=\"https://en.wikipedia.org/wiki/Eugenics\">wikipedia:</a>\r\nEugenics. In the decades following World War II, with more emphasis on\r\nhuman rights, many countries began to abandon eugenics policies,\r\nalthough some Western countries (the United States, Canada, and Sweden\r\namong them) continued to carry out forced sterilizations.</li>\r\n</ul>\r\n',391,0,1,'CC-BY-SA','Tin hat, chrome book, Artificial intelligence',0,0,1),
(3795,'2023-02-17','2022-2023 New Years Show Episode 1',5022,'2022 - 2023 new years show where people come together and chat the year away ','<h2 id=\"episode-1\">Episode #1</h2>\n<p>Welcome to the 11th Annual Hacker Public Radio show. It is December\nthe 31st 2022 and the time is 10 hundred hours UTC. We start the show by\nsending Greetings to Christmas Island/Kiribati and Samoa Kiritimati,\nApia. Chatting with Honkey, Mordancy, Joe, Ken, and others</p>\n<p>Discussed: pi hole, podman, RPIs, Pfsense, and netminers new micro\npc</p>\n<h3 id=\"introduction-by-ken-and-honkey\">Introduction by <a\nhref=\"https://hackerpublicradio.org/correspondents/0030.html\">Ken</a>\nand <a\nhref=\"https://hackerpublicradio.org/correspondents/0269.html\">Honkey</a>.</h3>\n<ul>\n<li><a\nhref=\"https://www.history.com/topics/holidays/new-years\">History:</a>\nThe New Years Celebrations.\n<ul>\n<li>Civilizations around the world have been celebrating the start of\neach new year for at least four millennia. Today, most New Year&#x2019;s\nfestivities begin on December 31 (New Year&#x2019;s Eve), the last day of the\nGregorian calendar, and continue into the early hours of January 1 (New\nYear&#x2019;s Day).</li>\n</ul></li>\n<li><a href=\"https://hackerpublicradio.org/contribute.php\">HPR:</a> So\nyou want to do a podcast?\n<ul>\n<li><a href=\"https://www.wikihow.com/Make-a-Good-Podcast\">Wikihow:</a>\nHow to make a good podcast.</li>\n</ul></li>\n<li><a href=\"https://www.deathwishcoffee.com/\">Death Wish Coffee</a>\n<ul>\n<li>We lead with an alternative point of view, providing bold, smooth\ncups of coffee to our people. We find fresh ways to enjoy coffee, and we\nfoster community along the way. Disrupting the status quo interests us,\nso we create edgy, sarcastic content. We live to rebel against blah\nbeans&#x2014;and a boring, lackluster life.</li>\n</ul></li>\n<li><a href=\"https://elephantsanctuarythailand.com/\">Thailand Elephant\nSanctuary</a></li>\n<li><a href=\"https://wiki.videolan.org/VLC_command-line_help/\">VLC\ncommandline:</a> List of commands and arguments.\n<ul>\n<li><a href=\"https://wiki.videolan.org/Documentation:Command_line/\">VLC\ncommandline:</a> Documentation.</li>\n<li><a\nhref=\"https://wiki.videolan.org/Documentation:Streaming_HowTo/Command_Line_Examples/\">VLC\ncommandline:</a> Audio streaming from the commandline.</li>\n<li><a href=\"https://github.com/pulseaudio/pavucontrol\">pavucontrol:</a>\nPulseAudio Volume Control.</li>\n</ul></li>\n<li><a href=\"http://www.hearseclub.com/hearsecon/hearsecon.htm\">Hearse\nClub</a>\n<ul>\n<li><a href=\"https://www.youtube.com/watch?v=HOSsC0mFXP0\">youtube:</a>\nMotorWeek Over the Edge: Hearse Convention.</li>\n</ul></li>\n<li><a href=\"https://xiph.org/ogg/\">xiph:</a> The Ogg container format.\n<ul>\n<li>Ogg is a multimedia container format, and the native file and stream\nformat for the Xiph.org multimedia codecs. As with all Xiph.org\ntechnology is it an open format free for anyone to use.</li>\n<li><a\nhref=\"https://www.loc.gov/preservation/digital/formats/fdd/fdd000026.shtml\">Library\nof Congress:</a> .ogg file format.</li>\n</ul></li>\n<li><a href=\"https://en.wikipedia.org/wiki/MP3\">Wikipedia:</a> .mp3 file\nformat.</li>\n<li><a href=\"https://xiph.org/flac/index.html\">xiph:</a> .flac file\nformat.\n<ul>\n<li>FLAC stands for Free Lossless Audio Codec, an audio format similar\nto MP3, but lossless, meaning that audio is compressed in FLAC without\nany loss in quality. This is similar to how Zip works, except with FLAC\nyou will get much better compression because it is designed specifically\nfor audio, and you can play back compressed FLAC files in your favorite\nplayer (or your car or home stereo, see supported devices) just like you\nwould an MP3 file.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/FLAC\">Wikipedia:</a> .flac\nfile format.</li>\n</ul></li>\n<li><a\nhref=\"https://elephantguide.com/en/how-much-can-an-elephant-lift/\">elephantguide:</a>\nHow Much Can An Elephant Lift?</li>\n<li><a\nhref=\"https://thaiembdc.org/2022/08/10/thailands-wild-tiger-po
(3804,'2023-03-02','2022-2023 New Years Show Episode 2',5224,'2022 - 2023 new years show where people come together and chat','<h2 id=\"episode-2\">Episode #2</h2>\n<ul>\n<li><p>London New Year\'s Eve Fireworks Display<br />\n<a href=\"https://youtu.be/2FcDNi1HkfI\"\nclass=\"uri\">https://youtu.be/2FcDNi1HkfI</a></p></li>\n<li><p>Doctor Fauci<br />\n<a href=\"https://www.niaid.nih.gov/about/director\"\nclass=\"uri\">https://www.niaid.nih.gov/about/director</a></p></li>\n<li><p>UK Tiered COVID Lockdowns<br />\n<a\nhref=\"https://www.ageuk.org.uk/information-advice/health-wellbeing/conditions-illnesses/coronavirus-guidance/local-lockdown-tiers/\"\nclass=\"uri\">https://www.ageuk.org.uk/information-advice/health-wellbeing/conditions-illnesses/coronavirus-guidance/local-lockdown-tiers/</a></p></li>\n<li><p>Carribean Ban on Alcohol During COVID?<br />\n<a\nhref=\"https://barbados.loopnews.com/content/say-no-alcohol-now-5-myths-about-alcohol-and-covid-19\"\nclass=\"uri\">https://barbados.loopnews.com/content/say-no-alcohol-now-5-myths-about-alcohol-and-covid-19</a></p></li>\n<li><p>New York City Restaurants Have Outdoor Dining Structures To\nCombat COVID Lockdowns<br />\n<a\nhref=\"https://nypost.com/2022/11/15/shut-down-nycs-outdoor-dining-sheds/\"\nclass=\"uri\">https://nypost.com/2022/11/15/shut-down-nycs-outdoor-dining-sheds/</a></p></li>\n<li><p>Happy New Year To Melbourne and Sydney Australia</p></li>\n<li><p>Happy New Year To Adelaide, Broken Hill Australia</p></li>\n<li><p>Funkwhale - Federated Music Streaming Platform<br />\n<a href=\"https://funkwhale.audio/\"\nclass=\"uri\">https://funkwhale.audio/</a></p></li>\n<li><p>FreeBSD<br />\n<a href=\"https://www.freebsd.org/\"\nclass=\"uri\">https://www.freebsd.org/</a></p></li>\n<li><p>ActivityPub<br />\n<a href=\"https://www.w3.org/TR/activitypub/\"\nclass=\"uri\">https://www.w3.org/TR/activitypub/</a><br />\n<a href=\"https://activitypub.rocks/\"\nclass=\"uri\">https://activitypub.rocks/</a><br />\n<a href=\"https://en.wikipedia.org/wiki/ActivityPub\"\nclass=\"uri\">https://en.wikipedia.org/wiki/ActivityPub</a></p></li>\n<li><p>The Linux Lugcast<br />\n<a href=\"https://linuxlugcast.com/\"\nclass=\"uri\">https://linuxlugcast.com/</a></p></li>\n<li><p>DevRandom Podcast (pod faded)<br />\n<a href=\"http://devrandomshow.org/shows/?f=all.html\"\nclass=\"uri\">http://devrandomshow.org/shows/?f=all.html</a><br />\n<a href=\"https://archive.org/details/devrandom\"\nclass=\"uri\">https://archive.org/details/devrandom</a></p></li>\n<li><p>CHAOS NET<br />\n<a href=\"https://chaosnet.net/\"\nclass=\"uri\">https://chaosnet.net/</a><br />\n<a href=\"https://twobithistory.org/2018/09/30/chaosnet.html\"\nclass=\"uri\">https://twobithistory.org/2018/09/30/chaosnet.html</a><br />\n<a href=\"https://en.wikipedia.org/wiki/Chaosnet\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Chaosnet</a></p></li>\n<li><p>Anne &amp; Lynn Wheeler<br />\n<a href=\"https://www.garlic.com/~lynn/\"\nclass=\"uri\">https://www.garlic.com/~lynn/</a></p></li>\n<li><p>IBM System 360<br />\n<a href=\"https://www.ibm.com/ibm/history/ibm100/us/en/icons/system360/\"\nclass=\"uri\">https://www.ibm.com/ibm/history/ibm100/us/en/icons/system360/</a><br />\n<a\nhref=\"https://www.ibm.com/ibm/history/ibm100/us/en/icons/system360/transform/\"\nclass=\"uri\">https://www.ibm.com/ibm/history/ibm100/us/en/icons/system360/transform/</a><br />\n<a href=\"https://en.wikipedia.org/wiki/IBM_System/360\"\nclass=\"uri\">https://en.wikipedia.org/wiki/IBM_System/360</a></p></li>\n<li><p>IBM System 370<br />\n<a\nhref=\"https://www.ibm.com/ibm/history/exhibits/mainframe/mainframe_PR370.html\"\nclass=\"uri\">https://www.ibm.com/ibm/history/exhibits/mainframe/mainframe_PR370.html</a><br />\n<a href=\"https://www.pcmag.com/encyclopedia/term/system370\"\nclass=\"uri\">https://www.pcmag.com/encyclopedia/term/system370</a><br />\n<a href=\"https://en.wikipedia.org/wiki/IBM_System/370\"\nclass=\"uri\">https://en.wikipedia.org/wiki/IBM_System/370</a></p></li>\n<li><p>UUCP<br />\n<a href=\"https://en.wikipedia.org/wiki/UUCP\"\nclass=\"uri\">https
(3814,'2023-03-16','2022-2023 New Years Show Episode 3',7265,'2022 - 2023 new years show where people come together and chat','<h2 id=\"episode-3\">Episode #3</h2>\n<ul>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/The_Drunkard%27s_Walk\">wikipedia:</a>\nThe Drunkard\'s Walk: How Randomness Rules Our Lives.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Lactose_intolerance\">wikipedia:</a>\nLactose intolerance is a common condition caused by a decreased ability\nto digest lactose, a sugar found in dairy products.</li>\n<li><a\nhref=\"https://en.uncyclopedia.co/wiki/Tree_hugging_hippy\">uncyclopedia:</a>\nA tree hugging hippy is a hippy who hugs trees often found in Bezerkley,\nCalifornia. Many people think that there is much more to say about tree\nhugging hippies than just the fact that they hug trees, but reality is,\nthat there is not really very much more to say about tree hugging\nhippies than that they hug trees.</li>\n<li><a\nhref=\"https://www.merriam-webster.com/dictionary/vegetarian\">merriam-webster:</a>\nA vegetarian is a person who does not eat meat : someone whose diet\nconsists wholly of vegetables, fruits, grains, nuts, and sometimes eggs\nor dairy products.</li>\n<li><a\nhref=\"https://www.merriam-webster.com/dictionary/vegan\">merriam-webster:</a>\nA vegan is a strict vegetarian who consumes no food (such as meat, eggs,\nor dairy products) that comes from animals.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Liberalism\">wikipedia:</a>\nLiberalism is a political and moral philosophy based on the rights of\nthe individual, liberty, consent of the governed, political equality and\nequality before the law. Liberals espouse various views depending on\ntheir understanding of these principles.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Conservatism\">wikipedia:</a>\nConservatism is a cultural, social, and political philosophy that seeks\nto promote and to preserve traditional institutions, practices, and\nvalues. The central tenets of conservatism may vary in relation to the\nculture and civilization in which it appears.</li>\n<li><a href=\"https://www.ssa.gov/agency/\">ssa:</a> Social Security is\ncommitted to helping maintain the basic well-being and protection of the\npeople we serve. We pay benefits to about 64 million people including\nretirees, children, widows, and widowers. From birth, to marriage, and\ninto retirement, we are there to provide support throughout life\'s\njourney.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Dehydration\">wikipedia:</a>\nIn physiology, dehydration is a lack of total body water, with an\naccompanying disruption of metabolic processes. It occurs when free\nwater loss exceeds free water intake, usually due to exercise, disease,\nor high environmental temperature. Mild dehydration can also be caused\nby immersion diuresis, which may increase risk of decompression sickness\nin divers.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Emergency_medical_technician\">wikipedia:</a>\nAn emergency medical technician (EMT), also known as an ambulance\ntechnician, is a health professional that provides emergency medical\nservices. EMTs are most commonly found working in ambulances. In\nEnglish-speaking countries, paramedics are a separate profession that\nhas additional educational requirements, qualifications, and scope of\npractice.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Post-traumatic_stress_disorder\">wikipedia:</a>\nPost-traumatic stress disorder (PTSD) is a mental and behavioral\ndisorder that can develop because of exposure to a traumatic event, such\nas sexual assault, warfare, traffic collisions, child abuse, domestic\nviolence, or other threats on a person\'s life.</li>\n<li><a href=\"https://www.anxiety.org/what-is-anxiety\">anxiety:</a>\nAnxiety is the mind and body\'s reaction to stressful, dangerous, or\nunfamiliar situations. It\'s the sense of uneasiness, distress, or dread\nyou feel before a significant event.</li>\n<li><a href=\"https://alcoholism.org/alcohol/family/\">alcoholism:</a>\nAlcoholism is a condition that develops ov
(3824,'2023-03-30','2022-2023 New Years Show Episode 4',7209,'2022 - 2023 new years show where people come together and chat','<h2 id=\"episode-4\">Episode #4</h2>\n<ul>\n<li><p>Massachusetts Comprehensive Assessment System<br />\n<a href=\"https://www.mass.gov/parents-guide-to-the-mcas\"\nclass=\"uri\">https://www.mass.gov/parents-guide-to-the-mcas</a><br />\n<a\nhref=\"https://en.wikipedia.org/wiki/Massachusetts_Comprehensive_Assessment_System\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Massachusetts_Comprehensive_Assessment_System</a></p></li>\n<li><p>Standardized Testing Was Invented In Massachusetts<br />\n<a\nhref=\"https://ed.lehigh.edu/news-events/news/history-standardized-testing\"\nclass=\"uri\">https://ed.lehigh.edu/news-events/news/history-standardized-testing</a></p></li>\n<li><p>GED Exam<br />\n<a href=\"https://ged.com/about_test/test_subjects/\"\nclass=\"uri\">https://ged.com/about_test/test_subjects/</a><br />\n<a href=\"https://en.wikipedia.org/wiki/General_Educational_Development\"\nclass=\"uri\">https://en.wikipedia.org/wiki/General_Educational_Development</a></p></li>\n<li><p>Alternative High Schools<br />\n<a href=\"https://blog.prepscholar.com/alternative-high-schools\"\nclass=\"uri\">https://blog.prepscholar.com/alternative-high-schools</a></p></li>\n<li><p>Umbrella Revolution<br />\n<a\nhref=\"https://time.com/3471366/hong-kong-umbrella-revolution-occupy-central-democracy-explainer-6-questions/\"\nclass=\"uri\">https://time.com/3471366/hong-kong-umbrella-revolution-occupy-central-democracy-explainer-6-questions/</a><br />\n<a href=\"https://en.wikipedia.org/wiki/Umbrella_Movement\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Umbrella_Movement</a></p></li>\n<li><p>Learning the Finnish Language<br />\n<a\nhref=\"https://finland.fi/life-society/how-the-heck-do-you-learn-finnish-part-1/\"\nclass=\"uri\">https://finland.fi/life-society/how-the-heck-do-you-learn-finnish-part-1/</a><br />\n<a href=\"https://herfinland.com/finnish-language-learning/\"\nclass=\"uri\">https://herfinland.com/finnish-language-learning/</a></p></li>\n<li><p>France Bans Google Drive In Schools<br />\n<a\nhref=\"https://www.theregister.com/2022/11/22/france_no_windows_google/\"\nclass=\"uri\">https://www.theregister.com/2022/11/22/france_no_windows_google/</a><br />\n<a\nhref=\"https://gettotext.com/office-365-and-google-drive-are-not-welcome-in-french-schools-even-if-they-are-free/\"\nclass=\"uri\">https://gettotext.com/office-365-and-google-drive-are-not-welcome-in-french-schools-even-if-they-are-free/</a></p></li>\n<li><p>Windows Me (Windows Millennium Edition)<br />\n<a href=\"https://en.wikipedia.org/wiki/Windows_Me\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Windows_Me</a><br />\n<a\nhref=\"https://www.howtogeek.com/688861/windows-me-20-years-later-was-it-really-that-bad/\"\nclass=\"uri\">https://www.howtogeek.com/688861/windows-me-20-years-later-was-it-really-that-bad/</a></p></li>\n<li><p>Windows 2000<br />\n<a href=\"https://en.wikipedia.org/wiki/Windows_2000\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Windows_2000</a></p></li>\n<li><p>Windows 95<br />\n<a href=\"https://en.wikipedia.org/wiki/Windows_95\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Windows_95</a></p></li>\n<li><p>FreeDOS<br />\n<a href=\"https://www.freedos.org/\"\nclass=\"uri\">https://www.freedos.org/</a></p></li>\n<li><p>BOX 86<br />\n<a href=\"https://box86.org/\" class=\"uri\">https://box86.org/</a></p></li>\n<li><p>React OS<br />\n<a href=\"https://reactos.org/\"\nclass=\"uri\">https://reactos.org/</a></p></li>\n<li><p>WINE<br />\n<a href=\"https://www.winehq.org/\"\nclass=\"uri\">https://www.winehq.org/</a></p></li>\n<li><p>Proton<br />\n<a href=\"https://github.com/ValveSoftware/Proton\"\nclass=\"uri\">https://github.com/ValveSoftware/Proton</a><br />\n<a href=\"https://www.tomshardware.com/how-to/game-with-steam-on-linux\"\nclass=\"uri\">https://www.tomshardware.com/how-to/game-with-steam-on-linux</a><br />\n<a href=\"https://www.protondb.com/\"\nclass=\"uri\">https://www.protondb.com/</a></p></li>\n<li><p>Windows XP<br />\n<a href
(3834,'2023-04-13','2022-2023 New Years Show Episode 5',7186,'2022 - 2023 new years show where people come together and chat','<h2 id=\"episode-5\">Episode #5</h2>\n<ul>\n<li><a\nhref=\"https://www.printables.com/model/348385-kirby-40mm-fume-extractor\">printables:</a>\nKirby 40mm Fume Extractor.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Kirby_Company\">wikipedia:</a>\nThe Kirby Company is a manufacturer of vacuum cleaners and home cleaning\naccessories, located in Cleveland, Ohio, United States. It is a division\nof Right Lane Industries.</li>\n<li><a href=\"https://linuxlugcast.com/\">lugcast:</a> We are an open\nPodcast/LUG that meets every first and third Friday of every month using\nmumble.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/PlayStation_Portable\">wikipedia:</a>\nThe PlayStation Portable (PSP) is a handheld game console developed and\nmarketed by Sony Computer Entertainment.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Rammstein\">wikipedia:</a>\nRammstein is a German Neue Deutsche H&#xE4;rte band formed in Berlin in 1994.\n<ul>\n<li>Goodluck with all the rest of the band/music chatter. I can\'t\nunderstand any of it.</li>\n</ul></li>\n<li><a href=\"https://www.youtube.com/watch?v=bkskypJMWcE\">youtube:</a>\nBurger Dance.\n<ul>\n<li>Please no. Why did I signup for this.</li>\n</ul></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Syphilis\">wikipedia:</a>\nSyphilis is most commonly spread through sexual activity.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Death_(metal_band)\">wikipedia:</a>\nDeath was an American death metal band formed in Altamonte Springs,\nFlorida, in 1984 by Chuck Schuldiner. Death is considered to be among\nthe most influential bands in heavy metal music and a pioneering force\nin death metal.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Death_(proto-punk_band)\">wikipedia:</a>\nDeath is a Detroit rock band formed in Detroit, Michigan in 1971 by\nbrothers Bobby, David, and Dannis Hackney.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/BitLocker\">wikipedia:</a>\nBitLocker is a full volume encryption feature included with Microsoft\nWindows versions starting with Windows Vista.</li>\n<li><a\nhref=\"https://www.dell.com/us/en/business/notebooks/latitude-e6410/pd.aspx?refid=latitude-e6410\">dell:</a>\nLatitude E6410 Laptop.</li>\n<li><a href=\"http://www.slackware.com/\">slackware:</a> Slackware is a\nLinux distribution created by Patrick Volkerding in 1993.</li>\n<li><a href=\"http://www.puppylinux.com/\">puppylinux:</a> Puppy Linux is\nan operating system and family of light-weight Linux distributions that\nfocus on ease of use and minimal memory footprint.</li>\n<li><a href=\"https://tails.boum.org/\">tails:</a> Tails, or The Amnesic\nIncognito Live System, is a security-focused Debian-based Linux\ndistribution aimed at preserving privacy and anonymity.</li>\n<li><a href=\"https://www.debian.org/\">debian:</a> Debian, also known as\nDebian GNU/Linux, is a Linux distribution composed of free and\nopen-source software, developed by the community-supported Debian\nProject, which was established by Ian Murdock on August 16, 1993.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Trusted_Platform_Module\">wikipedia:</a>\nTrusted Platform Module (TPM, also known as ISO/IEC 11889) is an\ninternational standard for a secure cryptoprocessor, a dedicated\nmicrocontroller designed to secure hardware through integrated\ncryptographic keys.</li>\n<li><a\nhref=\"https://www.pine64.org/devices/single-board-computers/rock64/\">pine64:</a>\nROCK64 is a credit card sized Single Board Computer powered by Rockchip\nRK3328 quad-core ARM Cortex A53 64-Bit Processor and support up to 4GB\n1600MHz LPDDR3 memory.</li>\n<li><a href=\"https://hub.docker.com/r/realies/nicotine/\">docker:</a>\nrealies/nicotine.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Rsync\">wikipedia:</a> rsync\nis a utility for efficiently transferring and synchronizing files\nbetween a computer and an external hard drive and across networked\ncomputers by comparing the modification times and siz
(3844,'2023-04-27','2022-2023 New Years Show Episode 6',7254,'2022 - 2023 new years show where people come together and chat','<h2 id=\"episode-6\">Episode #6</h2>\n<ul>\n<li><p>Waygu Beef<br />\n<a href=\"https://wagyu.org/breed-info/what-is-wagyu/\"\nclass=\"uri\">https://wagyu.org/breed-info/what-is-wagyu/</a></p></li>\n<li><p>Tom Selleck<br />\n<a href=\"https://en.wikipedia.org/wiki/Tom_Selleck\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Tom_Selleck</a></p></li>\n<li><p>Mister Baseball (with Tom Selleck)<br />\n<a href=\"https://www.imdb.com/title/tt0104926/\"\nclass=\"uri\">https://www.imdb.com/title/tt0104926/</a><br />\n<a href=\"https://en.wikipedia.org/wiki/Mr._Baseball\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Mr._Baseball</a></p></li>\n<li><p>FOSDEM<br />\n<a href=\"https://fosdem.org/2023/\"\nclass=\"uri\">https://fosdem.org/2023/</a></p></li>\n<li><p>Budweiser<br />\n<a href=\"https://us.budweiser.com/\"\nclass=\"uri\">https://us.budweiser.com/</a></p></li>\n<li><p>\"Natty\" Light<br />\n<a href=\"https://www.naturallight.com/\"\nclass=\"uri\">https://www.naturallight.com/</a></p></li>\n<li><p>Twisted Tea<br />\n<a href=\"https://www.twistedtea.com/\"\nclass=\"uri\">https://www.twistedtea.com/</a></p></li>\n<li><p>Pisswasser<br />\n<a href=\"https://www.urbandictionary.com/define.php?term=Pi%C3%9Fwasser\"\nclass=\"uri\">https://www.urbandictionary.com/define.php?term=Pi%C3%9Fwasser</a></p></li>\n<li><p>Bud Light<br />\n<a href=\"https://www.budlight.com/\"\nclass=\"uri\">https://www.budlight.com/</a></p></li>\n<li><p>Jim Koch (Sam Adams Beer)<br />\n<a href=\"https://www.forbes.com/profile/jim-koch/?sh=6854744623d9\"\nclass=\"uri\">https://www.forbes.com/profile/jim-koch/?sh=6854744623d9</a></p></li>\n<li><p>Arch Linux<br />\n<a href=\"https://archlinux.org/\"\nclass=\"uri\">https://archlinux.org/</a></p></li>\n<li><p>Samson Q2U Microphone<br />\n<a\nhref=\"http://www.samsontech.com/samson/products/microphones/usb-microphones/q2u/\"\nclass=\"uri\">http://www.samsontech.com/samson/products/microphones/usb-microphones/q2u/</a></p></li>\n<li><p>ATR-2100 Microphone<br />\n<a href=\"https://www.audio-technica.com/en-us/atr2100-usb\"\nclass=\"uri\">https://www.audio-technica.com/en-us/atr2100-usb</a></p></li>\n<li><p>Devrandom Podcast<br />\n<a href=\"http://devrandomshow.org/\"\nclass=\"uri\">http://devrandomshow.org/</a></p></li>\n<li><p>Flavordex (Fdroid App)<br />\n<a href=\"https://f-droid.org/en/packages/com.ultramegasoft.flavordex2/\"\nclass=\"uri\">https://f-droid.org/en/packages/com.ultramegasoft.flavordex2/</a></p></li>\n<li><p>Castopod<br />\n<a href=\"https://nlnet.nl/project/Castopod/\"\nclass=\"uri\">https://nlnet.nl/project/Castopod/</a></p></li>\n<li><p>Lightning Network<br />\n<a href=\"https://lightning.network/\"\nclass=\"uri\">https://lightning.network/</a></p></li>\n<li><p>Bitcoin<br />\n<a href=\"https://bitcoin.org/en/\"\nclass=\"uri\">https://bitcoin.org/en/</a></p></li>\n<li><p>Patreon<br />\n<a href=\"https://www.patreon.com/\"\nclass=\"uri\">https://www.patreon.com/</a></p></li>\n<li><p>Substack<br />\n<a href=\"https://substack.com/\"\nclass=\"uri\">https://substack.com/</a></p></li>\n<li><p>Dynamic Ad Insertion for Podcasts<br />\n<a\nhref=\"https://www.tritondigital.com/news-item/November-30-2020/podcast-dynamic-ad-insertion-101-what-radio-broadcasters-need-to-know\"\nclass=\"uri\">https://www.tritondigital.com/news-item/November-30-2020/podcast-dynamic-ad-insertion-101-what-radio-broadcasters-need-to-know</a></p></li>\n<li><p>ADJUST<br />\n<a href=\"https://www.adjust.com/product/\"\nclass=\"uri\">https://www.adjust.com/product/</a></p></li>\n<li><p>CNC Machine<br />\n<a href=\"https://craftbuds.com/what-is-a-cnc-machine/\"\nclass=\"uri\">https://craftbuds.com/what-is-a-cnc-machine/</a></p></li>\n<li><p>Applovin<br />\n<a href=\"https://www.applovin.com/\"\nclass=\"uri\">https://www.applovin.com/</a></p></li>\n<li><p>Maintainable Podcast<br />\n<a href=\"https://www.maintainable.fm/\"\nclass=\"uri\">https://www.maintainable.fm/</a></p></li>\n<li><p>Ruby On Rails<br />\n<a h
(3854,'2023-05-11','2022-2023 New Years Show Episode 7',7194,'2022 - 2023 new years show where people come together and chat','<h2 id=\"episode-7\">Episode #7</h2>\n<ul>\n<li><a\nhref=\"https://www.huffpost.com/entry/vintage-slang-terms-drunk_n_4268480\">huffpost:</a>\nVintage Slang Terms For Being Drunk Are Hilarious A Century Later.</li>\n<li><a\nhref=\"https://www.theshrimpfarm.com/articles/cherry_shrimp_breeding.php\">theshrimpfarm:</a>\nRed Cherry Shrimp are one of the simplest animals to breed in the\naquarium.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Habsburg_family_tree\">wikipedia:</a>\nThis is a family tree of the Habsburg family.\n<ul>\n<li><a href=\"https://www.youtube.com/watch?v=36hM5bfLCI8\">youtube:</a>\nTHE HABSBURG: Their Inbred Family Tree was a Circle!- Explained with\nReal Life Faces.</li>\n</ul></li>\n<li><a href=\"https://www.ancestry.com/\">ancestry:</a> Ancestry helps you\nunderstand your genealogy.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/AK-47\">wikipedia:</a> The\nAK-47, officially known as the Avtomat Kalashnikova (Russian: &#x410;&#x432;&#x442;&#x43E;&#x43C;&#x430;&#x442;\n&#x41A;&#x430;&#x43B;&#x430;&#x448;&#x43D;&#x438;&#x43A;&#x43E;&#x432;&#x430;, lit.\n<ul>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Mikhail_Kalashnikov\">wikipedia:</a>\nMikhail Timofeyevich Kalashnikov, IPA: 10 November 1919 &#x2013; 23 December\n2013) was a Soviet and Russian lieutenant general, inventor, military\nengineer, writer, and small arms designer.</li>\n</ul></li>\n<li><a href=\"https://www.youtube.com/watch?v=cwUkeIZ11tk\">youtube:</a>\nReview new SV-18 12.7mm .50 caliber Kalashnikov sniper rifle Army-2019\ndefense exhibition Russia.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Gulag\">wikipedia:</a> The\nGulag was the government agency in charge of the Soviet network of\nforced labour camps which were set up by order of Vladimir Lenin,\nreaching its peak during Joseph Stalin\'s rule from the 1930s to the\nearly 1950s.</li>\n<li><a href=\"https://techandcoffee.info/\">techandcoffee:</a> A virtual\nwater cooler for the world of tech.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Hippie\">wikipedia:</a> A\nhippie, also spelled hippy, especially in British English, is someone\nassociated with the counterculture of the 1960s, originally a youth\nmovement that began in the United States during the mid-1960s and spread\nto different countries around the world.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Cult\">wikipedia:</a> In\nmodern English, cult is a term, by some considered pejorative, for a\nsocial group that is defined by its unusual religious, spiritual, or\nphilosophical beliefs and rituals, or its common interest in a\nparticular personality, object, or goal.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Deity\">wikipedia:</a> A deity\nor god is a supernatural being who is considered divine or sacred.</li>\n<li><a href=\"https://www.youtube.com/watch?v=ICmhG9FEBpU\">youtube:</a>\nMarty Moose Theme Song.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Doogie_Howser,_M.D.\">wikipedia:</a>\nDoogie Howser, M.D. is an American medical sitcom that ran for four\nseasons on ABC from September 19, 1989, to March 24, 1993, totaling 97\nepisodes.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Google%2B\">wikipedia:</a>\nGoogle+ (pronounced and sometimes written as Google Plus; sometimes\ncalled G+) was a social network owned and operated by Google. The\nnetwork was launched on June 28, 2011, in an attempt to challenge other\nsocial networks, linking other Google products like Google Drive,\nBlogger and YouTube.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Google_Hangouts\">wikipedia:</a>\nGoogle Hangouts is a discontinued cross-platform instant messaging\nservice developed by Google.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Mr._Robot\">wikipedia:</a> Mr.\nRobot is an American drama thriller television series created by Sam\nEsmail for USA Network.</li>\n<li><a href=\"https://www.kali.org/\">kali:</a> Kali Linux is an\nopen-source, Debian-based Linux dist
(3864,'2023-05-25','2022-2023 New Years Show Episode 8',7396,'2022 - 2023 new years show where people come together and chat','<h2 id=\"episode-8\">Episode #8</h2>\n<ul>\n<li><p>Telefunken<br />\n<a href=\"https://telefunken.com/\"\nclass=\"uri\">https://telefunken.com/</a><br />\n<a href=\"https://en.wikipedia.org/wiki/Telefunken\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Telefunken</a></p></li>\n<li><p>Sena (motorcycle headphones)<br />\n<a href=\"https://www.sena.com/us-en\"\nclass=\"uri\">https://www.sena.com/us-en</a></p></li>\n<li><p>Cardo (motorcycle headphones)<br />\n<a href=\"https://www.cardosystems.com/products/\"\nclass=\"uri\">https://www.cardosystems.com/products/</a></p></li>\n<li><p>DT 770 Pro Headset<br />\n<a\nhref=\"https://www.soundguys.com/beyerdynamic-dt-770-studio-80ohm-review-15348/\"\nclass=\"uri\">https://www.soundguys.com/beyerdynamic-dt-770-studio-80ohm-review-15348/</a></p></li>\n<li><p>Audio-Technica<br />\n<a href=\"https://www.audio-technica.com/en-us/\"\nclass=\"uri\">https://www.audio-technica.com/en-us/</a></p></li>\n<li><p>Skullcandy<br />\n<a href=\"https://www.skullcandy.com/\"\nclass=\"uri\">https://www.skullcandy.com/</a></p></li>\n<li><p>LG Tone<br />\n<a href=\"https://www.lg.com/us/headphones\"\nclass=\"uri\">https://www.lg.com/us/headphones</a></p></li>\n<li><p>Pine Buds Pro<br />\n<a\nhref=\"https://pine64.com/product/pinebuds-pro-open-firmware-capable-anc-wireless-earbuds/\"\nclass=\"uri\">https://pine64.com/product/pinebuds-pro-open-firmware-capable-anc-wireless-earbuds/</a></p></li>\n<li><p>Acura RSX<br />\n<a href=\"https://acura.fandom.com/wiki/Acura_RSX\"\nclass=\"uri\">https://acura.fandom.com/wiki/Acura_RSX</a></p></li>\n<li><p>Flying Rich<br />\n<a href=\"http://flyingrich.com/\"\nclass=\"uri\">http://flyingrich.com/</a></p></li>\n<li><p>Hyundai Genesis<br />\n<a href=\"https://www.genesis.com/us/en/genesis.html\"\nclass=\"uri\">https://www.genesis.com/us/en/genesis.html</a></p></li>\n<li><p>Dodge Challenger<br />\n<a href=\"https://www.dodge.com/challenger.html\"\nclass=\"uri\">https://www.dodge.com/challenger.html</a></p></li>\n<li><p>Ohio Linux Fest (OLF)<br />\n<a href=\"https://olfconference.org/\"\nclass=\"uri\">https://olfconference.org/</a></p></li>\n<li><p>Subaru BRZ<br />\n<a href=\"https://www.subaru.com/vehicles/brz.html\"\nclass=\"uri\">https://www.subaru.com/vehicles/brz.html</a></p></li>\n<li><p>2009 Triumph America Motorcycle<br />\n<a\nhref=\"https://www.motorcycle.com/specs/triumph/cruiser/2009/america/base.html\"\nclass=\"uri\">https://www.motorcycle.com/specs/triumph/cruiser/2009/america/base.html</a></p></li>\n<li><p>South East Linux Fest<br />\n<a href=\"https://southeastlinuxfest.org/\"\nclass=\"uri\">https://southeastlinuxfest.org/</a></p></li>\n<li><p>/dev/random Shows<br />\n<a href=\"https://archive.org/details/devrandom\"\nclass=\"uri\">https://archive.org/details/devrandom</a></p></li>\n<li><p>Saturn Sky<br />\n<a href=\"https://en.wikipedia.org/wiki/Saturn_Sky\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Saturn_Sky</a></p></li>\n<li><p>Chevrolet Corvair<br />\n<a href=\"https://en.wikipedia.org/wiki/Chevrolet_Corvair\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Chevrolet_Corvair</a></p></li>\n<li><p>Phone Phreaking<br />\n<a href=\"https://en.wikipedia.org/wiki/Phreaking\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Phreaking</a></p></li>\n<li><p>Creality CR-10 Mini 3D Printer<br />\n<a\nhref=\"https://creality3d.shop/products/creality3d-cr-10mini-3d-printer-with-resume-print-300x220x300mm\"\nclass=\"uri\">https://creality3d.shop/products/creality3d-cr-10mini-3d-printer-with-resume-print-300x220x300mm</a></p></li>\n<li><p>Bigtreetech SKR Control Board<br />\n<a\nhref=\"https://biqu.equipment/collections/control-board/products/bigtreetech-btt-skr-3-ez-control-board-mainboard-for-3d-printer?variant=39786596171874\"\nclass=\"uri\">https://biqu.equipment/collections/control-board/products/bigtreetech-btt-skr-3-ez-control-board-mainboard-for-3d-printer?variant=39786596171874</a></p></li>\n<li><p>DJI Mini 3 Drone<br />\n<a href=\"htt
(3874,'2023-06-08','2022-2023 New Years Show Episode 9',7380,'2022 - 2023 new years show where people come together and chat','<h2 id=\"episode-9\">Episode #9</h2>\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/MS-DOS\">wikipedia:</a> MS-DOS\nis an operating system for x86-based personal computers mostly developed\nby Microsoft.</li>\n<li><a href=\"https://www.freedos.org/\">freedos:</a> FreeDOS is a\ncomplete, free, DOS-compatible operating system. While we provide some\nutilities, you should be able to run any program intended for\nMS-DOS.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Linux\">wikipedia:</a> Linux\n(/&#x2C8;li&#x2D0;n&#x28A;ks/ (listen) LEE-nuuks or /&#x2C8;l&#x26A;n&#x28A;ks/ LIN-uuks) is a family of\nopen-source Unix-like operating systems based on the Linux kernel, an\noperating system kernel first released on September 17, 1991, by Linus\nTorvalds.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Token_Ring\">wikipedia:</a>\nToken Ring is a computer networking technology used to build local area\nnetworks. It was introduced by IBM in 1984, and standardized in 1989 as\nIEEE 802.5.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/BNC_connector\">wikipedia:</a>\nThe BNC connector (initialism of \"Bayonet Neill&#x2013;Concelman\") is a\nminiature quick connect/disconnect radio frequency connector used for\ncoaxial cable.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/GPRS_core_network\">wikipedia:</a>\nGPRS core network.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Novell\">wikipedia:</a>\nNovell, Inc. /no&#x28A;&#x2C8;v&#x25B;l/ was an American software and services company\nheadquartered in Provo, Utah, that existed from 1980 until 2014.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/BITNET\">wikipedia:</a>\nBITNET.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/DECnet\">wikipedia:</a>\nDECnet.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/3Com\">wikipedia:</a>\n3Com.</li>\n<li><a href=\"https://www.realtek.com/en/\">realtek:</a> realtek.</li>\n<li><a href=\"https://www.tp-link.com/us/\">tp:</a> TP-Link Vastly Expands\nSmart Home Lineup With Tapo Full Home Security Solutions, Tapo Robot\nVacuums and Various Matter Compatible Products.</li>\n<li><a href=\"https://www.cisco.com/\">cisco:</a> Cisco Systems, Inc.,\ncommonly known as Cisco, is an American-based multinational digital\ncommunications technology conglomerate corporation headquartered in San\nJose, California.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/IBM\">wikipedia:</a> The\nInternational Business Machines Corporation (IBM), nicknamed Big Blue,\nis an American multinational technology corporation headquartered in\nArmonk, New York, with operations in over 175 countries. It specializes\nin computer hardware, middleware and software and provides hosting and\nconsulting services in areas ranging from mainframe computers to\nnanotechnology.</li>\n<li><a\nhref=\"https://duckduckgo.com/?q=bootleg+stuff&amp;t=ffab&amp;iax=images&amp;ia=images\">duckduckgo:</a>\nBootleg stuff search.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/VM_(operating_system)\">wikipedia:</a>\nVM (often: VM/CMS) is a family of IBM virtual machine operating systems\nused on IBM mainframes System/370, System/390, zSeries, System z and\ncompatible systems, including the Hercules emulator for personal\ncomputers.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Disk_partitioning\">wikipedia:</a>\nDisk partitioning or disk slicing is the creation of one or more regions\non secondary storage, so that each region can be managed\nseparately.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/IBM_System/360\">wikipedia:</a> The\nIBM System/360 is a family of mainframe computer systems that was\nannounced by IBM on April 7, 1964, and delivered between 1965 and\n1978.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/IBM_System/370\">wikipedia:</a> The\nIBM System/370 (S/370) is a model range of IBM mainframe computers\nannounced on June 30, 1970, as the successors to the System/360\nfamily.</li>\n<li><a\nhref=\"https://www.cisco.com/c/en/u
(3884,'2023-06-22','2022-2023 New Years Show Episode 10',10355,'2022 - 2023 new years show where people come together and chat','<h2 id=\"episode-10\">Episode #10</h2>\n<ul>\n<li><p>Tech And Coffee<br />\n<a href=\"https://techandcoffee.info/\"\nclass=\"uri\">https://techandcoffee.info/</a></p></li>\n<li><p>CDC COVID Death Toll<br />\n<a href=\"https://covid.cdc.gov/covid-data-tracker/#datatracker-home\"\nclass=\"uri\">https://covid.cdc.gov/covid-data-tracker/#datatracker-home</a></p></li>\n<li><p>Edinburgh<br />\n<a href=\"https://edinburgh.org/\"\nclass=\"uri\">https://edinburgh.org/</a></p></li>\n<li><p>Glasgow<br />\n<a\nhref=\"https://www.scotland.org/about-scotland/scotlands-stories/glasgow\"\nclass=\"uri\">https://www.scotland.org/about-scotland/scotlands-stories/glasgow</a></p></li>\n<li><p>Pixelfed - A decentralized social media photo sharing site<br />\n<a href=\"https://pixelfed.org/\"\nclass=\"uri\">https://pixelfed.org/</a></p></li>\n<li><p>Audacity<br />\n<a href=\"https://www.audacityteam.org/\"\nclass=\"uri\">https://www.audacityteam.org/</a></p></li>\n<li><p>Ice Cast<br />\n<a href=\"https://icecast.org/\"\nclass=\"uri\">https://icecast.org/</a></p></li>\n<li><p>Butt - Broadcast Using This Tool<br />\n<a href=\"https://danielnoethen.de/butt/\"\nclass=\"uri\">https://danielnoethen.de/butt/</a></p></li>\n<li><p>FOSDEM Brussels, 2023<br />\n<a href=\"https://fosdem.org/2023/news/2022-09-14-fosdem-2023-dates/\"\nclass=\"uri\">https://fosdem.org/2023/news/2022-09-14-fosdem-2023-dates/</a></p></li>\n<li><p>Arduboy Mini<br />\n<a\nhref=\"https://liliputing.com/arduboy-mini-hits-kickstarter-for-29-and-up-tiny-8-bit-game-console-with-300-games-included/\"\nclass=\"uri\">https://liliputing.com/arduboy-mini-hits-kickstarter-for-29-and-up-tiny-8-bit-game-console-with-300-games-included/</a></p></li>\n<li><p>Pine Tab 2<br />\n<a\nhref=\"https://arstechnica.com/gadgets/2022/12/pinetab-2-is-a-rockchip-based-linux-powered-repairable-tablet/\"\nclass=\"uri\">https://arstechnica.com/gadgets/2022/12/pinetab-2-is-a-rockchip-based-linux-powered-repairable-tablet/</a></p></li>\n<li><p>NVIDIA 3080<br />\n<a\nhref=\"https://www.nvidia.com/en-us/geforce/graphics-cards/30-series/rtx-3080-3080ti/\"\nclass=\"uri\">https://www.nvidia.com/en-us/geforce/graphics-cards/30-series/rtx-3080-3080ti/</a></p></li>\n<li><p>Pinebook Pro<br />\n<a href=\"https://www.pine64.org/pinebook-pro/\"\nclass=\"uri\">https://www.pine64.org/pinebook-pro/</a></p></li>\n<li><p>Pinenote<br />\n<a href=\"https://www.pine64.org/pinenote/\"\nclass=\"uri\">https://www.pine64.org/pinenote/</a></p></li>\n<li><p>GDP Win 4<br />\n<a\nhref=\"https://www.indiegogo.com/projects/gpd-win-4-smallest-6800u-handheld-console#/\"\nclass=\"uri\">https://www.indiegogo.com/projects/gpd-win-4-smallest-6800u-handheld-console#/</a></p></li>\n<li><p>Steam OS<br />\n<a href=\"https://store.steampowered.com/steamos\"\nclass=\"uri\">https://store.steampowered.com/steamos</a></p></li>\n<li><p>Steam Deck<br />\n<a href=\"https://store.steampowered.com/steamdeck\"\nclass=\"uri\">https://store.steampowered.com/steamdeck</a></p></li>\n<li><p>Docking Stations For Steam Deck<br />\n<a href=\"https://store.steampowered.com/steamdeckdock\"\nclass=\"uri\">https://store.steampowered.com/steamdeckdock</a></p></li>\n<li><p>HP Elitedesk G2 Mini<br />\n<a\nhref=\"https://support.hp.com/us-en/product/hp-elitedesk-800-35w-g2-desktop-mini-pc/7633266\"\nclass=\"uri\">https://support.hp.com/us-en/product/hp-elitedesk-800-35w-g2-desktop-mini-pc/7633266</a></p></li>\n<li><p>Plex<br />\n<a href=\"https://www.plex.tv/\"\nclass=\"uri\">https://www.plex.tv/</a></p></li>\n<li><p>Audio Bookshelf<br />\n<a href=\"https://www.audiobookshelf.org/\"\nclass=\"uri\">https://www.audiobookshelf.org/</a></p></li>\n<li><p>Jellyfin<br />\n<a href=\"https://jellyfin.org/\"\nclass=\"uri\">https://jellyfin.org/</a></p></li>\n<li><p>Helios NAS<br />\n<a href=\"https://kobol.io/\" class=\"uri\">https://kobol.io/</a></p></li>\n<li><p>Synology NAS<br />\n<a href=\"https://www.synology.com/en-us\"\nclass=\"uri\">https://www.synolo
(4066,'2024-03-04','HPR Community News for February 2024',0,'HPR Volunteers talk about shows released and comments posted in February 2024','',159,47,1,'CC-BY-SA','Community News',0,0,1),
(3794,'2023-02-16','Retro Karaoke machine restored',491,'I fix the cassette tape mechanism to a resale shop karaoke machine','<p>ENTEX Electronics Electronic Singing Machine.<br />\nKaraoke Model No. 1820. Entex Electronics Inc. Made in Taiwan. Late\n1970s early 1980s.<br />\nIt incorporates an 8-Track Player and Cassette Tape Recorder.<br />\nIt also uses the Bucket Brigade Device Echo (BBD ECHO) Power is supplied\nby<br />\nAC 120 Volts. It also uses 10 D cell batteries, or alternatively 12-15\nvolts DC.</p>\n<p><a\nhref=\"https://www.worthpoint.com/worthopedia/entex-electronics-electronic-singing-41033720\"\ntitle=\"ENTEX Electronics Electronic Singing Machine on Worthpoint.com\">ENTEX\nElectronics Electronic Singing Machine</a></p>\n<p><a href=\"https://archive.org/search?query=entex+handheld+games\"\ntitle=\"Entex Electronics Handheld Games on the Internet Archive\">Entex\nElectronics Handheld Games on the Internet Archive</a></p>\n<p><br />\n<em><em>Belts</em></em></p>\n<p><a href=\"https://www.amazon.com/gp/product/B01CZSU6K8\"\ntitle=\"Square Cassette Tape Machine Recorder Rubber Belt\">Square\nCassette Tape Machine Recorder Rubber Belt</a></p>\n<p><a href=\"https://www.amazon.com/gp/product/B08QVS3D8K\"\ntitle=\"Cassette Recorder Repair Maintenance Mix Flat Cassette Tape Machine Rubber Belts (Width 4MM)\">Cassette\nRecorder Repair Maintenance Mix Flat Cassette Tape Machine Rubber Belts\n(Width 4MM)</a></p>\n<p><br />\n<em><em>USB Soundcard</em></em></p>\n<p>48KHz/44.1KHz sampling rate with 16-Bit Resolution.</p>\n<p><a href=\"https://www.amazon.com/dp/B00XM883BK\"\ntitle=\"SABRENT Aluminum USB External Stereo Sound Adapter\">SABRENT\nAluminum USB External Stereo Sound Adapter</a></p>\n<p><br />\n<em><em>Free Music Archive</em></em></p>\n<p><a\nhref=\"https://freemusicarchive.org/music/modern-monster/we-are-modern-monster/cyborg-lost\"\ntitle=\"Cyborg, Lost by Modern Monster on the Free Music Archive\">Cyborg,\nLost by Modern Monster</a></p>\n<p><br />\n<em><em>Pictures</em></em><br />\n<small><small>The images are thumbnails. Click on each to see the\nfull-sized picture.</small></small></p>\n<p><strong>8 Track side</strong><br />\n<a href=\"http://hackerpublicradio.org/eps/hpr3794/IMG_8-track_side.jpg\"\ntitle=\"8 Track side\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3794/IMG_8-track_side_tn.jpg\"\ntitle=\"8 Track side\" alt=\"8 Track side\" /></a></p>\n<p><strong>Cassette tape side</strong><br />\n<a href=\"http://hackerpublicradio.org/eps/hpr3794/IMG_cassette_side.jpg\"\ntitle=\"Cassette tape side\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3794/IMG_cassette_side_tn.jpg\"\ntitle=\"Cassette tape side\" alt=\"Cassette tape side\" /></a></p>\n<p><strong>Initial condition of the cassette player</strong><br />\n<a\nhref=\"http://hackerpublicradio.org/eps/hpr3794/IMG_initial_condition.jpg\"\ntitle=\"Initial condition of the cassette player\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3794/IMG_initial_condition_tn.jpg\"\ntitle=\"Initial condition of the cassette player\"\nalt=\"Initial condition of the cassette player\" /></a></p>\n<p><strong>Back of the player</strong><br />\n<a\nhref=\"http://hackerpublicradio.org/eps/hpr3794/IMG_inside_from_back.jpg\"\ntitle=\"Back of the player\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3794/IMG_inside_from_back_tn.jpg\"\ntitle=\"Back of the player\" alt=\"Back of the player\" /></a></p>\n<p><strong>Player with the cassette cover removed</strong><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3794/IMG_outside_with_tools.jpg\"\ntitle=\"Player with the cassette cover removed\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3794/IMG_outside_with_tools_tn.jpg\"\ntitle=\"Player with the cassette cover removed\"\nalt=\"Player with the cassette cover removed\" /></a></p>\n<p><strong>Connecting rod for the cassette player</strong><br />\n<a\nhref=\"http://hackerpublicradio.org/eps/hpr3794/IMG_connecting_rod.jpg\"\ntitle=\"Connecting rod for the cassette player\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3794/IMG_connecting_rod_tn.jpg\"\ntitl
(3796,'2023-02-20','Dependent Types',508,'A quick taste of programming with dependent types','<p>I discuss dependent types, which are types that can contain non-type\nprograms. An example of a dependent type is a list whose type contains\nits length. Instead of just writing <code>List&lt;String&gt;</code> for\na list that contains strings, dependent types include types like\n<code>List&lt;String, 5&gt;</code> that describe lists of exactly five\nstrings. Dependent types can also be used to represent mathematics, in\nwhich case the programs that they describe count as proofs, and tools\nfrom programming can be used to write math.</p>\n<p>Dependent types used to be something that really required a research\nbackground, but there has been a lot of progress on making them more\nuser-friendly and on writing accessible introductions lately.</p>\n<p>Languages mentioned:</p>\n<ul>\n<li><a href=\"https://www.idris-lang.org/\">Idris</a> is a self-hosted\ndependently typed language with type-level resource tracking</li>\n<li><a href=\"https://wiki.portal.chalmers.se/agda/pmwiki.php\">Agda</a>\nis a testbed for new ideas in dependently typed programming</li>\n<li><a href=\"https://leanprover.github.io/\">Lean 4</a> is a self-hosted\ndependently typed language that has a more conservative logical core\nthan Idris or Agda, and attempts to appeal more to practicing\nmathematicians.</li>\n<li><a href=\"https://coq.inria.fr/\">Coq</a> is a proof assistant based\non dependent types that has been used to fully mathematically verify a C\ncompiler</li>\n</ul>\n<p>Books mentioned:</p>\n<ul>\n<li><a href=\"https://thelittletyper.com/\">The Little Typer</a>, by\nDaniel P. Friedman and David Thrane Christiansen is an intro to the core\nideas of dependent types, in dialog form</li>\n<li><a\nhref=\"https://www.manning.com/books/type-driven-development-with-idris\">Type\nDriven Development with Idris</a> by Edwin Brady, the creator of Idris,\ndescribes an approach to programming that uses expressive types as a way\nto make programmers\' lives easier</li>\n<li><a href=\"https://plfa.github.io/\">Programming Language Foundations\nin Agda</a> by Phil Wadler, Wen Kokke, and Jeremy Siek describes the use\nof Agda for both programming and proving</li>\n<li><a href=\"https://softwarefoundations.cis.upenn.edu/\">Software\nFoundations</a> is a series of books that use Coq as an introduction to\nmathematically rigorous software development in a proof assistant. It\'s\nhow I initially learned these topics!</li>\n</ul>\n',418,0,0,'CC-BY-SA','types, math, programming languages, functional programming',0,0,1),
(3798,'2023-02-22','Laptop Second SSD MXLinux Install',749,'Overcoming UEFI and Windows 10 to Install MXLinux 21.3 on a 2021 Asus Laptop 2nd SSD drive','<p>I forgot to mention the power consumption was very good, seemingly\r\nbetter than windows 10. That\'s a big bonus.</p>\r\n<p>On the website it said that the XFCE AHS release is not out yet. It\r\nwould probably work better on my device.</p>\r\n<p><a href=\"https://distrowatch.com/table.php?distribution=mx\"\r\nclass=\"uri\">https://distrowatch.com/table.php?distribution=mx</a></p>\r\n<p><em>Screenshot 2023-02-14 15:50:31</em><br />\r\n<a\r\nhref=\"https://hackerpublicradio.org/eps/hpr3798/Screenshot_2023-02-14_15-50-31_-_Copy.png\"><img\r\nsrc=\"https://hackerpublicradio.org/eps/hpr3798/Screenshot_2023-02-14_15-50-31_-_Copy_thumbnail.png\"\r\nalt=\"Screenshot 2023-02-14 15:50:31\" /></a> <br/><small><small><em>Click\r\nthe thumbnail to see the full-sized image</em></small></small></p>\r\n\r\n<small>Edit: Ken Original summary was \"Overcoming fucking UEFI and Windows 10 to Install MXLinux 21.3 on a 2021 Asus Laptop 2nd SSD drive\" - as per <a href=\"https://hackerpublicradio.org/stuff_you_need_to_know.php#not_moderated\">policy</a></small>\r\n',401,57,1,'CC-BY-SA','distrohopping,distros,linux,GNU,MXLinux',0,0,1),
(3797,'2023-02-21','How to submit changes to HPR',1895,'rho_n shows Ken how to submit changes to the new HPR static site.','<p>\nHPR is switching to a static site and in today\'s show <a href=\"https://hackerpublicradio.org/correspondents/0293.html\">Rho`n</a> explains to <a href=\"https://hackerpublicradio.org/correspondents/0030.html\">Ken</a> how to submit changes to the code.\n</p>\n<pre>\n<code>\n[user@pc fix]$ git clone gitea@repo.anhonesthost.net:rho_n/hpr_generator.git\n[user@pc fix]$ cd hpr_generator/\n[user@pc hpr_generator]$ git status\n[user@pc hpr_generator]$ git checkout -b I70_Fix_links_to_audio\n</code>\n</pre>\n<p>\nEdit the files. Once complete:</p>\n<pre>\n<code>\n[user@pc hpr_generator]$ git add file/to/commit\n[user@pc hpr_generator]$ git commit\n[user@pc hpr_generator]$ git push origin I70_Fix_links_to_audio\n</code>\n</pre>\n<p>\nYou can now login to the <a href=\"https://repo.anhonesthost.net/rho_n/hpr_generator\">rho_n/hpr_generator</a> git repo and you should be able to see several branches.<br />\nNext to your branch you can press <strong>New Pull Request</strong><br />\n<!-- <img src=\"https://hackerpublicradio.org/eps/hpr3797/hpr3797_2.png\" alt=\"The new pull request button\" /><br /> -->\n<img src=\"https://archive.org/download/hpr3797/hpr3797/hpr3797_2.png\" alt=\"The new pull request button\" /><br />\nReview your changes and if you\'re happy press the green <strong>New Pull Request</strong><br />\nFill in the description and a detailed comment <br />\nUse the HPR convention <em>[&lt;issue number&gt;] &lt;brief_description&gt; The brief description is usually based on the title of the issue</em><br />\nWhen <strong>Create Pull Request</strong><br />\n</p>\n\n<p>\n<!-- <a href=\"https://hackerpublicradio.org/eps/hpr3797/\">Full show notes are available</a>. -->\n<a href=\"https://archive.org/download/hpr3797/hpr3797/full_shownotes.html\">Full show notes are available</a>.\n</p>\n',30,0,0,'CC-BY-SA','git,hpr,code,pull request',0,0,1),
(3799,'2023-02-23','My home router history',1921,'Recent router maintenance makes me remember all the fun I\'ve had with my home network router','<h1 id=\"router-history\">Router History</h1>\n<p>Early Dialup</p>\n<ul>\n<li>Connection sharing</li>\n</ul>\n<p>DSL/Cable</p>\n<ul>\n<li>Linux PC with 2 NIC</li>\n<li>Set up IP masquerading</li>\n<li>Windows connection sharing</li>\n<li>This may have been against TOS</li>\n<li>$50 EBay PC</li>\n<li>Mandrake MNF</li>\n</ul>\n<p>Found a PC on the Street</p>\n<ul>\n<li>IPCop</li>\n<li>Infrequently updated</li>\n<li>No updates required or abandoned?</li>\n</ul>\n<p>OpenBSD</p>\n<ul>\n<li>Reputation for Security</li>\n<li>Something New</li>\n<li>Good instructions for setting up home office.</li>\n<li>Manual but straightforward</li>\n</ul>\n<p>WRT-54gl with tomato</p>\n<ul>\n<li>Linksys router sold specifically to run Linux</li>\n<li>Purchased to be AP</li>\n<li>Junk PC hardware failures - PSU or IDE disks</li>\n<li>Frequently used as backup.</li>\n</ul>\n<p>PCEngines Alix</p>\n<ul>\n<li>Basically a PC in a router form factor</li>\n<li>Serial port - NO VGA</li>\n<li>No USB boot - Had to set up PXE boot tftp server.</li>\n<li>Install OpenBSD</li>\n<li>No Video out - Serial port only</li>\n<li>Expensive for specs - 500MHz AMD CPU and 256M Ram</li>\n</ul>\n<p>Alix Limitations</p>\n<ul>\n<li>Worked great for a few years</li>\n<li>Compact Flash limited replacements.</li>\n<li>100M Ethernet</li>\n<li>Found Spare on EBay as Backup, just in case.</li>\n</ul>\n<p>PCEngines APU2</p>\n<ul>\n<li>Serial only</li>\n<li>OpenBSD 5.6 via USB drive</li>\n<li>3 NIC - Lan, Trusted, Untrusted</li>\n<li>Unifi AP for WiFi</li>\n</ul>\n<p>First playbook</p>\n<ul>\n<li>Missing some easy management\n<ul>\n<li>Local DNS</li>\n<li>DHCP Reservations</li>\n</ul></li>\n<li><a\nhref=\"http://hackerpublicradio.org/eps.php?id=3187\">http://hackerpublicradio.org/eps.php?id=3187</a>\n<ul>\n<li>CSV file with IP,MAC, Hostname</li>\n<li>DHCP reservation and local DNS</li>\n</ul></li>\n</ul>\n<p>Restricting Internet</p>\n<ul>\n<li>Open DNS and port redirects</li>\n<li>Unbound included on OpenBSD base\n<ul>\n<li>Caching DNS resolver</li>\n<li>Forward to Open DNS - Set to do some content filtering</li>\n<li>PF rule to redirect all incoming port 53 to unbound</li>\n</ul></li>\n<li>PF scripts\n<ul>\n<li>PF table with IP addresses of devices</li>\n<li>Table always blocked</li>\n<li>cron jobs to add/remove IP addresses to table</li>\n</ul></li>\n</ul>\n<p>APU2 limitations</p>\n<ul>\n<li>Installer Recommends Auto partitioning\n<ul>\n<li>Doesn\'t know how you plan to use OpenBSD</li>\n<li>Doesn\'t know the future plans for project.</li>\n</ul></li>\n<li>16G msata drive</li>\n<li>Small /usr</li>\n<li>Re-linking growth</li>\n<li>Moving src partitions</li>\n</ul>\n<p>PCEngines APU2</p>\n<ul>\n<li>Search /etc for changes</li>\n<li>Ansible Playbook for everything not covered by DNS/DHCP playbook\n<ul>\n<li>email forwarding</li>\n<li>sysctls</li>\n<li>syslog to server</li>\n</ul></li>\n<li>Practice on OpenBSD VM\n<ul>\n<li>198.168 172.20 as variable</li>\n<li>Normally with VM, I use the VirtIO NIC</li>\n<li>I used vitalized Intel NIC so same device names: em0, em1, ...</li>\n</ul></li>\n</ul>\n<p>Just Do It</p>\n<ul>\n<li>Update APU firmware - TODO retails\n<ul>\n<li>/usr/local/share/doc/pkg-readmes/flashrom</li>\n</ul></li>\n<li>Warned family internet would be offline a few hours</li>\n<li>Replaced M2 Sata card with 120</li>\n<li>It worked the first time</li>\n</ul>\n<p>Links</p>\n<ul>\n<li><a\nhref=\"https://www.ipcop.org/index_php.html\">https://www.ipcop.org/index_php.html</a></li>\n<li><a\nhref=\"https://www.pcengines.ch/alix2d3.htm\">https://www.pcengines.ch/alix2d3.htm</a></li>\n<li><a\nhref=\"https://pcengines.ch/apu2.htm\">https://pcengines.ch/apu2.htm</a></li>\n<li><a\nhref=\"https://pcengines.ch/howto.htm#OS_installation\">https://pcengines.ch/howto.htm#OS_installation</a></li>\n<li><a\nhref=\"https://www.openbsd.org/faq/pf/example1.html\">https://www.openbsd.org/faq/pf/example1.html</a></li>\n</ul>\n',342,0,0,'CC-BY-SA','o
(3802,'2023-02-28','Attack of the Squishmallow',5809,'Rho`n records replacing the screen to a MacBook Pro','<h1>Synopsis</h1>\n\n<p>In this episode, Rho`n records his attempt to replace a broken MacBook Pro display. Content warning: May cause drowsiness&mdash;do not listen while driving or operating heavy machinery. On the other hand, it may be conducive to a good nap in which you drift off to sleep while listening to the introduction and wake up in time to hear how things turn out in the end.</p>\n\n<p>Production notes: The \"truncate silence\" audio effect in your audio editor is your friend. The original recording length was around 2 hrs and 15 minutes. After truncating the silence it was down to 1 hour and 36 minutes.</p>\n\n<style>\ndiv#figures {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n justify-content: center;\n}\ndiv#figures figure { text-align: center; width: 300px;\n box-shadow:\n 0 1px 1px hsl(0deg 0% 0% / 0.075),\n 0 2px 2px hsl(0deg 0% 0% / 0.075),\n 0 4px 4px hsl(0deg 0% 0% / 0.075),\n 0 8px 8px hsl(0deg 0% 0% / 0.075),\n 0 16px 16px hsl(0deg 0% 0% / 0.075) }\ndiv#figures figcaption { max-width: 25vw; text-align: left; padding: 0 0.5em 0.5em 0.5em }\ndiv#figures img { max-width: 50vw; margin-bottom: 0.5em;\n box-shadow:\n 0 1px 1px hsl(0deg 0% 0% / 0.075),\n 0 2px 2px hsl(0deg 0% 0% / 0.075),\n 0 4px 4px hsl(0deg 0% 0% / 0.075),\n 0 8px 8px hsl(0deg 0% 0% / 0.075),\n 0 16px 16px hsl(0deg 0% 0% / 0.075)}\n</style>\n<div id=\"figures\">\n<figure>\n <a href=\"http://www.hackerpublicradio.org/eps/hpr3802/image01-lg.jpg\"><img src=\"http://www.hackerpublicradio.org/eps/hpr3802/image01-sm.jpg\"\n alt=\"Laptop in the work area\"></a>\n <br>\n <figcaption>The MacBook Pro with the broken display removed.\n To the left are they small plastic cups containg the screws\n and other small parts that were removed for dissembly.\n <br></figcaption>\n</figure>\n<figure>\n <a href=\"http://www.hackerpublicradio.org/eps/hpr3802/image02-lg.jpg\"><img src=\"http://www.hackerpublicradio.org/eps/hpr3802/image02-sm.jpg\"\n alt=\"New display\"></a>\n <br>\n <figcaption>The new laptop display not completely removed from its packaging.<br></figcaption>\n</figure>\n<figure>\n <a href=\"http://www.hackerpublicradio.org/eps/hpr3802/image03-lg.jpg\"><img src=\"http://www.hackerpublicradio.org/eps/hpr3802/image03-sm.jpg\"\n alt=\"Repaired Laptop\"></a>\n <br>\n <figcaption>The repaired laptop booted to its login screen<br></figcaption>\n</figure>\n</div>\n\n<h1>References</h1>\n<ul>\n <li><a href=\"https://en.wikipedia.org/wiki/Squishmallows\">Squishmallows</a></li>\n <li><a href=\"https://www.ifixit.com/Guide/MacBook+Pro+13-Inch+Function+Keys+2017+Display+Assembly+Replacement/117328\">iFixIt: MacBook Pro 13\" Function Keys 2017 Display Assembly Replacement</a></li>\n</ul>\n\n<h1>Attribution</h1>\n\n<p>The transition sound used between audio clips is found on <a href=\"https://freesound.org/\">freesound.org</a>:\n<br>Name: <a href=\"https://freesound.org/people/DanJFilms/sounds/529064/\">Harp Transition Music Cue</a>\n<br>Author: <a href=\"https://freesound.org/people/DanJFilms/\">DanJFilms</a>\n<br>License: <a href=\"http://creativecommons.org/publicdomain/zero/1.0/\">Creative Commons Zero</a></p>\n\n',293,0,0,'CC-BY-SA','DIY, Macbook, Macbook Pro, pc repair, repair',0,0,1),
(3801,'2023-02-27','Enter the gopher',822,'Participating in the gopher internet protocol','<p>If you would like to talk about gopher on Mastodon, I\'m\n<code>@screwtape@mastodon.sdf.org</code> (and I have a weekly aNONradio\nshow about gopher)</p>\n<ul>\n<li><p>floodgap link<br />\n<a href=\"https://gopher.floodgap.com\"\nclass=\"uri\">https://gopher.floodgap.com</a></p></li>\n<li><p>Web proxy to menu with ascii art<br />\n<a\nhref=\"https://gopher.floodgap.com/gopher/gw.lite?=gopher.club+70+312f75736572732f78696c65642f\"\nclass=\"uri\">https://gopher.floodgap.com/gopher/gw.lite?=gopher.club+70+312f75736572732f78696c65642f</a></p></li>\n<li><p>Get on a tilde:<br />\n<a href=\"https://sdf.org\" class=\"uri\">https://sdf.org</a><br />\n<a href=\"https://tildeverse.org\"\nclass=\"uri\">https://tildeverse.org</a></p></li>\n</ul>\n<pre><code> $ ssh username@tty.sdf.org # Following sdf.org &#39;s instructions\n $ # Some good gophers to browse\n $ lynx gopher://gopher.club\n $ lynx gopher://tildeverse.org\n $ lynx gopher://floodgap.com</code></pre>\n<ul>\n<li><p>You might have to<br />\n<code>apt install lynx</code><br />\nor<br />\n<code>pkg_add lynx</code><br />\nor etc.</p></li>\n<li><p>sdf.org:<br />\n<code>$ mkgopher</code><br />\n<a href=\"https://phlogosphere.org\"\nclass=\"uri\">https://phlogosphere.org</a> or</p></li>\n<li><p>tilde.institute tilde (for example):<br />\n<code>$ man burrow # how to use burrow</code><br />\n<a href=\"https://wiki.tilde.institute/w/gopher\"\nclass=\"uri\">https://wiki.tilde.institute/w/gopher</a></p></li>\n<li><p>Gopher standard!<br />\n<a href=\"https://rfc-editor.org/info/rfc1436\"\nclass=\"uri\">https://rfc-editor.org/info/rfc1436</a><br />\nMastodon: <code>@albatross@sdf.org</code></p></li>\n<li><p>elpher-mode<br />\n<a href=\"https://elpa.nongnu.org/nongnu/doc/elpher.html\"\nclass=\"uri\">https://elpa.nongnu.org/nongnu/doc/elpher.html</a><br />\n<a href=\"https://mastodon.sdf.org/@screwtape/109334057925655327\"\nclass=\"uri\">https://mastodon.sdf.org/@screwtape/109334057925655327</a></p></li>\n<li><p>phetch<br />\n<a href=\"https://github.com/xvxx/phetch\"\nclass=\"uri\">https://github.com/xvxx/phetch</a></p></li>\n<li><p>overbite<br />\n<a href=\"https://gopher.floodgap.com/overbite/\"\nclass=\"uri\">https://gopher.floodgap.com/overbite/</a></p></li>\n<li><p>proxy to floodgap<br />\n<a href=\"https://gopher.floodgap.com/gopher/\"\nclass=\"uri\">https://gopher.floodgap.com/gopher/</a></p></li>\n<li><p>Cool gophers:</p>\n<ul>\n<li>gopher://tilde.institute/1/~screwtape/</li>\n<li>gopher://gopher.club/1/users/nm03</li>\n<li>gopher://linkerror.com</li>\n<li>gopher://gopher.black</li>\n<li>gopher://i-logout.cz/1/bongusta</li>\n</ul></li>\n<li><p>(Very) Advanced! Self-hosting tls gopher:<br />\ngophernicus (+ reference to stunnel4)<br />\n<a href=\"https://github.com/gophernicus/gophernicus\"\nclass=\"uri\">https://github.com/gophernicus/gophernicus</a></p></li>\n</ul>\n',416,0,0,'CC-BY-SA','gopher,protocol,smolnet,tutorial,introduction,internet,retro',0,0,1),
(3803,'2023-03-01','Chatbot hallucination',407,'The inevitable show featuring a segment written by the chatbot ChatGPT.','<p>A simple case of \"garbage in, garbage out\", but it\'s interesting to\nsee it \"try\" to make sense.</p>\n<p>In this show, I asked ChatGPT to write me the script for an episode\nof Hacker Public Radio, and tried to confuse it. Then, some thoughts on\nchatGPT and these chatbots in general.</p>\n<h2 id=\"references\">References:</h2>\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/ChatGPT#Limitations\"\nclass=\"uri\">https://en.wikipedia.org/wiki/ChatGPT#Limitations</a></li>\n<li><a href=\"https://spectrum.ieee.org/magnus-carlsen-chess-scandal-ai\"\nclass=\"uri\">https://spectrum.ieee.org/magnus-carlsen-chess-scandal-ai</a></li>\n<li><a\nhref=\"https://help.openai.com/en/articles/6783457-chatgpt-general-faq\"\nclass=\"uri\">https://help.openai.com/en/articles/6783457-chatgpt-general-faq</a></li>\n</ul>\n',399,0,1,'CC-BY-SA','chatgpt,\"artificial intelligence\"',0,0,1),
(3805,'2023-03-03','Document File Formats on Wikipedia',736,'Document File Format - a continuation of Content Format','<p><em><em>Document File Format - a continuation of Content\nFormat</em></em></p>\n<p><a href=\"https://en.wikipedia.org/wiki/Document_file_format\"\ntitle=\"Wikipedia - Document File Formats\">Wikipedia - Document File\nFormats</a></p>\n<p><em><em>Creators of Markdown</em></em></p>\n<p><a href=\"https://en.wikipedia.org/wiki/John_Gruber\"\ntitle=\"Wikipedia - John Gruber\">Wikipedia - John Gruber</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/Aaron_Swartz\"\ntitle=\"Wikipedia - Aaron Swartz\">Wikipedia - Aaron Swartz</a></p>\n',318,0,0,'CC-BY-SA','Documents, Formats',0,0,1),
(3807,'2023-03-07','PeePaw builds a computer',2040,'Brian starts the process of building an 8 bit retro computer','<ol type=\"1\">\n<li>intro\n<ul>\n<li>who is peepaw?<br />\nMe!</li>\n<li>why a retro computer?<br />\nhelp a kid understand computers</li>\n<li>why z80?<br />\ncheap, available, cheap</li>\n</ul></li>\n<li>the plan\n<ul>\n<li>build from scratch</li>\n<li>build something like a tec1<br />\n<a href=\"https://en.wikipedia.org/wiki/TEC-1\"\nclass=\"uri\">https://en.wikipedia.org/wiki/TEC-1</a></li>\n<li>a great guide is the 1981 book build your own z80 computer<br />\n<a\nhref=\"https://archive.org/details/BuildYourOwnZ80ComputerSteveCiarcia\">Build\nYour Own Z80 Computer Steve Ciarcia/</a></li>\n<li>get started with nop tester<br />\n<a href=\"http://www.z80.info/z80test0.htm\"\nclass=\"uri\">http://www.z80.info/z80test0.htm</a></li>\n<li>want an expandable system</li>\n<li>keep the cost down</li>\n<li>work up to a system like the jupiter ace (which is like a zx-81\nsinclair computer)<br />\n<a href=\"https://en.wikipedia.org/wiki/Jupiter_Ace\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Jupiter_Ace</a></li>\n</ul></li>\n<li>getting started, the nop test\n<ul>\n<li>use an arduino mega board and some forth to spin up the most basic\nz80 system<br />\n<a\nhref=\"https://gitlab.com/8bitforce/retroshield-hw/-/tree/master/hardware\"\nclass=\"uri\">https://gitlab.com/8bitforce/retroshield-hw/-/tree/master/hardware</a></li>\n<li>give the z80 5 volts, a clock and the right data and it will happily\nstart up and run through its address space doing nothing</li>\n</ul></li>\n<li>the nop tester, in software\n<ul>\n<li>make a forth logic probe<br />\n<a href=\"https://en.wikipedia.org/wiki/Logic_probe\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Logic_probe</a></li>\n<li>use a gate method of frequency counting<br />\n<a href=\"https://ww1.microchip.com/downloads/en/Appnotes/doc8365.pdf\"\nclass=\"uri\">https://ww1.microchip.com/downloads/en/Appnotes/doc8365.pdf</a></li>\n<li>create a few forth words to make a \"logic probe\" and test that\nprobe<br />\n<a\nhref=\"https://pajacobs-ghub.github.io/flashforth/ff5-tutorial-guide.html#_counting_button_presses\"\nclass=\"uri\">https://pajacobs-ghub.github.io/flashforth/ff5-tutorial-guide.html#_counting_button_presses</a></li>\n<li>need an arduino mega running flashforth<br />\n<a href=\"https://store.arduino.cc/products/arduino-mega-2560-rev3\"\nclass=\"uri\">https://store.arduino.cc/products/arduino-mega-2560-rev3</a><br />\n<a href=\"https://flashforth.com/atmega.html\"\nclass=\"uri\">https://flashforth.com/atmega.html</a></li>\n<li>datasheet<br />\n<a href=\"https://store.arduino.cc/products/arduino-mega-2560-rev3\"\nclass=\"uri\">https://store.arduino.cc/products/arduino-mega-2560-rev3</a><br />\n<a\nhref=\"https://ww1.microchip.com/downloads/en/devicedoc/atmel-2549-8-bit-avr-microcontroller-atmega640-1280-1281-2560-2561_datasheet.pdf\"\nclass=\"uri\">https://ww1.microchip.com/downloads/en/devicedoc/atmel-2549-8-bit-avr-microcontroller-atmega640-1280-1281-2560-2561_datasheet.pdf</a></li>\n<li>some jumper wires</li>\n<li>z80</li>\n<li>solderless bread board</li>\n</ul></li>\n<li>the code walk through, start from the bottom up note: ( -- ) are\nstack effect comments, back slashes are plain comments\n<ul>\n<li>constants</li>\n<li>variable</li>\n<li><code>@ ! mset mclr mtst</code></li>\n<li>set up external interrupt, int4, arduino board pin4</li>\n</ul></li>\n</ol>\n<pre><code>\\ the source code\n\\ declare some constants and variable as labels\nvariable Compare\nvariable Count\n\n$100 constant PINH \\ these labels come from the atmega2560 datasheet\n$101 constant DDRH\n$102 constant PORTH\n$a0 constant TCCR4A\n$a1 constant TCCR4B\n$a8 constant OCR4A\n$2c constant PINE\n$2d constant DDRE\n$2e constant PORTE\n$6a constant EICRB\n$3d constant EIMSK\n\n: ext4.irq ( -- ) Count @ 1+ Count ! ;i \\ the frequency counter\n\n: logicprobe-init ( -- )\n 1249 Compare ! \\ 100 hz\n %0000.1000 DDRH mset \\ h3 output\n %0100.0000 TCCR4A c! \\ toggle d6, ph3 on compare match\
(3808,'2023-03-08','Funkwhale A social platform to enjoy and share music',3650,'Ken interviews Ciarán Ainsworth about Funkwhale that lets you listen and share music and audio','<p>Funkwhale is a community-driven project that lets you listen and\r\nshare music and audio within a decentralized, open network</p>\r\n<ul>\r\n<li><a href=\"https://funkwhale.audio/\">https://funkwhale.audio/</a></li>\r\n<li><a\r\nhref=\"https://funkwhale.audio/en_US/faqs\">https://funkwhale.audio/en_US/faqs</a></li>\r\n<li><a\r\nhref=\"https://funkwhale.audio/en_US/apps/\">https://funkwhale.audio/en_US/apps/</a></li>\r\n<li><a\r\nhref=\"https://en.wikipedia.org/wiki/Grooveshark\">https://en.wikipedia.org/wiki/Grooveshark</a></li>\r\n<li><a href=\"https://vuejs.org/\">https://vuejs.org/</a></li>\r\n<li><a href=\"https://musicbrainz.org/\">https://musicbrainz.org/</a></li>\r\n<li><a\r\nhref=\"https://picard.musicbrainz.org/\">https://picard.musicbrainz.org/</a></li>\r\n<li><a\r\nhref=\"https://www.subsonic.org/pages/index.jsp\">https://www.subsonic.org/pages/index.jsp</a></li>\r\n<li><a href=\"https://open.audio/\">https://open.audio/</a></li>\r\n<li><a\r\nhref=\"https://www.castopod.com/en\">https://www.castopod.com/en</a></li>\r\n<li><a href=\"https://tanukitunes.com\">https://tanukitunes.com</a></li>\r\n<li><a href=\"https://castopod.org/\">https://castopod.org/</a></li>\r\n<li><a\r\nhref=\"https://fosstodon.org/@funkwhale\">https://fosstodon.org/@funkwhale</a></li>\r\n<li><a\r\nhref=\"https://blog.funkwhale.audio\">https://blog.funkwhale.audio</a></li>\r\n<li><a href=\"https://dev.funkwhale.audio/funkwhale/funkwhale\">https://dev.funkwhale.audio/funkwhale/funkwhale</a>\r\n</ul>\r\n',30,0,0,'CC-BY-SA','funkwhale,Grooveshark,iTunes,vue,musicbrainz,picard,subsonic,castopod',0,0,1),
(3809,'2023-03-09','The Abominable Post Apocalyptic Podcast Player',1194,'Build a Three Dollar MP3 player in One Hour','<p>Notes: Forgot to mention that I hot glued the top lid (original lid\nfor the \'speaker box\'), on top of the boards. I had used the device with\nthe top uncovered for a month because I hoped I would find a better\nchoice but after getting tired of the wires detaching and worrying about\nthe sdcard slot getting wrecked I decided to commit to glueing the lid\non.</p>\n<p>The boards are very robust, I dropped them in the snow a few times.\nThey would stop working but after drying off would function.</p>\n<p>I didn\'t find the datasheet with the resistance values for other\nvalues until after I glued the lid so will have to open it up again or\nget into one of the switch lines and do resistor combinations... now\nthat I know more I think I should be able to control the mp3 player with\none analog output pin from the arduino for all the functions, since it\nseems the pin 8 that all the switch resistors lead to detects voltage\nlevels from the voltage divider created when one of the switches goes to\nground.</p>\n<p>The robot is using 4 lines right now for mp3 control. Would be cool\nif I could free up 3 more but I don\'t remember if any of them are\noccupying an analogue slot.</p>\n<p>No power button! None needed. Pause and unpause via momentary switch.\nThe charger board can charge from micro usb or usb-c and will protect\nyour 18650 cell from running flat and damaging itself.</p>\n<p>Check out my robots: <a\nhref=\"https://bitchute.com/channel/mechatroniac\"\nclass=\"uri\">https://bitchute.com/channel/mechatroniac</a></p>\n<p>Post Apocalyptic Robotics Database Entry:<br />\nHH000000000<br />\nH Hybrid: Denotes some prepurchased or hard to find components<br />\nH Human use: For use by biological humans</p>\n<p>Tools and supplies</p>\n<ul>\n<li>multimeter - not strictly required but highly recommended</li>\n<li>Soldering iron</li>\n<li>solder(thinner solder wire works better for electronics)</li>\n<li>wire stripper</li>\n<li>hot glue gun</li>\n<li>electric or duct tape</li>\n<li>side cutters/cutting pliers/aircraft snips</li>\n</ul>\n<p>Buy:</p>\n<ul>\n<li><p>1s 18650 charger board<br />\n<a href=\"https://www.aliexpress.us/item/2251832744326141.html\"\nclass=\"uri\">https://www.aliexpress.us/item/2251832744326141.html</a></p></li>\n<li><p>GPD2846A TF Card MP3 Decoder Board 2W Amplifier<br />\n<a href=\"https://www.aliexpress.com/item/4000188516180.html\"\nclass=\"uri\">https://www.aliexpress.com/item/4000188516180.html</a><br />\n<a href=\"https://www.aliexpress.com/item/32968306923.html\"\nclass=\"uri\">https://www.aliexpress.com/item/32968306923.html</a></p></li>\n</ul>\n<p>Find or Buy:</p>\n<ul>\n<li><p>short lengths of wire</p></li>\n<li><p>4 ohm speaker (can be found in old tvs)</p></li>\n<li><p>momentary switches(3) - can be found in vcrs, tvs, dvd\nplayers...</p></li>\n<li><p>18650 cell</p></li>\n<li><p>3.5g weed jar or similar + lid</p></li>\n<li><p>larger lid</p></li>\n</ul>\n<p>(optional)<br />\nYou should consider getting an arduino or a kit</p>\n<ul>\n<li><p>Keyestudio Basic Starter Kit V2.0 With UNO R3 Board Or Mega 2560\nR3 Board<br />\n<a href=\"https://www.aliexpress.com/item/1005004961819902.html\"\nclass=\"uri\">https://www.aliexpress.com/item/1005004961819902.html</a></p></li>\n<li><p>GPD2846A datasheet<br />\n<a\nhref=\"https://pdf1.alldatasheet.com/datasheet-pdf/view/1132627/ETC2/GPD2846A.html\"\nclass=\"uri\">https://pdf1.alldatasheet.com/datasheet-pdf/view/1132627/ETC2/GPD2846A.html</a><br />\n<a\nhref=\"https://datasheetspdf.com/pdf-file/949393/Generalplus/GPD2846/1\"\nclass=\"uri\">https://datasheetspdf.com/pdf-file/949393/Generalplus/GPD2846/1</a></p></li>\n</ul>\n<p><em>Picture 1 - shows the slit in the lid where the sdcard resides. Sdcard and slot are protected from being bumped by the strategically placed, glued lid</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3809/IMG_20230221_121827127.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3809/IMG_20230221
(3813,'2023-03-15','The postmarketOS Podcast',1893,'Ken welcomes a new podcast to the Free Culture Podcast family','<h1 id=\"postmarketos-podcast\">postmarketOS Podcast</h1>\r\n<ul>\r\n<li>Website: <a href=\"https://cast.postmarketos.org/\"\r\nclass=\"uri\">https://cast.postmarketos.org/</a></li>\r\n<li>Feed: <a href=\"https://cast.postmarketos.org/feed.rss\"\r\nclass=\"uri\">https://cast.postmarketos.org/feed.rss</a></li>\r\n<li>Copyright: Creative Commons Attribution-ShareAlike 4.0 International\r\n(CC BY-SA 4.0) License</li>\r\n<li><a href=\"https://cast.postmarketos.org/episode/28-FOSDEM-2023-special/\">https://cast.postmarketos.org/episode/28-FOSDEM-2023-special/</a></li>\r\n</ul>\r\n\r\n<hr />\r\n<h1>#28 FOSDEM 2023 Special</h1>\r\n\r\n<p>Between the Saturday closing of FOSDEM 2023 and going to a restaurant, we\r\nmanaged to squeeze around a table outside the cafeteria to record the very\r\nfirst ever in-person postmarketOS podcast episode! Fresh in the moment we share\r\nour experiences from the FOSS on mobile devroom, meeting great people at the\r\nLinux on Mobile stand (and everywhere else at FOSDEM/in Brussels) and random\r\nother cool things that were going down.</p>\r\n<p>Featuring @spaetz (sampled in the intro), @ollieparanoid, @linmob, @craftyguy,\r\n@MartijnBraam, @calebccff, @PureTryOut, @z3ntu (in order of appearance).</p>\r\n<p>Photos:</p>\r\n<ul>\r\n<li>@calebccff: <a href=\"https://fosstodon.org/@calebccff/109808038695004886\">\"recorded the first in person @postmarketOS podcast episode LIVE from #FOSDEM !\"</a></li>\r\n<li>@craftyguy: <a href=\"https://freeradical.zone/@craftyguy/109807524847524784\">\"#postmarketOS core team... Assemble!\"</a></li>\r\n<li>@awai: <a href=\"https://fosstodon.org/@awai/109812598426346120\">\"The beauty and diversity of the #LinuxOnMobile bazaar!\"</a></li>\r\n<li>@z3ntu: <a href=\"https://fosstodon.org/@z3ntu/109812602670785848\">\"The Linux on Mobile stand at #FOSDEM is pretty packed!\"</a></li>\r\n<li>@linmob: <a href=\"https://fosstodon.org/@linmob/109814654331788517\">\"#FOSDEM was really awesome, it only went by too quickly!\"</a></li>\r\n<li>@mntmn: <a href=\"https://mastodon.social/@mntmn/109808024287105873\">\"this was ~intense~! thanks to everyone who was interested in MNT Pocket Reform\"</a></li>\r\n</ul>\r\n<p>Video recordings of the talks:</p>\r\n<ul>\r\n<li><a href=\"https://spacepub.space/w/4caM2SQS2we81hyRuPrFPY\">Where do we go from here? (Audio fixup)</a><ul>\r\n<li>Matrix room: <a href=\"https://matrix.to/#/#fossmo-wg:matrix.org\">#fossmo-wg:matrix.org</a></li>\r\n</ul>\r\n</li>\r\n<li><a href=\"https://fosdem.org/2023/schedule/track/foss_on_mobile_devices/\">FOSS on mobile devices devroom</a> (as of writing, most talks have already been uploaded)</li>\r\n</ul>\r\n<p>PinePhone and Lima / Mesa:</p>\r\n<p>We\'re aware that\r\n<a href=\"https://gitlab.freedesktop.org/mesa/mesa/-/issues/8198\">mesa#8198</a>\r\nis still causing problems for people on the PinePhone. Big thanks to @enues\r\nfrom mesa who was talking to us at the stand and is now looking into it! We\r\nalso have issue\r\n<a href=\"https://gitlab.com/postmarketOS/pmaports/-/issues/805\">pmaports#805</a> about\r\nscreen freezes. If you are affected by this and would like to help out, firing\r\nup a profiler and making/contributing to detailed, useful bugreports upstream\r\nat mesa is appreciated.</p>\r\n<p>@spaetz from Mobian did a great job at moderating the devroom! (Correction:\r\nOllie said from Maemo instead of Mobian in the recording.)</p>\r\n<p><small>Editing by: @ollieparanoid,\r\nMusic by: <a href=\"http://www.thepassionhifi.com\">The Passion HiFi</a></small>\r\n<hr />\r\n',30,75,1,'CC-BY-SA','postmarketOS,Free Culture Podcast,FOSDEM',0,0,1),
(3811,'2023-03-13','mkfifo and named pipes',678,'Have you ever named a pipe? If not, this is the episode you\'ve been waiting for.','<p>A named pipe is like a UNIX pipe, except it takes the form of a file.</p>\n\n<pre><code>\n$ mkfifo mypipe\n$ echo \"Hacker Public Radio\" &#62; mypipe &#38;\n$ cat mypipe\nHacker Public Radio\n</code></pre>\n\n',78,42,0,'CC-BY-SA','pipe, fifo, mkfifo, Linux, shell',0,0,1),
(3812,'2023-03-14','PeePaw\'s computer does nothing',1527,'a z80 nop test','<p>peepaws computer does nothing</p>\n<ol type=\"1\">\n<li>who\'s peepaw, whats the goal\n<ul>\n<li>to build and understand the inner workings of an 8 bit computer and\nmaybe one day pass it on to a grand kid</li>\n</ul></li>\n<li>this episode -nop test\n<ul>\n<li>do a nop test, that is get the z80 up and running executing the nop\ninstruction</li>\n<li>using the facilities of an arduino mega board running flash forth to\ndo that, talk about pictures</li>\n<li>why? flash forth is interactive, without being such a big\napplication itself. Happily runs on an atmega328</li>\n<li>why the mega, oodles and oodles of io, so emulating hardware should\nbe a snap</li>\n<li>use the microcontroller board to provide 5 volts, clock signal and\ndata to get the z80 up and running</li>\n<li>use the logic probe to see if there is activity on the address\nbus</li>\n</ul></li>\n<li>wiring up\n<ul>\n<li>hot glued solderless breadboard on to an arduino mega protoshield,\nwhite wire is the logicprobe input</li>\n<li>power and ground first</li>\n<li>clock, blue</li>\n<li>control lines int, nmi, wait busrq and reset</li>\n<li>orange wires data bus</li>\n<li>address lines go around the chip clockwise from the clock signal\n(blue wire) we\'ll be probing A0, next to the ground line</li>\n</ul></li>\n</ol>\n<p><em>1.logicprobe.jpg</em><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3812/1.logicprobe.jpg\"\nalt=\"1.logicprobe.jpg\" /></p>\n<p><em>2.power.jpg</em><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3812/2.power.jpg\"\nalt=\"2.power.jpg\" /></p>\n<p><em>3.clock.jpg</em><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3812/3.clock.jpg\"\nalt=\"3.clock.jpg\" /></p>\n<p><em>4.control.signals.jpg</em><br />\n<img\nsrc=\"https://hackerpublicradio.org/eps/hpr3812/4.control.signals.jpg\"\nalt=\"4.control.signals.jpg\" /></p>\n<p><em>5.data.jpg</em><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3812/5.data.jpg\"\nalt=\"5.data.jpg\" /></p>\n<p><em>6.ready.to.probe.jpg</em><br />\n<img\nsrc=\"https://hackerpublicradio.org/eps/hpr3812/6.ready.to.probe.jpg\"\nalt=\"6.ready.to.probe.jpg\" /></p>\n<p><em>z80-pinout.jpg</em><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3812/z80-pinout.jpg\"\nalt=\"z80-pinout.jpg\" /></p>\n<p><em>2560-pinout.jpg</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3812/2560-pinout.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3812/2560-pinout_thumbnail.jpg\"\nalt=\"2560-pinout.jpg\" /></a> <br/><small><small><em>Click the thumbnail\nto see the full-sized image</em></small></small></p>\n<ol start=\"6\" type=\"1\">\n<li>fixing some words, refactoring some words, defining new words\n<ul>\n<li>fixed the data processing word to us the input on pin e4 (digital 2)\nnot the output on pin h6 (digital 9)</li>\n<li>changed freq= some value to simply pulse, not interested in the\nspecific frequency</li>\n<li>split clock and logic probe init words</li>\n<li>added some words to control the reset line reset and run</li>\n<li>added a word step that allows for single clock pulses</li>\n</ul></li>\n<li>the test, mega board plugged into laptop, seral terminal running\n<ul>\n<li>spool up the logic probe</li>\n<li>spool up the microcontroller board setting up a port to provide data\non the z80 data bus (rudimentary rom)</li>\n<li>add 5 volts</li>\n<li>initialize and start the clock</li>\n<li>probe the clock line</li>\n<li>probe a0 line</li>\n</ul></li>\n<li>a little more to see what else we can discern\n<ul>\n<li>single step to reset</li>\n<li>probe m1</li>\n<li>single step to reset</li>\n<li>add halt instruction</li>\n<li>probe halt line</li>\n</ul></li>\n<li>this is output captured from the tests run on the show. lines that\nbegin with a back slash are comments used as narration\n<code>ok&lt;#,ram&gt;</code> is the forth interpreter reporting it has\nsuccessfully processed the proceeding word(s), including comments pulse,\nhigh and low are output from the logicprobe, all other words are defined\nin the source
(3815,'2023-03-17','The UNIVAC Uniscope - The first terminal with a video monitor',2345,'Hear about the Uniscope 300 mainframe terminal from 1964.','<p>In the early days of computing, the computing power was kept in centralized large mainframes and users would connect to them via so called \"dumb\" terminals. These often provided their output through a printer and continuous feed of paper. However in 1964 UNIVAC introduced the Uniscope 300, which was one of the first terminals to provide a video monitor for display. With the introduction of this system came the introduction of several concepts that we take for granted today and they are described during the reading of this brochure.</p>\n\n<p>The brochure was made available through the Computer History Museum at <a href=\"https://www.computerhistory.org/collections/catalog/102646317\">https://www.computerhistory.org/collections/catalog/102646317</a></p>\n\n<p>As I mention in the episode, $15,000 USD in 1964 is worth considerably more today, according to an online inflation calculator it is now worth approximately $144,000 today. So even if that was for 48 terminals as it seems to mention in the hand written note, that might equate to about $3000 per terminal in 2023 dollars.</p>\n\n<p>Here are some related links below:\n\n<ul>\n<li>UNIVAC - <a href=\"https://en.wikipedia.org/wiki/UNIVAC\">https://en.wikipedia.org/wiki/UNIVAC</a>\n\n<li>The Uniscope line - <a href=\"https://en.wikipedia.org/wiki/Uniscope\">https://en.wikipedia.org/wiki/Uniscope</a>\n\n<li>Uniscope terminal multiplexer service manual - <a href=\"https://www.computerhistory.org/collections/catalog/102784700\">https://www.computerhistory.org/collections/catalog/102784700</a>\n</ul>\n\n',194,0,0,'CC-BY-SA','computer history,terminals',0,0,1),
(3816,'2023-03-20','Post Apocalyptic 4s5 Battery Pack ',479,'Tough Battery Design Worthy of the Post Apocalyptic Robotics Database ','<p>HR000000000<br />\nH Hybrid: Denotes some prepurchased or hard to find components<br />\nR Robotics: suitable for robots</p>\n<p>buy: 4s 40A BMS<br />\n<a href=\"https://www.aliexpress.com/item/4000025857655.html\"\nclass=\"uri\">https://www.aliexpress.com/item/4000025857655.html</a>\n(can\'t specifically vouch for this vendor, just chose the first that\ncame up)<br />\nmake sure to choose 4s and balance</p>\n<ol type=\"1\">\n<li><p>find or buy materials: duct or gorilla tape, trashed computer dvd\nor cd drive, 20 18650 cells, molex connectors(you can also use barrel\njacks or whatever you want to transfer power), wire and maybe \'tab wire\'\n<a href=\"https://nl.aliexpress.com/item/32650006768.html\"\nclass=\"uri\">https://nl.aliexpress.com/item/32650006768.html</a></p></li>\n<li><p>solder everything together as per schematic and pictures (there\nis theoretically a danger in soldering cells, but I have never had a\nproblem. Have a pair of pliers and a nearby window handy to throw them\nout of if anything goes wrong)</p></li>\n<li><p>wrap in cardboard and tape as per pictures</p></li>\n<li><p>add the cd/dvd drive lids(if you taped well you won\'t short\nanything and burn your house down</p></li>\n<li><p>tape dvd lids to battery</p></li>\n</ol>\n<p>Getting into the battery for maintenance just requires a utility\nknife.</p>\n<p>Watt Hour does a great job describing the 3s BMS, which is very\nsimilar to the 4s used in my case: <a\nhref=\"https://yewtu.be/watch?v=QNENyu97w2A\"\nclass=\"uri\">https://yewtu.be/watch?v=QNENyu97w2A</a></p>\n<p><em>Battery Schematic</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3816/0_4s5batteryschematic.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3816/0_4s5batteryschematic_thumbnail.jpg\"\nalt=\"Battery Schematic\" /></a> <br/><small><small><em>Click the\nthumbnail to see the full-sized image</em></small></small></p>\n<p><em>Cut through tape to reveal battery</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3816/1_cutthroughtapetorevealbattery.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3816/1_cutthroughtapetorevealbattery_thumbnail.jpg\"\nalt=\"Cut through tape to reveal battery\" /></a>\n<br/><small><small><em>Click the thumbnail to see the full-sized\nimage</em></small></small></p>\n<p><em>Flat metal holds cells together</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3816/2_flatmetalforSolarCellsHoldscellstogether.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3816/2_flatmetalforSolarCellsHoldscellstogether_thumbnail.jpg\"\nalt=\"Flat metal holds cells together\" /></a>\n<br/><small><small><em>Click the thumbnail to see the full-sized\nimage</em></small></small></p>\n<p><em>Detail of 4.2v</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3816/3_detailof4.2v.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3816/3_detailof4.2v_thumbnail.2v.jpg\"\nalt=\"Detail of 4.2v\" /></a> <br/><small><small><em>Click the thumbnail\nto see the full-sized image</em></small></small></p>\n<p><em>Only have to desolder one side</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3816/4_onlyhavetodesolderoneside.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3816/4_onlyhavetodesolderoneside_thumbnail.jpg\"\nalt=\"Only have to desolder one side\" /></a> <br/><small><small><em>Click\nthe thumbnail to see the full-sized image</em></small></small></p>\n<p><em>New cells in</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3816/5_newcellsin.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3816/5_newcellsin_thumbnail.jpg\"\nalt=\"New cells in\" /></a> <br/><small><small><em>Click the thumbnail to\nsee the full-sized image</em></small></small></p>\n<p><em>Make sure there is thick tape covering battery</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3816/5.5_makesure_there_is_thick_tapecoveringbattery.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr381
(3817,'2023-03-21','The Oh No! News.',700,'Oh No! News, is Good News.','<h2 id=\"the-oh-no-news\">The <em>Oh No!</em> news.</h2>\n<h2 id=\"oh-no-news-is-good-news\"><em>Oh No!</em> News is Good News.</h2>\n<hr />\n<ul>\n<li><a\nhref=\"https://firewalltimes.com/recent-data-breaches/\">firewalltimes:</a>\nRecent Data Breaches &#x2013; 2023.\n<ul>\n<li><a\nhref=\"https://www.sec.gov/ix?doc=/Archives/edgar/data/0001283699/000119312523010949/d641142d8k.htm\">sec:</a>\nOn January 5, 2023, - T-Mobile Discloses Data Breach Affecting 37\nMillion Customers.</li>\n<li>On January 5, 2023, T-Mobile US, Inc. identified that a bad actor\nwas obtaining data through a single Application Programming Interface\n(&#x201C;API&#x201D;) without authorization.</li>\n</ul></li>\n<li><a\nhref=\"https://www.bleepingcomputer.com/news/security/truthfinder-instant-checkmate-confirm-data-breach-affecting-20m-customers/\">bleepingcomputer:</a>\nTruthFinder, Instant Checkmate confirm data breach affecting 20M\ncustomers.\n<ul>\n<li><a\nhref=\"https://www.instantcheckmate.com/security-incident-alert/\">instantcheckmate:</a>\n2019 Account List Data Security Incident.</li>\n<li><a\nhref=\"https://www.truthfinder.com/security-incident-alert/\">truthfinder:</a>\n2019 Account List Data Security Incident.</li>\n<li>\"We learned recently that a list, including name, email, telephone\nnumber in some instances, as well as securely encrypted passwords and\nexpired and inactive password reset tokens, of Instant Checkmate\nsubscribers was being discussed and made available in an online forum.\nWe have confirmed that the list was created several years ago and\nappears to include all customer accounts created between 2011 and 2019.\nThe published list originated inside our company.\"</li>\n</ul></li>\n<li><a href=\"https://www.sec.gov/news/press-release/2023-34\">sec:</a>\nSEC Charges NBA Hall of Famer Paul Pierce for Unlawfully Touting and\nMaking Misleading Statements about Crypto Security.\n<ul>\n<li>The Securities and Exchange Commission today announced charges\nagainst former NBA player Paul Pierce for touting EMAX tokens, crypto\nasset securities offered and sold by EthereumMax, on social media\nwithout disclosing the payment he received for the promotion and for\nmaking false and misleading promotional statements about the same crypto\nasset. Pierce agreed to settle the charges and pay $1.409 million in\npenalties, disgorgement, and interest.</li>\n</ul></li>\n<li><a href=\"https://www.sec.gov/news/press-release/2023-32\">sec:</a>\nSEC Charges Terraform and CEO Do Kwon with Defrauding Investors in\nCrypto Schemes.\n<ul>\n<li>The Securities and Exchange Commission today charged Singapore-based\nTerraform Labs PTE Ltd and Do Hyeong Kwon with orchestrating a\nmulti-billion dollar crypto asset securities fraud involving an\nalgorithmic stablecoin and other crypto asset securities.</li>\n</ul></li>\n<li><a\nhref=\"https://discourse.ubuntu.com/t/ubuntu-flavor-packaging-defaults/34061?u=d0od\">discourse.ubuntu:</a>\nUbuntu Flavor Packaging Defaults.\n<ul>\n<li>To maintain this focus while also providing user choice, Ubuntu and\nits flavors consider debs and snaps the default experience. Users have\nthe freedom of choice to get their software from other sources,\nincluding Flatpak. A way to install these alternatives is, and will\ncontinue to be, available for installation from the Ubuntu archive with\na simple command.</li>\n</ul></li>\n</ul>\n<hr />\n<ul>\n<li>References (APA format).\n<ul>\n<li><a\nhref=\"https://firewalltimes.com/author/michael-x-heiligenstein/\">Heiligenstein,\nM. X.</a> (2023, January 27). Recent Data Breaches - 2023.\nFirewalltimes. <a\nhref=\"https://firewalltimes.com/recent-data-breaches/\">https://firewalltimes.com/recent-data-breaches/</a></li>\n<li>U.S. Securities and Exchange Commission (2023, January 19). Form 8-K\n[T-Moble data breach]. SEC. <a\nhref=\"https://www.sec.gov/ix?doc=/Archives/edgar/data/0001283699/000119312523010949/d641142d8k.htm\">https://www.sec.gov/ix?doc=/Archives/edgar/data/0001283699/000119312523010949/d641142d8k.htm
(3818,'2023-03-22','nop test redux',571,'A better nop test','<h2 id=\"nop-redux\">nop redux</h2>\n<p>This is the updated code</p>\n<pre><code>-logicprobe\nmarker -logicprobe\n\nvariable Compare\nvariable Count\n\n$23 constant PINB\n$24 constant DDRB\n$25 constant PORTB\n\n$100 constant PINH\n$101 constant DDRH\n$102 constant PORTH\n\n$a0 constant TCCR4A\n$a1 constant TCCR4B\n$a8 constant OCR4A\n\n$b0 constant TCCR2A\n$b1 constant TCCR2B\n$b3 constant OCR2A\n\n$2c constant PINE\n$2d constant DDRE\n$2e constant PORTE\n\n$6a constant EICRB\n$3d constant EIMSK\n\n: ext4.irq ( -- ) Count @ 1+ Count ! ;i\n\n: logicprobe.init ( -- )\n \\ tone generatoed through timer2\n %0001.0000 DDRB mset \\ d10, pb4\n %0100.0010 TCCR2A c! \\ use OC2A, ctc mode\n $ff OCR2A c! \\ compare falue\n\n %0 DDRE c! \\ e input\n %0000.0010 EICRB mset \\ falling edge\n [&#39;] ext4.irq #6 int! \\ attach interrupt\n;\n\n\\ helper words\n: open.gate ( -- ) 0 Count ! %0001.0000 EIMSK mset ;\n: close.gate ( -- ) %0001.0000 EIMSK mclr ;\n\n\\ tone stuff\n: high.tone ( -- ) %0000.0100 TCCR2B c! 750 ms 0 TCCR2B c! ;\n: low.tone ( -- ) %0000.0110 TCCR2B c! 750 ms 0 TCCR2B c! ;\n: alt.tone ( -- )\n 3 for\n %0000.0100 TCCR2B c! 150 ms 0 TCCR2B c!\n 150 ms\n %0000.0110 TCCR2B c! 150 ms 0 TCCR2B c!\n 150 ms\n next\n;\n\n: process.data ( -- )\n Count @ 1-\n Count !\n Count @ 0 &gt; if\n \\ cr .&quot; freq=&quot; 10 * .\n cr .&quot; pulse&quot;\n alt.tone \\ sound output\n else\n %0001.0000 PINE mtst if\n cr .&quot; high&quot;\n high.tone \\ sound output\n else\n cr .&quot; low&quot;\n low.tone \\ sound output\n then then\n;\n\n: wait 100 ms ;\n\n: sample ( -- ) open.gate wait close.gate process.data ;\n\n\\ words called at the forth command line to do the test</code></pre>\n<ol type=\"1\">\n<li>demo tones</li>\n</ol>\n<pre><code>low.tone\nhigh.tone\nalt.tone</code></pre>\n<ol start=\"2\" type=\"1\">\n<li>the test</li>\n</ol>\n<pre><code>sample \\ a stop clocked\nstart.clock\nsample</code></pre>\n<ol start=\"3\" type=\"1\">\n<li>a0 line</li>\n</ol>\n<pre><code>sample</code></pre>\n<ol start=\"4\" type=\"1\">\n<li>stop.clock and sample a0</li>\n</ol>\n<pre><code>stop.clock\nsample</code></pre>\n<ol start=\"5\" type=\"1\">\n<li>reset the z80 and single step probing the m1 signal</li>\n</ol>\n<pre><code>reset\nstep\nstep\nstep\nstep\nstep\nstep\nrun\nstep sample\nstep sample\nstep sample\nstep sample\nsample</code></pre>\n<p>if its jammed hit it, if it breaks it needed replacing anyway</p>\n',326,0,0,'CC-BY-SA','z80, forth, retrocomputer',0,0,1),
(3819,'2023-03-23','Remapping Mouse Buttons with XBindKeys on Linux',600,'I explain how I assigned different functions to the spare buttons on my trackball mice.','<h2>Remapping Mouse Buttons with XBindKeys on Linux</h2>\n\n<p>After a really long time of not bothering to figure out how to do this, I finally did some research and found out how to remap the extra buttons on my Kensington Expert mouse and my Logitech marble trackball mouse in a Linux environment. The tools it needed were <code>xvkbd</code>, <code>xdotool</code>, and <code>xbindkeys</code>. I already had the first two installed, but had never used <code>xbindkeys</code> before. I also used <code>xev</code> to identify the button numbers and key numbers.</p>\n\n<p>The Kensington Expert Mouse is one that I\'ve had for about 15 years, and it was fairly expensive when I bought it, something like $75 or $80. It has four large buttons with a large trackball in the middle and a scroll wheel going around the track ball. I bought it at a time when I was doing a lot of graphic work that required clicking and dragging and double-clicking and stuff like that. If you\'re using it in a Mac or Windows environment, there is a special configuration tool that you can use to set it up just how you want. I had always configured it so that the upper left and upper right buttons were used for double-clicking and click dragging. This helped reduce a lot of strain on my hands. I have never gotten this to work on Linux, though, until today.</p>\n\n<p>If you want to do this yourself, the first thing to do is make sure you have these packages installed: <code>xvkbd</code>, <code>xdotool</code>, and <code>xbindkeys</code>.</p>\n\nThen create a configuration file in your home directory:\n\n<pre>\n~/.xbindkeysrc\n</pre>\n\nIn order to map the upper left button to \"double click,\" and the upper right button to \"click and drag,\" I added these lines to the configuration file:\n\n<pre>\n# Double-click assigned to button 2 (upper left)\n\n\"xdotool sleep 0.2 click 1 ; xdotool click 1\"\n b:2\n\n# Click and Drag assigned to button 8 (upper right)\n\n\"xdotool sleep 0.2 mousedown 1\"\n b:8\n</pre>\n\nTo test the settings, simply kill the <code>xbindkeys</code> process and restart it by typing <code>xbindkeys</code>:\n\n<pre>\nuser@hostname:~$ pkill -f xbindkeys\nuser@hostname:~$ xbindkeys\n</pre>\n\n\n<p>On my desktop computer I have a Logitech marble trackball mouse, and it has two small keys that are assigned to back and forward by default. This can be handy for navigating file managers and web pages, but I wanted them to be assigned to \"page up\" and \"page down\" (to make up for the lack of a scroll wheel on the mouse). Here is the configuration file for that machine:</p>\n\n<pre>\n\"xvkbd -text \"\\[Page_Down]\"\"\n b:8\n\n\"xvkbd -text \"\\[Page_Up]\"\"\n b:9\n</pre>\n\n<p>I suppose I could have used <code>xdotool</code> for this configuration file as well, but for reasons I can\'t remember now, I tried <code>xvkbd</code> first and it worked, so I did not experiment further. I used <code>xdotool</code> for the Kensington because <code>xvkbd</code> did not have a way to perform virtual mouse clicks.</p>\n\n\n<h2>Links</h2>\n\n<ul>\n <li><a href=\"https://manpages.ubuntu.com/manpages/jammy/en/man1/xev.1.html\">xev</a></li>\n <li><a href=\"https://www.nongnu.org/xbindkeys/\">XBindKeys</a></li>\n <li><a href=\"https://manpages.ubuntu.com/manpages/jammy/en/man1/xvkbd.1.html\">xvkbd</a></li>\n <li><a href=\"https://manpages.ubuntu.com/manpages/trusty/man1/xdotool.1.html\">xdotool</a></li>\n</ul>\n',238,0,0,'CC-BY-SA','Linux configuration, tips and tricks, mouse configuration, keymapping',0,0,1),
(3821,'2023-03-27','The Oh No! News.',797,'Oh No! News, is Good News.','<h2 id=\"the-oh-no-news\">The <em>Oh No!</em> news.</h2>\n<h2 id=\"oh-no-news-is-good-news\"><em>Oh No!</em> News, is Good\nNews.</h2>\n<hr />\n<ul>\n<li><strong>Threat analysis; your attack surface.</strong>\n<ul>\n<li><strong>TAGS:</strong> Malware, Phishing, Security Breach</li>\n</ul></li>\n<li><strong>GoDaddy, a Web Hosting Provider Hit Multiple Times by the\nSame Group.</strong>\n<ul>\n<li>This month, GoDaddy, a leading web hosting provider, revealed that\nit had experienced a major security breach over several years, resulting\nin the theft of company source code, customer and employee login\ncredentials, and the introduction of malware onto customer\nwebsites.</li>\n<li>Major Security Breach: Spanning several years.\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Data_breach\">Data Breach:</a>\nEmployee login credentials &amp; customer data.</li>\n<li><a\nhref=\"https://d18rn0p25nwr6d.cloudfront.net/CIK-0001609711/e4736ddb-b4c7-485b-a8fc-1827691692c9.pdf\">10-k\nform</a> Filled with the U.S. Securities and Exchange Commission.</li>\n<li><a\nhref=\"https://www.sec.gov/Archives/edgar/data/1609711/000160971121000122/gddyblogpostnov222021.htm\">sec:</a>\nGoDaddy Announces Security Incident Affecting Managed WordPress\nService.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Malware\">Malware:</a>\nCompromising customer websites managed by GoDaddy.</li>\n<li>Phishing Attacks: Exposed customer data including login credentials,\nemail addresses, and SSL private keys.</li>\n</ul></li>\n</ul></li>\n<li><strong>Chick-Fil-A Customers are Victims of a Data Breach.</strong>\n<ul>\n<li>Fast-food chain Chick-fil-A has issued a warning to customers\nregarding a recent data security breach. The incident occurred between\nDec. 18, 2022 and Feb. 12, 2023, during which unauthorized parties\ngained access to customer information, according to a statement posted\non the California Attorney General&#x2019;s website on Tuesday.\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Data_breach\">Data Breach:</a>\nmembership numbers, mobile pay numbers, QR codes, last 4 digits of\ncredit/debit card numbers, credits on Chick-fil-A accounts, birthdays,\nphone numbers, and addresses.</li>\n</ul></li>\n</ul></li>\n<li><strong>New phishing campaign uses fake ChatGPT platform to scam\neager investors.</strong>\n<ul>\n<li>Bitdefender Antispam Labs confirmed that these scams initiate with\nan email containing a link that directs users to a copycat version of\nChatGPT. The goal of this copycat version is to convince users that they\ncan earn as much as $10,000 per month on the duplicate ChatGPT\nplatform.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Phishing\">Phishing:</a> Email\nbased scam.</li>\n</ul></li>\n<li><strong>LassPass Security Incident Update and Recommended\nActions.</strong>\n<ul>\n<li>Major Security Breach: Spanning multiple years.\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Data_breach\">Data Breach:</a>\nEmployee login credentials, source code &amp; other intellectual\nproperty, customer data.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Malware\">Malware:</a>\nAttackers exploited third-party software to compromise company systems\nby delivering a keylogger type malware.</li>\n</ul></li>\n</ul></li>\n</ul>\n<hr />\n<ul>\n<li><strong>InfoSec; the language of security.</strong>\n<ul>\n<li><strong>TAGS:</strong> Information Security, Monitoring</li>\n</ul></li>\n<li><strong>Bitwarden flaw can let hackers steal passwords using\niframes.</strong>\n<ul>\n<li>Bitwarden highlights that the autofill feature is a potential risk\nand even includes a prominent warning in its <a\nhref=\"https://bitwarden.com/help/auto-fill-browser/\">documentation</a>,\nspecifically mentioning the likelihood of compromised sites abusing the\nautofill feature to steal credentials.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Phishing\">Phishing:</a> Sniff\ncredentials from a webpage HTML inline frame.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/HTML_element#
(3822,'2023-03-28','A tale of wonder, angst and woe',526,'Dissecting a COVID watch issued by Hong Kong Department of Health','<p>\r\nIn December of 2022, I traveled to Hong Kong, at some point en-route\r\nor in-country, I contracted covid.</p>\r\n<p>Backing up a step in preparation for\r\nthe trip I was required to have a negative PCR before I could board\r\nthe plane from the US as well as proof of vaccination and at least\r\none booster shot.\r\n</p>\r\n<p><a href=\"https://hdf.chp.gov.hk/dhehd/hdf.jsp?lang=en-us\">HKSAR Department of Health - Health Declaration Form</a>\r\n(<a href=\"https://hdf.chp.gov.hk/dhehd/hdf.jsp?lang=en-us\">https://hdf.chp.gov.hk/dhehd/hdf.jsp?lang=en-us</a>)</p>\r\n<p>Upon arrival, I was required to quarantine for 3 days as well as take a home test (referred to as RAT: Rapid Antigen Test, by the locals) every day for the first 7 days</p>\r\n<p>On the 2nd full day in HK, I was required to take another clinical PCR provided at a health center, free of charge.</p>\r\n\r\n<p>On the third day I received my PCR and RAT tests as Covid Positive.</p>\r\n<p>By law I was now required to quarantine in my hotel until I tested negative on 2 consecutive days. Since my symptoms were very mild, a sniffle and low grade temp, merely 2-3 deg above normal, I could stay in the hotel and was not required to\r\ntransfer to a public health center.</p>\r\n<p>I was also required to register the positive results with a government website. This registration kicked off a series of events, including a visit from a health representative. (he stood in the hall, I was not permitted to leave the room) I was Required to install an app on my phone called &quot;Stay Home Safe\'\' and to wear a wristband that I presume was a GPS and possibly temp/pulse tracking device that connected to my phone by bluetooth. The agent installed the app, and synced the watch to it.\r\n</p>\r\n\r\n<img src=\"/eps/hpr3822/HPR-Covid-watch-disection_html_8baced7f6fbf2309.jpg\" name=\"image1.jpg\" align=\"bottom\" width=\"436\" height=\"327\" border=\"0\"/>\r\n\r\n<p>\r\nThe <a href=\"/eps/hpr3822/\">complete shownotes are available</a> downloaded from <a href=\"http://bookewyrmm.42web.io/covid.html\">http://bookewyrmm.42web.io/covid.html</a>\r\n</p>\r\n',365,0,0,'CC-BY-SA','device discovery, curiosity',0,0,1),
(3823,'2023-03-29','Gitlab Pages for website hosting',1560,'Three examples of using Gitlab\'s CICD to generate a website.','<h2 id=\"how-it-works\">How it works</h2>\n<p><a href=\"https://docs.gitlab.com/ee/user/project/pages/\"\nclass=\"uri\">https://docs.gitlab.com/ee/user/project/pages/</a></p>\n<blockquote>\n<p>GitLab always deploys your website from a specific folder called\npublic in your repository. To deploy your site, GitLab uses its built-in\ntool called GitLab CI/CD to build your site and publish it to the GitLab\nPages server. The sequence of scripts that GitLab CI/CD runs to\naccomplish this task is created from a file named .gitlab-ci.yml, which\nyou can create and modify. A specific job called pages in the\nconfiguration file makes GitLab aware that you\'re deploying a GitLab\nPages website.</p>\n</blockquote>\n<h3 id=\"overview-of-steps\">Overview of Steps</h3>\n<ul>\n<li>The end state has to be a directory named public that contains the\nsite contents</li>\n<li>Optionally, run a build process in a container to create the\ncontents of the <code>public</code> directory</li>\n<li>There has to be a <code>pages</code> declaration in\n.gitlab-ci.yml</li>\n</ul>\n<h2 id=\"example-1\">Example 1</h2>\n<h3 id=\"simple-demo\">simple demo</h3>\n<ul>\n<li>Create the Git repo and site content</li>\n<li>Go to gitlab and create new Gitlab repo</li>\n<li>Clone it to your workstation</li>\n<li>Add public folder with site files</li>\n<li>add .gitlab-ci.yml</li>\n<li>Commit and push</li>\n</ul>\n<pre class=\"bash\"><code>git clone git@gitlab.com:norrist/simple_pages_demo.git\ncd simple_pages_demo/\nmkdir public\necho &quot;Hello World&quot; &gt; public/index.html\ngit add public/\nvim .gitlab-ci.yml\ngit add .gitlab-ci.yml\ngit commit -am &quot;new page&quot;\ngit push</code></pre>\n<h4 id=\"gitlab-ci.yml\">.gitlab-ci.yml</h4>\n<pre class=\"yaml\"><code>pages:\n stage: deploy\n script:\n - echo\n artifacts:\n paths:\n - public</code></pre>\n<h3 id=\"pages-settings\">Pages settings</h3>\n<ul>\n<li>Menu on left, Settings, Pages</li>\n<li>Your pages are served under:</li>\n</ul>\n<h2 id=\"example-2\">Example 2</h2>\n<h3 id=\"docs.norrist.xyz\">docs.norrist.xyz</h3>\n<ul>\n<li>Combine my HPR show notes into a single page</li>\n<li>Custom Domain\n<ul>\n<li>Verified with TXT record</li>\n</ul></li>\n</ul>\n<h4 id=\"gitlab-ci.yml-1\">.gitlab-ci.yml</h4>\n<pre class=\"yml\"><code>image: &quot;debian&quot;\nbefore_script:\n - apt-get update\n - apt-get install -y pandoc\n\nstages:\n- build\npages:\n stage: build\n script:\n - bash build_html.sh\n artifacts:\n paths:\n - public</code></pre>\n<pre class=\"bash\"><code>set -euo pipefail\nIFS=$&#39;\\n\\t&#39;\nmkdir -pv public\nfor MD in $(ls *md)\n do\n echo\n # echo &quot;---&quot;\n # echo\n # echo &quot;#&quot; $MD\n echo\n echo &quot;---&quot;\n echo\n cat $MD\ndone \\\n|pandoc \\\n-H markdown.header \\\n-B body.header \\\n--toc \\\n--toc-depth=1 \\\n-f gfm \\\n-t html \\\n-o public/index.html</code></pre>\n<h2 id=\"example-3\">Example 3</h2>\n<h3 id=\"hpr-static\">HPR static</h3>\n<ul>\n<li>Build the new HPR static site</li>\n</ul>\n<h4 id=\"gitlab-ci.yml-2\">.gitlab-ci.yml</h4>\n<pre class=\"yaml\"><code>services:\n - mariadb\nvariables:\n MYSQL_DATABASE: hpr_hpr\n MYSQL_ROOT_PASSWORD: mysql\n\nconnect:\n stage: .pre\n image: mysql\n script:\n - echo &quot;SELECT &#39;OK&#39;;&quot; | mysql --user=root --password=&quot;$MYSQL_ROOT_PASSWORD&quot; --host=mariadb &quot;$MYSQL_DATABASE&quot;\n\npages:\n image: debian\n before_script:\n - apt update\n - apt -y install libgetopt-complete-perl libmemory-usage-perl libconfig-std-perl libtemplate-perl libtemplate-plugin-dbi-perl libclass-dbi-perl libtie-dbi-perl libdbd-mysql-perl libdate-calc-perl\n - apt -y install curl mariadb-client git\n - curl -o hpr.sql http://hackerpublicradio.org/hpr.sql\n - mysql --user=root --host=mariadb &quot;$MYSQL_DATABASE&quot; --password=&quot;$MYSQL_ROOT_PASSWORD&quot; &lt; hpr.sql\n\n stage: build\n
(4086,'2024-04-01','HPR Community News for March 2024',0,'HPR Volunteers talk about shows released and comments posted in March 2024','',159,47,1,'CC-BY-SA','Community News',0,0,1),
(3825,'2023-03-31','Creating a natural aquarium',2310,'Setting up your first natural, self-sustaining freshwater aquarium','<p>An alternative method to the big box store way of setting up an\naquarium.</p>\n<p>You don\'t need a bunch of equipment, chemicals, or experience to have\na balanced thriving aquarium that not only runs itself after a period of\ntime, but is a healthier environment for your aquatic creatures and will\nbe a great conversation piece.</p>\n<p>Learn how to emulate nature so that everything works together in its\nown ecosystem from the bottom up. Only a little bit of patience is\nneeded.</p>\n',375,0,0,'CC-BY-SA','aquarium,ecology,plantedtank,fish',0,0,1),
(3827,'2023-04-04','Reply to hpr 3798 ',506,'added slackware information','<p>\r\nFrom Wikipedia, the free encyclopedia<br />\r\nLILO (Linux Loader) is a boot loader for Linux and was the default boot loader for most Linux distributions in the years after the popularity of loadlin. Today, many distributions use GRUB as the default boot loader, but LILO and its variant ELILO are still in wide use. Further development of LILO was discontinued in December 2015 along with a request by Joachim Wiedorn for potential developers.<br />\r\nFor EFI-based PC hardware the now orphaned ELILO boot loader was developed,originally by Hewlett-Packard for IA-64 systems, but later also for standard i386 and amd64 hardware with EFI support.<br />\r\nOn any version of Linux running on Intel-based Apple Macintosh hardware, ELILO is one of the available bootloaders.<br />\r\nIt supports network booting using TFTP/DHCP.\r\n</p>\r\n\r\n<ul>\r\n<li><p><a href=\"https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FLILO_%28bootloader%29%23elilo\">https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FLILO_%28bootloader%29%23elilo</a></p></li>\r\n<li><p><a href=\"https://hackerpublicradio.org/eps.php?id=3798\">hpr3798</a></p></li>\r\n<li><p><a href=\"https://slackware.com\">slackware.com</a></p></li>\r\n<li><p><a href=\"https://sourceforge.net/projects/elilo/files/elilo/\" class=\"uri\">https://sourceforge.net/projects/elilo/files/elilo/</a></p></li>\r\n<li><p>elilo.config:</p></li>\r\n</ul>\r\n<pre><code>prompt\r\ndelay=20\r\ntimeout=20\r\ndefault=g\r\n#default=h\r\nchooser=simple\r\nmessage=textmenu-message.msg\r\n\r\nimage=vmlinuz-generic\r\n label=g\r\n initrd=initrd.gz\r\n read-only\r\n append=&quot;root=/dev/nvme0n1p5 resume=/dev/nvme0n1p6&quot;\r\n\r\nimage=vmlinuz-huge\r\n label=h\r\n read-only\r\n append=&quot;root=/dev/nvme0n1p5 resume=/dev/nvme0n1p6&quot;\r\n\r\nimage=dummy\r\n label=w</code></pre>\r\n<p>slackware; reading is not an option</p>\r\n<p><small>Ken: added aditional links and wikipedia summary</small></p>\r\n',326,0,0,'CC-BY-SA','linux distros, slackware',0,0,1),
(3828,'2023-04-05','The Oh No! News.',1109,'Oh No! News, is Good News.','<h2 id=\"the-oh-no-news.\">The <em>Oh No!</em> news.</h2>\n<h2 id=\"oh-no-news-is-good-news.\"><em>Oh No!</em> News is Good\nNews.</h2>\n<hr />\n<h2 id=\"threat-analysis-your-attack-surface.\"><strong>Threat analysis;\nyour attack surface.</strong></h2>\n<ul>\n<li><strong>Article:</strong> <a\nhref=\"https://www.bleepingcomputer.com/news/security/cisa-warns-of-actively-exploited-plex-bug-after-lastpass-breach/\">CISA\nwarns of actively exploited Plex bug after LastPass breach.</a>\n<ul>\n<li><strong>Author:</strong> <a\nhref=\"https://www.bleepingcomputer.com/author/sergiu-gatlan/\"\ntitle=\"Sergiu Gatlan has covered cybersecurity, technology, and other news beats for more than a decade.\">Sergiu\nGatlan</a> (2023, Mar 11).</li>\n<li>Attackers with \"admin access to a Plex Media Server could abuse the\nCamera Upload feature to make the server execute malicious code,\"\naccording to an advisory published by the Plex Security Team in May 2020\nwhen it patched the bug with the release of Plex Media Server\n1.19.3.</li>\n<li>\"This could be done by setting the server data directory to overlap\nwith the content location for a library on which Camera Upload was\nenabled. This issue could not be exploited without first gaining access\nto the server\'s Plex account.\"</li>\n<li><a href=\"https://www.cisa.gov/\">Link to Cybersecurity &amp;\nInfrastructure Security Agency (CISA).</a></li>\n</ul></li>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://forums.plex.tv/t/security-regarding-cve-2020-5741/586819\">Plex\nSecurity, regarding security vulnerability CVE-2020-5741.</a>\n<ul>\n<li><strong>Author:</strong> PlexSecurity, Plex Employee. (2020,\nMay).</li>\n<li>We have recently been made aware of a security vulnerability related\nto Plex Media Server. This issue allowed an attacker with access to the\nserver administrator&#x2019;s Plex account to upload a malicious file via the\nCamera Upload feature and have the media server execute it.</li>\n</ul></li>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://forums.plex.tv/t/plex-remote-code-execution-exploit-used-in-lastpass-breach/832727/11\">Official\nstatement from Plex, concerning vulnerabilities, on LastPass Data\nBreach.</a>\n<ul>\n<li><strong>Author:</strong> PlexInfo, Plex Employee. (2023, Feb\n28).</li>\n<li>\"We have not been contacted by LastPass so we cannot speak to the\nspecifics of their incident. We take security issues very seriously, and\nfrequently work with external parties who report issues big or small\nusing our <a\nhref=\"https://support.plex.tv/articles/reporting-security-issues/\">guidelines\nand bug bounty program</a>. When vulnerabilities are reported following\nresponsible disclosure we address them swiftly and thoroughly, and we&#x2019;ve\nnever had a critical vulnerability published for which there wasn&#x2019;t\nalready a patched version released. And when we&#x2019;ve had incidents of our\nown, we&#x2019;ve always chosen to communicate them quickly. We are not aware\nof any unpatched vulnerabilities, and as always, we invite people to\ndisclose issues to us following the guidelines linked above. Given\nrecent articles about the LastPass incident, although we are not aware\nof any unpatched vulnerabilities, we have reached out to LastPass to be\nsure.\"</li>\n</ul></li>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://arstechnica.com/information-technology/2023/02/lastpass-hackers-infected-employees-home-computer-and-stole-corporate-vault/\">LastPass\nsays employee&#x2019;s home computer was hacked and corporate vault taken.</a>\n<ul>\n<li><strong>Author:</strong> <a\nhref=\"https://arstechnica.com/author/dan-goodin/\"\ntitle=\"Dan Goodin is Security Editor at Ars Technica, where he oversees coverage of malware, computer espionage, botnets, and hardware hacking.\">Dan\nGoodin</a>. (2023, Feb 27).</li>\n<li>According to a person briefed on a private report from LastPass who\nspoke on the condition of anonymity, the media software package that was\n
(3831,'2023-04-10','Introducing Bumble Bee.',2541,'Some Guy On the Internet chats with a friend, Bumble Bee.','<ul>\n<li><strong>Article:</strong> <a href=\"https://7daystodie.com/\"\ntitle=\"title currently in alpha stage development\">The \"7 days to die\"\nwebsite.</a>\n<ul>\n<li><strong>Author:</strong> The Fun Pimps. (N/A).</li>\n<li>An open-world game that is a unique combination of first-person\nshooter, survival horror, tower defense, and role-playing games. Play\nthe definitive zombie survival sandbox RPG that came first.</li>\n</ul></li>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://store.steampowered.com/app/251570/7_Days_to_Die/\"\ntitle=\"Early Access Game\">The Steam page for \"7 days to die\".</a>\n<ul>\n<li><strong>Author:</strong> Steampowered.com. (N/A).</li>\n<li>Note: This Early Access game is not complete and may or may not\nchange further. If you are not excited to play this game in its current\nstate, then you should wait to see if the game progresses further in\ndevelopment.</li>\n</ul></li>\n<li><strong>Article:</strong> <a\nhref=\"https://cricut.com/en-us/cutting-machines/cricut-maker/cricut-maker-3/cricut-maker-3/2008334.html\"\ntitle=\"Cricut Maker 3\">Cricut Maker 3 product page.</a>\n<ul>\n<li><strong>Author:</strong> Cricut shop. (N/A).</li>\n<li>Make more than you ever dreamed possible with Cricut Maker 3, the\nultimate smart cutting machine.</li>\n</ul></li>\n<li><strong>Article:</strong> <a\nhref=\"https://www.minecraft.net/en-us\">Welcome to the official site of\nMinecraft.</a>\n<ul>\n<li><strong>Author:</strong> Mojang. (N/A).</li>\n<li>A game about placing blocks and going on adventures.</li>\n</ul></li>\n<li><strong>Article:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Port_forwarding\"\ntitle=\"Port forwarding allows remote computers to connect to a specific computer or service within a private local-area network.\">What\nis \"Port Forwarding\"?</a>\n<ul>\n<li><strong>Author:</strong> Wikipedia. (N/A).</li>\n<li>In computer networking, port forwarding or port mapping is an\napplication of network address translation (NAT) that redirects a\ncommunication request from one address and port number combination to\nanother while the packets are traversing a network gateway, such as a\nrouter or firewall. This technique is most commonly used to make\nservices on a host residing on a protected or masqueraded (internal)\nnetwork available to hosts on the opposite side of the gateway (external\nnetwork), by remapping the destination IP address and port number of the\ncommunication to an internal host.</li>\n</ul></li>\n</ul>\n',391,0,0,'CC-BY-SA','7 days to die, Cricut, Minecraft, Software',0,0,1),
(3829,'2023-04-06','The Edinburgh cohort of HPR hosts stops Mumbling!',3296,'Dave Morriss and MrX talk about various technical topics','<article>\n<h2 id=\"introduction\">Introduction</h2>\n<p>Hosts:</p>\n<ul>\n<li><a\nhref=\"https://hackerpublicradio.org/correspondents/0201.html\">MrX</a></li>\n<li><a\nhref=\"https://hackerpublicradio.org/correspondents/0225.html\">Dave\nMorriss</a></li>\n</ul>\n<p>We recorded this on Saturday March 11<sup>th</sup> 2023. This time we\nmet in person, first at a pub called <em>The Steading</em> close to the\nentrance to the <a\nhref=\"https://www.midlothian.gov.uk/info/200281/snowsports_centre\"><em>Midlothian\nSnowsports Centre</em></a> where we had something to eat and drink -\nthough they only serve breakfast items before 12 noon. Then we adjourned\nto Daves Citroen car (<em>Studio C</em>) in the car park and recorded a\nchat.</p>\n<p>The last of these chats was over Mumble in September 2022, so it was\ngreat to be away from home and to meet in person again after a long time\nof COVID avoidance.</p>\n<h2 id=\"topics-discussed\">Topics discussed</h2>\n<ul>\n<li>Google Docs - Dave and MrX use this to build shared notes to help\norganise these sessions\n<ul>\n<li>There are issues with cut and paste when using Firefox it doesnt\nwork!\n<ul>\n<li>It can be fixed by selecting <code>about:config</code> in a new\ntab.</li>\n<li>Change the attribute <code>dom.event.clipboardevents.enabled</code>\nto <code>true</code>.</li>\n</ul></li>\n</ul></li>\n</ul>\n<ul>\n<li>Is email still relevant in 2023?\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Google_Wave\">Google Wave</a>\n- Googles possible email replacement seemed not to have lasted very\nlong</li>\n<li>Alternative access to Gmail using the IMAP protocol</li>\n<li>Folders versus labels. <a\nhref=\"https://www.youtube.com/watch?v=jPhJbKBuNnA\">Tom Scotts video “I\ntried using AI. It scared me.”</a></li>\n<li>Daves experiences with email:\n<ul>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Digital_Equipment_Corporation\">Digital\nEquipment Corporations</a> Vax VMS used DECmail, which needed <a\nhref=\"https://en.wikipedia.org/wiki/DECnet\">DECNet</a> networking.</li>\n<li>The UK Academic network (<a\nhref=\"https://en.wikipedia.org/wiki/JANET\">JANET</a>) initially used its\nown <a\nhref=\"https://en.wikipedia.org/wiki/Coloured_Book_protocols\">Coloured\nBook protocols</a>, including Grey Book mail. This ran over an X.25\nnetwork.</li>\n<li>Gradual transition to TCP/IP and SMTP mail (over JANET Internet\nProtocol Service, “JIPS”).</li>\n<li>In early Unix days (Ultrix) there was <a\nhref=\"https://en.wikipedia.org/wiki/MH_Message_Handling_System\"><code>MH</code>\n(Message Handler)</a></li>\n<li>Later, this was replaced by <a\nhref=\"https://www.nongnu.org/nmh/\"><code>nmh</code></a>.</li>\n<li>A GUI interface was available called <code>xmh</code></li>\n<li>A very flexible open-source front end called <code>exmh</code> was\ncrafted using Tcl/Tk</li>\n<li>Using <a\nhref=\"https://en.wikipedia.org/wiki/Procmail\"><code>procmail</code></a>\nallowed an enormous number of capabilities, like sophisticated\nfiltering, spam detection and automatic replies.</li>\n<li>Now using <a href=\"https://www.thunderbird.net/\">Thunderbird</a>,\nand has been for maybe 15 years.</li>\n</ul></li>\n<li>MrX used Eudora in the past, but mostly uses Outlook now.</li>\n<li>Both agree that many useful features of email, available in the\npast, have gone. Both of us still find email relevant however!</li>\n</ul></li>\n</ul>\n<ul>\n<li>Calendars:\n<ul>\n<li>MrX misses the calendar on the Psion Organiser</li>\n<li>Dave used to use an X-Windows tool called <code>ical</code> on\nUltrix (no relation to the later <code>iCalendar</code> standard). Moved\nto Thunderbird and its calendar called <code>Lightning</code>.</li>\n<li>Both have used the Google Calendar, Dave uses a Thunderbird add-on\nto share family calendars</li>\n</ul></li>\n</ul>\n<ul>\n<li>Lifetime of storage media:\n<ul>\n<li>SD cards can last a fairly long time, but getting the rig
(3835,'2023-04-14','Retro Karaoke machine Part 2',954,'Archer72 fixes misplaced belts and figures out what really happened','<ul>\n<li><p>The tape stops in the middle</p></li>\n<li><p>Put pressure here</p></li>\n</ul>\n<p><a\nhref=\"http://hackerpublicradio.org/eps/hpr3835/IMG_Pressure_here_tn.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3835/IMG_Pressure_here_tn_thumbnail.jpg\"\ntitle=\"Put Pressure on the right side to seat cassette tape\"\nalt=\"Put Pressure here to seat cassette tape\" /></a></p>\n<p><a\nhref=\"http://hackerpublicradio.org/eps/hpr3835/IMG_Vector-Prime-Audio-Drama_tn.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3835/IMG_Vector-Prime-Audio-Drama_tn_thumbnail.jpg\"\ntitle=\"Cassette tape and sleeve of Star Wars: Vector Prime Audio Drama\"\nalt=\"Cassette tape and sleeve of Star Wars: Vector Prime Audio Drama\" /></a></p>\n<p>Video clip of Star Wars audio drama playing <a\nhref=\"https://archive.org/details/vector-prime-audiobook-video-clip-on-karaoke_2023-03-25\"\ntitle=\"Video clip of Star Wars audio drama playing on Archive.org\">Video\nclip on Archive.org</a></p>\n',318,0,0,'CC-BY-SA','retro, karaoke, cassette tape',0,0,1),
(3960,'2023-10-06','On The Road At Last',1042,'Preparations are done, and we start out on the road.','<p>We finally got all of the preparations and maintenance done, and it\nwas time to hit the road. Once again, we left a bit later than planned,\nbut life is like that.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://flic.kr/s/aHBqjAviSX\"\nclass=\"uri\">https://flic.kr/s/aHBqjAviSX</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAveYi\"\nclass=\"uri\">https://flic.kr/s/aHBqjAveYi</a></li>\n<li><a\nhref=\"https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/on-the-road-at-last/\"\nclass=\"uri\">https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/on-the-road-at-last/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','RV, travel, southeast US, maintenance',0,0,1),
(4111,'2024-05-06','HPR Community News for April 2024',0,'HPR Volunteers talk about shows released and comments posted in April 2024','',159,47,1,'CC-BY-SA','Community News',0,0,1),
(3841,'2023-04-24','The Oh No! News.',1268,'Sgoti and Bumble bee discusses U.S. Marshals Service Ransomware attack and more.','<h2 id=\"the-oh-no-news.\">The <em>Oh No!</em> news.</h2>\n<h2 id=\"oh-no-news-is-good-news.\"><em>Oh No!</em> News is Good\nNews.</h2>\n<hr />\n<ul>\n<li><strong>Threat analysis; your attack surface.</strong></li>\n<li><strong>Article:</strong> <a\nhref=\"https://www.pcmag.com/news/us-marshals-service-computer-system-hit-by-ransomware-attack?utm_source=feedotter&amp;utm_medium=email&amp;utm_campaign=FO-02-28-2023&amp;utm_content=httpswwwpcmagcomnewsusmarshalsservicecomputersystemhitbyransomwareattack\">US\nMarshals Service Computer System Hit by Ransomware Attack.</a>\n<ul>\n<li><strong>Author:</strong> <a\nhref=\"https://www.pcmag.com/authors/michael-kan\">Michael Kan</a>. (2023,\nFeb 28).</li>\n<li>The agency uncovered the intrusion on Feb. 17 2023, when it\ndiscovered &#x201C;a ransomware and data exfiltration event affecting a\nstandalone USMS system.&#x201D; That means the hackers stole information from\nthe computer while planting malicious code capable of encrypting the\ndata inside.</li>\n<li>&#x201C;The affected system contains law enforcement sensitive information,\nincluding returns from legal process, administrative information, and\npersonally identifiable information pertaining to subjects of USMS\ninvestigations, third parties, and certain USMS employees,&#x201D; the agency\nsays.</li>\n</ul></li>\n<li><strong>Article:</strong> <a\nhref=\"https://www.pcmag.com/news/us-shuts-down-netwire-malware-that-posed-as-legit-remote-admin-tool?utm_source=feedotter&amp;utm_medium=email&amp;utm_campaign=FO-03-14-2023&amp;utm_content=httpswwwpcmagcomnewsusshutsdownnetwiremalwarethatposedaslegitremoteadmintool\">US\nShuts Down \'Netwire\' Malware That Posed as Legit Remote Admin Tool.</a>\n<ul>\n<li><strong>Author:</strong> <a\nhref=\"https://www.pcmag.com/authors/michael-kan\">Michael Kan</a>. (2023,\nMar 10).</li>\n<li>Worldwiredlabs.com has been around since at least 2012(Opens in a\nnew window), offering a software product called &#x201C;Netwire,&#x201D; which is\nsupposedly designed to help IT support staff manage computers remotely.\nBefore the site was seized, it was offering Netwire for $10 per month or\n$60 per year. However, US investigators say the site was a front to sell\nthe software as a hacking tool to cybercriminals.</li>\n</ul></li>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://www.justice.gov/usao-cdca/pr/federal-authorities-seize-internet-domain-selling-malware-used-illegally-control-and\">Federal\nAuthorities Seize Internet Domain Selling Malware Used to Illegally\nControl and Steal Data from Victims&#x2019; Computers.</a>\n<ul>\n<li><strong>Author:</strong> U.S. Attorney\'s Office, Central District of\nCalifornia. (2023, Mar 9).</li>\n<li>A seizure warrant approved by a United States Magistrate Judge on\nMarch 3 and executed on Tuesday led to the seizure of\nwww.worldwiredlabs.com, which offered the NetWire remote access trojan\n(RAT), a sophisticated program capable of targeting and infecting every\nmajor computer operating system. &#x201C;A RAT is a type of malware that allows\nfor covert surveillance, allowing a &#x2018;backdoor&#x2019; for administrative\ncontrol and unfettered and unauthorized remote access to a victim&#x2019;s\ncomputer, without the victim&#x2019;s knowledge or permission,&#x201D; according to\ncourt documents filed in Los Angeles.</li>\n</ul></li>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://www.cnn.com/2023/03/24/politics/fbi-breach-forums-conor-fitzpatrick/index.html\">FBI\ntakes down cybercrime forum that touted data connected to breach\naffecting US lawmakers.</a>\n<ul>\n<li><strong>Author:</strong> Sean Lyngaas. (2023, Mar 24).</li>\n<li>The FBI has arrested the alleged founder of a popular cybercriminal\nforum that touted data stolen in a hack affecting members of Congress\nand thousands of other people and taken the website down, the Justice\nDepartment said Friday.</li>\n</ul></li>\n<li><strong>Article:</strong>
(3880,'2023-06-16','Installing a Google Nest Thermostat',791,'I installed a new smart thermostat','<p>Our old thermostat was breaking down to the point that we could not\nchange the temperature, so it was time for a change. And since smart\nthermostats have gotten pretty good I decided that I wanted to install\none and take more control of my environment.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a\nhref=\"https://www.consumerreports.org/smart-thermostats/google-nest-thermostat-review-a9480620820/\"\nclass=\"uri\">https://www.consumerreports.org/smart-thermostats/google-nest-thermostat-review-a9480620820/</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=dHKD-9uI24I\"\nclass=\"uri\">https://www.youtube.com/watch?v=dHKD-9uI24I</a></li>\n<li><a href=\"https://www.electronicshub.org/thermostat-wire-colors/\"\nclass=\"uri\">https://www.electronicshub.org/thermostat-wire-colors/</a></li>\n<li><a\nhref=\"https://support.google.com/googlenest/answer/9452748?hl=en#zippy=%2Ccommon-thermostat-wires\"\nclass=\"uri\">https://support.google.com/googlenest/answer/9452748?hl=en#zippy=%2Ccommon-thermostat-wires</a></li>\n<li><a\nhref=\"https://www.palain.com/miscellaneous-technical-notes/installing-a-google-nest-thermostat/\"\nclass=\"uri\">https://www.palain.com/miscellaneous-technical-notes/installing-a-google-nest-thermostat/</a></li>\n</ul>\n',198,0,0,'CC-BY-SA','Thermostat, Google Nest, installation',0,0,1),
(3890,'2023-06-30','Lessons Learned',793,'What we learned from this experience that will make the next one better.','<p>This trip started with a difficult week with things breaking and\nmistakes being made. But in the end we had a really good time and want\nto do another trip. But we have learned a few lessons, and we\'ll pass\nthem along to benefit anyone else who might want to do something\nsimilar.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.palain.com/travel/lessons-learned/\"\nclass=\"uri\">https://www.palain.com/travel/lessons-learned/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, RV life, Lessons Learned',0,0,1),
(3900,'2023-07-14','Preparing Podcasts for Listening',704,'I prepare my podcast files for listening in Audacity.','<p>Because I use very small and simple MP3 players, I have to do\npre-processing of my podcast files, and I use Audacity for that purpose.\nI explain exactly how I do this in case it helps someone else.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"http://hackerpublicradio.org/eps.php?id=1479\"\nclass=\"uri\">http://hackerpublicradio.org/eps.php?id=1479</a></li>\n<li><a href=\"https://gpodder.net/\"\nclass=\"uri\">https://gpodder.net/</a></li>\n<li><a href=\"https://www.audacityteam.org/download/\"\nclass=\"uri\">https://www.audacityteam.org/download/</a></li>\n<li><a\nhref=\"https://www.palain.com/miscellaneous-technical-notes/preparing-podcasts-for-listening/\"\nclass=\"uri\">https://www.palain.com/miscellaneous-technical-notes/preparing-podcasts-for-listening/</a></li>\n</ul>\n',198,0,0,'CC-BY-SA','Podcasts, Audacity, file preparation',0,0,1),
(3910,'2023-07-28','Playing Civilization II',968,'Some hints for playing Civilization II','<p>As I did for the original Civilization, I want to give a few hints on\nplaying this marvelous upgrade. This is obviously not a complete manual\nor strategy guide, which would take a <em>lot</em> longer, but if you\nhappened to run across a copy and wanted to check it out these are a\nsome hints on what you might want to do. I do give you links to other\nresources if you want to go into more depth.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a\nhref=\"https://civilization.fandom.com/wiki/Help_with_playing_Civ2\"\nclass=\"uri\">https://civilization.fandom.com/wiki/Help_with_playing_Civ2</a></li>\n<li><a href=\"https://civilization.fandom.com/wiki/Attitude_(Civ2)\"\nclass=\"uri\">https://civilization.fandom.com/wiki/Attitude_(Civ2)</a></li>\n<li><a\nhref=\"https://www.palain.com/gaming/civilization-ii/playing-civilization-ii-hints/\"\nclass=\"uri\">https://www.palain.com/gaming/civilization-ii/playing-civilization-ii-hints/</a></li>\n</ul>\n',198,122,0,'CC-BY-SA','Computer games, strategy games, Civilization II',0,0,1),
(3920,'2023-08-11','RV Trip 2022-2023: Southeast US',862,'Step one for a months-long RV trip is the planning.','<p>In this episode we look at the planning process for our second RV\ntrip. Last year we toured the Southwest US, but we don\'t like to repeat\nourselves. So this time we decided to tour the Southeast US. This not\nonly let us visit a much different part of the country, but it also\nallowed us to go back to our plan to visit some NASA facilities.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.flattestroute.com/\"\nclass=\"uri\">https://www.flattestroute.com/</a></li>\n<li><a href=\"https://en-us.topographic-map.com/\"\nclass=\"uri\">https://en-us.topographic-map.com/</a></li>\n<li><a\nhref=\"https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/\"\nclass=\"uri\">https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','RV, travel planning',0,0,1),
(3930,'2023-08-25','Playing Civilization II Test of Time',747,'Some hints for playing Civilization II Test of Time','<p>For reasons I go into, this is in some respects a different game from\nCivilization II, at least different enough to deserve some separate\nattention. The multiple map feature makes for some interesting game play\npossibilities that add interest to this version, and the fact that it\nhas no defined end point is also intriguing. And the scenarios add some\ninteresting story differences as well.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a\nhref=\"https://www.amazon.com/Sid-Meiers-Memoir-Computer-Games-ebook/dp/B085845CX9/ref=tmm_kin_swatch_0\"\nclass=\"uri\">https://www.amazon.com/Sid-Meiers-Memoir-Computer-Games-ebook/dp/B085845CX9/ref=tmm_kin_swatch_0</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Lalande_21185\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Lalande_21185</a></li>\n<li><a\nhref=\"https://www.myabandonware.com/game/civilization-ii-test-of-time-454\"\nclass=\"uri\">https://www.myabandonware.com/game/civilization-ii-test-of-time-454</a></li>\n<li><a\nhref=\"https://www.palain.com/gaming/civilization-ii/playing-civilization-ii-test-of-time/\"\nclass=\"uri\">https://www.palain.com/gaming/civilization-ii/playing-civilization-ii-test-of-time/</a></li>\n</ul>\n',198,0,0,'CC-BY-SA','Computer games, strategy games, Civilization II, Test of Time',0,0,1),
(3940,'2023-09-08','Equipment Maintenance',792,'We prepare the RV and the truck for our trip. ','<p>When you go on an RV trip you are basically towing your home around,\nand that means you need to have your equipment in shape. RVs are said to\nundergo an earthquake every time you tow them, and so there are things\nthat need to be addressed. And the tow vehicle needs to be in good shape\nas well. So in this episode we discuss how we did the necessary\nequipment maintenance.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a\nhref=\"https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/equipment-maintenance/\"\nclass=\"uri\">https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/equipment-maintenance/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','RV, travel, southeast US, maintenance',0,0,1),
(3950,'2023-09-22','Sid Meiers\' Alpha Centauri',969,'One of the best overlooked games','<p>Because it doesn\'t have the word \"Civilization\" in its name, this\ngame is unfairly overlooked. It was a major achievement when released,\nand it is still a very rewarding game for anyone to pick up and play.\nThere is a lot of depth to it, and it holds up well even after a couple\nof decades.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://www.youtube.com/watch?v=1m0aEO7CrxM\"\nclass=\"uri\">https://www.youtube.com/watch?v=1m0aEO7CrxM</a></li>\n<li><a\nhref=\"https://www.gamespot.com/articles/an-interview-with-brian-reynolds/1100-2564268/\"\nclass=\"uri\">https://www.gamespot.com/articles/an-interview-with-brian-reynolds/1100-2564268/</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=4HpyQoU1DNw\"\nclass=\"uri\">https://www.youtube.com/watch?v=4HpyQoU1DNw</a></li>\n<li><a href=\"https://alphacentauri.fandom.com/wiki/Alpha_Centauri_Wiki\"\nclass=\"uri\">https://alphacentauri.fandom.com/wiki/Alpha_Centauri_Wiki</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=0u7uUWYE_9M\"\nclass=\"uri\">https://www.youtube.com/watch?v=0u7uUWYE_9M</a></li>\n<li><a\nhref=\"http://www.civ.org.pl/files/smac/misc/ALPHA_CENTAURI_MANUAL.PDF\"\nclass=\"uri\">http://www.civ.org.pl/files/smac/misc/ALPHA_CENTAURI_MANUAL.PDF</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=9oDIG4RRcLM\"\nclass=\"uri\">https://www.youtube.com/watch?v=9oDIG4RRcLM</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=9_PxlRn4SCU\"\nclass=\"uri\">https://www.youtube.com/watch?v=9_PxlRn4SCU</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=f9kdaKcQ19M\"\nclass=\"uri\">https://www.youtube.com/watch?v=f9kdaKcQ19M</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=B3TZVn__NXY\"\nclass=\"uri\">https://www.youtube.com/watch?v=B3TZVn__NXY</a></li>\n<li><a href=\"https://www.palain.com/gaming/sid-meiers-alpha-centauri/\"\nclass=\"uri\">https://www.palain.com/gaming/sid-meiers-alpha-centauri/</a></li>\n</ul>\n',198,0,0,'CC-BY-SA','Computer games, strategy games, Alpha Centauri',0,0,1),
(3970,'2023-10-20','Playing Alpha Centauri, Part 1',1021,'Part 1 of tips on playing Alpha Centauri','<p>This starts our look at how to play Alpha Centauri, and we look at\ngame concepts that set this game apart from others.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://alphacentauri.fandom.com/wiki/Governor\"\nclass=\"uri\">https://alphacentauri.fandom.com/wiki/Governor</a></li>\n<li><a href=\"https://civilization.fandom.com/wiki/Factions_(SMAC)\"\nclass=\"uri\">https://civilization.fandom.com/wiki/Factions_(SMAC)</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Sparta\"\nclass=\"uri\">http://en.wikipedia.org/wiki/Sparta</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/militarism\"\nclass=\"uri\">http://en.wikipedia.org/wiki/militarism</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/survivalism\"\nclass=\"uri\">http://en.wikipedia.org/wiki/survivalism</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/martial_law\"\nclass=\"uri\">http://en.wikipedia.org/wiki/martial_law</a></li>\n<li><a href=\"https://civilization.fandom.com/wiki/Vendetta_(SMAC)\"\nclass=\"uri\">https://civilization.fandom.com/wiki/Vendetta_(SMAC)</a></li>\n<li><a\nhref=\"https://www.palain.com/gaming/sid-meiers-alpha-centauri/playing-alpha-centuari-1/\"\nclass=\"uri\">https://www.palain.com/gaming/sid-meiers-alpha-centauri/playing-alpha-centuari-1/</a></li>\n</ul>\n',198,0,0,'CC-BY-SA','Computer games, strategy games, Alpha Centauri',0,0,1),
(3980,'2023-11-03','Huntsville to Vicksburg',908,'From NASA to the Civil War.','<p>We survive the freezing weather in Huntsville, and then move on to\nour next major stop in Vicksburg, Mississippi. But we have a problem of\na refrigerator that stops working and needs to be replaced.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://flic.kr/s/aHBqjAvdPH\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvdPH</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvfVo\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvfVo</a></li>\n<li><a\nhref=\"https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/huntsville-to-vic\"\nclass=\"uri\">https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/huntsville-to-vic</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','RV, travel, southeast US',0,0,1),
(3990,'2023-11-17','Playing Alpha Centauri, Part 2',1221,'Part 2 of tips on playing Alpha Centauri','<p>This continues our look at how to play Alpha Centauri, and we look at\ngame concepts that set this game apart from others. This episode is all\nabout Social Engineering choices.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a\nhref=\"https://www.palain.com/gaming/sid-meiers-alpha-centauri/playing-alpha-centauri-2/\"\nclass=\"uri\">https://www.palain.com/gaming/sid-meiers-alpha-centauri/playing-alpha-centauri-2/</a></li>\n</ul>\n',198,0,0,'CC-BY-SA','Computer games, strategy games, Alpha Centauri',0,0,1),
(4000,'2023-12-01','New Orleans',957,'We visit the Big Easy.','<p>We get to visit New Orleans, and a bit of Louisiana, in this episode.\nOf course, we only scratched the surface, but that is true of most\ntravel when you think about it. We did see a few interesting things\nalong the way, and started to realize that this trip is not just about\nNASA sites, but also a lot of military history, which is also an\ninterest of mine.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://flic.kr/s/aHBqjAvhRR\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvhRR</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvoB6\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvoB6</a></li>\n<li><a\nhref=\"https://www.flickr.com/photos/ahuka/52740199646/in/dateposted-public/\"\nclass=\"uri\">https://www.flickr.com/photos/ahuka/52740199646/in/dateposted-public/</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvp24\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvp24</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvpc9\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvpc9</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAviHF\"\nclass=\"uri\">https://flic.kr/s/aHBqjAviHF</a></li>\n<li><a\nhref=\"https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/new-orleans/\"\nclass=\"uri\">https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/new-orleans/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','RV, travel, southeast US, New Orleans',0,0,1),
(4010,'2023-12-15','Playing Alpha Centauri, Part 3',1061,'Part 3 of tips on playing Alpha Centauri','<p>This continues our look at how to play Alpha Centauri, and we look at\ngame concepts that set this game apart from others. This episode looks\nat the Design Workshop, and how to create powerful units for your\nmilitary.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://alphacentauri2.info/wiki/Unit\"\nclass=\"uri\">https://alphacentauri2.info/wiki/Unit</a></li>\n<li><a\nhref=\"https://www.palain.com/gaming/sid-meiers-alpha-centauri/playing-alpha-centauri-3/\"\nclass=\"uri\">https://www.palain.com/gaming/sid-meiers-alpha-centauri/playing-alpha-centauri-3/</a></li>\n</ul>\n',198,122,0,'CC-BY-SA','Computer games, strategy games, Alpha Centauri',0,0,1),
(4020,'2023-12-29','Alabama to Florida',812,'We start traveling across the Gulf Coast on our way to Florida.','<p>We leave New Orleans and start out across the Gulf Coast. We make a\nbrief stop in Mississippi to add one more NASA site to our trip, then\ninto Alabama just south of Mobile. From there we move into the Florida\nPanhandle.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://flic.kr/s/aHBqjAviPn\"\nclass=\"uri\">https://flic.kr/s/aHBqjAviPn</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvk1v\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvk1v</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvqGi\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvqGi</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvqPc\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvqPc</a></li>\n<li><a\nhref=\"https://www.flickr.com/photos/ahuka/52741226923/in/album-72177720306649109/\"\nclass=\"uri\">https://www.flickr.com/photos/ahuka/52741226923/in/album-72177720306649109/</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvx9b\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvx9b</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvszF\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvszF</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvr86\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvr86</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvDr1\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvDr1</a></li>\n<li><a\nhref=\"https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/alabama-to-florida/\"\nclass=\"uri\">https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/alabama-to-florida/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','RV, travel, southeast US, Alabama, Florida',0,0,1),
(4030,'2024-01-12','Playing Alpha Centauri, Part 4',728,'Part 4 of tips on playing Alpha Centauri','<p>This continues our look at how to play Alpha Centauri, and we look at\ngame concepts that set this game apart from others.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://alphacentauri.fandom.com/wiki/Victory\"\nclass=\"uri\">https://alphacentauri.fandom.com/wiki/Victory</a></li>\n<li><a\nhref=\"https://www.palain.com/gaming/sid-meiers-alpha-centauri/playing-alpha-centauri-4/\"\nclass=\"uri\">https://www.palain.com/gaming/sid-meiers-alpha-centauri/playing-alpha-centauri-4/</a></li>\n</ul>\n',198,122,0,'CC-BY-SA','Computer games, strategy games, Alpha Centauri',0,0,1),
(4040,'2024-01-26','Further Into Florida',893,'We continue our Florida journey and hit the Kennedy Space Center.','<p>We leave the Florida Panhandle to move into Central Florida and our\nhighly anticipated visit to the Kennedy Space Center. It turned out to\nbe everything we hoped, and we had a fantastic time. In fact we spent\nfive days at the Center soaking it all in, and had a blast.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a\nhref=\"https://www.flickr.com/photos/ahuka/52744370697/in/album-72177720306692379/\"\nclass=\"uri\">https://www.flickr.com/photos/ahuka/52744370697/in/album-72177720306692379/</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvxqG\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvxqG</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvysa\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvysa</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvyCM\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvyCM</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvEYe\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvEYe</a></li>\n<li><a\nhref=\"https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/further-into-florida/\"\nclass=\"uri\">https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/further-into-florida/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','RV, travel, southeast US, Florida',0,0,1),
(4050,'2024-02-09','Playing Alpha Centauri, Part 5',1133,'Part 5 of tips on playing Alpha Centauri','<p>This continues our look at how to play Alpha Centauri, and we look at\ngame concepts that set this game apart from others.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a\nhref=\"https://www.palain.com/gaming/sid-meiers-alpha-centauri/playing-alpha-centauri-2/\"\nclass=\"uri\">https://www.palain.com/gaming/sid-meiers-alpha-centauri/playing-alpha-centauri-2/</a></li>\n<li><a href=\"https://alphacentauri2.info/wiki/Difficulty\"\nclass=\"uri\">https://alphacentauri2.info/wiki/Difficulty</a></li>\n<li><a\nhref=\"https://www.palain.com/gaming/sid-meiers-alpha-centauri/playing-alpha-centauri-5/\"\nclass=\"uri\">https://www.palain.com/gaming/sid-meiers-alpha-centauri/playing-alpha-centauri-5/</a></li>\n</ul>\n',198,122,0,'CC-BY-SA','Computer games, strategy games, Alpha Centauri',0,0,1),
(4060,'2024-02-23','Florida to Georgia',741,'We wrap up our Florida adventure and move up to Georgia.','<p>We finish up our visit to Kennedy Space Center with one more day at\nthe Center. Then we spend a few days at St. Augustine before leaving\nFlorida and moving up north to Savannah, Georgia</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://flic.kr/s/aHBqjAvzyo\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvzyo</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvzD3\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvzD3</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvFon\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvFon</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvFAg\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvFAg</a></li>\n<li><a\nhref=\"https://www.flickr.com/photos/ahuka/52747902453/in/album-72177720306712627/\"\nclass=\"uri\">https://www.flickr.com/photos/ahuka/52747902453/in/album-72177720306712627/</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvHR5\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvHR5</a></li>\n<li><a\nhref=\"https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/florida-to-georgia/\"\nclass=\"uri\">https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/florida-to-georgia/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','RV, travel, southeast US, Florida, Georgia',0,0,1),
(4070,'2024-03-08','Civilization III',972,'We start our look at the next game in the Civilization franchise.','<p>This starts our look at Civilization III, which continued the\nCivilization franchise and followed upon the Alpha Centauri game. This\ngame builds upon the concepts already a part of Civilization, but adds\nsome new features and advancements. Every new version of Civiliation has\npushed new concepts and developed the franchise further, and that is one\nreason why each one has been a best-seller and an award winner.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://civilization.fandom.com/wiki/Unique_unit_(Civ3)\"\nclass=\"uri\">https://civilization.fandom.com/wiki/Unique_unit_(Civ3)</a></li>\n<li><a\nhref=\"https://civilization.fandom.com/wiki/List_of_strengths_in_Civ3\"\nclass=\"uri\">https://civilization.fandom.com/wiki/List_of_strengths_in_Civ3</a></li>\n<li><a href=\"https://civilization.fandom.com/wiki/Golden_Age_(Civ3)\"\nclass=\"uri\">https://civilization.fandom.com/wiki/Golden_Age_(Civ3)</a></li>\n<li><a\nhref=\"https://civilization.fandom.com/wiki/List_of_civilizations_in_Civ3\"\nclass=\"uri\">https://civilization.fandom.com/wiki/List_of_civilizations_in_Civ3</a></li>\n<li><a href=\"https://www.civfanatics.com/civ3/infocenter/#victories\"\nclass=\"uri\">https://www.civfanatics.com/civ3/infocenter/#victories</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=YZDmlnJSVdE\"\nclass=\"uri\">https://www.youtube.com/watch?v=YZDmlnJSVdE</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=8WeGVE84mVU\"\nclass=\"uri\">https://www.youtube.com/watch?v=8WeGVE84mVU</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Civilization_III\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Civilization_III</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=_LKcoZd6yYM\"\nclass=\"uri\">https://www.youtube.com/watch?v=_LKcoZd6yYM</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=Ntkw5otU8C4\"\nclass=\"uri\">https://www.youtube.com/watch?v=Ntkw5otU8C4</a></li>\n<li><a href=\"https://www.palain.com/gaming/civilization-iii/\"\nclass=\"uri\">https://www.palain.com/gaming/civilization-iii/</a></li>\n</ul>\n',198,122,0,'CC-BY-SA',' Computer games, strategy games, Civilization III',0,0,1),
(4080,'2024-03-22','Georgia to South Carolina',560,'We visit the beautiful city of Savannah, Georgia, and then move on to Charleston, South Carolina.','<p>Savannah, Georgia is one of the most beautiful cities in the United\nStates, with a great history. It is one of the older cities in the south\nthat actually escaped destruction in the Civil War because the mayor\nsurrendered the city to General Sherman. After visiting this city, we\nmoved just a bit further north to Charleston, South Carolina, where the\nCivil War began with the assault on Fort Sumter.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a href=\"https://flic.kr/s/aHBqjAvHR5\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvHR5</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvKgk\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvKgk</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvPR2\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvPR2</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAvPYm\"\nclass=\"uri\">https://flic.kr/s/aHBqjAvPYm</a></li>\n<li><a\nhref=\"https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/florida-to-georgia/\"\nclass=\"uri\">https://www.palain.com/travel/rv-trip-2022-2023-southeast-us/florida-to-georgia/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','RV, travel, southeast US, Georgia, South Carolina',0,0,1),
(3839,'2023-04-20','Rip a CD in the terminal',300,'Archer72 rips CD\'s in the terminal and avoids the whims of the media companies','<p>Wiki</p>\n<p><a href=\"https://abcde.einval.com/wiki/\" title=\"ABCDE Wiki\">ABCDE\nWiki</a></p>\n<p>Github</p>\n<p><a href=\"https://github.com/johnlane/abcde\"\ntitle=\"ABCDE Github page\">ABCDE Github page</a></p>\n<p>Git</p>\n<p><a\nhref=\"https://git.einval.com/cgi-bin/gitweb.cgi?p=abcde.git;a=summary\"\ntitle=\"ABCDE Git page\">ABCDE Git page</a></p>\n<p><a\nhref=\"https://askubuntu.com/questions/1179179/abcde-what-is-an-abcde-conf-file-to-rip-to-multiple-formats\"\ntitle=\"Ask Ubuntu page\">Ask Ubuntu page</a></p>\n<ul>\n<li><a href=\"http://hackerpublicradio.org/eps/hpr3839/abcde.conf\"\ntitle=\"abcde CD ripping configuration file\">abcde.conf \"abcde CD ripping\nconfiguration file\"</a></li>\n</ul>\n<p><em><em>Custom abcde configuration file</em></em></p>\n<ul>\n<li><p>For only ogg,mp3,flac and opus</p></li>\n<li><p><a\nhref=\"http://hackerpublicradio.org/eps/hpr3839/custom-abcde.conf\"\ntitle=\"Custom abcde CD ripping configuration file\">custom-abcde.conf\n\"abcde CD ripping configuration file\"</a></p></li>\n</ul>\n<p><em><em>freedb.freedb.org is dead; use gnudb.gnudb.org\ninstead</em></em></p>\n<p><a href=\"https://abcde.einval.com/bugzilla/show_bug.cgi?id=155\"\ntitle=\"Bugzilla entry for freedb.org\">Bugzilla entry for\nfreedb.org</a></p>\n<p><em><em>Updated CDDB location in .abcde.conf</em></em></p>\n<pre><code>CDDBURL=&quot;http://gnudb.gnudb.org/~cddb/cddb.cgi&quot;</code></pre>\n<p><em><em>Alias in BASH</em></em></p>\n<pre><code>alias ripcd.mp3=&#39;abcde -o mp3&#39;\nalias ripcd.opus=&#39;abcde -o opus&#39;\nalias ripcd.ogg=&#39;abcde -o ogg&#39;\nalias ripcd.opus=&#39;abcde -o opus&#39;</code></pre>\n<p><em><em>More Info</em></em></p>\n<p><a\nhref=\"https://askubuntu.com/questions/788327/use-abcde-to-produce-high-quality-flac-and-mp3-output-with-album-art-under-xenia#788757\"\nclass=\"uri\">https://askubuntu.com/questions/788327/use-abcde-to-produce-high-quality-flac-and-mp3-output-with-album-art-under-xenia#788757</a></p>\n<pre><code>abcde -o &#39;flac:-8,mp3:-b 320&#39; -G</code></pre>\n',318,11,0,'CC-BY-SA','optical media, terminal apps, lightweight apps, rip cd',0,0,1),
(3832,'2023-04-11','How I left Google behind',1813,'Just an overview of what services I now use to replace previously used Google services','<p>A list of the software and hardware I cover in the show.</p>\n<h3 id=\"hardware\">Hardware:</h3>\n<ul>\n<li><p>Server - 11th gen i5-11400, 64GB RAM, 12TB SSD storage</p></li>\n<li><p>Local backup server - 4th gen i5-4570, 32GB RAM, 24TB HDD storage\nin mirrored ZFS pool for 12TB usable.</p></li>\n<li><p>Offsite backup server - Celeron J4125, 16GB RAM, 8TB SSD\nstorage</p></li>\n</ul>\n<h3 id=\"software\">Software:</h3>\n<ul>\n<li><p>Hypervisor - Proxmox Virtual Environment<br />\n<a href=\"https://www.proxmox.com/en/proxmox-ve\"\nclass=\"uri\">https://www.proxmox.com/en/proxmox-ve</a></p></li>\n<li><p>Backup software - Proxmox Backup Server<br />\n<a href=\"https://www.proxmox.com/en/proxmox-backup-server\"\nclass=\"uri\">https://www.proxmox.com/en/proxmox-backup-server</a></p></li>\n<li><p>Email - iRedMail<br />\n<a href=\"https://www.iredmail.org/index.html\"\nclass=\"uri\">https://www.iredmail.org/index.html</a></p></li>\n<li><p>Photos, Notes, File Storage, Office Software - Nextcloud\nAIO<br />\n<a href=\"https://github.com/nextcloud/all-in-one\"\nclass=\"uri\">https://github.com/nextcloud/all-in-one</a></p></li>\n<li><p>Music - Funkwhale<br />\n<a href=\"https://funkwhale.audio/\"\nclass=\"uri\">https://funkwhale.audio/</a></p></li>\n<li><p>Social Media - Mastodon<br />\n<a href=\"https://github.com/mastodon/mastodon\"\nclass=\"uri\">https://github.com/mastodon/mastodon</a></p></li>\n<li><p>Blog - writefreely<br />\n<a href=\"https://github.com/writefreely/writefreely\"\nclass=\"uri\">https://github.com/writefreely/writefreely</a></p></li>\n<li><p>Video - Invidious, Peertube<br />\n<a href=\"https://invidious.io/\"\nclass=\"uri\">https://invidious.io/</a><br />\n<a href=\"https://github.com/Chocobozzz/PeerTube/\"\nclass=\"uri\">https://github.com/Chocobozzz/PeerTube/</a></p></li>\n<li><p>Chat - Matrix, Element<br />\n<a href=\"https://github.com/matrix-org/synapse/\"\nclass=\"uri\">https://github.com/matrix-org/synapse/</a><br />\n<a href=\"https://element.io/\"\nclass=\"uri\">https://element.io/</a></p></li>\n</ul>\n',375,0,0,'CC-BY-SA','selfhosted,google,proxmox,iredmail,nextcloud,funkwhale,mastodon,writefreely,peertube,invidious,matri',0,0,1),
(3833,'2023-04-12','Software Freedom Podcast',2412,'Another excellent podcast for your consideration this time it\'s news from the FSFE','<h1>Software Freedom Podcast - Free Software Foundation Europe</h1>\n\n<p>Another recommendation for your podcatcher from our sister project <a href=\"https://freeculturepodcasts.org/\">https://freeculturepodcasts.org/</a></p>\n\n<ul>\n<li>Website: <a href=\"https://fsfe.org/about/about.en.html\">https://fsfe.org/about/about.en.html</a></li>\n<li>Episode: <a href=\"https://fsfe.org/news/podcast/episode-14.html\">https://fsfe.org/news/podcast/episode-14.html</a></li>\n<li>Feed Opus: <a href=\"feed://fsfe.org/news/podcast-opus.en.rss\">feed://fsfe.org/news/podcast-opus.en.rss</a></li>\n<li>Feed mp3: <a href=\"feed://fsfe.org/news/podcast.en.rss\">feed://fsfe.org/news/podcast.en.rss</a></li>\n<li>Copyright (c) Free Software Foundation Europe. Creative Commons BY-SA 4.0</li>\n</ul>\n\n<hr />\n\n<h1>SFP#14: The world of mesh networking with Elektra Wagenrad</h1>\n\n<p>\nWith this episode the Software Freedom Podcast opens the door to the fascinating and sometimes complex world of mesh networking. And who better than Elektra Wagenrad can take us on this journey? Elektra is one of the original developers of the B.A.T.M.A.N. protocol and of the Mesh Potato project.\n</p>\n\n<p>In our 14th Software Freedom Podcast episode Matthias Kirschner talks with our guest, Elektra Wagenrad, about the origins of Freifunk, the B.A.T.M.A.N. protocol, and the Mesh Potato project. If you are new to the world of mesh networking this episodes is an easy entrance to it. Elektra not only explains the theory behind the protocols but also dives deeper into the philosophical idea of it. In this context, Matthias and Elektra also touch on the difficult topic of limiting the use of Free Software, using the example of the former ban on the use of the B.A.T.M.A.N. protocol for military activities. Last but not least they also discuss the EUs <a href=\"https://fsfe.org/activities/radiodirective/index.en.html\">Radio Equipment Directive</a> and the FSFE\'s <a href=\"https://fsfe.org/activities/routers/routers.en.html\">Router Freedom activity</a>.</p>\n\n<p>With this episode, the Software Freedom Podcast has produced an easy to follow and easy to understand podcast for everybody who is interested in mesh networking. Join us on our journey through this fascinating technical and philosophical world and listen to Elektra and Matthias as they tell the story with its ups and downs.\n</p>\n\n\n\n<p>Read more:</p>\n<ul>\n<li><a href=\"https://fsfe.org//freesoftware/index.en.html\">What is Free Software?</a></li>\n<li><a href=\"https://freifunk.net/\">Freifunk (DE)</a></li>\n<li><a href=\"https://www.open-mesh.org/\">Open-Mesh Project</a></li>\n<li><a href=\"https://villagetelco.org/mesh-potato/\">The \"Mesh Potato\" project</a></li>\n<li><a href=\"https://fsfe.org//activities/radiodirective/radiodirective.en.html\">FSFEs activity on Radio Lockdown</a></li>\n<li><a href=\"https://fsfe.org//activities/routers/routers.en.html\">FSFE\'s Router Freedom activity</a></li>\n</ul>\n\n<p>If you liked this episode and want to support our continuous work for software freedom, please help us with a <a href=\"https://my.fsfe.org/donate?referrer=https://fsfe.org/news/podcast/episode-14.html\">donation</a>.</p>\n\n<hr />\n',30,75,0,'CC-BY-SA','FOSDEM, Podcast Recommendations, FSFE, FLOSS',0,0,1),
(3836,'2023-04-17','Using \'zoxide\', an alternative to \'cd\'',715,'Dave has been using \'zoxide\' for a little while and really likes it','<article>\n<style>\nhr.thin {\n border: 0;\n height: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n border-bottom: 1px solid rgba(255, 255, 255, 0.3);\n}\n</style>\n<h2 id=\"overview\">Overview</h2>\n<p>I like the idea that there are tools available to enhance the\n<code>\'cd\'</code> command, remembering places you have been in the file\nsystem and taking you there easily.</p>\n<p>I use <a\nhref=\"https://hackerpublicradio.org/eps.php?id=1843\"><code>\'pushd\'</code>\nand <code>\'popd\'</code></a> for moving in and out of directories from a\nplace I want to do most of my work, but something more powerful than\nthese or <code>cd</code> have always seemed desirable.</p>\n<p>I was using <code>\'autojump\'</code> for a while last year, but didnt\nreally get on with it. This was mainly because there was no way of\nexcluding certain directories which had been visited from its list.</p>\n<p>Recently I heard of <code>\'zoxide\'</code>, which I have been trying\nand really like.</p>\n<hr class=\"thin\">\n<h2 id=\"zoxide\"><code>zoxide</code></h2>\n<h3 id=\"what-is-it\">What is it?</h3>\n<p>From the <a href=\"https://github.com/ajeetdsouza/zoxide\">GitHub\npage</a>:</p>\n<blockquote>\n<p>zoxide is a smarter cd command, inspired by z<a href=\"#fn1\"\nclass=\"footnote-ref\" id=\"fnref1\" role=\"doc-noteref\"><sup>1</sup></a> and\nautojump.</p>\n<p>It remembers which directories you use most frequently, so you can\n“jump” to them in just a few keystrokes. zoxide works on all major\nshells.</p>\n</blockquote>\n<p>In its man page its billed as “A faster way to navigate your\nfilesystem”.</p>\n<p>Its written in <code>Rust</code> so is very fast.</p>\n<h3 id=\"what-does-it-do\">What does it do?</h3>\n<ul>\n<li><p>It offers the functionality of the Linux/Unix <code>\'cd\'</code>\ncommand.</p></li>\n<li><p>It collects the directories you have visited into a database and\ngives them a ranking relating to the number of times they have been\nvisited. It applies aging rules and removes these when the ranking drops\nbelow one. It uses <em>frecency</em> to do this - a combination of\nfrequency and recency. (<a\nhref=\"https://en.wikipedia.org/wiki/Frecency\">See the Wikipedia page\nexplaining this word</a>)</p></li>\n<li><p>It performs algorithmic matching on the directory you specify and\ntakes you to the highest ranking best match.</p></li>\n<li><p>It can resolve conflicts between matching directories or can\nallow selection through an interactive interface.</p></li>\n<li><p>It can interface to <code>fzf</code>, a general-purpose\ncommand-line fuzzy finder.</p></li>\n<li><p>It “knows” where it is (in the Bash shell) by calling a function\nout of the <code>PROMPT_COMMAND</code> variable. This can be used to\nexecute one or more commands before displaying the prompt for a new\ncommand. This is a common way to <em>hook</em> monitoring commands into\na Bash session.</p></li>\n</ul>\n<h3 id=\"where-can-you-get-it\">Where can you get it?</h3>\n<p>I installed it from the Debian Testing repo, but I got\n<code>\'zoxide v0.4.3-unknown\'</code> whereas the latest version is\n0.9.0. Installing from the <a\nhref=\"https://github.com/ajeetdsouza/zoxide\">GitHub page</a> seems the\nbest option if you want the latest version.</p>\n<p>There is an installation script on the GitHub page and its possible\nto download it with <code>curl</code> and pipe it to Bash. Im never\ncomfortable doing this, but thats your choice.</p>\n<p>I also installed <code>fzf</code> from the Debian Testing repo,\nthough Im still learning what this can do, since its very rich in\nfeatures!</p>\n<h3 id=\"how-do-you-set-it-up\">How do you set it up?</h3>\n<p>This process is shell-specific. I run Bash so I have added it to my\n<code>~/.bashrc</code> and the command there is:</p>\n<pre><code>eval &quot;$(zoxide init bash)&quot;</code></pre>\n<p>What this does is generate a number of Bash functions and
(3866,'2023-05-29','Introducing myself',343,'I discovered HPR at FOSDEM 2023 and want to join the party','<p>Hello, my name is Andr&#xE9; Jaenisch. You can find myself online under\nRyuno-Ki as well.</p>\n<p>This is my first episode on Hacker Public Radio!<br />\nIt is recorded on 8th May 2023 using Audacity.<br />\nIt is published under a Creative Commons Attribution Share-Alike 4.0\nInternational License.</p>\n<p>Today I want to introduce myself.<br />\nI\'m a web developer for ten years now and recently turned into a\nfreelancer.<br />\nMy area of expertise is with Frontend technologies, although I also know\nNode.js and Python. I taught myself these languages because my studies\nin mathematics did not cover them.<br />\nDuring my studies I switched to GNU/Linux. I started with Ubuntu but\ndiscovered that I prefer Rolling Release distributions more. So I jumped\nto Sabayon Linux which was based on Gentoo back then but pre-compiled\nthe binaries while staying compatible. Now they decided to turn into\nanother direction so I was looking for another home. I tried Gecko Linux\nbased on openSUSE for a while until they had bad news in the press. I\'m\ncurrently running Kaisen Linux which is based on Debian Bookworm.</p>\n<p>Speaking of, I love to read. I have whole shelves filled with books\nhere.<br />\nThere is so much to learn from books even in the age of the Internet. I\nenjoy that they have a finite amount of content you can walk\nthrough.</p>\n<p>I learned about Hacker Public Radio at FOSDEM 2023. When I mentioned\nthat I have a RODE NT-USB microphone at home already I was encouraged to\ncontribute to the show. Now I have been listening to the podcast since\nthe beginning of the year and already heard some of the emergency shows.\nI noticed that the hackers on the show are mainly from the United\nStates. I hope you welcome people from other parts of the world as\nwell.</p>\n<p>I\'m from Germany in Europe. A beautiful place to live and I bet as\ndiverse as in the States when it comes to the landscape. We have more\nthan Berlin and Bavaria here!</p>\n<p>I\'m not quite sure what kind of content you would love to hear about.\nI have the requested topics page in front of me and could talk about\ndifferent items. For example, my first smartphone ever was a Firefox OS\n(I still have it. As well as a tablet).<br />\nI switched to Android with F-Droid when Mozilla was cancelling the\nproject. I\'m running on a Fairphone here, which is a small Dutch\nmanufacturer that already managed to move the whole industry into a more\nsustainable direction. Because we produce lots of waste. So I could talk\nabout that.</p>\n<p>Or I could talk about building things for the web. Usually I blog\nabout that because I feel like text feels more natural to it. But then I\nsaw that some episodes contained code snippets in the show notes.</p>\n<p>I could talk about mathematics. We don\'t have enough podcasts about\nmath! My focus was on statistics and numerics so that might be\ninteresting?</p>\n<p>What I would love to hear more about is music theory. You see I\nhaven\'t learned to play an instrument in my life. Mainly because those\nare expensive. My personal taste goes more into heavy metal but I\'m not\nsure whether you would call me a fan. What does make a metalhead anyway?\nBut in order to improve my game development having some sort of music\nand sound effects is important. So I was really enjoying the episode\n3792 on reading music sheets. I lend some books on the library to learn\nmore. These subjects weren\'t covered in depth in my school days!</p>\n<p>Another subject I would like to learn more about is electronics.\nEspecially repairing one\'s computers. Look, I\'m using ThinkPads since\nyears now. I have a X250 (from FOSDEM) in current use. But I also have a\nX200 and a T520 gathering dust here. Mainly because something &#x201E;broke&#x201D;\nwith the hardware and I\'m too afraid to crack them open.<br />\nThen there\'s a HP Pavilion standing under my desk to wait for repair.\nAnd even one of the old machines from the DOS era with an o
(3837,'2023-04-18','Make a vortex cannon',448,'How to make a vortex cannon which can extinguish a candle at about ten feet','<h2>Make a Vortex Cannon.</h2>\n\n<p>This is a device for firing a coherent torus-shaped vortex across a room. If it is made with a degree of care, it will extinguish the flame of a candle from some distance.</p>\n\n<h3>What you will need</h3>\n\n<ol>\n<li>An empty Pringles can. This is the cylindrical foil-lined cardboard tube which originally contained Pringles potato chips.</li>\n<li>A party balloon.</li>\n<li>Some strong parcel tape.</li>\n<li>A hole punch capable of making a clean hole of about two centimetres (three quarters of an inch) in diameter.</li>\n<li>A small drill.</li>\n</ol>\n\n<h3>What to do</h3>\n\n<h4>Step 1:</h4>\n\n<p>Drill a small hole in the metal end-plate of the Pringles can. This hole needs to be large enough to accommodate the threaded portion of the hole punch.</p>\n\n<p>The hole needs to be as close to the exact dead-centre of the plate as you can make it.</p>\n\n<p>Use the hole punch to make as clean as possible a hole as accurately as possible.</p>\n\n<p>Here in the UK it is possible to obtain a hole punch called a Q-Max punch from Maplin, the supplier of electronic and hobby parts.</p>\n\n<p>I am sure they are available from other sources.</p>\n\n<p>It is very important that this hole is:</p>\n\n<ul>\n<li>As close to the centre of the end-plate as is humanly possible</li>\n<li>Has edges which are clean and crisp. Hence the use of a hole punch.</li>\n</ul>\n\n<p>It is these two factors more than any other that will effect the efficiency of the cannon.</p>\n\n<h4>Step 2:</h4>\n\n<p>Cut off the mouth-piece end of the balloon.</p>\n\n<p>Stretch it over the open end of the Pringles can and pull it as tight over the end as you can.</p>\n\n<p>When I say the open end I mean the end from which you removed the lid and chomped on the chips.</p>\n\n<p>Use the parcel tape to wrap the balloon tightly around the circumference of the cylinder, anchoring it in position so that the open end of the can is now like a drum formed by the stretchy membrane of the balloon. Nice and tight.</p>\n\n<p>The cannon is now ready to fire.</p>\n\n<h3>Firing the cannon</h3>\n\n<p>Pinch the centre of the balloon membrane and pull it back as far as you can. This might be easier if you push some kind of (blunt ended) rod into the can from the hole end and push out the membrane until you can pinch it.</p>\n\n<p>Some other stretchy latex device which has a little bulb at the end might be easier to get hold of, but I can\'t think of such an item, can you?</p>\n\n<p>When you let go of the membrane with it stretched out as far as you can go, what happens?</p>\n\n<p>Well, if you made the small circular hole at the metal-plate end of the cylinder nice and clean and central, the cannon fires a coherent vortex of air.</p>\n\n<p>What do I mean by a \'vortex\'?</p>\n\n<p>Imagin a ring doughnut compromised of air shooting out of the end of the tube like a smoke ring out of a Hobbit.</p>\n\n<p>The vortex is spinning. Not like the bullet fired from a rifled barrel, but as if it is constantly trying to turn itself inside-out.</p>\n\n<p>This spinning keeps the torus (this is what the shape of a ring doughnut is called) coherent and intact for several feet.</p>\n\n<p>If you made the hole in the metal plate end of the tube nice and clean, and you stretched the balloon membrane out as far as you possibly can, the cannon is capable of blowing out the flame of a candle at about ten feet (three metres) in the still air in a room.</p>\n\n<p>As soon as it leaves the cannon, the vortex will begin to degrade and fall apart.</p>\n\n<p>A word of warning</p>\n\n<p>This little toy might only be firing a torus of air, but do not be tempted to shoot yourself or the cat in the face at point blank range. It hurts.</p>\n\n<p>Mike</p>\n\n',282,0,0,'CC-BY-SA','vortex cannon, make, torus',0,0,1),
(3838,'2023-04-19','Biking to Work',772,'EMERGENCY SHOW: Jon Kulp records an episode while riding his bicycle to work','<h2 id=\"biking-to-work\">Biking to Work</h2>\n<p>In this episode I record while I\'m riding my bicycle to work, using my new audio adapter to plug my $2 microphone into my phone. To make the recording I used the Hi-Q mp3 recorder app on my Android device. In the end I didn\'t do anything in post-production to adjust the volume or compression of the audio. It turned out pretty well &quot;as is.&quot;</p>\n<h2 id=\"links\">Links</h2>\n<ul>\n<li>SuperWhole 3.5mm 1/8&quot; Earphone Headset + Microphone Adapter to Stereo Audio Male: <a href=\"http://www.amazon.com/gp/product/B0114AB0QW\">on Amazon</a></li>\n<li><a href=\"http://www.hiqrecorder.com/\">HI-Q mp3 Voice Recorder</a></li>\n</ul>\n<h2 id=\"credits\">Credits</h2>\n<p>Music bumpers are from Kimiko Ishizaka\'s <em>The Open Goldberg Variations</em>: <a href=\"http://www.opengoldbergvariations.org/\">http://www.opengoldbergvariations.org</a>, used by permission of their <a href=\"http://creativecommons.org/publicdomain/zero/1.0/\">CC0 1.0 Universal (CC0 1.0) Public Domain Dedication license</a>.</p>\n',238,0,0,'CC-BY-SA','HighQ MP3, Bike, ZOOM Recorder.',0,0,1),
(3842,'2023-04-25','Whats in my bag series',1923,'In this episode I go through the contents of the bag I take to work.','<h1 id=\"introduction\">Introduction</h1>\n<p>A time stamp is added for each item I mention. The time stamp given\ndoes not include the intro added by HPR so you&#x2019;ll need to add a few more\nseconds to get to the the correct spot in the recording.</p>\n<p>[1:20] - I mention that if you are struggling to think of a topic for\nan HPR show then the HPR site contains a list of requested topics which\nyou can choose from. <a\nhref=\"https://hackerpublicradio.org/requested_topics.php\"\nclass=\"uri\">https://hackerpublicradio.org/requested_topics.php</a></p>\n<p>[1:55] - Picture 01 show the &#x201C;Wenger&#x201D; rucksack (Backpack) I take to\nwork. It was purchased many years ago and is probably no longer\navailable.</p>\n<p><strong>Picture 1</strong><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3842/01.jpeg\"\nalt=\"Picture 1: &#x201C;Wenger&#x201D; rucksack\" /></p>\n<h1 id=\"first-front-zip-section\">First front zip section</h1>\n<p>[3:20] - I mention that I suffered for many years with Hay fever and\nhave had great success with Mixed Pollen 30C tablets which I bought on\nAmazon. Unknown to me at the time these were Homeopathic with miniscule\nconcentration. Despite this they seems to have cured my Hay fever. Refer\nto the links below.</p>\n<p><a\nhref=\"https://en.wikipedia.org/wiki/Homeopathic_dilutions\">Wikipedia\narticle on Homeopathic dilutions</a></p>\n<p><a\nhref=\"https://www.amazon.co.uk/Weleda-Mixed-Pollen-30-Tablets/dp/B002E2HUFK/ref=sr_1_2?crid=34E5ONM7GAB4V&amp;keywords=weleda+mixed+pollen&amp;qid=1673367417&amp;s=drugstore&amp;sprefix=weleda+mixed+pollen%2Cdrugstore%2C81&amp;sr=1-2\">Amazon\nlink to Weleda Mixed Pollen 30C Tablets</a></p>\n<p>[4:20] - Link to some unremarkable Iphone headphones I use which I\nbought from Amazon. Strangely they seem to constantly fall out of my\nleft ear but remain in my right ear.</p>\n<p><a\nhref=\"https://www.amazon.co.uk/gp/product/B08TQPX2CF/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&amp;psc=1\">UGREEN\nHiTune Lightning Headphones MFi Certified In Ear Headphones with\nLightning Plug Wired Earbuds Mic In-Line Control for iPhone Compatible\nwith iPhone</a></p>\n<p>[4:43] - <a\nhref=\"https://www.decathlon.co.uk/p/hand-warmer-x10/_/R-p-161196\">Wedze\nHand warmers, link from Decathlon.</a></p>\n<h1 id=\"first-main-compartment\">First main compartment</h1>\n<p>[5:40] - Picture 02 shows the leather pouch pocket protector that I\nused to carry coins. I no longer have a use for it as I no longer carry\nchange. Despite this for some reason I still continue to carry it back\nand forward to work.</p>\n<p><strong>Picture 2</strong><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3842/02.jpeg\"\nalt=\"Picture 2: leather pouch pocket protector\" /></p>\n<p>[6:25] - Pictures 03 and 04 show the Essentials fold back clips 19mm\nI use on a daily basis to organise bundles of paperwork.</p>\n<p><strong>Picture 3</strong><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3842/03.jpeg\"\nalt=\"Picture 3: Essentials clips\" /></p>\n<p><strong>Picture 4</strong><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3842/04.jpeg\"\nalt=\"Picture 4: Essentials clips\" /></p>\n<p><a href=\"https://en.wikipedia.org/wiki/Bulldog_clip\">Wikipedia link\nto article about Bulldog clips which are not exactly the same item but\nserve the same purpose.</a></p>\n<p>[7:50] - Picture 05 shows the rubber (Eraser) I purchased from the\nNew Lanark Village Store. The proceeds go to the RNLI (Royal National\nLifeboat Institution).</p>\n<p><strong>Picture 5</strong><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3842/05.jpeg\"\nalt=\"Picture 5: eraser\" /></p>\n<p><a href=\"https://en.wikipedia.org/wiki/New_Lanark\">Wikipedia article\nabout the New Lanark Village</a><br />\n<a\nhref=\"https://www.newlanark.org/your-visit/what-to-see/97-village-store\">Link\nto New Lanark Village Store</a><br />\n<a\nhref=\"https://en.wikipedia.org/wiki/Royal_National_Lifebo
(3843,'2023-04-26','LinuxLUGCast pre-show ramblings',4348,'Lugcast participants ramble about things before the podcast','<p>I first want to apologize for my crappy show notes.</p>\n<p>That out of the way. Welcome to LinuxLUGCast episode 217 the\npre-show. Normally this gets tacked on to the end of the regular\npodcast, but Ken put out a call for shows and we figured this was the\neasiest way to get a show out. I was going to try to meet up with these\nsame people on Mumble and talk about something technical for HPR, but\nlet\'s be honest the conversation would probably still have turned into\nTV and movies, and we were already together and recording. Plus\nhopefully I can use this to convince other people to come and join the\nLugcast. We record every first and third Friday of the month using\nmumble. Check out linuxlugcast.com for all the details.</p>\n',269,0,1,'CC-BY-SA','linux,movies,TV,LUG',0,0,1),
(3845,'2023-04-28','Using tmux, the terminal multiplexer Overview',707,'Archer72 uses tmux and restores sessions between reboots','<p>Using tmux, the terminal multiplexer on multiple machines</p>\n<ul>\n<li>Terminal is ROXTerm</li>\n<li>Uncheck \'Show Menubar\'</li>\n</ul>\n<p><a href=\"https://realh.github.io/roxterm/en/index.html\"\ntitle=\"ROXTerm on Github\">ROXTerm on Github</a></p>\n<p>What is Tmux?</p>\n<p><a href=\"https://github.com/tmux/tmux/wiki\"\ntitle=\"Tmux wiki on Github\">Tmux wiki on Github</a></p>\n<p>Getting started</p>\n<p><a href=\"https://github.com/tmux/tmux/wiki/Getting-Started\"\ntitle=\"Tmux Getting Started page on Github\">Tmux Getting Started page on\nGithub</a></p>\n<p>Tmux Cheat Sheet &amp; Quick Reference</p>\n<p><a href=\"https://tmuxcheatsheet.com\" title=\"Tmux Cheat Sheet\">Tmux\nCheat Sheet</a></p>\n<p>Basic .tmux.conf</p>\n<pre><code>set -g prefix C-a\nunbind C-b\nbind C-a send-prefix\nsetw -g window-status-activity-style &quot;fg=colour27,bg=colour234,none&quot;</code></pre>\n<p>Remote .tmux.conf</p>\n<pre><code>set -g prefix C-f\nunbind C-b\nbind C-f send-prefix\nsetw -g window-status-activity-style &quot;fg=colour27,bg=colour234,none&quot;</code></pre>\n<p>Start tmux</p>\n<pre><code>tmux a -d</code></pre>\n<ul>\n<li>Split pane horizontal - Prefix + %</li>\n<li>Split pane vertical - Prefix + \"</li>\n</ul>\n<p>Tmux resurrect</p>\n<p>Key bindings</p>\n<pre><code> prefix + Ctrl-s - save\n prefix + Ctrl-r - restore</code></pre>\n<p>About</p>\n<p>This plugin goes to great lengths to save and restore all the details\nfrom your tmux environment. Here\'s what\'s been taken care of:</p>\n<ul>\n<li>all sessions, windows, panes and their order</li>\n<li>current working directory for each pane</li>\n<li>exact pane layouts within windows (even when zoomed)</li>\n<li>active and alternative session</li>\n<li>active and alternative window for each session</li>\n<li>windows with focus</li>\n<li>active pane for each window</li>\n<li>\"grouped sessions\" (useful feature when using tmux with multiple\nmonitors)</li>\n<li>programs running within a pane! More details in the restoring\nprograms doc.</li>\n</ul>\n<p>Optional:</p>\n<ul>\n<li>restoring vim and neovim sessions</li>\n<li>restoring pane contents</li>\n<li>restoring a previously saved environment</li>\n</ul>\n<p>Installing TPM (Tmux Plugin Manager) , Tmux Resurrect and Tmux\nContinuum</p>\n<ul>\n<li>In ~/.tmux/plugins/</li>\n</ul>\n<pre><code>git clone https://github.com/tmux-plugins/tpm.git\ngit clone https://github.com/tmux-plugins/tmux-resurrect.git\ngit clone https://github.com/tmux-plugins/tmux-continuum.git</code></pre>\n<ul>\n<li>In a tmux window</li>\n</ul>\n<pre><code>prefix + I</code></pre>\n<ul>\n<li><p>Installs new plugins from GitHub or any other git\nrepository</p></li>\n<li><p>Refreshes TMUX environment</p></li>\n<li><p>Create a directory ~/.tmux/resurrect/</p>\n<ul>\n<li>This is where tmux-resurrect and tmux-continuum saves are\nlocated</li>\n<li>Do nothing and tmux-continuum saves automatically every 15 mins</li>\n<li>At any time use <code>Prefix + Ctrl-s</code> to save a snapshot of\nyour session</li>\n<li>To restore a session to the last save before a reboot\n<ul>\n<li>use <code>Prefix + Ctrl-s</code></li>\n</ul></li>\n</ul></li>\n</ul>\n<p>Here are the steps to restore to a previous point in time:</p>\n<ul>\n<li>make sure you start this with a \"fresh\" tmux instance</li>\n<li>$ cd <code>~/.tmux/resurrect/</code></li>\n<li>locate the save file you\'d like to use for restore (file names have\na stamp)</li>\n<li>symlink the last file to the desired save file: $\n<code>ln -sf &lt;file_name&gt; last</code></li>\n<li>do a restore with tmux-resurrect key:\n<code>Prefix + Ctrl-r</code></li>\n</ul>\n<p>Tmux on laptop</p>\n<p><a href=\"https://hackerpublicradio.org/eps/hpr3845/tmux_laptop.conf\"\ntitle=\"Tmux local configuration file\">tmux_laptop.conf</a></p>\n<p>Tmux on remote machine</p>\n<p><a href=\"https://hackerpublicradio.org/eps/hpr3845/tmux_remote.conf\"\ntitle=\"Tmux remote configuration file\">tmux_remote.conf</a>
(3847,'2023-05-02','All about Synchrotrons',50,'Beginning of a series on Synchrotrons','<p>I moved cities a few years ago to start work at the Australian\nSynchrotron. While I\'m always going to be a software engineer, and I\'m\nnever going to be on top of all the science aspects of a synchrotron, I\nprobably now know enough to be able to put together a series all about\nsynchrotrons.</p>\n',315,0,0,'CC-BY-SA','science',0,0,1),
(3851,'2023-05-08','Firefox extensions',391,'Ken walks through a list of Extensions he has installed in Firefox and why he uses them','<p>The following is a list of the extensions I have enabled all the\ntime.</p>\n<ul>\n<li><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/absolute-enable-right-click/\">Absolute\nEnable Right Click and Copy</a> Force Enable Right Click &amp; Copy</li>\n<li><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/awesome-rss/\">Awesome\nRSS</a> Puts an RSS/Atom subscribe button back in URL bar.</li>\n<li><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/cookies-txt/\">cookies.txt</a>\nExports all cookies to a Netscape HTTP Cookie File, as used by curl,\nwget, and youtube-dl, among others.</li>\n<li><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/don-t-fuck-with-paste/\">Don\'t\nFeck With Paste</a> This add-on stops websites from blocking copy and\npaste for password fields and other input fields.</li>\n<li><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/multi-account-containers/\">Firefox\nMulti-Account Containers</a> Lets you keep parts of your online life\nseparated into color-coded tabs. Cookies are separated by container,\nallowing you to use the web with multiple accounts.</li>\n<li><a href=\"https://tools.google.com/dlpage/gaoptout\"><a\nhref=\"https://tools.google.com/dlpage/gaoptout\">https://tools.google.com/dlpage/gaoptout</a></a>\nTells the Google Analytics JavaScript not to send information to Google\nAnalytics.</li>\n<li><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/keepassxc-browser/\">KeePassXC-Browser</a>\nOfficial browser plugin for the KeePassXC password manager (<a\nhref=\"https://keepassxc.org\">https://keepassxc.org</a>) the\nCross-platform Password Manager</li>\n<li><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/modheader-firefox/\">ModHeader\n- Modify HTTP headers</a> Modify HTTP request headers, response headers,\nand redirect URLs</li>\n<li><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/\">uBlock\nOrigin</a> Finally, an efficient blocker. Easy on CPU and memory.</li>\n<li><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/user-agent-switcher-revived/\">User-Agent\nSwitcher</a> Switch between popular useragent strings from toolbar\npopup!</li>\n</ul>\n',30,0,0,'CC-BY-SA','Extensions,Firefox,Security,Copy,Paste,Block,Privacy',0,0,1),
(3848,'2023-05-03','Editing Thunderbird email filters using vim.',1845,'Sgoti uses vim sessions to quickly edit his email filters.','<h3 id=\"prerequisites\">Prerequisites:</h3>\n<ul>\n<li>Backups of <strong>ALL</strong> your data (<em>especially your\nThunderbird directory</em>).<br />\n</li>\n<li><strong>Confirm your backups</strong> are working as expected.<br />\n</li>\n<li>Vim text editor installed with at least a basic/novice level\nknowledge of vim.<br />\n</li>\n<li>Thunderbird email client installed with at least a basic/novice\nlevel knowledge of the Thunderbird email client.<br />\n</li>\n<li>Web browser (preferably Firefox).<br />\n</li>\n</ul>\n<h3 id=\"thunderbird-directories.\">Thunderbird Directories.</h3>\n<p>I&#x2019;m on a GNU/Linux system (Pop_OS!) and I have Thunderbird installed\nvia the apt system package manager (.deb).</p>\n<ul>\n<li>System package manager install.\n<ul>\n<li><code>$HOME/.thunderbird/</code></li>\n</ul></li>\n<li>Snap package manager install.\n<ul>\n<li><code>$HOME/snap/.thunderbird/</code></li>\n</ul></li>\n<li>Flatpak package manager install.\n<ul>\n<li><code>$HOME/.var/.thunderbird/</code></li>\n</ul></li>\n<li>Windows 10 install.\n<ul>\n<li><code>C:\\Users\\your-account\\AppData\\Roaming\\Thunderbird\\</code></li>\n</ul></li>\n<li>Your Thunderbird email filters are located in this subdirectory\n(<em>msgFilterRules.dat</em>).\n<ul>\n<li><code>$HOME/.thunderbird/*.default-release/ImapMail/imap.email-accounts.com/msgFilterRules.dat</code></li>\n</ul></li>\n</ul>\n<h3 id=\"vim-directories.\">Vim Directories.</h3>\n<p>I&#x2019;ve created subdirectories within <code>$HOME/.config/</code> as a\nplace to store my vim sessions. You may not have these directories on\nyour system, but you can create them using the <code>mkdir</code>\ncommand.<br />\n</p>\n<ul>\n<li><code>$HOME/.config/vim/sessions/session-files-here.vim</code></li>\n</ul>\n<h3 id=\"vim-session-file.\">Vim session file.</h3>\n<p>I&#x2019;ve created session files for purposes of editing my Thunderbird\nemail filters. This session only stores the shortcuts needed to make\nflawless edits to my email filters. I will share them with you.<br />\n</p>\n<pre><code>nnoremap &lt;leader&gt;1 2dw$x0:s/ OR /\\rOR /g&lt;CR&gt;\nnnoremap &lt;leader&gt;2 Icondition=&quot;&lt;Esc&gt;A&quot;&lt;Esc&gt;0:s/ &quot;$/&quot;/&lt;CR&gt;\nnnoremap &lt;leader&gt;n1 gg0VG:s/$/ /&lt;CR&gt;gg0VG:s/ *$/ /&lt;CR&gt;gg0\nnnoremap &lt;leader&gt;s1 gg02f,&lt;C-v&gt;G$ugg02f,&lt;C-v&gt;G$:sort u&lt;CR&gt;gg0</code></pre>\n<h3 id=\"web-sources.\">Web sources.</h3>\n<ul>\n<li><strong>Article:</strong> <a href=\"https://www.vim.org/\"\ntitle=\"Vim is a highly configurable text editor built to make creating and changing any kind of text very efficient.\">Vim\n- the ubiquitous text editor</a><br />\n<ul>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://www.truth.sk/vim/vimbook-OPL.pdf\"\ntitle=\"Vim Documentation: The vim book (pdf file).\">Vim Documentation:\nThe vim book (pdf file).</a><br />\n</li>\n</ul></li>\n<li><strong>Article:</strong> <a\nhref=\"https://www.thunderbird.net/en-US/\"\ntitle=\"Make Email Easier.\">Thunderbird is a free email application\nthat&#x2019;s easy to set up and customize...</a><br />\n<ul>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://support.mozilla.org/en-US/products/thunderbird\"\ntitle=\"Thunderbird Support site.\">Thunderbird Support site.</a><br />\n</li>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://support.mozilla.org/en-US/kb/keyboard-shortcuts-thunderbird?redirectslug=keyboard-shortcuts&amp;redirectlocale=en-US\"\ntitle=\"Keyboard shortcuts\">Keyboard shortcuts. Perform common\nThunderbird tasks quickly.</a><br />\n</li>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://support.mozilla.org/en-US/kb/protect-your-thunderbird-passwords-primary-password\"\ntitle=\"Primary Password has replaced Master Password.\">Protect your\nThunderbird passwords with a Primary Password.</a><br />\n</li>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://support.mozilla.org
(3852,'2023-05-09','UDM ubiquiti Setup for 2023',634,'I talk briefly about my UDM router setup for 2023','<p>UDM / Piehole script:<br />\n<a\nhref=\"https://github.com/freeload101/SCRIPTS/blob/master/Bash/UDM_Unifi_Block_Ads.sh\"\nclass=\"uri\">https://github.com/freeload101/SCRIPTS/blob/master/Bash/UDM_Unifi_Block_Ads.sh</a></p>\n',36,0,0,'CC-BY-SA','wireless,computers,networking',0,0,1),
(3853,'2023-05-10','Creating a Prompt for ChatGPT to generate an HPR show',613,'A rushed episode going over the steps I used to create a ChatGPT prompt to generate an HPR episode','<h1 id=\"introduction\">Introduction</h1>\n<p>Hello and Welcome hacker public radio audience my name is &#x2026; and\nwelcome to this podcast.</p>\n<p>As usual I\'d like to thank the people at HPR for making this service\navailable to us all on these here inter-tubes. Hacker Public Radio is a\ncommunity led podcast provided by the community for the community. That\nmeans you can contribute too.</p>\n<p>In this episode I decided to see if I could get get ChatGPT to write\nan HPR episode about itself. I was initially reluctant to do this.\nHowever, since HPR was recently short on shows and I was rather short on\ntime and ideas I decided to give it a go.</p>\n<p>One reason for my reluctance was that I didn\'t want HPR to be flooded\nwith shows generated by ChatGPT. The other reason being that a great\nshow covering ChatGPT was previously provided by the hpr host \"dnt\"\nentitled \"Chatbot hallucination\". Refer to 3803 <a\nhref=\"https://hackerpublicradio.org/eps.php?id=3803\">https://hackerpublicradio.org/eps.php?id=3803</a>.\nIn comparison, my poor attempt took about 10 minutes to generate while I\nwas waiting to be called for lunch.</p>\n<p>Below are the steps I used to generate the prompt to generate a show\nfor HPR.</p>\n<p>You interface with ChatGPT by providing it prompts. This just means\ntyping some text into the input field within the ChatGPT website.</p>\n<h1 id=\"the-steps-i-used-to-produce-the-chatgpt-prompt\">The steps I used\nto produce the ChatGPT prompt</h1>\n<p>Here is how I did it. Keep in mind that the complete process took\njust 10 minutes.</p>\n<ul>\n<li><p>I visited the ChatGPT website at:- <a\nhref=\"https://chatgpt.org/\">https://chatgpt.org/</a></p></li>\n<li><p>I copied and pasted the following prompt into ChatGPT. The text\nfor this prompt came from the following youtube video: <a\nhref=\"https://www.youtube.com/watch?v=OgYQAS9LY3o\">\"The ONE ChatGPT\nPrompt to Rule Them All\" by Jason West </a> :-</p>\n<ul>\n<li><p>I want you to become my Prompt Creator. Your goal is to help me\ncraft the best possible prompt for my needs. The prompt will be used by\nyou, ChatGPT. You will follow the following process:</p>\n<ol type=\"1\">\n<li><p>Your first response will be to ask me what the prompt should be\nabout. I will provide my answer, but we will need to improve it through\ncontinual iterations by going through the next steps.</p></li>\n<li><p>Based on my input, you will generate 3 sections.</p>\n<p>a) Revised prompt (provide your rewritten prompt. It should be clear,\nconcise, and easily understood by you),</p>\n<p>b) Suggestions (provide suggestions on what details to include in the\nprompt to improve it), and</p>\n<p>c) Questions (ask any relevant questions pertaining to what\nadditional information is needed from me to improve the\nprompt).</p></li>\n<li><p>We will continue this iterative process with me providing\nadditional information to you and you updating the prompt in the Revised\nprompt section until it\'s complete.</p></li>\n</ol></li>\n</ul></li>\n</ul>\n<h2 id=\"chatgpt-responded-with-\">ChatGPT responded with:-</h2>\n<blockquote>\n<p>Sounds like a fun and collaborative process! What should the prompt\nbe about?</p>\n</blockquote>\n<h2 id=\"i-replied-with-the-following-prompt-\">I replied with the\nfollowing prompt:-</h2>\n<blockquote>\n<p>Write a show for the hacker public radio podcast describing the\nhistory and use of ChatGPT. Include some examples about what it can be\nused for. Also include some relevant web links about ChatGPT.</p>\n</blockquote>\n<h2 id=\"chatgpt-responded-with--1\">ChatGPT responded with:-</h2>\n<blockquote>\n<p>Great! Based on your input, here are the revised prompt, suggestions,\nand questions for further clarification:</p>\n</blockquote>\n<h3 id=\"revised-prompt\">Revised prompt:</h3>\n<blockquote>\n<p>Create a Hacker Public Radio podcast episode that explores the\nhistory and ap
(3863,'2023-05-24','HPR episode about ChatGPT produced by ChatGPT',553,'In this article I gave ChatGPT a prompt and it produced an HPR episode about ChatGPT','<h1 id=\"introduction\">Introduction:</h1>\n<p>This is part 2 of my Chat GPT episode. (For part 1 refer to\nHPR3853)</p>\n<p>Incidentally I was quite surprised how long it took me to pull\ntogether part 1. This was primarily because I had to do all the work\ncreating the show notes. Part 2 should be a lot quicker since most of\nthe work including formatting the article in markdown was done by\nChatGPT.</p>\n<p>The only change I made to the episode created by ChatGPT was to\ncorrect a minor markdown formatting error in the OpenAI link at the\nbottom of the article.</p>\n<h1 id=\"the-following-article-was-produced-by-chatgpt\">The following\narticle was produced by ChatGPT</h1>\n<p>It was produced from the following prompt. The prompt itself was\nmostly written by ChatGPT with minimal input from myself. The prompt\ntook me 10 minutes to produce. Refer to my previous episode HPR3853.</p>\n<h2 id=\"prompt-used-to-create-hpr-episode\">Prompt used to create HPR\nepisode:</h2>\n<ul>\n<li><p>Create a Hacker Public Radio podcast episode exploring the\nhistory and applications of Chat GPT, an artificial intelligence\nlanguage model developed by OpenAI. Chat GPT has become increasingly\npopular due to its ability to understand and generate human-like text,\nand its applications span a wide range of industries and\nfields.</p></li>\n<li><p>In this episode, we will dive into the development of Chat GPT,\nincluding who created it and when. We will explore the technology behind\nit and how it has evolved over time.</p></li>\n<li><p>We will also provide clear and concise examples of how Chat GPT\ncan be used in various industries and fields, such as customer service,\ncontent creation, and chatbots. For example, Chat GPT can be used to\ngenerate personalized responses to customer inquiries in real-time,\ncreate high-quality content for websites and social media platforms, and\npower chatbots that can assist with a range of tasks.</p></li>\n<li><p>Additionally, we will highlight the benefits and limitations of\nusing Chat GPT, including its ability to learn and adapt to user inputs\nand the potential ethical concerns surrounding its use. As Chat GPT\ncontinues to grow in popularity, it is important to consider the\nimplications of using AI technology that can generate human-like text,\nsuch as the potential for bias and misinformation.</p></li>\n<li><p>To provide listeners with more information, we will include\nrelevant web links, such as the official OpenAI website and articles\nabout the latest developments in Chat GPT technology.</p></li>\n<li><p>Provide real-world examples of how Chat GPT has been used in\nvarious industries and fields.</p></li>\n<li><p>Discuss the potential future applications of Chat GPT and where\nthe technology may be headed.</p></li>\n<li><p>Address any common misconceptions or concerns about the use of AI\nlanguage models like Chat GPT.</p></li>\n<li><p>This episode will cater to a general audience while also diving\ninto more technical details for listeners with Linux, IT, or programming\nexperience.</p></li>\n<li><p>The episode should be approximately 1000 words long.</p></li>\n<li><p>Format the article using markdown as required.</p></li>\n</ul>\n<h2\nid=\"the-episode-created-by-chatgpt-all-nicely-formated-in-markdown\">The\nepisode created by ChatGPT all nicely formated in Markdown:</h2>\n<hr />\n<h1 id=\"hpr-episode-exploring-chat-gpt\">HPR Episode: Exploring Chat\nGPT</h1>\n<h2 id=\"introduction-1\">Introduction</h2>\n<p>In recent years, artificial intelligence (AI) has become an\nincreasingly popular topic in various industries and fields. One such\nexample is Chat GPT, an AI language model developed by OpenAI. Chat GPT\nhas the ability to understand and generate human-like text, making it a\npowerful tool for customer service, content creation, and chatbots. In\nthis episode, we will dive into the history and applications of Chat\nGPT.</p>\n<h2
(3883,'2023-06-21','Emergency Show: How to demonstrate the power of condensing steam',483,'A kitchen experiment to demonstrate the power of condensing steam','<h2>A kitchen experiment to demonstrate the power of condensing steam</h2>\n\n<p>What do you think about when you consider how a steam engine works?</p>\n\n<p>Well you probably think about a fire used to heat water in a pressure vessel to form super-heated steam.</p>\n\n<p>Then that steam is injected into cylinders in a controlled and sequenced manner to push a piston up the length of the cylinder. Piston rods and cranks are used to change the linear motion into rotary motion to drive wheels or gears.</p>\n\n<p>Inertia causes the rotary motion, through the same cranks and rods, to expel the spent steam from the cylinder, before the whole cycle begins again.</p>\n\n<p>But that\'s only half the story.</p>\n\n<p>Steam engines also use the power of a partial vacuum created by condensing steam to produce linear motion in the same way, or to suck the hot products of combustion from the fire through pipes which pass through the pressure-vessel and heat the water.</p>\n\n<h3>What you will need for the experiment</h3>\n\n<ol>\n<li>An empty drinks can, such as a 330ml soda can.</li>\n<li>A shallow container, such as a baking tray.</li>\n<li>A pair of barbecue tongs or kitchen tongs with which you will be able to grasp a hot can without burning your hand or getting too close to the heat.</li>\n<li>A source of heat, the cooker top in the kitchen is ideal.</li>\n</ol>\n\n<h3>How to do it</h3>\n\n<h4>Step 1:</h4>\n\n<p>Thoroughly wash out the empty can. Any sugary residue might burn and smell.</p>\n\n<p>Put about a centimetre (half an inch) of water into the can. Enough to cover the centre of the concave end of the can inside.</p>\n\n<h4>Step 2:</h4>\n\n<p>Place your shallow container next to your source of heat. This will most probably be a baking tray on the kitchen worktop next to the cooker where you will heat your can.</p>\n\n<p>Put about a centimetre (half an inch) of cool water in the tray.</p>\n\n<h4>Step 3:</h4>\n\n<p>Place your can on the heat. It will quickly begin to boil because it only contains a small amount of water.</p>\n\n<p>Wait until the water is really boiling and filling the can with steam.</p>\n\n<p>Grasp the can with the tongs. You need to do this in an underhand grip which will allow you to, in one swift and smooth motion, remove the can from the heat, turn it over and plunge the open end into the cool water in the tray.</p>\n\n<p>Do exactly that. As swiftly and smoothly as you can.</p>\n\n<p>Here you will see the need for a vessel like a baking tray, the larger target makes the quick and smooth transfer of the can from the heat to the condensing cool water easier.</p>\n\n<p>What happens?</p>\n\n<p>The can is full of steam, which will instantly condense when the open end of the can is plunged into the cool water.</p>\n\n<p>Bam!</p>\n\n<p>The partial vacuum created in the can will cause it to be very quickly and impressively crushed.</p>\n\n<p>The power of a partial vacuum is far easier to harness and is more powerful than pushing a piston along a cylinder with pressurised steam.</p>\n\n<p>The mechanism of an efficient steam engine will inject pressurised steam into a cylinder during the phase of motion where the piston is pushed up the length of the cylinder, and inject a small amount of cold water into the cylinder fractionally after the full travel of the piston and as it is just beginning the return stroke. In this way the cylinder is both pushed and pulled up and down the cylinder.</p>\n\n<p>But the condensing part of the cycle is far more efficient at pulling the piston than the steam injection phase is at pushing it.</p>\n\n<p>The dramatic \'chugging\' of a steam engine as it pulls away from a station is the part of the sequence in which condensing steam is used to create a partial vacuum in the smoke-box at the front of the engine. The hot products of combustion are drawn by this partial vacuum from the fire at the far end of the engine,
(3849,'2023-05-04','trouble shooting',610,'don\'t over look the obvious','<p><em>Kernel message</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3849/01.kernel_message.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3849/01.kernel_message_thumbnail.kernel_message.jpg\"\nalt=\"Kernel message\" /></a> <br/><small><small><em>Click the thumbnail\nto see the full-sized image</em></small></small></p>\n<p><em>BIOS message</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3849/02.bios_message.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3849/02.bios_message_thumbnail.bios_message.jpg\"\nalt=\"BIOS message\" /></a> <br/><small><small><em>Click the thumbnail to\nsee the full-sized image</em></small></small></p>\n<p><em>CMOS</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3849/03.cmos.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3849/03.cmos_thumbnail.cmos.jpg\"\nalt=\"CMOS\" /></a> <br/><small><small><em>Click the thumbnail to see the\nfull-sized image</em></small></small></p>\n<p><em>RAM</em><br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3849/04.ram.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3849/04.ram_thumbnail.ram.jpg\"\nalt=\"RAM\" /></a> <br/><small><small><em>Click the thumbnail to see the\nfull-sized image</em></small></small></p>\n<p><em>Mother board side</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3849/05.mother_board_side.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3849/05.mother_board_side_thumbnail.mother_board_side.jpg\"\nalt=\"Mother board side\" /></a> <br/><small><small><em>Click the\nthumbnail to see the full-sized image</em></small></small></p>\n<p><em>The culprit</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3849/06.the_culprit.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3849/06.the_culprit_thumbnail.the_culprit.jpg\"\nalt=\"The culprit\" /></a> <br/><small><small><em>Click the thumbnail to\nsee the full-sized image</em></small></small></p>\n',326,0,0,'CC-BY-SA','repair, trouble shooting',0,0,1),
(3855,'2023-05-12','SSH (or OpenSSH) Escape Sequences',592,'Claudio talks about OpenSSH escape sequence features.','<ul>\n<li>BSD Now Episode 504: <a href=\"https://www.bsdnow.tv/504\"\nclass=\"uri\">https://www.bsdnow.tv/504</a></li>\n<li>Closing a Stale SSH Connection: <a\nhref=\"https://davidisaksson.dev/posts/closing-stale-ssh-connections/\"\nclass=\"uri\">https://davidisaksson.dev/posts/closing-stale-ssh-connections/</a></li>\n<li>Using the SSH \"Konami Code\" (OpenSSH Control Sequences): <a\nhref=\"https://www.sans.org/blog/using-the-ssh-konami-code-ssh-control-sequences/\"\nclass=\"uri\">https://www.sans.org/blog/using-the-ssh-konami-code-ssh-control-sequences/</a></li>\n</ul>\n',152,0,0,'CC-BY-SA','openssh,ssh,bsd,linux,openbsd,netbsd,freebsd',0,0,1),
(3856,'2023-05-15','Painting toy soldiers',2174,'I started painting miniatures for wargames','<p>Here are the games I started painting first:</p>\n<ul>\n<li>\n<a href=\"https://boardgamegeek.com/boardgame/181304/mysterium\" target=\"_blank\">Mysterium</a>&#58; I don\'t actually like this game, but it nevertheless provided some simple plastic crystal balls that became my first paint experience.\n</li>\n<li>\n<a href=\"https://boardgamegeek.com/boardgame/192153/pandemic-reign-cthulhu\" target=\"_blank\">Pandemic: Reign of Cthulhu</a>&#58; A great game that ships with 6 hero figures and 3 shogoth figures. Very fun to paint, and I mostly used mostly cheap acrylic paint from the local art store.\n</li>\n<li>\n<a href=\"https://boardgamegeek.com/boardgame/66356/dungeons-dragons-wrath-ashardalon-board-game\" target=\"_blank\">Dungeons & Dragons: Wrath of Ashardalon Board Game</a>&#58; D&amp;D combat game with 40 miniatures of varying sizes and complexity. Really good source of cheap miniatures so you can get lots of painting practise (and you can use the miniatures in your roleplaying games and the board game).\n</li>\n</ul>\n\n<p>I have no prior experience with paint of any kind, but here are some of the resources I mentioned in the show.</p>\n\n<ul>\n<li>\nSince recording, I have invested in <a href=\"https://www.thearmypainter.com/basic-painting/spray/using-colour-primers/\" target=\"_blank\">spray-on primer</a> over the paint-on primer I mention in the episode.\n</li>\n<li>\nI\'ve been buying mostly <a href=\"https://www.games-workshop.com/en-NZ/searchResults?N=2429428449+3891072176&Nr=AND%28sku.siteId%3ANZ_gw%2Cproduct.locale%3Aen_NZ_gw%29&Nrs=collection%28%29%2Frecord%5Bproduct.startDate+%3C%3D+1683371400000+and+product.endDate+%3E%3D+1683371400000%5D\" target=\"_blank\">Citadel contrast paints</a> because they\'re readily available in New Zealand from the <strong>Warhammer</strong> (<strong>Games Workshop</strong>, in the UK) store.\n</li>\n<li>\n<a href=\"https://www.thearmypainter.com/speedpaint/\" target=\"_blank\">Speedpaint</a> by <strong>The Army Painter</strong> are similar but maybe cheaper depending on your region.</li>\n</ul>\n',78,0,0,'CC-BY-SA','game,rpg,wargame,board game,miniature,painting',0,0,1),
(4131,'2024-06-03','HPR Community News for May 2024',0,'HPR Volunteers talk about shows released and comments posted in May 2024','',159,47,1,'CC-BY-SA','Community News',0,0,1),
(3859,'2023-05-18','My Live in Devices',1305,'Just a run down on my devices','<p>A talk about things that attracted me to purchase them.</p>\n',129,0,0,'CC-BY-SA','Tablet,headphones,PCs,Laptops,Linux,Ubuntu,Lubuntu',0,0,1),
(3861,'2023-05-22','How To find Things on your home Network',707,'How to find the lost Raspberry PI Zero on your home network','<p>Hey guys I lost my Raspberry Pi Zero W - its place in the house. I am\nnot sure if it\'s on solar power running or not. But in in any case it\'s\nnot out and about at the normal locations in my home for such items.</p>\n<p>So I use an App called Network Analyzer on my Huawei phone to find\nthe IPs in use in the home.</p>\n<p>Then use putty go and see how the PI is doing.</p>\n<p>Enjoy the Show</p>\n',129,0,0,'CC-BY-SA','Raspberry PI Zero W, android phone, Network Analyzer, putty, kitty',0,0,1),
(3868,'2023-05-31','News.',695,'Sgoti reports the recent FBI criminal reports and other news.','<h2 id=\"news.\">News.</h2>\n<hr />\n<ul>\n<li><p><strong>If you like it, help me name it.</strong></p></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://www.justice.gov/usao-mdpa/pr/cambria-county-woman-charged-conspiracy-commit-health-care-fraud\"\ntitle=\"Conspiracy to commit health care fraud for defrauding Medicare.\">Cambria\nCounty Woman Charged With Conspiracy To Commit Health Care\nFraud.</a><br />\n</p>\n<ul>\n<li><strong>Author:</strong> U.S. Attorney\'s Office, Middle District of\nPennsylvania. (2023, May 11).<br />\n</li>\n<li>The United States Attorney&#x2019;s Office for the Middle District of\nPennsylvania announced that Florentina Mayko, age 39, of Cambria County,\nPennsylvania, was charged by criminal information with one count of\nconspiracy to commit health care fraud for defrauding Medicare and the\nU.S. Department of Health and Human Services between 2017 and\n2019.<br />\n</li>\n</ul></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://www.justice.gov/usao-edny/pr/congressman-george-santos-charged-fraud-money-laundering-theft-public-funds-and-false\"\ntitle=\"U.S. Attorney&#39;s Office, Eastern District of New York.\">Congressman\nGeorge Santos Charged with Fraud, Money Laundering, Theft of Public\nFunds, and False Statements.</a><br />\n</p>\n<ul>\n<li><strong>Author:</strong> U.S. Attorney\'s Office, Eastern District of\nNew York. (2023, May 10).<br />\n</li>\n<li>A 13-count indictment was unsealed today in the United States\nDistrict Court for the Eastern District of New York charging George\nAnthony Devolder Santos, better known as &#x201C;George Santos,&#x201D; a United\nStates Congressman representing the Third District of New York, with\nseven counts of wire fraud, three counts of money laundering, one count\nof theft of public funds, and two counts of making materially false\nstatements to the House of Representatives.<br />\n</li>\n</ul></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://www.justice.gov/usao-nj/pr/new-york-man-admits-credit-card-fraud\"\ntitle=\"U.S. Attorney&#39;s Office, District of New Jersey\">New York Man\nAdmits Credit Card Fraud.</a><br />\n</p>\n<ul>\n<li><strong>Author:</strong> U.S. Attorney\'s Office, District of New\nJersey. (2023, May 10).<br />\n</li>\n<li>During 2015, Lourenco opened 23 credit cards using the identities of\nthree victims he had befriended, two of whom were senior citizens.\nLourenco&#x2019;s victims did not know he was using their identities to obtain\nthe credit cards, nor did they authorize Lourenco to obtain the credit\ncards. Lourenco used the 23 credit cards to make more than $423,000 in\nunauthorized purchases. He also used the debit card for a joint bank\naccount belonging to two of the victims to make an additional $57,000 in\nunauthorized charges. Lourenco admitted that he knew at least one of his\nvictims was a vulnerable victim when he used the victim&#x2019;s identity to\ncommit his crime.<br />\n</li>\n</ul></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://www.justice.gov/usao-edok/pr/okmulgee-county-resident-sentenced-brutal-murder-0\"\ntitle=\"U.S. Attorney&#39;s Office, Eastern District of Oklahoma\">Okmulgee\nCounty Resident Sentenced For Brutal Murder.</a><br />\n</p>\n<ul>\n<li><strong>Author:</strong> U.S. Attorney\'s Office, Eastern District of\nOklahoma. (2023, May 9).<br />\n</li>\n<li>Lewis pleaded guilty to Murder in Indian Country&#x2014;Second Degree on\nSeptember 30, 2021. The investigation of the case revealed Lewis beat\nthe victim to death with a television and a coat rack after an evening\nof drinking at the victim&#x2019;s apartment. Police investigating an Emergency\nMedical Services call discovered the victim lying on the floor of his\napartment and Lewis covered in the victim&#x2019;s blood.<br />\n</li>\n</ul></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://www.justice.gov/usao-edtx/pr/california-man-convicted-health-care-kickback-conspiracy\"\ntitle=\"U.S. Attorney&#39;
(3862,'2023-05-23','Firefox Extensions',618,'Archer72 Goes over extensions used on the Desktop and yes, Mobile too.','<h3 id=\"firefox-plugins\">Firefox plugins</h3>\n<p><em><em>uBlock Origin</em></em></p>\n<p><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/ublock-origin\"\ntitle=\"uBlock Origin ad blocker\">uBlock Origin ad blocker</a></p>\n<p>Finally, an efficient blocker. Easy on CPU and memory.</p>\n<p><em><em>I don\'t care about cookies</em></em></p>\n<p><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/i-dont-care-about-cookies\"\ntitle=\"I don&#39;t care about cookies\">I don\'t care about\ncookies</a></p>\n<p>Get rid of cookie warnings from almost all websites!</p>\n<p><em><em>Bitwarden - Free Password Manager</em></em></p>\n<p><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/bitwarden-password-manager\"\ntitle=\"Bitwarden\">Bitwarden</a></p>\n<p>A secure and free password manager for all of your devices.</p>\n<p><em><em>Dark Reader</em></em></p>\n<p><a href=\"https://addons.mozilla.org/en-US/firefox/addon/darkreader\"\ntitle=\"Convert pages to Dark Mode\">Convert pages to Dark Mode</a></p>\n<p>Dark mode for every website. Take care of your eyes, use dark theme\nfor night<br />\nand daily browsing. This eye-care extension enables night mode creating\ndark<br />\nthemes for websites on the fly. Dark Reader inverts bright colors making\nthem<br />\nhigh contrast and easy to read at night.</p>\n<p>You can adjust brightness, contrast, sepia filter, dark mode, font\nsettings and<br />\nignore-list.</p>\n<p>Dark Reader doesn\'t show ads and doesn\'t send user\'s data anywhere.\nIt is fully<br />\nopen-source</p>\n<p><a href=\"https://github.com/darkreader/darkreader\"\ntitle=\"Github page for Dark Reader\">Github page for Dark Reader</a></p>\n<p><em><em>ChatGPTBox</em></em></p>\n<p><a href=\"https://addons.mozilla.org/en-US/firefox/addon/chatgptbox\"\ntitle=\"ChatGPT Extension\">ChatGPT Extension</a></p>\n<p>Integrating ChatGPT into your browser</p>\n<p><em><em>Custom Video Speed for YouTube</em></em></p>\n<p><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/custom-youtube-speed\"\ntitle=\"Extension to control Youtube speed\">Extension to control Youtube\nspeed</a></p>\n<p>Change the current &amp; default speed of YouTube&#x2122; videos by steps of\n0.1 from 0.1<br />\nup to 8.0 using sliders, buttons, and/or the keyboard.</p>\n<p><em><em>SponsorBlock for YouTube - Skip Sponsorships</em></em></p>\n<p><a href=\"https://addons.mozilla.org/en-US/firefox/addon/sponsorblock\"\ntitle=\"Block sponsors for Youtube videos\">Block sponsors for Youtube\nvideos</a></p>\n<p>Skip sponsorships, subscription begging and more on YouTube videos.\nReport<br />\nsponsor on videos you watch to save others\' time. SponsorBlock lets you\nskip<br />\nover sponsors, intros, outros, subscription reminders, and other\nannoying parts<br />\nof YouTube videos. SponsorBlock is a crowdsourced browser extension that\nlets<br />\nanyone submit the start and end times of sponsored segments and other\nsegments<br />\nof YouTube videos. Once one person submits this information, everyone\nelse with<br />\nthis extension will skip right over the sponsored segment.</p>\n<p>You can also skip over non music sections of music videos.</p>\n<p>Supports Invidious, old YouTube and mobile YouTube.</p>\n<p><em><em>Tab Stash</em></em></p>\n<p><a href=\"https://addons.mozilla.org/en-US/firefox/addon/tab-stash\"\ntitle=\"Extension to stash tabs in a timestamped sidebar\">Extension to\nstash tabs in a timestamped sidebar</a></p>\n<p>A no-fuss way to save and restore batches of tabs as bookmarks.</p>\n<p><em><em>Tridactyl</em></em></p>\n<p><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/tridactyl-vim\"\ntitle=\"Extension to browse Firefox with vim keybindings\">Extension to\nbrowse Firefox with vim keybindings</a></p>\n<p>Vim, but in your browser. Replace Firefox\'s control mechanism with\none modelled<br />\non Vim. This addon is very usable, but is in an early stage of\ndevelopment. We<br />\nintend to implement the majorit
(3865,'2023-05-26','When did the Internet get so boring?',1912,'Thoughts about the modern WWW','<p>You can run a Gopher or Gemini site on <a href=\"http://sdf.org/\" target=\"_blank\">SDF</a></p>\n\n<p>You can see some Gemini sites on <a href=\"https://portal.mozz.us/gemini/gem.sdf.org/\" target=\"_blank\">gem.sdf.org</a></p>\n\n',78,99,0,'CC-BY-SA','gopher,gemini',0,0,1),
(3867,'2023-05-30','Leap 15.4 Docker Install',623,'Install Leap 15.4 and Docker on an Fuji SN900 Thin Client','<p>Hi Team hope you guys are great.<br />\nI did an upgrade from 15.3 to 15.4 in leap.</p>\n<p>Then I installed docker.</p>\n<p>The hello word container</p>\n<p>And then the ubuntu bash container.</p>\n<p>https://en.opensuse.org/Docker<br />\nhttps://github.com/nextcloud/docker<br />\nhttps://doc.owncloud.com/server/10.12/admin_manual/installation/docker/</p>\n',129,0,0,'CC-BY-SA','leap, docker, 15.3, 15.4, suse, ubuntu',0,0,1),
(3876,'2023-06-12','Recording An Episode For Hacker Public Radio',478,'Sharing My Experience As A First-Time Contributor','<p>Hello again, my name is Andr&#xE9; Jaenisch, also known as Ryuno-Ki.</p>\n<p>Last week I recorded my first episode for Hacker Public Radio, the\npodcast you are listening to right now. This one is recorded on 15th May\n2023. Again I\'m publishing it under a Creative Commons Attribution\nShare-Alike 4.0 International License.</p>\n<h2 id=\"getting-contacted\">Getting contacted</h2>\n<p>I was surprised to get mentioned on the Fediverse after submitting my\nshow. You can find me there at RyunoKi@layer8.space (no dash, eight as\ndigit, link in the shownotes) in case you want to reach out to me.</p>\n<p>I\'m also delighted to have received an email even before my last\nepisode was airing. I was asked whether I am interested in recording an\nepisode on my experience with contributing to Hacker Public Radio for\nthe first time. So this is going to be the topic for today. As a warning\nupfront: I have a reputation of overthinking stuff. I blame my\nneurodiversity for it. That being said I\'m positive that sharing my\nthought process can help make the service better for everyone.</p>\n<h2 id=\"about-recording-software\">About recording software</h2>\n<p>I\'m recording this episode again using Audacity. Now there is choice\nabout which software you can use for a podcast. Online based as well as\noffline one. Audacity was in the news for sending analytics home.\nHowever I couldn\'t find any indication in the settings for it (to\nopt-out). The forks of the software weren\'t packaged up for Debian as\nfar as I could tell. Or perhaps they require an additional sources.list\nentry, I don\'t know.</p>\n<p>Before recording my very first podcast here I had only experience\nwith some video recording. Oftentimes done by the host but I also\nprepared a few videos for an online course (which I couldn\'t publish\nbecause life happened) and talks I gave during the pandemic years.</p>\n<h2 id=\"learning-about-how-to-podcast\">Learning about how to\npodcast</h2>\n<p>As I often do when I enter a new subject, I went to the library and\ngrabbed some books to learn more. In particular I lended Podcasts by\nDirk Hildebrand. A <a href=\"https://shop.haufe.de/prod/podcasts\">small\nbook</a> in German published at Haufe. I add a link in the\nshownotes.</p>\n<p>Reading through it I learned that I\'m doing okay. It\'s really easy to\nstart a podcast as HPR promises! The thing I should spend some attention\non is keeping a consistent distance to the microphone, enable some level\nof feedback during the recording so that I can listen to what is\nrecorded while speaking (using my gaming headset Logitech G230) and\nprepare a script.</p>\n<p>I don\'t have to think about designing images for the show or episode\nbecause HPR will take care of that for me. It might be different if I\nstart my own podcast. Perhaps using <a\nhref=\"https://funkwhale.audio/\">Funkwhale</a> or <a\nhref=\"https://castopod.org/\">Castopod</a>. Right now I\'m not taking\nsteps towards that. Mainly because I need to rent some webspace first.\nIn my experience streaming media takes considerable amount of bandwidth.\nPair that with hosters that try hard to convince you to buy your domains\nwith them as well and the choice shrinks. I have my DNS provider\nalready, thank you very much.</p>\n<h2 id=\"adapting-lessons-learned\">Adapting lessons learned</h2>\n<p>I looked into how to do that in Audacity and I think the best I could\ndo for now is hitting on the microphone icon next to the meters in the\nupper right of the interface and enable observation before I start\nrecording. Also leaving a little bit of time before and after the\nrecording allows me to cut keyboard clicks for starting and stopping the\nrecording. In HPR 3802 I also learned about skipping silences which is a\nEffect in the Special category here. I hope I don\'t have pauses so long\nthat it warrants to truncate them.</p>\n<p>My main thought about going with Audacity was post-processing\ndirectly after
(3877,'2023-06-13','KeePass X.C. audit review.',2552,'Sgoti discusses the Keepass X.C. audit by Zaur Molotnikov','<ul>\n<li><p><strong>Article:</strong> <a href=\"https://keepassxc.org/\"\ntitle=\"Completely open source under the GPLv3 license.\">KeePassXC -\nCross-platform Password Manager.</a><br />\n</p></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://keepassxc.org/assets/pdf/KeePassXC-Review-V1-Molotnikov.pdf\"\ntitle=\"Author: Zaur Molotnikov, zaur@molotnikov.de\">KeePassXC\nApplication Security Review</a><br />\n</p>\n<ul>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://github.com/keepassxreboot/keepassxc/releases/tag/2.7.4\"\ntitle=\"Release 2.7.4\">KeePassXC Release 2.7.4</a><br />\n</li>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://github.com/keepassxreboot/keepassxc/releases/tag/2.7.5\"\ntitle=\"Release 2.7.5\">KeePassXC Release 2.7.5</a><br />\n</li>\n</ul></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://keepassxc.org/docs/KeePassXC_UserGuide\"\ntitle=\"KeePassXC Team team@keepassxc.org version 2.7.1\">KeePassXC: User\nGuide.</a><br />\n</p></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Magic_(cryptography)\"\ntitle=\"From Wikipedia, the free encyclopedia\">Magic\n(cryptography).</a><br />\n</p></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Federal_Information_Processing_Standards\"\ntitle=\"From Wikipedia, the free encyclopedia\">Federal Information\nProcessing Standards.</a><br />\n</p>\n<ul>\n<li>The Federal Information Processing Standards (FIPS) of the United\nStates are a set of publicly announced standards that the National\nInstitute of Standards and Technology (NIST) has developed for use in\ncomputer systems of non-military, American government agencies and\ncontractors. FIPS standards establish requirements for ensuring computer\nsecurity and interoperability, and are intended for cases in which\nsuitable industry standards do not already exist. Many FIPS\nspecifications are modified versions of standards the technical\ncommunities use, such as the American National Standards Institute\n(ANSI), the Institute of Electrical and Electronics Engineers (IEEE),\nand the International Organization for Standardization (ISO).<br />\n</li>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://www.nist.gov/itl/fips-general-information\"\ntitle=\"The National Institute of Standards and Technology (NIST)\">FIPS\nGeneral Information.</a><br />\n</li>\n<li>FIPS are standards and guidelines for federal computer systems that\nare developed by National Institute of Standards and Technology (NIST)\nin accordance with the Federal Information Security Management Act\n(FISMA) and approved by the Secretary of Commerce. These standards and\nguidelines are developed when there are no acceptable industry standards\nor solutions for a particular government requirement. Although FIPS are\ndeveloped for use by the federal government, many in the private sector\nvoluntarily use these standards.<br />\n</li>\n</ul></li>\n<li><p><strong>Article:</strong> <a\nhref=\"https://www.logitechg.com/en-us/products/gaming-mice/g502-hero-gaming-mouse.910-005469.html\"\ntitle=\"G502 HERO High Performance Gaming Mouse.\">G502 HERO High\nPerformance Gaming Mouse.</a><br />\n</p>\n<ul>\n<li>Dual-Mode Hyper-Fast Scroll Wheel<br />\n</li>\n<li>Unlock the scroll wheel for hyper-fast continuous scrolling to spin\nquickly through long pages, or lock it down for single click precision\nscrolling. The weighty, metal wheel delivers confident, smooth and\nsatisfying control for either mode.<br />\n</li>\n</ul></li>\n</ul>\n<hr />\n<h3 id=\"general-keepassxc-information.\">General KeePassXC Information.\n&#xA0;</h3>\n<ul>\n<li>Why KeePassXC instead of KeePassX?<br />\n<ul>\n<li>KeePassX is an amazing password manager, but hasn\'t seen much active\ndevelopment for quite a while. Many good pull requests were never merged\nand the original project is missing some features which users can expect\nfrom a modern password manager. Hence, w
(3869,'2023-06-01','5 minute war game',836,'I made up a game so I could play with my painted toy soldiers while waiting for code to compile.','<p>Grab some toy soldiers (Games Workshop, BattleTech, Lego, whatever), a handful of six-sided dice, and clear off a 20x20 cm space on your desk.</p>\n\n<p>Arrange the soldiers within the play area. Place 3d6 by each soldier.</p>\n\n<p>On its turn, a soldier may move or attack. Never both.</p>\n\n<p>To attack, remove 1d6 from a soldier\'s dice pool and roll it. Ranged attacks hit on 4 or greater. Melee attacks hit on 3 or greater.</p>\n\n<p>When a soldier takes damage, remove 1 die from its dice pool.</p>\n\n<p>When a soldier\'s dice pool is reduced by damage to 0 or less, tip it on its side to signify that it is dead.</p>\n\n<p>The last soldier or soldiers left standing when there are no dice in the play area wins.</p>\n\n<p>These rules are Creative Commons CC BY-SA 4.0, but you can also download them from <a href=\"https://notklaatu.itch.io/skuffle-wammer\" target=\"_blank\">Itch.io</a></p>\n',78,95,0,'CC-BY-SA','game,rpg,wargame,board game,miniature,painting',0,0,1),
(3872,'2023-06-06','Sgoti update with replies.',1730,'Sgoti talks about the Oh No News and replies to a few HPR shows.','<p><a href=\"https://www.hackerpublicradio.org/eps.php?id=3865\">hpr3865\n:: When did the Internet get so boring?</a><br />\n</p>\n<p><a href=\"https://www.hackerpublicradio.org/eps.php?id=3862\">hpr3862\n:: Firefox Extensions</a><br />\n</p>\n<p><a href=\"https://www.hackerpublicradio.org/eps.php?id=3860\">hpr3860\n:: Civilization II</a><br />\n</p>\n<p><a href=\"https://www.hackerpublicradio.org/eps.php?id=3857\">hpr3857\n:: Yesterday I saw a solar flare</a><br />\n</p>\n<p><a href=\"https://www.hackerpublicradio.org/eps.php?id=3856\">hpr3856\n:: Painting toy soldiers</a><br />\n</p>\n<p><a href=\"https://www.hackerpublicradio.org/eps.php?id=3851\">hpr3851\n:: Firefox extensions</a><br />\n</p>\n<p><a\nhref=\"http://hackerpublicradio.org/pipermail/hpr_hackerpublicradio.org/2023-May/015479.html\">Oh\nNo News Update email</a><br />\n</p>\n',391,0,0,'CC-BY-SA','Oh No News, Show Replies',0,0,1),
(3873,'2023-06-07','Nextcloud instance updating',153,'Automatic updating of Nextcloud Installation','<p>Things about environment:</p>\n<ul>\n<li>Headless server</li>\n<li>Nextcloud On Fedora 38</li>\n<li>Apache Web Server</li>\n<li>Nextcloud runs as apache user</li>\n<li>Nextcloud installed in alternate directory\n<code>/data/nextcloud</code></li>\n<li>Apps are being updated according to<br />\n<a href=\"http://hackerpublicradio.org/eps.php?id=3297\"\nclass=\"uri\">http://hackerpublicradio.org/eps.php?id=3297</a><br />\nAutomatically Update Nextcloud Applications via Cron</li>\n</ul>\n<pre><code>root@homeserver ~]# crontab -l -u apache\nMAILTO=NAME@domain.com\n# m h d m w\n# * * * * * command to be executed\n# - - - - -\n# | | | | |\n# | | | | +----- day of week (0 - 6) (Sunday=0)\n# | | | +------- month (1 - 12)\n# | | +--------- day of month (1 - 31)\n# | +----------- hour (0 - 23)\n# +------------- min (0 - 59)\n# m h dom mon dow command\n\n#Nextcloud\n#Cron Updates \n*/5 * * * * /usr/bin/php -f /data/nextcloud/cron.php &gt;/dev/null 2&gt;/dev/null\n#App Updates\n0 5 * * 0 /usr/bin/php /data/nextcloud/occ app:update --all 2&gt;&amp;1\n#Update Next Cloud\n0 1 * * 0 /usr/bin/php --define apc.enable_cli=1 /data/nextcloud/updater/updater.phar --no-interaction</code></pre>\n',273,0,1,'CC-BY-SA','Nextcloud,SysAdmin,Admin',0,0,1),
(3875,'2023-06-09','Parlons Linux Season 1 Episode 7, le sticky bit',340,'A sample episode from a new entry to the Free Culture Podcast list','<ul>\n<li>Website URL: <a href=\"https://parlonslinux.fr/@ParlonsLinuxFR\">https://parlonslinux.fr/@ParlonsLinuxFR</a></li>\n<li>RSS/Atom Feed URL: <a href=\"https://parlonslinux.fr/@ParlonsLinuxFR/feed.xml\">https://parlonslinux.fr/@ParlonsLinuxFR/feed.xml</a></li>\n<li>Creative Commons License: <a href=\"https://creativecommons.org/licenses/by-sa/3.0/\">CC BY-SA 3.0</a></li>\n<li>Sample Episode URL: <a href=\"https://parlonslinux.fr/@ParlonsLinuxFR/episodes/le-sticky-bit\">https://parlonslinux.fr/@ParlonsLinuxFR/episodes/le-sticky-bit</a></li>\n<li>Free Culture Podcasts: <a href=\"https://freeculturepodcasts.org/\">https://freeculturepodcasts.org/</a></li>\n</ul>\n',30,75,1,'CC-BY-SA','freeculturepodcasts,creative commons,Parlons Linux',0,0,1),
(3885,'2023-06-23','L\'apéro des Papas Manchots podcast, Rencontre avec le vétérinaire du Libre',7315,'A sample episode from the latest entry to the Free Culture Podcast','<ul>\n<li>Website URL: <a href=\"http://donkluivert.cluster1.easy-hebergement.net/\">http://donkluivert.cluster1.easy-hebergement.net/</a></li>\n<li>RSS/Atom Feed URL: <a href=\"https://feeds.feedburner.com/easy-hebergement/EuLV\">https://feeds.feedburner.com/easy-hebergement/EuLV</a></li>\n<li>Creative Commons License: <a href=\"https://creativecommons.org/licenses/by-nc-sa/4.0/\">CC BY-NC-SA 4.0</a></li>\n<li>Sample Episode URL: <a href=\"https://donkluivert.cluster1.easy-hebergement.net/2022/11/23/rencontre-avec-le-veterinaire-du-libre/\">https://donkluivert.cluster1.easy-hebergement.net/2022/11/23/rencontre-avec-le-veterinaire-du-libre/</a></li>\n<li>Free Culture Podcasts: <a href=\"https://freeculturepodcasts.org/\">https://freeculturepodcasts.org/</a></li>\n</ul>\n\n',30,75,1,'CC-BY-SA','FreeCulturePodcast,Creative Commons,L\'apéro des Papas Manchots',0,0,1),
(3879,'2023-06-15','HPR at Hillend',2747,'MrX and Dave Morriss have lunch and record a chat','<article>\n<h2 id=\"introduction\">Introduction</h2>\n<p>Hosts:</p>\n<ul>\n<li><a\nhref=\"https://hackerpublicradio.org/correspondents/0201.html\">MrX</a></li>\n<li><a\nhref=\"https://hackerpublicradio.org/correspondents/0225.html\">Dave\nMorriss</a></li>\n</ul>\n<p>We recorded this on Saturday May 20<sup>th</sup> 2023. We met in\nperson again, and as before first visited the pub called <em>The\nSteading</em> where we had lunch. Then we adjourned to Daves Citroen\ncar (<em>Studio C</em>) in the car park, and recorded a chat.</p>\n<p>The region where we met is close to a village called\n<em>Hillend</em>, which led to the show title.</p>\n<h2 id=\"topics-discussed\">Topics discussed</h2>\n<ul>\n<li>ChatGPT:\n<ul>\n<li>MrX did two shows in May using ChatGPT. He has used it more than\nDave has.</li>\n<li>MrX has an iPhone and can use ChatGPT from it. He uses it as a\nsource of information when out and about. For instance, to find out\nabout the history of <a\nhref=\"https://en.wikipedia.org/wiki/Musselburgh\">Musselburgh</a>\nHarbour.</li>\n<li>MrX has also used ChatGPT to write experimental Python scripts.</li>\n<li>There is a <a\nhref=\"https://www.ted.com/talks/greg_brockman_the_inside_story_of_chatgpt_s_astonishing_potential/c?language=en\">TED\ntalk by Greg Brockman</a>, the inventor of ChatGPT.</li>\n<li>Discussion of the <a href=\"https://callannie.ai/\"><em>Call\nAnnie</em></a> app</li>\n<li><a href=\"https://en.wikipedia.org/wiki/ELIZA\">ELIZA</a> the program\nthat was written in the 1960s and simulated conversation well enough to\nconvince people.</li>\n</ul></li>\n</ul>\n<ul>\n<li>Audacity/Tenacity audio editors:\n<ul>\n<li>Web sites: <a href=\"https://support.audacityteam.org/\">Audacity</a>\nand <a href=\"https://tenacityaudio.org/\">Tenacity</a>.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Audacity_(audio_editor)\">Audacity\nWikipedia page</a></li>\n<li>MrX and Dave have both used Audacity for several years.</li>\n<li>Audacity was forked after it was taken over by <a\nhref=\"https://mu.se/\">Muse Group</a>, and Tenacity was developed.\nHowever, it doesnt seem that there have been any releases on Tenacity\nto date.</li>\n<li>The most recent versions of Audacity have contained changes - in\nparticular the way the audio project is stored has changed. Instead of a\ndirectory filled with various files there is now a single project file\nwith the extension <code>.aup3</code> which is a SQLite database. This\nwas changed in March 2021 for Version 3.0.\n<ul>\n<li>Previously Audacity stored the project as a file called\n<code>&lt;project&gt;.aup</code> and a directory called\n<code>&lt;project&gt;_data/</code> containing sub-directories and\nfiles.</li>\n</ul></li>\n<li>MrX reports changes in the way multiple tracks are handled. Dave\nfinds that the horizontal scrollbar has disappeared (which seems to be a\nbug).</li>\n</ul></li>\n</ul>\n<ul>\n<li>Dr John Campbell:\n<ul>\n<li><a\nhref=\"https://www.youtube.com/channel/UCF9IOB2TExg3QIBupFtBDxg\">YouTube\nchannel</a></li>\n<li>During the COVID-19 epidemic the channel contained a lot of\ninformation about the SARS-CoV-2 virus, vaccines, disease, treatments,\netc, which seemed to be helpful and well researched.</li>\n<li>At one point there was a lot of talk about Ivermectin as a drug that\ncould help with the disease, but although this received no support from\nscientific research, it seemed to be receiving more and more exposure on\nthe channel.</li>\n<li>From then on the quality of the content on the channel seemed to\ndeteriorate, and it no longer seems trustworthy.</li>\n<li>Other sources have been critical, including <a\nhref=\"https://www.youtube.com/@DebunktheFunkwithDrWilson/about\"><em>Debunk\nthe Funk with Dr Wilson</em></a></li>\n</ul></li>\n</ul>\n<ul>\n<li>The Doctor Who Exhibition:\n<ul>\n<li>Dave met with Andrew Conway and Andrews friend, and all went to the\nexhibition held at the National Museum of Scotland.</li>\n<li>The exhibition contained a lot
(3878,'2023-06-14','Linux commands to gather information about your system',557,'You need this information to understand your system better','<p><a href=\"https://www.redhat.com/sysadmin/linux-system-info-commands\"\nclass=\"uri\">https://www.redhat.com/sysadmin/linux-system-info-commands</a></p>\n<ul>\n<li>The various ls commands lscpu, lsblk, lspci,</li>\n<li>The disk commands df, fdisk and mount</li>\n<li>Usbutils</li>\n<li>pciutils</li>\n</ul>\n<p>Free</p>\n<pre><code>dmidecode -t memory or -t bios or -t system</code></pre>\n',129,0,0,'CC-BY-SA','system, memory, Cpu, ls',0,0,1),
(3881,'2023-06-19','Xplane_VatSim_2022',1181,'I talk about vatsim and xplane Obsession','<p><a\nhref=\"https://github.com/freeload101/SCRIPTS/tree/master/VatSim_OLD\"\nclass=\"uri\">https://github.com/freeload101/SCRIPTS/tree/master/VatSim_OLD</a></p>\n<h1 id=\"xplane11\">Xplane11</h1>\n<p>This repo is dedicated to xplane plugin automation!</p>\n<h1 id=\"vatsim-docs\">VATSIM DOCS</h1>\n<p><a\nhref=\"https://rmccurdy.com/.scripts/downloaded/VATSIM/TRAINING_CBT_ZAE_ZTL_BIBLE_S1_S2_20210402.zip\"\nclass=\"uri\">https://rmccurdy.com/.scripts/downloaded/VATSIM/TRAINING_CBT_ZAE_ZTL_BIBLE_S1_S2_20210402.zip</a></p>\n<ul>\n<li>Scenery Zhenhao Yang: <a\nhref=\"https://forums.x-plane.org/index.php?/files/file/39173-atlanta-vfr/\"\nclass=\"uri\">https://forums.x-plane.org/index.php?/files/file/39173-atlanta-vfr/</a><br />\n<a href=\"https://simheaven.com/simdownloads/x-america/\"\nclass=\"uri\">https://simheaven.com/simdownloads/x-america/</a><br />\n<a\nhref=\"https://forums.x-plane.org/index.php?/files/file/36327-us-orthophotos/\"\nclass=\"uri\">https://forums.x-plane.org/index.php?/files/file/36327-us-orthophotos/</a>\nor <a href=\"https://verticalsims.com/vorthos/\"\nclass=\"uri\">https://verticalsims.com/vorthos/</a></li>\n</ul>\n<p><em>logic:</em></p>\n<ul>\n<li>check for admin</li>\n<li>check for xplane binary</li>\n<li>have config file and folder for plugins/resources to be\nimported</li>\n<li>prompt install of stuff if found in the folders for Ortho4XP or\nalpilotx</li>\n<li>backup files to be modified</li>\n<li>automate Ortho4XP</li>\n<li>automate alpilotx</li>\n<li>automate common plugin installs (traffic / lighting / models/planes\netc)</li>\n</ul>\n<p><em>Models:</em></p>\n<ul>\n<li>ZIBO 737-800 <a\nhref=\"https://drive.google.com/file/d/1v-mBJ92EpV5sDPbH4s-T4EYmL2WQsZJf/view?usp=sharing\"\nclass=\"uri\">https://drive.google.com/file/d/1v-mBJ92EpV5sDPbH4s-T4EYmL2WQsZJf/view?usp=sharing</a></li>\n<li>Ultimate 737-700</li>\n<li>Ultimate 737-900</li>\n<li>Flight Factor B777-200LR</li>\n<li>Default B747-400 ???</li>\n</ul>\n<p><em>Utilities:</em></p>\n<ul>\n<li>LiveTraffic</li>\n</ul>\n<p><em>Todo Plugins?:</em></p>\n<ul>\n<li><p><a\nhref=\"https://forums.x-plane.org/index.php?/files/file/50472-single-pilot-assistant-for-zibo-mod-737-800/&amp;tab=reviews&amp;sort=newest#review-81477\"\nclass=\"uri\">https://forums.x-plane.org/index.php?/files/file/50472-single-pilot-assistant-for-zibo-mod-737-800/&amp;tab=reviews&amp;sort=newest#review-81477</a></p></li>\n<li><p>Autogate</p></li>\n<li><p>FlyWithLua ?</p></li>\n<li><p>Zibo 737-800x</p></li>\n<li><p>Headshake</p></li>\n<li><p>Vivid Sky</p></li>\n<li><p>Airport Environment HD</p></li>\n<li><p>Terrain Radar</p></li>\n<li><p>Avitab</p></li>\n<li><p>VFR Photo Scenery</p></li>\n<li><p>Aerosoft MegaAirports</p></li>\n<li><p>XTraffic</p></li>\n<li><p>XPFlightplanner</p></li>\n<li><p>XSquawkBox</p></li>\n<li><p>x-vision.pro</p></li>\n<li><p>FlyWithLua</p></li>\n<li><p>betterpushback</p></li>\n<li><p>betterpushbackc ?!? (not working for my build )</p></li>\n<li><p><a href=\"http://www.xsquawkbox.net/xpsdk/mediawiki/DataRefEditor\"\nclass=\"uri\">http://www.xsquawkbox.net/xpsdk/mediawiki/DataRefEditor</a></p></li>\n<li><p>PlaneCommand</p></li>\n<li><p>SomCoders</p></li>\n<li><p>Terrain Radar</p></li>\n<li><p><a\nhref=\"https://www.reddit.com/r/flightsim/comments/7tbcsh/shoutoutreview_forkboy2s_orthophotos/\"\nclass=\"uri\">https://www.reddit.com/r/flightsim/comments/7tbcsh/shoutoutreview_forkboy2s_orthophotos/</a>\n?</p></li>\n<li><p><a\nhref=\"https://forums.x-plane.org/index.php?/files/file/43314-webfmc/\"\nclass=\"uri\">https://forums.x-plane.org/index.php?/files/file/43314-webfmc/</a></p></li>\n</ul>\n<p><em>Things to learn</em></p>\n<ul>\n<li><p>stab trim</p></li>\n<li><p>inop</p></li>\n<li><p>GPU/CPU tune <a\nhref=\"https://www.x-plane.com/manuals/desktop/#settingtherenderingoptionsforbestperformance\"\nclass=\"uri\">https://www.x-plane.com/manuals/desktop/#settingtherenderingoptionsforbestperformance</a></p></li>\n</ul>\n<p><em>Help/FAQ:</em></p>\n<ul>\n<li><p>reset FMC by set
(3886,'2023-06-26','light saber zzz ohh no!',1242,'I talk about my problem with light savers ...','<p><a\nhref=\"https://rmccurdy.com/stuff/Neopixel_Proffie_Sound_Font_ReynTime.mp4\"\nclass=\"uri\">https://rmccurdy.com/stuff/Neopixel_Proffie_Sound_Font_ReynTime.mp4</a></p>\n<p><a\nhref=\"https://rmccurdy.com/stuff/Neopixel_Proffie_Sound_Font_ReynTime.zip\"\nclass=\"uri\">https://rmccurdy.com/stuff/Neopixel_Proffie_Sound_Font_ReynTime.zip</a></p>\n<p>lightsaber in customization and skills saber <a\nhref=\"https://www.crimsondawn.com/products/mystery-box?variant=33206141681741\"\nclass=\"uri\">https://www.crimsondawn.com/products/mystery-box?variant=33206141681741</a>\nI paid $268USD for Neopixel Proffie : <a\nhref=\"https://darkwolfsabers.com/shop/ols/products/rgb-baslix-saber/v/RGB-BSL-SBR-NPX-PRF\"\nclass=\"uri\">https://darkwolfsabers.com/shop/ols/products/rgb-baslix-saber/v/RGB-BSL-SBR-NPX-PRF</a></p>\n',36,0,0,'CC-BY-SA','light sabers,star warz,cat,lul cats,memes',0,0,1),
(3882,'2023-06-20','Alternatives to the cd command',632,'Navigate your filesystem without cd','<p>Five or six ways I could think of to roam the files of your Linux computer without <code>cd</code>.</p>\n\n<h2 id=\"pushd-and-popd-dirs\">pushd and popd dirs</h2>\n<p><a href=\"https://en.wikipedia.org/wiki/Pushd_and_popd\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Pushd_and_popd</a></p>\n<p>The pushd command, when called with a filepath as an argument, saves\nthe current working directory in memory (via a directory stack) so it\ncan be returned to at any time, places the new filepath at the top of\nthe stack, and changes to the new filepath. The popd command returns to\nthe path at the top of the directory stack.</p>\n<h2 id=\"cd--\">cd -</h2>\n<p>From <code>man bash</code> An argument of - is converted to $OLDPWD\nbefore the directory change is attempted.</p>\n<h2 id=\"variables\">Variables</h2>\n<pre><code>EXPORT mydir=&quot;/path/to/file/&quot;\ncd ${mydir}</code></pre>\n<h2 id=\"history-and-histverify\">History and histverify</h2>\n<p>Using !number from the history command will execute the command</p>\n<pre><code>[user@pc ~]$ history\n1 cd tmp\n2 cd ~\n3 history\n\n[user@pc ~]$ !3\ncd tmp\n[user@pc tmp]$\n</code></pre>\n<p>from the man command</p>\n<pre><code> shopt [-pqsu] [-o] [optname ...]\n Toggle the values of settings controlling optional shell behavior.\n ...\n -s Enable (set) each optname.\n -u Disable (unset) each optname.</code></pre>\n<p>Now using !number from the history command will put the command on\nthe prompt but you need to execute it yourself</p>\n<pre><code>[user@pc ~]$ shopt -s histverify\n[user@pc ~]$ !39673\n[user@pc ~]$ cd tmp</code></pre>\n<h2 id=\"autocd-command\">autocd command</h2>\n<pre><code>[ken@kalani ~]$ shopt -s autocd\n[ken@kalani ~]$ tmp\ncd -- tmp\n[ken@kalani tmp]$ ~\ncd -- /home/ken</code></pre>\n<h2 id=\"working-without-changing-to-directory\">working without changing\nto directory</h2>\n<pre><code>[ken@kalani ~]$ ls tmp</code></pre>\n',78,42,0,'CC-BY-SA','bash,linux',0,0,1),
(3887,'2023-06-27','10 must-know commands for a new cloud admin',1499,'Learn these essential Linux commands so you know how to run your cluster','<p>Learn Linux basics so you can manage your cluster.</p>\n<p>\n<small>Added by Ken</small>\n</p>\n\n<ol>\n<li><a href=\"https://kubernetes.io/docs/reference/kubectl/\">kubectl</a></li>\n<li><a href=\"https://curl.se/\">curl</a></li>\n<li><a href=\"https://linux.die.net/man/1/unzip\">unzip</a></li>\n<li><a href=\"https://linux.die.net/man/1/tar\">tar</a></li>\n<li><a href=\"https://linux.die.net/man/8/sudo\">sudo</a></li>\n<li><a href=\"https://linux.die.net/man/1/mv\">mv</a></li>\n<li><a href=\"https://linux.die.net/man/1/chmod\">chmod</a></li>\n<li><a href=\"https://askubuntu.com/questions/320632/why-do-i-need-to-type-before-executing-a-program-in-the-current-directory\">Using ./ before a script in the current directory</a></li>\n<li><a href=\"https://linux.die.net/man/1/cd\">cd to change directory</a></li>\n<li><a href=\"https://linux.die.net/man/1/ls\">ls</a></li>\n<li><a href=\"https://linux.die.net/man/1/echo\">echo</a></li>\n<li><a href=\"https://man7.org/linux/man-pages/man1/export.1p.html\">export</a></li>\n</ol>\n\n',78,0,0,'CC-BY-SA','cloud,kubernetes,containers,pod',0,0,1),
(3893,'2023-07-05','Game card design resources',2251,'How design card','<p><strong>Concepts</strong></p>\n\n<p>A poker deck is a great starting point for developing game mechanics without getting distracted by what the game assets will look like. Playing cards have lots of unique things you can structure game play around, like two colours, four suits, face cards, Joker, and so on.</p>\n\n<p>Tarot cards add even more variety, because a tarot deck usually has unique art on every card, which provides you plenty of elements to work with. Etsy has lots of custom tarot decks that are beautifully designed by indie artists.</p>\n\n<p><strong>Design</strong></p>\n\n<p>TheGameCrafter.com has <a href=\"https://s3.amazonaws.com/www.thegamecrafter.com/templates/bridge-card.svg\" target=\"_blank\">card templates</a> for Inkscape.</p>\n\n<p>An easier option is to use LibreOffice Draw. Go to <strong>Page</strong> &gt; <strong>Page Properties</strong> &gt; and set page size to 57mm x 89mm (2.25 x 3.5 inches).</p>\n<p>Minimalism is a great tool for any content creator on a budget. Think of the simplest requirement to convey your game mechanic. If your cards look better than your game mechanics play, nobody\'s going to play your game. Spend your time and effort on the game, not the design. (There\'s a balance to be struck, though. If your game assets make no sense and people can\'t figure out how to play the game, that\'s a problem too.)</p>\n\n<p><strong>Resources</strong></p>\n<dl>\n<dd><a target=\"_blank\" href=\"http://arcmage.org/artwork\">Arcmage.org</a></dd>\n<dd><a target=\"_blank\" href=\"https://gitlab.com/notklaatu/petition-card-game\">Petition card game</a></dd>\n<dd><a target=\"_blank\" href=\"http://opengameart.org\">Open Game Art</a></dd>\n<dd><a target=\"_blank\" href=\"http://freesvg.org\">Freesvg.org</a></dd>\n</dl>\n<p>You can also look through places like Artstation.com and Deviantart.com, but finding Creative Commons and consistent-looking art is a challenge.\n</p>\n\n',78,95,0,'CC-BY-SA','game,design',0,0,1),
(3888,'2023-06-28','KeePassXC recent CVE',588,'Sgoti talks about KeePassXC\'s security model and a recent CVE.','<ul>\n<li><strong>Source:</strong> <a\nhref=\"https://keepassxc.org/blog/2023-06-20-cve-202335866/\">Discussion\non CVE-2023&#x2013;35866</a><br />\n\n<ul>\n<li><strong>Supporting Source:</strong> <a\nhref=\"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-35866\">CVE-2023-35866</a><br />\n</li>\n</ul></li>\n<li><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Security_theater\">Security\ntheater</a><br />\n\n<ul>\n<li><strong>Security theater</strong> is the practice of taking <a\nhref=\"https://en.wikipedia.org/wiki/Security\">security measures</a> that\nare considered to provide the feeling of improved security while doing\nlittle or nothing to achieve it<br />\n</li>\n</ul></li>\n<li><strong>Source:</strong> <a\nhref=\"https://keepassxc.org/docs/\">KeePassXC: Documentation and\nFAQ</a><br />\n\n<ul>\n<li><strong>Supporting Source:</strong> <a\nhref=\"https://keepassxc.org/docs/KeePassXC_GettingStarted#_backing_up_a_database_file\">KeePassXC:\nGetting Started Guide</a><br />\n</li>\n<li><strong>Supporting Source:</strong> <a\nhref=\"https://keepassxc.org/docs/KeePassXC_UserGuide\">KeePassXC: User\nGuide</a><br />\n</li>\n</ul></li>\n</ul>\n',391,0,0,'CC-BY-SA','KeePassXC, CVE-202335866',0,0,1),
(3889,'2023-06-29','comm - compare two sorted files line by line',195,'A great tool to quickly find the differences between two files','<p>From the man page \"comm - compare two sorted files line by line\"</p>\n<p>It\'s part of the core utils package and you can install it using\n<code>dnf install coreutils</code> on RPM distros, or\n<code>apt install coreutils</code> on Debian based ones.</p>\n<pre><code>[host@hpr]$ man comm\n\nCOMM(1) User Commands COMM(1)\n\nNAME\n comm - compare two sorted files line by line\n\nSYNOPSIS\n comm [OPTION]... FILE1 FILE2\n\nDESCRIPTION\n Compare sorted files FILE1 and FILE2 line by line.\n\n When FILE1 or FILE2 (not both) is -, read standard input.\n\n With no options, produce three-column output. Column one contains lines unique to FILE1,\n column two contains lines unique to FILE2, and column three contains lines common to both\n files.\n\n -1 suppress column 1 (lines unique to FILE1)\n\n -2 suppress column 2 (lines unique to FILE2)\n\n -3 suppress column 3 (lines that appear in both files)\n\n --check-order\n check that the input is correctly sorted, even if all input lines are pairable\n\n --nocheck-order\n do not check that the input is correctly sorted\n\n --output-delimiter=STR\n separate columns with STR\n\n --total\n output a summary\n\n -z, --zero-terminated\n line delimiter is NUL, not newline\n\n --help display this help and exit\n\n --version\n output version information and exit\n\n Note, comparisons honor the rules specified by &#39;LC_COLLATE&#39;.\n\nEXAMPLES\n comm -12 file1 file2\n Print only lines present in both file1 and file2.\n\n comm -3 file1 file2\n Print lines in file1 not in file2, and vice versa.\n\nAUTHOR\n Written by Richard M. Stallman and David MacKenzie.\n\nREPORTING BUGS\n GNU coreutils online help: &lt;https://www.gnu.org/software/coreutils/&gt;\n Report any translation bugs to &lt;https://translationproject.org/team/&gt;\n\nCOPYRIGHT\n Copyright &#xA9; 2022 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later\n &lt;https://gnu.org/licenses/gpl.html&gt;. This is free software: you are free to change and\n redistribute it. There is NO WARRANTY, to the extent permitted by law.\n\nSEE ALSO\n join(1), uniq(1)\n\n Full documentation &lt;https://www.gnu.org/software/coreutils/comm&gt;\n or available locally via: info &#39;(coreutils) comm invocation&#39;\n\nGNU coreutils 9.1</code></pre>\n<p>I always find that confusing, so for me it\'s a lot easier to see what\nis going on by creating some example files.</p>\n<p>First let\'s create some test files by echoing the number 1 and the\nnumber 2 into a file called <code>1and2.txt</code></p>\n<pre><code>[host@hpr]$ echo &quot;1&quot; &gt; 1and2.txt\n[host@hpr]$ echo &quot;2&quot; &gt;&gt; 1and2.txt</code></pre>\n<p>And let\'s create another one with the value 2 and 3 and we\'ll call it\n<code>2and3.txt</code></p>\n<pre><code>[host@hpr]$ echo &quot;2&quot; &gt; 2and3.txt\n[host@hpr]$ echo &quot;3&quot; &gt;&gt; 2and3.txt</code></pre>\n<p>Then we can see what each command does using these examples.</p>\n<pre><code>[host@hpr]$ comm -1 -2 1and2.txt 2and3.txt\n2\n[host@hpr]$ comm -1 -3 1and2.txt 2and3.txt\n3\n[host@hpr]$ comm -2 -3 1and2.txt 2and3.txt\n1\n</code></pre>\n',30,0,0,'CC-BY-SA','comm,compare,coreutils',0,0,1),
(3894,'2023-07-06','The Page 42 Show: Ugly News Week, Show\'s Epoch!',2261,'An hour of news and commentary of software development and the overall FOSS space. ','<h2 id=\"show-notes\">Show Notes</h2>\n<p>I\'m Gage Hopper, and this is my weekly(-ish) show on FOSS news and\nsoftware tinkering.</p>\n<h3 id=\"rust-being-destroyed-by-foundation-idiocy\">Rust Being Destroyed\nBy Foundation Idiocy</h3>\n<p><a\nhref=\"https://www.youtube.com/watch?v=QEnuzwCWpgQ\">https://www.youtube.com/watch?v=QEnuzwCWpgQ</a></p>\n<ul>\n<li>Rust\'s apology to JeanHeid Meneide:<br />\n<a\nhref=\"https://blog.rust-lang.org/2023/05/29/RustConf.html\">https://blog.rust-lang.org/2023/05/29/RustConf.html</a></li>\n</ul>\n<h3 id=\"opera-one-for-the-adventurous\">Opera One: For the\nadventurous</h3>\n<p><a\nhref=\"https://betanews.com/2023/06/20/opera-one-ai-powered-browsing-tab-islands-linux-windows-macos/\">https://betanews.com/2023/06/20/opera-one-ai-powered-browsing-tab-islands-linux-windows-macos/</a></p>\n<ul>\n<li>Requires an Opera Account</li>\n</ul>\n<h3 id=\"amazon-retaliates-against-luis\">Amazon Retaliates Against\nLuis</h3>\n<p><a\nhref=\"https://youtu.be/Kcohq313q00\">https://youtu.be/Kcohq313q00</a></p>\n<ul>\n<li>Luis Rossmann has been doing independent repairs for over a\ndecade</li>\n</ul>\n<h3 id=\"mesa-232-release-speeds-up-intel-arc-cards-by-11\">Mesa 23.2\nRelease Speeds Up Intel Arc Cards By 11%:</h3>\n<p><a\nhref=\"https://www.tomshardware.com/news/intel-arc-driver-linux-boost\">https://www.tomshardware.com/news/intel-arc-driver-linux-boost</a></p>\n<h3 id=\"wtf-redhat\">Wtf, RedHat?</h3>\n<p><a\nhref=\"https://hackaday.com/2023/06/23/et-tu-red-hat/\">https://hackaday.com/2023/06/23/et-tu-red-hat/</a></p>\n<h3 id=\"kotlin-korner\">Kotlin Korner</h3>\n<p>Interesting things I find worth sharing about my experiences with\nKotlin</p>\n<p>My handle is @hopper_mcs over on Twitter. Ciao!</p>\n',420,0,1,'CC-BY-SA','Page 42, P42, rust, kotlin, redhat, linux, foss, software development, mesa',0,0,1),
(3901,'2023-07-17','Time Managment',1238,'Time Managment','<p>I go over how I manage my time because I\'m a goldfish...</p>\n',36,0,1,'CC-BY-SA','self help',0,0,1),
(3941,'2023-09-11','Interview with Yosef Kerzner',3563,'Interview with Yosef Kerzner','<h3 id=\"interview-with-yosef-kerzner\">Interview with Yosef Kerzner</h3>\n<p><a href=\"https://www.linkedin.com/in/yosef-kerzner-7231ab6\"\nclass=\"uri\">https://www.linkedin.com/in/yosef-kerzner-7231ab6</a></p>\n<p><a href=\"https://yosefsblog.blogspot.com/\"\nclass=\"uri\">https://yosefsblog.blogspot.com/</a></p>\n<ul>\n<li><p><a href=\"https://m.youtube.com/watch?v=AaTRHFaaPG8\"\nclass=\"uri\">https://m.youtube.com/watch?v=AaTRHFaaPG8</a> this is a\nreally good interview if you want to be terrified by AI ( about 1/2 way\nin the video )</p></li>\n<li><p><a\nhref=\"https://www.google.com/search?q=%22PROBIOTIC+GEM+CULTURED%22+filetype%3Apdf\"\nclass=\"uri\">https://www.google.com/search?q=%22PROBIOTIC+GEM+CULTURED%22+filetype%3Apdf</a></p></li>\n</ul>\n',36,0,1,'CC-BY-SA','Interviews,hacking,ai',0,0,1),
(3898,'2023-07-12','The Oh No! News.',1485,'Sgoti talks about internet scams.','<h2 id=\"the-oh-no-news.\">The <em>Oh No!</em> news.</h2>\n<h2 id=\"oh-no-news-is-good-news.\"><em>Oh No!</em> News is Good\nNews.</h2>\n<ul>\n<li><strong>TAGS:</strong> User space, Cybercrime, fraud, scams</li>\n</ul>\n<hr />\n<h3 id=\"user-space.\"><strong>User space.</strong></h3>\n<p>Cybercrime, also known as scams or fraud, is constantly evolving due\nto the many data breaches occurring around the world. Attackers gather\nmore of our personal data from these data breaches, then use that data\nto develop or modify their attacks. Users must remain on guard against\nsocial engineered attacks aimed at defrauding users of personal\ninformation and/or property (usually money/currency). I&#x2019;m suggesting\nusers update themselves as they would update their computers. Knowing\nthe types of attacks and how the attack is deployed will benefit you in\nthe fight against Cybercrime.<br />\n</p>\n<p>Reporting Cybercrime is beneficial for all users. When a user reports\nCybercrime, that information can help investigators combat this growing\nthreat; and broadcast warnings to the greater population. I&#x2019;ve provided\na few links below to assist you in learning and reporting\nCybercrime.<br />\n</p>\n<p>Common delivery methods for social engineered attacks are:<br />\n</p>\n<ul>\n<li>Email (attackers imitate legitimate organizations in design\nonly).<br />\n</li>\n<li>Mobile (voice, text messages, and app stores).<br />\n</li>\n<li>Social Media (direct messages and marketplaces).<br />\n</li>\n<li>Websites (including fraudulent ads and popups).<br />\n</li>\n</ul>\n<p>Common data and/or property (e.g. currency) extraction methods\nare:<br />\n</p>\n<ul>\n<li><p>Peer-to-peer payment service apps (Venmo, Zelle, Cash App...etc).\nWARNING, your money goes where ever you send it (including\nscammers).<br />\n</p></li>\n<li><p>Wire transfers: transfer currency from one entity to another\n(account-to-account). WARNING, your money goes where ever you send it\n(including scammers).<br />\n</p></li>\n<li><p>Cryptocurrency: <strong>100% Scam</strong>. Light your money on\nfire for more value (reversing/recovering payment is virtually\nimpossible).<br />\n</p></li>\n<li><p>Store gift cards: Unverifiable way to use currency (online or in\nstore). WARNING, scammers prefer gift cards as payment\n(reversing/recovering payment is virtually impossible).<br />\n</p></li>\n<li><p><strong>Source:</strong> <a href=\"https://www.ic3.gov/\">Internet\nCrime Complaint Center (IC3)</a> The Internet Crime Complaint Center, or\nIC3, is the Nation&#x2019;s central hub for reporting cyber crime. It is run by\nthe FBI, the lead federal agency for investigating cyber crime.<br />\n</p>\n<ul>\n<li><strong>Supporting Source:</strong> <a\nhref=\"https://consumer.ftc.gov/all-scams\">Federal Trade Commission: All\nScams</a><br />\n</li>\n</ul></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.actionfraud.police.uk/\">Action Fraud, the national\nreporting centre for fraud and cybercrime.</a> Action Fraud is the UK&#x2019;s\nnational reporting centre for fraud and cybercrime where you should\nreport fraud if you have been scammed, defrauded or experienced cyber\ncrime in England, Wales and Northern Ireland.<br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.europol.europa.eu/report-a-crime/report-cybercrime-online\">European\nUnion Agency for Law Enforcement Cooperation</a> If you have fallen\nvictim to cybercrime, click on one of the links below to be redirected\nto the reporting website of your country. Reporting mechanisms vary from\none country to another. In Member States which do not have a dedicated\nonline option in place, you are advised to go to your local police\nstation to lodge a complaint.<br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://report.con.rcmp-grc.gc.ca/\">National Cybercrime and Fraud\nReporting System.</a> Reporting a scam or computer crime helps the Royal\nCanadian Mounted Police (RCMP), the National Cyberc
(3892,'2023-07-04','Emacs package curation, part 1',2132,'Let\'s go through every single package installed in my Emacs configuration.','<p>Not really every single one, because straight.el installs\ndependencies automatically.</p>\n<p>Here\'s the file I went through during this recording. Some things may\nhave changed slightly since the time of recording. Save this file in\n<code>~/.emacs.d/init.el</code> to reproduce my exact Emacs\nconfiguration that I use at home and at work.</p>\n<pre class=\"elisp\"><code>;;; init.el --- This is Tiago&#39;s init.el file\n;;; Commentary:\n;;; Thanks to everyone that curates Emacs packages.\n\n;;; Code:\n;; BEGIN Straight.el bootstrap\n(defvar bootstrap-version)\n(let ((bootstrap-file\n (expand-file-name &quot;straight/repos/straight.el/bootstrap.el&quot; user-emacs-directory))\n (bootstrap-version 6))\n (unless (file-exists-p bootstrap-file)\n (with-current-buffer\n (url-retrieve-synchronously\n &quot;https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el&quot;\n &#39;silent &#39;inhibit-cookies)\n (goto-char (point-max))\n (eval-print-last-sexp)))\n (load bootstrap-file nil &#39;nomessage))\n;; END Straight.el bootstrap\n\n(straight-use-package &#39;use-package)\n(setq straight-use-package-by-default t)\n\n;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\n;; &lt;&lt;&lt; THE ESSENTIALS &gt;&gt;&gt; ;;;\n;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\n\n;; Get minor modes off the modeline\n(use-package diminish)\n\n(use-package evil\n :init (setq evil-want-keybinding nil)\n :config (evil-mode)\n :custom (evil-undo-system &#39;undo-redo)\n :bind (&quot;C-u&quot; . evil-scroll-up))\n\n(use-package evil-collection\n :diminish evil-collection-unimpaired-mode\n :after evil\n :config (evil-collection-init))\n\n(use-package evil-surround\n :after evil\n :config\n (global-evil-surround-mode 1))\n\n;; In-Buffer Completion\n(use-package company\n :diminish\n :config (global-company-mode))\n\n;; completion with extra info box\n(use-package company-box\n :diminish\n :hook (company-mode . company-box-mode))\n\n;; Show key bindings as you go\n(use-package which-key\n :diminish\n :config (which-key-mode))\n\n;; search query feedback in the buffer\n(use-package anzu\n :diminish\n :config (global-anzu-mode +1))\n\n(use-package evil-anzu)\n\n;; Completion in the minibuffer (snippet from vertico)\n(use-package vertico\n :init\n (vertico-mode)\n\n ;; Different scroll margin\n ;; (setq vertico-scroll-margin 0)\n\n ;; Show more candidates\n ;; (setq vertico-count 20)\n\n ;; Grow and shrink the Vertico minibuffer\n ;; (setq vertico-resize t)\n\n ;; Optionally enable cycling for `vertico-next&#39; and `vertico-previous&#39;.\n ;; (setq vertico-cycle t)\n )\n\n;; Persist history over Emacs restarts. Vertico sorts by history position.\n;; (use-package savehist\n;; :init\n;; (savehist-mode))\n\n;; A few more useful configurations...\n(use-package emacs\n :init\n ;; Add prompt indicator to `completing-read-multiple&#39;.\n ;; We display [CRM&lt;separator&gt;], e.g., [CRM,] if the separator is a comma.\n (defun crm-indicator (args)\n (cons (format &quot;[CRM%s] %s&quot;\n (replace-regexp-in-string\n &quot;\\\\`\\\\[.*?]\\\\*\\\\|\\\\[.*?]\\\\*\\\\&#39;&quot; &quot;&quot;\n crm-separator)\n (car args))\n (cdr args)))\n (advice-add #&#39;completing-read-multiple :filter-args #&#39;crm-indicator)\n\n ;; Do not allow the cursor in the minibuffer prompt\n (setq minibuffer-prompt-properties\n &#39;(read-only t cursor-intangible t face minibuffer-prompt))\n (add-hook &#39;minibuffer-setup-hook #&#39;cursor-intangible-mode)\n\n ;; Emacs 28: Hide commands in M-x which do not work in the current mode.\n ;; Vertico commands are hidden in normal buffers.\n ;; (setq read-extended-command-predicate\n ;; #&#39;command-completion-default-include-p)\n\n ;; Enable recursive minibuffers\n (setq enable-recursive-minibuffers t))\n\n;; Optionally use t
(3896,'2023-07-10','The Brochs of Glenelg',782,'A verbal tour in situ of one of the two brochs of Glenelg','In this episode I visit one of the best preserved <a href=\"https://en.wikipedia.org/wiki/Broch\">brochs</a> on the Scottish mainland called Dun Telve. It is one of two that are a few miles outside the village of Glenelg which is rare itself in that its name is a palindrome.\n\n<p><a href=\"https://hackerpublicradio.org/eps/hpr3896/hpr3896/20230701_200226_1000px.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3896/hpr3896/20230701_200226_1000px_thumbnail.jpg\" title=\"The broch Dun Telve from a distance.\" alt=\"The broch Dun Telve from a distance.\"></a></p>\n\n<p><a href=\"https://hackerpublicradio.org/eps/hpr3896/hpr3896/20230701_201912_1000px.jpg\"><img src=\"https://hackerpublicradio.org/eps/hpr3896/hpr3896/20230701_201912_1000px_thumbnail.jpg\" title=\"The broch Dun Telve from a distance.\" alt=\"The broch Dun Telve from a distance.\"></a></p>\n',268,101,0,'CC-BY-SA','history,scotland,prehistoric',0,0,1),
(3895,'2023-07-07','What\'s in my backpack',514,'Stache walks through the contents of his work backpack','<p>I have many things in my work backpack, to include a Raspberry Pico,\nmultiple USB drives, USB cables, two laptops, my glasses and a\nsunglasses case attached to the outside.</p>\n<p>It is a 5.11 RUSH MOAB 10 Sling Pack 18L, not because I want to be\n\"tacticool\" but because I like their products, and that they support\nveterans like myself.</p>\n',408,23,0,'CC-BY-SA','backpack contents, toolkit',0,0,1),
(3897,'2023-07-11','HPR AudioBook Club 22 - Murder at Avedon Hill',6119,'In this episode the HPR Audiobook Club discusses \"Murder at Avedon Hill\" by P.G. Holyfield','<h2\nid=\"in-this-episode-the-hpr-audiobook-club-discusses-the-audiobook-murder-at-avedon-hill-by-pg-holyfield\">In\nthis episode the HPR Audiobook Club discusses the audiobook <a\nhref=\"https://archive.org/details/podcast_murder-at-avedon-hill_280056756\">Murder\nat Avedon Hill</a> by P.G. Holyfield</h2>\n<hr />\n<h2 id=\"non-spoiler-thoughts\">Non-Spoiler Thoughts</h2>\n<hr />\n<ul>\n<li>Great reading, great audio quality, fun setting and setup. It had\nthe feel of a role playing adventure at the beginning, but was well\nfleshed out by the middle. It would have been slightly better if all of\nthe guest voices had had a pronunciation guide for the names.</li>\n</ul>\n<h2 id=\"beverage-reviews\">Beverage Reviews</h2>\n<hr />\n<ul>\n<li><strong>Thaj:</strong> A delicious regular chocolate malt from the\nlocal ice cream shop \"The Comfy Cow\"</li>\n<li><strong>x1101:</strong> Barton\'s 1795</li>\n<li><strong>Pokey</strong> Leinenkugel\'s: I have a fall variety pack,\nbut this is not the fall. I\'m not enjoying this beer as much as I\nexpected. It\'s good, and I can taste the high quality of the\ningredients, but I think it\'s just the wrong season for this.</li>\n</ul>\n<h2 id=\"things-we-talked-about\">Things We Talked About</h2>\n<hr />\n<ul>\n<li><p><a\nhref=\"https://boardgamegeek.com/boardgame/822/carcassonne\">Carcassonne</a></p></li>\n<li><p><a href=\"https://scribl.com/books/P8EE5/shadowmagic\">Shadow\nMagic</a></p></li>\n</ul>\n<h2 id=\"our-next-audiobook\">Our Next Audiobook</h2>\n<hr />\n<p><a\nhref=\"https://librivox.org/a-princess-of-mars-by-edgar-rice-burroughs-2/\">A\nPrincess of Mars</a> by Edgar Rice Burroughs</p>\n<h2 id=\"the-next-audiobook-club-recording\">The Next Audiobook Club\nRecording</h2>\n<hr />\n<p>Right now we are working through a backlog of older episodes that\nhave already been recorded. Once that ends we fully anticipate recording\nnew episodes with listener participation.</p>\n<h2 id=\"feedback\">Feedback</h2>\n<hr />\n<p>Thank you very much for listening to this episode of the HPR\nAudioBookClub. We had a great time recording this show, and we hope you\nenjoyed it as well. We also hope you\'ll consider joining us next time we\nrecord a new episode. Please leave a few words in the episode\'s comment\nsection.</p>\n<p>As always; remember to visit the HPR contribution page HPR could\nreally use your help right now.</p>\n<p>Sincerely, The HPR Audiobook Club</p>\n<p>P.S. Some people really like finding mistakes. For their enjoyment,\nwe always include a few.</p>\n<h2 id=\"our-audio\">Our Audio</h2>\n<hr />\n<p>This episode was processed using <a\nhref=\"https://www.audacityteam.org/\">Audacity</a>. We\'ve been making\nsmall adjustments to our audio mix each month in order to get the best\npossible sound. Its been especially challenging getting all of our\nvoices relatively level, because everyone has their own unique setup.\nMumble is great for bringing us all together, and for recording, but\nit\'s not good at making everyone\'s voice the same volume. We\'re pretty\nhappy with the way this month\'s show turned out, so we\'d like to share\nour editing process and settings with you and our future selves (who, of\ncourse, will have forgotten all this by then).</p>\n<p>We use the \"Truncate Silence\" effect with it\'s default settings to\nminimize the silence between people speaking. When used with it\'s\ndefault (or at least reasonable) settings, Truncate Silence is extremely\neffective and satisfying. It makes everyone sound smarter, it makes the\nfile shorter without destroying actual content, and it makes a\nconversations sound as easy and fluid during playback as it was while it\nwas recorded. It can be even more effective if you can train yourself to\nremain silent instead of saying \"uuuuummmm.\" Just remember to ONLY pass\nthe file through Truncate Silence ONCE. If you pass it through a second\ntime, or if you set it too
(3907,'2023-07-25','My introduction show',1153,'About me and computers','<p>The show notes</p>\n<ul>\n<li>Episode 3496: How I record HPR Episodes <a\nhref=\"http://hackerpublicradio.org/eps.php?id=3496\"\nclass=\"uri\">http://hackerpublicradio.org/eps.php?id=3496</a></li>\n<li>Source: <a href=\"https://gitlab.com/norrist/solocast\"\nclass=\"uri\">https://gitlab.com/norrist/solocast</a></li>\n<li>XFree86 <a href=\"http://en.wikipedia.org/wiki/XFree86\"\nclass=\"uri\">http://en.wikipedia.org/wiki/XFree86</a></li>\n<li>Quickemu, Quickly create and run optimised Windows, macOS and Linux\ndesktop virtual machines. <a\nhref=\"http://github.com/quickemu-project/quickemu\"\nclass=\"uri\">http://github.com/quickemu-project/quickemu</a></li>\n</ul>\n',421,0,0,'CC-BY-SA','introduction,solocast',0,0,1),
(3899,'2023-07-13','Repair corrupt video files for free with untruc',320,'This is how I fixed corrupt video files from my dash cam after an accident','<p>My original blog post on this topic: <a\nhref=\"https://pquirk.com/posts/corruptvideo/\"\nclass=\"uri\">https://pquirk.com/posts/corruptvideo/</a></p>\n<ul>\n<li>Untruc at Github: <a href=\"https://github.com/anthwlock/untrunc\"\nclass=\"uri\">https://github.com/anthwlock/untrunc</a></li>\n<li>Windows version: <a\nhref=\"https://github.com/anthwlock/untrunc/releases\"\nclass=\"uri\">https://github.com/anthwlock/untrunc/releases</a></li>\n<li>Arch linux version: <a\nhref=\"https://aur.archlinux.org/packages/untrunc-git\"\nclass=\"uri\">https://aur.archlinux.org/packages/untrunc-git</a></li>\n</ul>\n<p>Make your donations to:<br />\n<a href=\"https://www.paypal.com/paypalme/anthwlock\"\nclass=\"uri\">https://www.paypal.com/paypalme/anthwlock</a><br />\n<a href=\"https://vcg.isti.cnr.it/~ponchio/untrunc.php\"\nclass=\"uri\">https://vcg.isti.cnr.it/~ponchio/untrunc.php</a></p>\n',383,0,0,'CC-BY-NC-SA','video,corrupt,fix,file,linux',0,0,1);
INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hostid`, `series`, `explicit`, `license`, `tags`, `version`, `downloads`, `valid`) VALUES (3921,'2023-08-14','HPR AudioBook Club 23 - John Carter of Mars (Books 1-3)',6516,'In this episode the HPR Audiobook Club discusses the first three books of John Carter of Mars','<h2\nid=\"in-this-episode-the-hpr-audiobook-club-discusses-the-audiobooks-a-princess-of-mars-the-gods-of-mars-and-the-warlord-of-mars-by-edgar-rice-burroughs\">In\nthis episode the HPR Audiobook Club discusses the audiobooks <a\nhref=\"https://librivox.org/a-princess-of-mars-by-edgar-rice-burroughs-2/\">A\nPrincess of Mars</a>, <a\nhref=\"https://librivox.org/the-gods-of-mars-version-3-by-edgar-rice-burroughs/\">The\nGods of Mars</a>, and <a\nhref=\"https://librivox.org/the-warlord-of-mars-version-3-by-edgar-rice-burroughs/\">The\nWarlord of Mars</a> by Edgar Rice Burroughs</h2>\n<hr />\n<h2 id=\"non-spoiler-thoughts\">Non-Spoiler Thoughts</h2>\n<hr />\n<ul>\n<li>Burroughs is kind of verbose, which is symbolic of the time period\nin which it was written.</li>\n</ul>\n<h2 id=\"beverage-reviews\">Beverage Reviews</h2>\n<hr />\n<ul>\n<li><strong>Thaj:</strong> Tempting fate with a tall glass of the highly\ntoxic, <a href=\"http://www.dhmo.org/facts.html\">Dihydrogen\nMonoxide</a></li>\n<li><strong>x1101:</strong> <a\nhref=\"https://www.beeradvocate.com/beer/profile/139/149716/\">Shipyard\nLittle Horror of Hops</a> Its a very amber IPA</li>\n<li><strong>Pokey:</strong> <a\nhref=\"http://www.yellowtailwine.com/chardonnay/\">Yellow Tail\nChardonay</a> Its definitely a chardonay in flavor. You can taste the\ncost effectiveness up front, but it mellows out on the finish, and is\npretty okay for the price on average.</li>\n<li><strong>FiftyOneFifty:</strong> <a\nhref=\"https://www.boulevard.com/beer/our-beers/\">Funky Pumpkin spiced\npumpkin ale</a></li>\n<li><strong>Mark:</strong> <a\nhref=\"https://lagunitas.com/beer/ipa/\">Lagunitas IPA</a></li>\n</ul>\n<h2 id=\"things-we-talked-about\">Things We Talked About</h2>\n<hr />\n<ul>\n<li><p><a href=\"https://chatsecure.org/\">Chat Secure</a> secure XMPP,\nThink of the children!!!</p></li>\n<li><p>Technology on Barsoom</p></li>\n<li><p>Deus Ex Machina much???</p></li>\n<li><p>Names in fantasy books</p></li>\n</ul>\n<h2 id=\"our-next-audiobook\">Our Next Audiobook</h2>\n<hr />\n<p><a href=\"https://scribl.com/books/P34C6/see-you-at-the-morgue\">See\nYou At The Morgue</a> by Lawrence Blochman</p>\n<h2 id=\"the-next-audiobook-club-recording\">The Next Audiobook Club\nRecording</h2>\n<hr />\n<p>Right now we are working through a backlog of older episode that have\nalready been recorded. Once that ends we fully anticipate recording new\nepisodes with listener participation.</p>\n<h2 id=\"feedback\">Feedback</h2>\n<hr />\n<p>Thank you very much for listening to this episode of the HPR\nAudioBookClub. We had a great time recording this show, and we hope you\nenjoyed it as well. We also hope you\'ll consider joining us next time we\nrecord a new episode. Please leave a few words in the episode\'s comment\nsection.</p>\n<p>As always; remember to visit the HPR contribution page HPR could\nreally use your help right now.</p>\n<p>Sincerely, The HPR Audiobook Club</p>\n<p>P.S. Some people really like finding mistakes. For their enjoyment,\nwe always include a few.</p>\n<h2 id=\"our-audio\">Our Audio</h2>\n<hr />\n<p>This episode was processed using <a\nhref=\"https://www.audacityteam.org/\">Audacity</a>. We\'ve been making\nsmall adjustments to our audio mix each month in order to get the best\npossible sound. Its been especially challenging getting all of our\nvoices relatively level, because everyone has their own unique setup.\nMumble is great for bringing us all together, and for recording, but\nit\'s not good at making everyone\'s voice the same volume. We\'re pretty\nhappy with the way this month\'s show turned out, so we\'d like to share\nour editing process and settings with you and our future selves (who, of\ncourse, will have forgotten all this by
(4151,'2024-07-01','HPR Community News for June 2024',0,'HPR Volunteers talk about shows released and comments posted in June 2024','',159,47,1,'CC-BY-SA','Community News',0,0,1),
(4176,'2024-08-05','HPR Community News for July 2024',0,'HPR Volunteers talk about shows released and comments posted in July 2024','',159,47,1,'CC-BY-SA','Community News',0,0,1),
(3902,'2023-07-18','Introduction to a new series on FFMPEG',474,'In this episode, I introduce FFMPEG, media containers, and codecs','<h2>Links</h2>\n\n<ul>\n<li><a href=\"https://ffmpeg.org\">FFMPEG Website</a></li>\n<li><a href=\"https://helpx.adobe.com/x-productkb/multi/formats-containers.html\">Adobe - containers vs encoders</a></li>\n<li>Containers: <a href=\"https://en.wikipedia.org/wiki/Comparison_of_video_container_formats\">Wikipedia</a></li>\n<li>Encoders/codecs\n\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Audio_coding_format\">Audio</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Video_coding_format\">Video</a></li>\n</ul>\n</li>\n<li><a href=\"https://s3-us-west-2.amazonaws.com/courses-images/wp-content/uploads/sites/4052/2019/04/08194049/CommunicationProcessModel1.jpg\">Encoding vs Decoding</a> ** attribution: <a href=\"https://courses.lumenlearning.com/wm-organizationalbehavior/chapter/the-process-of-communication/\">Learning Freedom Group</a></li>\n</ul>\n',300,0,0,'CC-BY-SA','ffmpeg,video streaming,audio streaming',0,0,1),
(3903,'2023-07-19','Why I don\'t love systemd (yet)',396,'Klaatu reads a script by Deepgeek about systemd','<p>I\'ve been meaning to put down my thoughts about SystemD for the HPR\ncommunity for some while, so here goes.</p>\n<p>I want to say that I am not a SystemD hater. When SystemD was a hot\ntopic of debate, many became irrational over it, but I want to start by\nsaying that I don\'t think it\'s a bad technology. I think it is a rather\ngood technology. I just don\'t want it on my personal computer. So I\nwould like to run things down in this order: what is it (as in, what is\nit really,) what makes it a good technology, why I don\'t want it now\n(but might later,) and a few tips for you if you decide that you don\'t\nwant it currently.</p>\n<p>SystemD Is not an init system. SystemD includes an init system.\nSystemD Init was faster than SysVInit, but SystemD Init isn\'t the\nfastest init system, and SysVInit now has a parallelization helper, at\nleast on Debian.</p>\n<p>So, if SystemD Init is not SystemD, than what is SystemD? To\nunderstand this we must first understand something about Linux. Linux\noperates under a model where there are root processes, and there are\nuser processes. These two kinds of processes are usually called\n\"layers.\" SystemD is actually a third layer, that can be called a system\nlayer. So when SystemD is added to a Linux system, that changes the\nsystem so that there are three layers, a root layer, a user layer, and a\nsystem layer. As such, you now ask SystemD to set how the system runs.\nThis is why SystemD includes things like an init system, because if you\nwant to change what the system is running, you ask SystemD to change it.\nSystemD then messages an appropriate system to implement the change,\nlike messaging its init system to bring up or bring down a system\ndaemon. Once you play out this in your head a bit, you really realize\nthat SystemD acts more like a message passing system in this regard.</p>\n<p>So why do I say SystemD is a good technology? Because this can\nstandardize system control. Without SystemD a fleet of computers becomes\nlike individual fingerprints or unique snowflakes. If you manage many\ncomputers, as many professional IT people do, you want them to all run\nthe same, all have the same profiles and general configurations. So if\nyou have a bunch of computers you are running, you can run a lot more if\nthey are all run the same way. If your job requires you to run 10,000\nwebservers, you want them to run identically because it is impossible to\nkeep an understanding of 10,000 unique configurations in a human\nhead.</p>\n<p>SystemD really shines in its support of virtualization as well. So\nto speak of servers, I used to run an email server for a few friends.\nEach of us had a userid and number as unix users. The mapping of unix\nuserids and postfix userids can get confusing when it gets big. Thanks\nto SystemD\'s virtualization work, you can actually put a service like\nemail into a namespace situation so that it has only the users root and\nthe daemon user id (like \"postfix\"), so SystemD greatly enhances\nsecurity for server installations. This might help explain its\ndominance in linux distributions that have been traditionally\nserver-centric, such as debian and redhat.</p>\n<p>So why don\'t I don\'t want it? Well, I\'ve been doing a lot of talking\nabout professional computer work and corporate work environments, but I\nuse a \"Personal Computer\" as a hobby. I\'ve been out-of-industry for\ndecades now. And when I say \"Personal Computer\" I\'m not talking a\nhardware specification, rather I\'m talking about \"This is my personal\ncomputer where I do things my way, as opposed to my work computer where\nI do things my companies way\". Dear listener, please remember that I did\nthe first community show contribution to HPR, and my topic was about\npersonalization. For me, a hobbyist interested in operating system\nexperimentation, I don\'t want a system layer, I want a traditional\nunix-like system that operates on a two-layer model and does things my\nw
(3904,'2023-07-20','How to make friends',2861,'This topic is being actively researched. Not for production use.','<p>Show notes</p>\n<ul>\n<li>\n<p>No clear mark of when friendship starts</p>\n</li>\n<li>\n<p>often feels \"right\" when mutual</p>\n</li>\n<li>\n<p>to some people friendship is a persistent state. once you have it, it&#39;s forever unless explicitly dissolved.</p>\n</li>\n<li>\n<p>for other people, it&#39;s something requiring maintenance. arguable this suggests that there are degrees of friendship, based on when you last spoke to one another.</p>\n</li>\n<li>\n<p>degrees of friendship also suggests progression. friend → close friend → best friend.</p>\n</li>\n</ul>\n<h2 id=\"_how_to_make_a_friend\">how to make a friend</h2>\n<p>friendship requires communication.</p>\n<ul>\n<li>\n<p>start by communicating in some way that makes the other person feel not unpleasant</p>\n</li>\n<li>\n<p>you&#39;re not supposed to target a friend. this can be a frustrating rule, because if you&#39;re trying to make a friend, you have to target somebody, but the general consensus is that you&#39;re not supposed to \"try too hard\". target lots of people in the hopes of stumbling across somebody to befriend.</p>\n</li>\n<li>\n<p>complimenting something they have done, even if it&#39;s something simple like wearing a cool shirt, is a very easy start</p>\n</li>\n<li>\n<p>finding ground common allows for repeated communication</p>\n</li>\n<li>\n<p>repetition of this is what builds friendship. this is why friendships often develop at work, but can dissolve quickly after a job change.</p>\n</li>\n<li>\n<p>the situation matters. chatting with someone who&#39;s being paid to interact with you, like somebody working at a store, doesn&#39;t count because in context they more or less cannot choose to stop communicating with you until you leave the store. chatting with someone who has anything to gain by chatting with you doesn&#39;t count (like an intern at work).</p>\n</li>\n<li>\n<p>to speed up a developing friendship, you can invite the person to interact with you on something with a clearly defined goal. You like coding? I like coding! Would you care to collaborate for 4 hours on a script that would help me find my Raspberry Pi on my network?</p>\n</li>\n<li>\n<p>during the activity, continue to communicate. this can be difficult because you&#39;re doing an activity that you both claim to enjoy, so in theory the activity should be sufficient to further the friendship. However, the activity doesn&#39;t build the friendship, it only builds a partnership. It&#39;s the communication that builds friendship.</p>\n</li>\n</ul>\n<p>unfortunately, there&#39;s no clear point during this process at which you know you have made a friend. so you have to define what a friend is, to you, and then work toward that goal.</p>\n<p>Here are some examples of definitions for friendship. There is no right or wrong here, it&#39;s really just setting your own expectations and requirements:</p>\n<ul>\n<li>\n<p>A friend is someone to hang out with on sundays.</p>\n</li>\n<li>\n<p>A friend is someone I can call when I&#39;ve got some free time to kill.</p>\n</li>\n<li>\n<p>A friend is someone I can play video games with online.</p>\n</li>\n<li>\n<p>A friend is someone I can call, day or night, when I need help.</p>\n</li>\n<li>\n<p>A friend is someone who has come over for dinner, and has met my family, and who I see at least once a month.</p>\n</li>\n</ul>\n<p>There&#39;s no official definition, so you must define it yourself.\nYour definition may differ from the other person&#39;s definition.\nYou might say \"we are best friends\" but they might say \"no, I already have a best friend, but you&#39;re a <em>good</em> friend\" and THAT&#39;S OK.</p>\n<p>If it helps, classify what kinds of friends you have so you understand what kinds of relationships you are maintaining.\nCommunicate with your friends, even if it&#39;s only to let them know that you&#39;re bad at communicating on a regular basis, or ask them how frequently they need to communicate to mainta
(3905,'2023-07-21','Presenting Fred Black',1105,'I have a short talk to present Fred Black.','<ul>\n<li><strong>IB-program</strong> <a href=\"https://ibo.org/\"\nclass=\"uri\">https://ibo.org/</a></li>\n<li><strong>Animals To The Max</strong> <a\nhref=\"https://corbinmaxey.com/podcast-1\"\nclass=\"uri\">https://corbinmaxey.com/podcast-1</a></li>\n<li><strong>I Spend A Day With...</strong> <a\nhref=\"https://feeds.megaphone.fm/ispentadaywith\"\nclass=\"uri\">https://feeds.megaphone.fm/ispentadaywith</a></li>\n<li><strong>The Vinyl Guide</strong> <a\nhref=\"https://www.thevinylguide.com/\"\nclass=\"uri\">https://www.thevinylguide.com/</a></li>\n<li><strong>NSOD - Norsken, Svensken og Dansken</strong> <a\nhref=\"https://podkast.nrk.no/program/norsken_svensken_og_dansken.rss\"\nclass=\"uri\">https://podkast.nrk.no/program/norsken_svensken_og_dansken.rss</a></li>\n</ul>\n',309,0,0,'CC-BY-SA','school,podcasts,instrument,quiz',0,0,1),
(3906,'2023-07-24','The Oh No! News.',1741,'Sgoti discusses the threat of convenience.','<h2 id=\"the-oh-no-news.\">The <em>Oh No!</em> news.</h2>\n<h2 id=\"oh-no-news-is-good-news.\"><em>Oh No!</em> News is Good\nNews.</h2>\n<ul>\n<li><strong>TAGS:</strong> Oh No News, InfoSec, browser security,\nsession tokens, session id</li>\n</ul>\n<hr />\n<h3 id=\"infosec-the-language-of-security.\"><strong>InfoSec; the language\nof security.</strong></h3>\n<ul>\n<li><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Session_ID\">Session ID.</a><br />\n</li>\n<li><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/JSON_Web_Token\">JSON Web\nToken.</a><br />\n\n<ul>\n<li><strong><a\nhref=\"https://foundation.wikimedia.org/wiki/Policy:Terms_of_Use\">Terms\nof Use:</a></strong> Copyleft, free content<br />\n</li>\n</ul></li>\n<li><strong>Source:</strong> <a\nhref=\"https://www.geeksforgeeks.org/session-vs-token-based-authentication/\">Session\nvs Token Based Authentication.</a><br />\n\n<ul>\n<li><strong><a\nhref=\"https://www.geeksforgeeks.org/legal/copyright-information/\">Terms\nof Use:</a></strong> CC-BY-SA (with CC-BY-NC-SA elements).<br />\n</li>\n</ul></li>\n<li><strong>Source:</strong> <a\nhref=\"https://attack.mitre.org/techniques/T1528/\">Steal Application\nAccess Token.</a> Adversaries can steal application access tokens as a\nmeans of acquiring credentials to access remote systems and resources.\nApplication access tokens are used to make authorized API requests on\nbehalf of a user or service and are commonly used as a way to access\nresources in cloud and container-based applications and\nsoftware-as-a-service (SaaS).<br />\n\n<ul>\n<li><strong><a\nhref=\"https://attack.mitre.org/resources/terms-of-use/\">Terms of\nUse:</a></strong> Similar to CC-BY-SA<br />\n</li>\n</ul></li>\n<li><strong>Source:</strong> <a\nhref=\"https://blog.isc2.org/isc2_blog/2023/02/analysis-circleci-attackers-stole-session-cookie-to-bypass-mfa.html\">Analysis:\nCircleCI attackers stole session cookie to bypass MFA.</a><br />\n\n<ul>\n<li><strong><a href=\"https://www.typepad.com/tos\">Terms of\nUse:</a></strong> Section 8. CONTENT AND CONTENT LICENSES. NOT\ncertain<br />\n</li>\n</ul></li>\n<li><strong>Source:</strong> <a\nhref=\"https://www.baeldung.com/cs/session-hijacking\">How to Prevent\nSession Hijacking?</a><br />\n\n<ul>\n<li><strong><a href=\"https://www.baeldung.com/terms-of-service\">Terms of\nUse:</a></strong> Copyright, restrictive<br />\n</li>\n</ul></li>\n</ul>\n<hr />\n<ul>\n<li><strong>Additional Information.</strong>\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Data_breach\"\ntitle=\"From Wikipedia, the free encyclopedia.\">What is a \"Data\nBreach\"?</a> A data breach is a security violation, in which sensitive,\nprotected or confidential data is copied, transmitted, viewed, stolen,\naltered or used by an individual unauthorized to do so.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Malware\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is \"Malware\"?</a>\nMalware (a <a href=\"https://en.wikipedia.org/wiki/Portmanteau\"\ntitle=\"From Wikipedia, the free encyclopedia\">portmanteau</a> for\nmalicious software) is any software intentionally designed to cause\ndisruption to a computer, server, client, or computer network, leak\nprivate information, gain unauthorized access to information or systems,\ndeprive access to information, or which unknowingly interferes with the\nuser\'s computer security and privacy.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Payload_(computing)\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is a \"Payload\"?</a>\nIn the context of a computer virus or worm, the payload is the portion\nof the malware which performs malicious action; deleting data, sending\nspam or encrypting data. In addition to the payload, such malware also\ntypically has overhead code aimed at simply spreading itself, or\navoiding detection.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Phishing\"\ntitle=\"From Wikipedia, the free encyclopedia.\">What is \"Phishing\"
(3908,'2023-07-26','Emacs package curation, part 2',667,'Let\'s go through every single package installed in my Emacs configuration. File 2 of 3.','<p>We discuss the packages installed in the second of three files that\nmake up my emacs config.</p>\n<pre class=\"elisp\"><code>;;; init-base.el --- The basics\n;;; Commentary:\n;;; Packages for my personal and work laptop, but not termux.\n\n;;; Code:\n\n;;;;;;;;;;;;;;;\n;;; Writing ;;;\n;;;;;;;;;;;;;;;\n\n;; Focused writing mode\n(use-package olivetti\n :hook (olivetti-mode . typewriter-mode-toggle)\n :bind (&quot;C-x C-w&quot; . olivetti-mode)\n :custom (olivetti-body-width 64)\n :config\n (defvar-local typewriter-mode nil\n &quot;Typewriter mode, automatically scroll down to keep cursor in\n the middle of the screen. Setting this variable explicitly will\n not do anything, use typewriter-mode-on, typewriter-mode-off\n and typewriter-mode-toggle instead.&quot;)\n (defun typewriter-mode-on()\n &quot;Automatically scroll down to keep cursor in the middle of screen.&quot;\n (interactive)\n (setq-local typewriter-mode t)\n (centered-cursor-mode +1))\n (defun typewriter-mode-off()\n &quot;Automatically scroll down to keep cursor in the middle of screen.&quot;\n (interactive)\n (kill-local-variable &#39;typewriter-mode)\n (centered-cursor-mode -1))\n (defun typewriter-mode-toggle()\n &quot;Toggle typewriter scrolling mode on and off.&quot;\n (interactive)\n (if typewriter-mode (typewriter-mode-off) (typewriter-mode-on))))\n\n(use-package centered-cursor-mode)\n\n;; Check for weasel words and some other simple rules\n(use-package writegood-mode\n :bind (&quot;C-c g&quot; . writegood-mode))\n\n;; spellchecking\n(use-package flyspell-correct\n :after flyspell\n :bind (:map flyspell-mode-map\n (&quot;C-;&quot; . flyspell-correct-wrapper)))\n\n;; show correction options in a popup instead of the minibuffer\n(use-package flyspell-correct-popup\n :after (flyspell-correct))\n\n;online thesaurus service from powerthesaurus.org\n(use-package powerthesaurus)\n\n;; WordNet Thesaurus replacement\n(use-package synosaurus\n :custom (synosaurus-choose-method &#39;default)\n :config (when window-system\n (if (string= (x-server-vendor) &quot;Microsoft Corp.&quot;)\n (setq synosaurus-wordnet--command &quot;C:\\\\Program Files (x86)\\\\WordNet\\\\2.1\\\\bin\\\\wn.exe&quot;))))\n\n;; WordNet search and view\n(use-package wordnut\n :bind (&quot;C-c s&quot; . wordnut-search)\n :config (when window-system\n (if (string= (x-server-vendor) &quot;Microsoft Corp.&quot;)\n (setq wordnut-cmd &quot;C:\\\\Program Files (x86)\\\\WordNet\\\\2.1\\\\bin\\\\wn.exe&quot;))))\n\n;; fill and unfill with the same key\n(use-package unfill\n :bind (&quot;M-q&quot; . unfill-toggle))\n\n;; Markdown...\n(use-package markdown-mode)\n\n;;;;;;;;;;;;;;\n;;; Coding ;;;\n;;;;;;;;;;;;;;\n\n;; Syntax checking\n(use-package flycheck\n :diminish\n :init (global-flycheck-mode))\n\n(use-package flycheck-popup-tip\n :after (flycheck)\n :hook (flycheck-mode-hook . flycheck-popup-tip-mode))\n\n;; Web design\n(use-package emmet-mode\n :hook (sgml-mode . emmet-mode) ;; Auto-start on any markup modes\n (css-mode . emmet-mode)) ;; enable Emmet&#39;s css abbreviation.\n\n(use-package sass-mode)\n\n(use-package web-mode)\n\n;; Python\n(use-package python\n :mode (&quot;\\\\.py\\\\&#39;&quot; . python-mode)\n :interpreter (&quot;python&quot; . python-mode))\n\n;; highlight todo items everywhere\n(use-package hl-todo\n :straight (:host github :repo &quot;tarsius/hl-todo&quot;)\n :custom (hl-todo-keyword-faces\n `((&quot;FIXME&quot; error bold)\n (&quot;STUB&quot; error bold)\n (&quot;REPLACETHIS&quot; error bold)\n (&quot;REVISIT&quot; error bold)))\n (hl-todo-exclude-modes nil)\n :config (add-to-list &#39;hl-todo-include-modes &#39;org-mode)\n :init (global-hl-todo-mode))\n\n;; git\n
(3918,'2023-08-09','Emacs package curation, part 3',864,'Let\'s go through every single package installed in my Emacs configuration. The last one.','<p>We discuss the packages installed in the second of three files that\nmake up my emacs config.</p>\n<p>Since recording, I pulled in some EXWM (the Emacs X Window Manager,\nthat\'s right), even though I\'m not actually using it, I\'m still using\nstumpWM.</p>\n<p>I have also added pass, the password manager, khardel, an emacs\npackage for the khard CLI address book application.</p>\n<p>I also moved (server-start) to this file, so that it\'ll only happen\nwhen I\'m on linux.</p>\n<pre class=\"elisp\"><code>;;; init-extra.el --- Extra init stuff\n;;; Commentary:\n;;; Stuff just for my personal laptop, not for my work laptop or termux, for example.\n\n;;; Code:\n\n;;;;;;;;;;;;;;;;\n;;; org-roam ;;;\n;;;;;;;;;;;;;;;;\n\n(use-package org-roam\n :demand t\n :straight (:host github :repo &quot;org-roam/org-roam&quot;\n :files (:defaults &quot;extensions/*&quot;))\n :custom (org-roam-mode-sections (list #&#39;org-roam-backlinks-section\n #&#39;org-roam-reflinks-section\n #&#39;org-roam-unlinked-references-section))\n :init (setq org-roam-directory &quot;~/org/roam/&quot;\n org-roam-capture-templates\n &#39;((&quot;o&quot; &quot;outline&quot; plain\n &quot;%?&quot;\n :if-new\n (file+head &quot;${slug}.org&quot; &quot;#+title: ${title}\\n#+filetags: :outline:\\n&quot;)\n :immediate-finish t\n :unnarrowed t)\n (&quot;r&quot; &quot;reference&quot; plain &quot;%?&quot;\n :if-new\n (file+head &quot;${slug}.org&quot; &quot;#+title: ${title}\\n&quot;)\n :immediate-finish t\n :unnarrowed t)\n (&quot;m&quot; &quot;memo&quot; entry &quot;* ${title}\\n%?&quot;\n :if-new\n (file &quot;memos.org&quot;)\n :immediate-finish t\n :unnarrowed t)))\n :bind ((&quot;C-c n l&quot; . org-roam-buffer-toggle)\n (&quot;C-c n f&quot; . org-roam-node-find)\n (&quot;C-c n g&quot; . org-roam-graph)\n (&quot;C-c n i&quot; . org-roam-node-insert)\n (&quot;C-c n c&quot; . org-roam-capture)\n ;; Dailies\n (&quot;C-c n j&quot; . org-roam-dailies-capture-today))\n :config\n ;; If you&#39;re using a vertical completion framework, you might want a more informative completion interface\n (setq org-roam-node-display-template (concat &quot;${title:*} &quot; (propertize &quot;${tags:10}&quot; &#39;face &#39;org-tag)))\n (org-roam-db-autosync-mode)\n ;; If using org-roam-protocol\n (require &#39;org-roam-protocol))\n\n;; citations\n(use-package citar\n :after org-roam\n :custom (org-cite-insert-processor &#39;citar)\n (org-cite-follow-processor &#39;citar)\n (org-cite-activate-processor &#39;citar)\n (citar-bibliography &#39;(&quot;~/org/biblio.bib&quot;))\n (citar-notes-paths &#39;(&quot;~/org/roam&quot;))\n (citar-file-note-extensions &#39;(&quot;org&quot;))\n :hook (LaTeX-mode . citar-capf-setup)\n (org-mode . citar-capf-setup)\n :bind ((&quot;C-c n b&quot; . #&#39;citar-open-notes)\n :map org-mode-map :package org\n (&quot;C-c b&quot; . #&#39;org-cite-insert)))\n\n;; view your org-roam notes on a map\n(use-package org-roam-ui\n :after org-roam\n :custom (org-roam-ui-sync-theme t)\n (org-roam-ui-follow t)\n (org-roam-ui-update-on-save t)\n (org-roam-ui-open-on-start t))\n\n;; archive web pages in org attachments\n(use-package org-board\n :after org\n :custom (org-board-default-browser #&#39;browse-url)\n (org-board-property &quot;ROAM_REFS&quot;)\n :bind (:map org-mode-map\n (&quot;C-c B a&quot; . org-board-archive)\n (&quot;C-
(3909,'2023-07-27','Permission tickets. ',688,'Collective delusions of elective conclusions. ','<p>No special knowledge nor resources.<br />\nThis is a preview show for some future, self referential tangle of\ncryptographic distraction.</p>\n<p>So far, I see money as some social credit by proxy.<br />\nI recognise the utility of keeping track of resource recipes.<br />\nI also see dangers in over abstracting relations beyond robustly\nprovable outcomes.</p>\n',398,0,1,'CC-BY-SA','ledger,cryptographic,consensus,permission,integrity',0,0,1),
(3911,'2023-07-31','An overview of the \'ack\' command',1255,'A Perl-based \'grep\'-like tool that can search by file type','<article>\n<h2 id=\"introduction\">Introduction</h2>\n<p>I have occasionally been using a tool called <code>ack</code> for a\nfew years now. Its billed as <em>“an alternative to grep for\nprogrammers”</em>.</p>\n<p>There are several features I find particularly useful:</p>\n<ul>\n<li><p>It can restrict text searches to files of a particular\n<em>type</em></p></li>\n<li><p>It uses Perl regular expressions which may be the most powerful\nand feature rich types of REs available at present</p></li>\n<li><p>You can limit the search area within a file if desired</p></li>\n</ul>\n<p>It is a very comprehensive and useful tool, though maybe quite\ncomplex to use. Personally I use it in special cases where I need its\npower, and otherwise use the usual <code>grep</code>.</p>\n<p>In this episode I will give you the flavour of its capabilities and\notherwise leave you to research more if it sounds interesting.</p>\n<h2 id=\"installing-ack\">Installing <code>ack</code></h2>\n<p>The tool can be found in repositories. I use Debian, and\n<code>ack</code> is in the Debian repo and can be installed with:</p>\n<pre><code>sudo apt install ack</code></pre>\n<p>Installing it this way the version I have (and am describing here) is\n3.6.0. There is a new version, 3.7.0 available from the <a\nhref=\"https://beyondgrep.com/\">website</a>.</p>\n<p>The documentation on the website suggests installing it as a Perl\nmodule using <code>CPAN</code>, which is something I will do soon I\nthink.</p>\n<h2 id=\"perl-regular-expressions\">Perl regular expressions</h2>\n<p>These are very sophisticated.</p>\n<p>A project to convert the Perl regular expression capabilities into a\nportable library form was undertaken by Philip Hazel of Cambridge\nUniversity in 1997, and was called <em>Perl Compatible Regular\nExpressions</em> or PCRE.</p>\n<p>Philip Hazel was the originator of the <code>exim</code> mail\ntransfer agent (MTA, or mail server), and wanted to use PCRE within\nit.</p>\n<p>Since then PCRE (and later PCRE2) is the way regular expressions are\nimplemented in a lot of other software, which shows how widespread use\nof the Perl RE has become.</p>\n<p>The <code>ack</code> documentation refers to the Perl manual for\ndetails of this type of regular expression, and to a tutorial, if you\nwish to gain a deeper understanding.</p>\n<p>It should be noted that GNU <code>grep</code> can use Perl compatible\nregular expressions when matching lines in files, but this feature is\nmarked as experimental.</p>\n<h2 id=\"file-types\">File types</h2>\n<p>The <code>ack</code> command has rules for recognising file types. It\ndoes this by looking at the name extensions (<code>\'.html\'</code> or\n<code>\'.py\'</code> for example), and in some cases by examining their\ncontents. The complete list of types can be found by running:</p>\n<pre><code>ack --help-types</code></pre>\n<p>… or, for a more detailed but less readable list:</p>\n<pre><code>ack --dump</code></pre>\n<p>Some examples are:</p>\n<ul>\n<li><code>cc</code> for C files</li>\n<li><code>haskell</code> for Haskell files</li>\n<li><code>lua</code> for Lua files</li>\n<li><code>python</code> for Python files</li>\n<li><code>shell</code> for Bash, and other shell command files</li>\n</ul>\n<p>These names can be used with the options <code>-t TYPE</code> and\n<code>--type=TYPE</code> and also by simply preceding them with two\ndashes (<code>--TYPE</code>). There are also ways of requesting files\nnot of a given type: <code>-T TYPE</code>, <code>--type=noTYPE</code>\nand <code>--noTYPE</code>.</p>\n<p>To check files in the current directory of type <code>shell</code> an\n<code>ack</code> command like the following might be used and the\nfollowing type of output produced:</p>\n<pre><code>$ ack --shell declare\nBash_snippet__using_coproc_with_SQLite/examples/coproc_test.sh\n11:declare -a com=(&#39;date +%F&#39; &#39;whoami&#39; &#39;id&#39; &#39;echo &quot;$BASH_VERSION&quot;&#39;</cod
(3912,'2023-08-01','Emergency Show: Biltong and Rooibos',233,'Shane brings us a taste of South Africa with some local tea and jerky','<p><a href=\"https://en.wikipedia.org/wiki/Biltong\">Biltong</a><br />\n<small>From Wikipedia, the free encyclopedia</small></p>\n\n<p><b>Biltong</b> is a form of <a href=\"https://en.wikipedia.org/wiki/Drying_(food)\" class=\"mw-redirect\" title=\"Drying (food)\">dried</a>, <a href=\"https://en.wikipedia.org/wiki/Curing_(food_preservation)\" title=\"Curing (food preservation)\">cured</a> <a href=\"https://en.wikipedia.org/wiki/Meat\" title=\"Meat\">meat</a> which originated in <a href=\"https://en.wikipedia.org/wiki/Southern_African\" class=\"mw-redirect\" title=\"Southern African\">Southern African</a> countries (<a href=\"https://en.wikipedia.org/wiki/South_Africa\" title=\"South Africa\">South Africa</a>, <a href=\"https://en.wikipedia.org/wiki/Zimbabwe\" title=\"Zimbabwe\">Zimbabwe</a>, <a href=\"https://en.wikipedia.org/wiki/Malawi\" title=\"Malawi\">Malawi</a>, <a href=\"https://en.wikipedia.org/wiki/Namibia\" title=\"Namibia\">Namibia</a>, <a href=\"https://en.wikipedia.org/wiki/Botswana\" title=\"Botswana\">Botswana</a>, Eswatini and <a href=\"https://en.wikipedia.org/wiki/Zambia\" title=\"Zambia\">Zambia</a>). Various types of meat are used to produce it, ranging from <a href=\"https://en.wikipedia.org/wiki/Beef\" title=\"Beef\">beef</a> to <a href=\"https://en.wikipedia.org/wiki/Game_(food)\" class=\"mw-redirect\" title=\"Game (food)\">game</a> meats such as <a href=\"https://en.wikipedia.org/wiki/Ostrich\" title=\"Ostrich\">ostrich</a> or <a href=\"https://en.wikipedia.org/wiki/Kudu\" title=\"Kudu\">kudu</a>. The cut may also vary being either <a href=\"https://en.wikipedia.org/wiki/Fillet_(cut)\" title=\"Fillet (cut)\">fillets</a> of meat cut into strips following the grain of the muscle, or flat pieces sliced across the grain. It is related to beef <a href=\"https://en.wikipedia.org/wiki/Jerky\" title=\"Jerky\">jerky</a>; both are spiced, dried meats; however the typical ingredients, taste, and production processes may differ.</p><p>The word \"biltong\" is from the <a href=\"https://en.wikipedia.org/wiki/Dutch_(language)\" class=\"mw-redirect\" title=\"Dutch (language)\">Dutch</a> <span title=\"Dutch-language text\"><i lang=\"nl\">bil</i></span> (\"buttock\") and <i><span title=\"Dutch-language text\"><i lang=\"nl\">tong</i></span></i> (\"strip\" or \"tongue\").</a><p><a href=\"https://en.wikipedia.org/wiki/File:Sliced_Biltong.jpg\"><img src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/9/9f/Sliced_Biltong.jpg/220px-Sliced_Biltong.jpg\" decoding=\"async\" class=\"mw-file-element\" srcset=\"//upload.wikimedia.org/wikipedia/commons/thumb/9/9f/Sliced_Biltong.jpg/330px-Sliced_Biltong.jpg 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/9/9f/Sliced_Biltong.jpg/440px-Sliced_Biltong.jpg 2x\" data-file-width=\"2421\" data-file-height=\"1715\" width=\"220\" height=\"156\"></a></p>\n\n<hr />\n\n<p><a href=\"https://en.wikipedia.org/wiki/Rooibos\">Rooibos</a><br />\n<small>From Wikipedia, the free encyclopedia</small></p>\n\n<p>\n<b>Rooibos, meaning \"red bush\")</b>, or <i><b>Aspalathus linearis</b></i>, is a\n<a href=\"https://en.wikipedia.org/wiki/Broom_(shrub)\" class=\"mw-redirect\" title=\"Broom (shrub)\">broom\n</a>-like member of the plant family\n<a href=\"https://en.wikipedia.org/wiki/Fabaceae\" title=\"Fabaceae\">Fabaceae\n</a> that grows in\n<a href=\"https://en.wikipedia.org/wiki/South_Africa\" title=\"South Africa\">South Africa\n</a>\'s\n<a href=\"https://en.wikipedia.org/wiki/Fynbos\" title=\"Fynbos\">fynbos\n</a> biome.\n\n</p>\n<p>The leaves are used to make a\n<a href=\"https://en.wikipedia.org/wiki/Herbal_tea\" title=\"Herbal tea\">herbal tea\n</a> that is called\n<b>rooibos\n</b> (especially in Southern Africa),\n<b>bush tea\n</b>,\n<b>red tea\n</b>, or\n<b>redbush tea\n</b> (predominantly in Great Britain).\n\n</p>\n<p>The tea has been popular in\n<a href=\"https://en.wikipedia.org/wiki/Southern_Africa\" title=\"Southern Africa\">Southern Africa\n</a>
(3913,'2023-08-02','Lurking Prion Q and A',316,'Lurking Prion answers questions about his name, former career field as an MM','<p>Add to reserve queue</p>\n<p>Lurking <a href=\"https://en.wikipedia.org/wiki/Prion\">Prion</a> answers questions about his name, former career field as an <a href=\"https://en.wikipedia.org/wiki/Machinist%27s_mate\">Machinist\'s mate</a>, and breaks down a short bio of his security path thus far.</p>\n\n',405,74,1,'CC-BY-SA','bio,backgrown,questions,mm,Machinist\'s mate',0,0,1),
(3914,'2023-08-03','how to deal with blisters',262,'a technique my father taught me, for dealing with blisters','<p>Many years ago, my father taught me how to deal with blisters using a\nneedle and thread.</p>\n',399,0,0,'CC-BY-SA','first aid',0,0,1),
(3915,'2023-08-04','Why the hell is my audio clipping?',802,'MrX has audio that is clipping but will he be able to fix it?','<p>This is an emergency show as we are short of shows. I was going to do\nthis show anyway as I noticed my audio was clipping on the last few\nshows I sent in yet I didn\'t notice it on the files I sent to HPR.</p>\n<p>In this episode I waffle a bit and read out some of the stuff on the\nHPR site about giving shows. During the recording I introduce increasing\namounts of attenuation each decrease in volume signified by a gong. I\nhope this will allow me to stop the clipping from my audio.</p>\n',201,0,1,'CC-BY-SA','audio, podcasting, Audacity',0,0,1),
(3924,'2023-08-17','Mass Quick Tips for August 2023',1549,'operat0r will never get to some of these as full eps so here you go!','<ul>\n<li><p>yakake :<br />\n<a href=\"https://hackerpublicradio.org/eps/hpr3446/index.html\"\nclass=\"uri\">https://hackerpublicradio.org/eps/hpr3446/index.html</a><br />\n<a\nhref=\"https://github.com/freeload101/SCRIPTS/blob/master/Bash/Movie2Text.sh\"\nclass=\"uri\">https://github.com/freeload101/SCRIPTS/blob/master/Bash/Movie2Text.sh</a></p></li>\n<li><p>OLD : <a\nhref=\"https://github.com/freeload101/SCRIPTS/blob/master/Bash/Stream_to_Text_with_Keywords.sh\"\nclass=\"uri\">https://github.com/freeload101/SCRIPTS/blob/master/Bash/Stream_to_Text_with_Keywords.sh</a><br />\n</p></li>\n<li><p><a href=\"https://rmccurdy.com/stuff/NLP/?C=M;O=A\"\nclass=\"uri\">https://rmccurdy.com/stuff/NLP/?C=M;O=A</a></p></li>\n<li><p><a\nhref=\"https://rmccurdy.com/.scripts/downloaded/parentingadhdandautism.com/\"\nclass=\"uri\">https://rmccurdy.com/.scripts/downloaded/parentingadhdandautism.com/</a></p></li>\n<li><p>HighContract Blk Backfround :<br />\n<a\nhref=\"https://github.com/freeload101/SCRIPTS/tree/master/AutoHotkey/High%20Contrast%20Chrome\"\nclass=\"uri\">https://github.com/freeload101/SCRIPTS/tree/master/AutoHotkey/High%20Contrast%20Chrome</a></p></li>\n<li><p>VLC Compress audio quite/LOUD\n<code>load-module module-ladspa-sink sink_name=compressor plugin=sc1_1425 label=sc1 control=5,100,-25,8,2.5,0</code>\n<a\nhref=\"https://docs.google.com/document/d/1E1xAwWpq-C4vEh8LCRw7MD7jnaclX9Faf2L3dZWiqQY/edit\"\nclass=\"uri\">https://docs.google.com/document/d/1E1xAwWpq-C4vEh8LCRw7MD7jnaclX9Faf2L3dZWiqQY/edit</a></p></li>\n<li><p>VLC .vlcrc config file and yatse custom commands:<br />\n<a\nhref=\"https://github.com/freeload101/SCRIPTS/tree/789bbf9969ae10975549ee4617a039967573c92b/MISC\"\nclass=\"uri\">https://github.com/freeload101/SCRIPTS/tree/789bbf9969ae10975549ee4617a039967573c92b/MISC</a></p></li>\n<li><p><a\nhref=\"https://kinkeadtech.com/how-to-prevent-fire-tv-stick-from-going-to-sleep/\"\nclass=\"uri\">https://kinkeadtech.com/how-to-prevent-fire-tv-stick-from-going-to-sleep/</a>\n/ ads sleep mode</p></li>\n<li><p>Sponsorblock for Android:<br />\n<a\nhref=\"https://www.youtube.com/watch?v=JKUmM9r63F8&amp;feature=youtu.be\"\nclass=\"uri\">https://www.youtube.com/watch?v=JKUmM9r63F8&amp;feature=youtu.be</a></p></li>\n</ul>\n',36,0,1,'CC-BY-SA','hacking,computers,Android,quick tips',0,0,1),
(3917,'2023-08-08','Response to \"Permission Tickets\" by oneofspoons',408,'Hopefully a useful provocation, in response to a recent intriguing show by another HPR host','<p>A response show to oneofspoons\' <a\nhref=\"https://hackerpublicradio.org/eps/hpr3909/index.html\">hpr3909 ::\nPermission Tickets\"</a>.</p>\n<p>Reference: <a\nhref=\"https://harpersmagazine.substack.com/p/the-writers-strike-or-the-writers#details\">Harper\'s\nPodcast -The Writers&#x2019; Strike, or: the Writers Strike</a></p>\n',399,0,0,'CC-BY-SA','crypto',0,0,1),
(3925,'2023-08-18','Uncommon tools and social media',329,'Daniel Persson talks about some of the tools he uses for video production and social media','<p>Before I used common tools and Windows, I was present on Facebook and\nso on. But I\'ve changed and I don\'t think the difference is that\nlarge.</p>\n',382,0,0,'CC-BY-SA','social media, linux',0,0,1),
(3919,'2023-08-10','How I hacked my voice',959,'Tuula talks about what she\'s doing to change her voice','<p>Resource mentioned in the episode: <a\nhref=\"https://www.youtube.com/@TransVoiceLessons\"\nclass=\"uri\">https://www.youtube.com/@TransVoiceLessons</a></p>\n',364,0,0,'CC-BY-SA','voice, trans',0,0,1),
(3922,'2023-08-15','Silent Key',241,'A brief history of the term \"Silent Key\" as applied to amateur radio','<p>Hacker Public Radio &#x2013; Silent Key HPR3922</p>\n<p>Hello this is Trey, and I am recording this in the shadow of the loss\nof a good friend and mentor who helped guide me in my career and in\nhobbies like electronics, aviation, and amateur radio. The amateur radio\narea is what I will be discussing today.</p>\n<p>Many terms within amateur radio find their origins from the days of\ntelegraph, when operators would use Morse code to send messages across\ngreat distances using wires strung from pole to pole. The telegraph\n&#x201C;key&#x201D; (or code key) was basically a momentary contact switch which would\nclose an electrical connection when pressed. Pressing the key down for a\nshort period of time would send a short pulse down the line, which is\nreferred to as a &#x201C;dit&#x201D; (Sometimes the term &#x201C;dot&#x201D; is used). This may be\nwritten using the period &#x201C;.&#x201D; symbol. Holding the key down for a bit\nlonger would send a longer pulse down the line, called a &#x201C;dash&#x201D;\n(Sometimes the term &#x201C;dah&#x201D; is used) and it may be written using the\nhyphen &#x201C;-&#x201D; symbol.</p>\n<p>Telegraph operators became a close knit community, even though they\nwere geographically separated. Often one operator could identify another\noperator by subtleties in the style or personality of how they sent\ntheir messages. This was known as the operator&#x2019;s &#x201C;fist&#x201D; and today we\nwould describe it as a &#x201C;behavioral biometric&#x201D;. As the community of\ntelegraph operators moved around or were replaced, new &#x201C;fists&#x201D; would be\nidentified, as new personalities of code sending were tapped out on the\ntelegraph keys.</p>\n<p>When an operator passed away, it was a loss to the community, and a\nloss of someone who might have been befriended remotely by other\noperators. The term of respect created for this situation was &#x201C;Silent\nKey&#x201D; sent as the abbreviation &#x201C;SK&#x201D; ( &#x2026; -.- ). It meant that the\nparticular operator would never send code again. His telegraph key would\nbe silent.</p>\n<p>This tradition has been carried on among amateur radio operators or\n&#x201C;Hams&#x201D;. This is also a close knit community of people. While some still\nuse Morse code to communicate (Referred to as &#x201C;CW&#x201D; for continuous wave),\nthere are many other forms in use, including voice and digital modes.\nBut regardless of how we communicated with them, when we lose one of our\nown, we still say they are SK. Silent key. No longer able to\ntransmit.</p>\n<p>Organizations like the American Radio Relay League (ARRL) and QRZ.com\ntry to update their records when a Ham passes away. There are also\ndatabases like silentkeyhq.com which keep records and memories of\ndeceased operators.</p>\n<p>So, it is with great sadness that I have been updating the records\nfor my close friend and mentor KV4YD. Thank you for your friendship and\nsupport, and for sharing your wisdom over the years. You will be\nmissed.</p>\n<p><a\nhref=\"https://www.silentkeyhq.com/main.php?p=bin/NSKALookup.php&amp;call=KF8F&amp;uid=1111688122977783\"\nclass=\"uri\">https://www.silentkeyhq.com/main.php?p=bin/NSKALookup.php&amp;call=KF8F&amp;uid=1111688122977783</a></p>\n<p>(Note: There is intentionally 5 seconds of recorded silence at the\nend of this recording as a moment of silence to remember our silent\nkeys)</p>\n<p>KV4YD 73 VA E E</p>\n',394,43,0,'CC-BY-SA','morse code, cw, amateur radio, telegraph, memorial',0,0,1),
(3923,'2023-08-16','Meal preparation.',2488,'Sgoti chats with Bumble Bee about meal preparation.','<h2 id=\"meal-preparation-with-bumble-bee.\">Meal preparation with Bumble\nBee.</h2>\n<ul>\n<li><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Meal_preparation\">Meal\npreparation</a><br />\n\n<ul>\n<li>Meal preparation involves preparing meals ahead of time for a short\nor period of time. This practice may occur among people who desire to\nlose weight, gain muscle mass, or maintain a healthy lifestyle. Advance\npreparation can serve to standardize food portions. Meals preparation\nare fully cooked. Meals may be prepared in small containers such as\nTupperware, and are sometimes labeled and dated to remain\norganized.<br />\n</li>\n</ul></li>\n<li><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Onion\">Onions</a><br />\n\n<ul>\n<li>Freshly cut onions often cause a stinging sensation in the eyes of\npeople nearby, and often uncontrollable tears. This is caused by the\nrelease of a volatile liquid, syn-propanethial-S-oxide and its aerosol,\nwhich stimulates nerves in the eye. This gas is produced by a chain of\nreactions which serve as a defence mechanism: chopping an onion causes\ndamage to cells which releases enzymes called alliinases. These break\ndown amino acid sulfoxides and generate sulfenic acids. A specific\nsulfenic acid, 1-propenesulfenic acid, is rapidly acted on by a second\nenzyme, the lacrimatory factor synthase (LFS), producing the\nsyn-propanethial-S-oxide. This gas diffuses through the air and soon\nreaches the eyes, where it activates sensory neurons. Lacrimal glands\nproduce tears to dilute and flush out the irritant.<br />\n</li>\n<li>Cooking onions and sweet onions are better stored at room\ntemperature, optimally in a single layer, in large mesh bags in a dry,\ncool, dark, well-ventilated location. In this environment, cooking\nonions have a shelf life of three to four weeks and sweet onions one to\ntwo weeks. Cooking onions will absorb odours from apples and pears.\nAlso, they draw moisture from vegetables with which they are stored\nwhich may cause them to decay.<br />\n</li>\n<li>Sweet onions have a greater water and sugar content than cooking\nonions. This makes them sweeter and milder tasting, but reduces their\nshelf life. Sweet onions can be stored refrigerated; they have a shelf\nlife of around 1 month. Irrespective of type, any cut pieces of onion\nare best tightly wrapped, stored away from other produce, and used\nwithin two to three days.<br />\n</li>\n</ul></li>\n<li><strong>Source:</strong> <a\nhref=\"https://www.momswhothink.com/what-are-dump-dinners-and-which-recipes-are-easiest/\">What\nAre Dump Dinners, And Which Recipes Are Easiest?</a><br />\n</li>\n<li><strong>Source:</strong> <a\nhref=\"https://www.tasteofhome.com/collection/slow-cooker-dump-dinners/\">55\nDump Dinners for Your Slow Cooker</a><br />\n</li>\n<li><strong>Source:</strong> <a\nhref=\"https://www.pinterest.com/\">Pinterest</a><br />\n</li>\n<li><strong>Source:</strong> <a\nhref=\"https://www.amazon.com/mug-warmer/s?k=mug+and+warmer\">Mug\nwarmers.</a><br />\n</li>\n</ul>\n<p>This work is licensed under a <a\nhref=\"https://creativecommons.org/licenses/by-sa/4.0/\"\ntitle=\"CC-BY-SA 4.0 International\">Creative Commons\nAttribution-ShareAlike 4.0 International License</a>.</p>\n',391,0,0,'CC-BY-SA','Bumble Bee, Meal Prep',0,0,1),
(3933,'2023-08-30','Planning for a planner.',2852,'Sgoti and Bumble Bee discuss discbound planners, agendas, ink pens and more.','<h2 id=\"discbound-planners-and-notebooks.\">Discbound Planners and\nNotebooks.</h2>\n<ul>\n<li><strong>Source:</strong> <a\nhref=\"https://www.staples.com/discbound+notebook/directory_discbound%2520notebook\">Staples.com\ndiscbound notebook search</a><br />\n</li>\n<li><strong>Supporting Source:</strong> <a\nhref=\"https://www.staples.com/Staples-Arc-Customizable-Leather-Notebook-System-Black-6-3-4-x-8-3-4-Each-20000/product_886234\">Staples\nArc Customizable Notebook, 6-3/4\" x 8-3/4\", 60 Sheets, Narrow Ruled,\nBlack</a><br />\n</li>\n<li><strong>Source:</strong> <a\nhref=\"https://thehappyplanner.com/\">Happy Planner.</a><br />\n</li>\n<li><strong>Source:</strong> <a\nhref=\"https://www.joann.com/search/?q=planners&amp;lang=default\">JoAnn</a><br />\n</li>\n</ul>\n<p>Don\'t listen to Bumble Bee, the caps are what you want; get the one\nwith the cap.<br />\nAlso these are the fat boys, they are 1.0 mm, not 0.7mm.<br />\n- <strong>Source:</strong> <a\nhref=\"https://www.walmart.com/ip/BIC-Round-Stic-Xtra-Life-Ballpoint-Pens-Medium-Point-1-0mm-60-Count-Black-Pens/14914643?athbdg=L1102\">BIC\nRound Stic Xtra Life Ballpoint Pens, Medium Point (1.0mm), 60 Count,\nBlack Pens</a><br />\n- <strong>Source:</strong> <a\nhref=\"https://www.walmart.com/ip/BIC-Round-Stic-Xtra-Life-Ballpoint-Pens-Medium-Point-1-0mm-Blue-60-Count/14972251?athbdg=L1102\">BIC\nRound Stic Xtra Life Ballpoint Pens, Medium Point (1.0mm), Blue, 60\nCount</a><br />\n</p>\n<p>These feel so good in the hand but they have high dry times; just not\nworth it.<br />\n- <strong>Source:</strong> <a\nhref=\"https://www.walmart.com/ip/uni-ball-Signo-Gel-207-Retractable-Roller-Ball-Pen-Medium-Point-Translucent-Barrel-Black-Ink-12-Pack-33950/193383509\">uni-ball\nSigno Gel 207 Retractable Roller Ball Pen, Medium Point, Translucent\nBarrel, Black Ink, 12-Pack (33950)</a><br />\n</p>\n<p>I use these for drawing lines. Dry times are not bad, but there is a\ndry time.<br />\n- <strong>Source:</strong> <a\nhref=\"https://www.walmart.com/ip/uni-ball-Roller-Ball-Stick-Dye-Based-Pen-Micro-Point-0-5-mm-498774/39250950\">uni-ball\nRoller Ball Stick Dye-Based Pen Micro Point 0.5 mm 498774</a><br />\n- <strong>Source:</strong> <a\nhref=\"https://www.walmart.com/ip/Uni-Ball-SAN60101-Classic-Rollerball-Pens/15066664?athcpid=15066664&amp;athpgid=AthenaItempage&amp;athcgid=null&amp;athznid=si&amp;athieid=v0_eeMjAuMCw5ODAuMCwwLjAyMjI3OTk4OTAwMjgwOTQ1NCwwLjVf&amp;athstid=CS055&amp;athguid=r3SSXQ4jq9E5eaSeRk1eXSeM7L7VDd4--1ZS&amp;athancid=39250950&amp;athposb=0&amp;athena=true\">Uni-Ball,\nSAN60101, Classic Rollerball Pens</a><br />\n</p>\n<p>Color pack, because why not!<br />\n- <strong>Source:</strong> <a\nhref=\"https://www.walmart.com/ip/BIC-Cristal-Xtra-Bold-Ball-Point-Pens-Bold-Point-1-6mm-Assorted-Colors-24-Count/27932641?athbdg=L1103\">BIC\nCristal Xtra Bold Ball Point Pens, Bold Point (1.6mm), Assorted Colors,\n24-Count</a><br />\n</p>\n<p>This work is licensed under a <a\nhref=\"https://creativecommons.org/licenses/by-sa/4.0/\"\ntitle=\"CC-BY-SA 4.0 International\">Creative Commons\nAttribution-ShareAlike 4.0 International License</a>.</p>\n',391,0,0,'CC-BY-SA','Discbound, Notebooks, Planners, Happy Planner, Ink Pens.',0,0,1),
(3935,'2023-09-01','Server build retrospective',586,'Daniel Persson goes through his experience of building his first server','<p>I have a lot of smaller PC\'s running as servers at home but now I\nfinally bought my first server chassis to install a real server in my\nrack. I ran into a lot of complications and that\'s covered in this\nepisode.</p>\n',382,0,0,'CC-BY-SA','server, hardware, rack',0,0,1),
(3945,'2023-09-15','My chrome plugins',271,'Daniel Persson summarize the essential plugins he uses every day','<p>We all use plugins in order to facilitate our work this is my\nfavorite picks.</p>\n',382,0,0,'CC-BY-SA','chrome, plugins',0,0,1),
(3955,'2023-09-29','airgradient measurement station',356,'Daniel Persson talks about a hardware measurement station he\'s installed','<p>AirGradient is an open-source solution to measure the air in your\nliving area. In my case, I need to keep track of the air in my office,\nso I have a healthy working environment.</p>\n',382,0,0,'CC-BY-SA','airgradient, measurement, air quality',0,0,1),
(3965,'2023-10-13','I\'ve taken the Conqueror Virtual Challenge',285,'Daniel Persson talks about a service where you challenge yourself for better health','<p>This service will help you keep track of your walks and incentivize\nyou to walk more and stay healthy.</p>\n',382,0,0,'CC-BY-SA','challenge, walk',0,0,1),
(3934,'2023-08-31','Crusader Kings II',2292,'Tuula rambles about her all time favourite strategy game Crusader Kings II','<h2 id=\"crusader-kings-ii\">Crusader Kings II</h2>\n<p>Crusader Kings II is a dynasty simulator, where your goal is to guide\nyour dynasty through the middle ages. It\'s very large game and this\nepisode can only scratch the surface.</p>\n<p>You\'re a ruler of some kind, like count, duchess, king or empress to\nname a few. You need to manage vassals in your realm and keep your\nneighbours at bay. When you\'re not busy with that, you can relax and go\nhunting, build an observatory or join a secret society (to name just a\nfew).</p>\n<p>Couple first games will be overwhelming, but it\'ll get easier when\nyou start realizing how things affect to each other and what kinds of\nthings you can do.</p>\n<p>If you\'re interested to learn more, have a look at the wiki: <a\nhref=\"https://ck2.paradoxwikis.com/Crusader_Kings_II_Wiki\"\nclass=\"uri\">https://ck2.paradoxwikis.com/Crusader_Kings_II_Wiki</a></p>\n',364,122,0,'CC-BY-SA','Crusader Kings, Paradox',0,0,1),
(3942,'2023-09-12','RE: How to make friends.',763,'Sgoti replies to Klaatu\'s show, \"How to make friends.\"','<h2 id=\"re-how-to-make-friends.\">RE: How to make friends.</h2>\n<ul>\n<li><p><strong>Source:</strong> <a\nhref=\"https://hackerpublicradio.org/eps/hpr3904/index.html\">hpr3904 ::\nHow to make friends</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Friendship\">Friendship</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Interpersonal_relationship\">Interpersonal\nrelationship</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Affection\">Affection</a><br />\n</p></li>\n</ul>\n',391,0,0,'CC-BY-SA','Friends, reply show',0,0,1),
(3946,'2023-09-18','Planning for a planner, part 02.',2168,'Sgoti and Bumble Bee discuss discbound planners, agendas, ink pens and more.','<h2 id=\"discbound-planners-and-notebooks.\">Discbound Planners and\nNotebooks.</h2>\n<ul>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.staples.com/discbound+notebook/directory_discbound%2520notebook\">Staples.com\ndiscbound notebook search</a><br />\n</p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://www.staples.com/Staples-Arc-Customizable-Leather-Notebook-System-Black-6-3-4-x-8-3-4-Each-20000/product_886234\">Staples\narc customizable notebook, 6.3/4in x 8.3/4in, 60 sheets, narrow ruled,\nblack</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://thehappyplanner.com/\">Happy Planner.</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.joann.com/search/?q=planners&amp;lang=default\">JoAnn</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.staples.com/post-it-transparent-notes-2-7-8-x-2-7-8-clear-36-sheets-pad-600-trspt/product_24471514\">Transparent\nnotes, 36 sheets/pad, 1 pad/pack $5.19.</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.amazon.com/Discbound-Notebook-Envelope-Supplies-Organizer/dp/B0BNDDFRPS/ref=sr_1_15?keywords=Disc+bound+notebook&amp;qid=1690948654&amp;sr=8-15\">6\npack discbound pocket letter size envelope organizer</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.amazon.com/ZGMJ-Discbound-Pre-punched-100Sheets-Loose-Leaf/dp/B0BDVQWDKF/ref=sr_1_2?crid=BLOS1P737715&amp;keywords=planner+paper+7+x+9.25&amp;qid=1690948924&amp;s=office-products&amp;sprefix=planner+paper+7+x+9.25%2Coffice-products%2C78&amp;sr=1-2\">Zgmj\nclassic size discbound lined refill paper, happy planner inserts,\n100sheets/200pages loose-leaf paper, 100gsm white paper, 7x9.25\nin</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.amazon.com/Classic-Discbound-Pre-punched-200Sheets-400Pages/dp/B0BW9LLHTW/ref=sr_1_9?crid=BLOS1P737715&amp;keywords=planner%2Bpaper%2B7%2Bx%2B9.25&amp;qid=1690949003&amp;s=office-products&amp;sprefix=planner%2Bpaper%2B7%2Bx%2B9.25%2Coffice-products%2C78&amp;sr=1-9&amp;th=1\">Classic\nsize discbound daily planner refill paper, happy planners insert,\n200sheets/400pages to do list planner refill, 100gsm white paper, 7x9.25\nin</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.amazon.com/Discbound-Undated-Planner-Pre-Punched-Scheduling/dp/B0C1QRMZXP/ref=sr_1_30?crid=BLOS1P737715&amp;keywords=planner%2Bpaper%2B7%2Bx%2B9.25&amp;qid=1690949044&amp;s=office-products&amp;sprefix=planner%2Bpaper%2B7%2Bx%2B9.25%2Coffice-products%2C78&amp;sr=1-30&amp;th=1\">Discbound\nundated daily plan paper refill, 120 gsm, 80 sheets, happy planner 9\ndisc pre-punched inserts, 7x9.25 inch, daily to-do, notes, and\nscheduling</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.etsy.com/listing/824849113/leather-personalized-discbound-planner?ga_order=most_relevant&amp;ga_search_type=all&amp;ga_view_type=gallery&amp;ga_search_query=discbound+notebook&amp;ref=sr_gallery-1-17&amp;pro=1&amp;sts=1&amp;organic_search_click=1\">Leather\npersonalized discbound planner cover</a><br />\n</p></li>\n</ul>\n<p>This work is licensed under a <a\nhref=\"https://creativecommons.org/licenses/by-sa/4.0/\"\ntitle=\"CC-BY-SA 4.0 International\">Creative Commons\nAttribution-ShareAlike 4.0 International License</a>.</p>\n',391,0,0,'CC-BY-SA','Discbound, Notebooks, Planners, Happy Planner, Ink Pens.',0,0,1),
(3957,'2023-10-03','The Oh No! News.',2201,'Sgoti talks about investment and recovery scams.','<h2 id=\"the-oh-no-news.\">The <em>Oh No!</em> news.</h2>\n<h2 id=\"oh-no-news-is-good-news.\"><em>Oh No!</em> News is Good\nNews.</h2>\n<ul>\n<li><strong>TAGS:</strong> User space, investment scams, recovery\nscams</li>\n</ul>\n<hr />\n<h3 id=\"user-space.\"><strong>User space.</strong></h3>\n<ul>\n<li><p><strong>Source:</strong> <a\nhref=\"https://consumer.ftc.gov/scams\">Avoiding and Reporting\nScams.</a><br />\n</p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://consumer.ftc.gov/articles/refund-and-recovery-scams\">Refund\nand Recovery Scams.</a><br />\n</p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://consumer.ftc.gov/scams?items_per_page=20&amp;search=investment&amp;field_cfg_scams_target_id%5B2236%5D=2236\">Investment\nopportunity scams.</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.reddit.com/r/Scams/\">Reddit Community:\nr/Scams</a><br />\n</p></li>\n</ul>\n<hr />\n<ul>\n<li><strong>Additional Information.</strong>\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Data_breach\"\ntitle=\"From Wikipedia, the free encyclopedia.\">What is a \"Data\nBreach\"?</a> A data breach is a security violation, in which sensitive,\nprotected or confidential data is copied, transmitted, viewed, stolen,\naltered or used by an individual unauthorized to do so.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Malware\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is \"Malware\"?</a>\nMalware (a <a href=\"https://en.wikipedia.org/wiki/Portmanteau\"\ntitle=\"From Wikipedia, the free encyclopedia\">portmanteau</a> for\nmalicious software) is any software intentionally designed to cause\ndisruption to a computer, server, client, or computer network, leak\nprivate information, gain unauthorized access to information or systems,\ndeprive access to information, or which unknowingly interferes with the\nuser\'s computer security and privacy.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Payload_(computing)\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is a \"Payload\"?</a>\nIn the context of a computer virus or worm, the payload is the portion\nof the malware which performs malicious action; deleting data, sending\nspam or encrypting data. In addition to the payload, such malware also\ntypically has overhead code aimed at simply spreading itself, or\navoiding detection.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Phishing\"\ntitle=\"From Wikipedia, the free encyclopedia.\">What is \"Phishing\"?</a>\nPhishing is a form of <a\nhref=\"https://en.wikipedia.org/wiki/Social_engineering_(security)\"\ntitle=\"From Wikipedia, the free encyclopedia\">social engineering</a>\nwhere attackers deceive people into revealing sensitive information or\ninstalling malware such as <a\nhref=\"https://en.wikipedia.org/wiki/Ransomware\"\ntitle=\"From Wikipedia, the free encyclopedia\">ransomware</a>. Phishing\nattacks have become increasingly sophisticated and often transparently\nmirror the site being targeted, allowing the attacker to observe\neverything while the victim is navigating the site, and transverse any\nadditional security boundaries with the victim.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Social_engineering_(security)\">Social\nengineering (security)</a> In the context of information security,\nsocial engineering is the <a\nhref=\"https://en.wikipedia.org/wiki/Psychological_manipulation\">psychological\nmanipulation</a> of people into performing actions or divulging\nconfidential information. A type of confidence trick for the purpose of\ninformation gathering, fraud, or system access, it differs from a\ntraditional \"con\" in that it is often one of many steps in a more\ncomplex fraud scheme.<br />\n</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Information_security\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is \"Information\nSecurity\" (InfoSec)?</a> Information security, sometimes shortened to\nInfoSec, is the practice
(3926,'2023-08-21','Karate Do: An Overview',2706,'Hipernike talks about Karate, its meaning and some of the things he has learnt','<p>Sorry for my English, I\'m still improving it, and specially for\nconfusing kicks with hand strikes.</p>\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Gichin_Funakoshi\">Gichin\nFunakoshi</a>: The father of modern karate and the founder of Shotokan\nstyle\n<ul>\n<li>Book Karate-Do Kyohan</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Nij%C5%AB_kun\">Nij&#x16B; kun</a>:\nHis 20 precepts</li>\n</ul></li>\n<li>In Karate your main enemy is yourself</li>\n<li>Three pillars of Karate:\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Karate_kata\">Kata</a>: Series\nof movements that symbolize a combat</li>\n<li>In Shotokan Style, there are 27 kata practiced</li>\n<li>Kihon: Practice of the basic techniques</li>\n<li>Kumite: Combat</li>\n</ul></li>\n<li>Dashi (Stances)</li>\n<li><a href=\"https://en.wikipedia.org/wiki/D%C5%8Dj%C5%8D_kun\">D&#x14D;j&#x14D;\nkun</a>: Training hall rules</li>\n<li><a href=\"https://thekarateblog.com/karate-belt-order\">Karate belt\norder</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Sensei\">Sensei</a>: \"One who\ncomes before\"</li>\n<li>Four main Karate styles\n<ul>\n<li>Goju-ryu, Shotokan-ryu, Wado-ryu, and Shito-ryu</li>\n</ul></li>\n<li><a href=\"https://www.youtube.com/watch?v=SFxfnjBYmv8\">Taikyoku\nShodan</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=Jkv8Ks_fEqk\">Kanku\nDai</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=tXPZFarJMh0\">Bassai\nDai</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=DOfMJtZqn0U\">Tekki Shodan\nperformed by Gichin Funakoshi</a></li>\n<li><a href=\"https://youtu.be/rXk-rYwcYno\">The Last Samurai: No mind\nscene</a>\n<ul>\n<li><a href=\"https://youtu.be/aX97OF1p4nU\">And another scene</a></li>\n</ul></li>\n<li>The outcome of a battle depends on how one handles emptiness and\nfullness (Gichin Funakoshi, Nij&#x16B; kun)</li>\n<li>Defense techniques\n<ul>\n<li>Age uke</li>\n<li>Soto uke</li>\n<li>Uchi uke</li>\n<li>Shuto uke</li>\n</ul></li>\n<li>Attack techniques\n<ul>\n<li>Empi uchi</li>\n<li>Uraken uchi</li>\n<li>Shuto uchi</li>\n<li>Kentsui uchi (hammer strike with your fist)</li>\n</ul></li>\n</ul>\n',410,0,0,'CC-BY-SA','karate, martial arts, sports',0,0,1),
(3961,'2023-10-09','RERE: How to make friends.',2495,'Sgoti and Mugs Up chat about, \"How to make friends womans edition\".','<h2 id=\"rere-how-to-make-friends.\">RERE: How to make friends.</h2>\n<ul>\n<li><p><strong>Source:</strong> <a\nhref=\"https://hackerpublicradio.org/eps/hpr3904/index.html\">hpr3904 ::\nHow to make friends</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://hackerpublicradio.org/eps/hpr3942/index.html\">hpr3942 ::\nRE: How to make friends.</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Friendship\">Friendship</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Interpersonal_relationship\">Interpersonal\nrelationship</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Affection\">Affection</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Blood_brother\">Blood\nbrother.</a><br />\n</p></li>\n</ul>\n<p>I thought this was funny: <a\nhref=\"https://www.wikihow.com/Ask-a-Friend-to-Hang-Out\">How to Ask a\nFriend to Hang Out.</a></p>\n',391,0,1,'CC-BY-SA','Make friends, Mugsup, Klaatu',0,0,1),
(3927,'2023-08-22','Audacity Update 20230702',372,'RESERVE SHOW. Audacity has been having problems lately.','<p>Audacity seems to have developed some sensitivity problems of late\nand that has affected my ability to process my podcast files as\nexplained in HPR 3900. I have found some evidence that the Audacity team\nis aware of this, but for now this is how I work around the problem.</p>\n<h2 id=\"links\">Links</h2>\n<ul>\n<li><a href=\"https://hackerpublicradio.org/eps/hpr3900/index.html\"\nclass=\"uri\">https://hackerpublicradio.org/eps/hpr3900/index.html</a></li>\n<li><a\nhref=\"https://www.palain.com/miscellaneous-technical-notes/preparing-podcasts-for-listening/\"\nclass=\"uri\">https://www.palain.com/miscellaneous-technical-notes/preparing-podcasts-for-listening/</a></li>\n<li><a href=\"https://convertio.co/\"\nclass=\"uri\">https://convertio.co/</a></li>\n<li><a href=\"https://online-audio-converter.com/\"\nclass=\"uri\">https://online-audio-converter.com/</a></li>\n</ul>\n',198,0,0,'CC-BY-SA','Audacity, MP3, transcoding',0,0,1),
(3928,'2023-08-23','RE: Klaatu.',1467,'Sgoti confuses everyone with bash nonsense.','<p>HPR Shows by Klaatu.</p>\n<ul>\n<li><strong>Source:</strong> <a\nhref=\"https://hackerpublicradio.org/eps/hpr3887/index.html\">hpr3887 ::\n10 must-know commands for a new cloud admin.</a></li>\n<li><strong>Source:</strong> <a\nhref=\"https://hackerpublicradio.org/eps/hpr3882/index.html\">hpr3882 ::\nAlternatives to the cd command.</a></li>\n</ul>\n<p>Hot sauce lady.</p>\n<ul>\n<li><strong>Source:</strong> <a\nhref=\"https://www.youtube.com/watch?v=BpX_qT7Vefk\">Franks Red Hot Queen\n2011.</a></li>\n</ul>\n<pre><code>pwd &amp;&amp; ls --group-directories-first --classify --almost-all\n\n# some more ls aliases\nalias la=&#39;ls -l --human-readable --group-directories-first --classify --almost-all&#39;\nalias ll=&#39;ls --group-directories-first --classify --almost-all&#39;\nalias lr=&#39;ls -l --human-readable --group-directories-first --classify --recursive&#39;\nalias lar=&#39;ls -l --human-readable --group-directories-first --classify --almost-all --recursive&#39;\nalias lap=&#39;ls -l --human-readable --group-directories-first --classify --almost-all | less&#39;\n\n# safety first ;)\nalias rmi=&#39;rm --interactive --verbose&#39;\nalias mvi=&#39;mv --interactive --verbose&#39;\nalias cpi=&#39;cp --interactive --verbose&#39;\nalias .shred=&#39;bleachbit --shred&#39;\n\n# cd multi dir\nalias ..=&#39;cd ..;&#39;\nalias .2=&#39;cd ../..;&#39;\nalias .3=&#39;cd ../../..;&#39;\nalias .4=&#39;cd ../../../..;&#39;\nalias .5=&#39;cd ../../../../..;&#39;\n\n# Directory controls.\nfunction cd () {\nclear;\nbuiltin cd &quot;$@&quot; &amp;&amp; ls --group-directories-first --classify --almost-all;\n\nhistory -w;\n}\n\n#function pp () {\n#builtin pushd +$@ &amp;&amp; ls --group-directories-first --classify --almost-all\n#}\n\nfunction pushup (){\nbuiltin pushd $HOME/.config/vim/sessions/\nbuiltin pushd $HOME/.local/bin/\nbuiltin pushd $HOME/.thunderbird/*.default-release/\nbuiltin pushd $HOME/Documents/non-of-your-business/\nbuiltin pushd $HOME/Downloads/in/\nbuiltin pushd $HOME/Downloads/out/\nbuiltin pushd $HOME/Downloads/playground/\nbuiltin pushd $HOME/Music/hpr/shows/\nbuiltin pushd $HOME/projects/\nbuiltin pushd $HOME/projects/hprbank/bp/\nbuiltin pushd $HOME/symlinks/\nbuiltin pushd $HOME/tmp/\nbuiltin pushd +11\n\nbuiltin dirs -v\n}\n\nalias pd=&#39;pushd&#39;\nalias dirs=&#39;dirs -v&#39;\n\n# Update\nalias .upg=&#39;sudo apt update &amp;&amp; sudo apt upgrade -y;&#39;\n\n# shutdown | reboot\nalias .sd=&#39;sudo shutdown -P now;&#39;\nalias .rs=&#39;sudo reboot;&#39;\n\n# Misc\nalias ccb=&#39;cat $HOME/cb | xsel --input --clipboard &amp;&amp; echo &quot;Copy. $(date &quot;+%F %T&quot;)&quot;;&#39;\nalias pcb=&#39;xsel --output --clipboard &gt; $HOME/cb &amp;&amp; echo &quot;Copy. $(date &quot;+%F %T&quot;)&quot;;&#39;\nalias zz=&#39;xsel -c -b &amp;&amp; echo &quot;Clipboard Cleared. $(date &quot;+%F %T&quot;)&quot;;&#39;\n\n# File Mods\nalias 700=&#39;chmod --verbose =700&#39;\nalias 600=&#39;chmod --verbose =600&#39;\nalias 400=&#39;chmod --verbose =400&#39;\n\n###############################################################################\n# Functions\n###############################################################################\n\nfunction .s () {\nln --symbolic --verbose --target-directory=$HOME/symlinks/ $(pwd)/${1};\n}\n\nfunction extract () {\nif [ -f $1 ]\nthen\n case $1 in\n *.tar.bz2) tar -vxjf $1 ;;\n *.tar.gz) tar -vxzf $1 ;;\n *.tar) tar -xvf $1 ;;\n *.bz2) bunzip2 $1 ;;\n *.rar) unrar -x $1 ;;\n *.gz) gunzip $1 ;;\n *.tar) tar -vxf $1 ;;\n *.tbz2) tar -vxjf $1 ;;\n *.tgz) tar -vxzf $1 ;;\n *.zip) unzip $1 ;;\n *.Z) uncompress $1 ;;\n *.7z) 7z -x $1 ;;\n *) echo &quot;Good Heavens, &#39;$1&#39; will NOT extract...&quot; ;;\n esac\nelse\n echo &quot;Good Heavens, &#39;$1&#39; is NOT a valid file.&quot;\nfi\n}\n\nfunction myip () {\nip addr | grep &#39;state UP&#39; -A2 | tail -n1 | awk &#39;{print $2}&#39; | cut -f1 -d&#39;/&#39;;\n}\n\nfunction .mkd (){\nmkdir -v $(date +%
(3929,'2023-08-24','Some experiences with different notes apps',587,'About apps that store notes as markdown','<ul>\n<li><a href=\"https://simplenote.com/\"\nclass=\"uri\">https://simplenote.com/</a></li>\n<li><a href=\"https://standardnotes.com/\"\nclass=\"uri\">https://standardnotes.com/</a></li>\n<li><a href=\"https://www.inkdrop.app/\"\nclass=\"uri\">https://www.inkdrop.app/</a></li>\n<li><a href=\"https://www.qownnotes.org/\"\nclass=\"uri\">https://www.qownnotes.org/</a></li>\n<li><a href=\"https://joplinapp.org/\"\nclass=\"uri\">https://joplinapp.org/</a></li>\n<li><a href=\"https://urltomarkdown.com/\"\nclass=\"uri\">https://urltomarkdown.com/</a></li>\n</ul>\n',403,0,0,'CC-BY-SA','markdown, notes',0,0,1),
(3931,'2023-08-28','What Instrument was played in hpr3905?',2040,'I reveal what instrument was played in hpr3905','<p>If you didn\'t really understand my mumbling and stuttering, here is\nthe page ;-)</p>\n<p><a href=\"https://en.wikipedia.org/wiki/Nyckelharpa\"\nclass=\"uri\">https://en.wikipedia.org/wiki/Nyckelharpa</a></p>\n',422,0,0,'CC-BY-SA','Music, quiz, Instrument',0,0,1),
(3938,'2023-09-06','An open directory of web audio stream',1116,'I was looking for an open directory of web audio streams and found radio hyphen browser dot info.','<h2 id=\"references\">References</h2>\n<p><a\nhref=\"https://www.radio-browser.info\">https://www.radio-browser.info</a>\nthe site has good searching features, and even has a player. It has a\nmap view that\'s cute but not too useful because it doesn\'t zoom in\nenough. Still fun to fly around the world and tune in simply by clicking\nthe balloons, you should try it.</p>\n<p>Mobile apps that use this directory are found on <a\nhref=\"https://www.radio-browser.info/users\">https://www.radio-browser.info/users</a>.\nThe ones I\'ve used are TuneFM (with ads, pay what you want (I think) to\nremove ads, but very good Android Auto), and Transistor (no Android\nAuto, otherwise perfect). Open Radio is pretty good but the Android Auto\nis buggy. I have not tried any others.</p>\n<p>The episode in which Ken Fallon interviewed one of the maintainers of\nFunkwhale was <a\nhref=\"https://hackerpublicradio.org/eps/hpr3808/index.html\">hpr3808</a>.</p>\n<p>Some stations I\'ve been listening to:</p>\n<ul>\n<li><a\nhref=\"https://www.radio-browser.info/history/05fa3620-96fe-4386-8ba8-3b793ee2ba44\">Radio\nMEC</a>: Brazilian state-controlled. Located in Rio de Janeiro. Plays\nmore uppity stuff.</li>\n<li><a\nhref=\"https://www.radio-browser.info/history/ee5b9ae4-52d6-4136-b731-fdb3f02e99fb\">Radio\nNacional Rio de Janeiro</a>: Brazilian state-controlled, located in Rio\nde Janeiro. Plays more popular music, football broadcasts. A good show\ncomes on every saturday at 11:00 BRT.</li>\n<li><a\nhref=\"https://www.radio-browser.info/history/b746312d-1fd9-44c5-9db2-de69a8db009f\">Radio\nLiga Samba</a>: Samba.</li>\n<li><a\nhref=\"https://www.radio-browser.info/history/abd4c17c-32eb-11e9-8f31-52543be04c81\">Kansas\nCity Online Radio</a>: an online-only Blues station. Seems to mostly\nsyndicate podcasts.</li>\n</ul>\n',399,0,0,'CC-BY-SA','\"internet radio\", \"free culture\"',0,0,1),
(3951,'2023-09-25','Cell Phone Screen Protectors',1720,'I talk about how I fail at Cell Phone Screen Protectors','<p>I talk about how I fail at Cell Phone Screen Protectors</p>\n',36,0,1,'CC-BY-SA','tech,phone repair,cell phones,Screen Protectors',0,0,1),
(3932,'2023-08-29','Short introduction to inxi',437,'folky gives the show about inxi that Ken wished for','<h2 id=\"link\">Link:</h2>\n<ul>\n<li><a href=\"https://github.com/smxi/inxi\">inxi - a command line system\ninformation tool</a></li>\n</ul>\n',309,23,0,'CC-BY-SA','shell,inxi,forum',0,0,1),
(3971,'2023-10-23','RERERE: How to make friends.',2164,'Sgoti and Mugs chat with friends about how to make friends on the internet.','<h2 id=\"rerere-how-to-make-friends.\">RERERE: How to make friends.</h2>\n<p>We could make a series of this?<br />\n</p>\n<ul>\n<li><p><strong>Source:</strong> <a\nhref=\"https://hackerpublicradio.org/eps/hpr3904/index.html\">hpr3904 ::\nHow to make friends</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://hackerpublicradio.org/eps/hpr3942/index.html\">hpr3942 ::\nRE: How to make friends.</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Friendship\">Friendship</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Interpersonal_relationship\">Interpersonal\nrelationship</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Affection\">Affection</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Blood_brother\">Blood\nbrother.</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Honour\">Honour</a><br />\n</p>\n<ul>\n<li>If one\'s honour is questioned, it can thus be important to disprove\nany false accusations or slander. In some cultures, the practice of\ndueling arose as a means to settle such disputes firmly, though by\nphysical dominance in force or skill rather than by objective\nconsideration of evidence and facts.<br />\n</li>\n</ul></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Ted_Bundy\">Ted Bundy</a><br />\n</p></li>\n</ul>\n<p>I thought this was funny: <a\nhref=\"https://www.wikihow.com/Ask-a-Friend-to-Hang-Out\">How to Ask a\nFriend to Hang Out.</a></p>\n',391,0,1,'CC-BY-SA','making friends, Mugsup, group chat',0,0,1),
(3944,'2023-09-14','Race for the Galaxy',947,'Tuula explains very basics of card game called Race for the Galaxy','<p>Race for the galaxy</p>\n<p>Race for the galaxy is a four player card game published by Rio\nGrande Games.</p>\n<p>The goal of the game is to build a space imperium and the player with\nmost victory points wins.</p>\n<p>There\'s also a computer version of the game, which saves you from\npacking up the game after playing.</p>\n<h1 id=\"turn-sequence\">Turn sequence</h1>\n<p>There are five phases in turn:</p>\n<ul>\n<li>Explore</li>\n<li>Develop</li>\n<li>Settle</li>\n<li>Consume</li>\n<li>Produce</li>\n</ul>\n<p>At the beginning of turn, every player selects one of these phases\nand selections are revealed simultaneously. Only selected phases will be\nplayed. Player who selected a phase gets a small bonus.</p>\n<p>Explore</p>\n<ul>\n<li>draw two cards and keep one</li>\n<li>bonus: draw five cards and keep one</li>\n<li>bonus: draw one additional card and keep one additional card</li>\n</ul>\n<p>Develop</p>\n<ul>\n<li>place development card in play and discard cards from your hand to\ncover the cost</li>\n<li>bonus: -1 to cost</li>\n</ul>\n<p>Settle</p>\n<ul>\n<li>place a planet card in play and discard cards from your hand to\ncover the cost</li>\n<li>except military planets, which you\'ll conquer with your military\nscore</li>\n<li>if it\'s a windfall world, produce on it</li>\n</ul>\n<p>Consume:</p>\n<ul>\n<li>use consume powers on cards to turn good into victory points</li>\n<li>you have to keep consuming until you can\'t anymore</li>\n<li>bonus: trade one goods card for 2-5 cards</li>\n<li>bonus: 2xVPs gain twice the victory points</li>\n</ul>\n<p>Produce:</p>\n<ul>\n<li>produce on regular planets</li>\n<li>bonus: produce on windfall planet</li>\n</ul>\n<p>repeat until:</p>\n<ul>\n<li>one empire is 12 cards big</li>\n<li>VP tokes run out</li>\n</ul>\n<p>score:</p>\n<ul>\n<li>points for cards on the table</li>\n<li>cards in the hand (+1 for each)</li>\n<li>VPs earned</li>\n</ul>\n<h1 id=\"special-rules\">special rules</h1>\n<ul>\n<li>cards on the table</li>\n<li>draw extra cards</li>\n<li>trade goods on planets</li>\n<li>add up your military score</li>\n<li>settle planets for cheaper</li>\n<li>have bigger empire limit</li>\n<li>produce on a windfall planet after discarding a card</li>\n<li>etc.</li>\n</ul>\n<h1 id=\"examples-of-cards\">Examples of cards</h1>\n<h2 id=\"star-nomad-raiders\">Star nomad raiders</h2>\n<ul>\n<li>military 2 planet, worth 1 vp</li>\n<li>+1 to military</li>\n<li>+2 cards when trading goods</li>\n</ul>\n<h2 id=\"terraforming-robots\">Terraforming robots</h2>\n<ul>\n<li>development 3, worth 2 vp</li>\n<li>draw 1 card after placing a world</li>\n<li>discard 1 rare elements good to gain 1 card and 1 vp</li>\n</ul>\n<h2 id=\"public-works\">Public works</h2>\n<ul>\n<li>development 1, worth 1 vp</li>\n<li>draw 1 card after placing a development</li>\n<li>discard 1 good to gain 1 vp</li>\n</ul>\n<h1 id=\"expansions\">Expansions</h1>\n<p>All expansions add new cards.</p>\n<h2 id=\"the-gathering-storm\">The gathering storm</h2>\n<blockquote>\n<ul>\n<li>goals (first and most)</li>\n<li>extra player</li>\n</ul>\n</blockquote>\n<h2 id=\"rebel-vs.-imperium\">Rebel vs. Imperium</h2>\n<blockquote>\n<ul>\n<li>solo play</li>\n<li>take over (conquer other player\'s worlds)</li>\n<li>extra player</li>\n</ul>\n</blockquote>\n<h2 id=\"brink-of-war\">Brink of War</h2>\n<blockquote>\n<dl>\n<dt>- prestige</dt>\n<dd>\n<ul>\n<li>counts as VP in the end</li>\n<li>can be used to perform actions</li>\n</ul>\n</dd>\n</dl>\n<ul>\n<li>requires two previous expansions</li>\n</ul>\n</blockquote>\n<h2 id=\"alien-artifacts\">Alien Artifacts</h2>\n<blockquote>\n<ul>\n<li>incompatible with previous expansions</li>\n<li>49 cards representing alien orb players can explore</li>\n<li>balance between expanding and exploring</li>\n</ul>\n</blockquote>\n<h1 id=\"verdict\">Verdict</h1>\n<ul>\n<li>fun and quick game</li>\n<li>every player concentrates on their own imperium</li>\n<li>keep an eye what opponent is doing (tradin
(3953,'2023-09-27','Large language models and AI don\'t have any common sense',1090,'Learn how to load and run GPT-2 or Llama2 to test it with common sense questions.','<p>Hobson and Greg are working with volunteers to develop an open source\nAI that we call Qary (QA for question answering). We\'re adding plugins\nto support open source large language models (LLMs) like GPT-2 and\nLlama2. Here\'s how you can use LLMs in your own Python Programs.</p>\n<ol type=\"1\">\n<li>Create a Hugging Face account:</li>\n</ol>\n<ul>\n<li><a href=\"https://huggingface.co/join\">huggingface.co/join</a></li>\n</ul>\n<ol start=\"2\" type=\"1\">\n<li>Create and copy your access token:</li>\n</ol>\n<ul>\n<li><a href=\"https://huggingface.co/settings/tokens\">Your user\nprofile</a></li>\n</ul>\n<ol start=\"3\" type=\"1\">\n<li>Create a .env file with your access token string:</li>\n</ol>\n<pre class=\"bash\"><code>echo &quot;HUGGINGFACE_ACCESS_TOKEN=hf_...&quot; &gt;&gt; .env</code></pre>\n<ol start=\"4\" type=\"1\">\n<li>Load the <code>.env</code> variables in your python script using\n<code>dotenv</code> package and os.environ:</li>\n</ol>\n<ul>\n<li>TIP: Use <code>os.environ</code> to retrieve the dict of variable\nvalues rather than <code>dotenv.load_values</code>- Otherwise other\nenvironment variables that have been set by other shell scripts such as\n<code>.bashrc</code> will be ignored.</li>\n<li>This confused us when we were getting our GitLab CI-CD pipeline\nworking and deploying to Render.com.</li>\n<li>Each of your cloud services will have different approaches to\nsetting environment variables.</li>\n<li>This token string can be passed as a keyword argument to most of the\npipeline and model classes.</li>\n</ul>\n<pre class=\"python\"><code>import dotenv\ndotenv.load_dotenv()\nimport os\nenv = dict(os.environ)\ntoken = env[&#39;HUGGINGFACE_ACCESS_TOKEN&#39;]</code></pre>\n<ol start=\"5\" type=\"1\">\n<li>Find the path and name for the model on Hugging Face hub you want to\nuse:</li>\n</ol>\n<ul>\n<li>search for \"llama2\" in the top search bar on <a\nhref=\"https://huggingface.co/\">huggingface.co/</a></li>\n<li>TIP: don\'t hit enter at the end of your search, instead click on\n\"See 3958 model results for llama2\"</li>\n<li>I clicked on <a\nhref=\"https://huggingface.co/meta-llama/Llama-2-7b-chat-hf\">meta-llama/Llama-2-7b-chat-hf</a>\nto see the documentation</li>\n</ul>\n<ol start=\"6\" type=\"1\">\n<li>On the documentation page for your model you may have to apply for a\nlicense if it\'s not really open source but business source like Meta\ndoes with its AI so you can\'t use their models to compete with them</li>\n</ol>\n<ul>\n<li>Apply for a license to use Llama2 on <a\nhref=\"https://ai.meta.com/resources/models-and-libraries/llama-downloads/\">ai.meta.com</a>\nusing the same e-mail you used for your Hugging Face account.</li>\n</ul>\n<ol start=\"7\" type=\"1\">\n<li>Follow the <a\nhref=\"https://huggingface.co/docs/hub/security-tokens\">instructions on\nhuggingface.co</a> to authenticate your python session</li>\n</ol>\n<ul>\n<li>TIP: You\'ll need to use the kwarg <code>use_auth_token</code> in the\n<code>AutoModel.from_pretrained</code> or <code>pipeline</code>\nfunctions.</li>\n<li>And it should be set to the token from your Hugging Face profile\npage. The hugging face documentation says to use the <code>token</code>\nkwarg, but that never worked for me.</li>\n</ul>\n<pre class=\"python\"><code>from transformers import pipeline, set_seed\ngenerator = pipeline(&#39;text-generation&#39;, model=&#39;openai-gpt&#39;)\nq = &quot;2+2=&quot;\nresponses = generator(\n q,\n max_length=10,\n num_return_sequences=10\n )\nresponses</code></pre>\n<pre class=\"text\"><code>[{&#39;generated_text&#39;: &#39;2+2= 2.2, 1.1 and&#39;},\n {&#39;generated_text&#39;: &#39;2+2= 3336 miles. they&#39;},\n {&#39;generated_text&#39;: &#39;2+2= 2, = 2 = 2&#39;},\n {&#39;generated_text&#39;: &#39;2+2= 4 = 2 = 5 \\n&#39;},\n {&#39;generated_text&#39;: &#39;2+2= 0 ( 1 ) = =&#39;},\n {&#39;generated_text&#39;: &#39;2+2= 6 times the speed of
(3937,'2023-09-05','Adventures in Pi-Hole',497,'Noodlez recounts their experience getting a pi-hole server','<h1 id=\"adventures-in-pi-hole\">Adventures in Pi-Hole</h1>\n<p>Hi all! Today I\'m gonna be talking about my adventures in setting up\nPi-hole. This will be without screenshots, but instead in all text,\nsorry! Also this is all written as kind of an \"Aftermath\" story. This is\nbeing written after the fact, so this might be missing some details, but\nmost of it is there.</p>\n<h2 id=\"intro-what-is-pi-hole\">Intro: What is Pi-hole</h2>\n<p><a href=\"https://pi-hole.net/\">Pi-hole</a> is a DNS/DHCP server that\nallows for easy network-wide ad-blocking, along with all the nice\ncustomizations that come with being a DNS server, such as custom\ndomains.</p>\n<h2 id=\"first-step-get-it-running\">First Step: Get it running</h2>\n<p>The first step was getting Pi-hole running. I did this using Docker\nCompose on a \"NAS\" which is honestly a full on server at this point. A\nquick copy/paste from <a\nhref=\"https://github.com/pi-hole/docker-pi-hole/#quick-start\">Pi-hole\'s\nREADME</a> and I was up and running! I set a singular system to use this\nas a DNS server, and after that, I figured I was set and ready to\ngo.</p>\n<h2 id=\"second-step-dhcp-town\">Second Step: DHCP town</h2>\n<p>Of course, I wasn\'t satisfied just finishing there. I want automatic\nDNS setting for any device that connects to my network. Of course, I\ncould just set the DNS upstream in my <a\nhref=\"https://openwrt.org/\">OpenWRT</a> router to use the IP address of\nmy server, but that isn\'t good enough for me. This means I\'d be missing\nout on automatic per-client information, since when setting a DNS server\nfor OpenWRT, it only sets itself to forward any DNS requests up to the\nDNS server, which means from Pi-hole\'s perspective, all the requests are\ncoming from the router and nowhere else. The solution is to set up\nPi-Hole as a DHCP server. Keep in mind this isn\'t a tutorial, so let\'s\ngo through what I did first. The first step was to turn on the DHCP\nserver in Pi-Hole. This was super easy, just a checkbox and click save.\nCool! Then I disabled the DHCP server in OpenWRT, and that was all set.\nA few restarting of network devices later, like my phone, and they\nautomatically connected to the Pi-Hole server, and worked like a charm.\nNext up, I set up Tailscale. I use <a\nhref=\"https://headscale.net/\">Headscale</a>, but the setup is\nessentially the same as if you were using Tailscale\'s UI. Set in the\nconfig to override local DNS, set the nameserver to the Tailscale IP\naddress of the server, and turn on magic DNS, et voila! Now to restart\nthe Tailscale nodes, and make sure that on the server, you set it to not\naccept the DNS from Tailscale. If you don\'t do that, it\'ll get in an\nendless loop of trying to use itself as the DNS server, and it\'s just no\ngood. Okay! It\'s all set, and I check the dashboard, and it\'s already\nblocking DNS requests. Perfect!</p>\n<h2 id=\"third-step-whoopsies\">Third Step: Whoopsies!</h2>\n<p>This was fine and great, but when I went to reboot my server, which I\ndo weekly, something bad happened. The interface for the server didn\'t\ncome up. This is a problem, since it\'s the DHCP server for my network,\nso without that working, the network was dead in the water. It can\'t\ngive out IP addresses. What\'s going on? I go ahead and access my server\ndirectly. No matter how hard I try, it can\'t connect to the interface.\nWhat\'s the big deal? Well this is pretty simple, and a question popped\nin my head that go me there. \"How does this server even get its IP\naddress?\" You see when I set up pi-hole, it just kept using the IP\naddress that the router gave it, which it was more than happy to use,\nbut the moment the router didn\'t have a DHCP server, the NAS didn\'t have\na way to get an IP address anymore. So what do you do then? The answer\nis pretty simple. Give the server a static IP. Make sure in the DHCP\nserver of pi-hole, you set a reservation in it for the server, then in\nNetworkManager, wh
(3939,'2023-09-07','How I got into tech and hacking',1238,'Getting interested in tech can start in both odd and familiar places. This is Trixter\'s story.','<p>In the show, I mention that leaving Mark Williams Company was \"a\nstory for another time\", but the short answer is that Linux crushed\nthem. Coherent Unix had to make a choice to compete with either Windows,\nSCO Unix, or Linux, and had enough budget to add either X Windows or\nTCP/IP networking. They chose X11, and IMO that killed any chance of\nCoherent Unix being useful in a world of Linux and FreeBSD.</p>\n',149,29,0,'CC-BY-SA','demoscene, hacking, programming, assembly, gaming',0,0,1),
(3943,'2023-09-13','Why my Dell does it better on Linux.',745,'Knightwise talks about how he uses his Dell XPS 15 with Linux.','<p>The Config of my Dell XPS 15</p>\n<pre><code> .-:/++oooo++/:-. knightwise@Hawking\n `:/oooooooooooooooooo/-` ------------------\n -/oooooooooooooooooooo+ooo/- OS: Ubuntu Cinnamon 22.04.3 LTS x86_\n .+oooooooooooooooooo+/-`.ooooo+. Host: XPS 15 7590\n :oooooooooooo+//:://++:. .ooooooo: Kernel: 6.2.0-26-generic\n /oooooooooo+o:`.----.``./+/oooooooo/ Uptime: 4 mins\n /ooooooooo+. +ooooooooo+:``/ooooooooo/ Packages: 2457 (dpkg), 19 (snap)\n.ooooooooo: .+ooooooooooooo- -ooooooooo. Shell: bash 5.1.16\n/oooooo/o+ .ooooooo:`+oo+ooo- :oooooooo/ Resolution: 1920x1080\nooo+:. .o: :ooooo:` .+/. ./o+:/ooooooooo DE: Cinnamon 5.2.7\noooo/-`.o: :ooo/` `/+. ./.:ooooooooo WM: Mutter (Muffin)\n/oooooo+o+``++. `:+- /oooooooo/ WM Theme: Yaru-Cinnamon-Dark (Yaru-C\n.ooooooooo/`` -+:` :ooooooooo. Theme: Yaru-Cinnamon-Dark [GTK2/3]\n /ooooooooo+--+/` .+ooooooooo/ Icons: Yaru-Cinnamon [GTK2/3]\n /ooooooooooo+.` `.:++:oooooooo/ Terminal: gnome-terminal\n :oooooooooooooo++++oo+-` .ooooooo: CPU: Intel i7-9750H (12) @ 4.500GHz\n .+ooooooooooooooooooo+:..ooooo+. GPU: Intel CoffeeLake-H GT2 [UHD Gra\n -/oooooooooooooooooooooooo/- GPU: NVIDIA GeForce GTX 1650 Mobile\n `-/oooooooooooooooooo/:` Memory: 2736MiB / 31723MiB\n</code></pre>\n',111,0,0,'CC-BY-SA','linux, ',0,0,1),
(3949,'2023-09-21','How I use virtualisation to tame my Social Media addiction.',937,'Knightwise talks about the command line applications he uses to fight his Social Media addiction.','<p>Apps I talk about</p>\n<ul>\n<li><p>Irssi: <a href=\"https://irssi.org/\"\nclass=\"uri\">https://irssi.org/</a></p></li>\n<li><p>Tuir: <a href=\"https://gitlab.com/ajak/tuir\"\nclass=\"uri\">https://gitlab.com/ajak/tuir</a></p></li>\n<li><p>Discordo: <a href=\"https://github.com/ayn2op/discordo\"\nclass=\"uri\">https://github.com/ayn2op/discordo</a></p></li>\n<li><p>Tailscale: <a href=\"https://tailscale.com/\"\nclass=\"uri\">https://tailscale.com/</a></p></li>\n<li><p>HyperV : <a\nhref=\"https://learn.microsoft.com/en-us/virtualization/hyper-v-on-windows/about/\"\nclass=\"uri\">https://learn.microsoft.com/en-us/virtualization/hyper-v-on-windows/about/</a></p></li>\n</ul>\n',111,0,0,'CC-BY-SA','linux, tailscale, vpn, social media, reddit, irc, discord,',0,0,1),
(3947,'2023-09-19','Archiving Floppy Disks',1009,'This show describes how I go about archiving old floppy disks.','<h1>Archiving Floppy Disks</h1>\n\n<h2>Summary</h2>\n\n<p>This show describes how I go about archiving old floppy\ndisks. These disks date back to the early 90s when floppy disks were a\ncommon way of installing software on personal computers. They were\nalso used as a portable storage mechanism for data files.</p>\n\n<h2>Equipment That I\'m Using</h2>\n\n<ul>\n<li>IBM ThinkCentre desktop computer with a 3.5in floppy disk drive</li>\n<li>Installed the 32-bit version of Slackware 14.2</li>\n</ul>\n\n<h2>Making an image of an entire floppy disk</h2>\n<code>dd if=/dev/fd0 of=filename.dsk</code>\n\n<h2>Making a floppy disk from a disk image</h2>\n<code>dd if=filename.dsk of=/dev/fd0</code>\n\n<h2>Copy files from a floppy disk</h2>\n<code>\nmount -t msdos /dev/fd0 /mnt/floppy<br>\ncd /mnt/floppy<br>\ncp filename /some/destination/path/filename<br>\ncd<br>\numount /mnt/floppy\n</code>\n\n',334,0,0,'CC-BY-SA','floppy, disk, archive, linux, commands',0,0,1),
(3948,'2023-09-20','Cleaning up my mancave and talking about Creativity',1591,'Knightwise sets up his podcast rig in a messy attic and talks about the stuff lying around','<p>Just a Random babble as I setup my podcasting rig in the office,\nclearing out some old stuff and telling you about what I encounter.</p>\n',111,0,0,'CC-BY-SA','linux, podcasting, retro',0,0,1),
(3958,'2023-10-04','Bikepacking in 1993 without technology',1163,'Knightwise looks back at his very first bikepacking adventure and its absence of technology','<p>My 5 day Ride from Oostende to Le Havre (540km)</p>\n<ul>\n<li>Oostende: <a href=\"https://goo.gl/maps/1CFXuHeBcHpHX3RZ8\"\nclass=\"uri\">https://goo.gl/maps/1CFXuHeBcHpHX3RZ8</a></li>\n<li>Calais: <a href=\"https://goo.gl/maps/1CFXuHeBcHpHX3RZ8\"\nclass=\"uri\">https://goo.gl/maps/1CFXuHeBcHpHX3RZ8</a></li>\n<li>Boulogne: <a href=\"https://goo.gl/maps/1CFXuHeBcHpHX3RZ8\"\nclass=\"uri\">https://goo.gl/maps/1CFXuHeBcHpHX3RZ8</a></li>\n<li>Le Treport: <a href=\"https://goo.gl/maps/1CFXuHeBcHpHX3RZ8\"\nclass=\"uri\">https://goo.gl/maps/1CFXuHeBcHpHX3RZ8</a></li>\n<li>Dieppe: <a href=\"https://goo.gl/maps/Pn4K2DuATVAFoCPV8\"\nclass=\"uri\">https://goo.gl/maps/Pn4K2DuATVAFoCPV8</a></li>\n<li>Yvetot: <a href=\"https://goo.gl/maps/Pn4K2DuATVAFoCPV8\"\nclass=\"uri\">https://goo.gl/maps/Pn4K2DuATVAFoCPV8</a></li>\n<li>Le-Havre : <a href=\"https://goo.gl/maps/Pn4K2DuATVAFoCPV8\"\nclass=\"uri\">https://goo.gl/maps/Pn4K2DuATVAFoCPV8</a></li>\n</ul>\n',111,0,0,'CC-BY-SA','cycling, soundseeing, travel, technology, ',0,0,1),
(3952,'2023-09-26','Making the Case for Markdown',404,'Keith discusses the background and applications for Markdown.','<p>Links to things mentioned in this episode:</p>\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/LAMP_(software_bundle)\">LAMP\nStack</a> (wikipedia)</li>\n<li><a\nhref=\"https://wordpress.org/news/2023/05/celebrating-20-years-of-wordpress/\">WordPress\nis 20 years old</a></li>\n<li><a href=\"https://daringfireball.net/projects/markdown/\">Daring\nFireball Markdown Page</a></li>\n<li><a href=\"https://jekyllrb.com/\">Jekyll</a></li>\n<li><a href=\"https://obsidian.md/\">Obsidian</a></li>\n<li><a\nhref=\"https://pandoc.org/chunkedhtml-demo/8.22-markdown-variants.html\">Variants\nof Markdown syntax</a></li>\n</ul>\n',266,0,0,'CC-BY-SA','markdown,plain text,writing,text editors,file formats',0,0,1),
(3954,'2023-09-28','Sedating HPR at the Steading',4462,'MrX and Dave Morriss have lunch and record another chat','<article>\n<h2 id=\"introduction\">Introduction</h2>\n<p>Hosts:</p>\n<ul>\n<li><a\nhref=\"https://hackerpublicradio.org/correspondents/0201.html\">MrX</a></li>\n<li><a\nhref=\"https://hackerpublicradio.org/correspondents/0225.html\">Dave\nMorriss</a></li>\n</ul>\n<p>We recorded this on Sunday September 3<sup>rd</sup> 2023. We met in\nperson again, and as before first visited the pub called <em>The\nSteading</em> where we had lunch. Then we adjourned to Dave\'s car in the\ncar park, and recorded a chat.</p>\n<p>The name \"Steading\" is another (Scots?) version of \"Farmstead\", and\nmeans the same. It\'s also an anagram of \"Sedating\"<a href=\"#fn1\"\nclass=\"footnote-ref\" id=\"fnref1\" role=\"doc-noteref\"><sup>1</sup></a>, so\n...</p>\n<h2 id=\"topics-discussed\">Topics discussed</h2>\n<ul>\n<li>Vaccines:\n<ul>\n<li>Dave has an appointment for <a\nhref=\"https://en.wikipedia.org/wiki/COVID-19_vaccine\">COVID-19</a> and\ninfluenza vaccines. The new <a\nhref=\"https://en.wikipedia.org/wiki/SARS-CoV-2_Omicron_variant\">Omicron\nvariant</a> BA.2.86 has prompted another booster for some people.</li>\n<li>Discussion of <a\nhref=\"https://en.wikipedia.org/wiki/Smallpox_vaccine\">Smallpox</a>\nvaccination</li>\n<li>MrX has an appointment for an influenza vaccine</li>\n</ul></li>\n</ul>\n<ul>\n<li>Glasgow:\n<ul>\n<li>MrX and <em>MrsX</em> recently stayed in Glasgow for a holiday</li>\n<li><a href=\"https://www.pointahotels.com/our-hotels/glasgow/\">Point A\nHotel</a> - boutique hotel</li>\n<li><a href=\"https://glasgow.junglerumble.co.uk/\">Jungle Rumble</a> -\nindoor golf with UV lighting!</li>\n<li>Wikipedia: <a\nhref=\"https://en.wikipedia.org/wiki/Glasgow_Subway\">Glasgow\nSubway</a></li>\n</ul></li>\n</ul>\n<ul>\n<li>Edinburgh:\n<ul>\n<li>Dave took a trip on the recently extended <a\nhref=\"https://edinburghtrams.com/\">Edinburgh tram</a>\n<ul>\n<li>There is only one route, from the airport to Leith (port).</li>\n<li>Older residents get free access.</li>\n</ul></li>\n<li>MrX and MrsX recently walked from the centre of Edinburgh along the\n<a href=\"https://www.waterofleith.org.uk/\">Water of Leith</a> to the\narea where the tram terminus is at Newhaven.</li>\n</ul></li>\n</ul>\n<ul>\n<li>Email:\n<ul>\n<li>Dave is using version <a\nhref=\"https://www.thunderbird.net/en-GB/\">Thunderbird</a> 115.1.1 which\nis a rewrite of the original series where the API has now changed a\nlot.</li>\n<li>Long-used add-ons now no longer work:\n<ul>\n<li>A favourite was <em>Mailbox Alert</em> which triggered sound alerts\n(or others) then mail arrived in a folder - so this could be after\nfiltering. This was much more useful than the traditional \"You have\nmail\" type alerts.</li>\n</ul></li>\n<li>Discussion of tags:\n<ul>\n<li>MrX mentions tags, meaning bits of text that can be attached to\nmessages and used to classify them and to search for them.</li>\n<li>In Gmail there are <em>labels</em> which can do this and these can\nbe used to group messages regardless of folders</li>\n<li>Thunderbird also has this concept which it calls <em>tags</em>. It\ncomes with pre-defined tags such as <strong>Important</strong> and\n<strong>To Do</strong>, but more tags can be added. Any message can be\ngiven one or more tags. The filtering system can add tags as a message\nis processed. Searches can be performed on tags also.</li>\n<li>Dave is an enthusiast of nested folders with filters to classify\nmessages. MrX is keen on using tags for the same purpose. Dave mentioned\nThunderbird\'s <em>saved search</em> feature (which he wrongly called\n<em>virtual mailboxes</em>) which can collect messages according to many\ncriteria, including tags.</li>\n<li>Some discussion about mail message storage strategies: file per\nmessage, <em>mbox</em> format, etc.</li>\n</ul></li>\n</ul></li>\n</ul>\n<ul>\n<li>Ticks:\n<ul>\n<li>MrX\'s dog has brought some ticks back from recent walks.</li>\n<li>Scotland seems to be a bit worse off for ticks in recent years.<
(3964,'2023-10-12','Hacker Public Radio at OLF',3078,'Friends from Hacker Public Radio meetup to record an episode from the conference.','<p><a href=\"https://olfconference.org/\">Ohio Linux Fest, or Open, Libre,\nFree...we\'re not sure</a></p>\n<p><a\nhref=\"https://olfconference.org/olf-2023-slides-and-stream-videos/\">Conference\nVideos and Presentations</a></p>\n<p><a href=\"https://northmarket.org/merchant/momo-ghar/\">Momo\nGhar</a></p>\n',270,0,1,'CC-BY-SA','OLF, Linux Fest, Conference',0,0,1),
(4196,'2024-09-02','HPR Community News for August 2024',0,'HPR Volunteers talk about shows released and comments posted in August 2024','',159,47,1,'CC-BY-SA','Community News',0,0,1),
(3966,'2023-10-16','Vim Hints: 006',1503,'Various contributors lead us on a journey of discovery of the Vim (and vi) editors.','<h2 id=\"my-.vimrc-config.\">My <code>.vimrc</code> config.</h2>\n<pre><code>&quot; General\nset confirm &quot; Display confirmation dialog when closing unsaved files\nset number &quot; Show line numbers\nset number relativenumber &quot; Show line numbers relative to curser\nset cursorline &quot; Highlight the current line\nset guicursor=\nset scrolloff=23 &quot; Number of screen lines above and below the cursor\nset colorcolumn=80 &quot; Line 76 and 80 are colored\n:hi ColorColumn ctermbg=Magenta &quot; Column colors\nset nowrap &quot; Do not wrap lines\nset list\nset listchars=eol:\n,tab:&#x2B7E;&#x2B7E;,trail:~,extends:&gt;,precedes:&lt;,space:&#x23B5;\nset showmatch &quot; Highlight matching brace\nset visualbell &quot; Use visual bell (no beeping)\nset showcmd &quot; Show partial commands in the last line\n\nset hlsearch &quot; Highlight all search results\nset smartcase &quot; Enable smart-case search\nset ignorecase &quot; Always case-insensitive\nset incsearch &quot; Searches for strings incrementally\nset wildmenu &quot; Display tab complete options menu\nset encoding=utf-8 &quot; Use an encoding that supports unicode\n\n&quot;set autoindent &quot; Auto-indent new lines\n&quot;set smartindent &quot; Enable smart-indent\n&quot;set smarttab &quot; Enable smart-tabs\nset shiftwidth=4 &quot; Number of auto-indent spaces\nset softtabstop=4 &quot; Number of spaces per Tab\nset tabstop=4 &quot; Indent using four spaces\nset expandtab &quot; Convert tabs to spaces.\n\n&quot; Advanced\nset ruler &quot; Show row and column ruler information\n&quot;set showtabline=2 &quot; Show tab bar\nset cmdheight=2 &quot; Command line height\n\nset undolevels=1000 &quot; Number of undo levels\nset backspace=indent,eol,start &quot; Backspacing over indention, line breaks and insertion start\nset dir=~/.cache/vim &quot; Directory to store swap files\nset backupdir=~/.cache/vim &quot; Directory to store backup files\nset undodir=~/.cache/vim/undo &quot; Directory to store undo cache\n\nnnoremap &lt;silent&gt; &lt;C-l&gt; :nohl&lt;CR&gt;\nnnoremap &lt;silent&gt; &lt;C-s&gt; :term&lt;CR&gt;\nnnoremap &lt;silent&gt; &lt;leader&gt;[ :bp&lt;CR&gt;\nnnoremap &lt;silent&gt; &lt;leader&gt;] :bn&lt;CR&gt;\nnnoremap &lt;leader&gt;so :so ~/.config/vim/sessions/\nnnoremap &lt;silent&gt; &lt;F3&gt; :set list!&lt;CR&gt;\nnnoremap &lt;silent&gt; &lt;leader&gt;cc :set cc-=5&lt;CR&gt;:set cc-=76&lt;CR&gt;\nnnoremap &lt;silent&gt; &lt;
(3967,'2023-10-17','Unsolicited thoughts on running open source software projects',451,'A man talks to himself during his drive home from work.','<p>Some thoughts on the different ways you can run an open source\nsoftware project, comparing projects like password-store, which are\nbased on a mailing list and use a minimal forge platform, and others\nthat are based on a fancy forge like Github.</p>\n<p>I think the fancy forge gives the open source software project a vibe\nthat we\'re more used to, in our capitalist society. It\'s a more\ncentralized structure that feels more like a service that\'s being\noffered to the public, mostly in one direction. Meanwhile software\nprojects that don\'t have a platform for creating road maps, issues, pull\nrequests etc actually foster a stronger and more open community\nstructure, rather counter-intuitively, because the software is free and\neveryone is able to contribute and modify the software for their own\nuse, and they in fact do. The idea of a canonical version of the\nsoftware is only a convenience, not a defining feature of it.</p>\n<p>Let me know your thoughts on this.</p>\n',399,0,0,'CC-BY-SA','RESERVE SHOW,software governance',0,0,1),
(3968,'2023-10-18','About USBimager - part 1/2',681,'Why you should be using USBimager too, an introduction.','<p>USBImager is a really really simple GUI application that writes\ncompressed disk images to USB drives and creates backups.</p>\n<p>Available platforms: Windows, MacOSX and Linux. <a\nhref=\"http://gitlab.com/bztsrc/usbimager\"\nclass=\"uri\">http://gitlab.com/bztsrc/usbimager</a></p>\n<p>Just for Windows</p>\n<ul>\n<li>Rufus - Windows only <a href=\"http://github.com/pbatard/rufus\"\nclass=\"uri\">http://github.com/pbatard/rufus</a></li>\n<li>USB Image Tool - Windows only <a\nhref=\"http://www.alexpage.de/tag/usb-image-tool/\"\nclass=\"uri\">http://www.alexpage.de/tag/usb-image-tool/</a></li>\n<li>WIN32 Disk Imager - Windows only last update 2017-03-08 <a\nhref=\"http://sourceforge.net/projects/win32diskimager/\"\nclass=\"uri\">http://sourceforge.net/projects/win32diskimager/</a></li>\n</ul>\n<p>Don\'t miss part 2!</p>\n',421,0,0,'CC-BY-SA','RESERVE SHOW,flash,writing,software,usb',0,0,1),
(3969,'2023-10-19','Game Sales',865,'I have recently found some bargains and wanted the share that with the community.','<p>There are some games I will buy for the full prices as soon as they\nare released, such as any of the Civilization games. But I also like to\nfind bargains, and I recently scored a fantastic deal on Steam that\nmotivated me to share this information with the community since I know\nthere are other people out there who enjoy computer games.</p>\n<h2 id=\"links\">Links</h2>\n<ul>\n<li><a href=\"https://store.steampowered.com/\"\nclass=\"uri\">https://store.steampowered.com/</a></li>\n<li><a href=\"https://www.gog.com/en/games\"\nclass=\"uri\">https://www.gog.com/en/games</a></li>\n<li><a href=\"https://www.youtube.com/@JumboPixel\"\nclass=\"uri\">https://www.youtube.com/@JumboPixel</a></li>\n<li><a href=\"https://www.humblebundle.com/games\"\nclass=\"uri\">https://www.humblebundle.com/games</a></li>\n<li><a href=\"https://www.palain.com/travel/colorado-2023/\"\nclass=\"uri\">https://www.palain.com/travel/colorado-2023/</a></li>\n</ul>\n',198,122,0,'CC-BY-SA','RESERVE SHOW,Computer Games, Bargains, Sales',0,0,1),
(3972,'2023-10-24','Thunderbird inbox filtering: keeping a clean/orderly inbox.',662,'Sgoti talks about filtering your inbox.','<h2\nid=\"thunderbird-inbox-filtering-keeping-a-cleanorderly-inbox.\">Thunderbird\ninbox filtering: keeping a clean/orderly inbox.</h2>\n<ul>\n<li><strong>Source:</strong> <a\nhref=\"https://www.thunderbird.net/en-US/\">Thunderbird: Free Your\nInbox.</a>\n<ul>\n<li><strong>Supporting Source:</strong> <a\nhref=\"https://support.mozilla.org/en-US/kb/organize-your-messages-using-filters\">Organize\nYour Messages by Using Filters.</a>\n<ul>\n<li>Message filters allow you to set up Thunderbird to organize your\nmessages automatically. Each account has its own set of filters. Filters\ncan move messages to folders, delete them, forward them to other email\naddresses, and more.</li>\n<li>When you receive new mail - This is when Getting New Mail is\nselected (the default). Filters are applied to new mail in the inbox.\nThis can occur either before Thunderbird does its assessment of the mail\nas junk, or after. If you have difficulty with filtering the message\nbody, select after classification.</li>\n<li>Automatically applied filters are applied only to the inbox, with\nthe exception of Archive and after send filters, which apply only to the\nmails involved in the action to send or archive. Other folder types are\nnot affected.</li>\n</ul></li>\n<li><strong>Supporting Source:</strong> <a\nhref=\"https://support.mozilla.org/en-US/kb/protect-your-thunderbird-passwords-primary-password\">Protect\nyour Thunderbird passwords with a Primary Password.</a>\n<ul>\n<li>Thunderbird can save passwords for each account, so you don\'t have\nto re-enter them when you check for new messages. You can view them and\nremove the ones you don\'t use anymore.</li>\n<li><strong>Do you want to prevent others from seeing your\nmessages?</strong> If you are sharing a computer, the most secure way is\nto create a separate OS user account on the operating system for each\nperson, and make sure your OS account requires a password. Thunderbird\nstores accounts, messages and password information separately for each\noperating system account.</li>\n</ul></li>\n</ul></li>\n</ul>\n<p>This work is licensed under a <a\nhref=\"https://creativecommons.org/licenses/by-sa/4.0/\"\ntitle=\"CC-BY-SA 4.0 International\">Creative Commons\nAttribution-ShareAlike 4.0 International License</a>.</p>\n',391,0,0,'CC-BY-SA','Thunderbird, email filters, inbox filters',0,0,1),
(3974,'2023-10-26','About USBimager - part 2/2',938,'Why you should be using USBimager too, an introduction.','<p>Because you want to make changes on a storage device, you are asked\nto enter your password. You can add your user to the group: disk to\navoid this.</p>\n<p>who or whoami - my login-name</p>\n<p>id - more details</p>\n<p>groups - all your groups</p>\n<p>less /etc/group | grep disk - focus on disk</p>\n<p>Add an existing user to another group, like this:</p>\n<pre><code>sudo usermod -aG disk LOGIN-NAME</code></pre>\n<p>I saw my entry not immediately check it with:\n<code>cat /etc/group</code></p>\n<hr />\n<p>Under releases <a\nhref=\"http://gitlab.com/bztsrc/usbimager\">http://gitlab.com/bztsrc/usbimager</a>\nyou may find your preferred pre built binary, if not, I recommend this\nlink <a\nhref=\"http://gitlab.com/bztsrc/usbimager/tree/binaries\">http://gitlab.com/bztsrc/usbimager/tree/binaries</a></p>\n',421,0,0,'CC-BY-SA','flash, writing, software, usb',0,0,1),
(3975,'2023-10-27','Mesa Verde 20230618',649,'Our story of a day tour in Mesa Verde, Colorado','<p>We had occasion to travel to Colorado for a wedding, and took a\nlittle extra time to visit Mesa Verde. This is a site originally\ninhabited by the Puebloan people (as the Spanish called them) that was\nlocated on a Mesa in the vicinity of the Rocky Mountains. The site is\nnot far from New Mexico, and our tour was fascinating, so I am sharing\nit with you.</p>\n<h2 id=\"links\">Links</h2>\n<ul>\n<li><a href=\"https://www.nps.gov/meve/index.htm\"\nclass=\"uri\">https://www.nps.gov/meve/index.htm</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAKVdo\"\nclass=\"uri\">https://flic.kr/s/aHBqjAKVdo</a></li>\n<li><a href=\"https://flic.kr/s/aHBqjAKX1y\"\nclass=\"uri\">https://flic.kr/s/aHBqjAKX1y</a></li>\n<li><a href=\"https://www.palain.com/travel/colorado-2023/\"\nclass=\"uri\">https://www.palain.com/travel/colorado-2023/</a></li>\n</ul>\n',198,119,0,'CC-BY-SA','Travel, Native Americans, Colorado',0,0,1),
(3976,'2023-10-30','The Evolution of Windows\' Snipping Tool',348,'KD gives some history of the evolution of screenshot capabilities on Windows.','<p>Some links to items discussed on this episode:</p>\n<ul>\n<li><a\nhref=\"https://support.eset.com/en/kb2727-how-do-i-take-a-screenshot\">The\n\"Old\" Screenshot Method</a></li>\n<li><a href=\"https://learn.microsoft.com/en-us/windows/powertoys/\">What\nare Windows PowerToys?</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Windows_Ink\">Windows Ink\nWorkspace</a></li>\n<li><a\nhref=\"https://www.makeuseof.com/how-to-screen-record-with-windows-11-snipping-tool/\">How\nto Screen Record</a></li>\n<li><a\nhref=\"https://kdmurray.com/2023/09/24/the-evolution-of-windows-snipping-tool/\">Accompanying\nBlog Post and quasi-transcript</a></li>\n</ul>\n',266,0,0,'CC-BY-SA','software, screenshot, screen capture, technology, utilities, windows',0,0,1),
(3977,'2023-10-31','Creative Commons Search Engine',277,'There is a new search engine for Creative Commons content','<p>Creative Commons has a new search engine available called Openverse.\nThis is the evolution of the old CC Search developed by Creative\nCommons, which was taken over by WordPress, and now has further\nevolved.</p>\n<h2 id=\"links\">Links</h2>\n<ul>\n<li><a href=\"https://openverse.org/\"\nclass=\"uri\">https://openverse.org/</a></li>\n<li><a href=\"https://openverse.org/sources\"\nclass=\"uri\">https://openverse.org/sources</a></li>\n<li><a\nhref=\"https://make.wordpress.org/openverse/handbook/new-contributor-guide/\"\nclass=\"uri\">https://make.wordpress.org/openverse/handbook/new-contributor-guide/</a></li>\n<li><a\nhref=\"https://www.ahuka.com/a-search-engine-for-creative-commons-content/\"\nclass=\"uri\">https://www.ahuka.com/a-search-engine-for-creative-commons-content/</a></li>\n</ul>\n',198,0,0,'CC-BY-SA','Creative Commons, public domain, licensed content',0,0,1),
(3978,'2023-11-01','Driving in Virginia.',1813,'Sgoti talks about driving in the state of Virginia.','<ul>\n<li><p><strong>Source:</strong> <a\nhref=\"https://law.lis.virginia.gov/vacode/title18.2/chapter6/\">Code of\nVirginia - Chapter 6. Crimes Involving Fraud.</a></p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://law.lis.virginia.gov/vacodefull/title8.01/chapter3/article7/\">Article\n7. Motor Vehicle Accidents.</a></p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://law.lis.virginia.gov/vacodefull/title46.2/chapter8/article11/\">Article\n11. Accidents.</a></p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://law.lis.virginia.gov/vacode/title46.2/chapter8/section46.2-896/\">&#xA7;\n46.2-896. Duties of driver in event of accident involving damage only to\nunattended property.</a></p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://law.lis.virginia.gov/vacode/title46.2/chapter3/section46.2-373/\">&#xA7;\n46.2-373. Report by law-enforcement officer investigating\naccident.</a></p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.dmv.virginia.gov/about/#law_enf.asp\">DMV Law\nEnforcement Division.</a> DMV special agents have offices inside the\ncustomer service centers where they respond immediately to concerns,\nsuch as individuals who attempt to pass counterfeit documents. Their\npresence serves not only to deter attempts of criminal activity, but\nalso to facilitate partnerships with DMV customer service\nrepresentatives as a first line defense in the detection of fraudulent\ndocuments and apprehension of offenders. Field Investigations agents\nalso are charged with enforcing the Virginia Code section intended to\nprotect Virginia consumers from unsafe vehicles and vehicle fraud\narising from the illegal sale of vehicles without the required business\nand motor vehicle dealer licenses, safety inspections, warranties,\ntitling, or taxes. This statute also protects licensed motor vehicle\ndealers from unfair and illegal competition and ensures that the state\nand localities collect appropriate revenues.</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.dmv.virginia.gov/#/\">Virginia Department of Motor\nVehicles.</a></p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://www.google.com/url?client=internal-element-cse&amp;cx=004021148943282517298:oscb2opeqqq&amp;q=https://www.dmv.virginia.gov/webdoc/pdf/dmv39.pdf&amp;sa=U&amp;ved=2ahUKEwjJqvWpmPj_AhWgEmIAHQ2bC0AQFnoECAEQAQ&amp;usg=AOvVaw2ZeF0W0UPD9mRmstXxVtEZ\">Virginia\nDriver\'s Manual.</a></p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://www.dmv.virginia.gov/drivers/#manual.asp\">Interactive\nDriver\'s Manual With Practice Questions.</a></p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://www.google.com/url?client=internal-element-cse&amp;cx=004021148943282517298:oscb2opeqqq&amp;q=https://www.dmv.virginia.gov/webdoc/pdf/dmv60a.pdf&amp;sa=U&amp;ved=2ahUKEwjJqvWpmPj_AhWgEmIAHQ2bC0AQFnoECAgQAQ&amp;usg=AOvVaw2Yu09sDKcw8ZxpzycZgSTr\">Commercial\nDriver License Manual.</a></p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.dmv.virginia.gov/safety/#crash_data/crash_facts/index.asp\">Virginia\nTraffic Crash Facts.</a></p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://www.dmv.virginia.gov/safety/#crash_data/index.asp\">Related\nCrash Data.</a></p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.nicb.org/prevent-fraud-theft/staged-auto-accident-fraud\">Staged\nAuto Accident Fraud.</a></p></li>\n</ul>\n<p>This work is licensed under a <a\nhref=\"https://creativecommons.org/licenses/by-sa/4.0/\"\ntitle=\"CC-BY-SA 4.0 International\">Creative Commons\nAttribution-ShareAlike 4.0 International License</a>.</p>\n',391,0,0,'CC-BY-SA','Virginia, Driving, CDL, Fraud',0,0,1),
(3979,'2023-11-02','FireStick and ad blocking',1501,'operat0r talks about recent apps for firestick and blocking ads','<p>I talk about recent apps for firestick and blocking ads</p>\n',36,0,1,'CC-BY-SA','streaming,tv,ad blocking,youtube',0,0,1),
(3982,'2023-11-07','Conversation with ChatGPT',218,'Conversation with ChatGPT about EU Cookie banners','<h2 id=\"the-following-conversation-is-from-my-query-to-chatgpt\">The\nfollowing conversation is from my query to ChatGPT</h2>\n<p><a\nhref=\"https://hackerpublicradio.org/eps/hpr3982/hpr3982/conversation.html\"\ntitle=\"Conversation with ChatGPT\">conversation.html</a></p>\n',318,0,0,'CC-BY-SA','ChatGPT, EU, GDPR, cookies',0,0,1),
(3983,'2023-11-08','ChatGPT Output is not compatible with CC-BY-SA',536,'Ken is not a lawyer but is fairly sure that ChatGPT is not compatible with Creative Commons','<p>When uploading to HPR you are\n<a href=\"https://hackerpublicradio.org/about.html#agreement\">You are\nagreeing to license your show CC-BY-SA.</a></p>\n<blockquote>\n<p>All our shows are now released under a Creative Commons\nAttribution-ShareAlike 4.0 International (CC BY-SA 4.0) license, which\nmeans that while you continue to retain the copyright to your show, you\nare allowing us (and everyone else) to use it provided we give you\nattribution and that we release it under the same license. Click the\nlink for more information.</p>\n</blockquote>\n<p>The\n<a href=\"https://creativecommons.org/licenses/by-sa/4.0/\">Creative\nCommons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)\nlicense</a> itself says that sharing (the S in CC-BY-SA), allows you to\n\"copy and redistribute the material in any medium or format for any\npurpose, even commercially\".</p>\n<p>On the face of it the\n<a href=\"https://openai.com/policies/terms-of-use#3-content\">OpenAI\nChatGPT Terms of use</a> seem similar, with Section 3 saying \"you can\nuse Content for any purpose, including commercial purposes\".\nUnfortunately they then go on to say \"Subject to your compliance with\nthese Terms\":</p>\n<pre><code> 3. Content\n\n (a) Your Content. You may provide input to the Services (&#x201C;Input&#x201D;), and\n receive output generated and returned by the Services based on the Input\n (&#x201C;Output&#x201D;). Input and Output are collectively &#x201C;Content.&#x201D; As between the\n parties and to the extent permitted by applicable law, you own all\n Input. Subject to your compliance with these Terms, OpenAI hereby\n assigns to you all its right, title and interest in and to Output. This\n means you can use Content for any purpose, including commercial purposes\n such as sale or publication, if you comply with these Terms. OpenAI may\n use Content to provide and maintain the Services, comply with applicable\n law, and enforce our policies. You are responsible for Content,\n including for ensuring that it does not violate any applicable law or\n these Terms.</code></pre>\n<p>The same document lists some restrictions...</p>\n<pre><code> 2. Usage Requirements\n\n (c) Restrictions. You may not (i) use the Services in a way that\n infringes, misappropriates or violates any person&#x2019;s rights; (ii) reverse\n assemble, reverse compile, decompile, translate or otherwise attempt to\n discover the source code or underlying components of models, algorithms,\n and systems of the Services (except to the extent such restrictions are\n contrary to applicable law); (iii) use output from the Services to\n develop models that compete with OpenAI;</code></pre>\n<p>... while the\n<a href=\"https://openai.com/policies/usage-policies\">Usage policies</a>\nlist more.</p>\n<p>So in my opinion, and I am not a lawyer (IANAL) the\n<a href=\"https://openai.com/policies/terms-of-use#3-content\">OpenAI\nChatGPT Terms of use</a> is not compatible with the\n<a href=\"https://creativecommons.org/licenses/by-sa/4.0/\">Creative\nCommons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)\nlicense</a>.</p>\n<p>You can of course refer to ChatGPT as you would any other non\nCreative Commons site.</p>\n<p>If you disagree or would like to weigh in please discuss this on the\nmail list.</p>\n',30,0,0,'CC-BY-SA','CreativeCommons, CC-BY-SA, ChatGPT, HPR, CC',0,0,1),
(3984,'2023-11-09','Whoppers. How Archer72 and I made moonshine. Volume one.',1730,'Sgoti assists Archer72 with his crazy plan to make moonshine.','<p>What is a whopper?<br />\n<a href=\"https://www.merriam-webster.com/dictionary/whopper\">an\nextravagant or monstrous lie</a><br />\n<a href=\"https://dictionary.cambridge.org/dictionary/english/whopper\">a\nbig lie</a><br />\n</p>\n<p>A work of <a href=\"https://en.wikipedia.org/wiki/Fiction\">Fiction</a>\nis any creative work, chiefly any narrative work, portraying\nindividuals, events, or places that are imaginary or in ways that are\nimaginary.<br />\n</p>\n<ul>\n<li><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Moonshine\">Moonshine</a> is\nhigh-proof liquor, generally whiskey, traditionally made, or at least\ndistributed, illegally.<br />\n</li>\n<li><strong>Supporting Source:</strong> <a\nhref=\"https://katexic.com/word/busthead-bust-head/\">busthead\n(bust-head).</a> noun. Cheap, strong liquor, usually of the illegal\nvariety. Moonshine. Hooch. Poteen. Pop-skull. Bumblings. The origin is\nobvious to anyone who&#x2019;s hit the busthead a little hard themselves.<br />\n</li>\n</ul>\n<p>The Bureau of Alcohol, Tobacco, Firearms and Explosives (<a\nhref=\"https://en.wikipedia.org/wiki/Bureau_of_Alcohol,_Tobacco,_Firearms_and_Explosives\">BATFE</a>),\ncommonly referred to as the ATF, is a domestic law enforcement agency\nwithin the United States Department of Justice.<br />\n</p>\n<ul>\n<li><strong>Source:</strong> <a\nhref=\"https://hackerpublicradio.org/correspondents/0318.html\">Archer72</a><br />\n</li>\n<li><strong>Source:</strong> <a\nhref=\"https://hackerpublicradio.org/correspondents/0401.html\">Mechatroniac</a><br />\n</li>\n<li><strong>Source:</strong> <a\nhref=\"https://hackerpublicradio.org/correspondents/0078.html\">Klaatu</a><br />\n</li>\n<li><strong>Source:</strong> <a\nhref=\"https://hackerpublicradio.org/correspondents/0377.html\">Zen_Floater2</a><br />\n</li>\n</ul>\n',391,0,1,'CC-BY-SA','Whoppers, Moonshine, Archer72',0,0,1),
(3985,'2023-11-10','Bash snippet - be careful when feeding data to loops',1644,'A loop in a pipeline runs in a subshell','<article>\n<h2 id=\"overview\">Overview</h2>\n<p>Recently Ken Fallon did a show on HPR, <a\nhref=\"https://hackerpublicradio.org/eps/hpr3962/index.html\">number\n3962</a>, in which he used a <a\nhref=\"https://www.gnu.org/software/bash/manual/html_node/Pipelines.html\">Bash\npipeline</a> of multiple commands feeding their output into a\n<code>while</code> loop. In the loop he processed the lines produced by\nthe pipeline and used what he found to download audio files belonging to\na series with <code>wget</code>.</p>\n<p>This was a great show and contained some excellent advice, but the\nuse of the format:</p>\n<pre><code>pipeline | while read variable; do ...</code></pre>\n<p>reminded me of the \"gotcha\" I mentioned in my own <a\nhref=\"https://hackerpublicradio.org/eps/hpr2699/index.html\">show\n2699</a>.</p>\n<p>I thought it might be a good time to revisit this subject.</p>\n<h2 id=\"so-whats-the-problem\">So, what\'s the problem?</h2>\n<p>The problem can be summarised as a side effect of pipelines.</p>\n<h3 id=\"what-are-pipelines\">What are pipelines?</h3>\n<p>Pipelines are an amazingly useful feature of Bash (and other shells).\nThe general format is:</p>\n<pre><code>command1 | command2 ...</code></pre>\n<p>Here <code>command1</code> runs in a subshell and produces output (on\nits <em>standard output</em>) which is connected via the pipe symbol\n(<code>|</code>) to <code>command2</code> where it becomes its\n<em>standard input</em>. Many commands can be linked together in this\nway to achieve some powerful combined effects.</p>\n<p>A very simple example of a pipeline might be:</p>\n<pre><code>$ printf &#39;World&bsol;nHello&bsol;n&#39; | sort\nHello\nWorld</code></pre>\n<p>The <code>printf</code> command (≡<code>\'command1\'</code>) writes two\nlines (separated by newlines) on <em>standard output</em> and this is\npassed to the <code>sort</code> command\'s <em>standard input</em>\n(≡<code>\'command2\'</code>) which then sorts these lines\nalphabetically.</p>\n<p>Commands in the pipeline can be more complex than this, and in the\ncase we are discussing we can include a loop command such as\n<code>while</code>.</p>\n<p>For example:</p>\n<pre><code>$ printf &#39;World&bsol;nHello&bsol;n&#39; | sort | while read line; do echo &quot;($line)&quot;; done\n(Hello)\n(World)</code></pre>\n<p>Here, each line output by the <code>sort</code> command is read into\nthe variable <code>line</code> in the <code>while</code> loop and is\nwritten out enclosed in parentheses.</p>\n<p>Note that the loop is written on one line. The semi-colons are used\ninstead of the equivalent newlines.</p>\n<h3 id=\"variables-and-subshells\">Variables and subshells</h3>\n<p>What if the lines output by the loop need to be numbered?</p>\n<pre><code>$ i=0; printf &#39;World&bsol;nHello&bsol;n&#39; | sort | while read line; do ((i++)); echo &quot;$i) $line&quot;; done\n1) Hello\n2) World</code></pre>\n<p>Here the variable <code>\'i\'</code> is set to zero before the\npipeline. It could have been done on the line before of course. In the\n<code>while</code> loop the variable is incremented on each iteration\nand included in the output.</p>\n<p>You might expect <code>\'i\'</code> to be 2 once the loop exits but it\nis not. It will be zero in fact.</p>\n<p>The reason is that there are two <code>\'i\'</code> variables. One is\ncreated when it\'s set to zero at the start before the pipeline. The\nother one is created in the loop as a \"clone\". The expression:</p>\n<pre><code>((i++))</code></pre>\n<p>both creates the variable (where it is a copy of the one in the\nparent shell) and increments it.</p>\n<p>When the subshell in which the loop runs completes, it will delete\nthis version of <code>\'i\'</code> and the original one will simply\ncontain the zero that it was originally set to.</p>\n<p>You can see what happens in this slightly different example:</p>\n<pre><code>$ i=1; printf &#39;World&bsol;nHello&bsol;n&#39; | sort | while re
(3992,'2023-11-21','Test recording on a wireless mic',223,'Archer72 tests out a wireless mic with a USB C receiver','<h2 id=\"lekato-2-pack-wireless-microphone-with-charging-case\">LEKATO 2\nPack Wireless Microphone with Charging Case</h2>\n<p><a href=\"https://www.amazon.com/gp/product/B0C4SNT6QK\"\nclass=\"uri\">https://www.amazon.com/gp/product/B0C4SNT6QK</a></p>\n<ul>\n<li>USB C</li>\n<li>Two microphones in a charging case</li>\n<li>Charge phone and use the receiver simultaneously</li>\n</ul>\n<h3 id=\"claims\">Claims</h3>\n<ul>\n<li>75 ft. transmission range</li>\n<li>Wireless Mic can work continuously for 5 hours, and the charging box\ncan quickly charge the device 4 times. The total usage time reaches 25\nhours</li>\n</ul>\n<h2 id=\"axet-audio-recorder-on-f-droid\">Axet Audio recorder on\nF-Droid</h2>\n<p><a href=\"https://f-droid.org/packages/com.github.axet.audiorecorder\"\nclass=\"uri\">https://f-droid.org/packages/com.github.axet.audiorecorder</a></p>\n<ul>\n<li>Works to record stereo with this mic set</li>\n</ul>\n',318,0,0,'CC-BY-SA','Recording, Microphone, Wireless, USB \'C\', F-droid, Android App',0,0,1),
(4221,'2024-10-07','HPR Community News for September 2024',0,'HPR Volunteers talk about shows released and comments posted in September 2024','',159,47,1,'CC-BY-SA','Community News',0,0,1),
(4241,'2024-11-04','HPR Community News for October 2024',0,'HPR Volunteers talk about shows released and comments posted in October 2024','',159,47,1,'CC-BY-SA','Community News',0,0,1),
(3986,'2023-11-13','Optical media is not dead',435,'Archer72 shows command line options for creating and writing iso files','<h2 id=\"brought-up-by-klaatu-on-gnuworldorder.info\">Brought up by Klaatu\non GnuWorldOrder.info</h2>\n<h3 id=\"media-size\">Media size</h3>\n<p>4.7Gb DVD - Actual capacity: 4.377Gb</p>\n<p><a\nhref=\"https://www.cdrom2go.com/blog/what-is-the-actual-storage-capacity-of-a-dvd-disc\"\ntitle=\"What is the actual storage capacity of a dvd disc\">What is the\nactual storage capacity of a dvd disc</a></p>\n<p>A disc with a 25GB capacity is the equivalent of 23.28 gigabytes\nNormally rated at 50GB, in practice they can record about 46.57GB of\ndata</p>\n<p><a\nhref=\"https://www.cdrom2go.com/blog/what-is-the-maximum-capacity-of-a-blu-ray-disc\"\ntitle=\"What is the maximum capacity of a blu ray disc\">What is the\nmaximum capacity of a blu ray disc</a></p>\n<p>Generate ISO image from directory</p>\n<pre><code>genisoimage -U -R -allow-lowercase -allow-multidot -o mydvd.iso &quot;$1&quot;</code></pre>\n<p>Alternative is <em>mkisofs</em></p>\n<pre><code>-U\n\nAllows &quot;untranslated&quot; filenames, completely violating the ISO9660 standards described above. Enables the following flags: -d -l -N -allow-leading-dots -relaxed-filenames -allow-lowercase -allow-multidot -no-iso-translate. Allows more than one `.&#39; character in the filename, as well as mixed-case filenames. This is useful on HP-UX, where the built-in cdfs filesystem does not recognize any extensions. Use with extreme caution.\n\n-R\n\nGenerate SUSP and RR records using the Rock Ridge protocol to further describe the files on the ISO9660 filesystem.\n\n[Wikipedia - ISO 9660](https://en.wikipedia.org/wiki/ISO_9660#SUSP &quot;Wikipedia - ISO 9660&quot;)</code></pre>\n<h3 id=\"corrected-command\">Corrected command</h3>\n<pre><code>genisoimage -R -o mydvd.iso &quot;$1&quot;</code></pre>\n<p>Burning data to a DVD or Blu-ray</p>\n<p>Note:</p>\n<p>Make sure that the medium is not mounted when you begin to write to\nit. Mounting may happen automatically if the medium contains a readable\nfile system. In the best case, it will prevent the burn programs from\nusing the burner device. In the worst case, there will be misburns\nbecause read operations disturbed the drive. So if in doubt, do:</p>\n<pre><code>umount /dev/sr0</code></pre>\n<p>growisofs has a small bug with blank BD-R media. It issues an error\nmessage after the burning is complete. Programs like k3b then believe\nthe whole burn run failed. To prevent this, either format the blank BD-R\nby dvd+rw-format /dev/sr0 before submitting it to growisofs or use\ngrowisofs option</p>\n<pre><code>-use-the-force-luke=spare:none</code></pre>\n<p><a\nhref=\"https://wiki.archlinux.org/title/Optical_disc_drive#Burning_an_ISO_image_to_CD,_DVD,_or_BD\"\ntitle=\"Archwiki - Optical disk burning\">Archwiki - Optical disk\nburning</a></p>\n<h2 id=\"burning-an-iso-image-to-cd-dvd-or-bd\">Burning an ISO image to\nCD, DVD, or BD</h2>\n<h3\nid=\"to-burn-a-readily-prepared-iso-image-file-isoimage.iso-onto-an-optical-medium-run-for-cd\">To\nburn a readily prepared ISO image file isoimage.iso onto an optical\nmedium, run for CD:</h3>\n<pre><code>cdrecord -v -sao dev=/dev/sr0 isoimage.iso</code></pre>\n<h3 id=\"and-for-dvd-or-bd\">and for DVD or BD:</h3>\n<pre><code>growisofs -dvd-compat -Z /dev/sr0=isoimage.iso</code></pre>\n<h3 id=\"for-cd-dvd-bd\">for CD, DVD, BD:</h3>\n<pre><code>xorriso -as cdrecord -v dev=/dev/sr0 -dao isoimage.iso</code></pre>\n<h2 id=\"other-reading\">Other reading</h2>\n<h3 id=\"archwiki---optical-disk-drive\">Archwiki - Optical disk\ndrive</h3>\n<p><a href=\"https://wiki.archlinux.org/title/Optical_disc_drive\"\ntitle=\"Archwiki - Optical disk drive\">Archwiki - Optical disk\ndrive</a></p>\n<h3 id=\"debian---gensisoimage-man-page\">Debian - Gensisoimage man\npage</h3>\n<p><a\nhref=\"https://manpages.debian.org/bookworm/genisoimage/genisoimage.1.en.html#U\"\ntitle=\"Debian - Gensisoimage man page\">Debian - Gensisoimage man\npage</a></p>\n<h3 id=\"debian-wiki---genisoimage-and-xorrisofs\">Debi
(3987,'2023-11-14','The Grim Dawn',2391,'Sgoti rambles about a video game called Grim Dawn.','<ul>\n<li><p><strong>Source:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Action_role-playing_game\">Action\nrole-playing game.</a></p></li>\n<li><p><strong>Source:</strong> <a href=\"https://www.grimdawn.com/\">Grim\nDawn.</a></p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://www.grimdawn.com/guide/\">Grim Dawn Game\nGuide.</a></p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://store.steampowered.com/app/219990/Grim_Dawn/\">Steam page\nfor Grim Dawn.</a></p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://www.grimtools.com/\">Grim Dawn Tools (Third party\nsite).</a></p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://www.grimdawn.com/guide/character/masteries/soldier/\">Soldier\nClass.</a> Soldiers readily charge into the carnage and unleash crushing\nmight upon their foes. Their physical prowess is unmatched and their\nability to survive through the most brutal conflicts makes them an\nexcellent choice for defense-oriented players.</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://diablo4.blizzard.com/en-us/\">Diablo 4</a></p></li>\n</ul>\n<p>This work is licensed under a <a\nhref=\"https://creativecommons.org/licenses/by-sa/4.0/\"\ntitle=\"CC-BY-SA 4.0 International\">Creative Commons\nAttribution-ShareAlike 4.0 International License</a>.</p>\n',391,0,0,'CC-BY-SA','Grim Dawn, ARPG, Diablo 4, Video Games',0,0,1),
(3988,'2023-11-15','Beeper.com',750,'operat0r talks about Beeper dot com a multi chat client','<p>I talk about Beeper dot com a multi chat client</p>\n<p>Beeper is a universal messaging app that lets you chat with anyone on\nany chat app, including Whatsapp, iMessage, Telegram and 12 other\nnetworks.</p>\n<h2 id=\"links\">Links</h2>\n<ul>\n<li><a href=\"https://www.beeper.com/\">https://www.beeper.com/</a></li>\n<li><a\nhref=\"https://github.com/beeper\">https://github.com/beeper</a></li>\n</ul>\n',36,0,1,'CC-BY-SA','chat,messaging,mobile',0,0,1),
(3989,'2023-11-16','LastPass Security Update 1 November 2023',553,'LastPass was hacked, what should you do?','<p>In 2022, LastPass disclosed that it had been hacked, and I think by\nnow just about everyone has heard about it. Now we have evidence that\npassword vaults have been hacked. So what does this mean, and what\nshould you do?</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><a\nhref=\"https://krebsonsecurity.com/2023/09/experts-fear-crooks-are-cracking-keys-stolen-in-lastpass-breach/\"\nclass=\"uri\">https://krebsonsecurity.com/2023/09/experts-fear-crooks-are-cracking-keys-stolen-in-lastpass-breach/</a></li>\n<li><a\nhref=\"https://www.zwilnik.com/security-and-privacy/lastpass-hacked-what-does-this-mean/\"\nclass=\"uri\">https://www.zwilnik.com/security-and-privacy/lastpass-hacked-what-does-this-mean/</a></li>\n<li><a\nhref=\"https://wtop.com/tech/2023/01/data-doctors-should-i-stop-using-lastpass-for-password-management/\"\nclass=\"uri\">https://wtop.com/tech/2023/01/data-doctors-should-i-stop-using-lastpass-for-password-management/</a></li>\n<li><a href=\"http://hackerpublicradio.org/eps.php?id=1810\"\nclass=\"uri\">http://hackerpublicradio.org/eps.php?id=1810</a></li>\n</ul>\n',198,74,0,'CC-BY-SA','LastPass, password vault',0,0,1),
(3993,'2023-11-22','z80 membership card',934,'review of a kit','<ul>\n<li>intro\n<ul>\n<li>bought a couple of z80 old style computers</li>\n<li>found this searching youtube</li>\n<li>cosmac elf-rca 1802</li>\n<li><a href=\"https://www.sunrise-ev.com/\"\nclass=\"uri\">https://www.sunrise-ev.com/</a></li>\n</ul></li>\n<li>lee hart\n<ul>\n<li>electrical engineer</li>\n<li>was there at the beginning of the computer revolution</li>\n<li>life long love of electric vehicles</li>\n</ul></li>\n<li>the kit\n<ul>\n<li>piece of art</li>\n<li>z80 membership, minimum computer</li>\n<li>front panel gives self contained system</li>\n<li>boards, all parts and altoid tin</li>\n<li>great documentation, schematics, assembly guide and getting\nstarted</li>\n</ul></li>\n<li>the assembly\n<ul>\n<li>great instructions</li>\n<li>easy to solder</li>\n<li>a few tricks to get the boards to fit in the tin</li>\n<li>i made a dedicated serial cable by modifying ftdi cable</li>\n<li>i made a battery pack</li>\n</ul></li>\n<li>usage\n<ul>\n<li>front panel takes a bit of practice to use (locations of keys)</li>\n<li>found a z80 assembly language tutorial, hand assembly</li>\n<li>portable z80 machine to learn</li>\n</ul></li>\n<li>take away\n<ul>\n<li>excellent kit</li>\n<li>if your looking for a gift, many to choose from</li>\n<li>excellent quality</li>\n</ul></li>\n</ul>\n<p><em>01 membership card</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/01-membership-card.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/01-membership-card_thumbnail.jpg\"\nalt=\"01 membership card\" /></a> <br/><small><small><em>Click the\nthumbnail to see the full-sized image</em></small></small></p>\n<p><em>02 membership card back</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/02-membership-card--back.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/02-membership-card--back_thumbnail.jpg\"\nalt=\"02 membership card back\" /></a> <br/><small><small><em>Click the\nthumbnail to see the full-sized image</em></small></small></p>\n<p><em>03 front panel card</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/03-front-panel-card.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/03-front-panel-card_thumbnail.jpg\"\nalt=\"03 front panel card\" /></a> <br/><small><small><em>Click the\nthumbnail to see the full-sized image</em></small></small></p>\n<p><em>04 front card back</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/04-front-card-back.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/04-front-card-back_thumbnail.jpg\"\nalt=\"04 front card back\" /></a> <br/><small><small><em>Click the\nthumbnail to see the full-sized image</em></small></small></p>\n<p><em>05 assembled</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/05-assembled.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/05-assembled_thumbnail.jpg\"\nalt=\"05 assembled\" /></a> <br/><small><small><em>Click the thumbnail to\nsee the full-sized image</em></small></small></p>\n<p><em>06 in the can</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/06-in-the-can.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/06-in-the-can_thumbnail.jpg\"\nalt=\"06 in the can\" /></a> <br/><small><small><em>Click the thumbnail to\nsee the full-sized image</em></small></small></p>\n<p><em>07 things added</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/07-things-added.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/07-things-added_thumbnail.jpg\"\nalt=\"07 things added\" /></a> <br/><small><small><em>Click the thumbnail\nto see the full-sized image</em></small></small></p>\n<p><em>08 fits inside</em><br />\n<a\nhref=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/08-fits-inside.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3993/hpr3993/08-fits-inside_thumbnail.jpg\"\nalt=\"08 fits inside\" /></a> <br/><small><small><em>Click the thumbnail\nt
(3994,'2023-11-23','Lastpass Response',790,'I talk about lastpass','<p>I talk about <a href=\"https://www.lastpass.com/\">LastPass</a>.</p>\n',36,0,1,'CC-BY-SA','security,computers,internet',0,0,1),
(3995,'2023-11-24','Creating Your Own Internet Radio Streaming Device',570,'Claudio talks about a couple of streaming radio solutions to make your own internet radio device.','<p>aNONradio: <a href=\"https://anonradio.net\"\nclass=\"uri\">https://anonradio.net</a><br />\nTildeRadio: <a href=\"https://tilderadio.org\"\nclass=\"uri\">https://tilderadio.org</a></p>\n<p>Volumio: <a href=\"https://volumio.com/\"\nclass=\"uri\">https://volumio.com/</a><br />\nmoOde Audio: <a href=\"https://moodeaudio.org/\"\nclass=\"uri\">https://moodeaudio.org/</a></p>\n',152,0,0,'CC-BY-SA','moode,raspberrypi,audio,internetradio,streamingradio,multimedia,volumio,anonradio,tilderadio',0,0,1),
(3996,'2023-11-27','Holiday Challenges Series - Ep 1 - Advent of Code',221,'Discussing challenges to help you enjoy the holiday season','<h2 id=\"holiday-challenges-series---ep-1---advent-of-code\">Holiday\nChallenges Series - Ep 1 - Advent of Code</h2>\n<p>Since some of the information you are about to hear is time specific,\nI want to let you know that I am recording this near the end of November\nin 2023.</p>\n<p>Whichever holidays you celebrate this time of year, life generally\ngets busy and stressful.</p>\n<p>It could be shopping<br />\nor cooking<br />\nor cleaning<br />\nor school activities<br />\nor buying, assembling, wrapping, and delivering gifts<br />\nor planning time with family<br />\nor dealing with visiting family<br />\nor scheduling time off from work<br />\nor managing extra work while others have scheduled time off<br />\nor a whole plethora of other things.<br />\nThis time of year can be stressful.</p>\n<p>A few years ago, I discovered a fun activity, which challenged my\nmind and helped me focus and detach from the stress for a little while\neach day, through the month of December. It helped me manage the stress\nin an enjoyable way.</p>\n<p>Since then, I have found and tried several other similar activities,\nso I wanted to share a little about them with you for the next few\nepisodes so you can see what might work for you.</p>\n<p>The first I would like to share is called the Advent of Code\nChallenge (<a href=\"https://adventofcode.com/\"\nclass=\"uri\">https://adventofcode.com/</a>). In HPR episodes 2973 (<a\nhref=\"https://hackerpublicradio.org/eps/hpr2973/index.html\"\nclass=\"uri\">https://hackerpublicradio.org/eps/hpr2973/index.html</a>)\nand 3744 (<a href=\"https://hackerpublicradio.org/eps/hpr3744/index.html\"\nclass=\"uri\">https://hackerpublicradio.org/eps/hpr3744/index.html</a>),\nDaniel Perrson shared some great details about this challenge. I\nencourage you to go review his episodes.</p>\n<p>But the TLDR (Or maybe the TLDL -- Too Long Didn\'t Listen?) for\nAdvent of Code is that it is a 25 day challenge which begins on December\n1. Once you register at adventofcode.com, Each day, you will be\npresented with a problem to solve and some sample data to use for\nverification that your program works. You can choose to use any\nprogramming language or application you desire produce the answer. Last\nyear, I used this to brush up on my Python skills. Others use Visual\nBasic, C (and all its variants), Rust, Go, etc. I have seen people use\nCobol, Fortran, and Pascal, or even Microsoft Excel. It is really up to\nyou. You are then presented a dataset which is unique to your login, and\nagainst which you run your code. When complete, you submit the answer\ncame up with on the adventofcode.com web site and they will tell you if\nyou are correct or not.</p>\n<p>If you are competitive (And REALLY GOOD) there is a Global\nLeaderboard. If you want to compete with a group of friends, you can\nbuild your own leaderboard and invite others to take part with you.</p>\n<p>There are tons of resources online, from youtube channels to reddit\n(<a href=\"https://www.reddit.com/r/adventofcode/\"\nclass=\"uri\">https://www.reddit.com/r/adventofcode/</a>), to Discord (<a\nhref=\"https://discord.gg/tXJh262\"\nclass=\"uri\">https://discord.gg/tXJh262</a>)</p>\n<p>So, if you are looking for a way to challenge your mind and detach\nfrom holiday stress, Advent of Code may be something you might try.</p>\n<p>If this is not your cup of tea, I will be sharing several other\noptions for holiday challenges in future episodes.</p>\n',394,0,0,'CC-BY-SA','Advent of Code, holiday, challenge',0,0,1),
(3999,'2023-11-30','Holiday Challenges Series Ep 02 TryHackMe Advent of Cyber Challenge',183,'Discussing the TryHackMe Advent of Cyber challenge to help you enjoy the holiday season','<h2\nid=\"holiday-challenges-series---ep-2---tryhackme-advent-of-cyber-challenge\">Holiday\nChallenges Series - Ep 2 - TryHackMe Advent of Cyber Challenge</h2>\n<p>Since some of the information you are about to hear is time specific,\nI want to let you know that I am recording this near the end of November\nin 2023.</p>\n<p>If you missed the first episode, which introduces this series, you\ncan go back and listen to HPR3996</p>\n<p>I have been using TryHackMe for several years, and I recommend it to\nall of my students. It is a great environment where people can get hands\non experience with technology that relates to cyber security, all from\nthe comfort of their browser and free year-round.</p>\n<p>The TryHackMe Advent of Cyber challenge is a free gamified\nenvironment which focuses on penetration testing, security\noperations/engineering, forensics/incident response, malware analysis,\nmachine learning, and more!</p>\n<p>This year\'s challenge opens on December 1, 2023 (Which is the reason\nwhy I am posting twice this week). Typically, the Advent of Cyber\nchallenge includes daily beginner-friendly exercises for people new to\ncybersecurity. These can consist of walkthroughs, video tutorials, and\nchallenges. There are also prizes available based on random drawings and\non participant success.</p>\n<p>Infosec personalities like John Hammond, Gerald Auger, InsiderPHD,\nand InfoSec Pat are featured in this year\'s challenge.</p>\n<p>You can play with last year\'s Advent of Cyber challenge by visiting\n<a href=\"https://tryhackme.com/room/adventofcyber4\"\nclass=\"uri\">https://tryhackme.com/room/adventofcyber4</a>. It outlines\nthe overall story and shows all of the tasks last year\'s participants\nexperienced, including both offensive and defensive topics like: log\nanalysis, OSINT, scanning, brute force attacks, email analysis,\nCyberChef, blockchain smart contracts, malware analysis, memory\nforensics, packet analysis, web application hacking, and more!</p>\n<p>Everything can be done with a free account from within a browser.</p>\n<p>If you want to learn more about cybersecurity, transition your career\ninto infosec, or just have fun playing with cyber challenges, you can\ngive it a try by visiting tryhackme.com or <a\nhref=\"https://tryhackme.com/r/christmas\"\nclass=\"uri\">https://tryhackme.com/r/christmas</a></p>\n<p>Please note: I am not affiliated with TryHackMe in any way, other\nthan having been a paying member for many years. Students and others who\nhave participated in previous year\'s Advent of Cyber challenges have\ntold me how much they enjoyed it and learned from it. Even though I have\nbeen an infosec practitioner for more years than I would like to admit,\nI also have enjoyed taking part in this challenge.</p>\n<p>If this is not for you, I will be sharing another option for a\nholiday challenge in my next episode.</p>\n',394,0,0,'CC-BY-SA','Advent of Cyber, TryHackMe, Hands on, cyber, cybersecurity, infosec, holiday, challenge',0,0,1),
(4006,'2023-12-11','Holiday Challenges Ep 3 SANS Holiday Hack Challenge & KringleCon',160,'Discussing the SANS Holiday Hack Challenge & KringleCon to help you enjoy the holiday season','<h2\nid=\"holiday-challenges-series---ep-3---sans-holiday-hack-challenge-with-kringlecon\">Holiday\nChallenges Series - Ep 3 - SANS Holiday Hack Challenge with\nKringleCon</h2>\n<p>Since some of the information you are about to hear is time specific,\nI want to let you know that I am recording this near the end of November\nin 2023.</p>\n<p>If you missed the first episode, which introduces this series, you\ncan go back and listen to HPR3996</p>\n<p>The SANS Holiday Hack Challenge is an interactive online technology\nand hacking game combined with a virtual security conference, beginning\nin the second week of December. By the time this episode drops, it may\nalready be live. You can tour the North Pole conference facilities,\nmeeting people, interactive non-player characters (NPC), and maybe even\nsome villains from Holiday Hack Challenges past, as you solve problems\nand gather clues which you use to help save Christmas.</p>\n<p>Everything can be done from within the browser, and did I mention\nthere is a virtual security conference, called KringleCon? Some of the\nbiggest rock stars (and most humble and brilliant people) in\nCyberSecurity speak each year at KringleCon. Many of their talks also\nprovide clues to solving game challenges.</p>\n<p>Ed Skoudis and his team (The same people who build SANS NetWars) work\ntirelessly year after year to create the most amazing experience,\ncomplete with custom music! This has become one of my favorite holiday\ntraditions each year. You can learn more about the 2023 challenge by\nwatching Ed\'s Inside SANS Holiday Hack Challenge 2023 YouTube video at\n<a href=\"https://www.youtube.com/watch?v=X9Gmdr_CxzQ\"\nclass=\"uri\">https://www.youtube.com/watch?v=X9Gmdr_CxzQ</a></p>\n<p>You can access this year\'s challenge by visiting sans.org/holidayhack\nor <a href=\"https://www.sans.org/mlp/holiday-hack-challenge-2023/\"\nclass=\"uri\">https://www.sans.org/mlp/holiday-hack-challenge-2023/</a></p>\n<p>There, you will learn more about all things Holiday Hack before the\ngame opens in the second week of December. If you want to play now, or\njust get a feel for it, you can access three of the previous years\'\nchallenges right now at the same site.</p>\n<p>I am not associated with SANS or the Holiday Hack Challenge in any\nway, other than to have participated for several years now, and I have\nwatched other people learn and grow by taking part in it.</p>\n<p>I hope that you have enjoyed this short series. If there are other\nonline challenges you find interesting or informative, I encourage you\nto record a show about them.</p>\n<p>Have a wonderful day.</p>\n',394,0,0,'CC-BY-SA','SANS, KringleCon, holiday, challenge',0,0,1),
(3997,'2023-11-28','The Oh No! News.',875,'Sgoti talks about Malware distributed via Google\'s Dynamic Ads and more.','<h2 id=\"the-oh-no-news.\">The <em>Oh No!</em> news.</h2>\n<h2 id=\"oh-no-news-is-good-news.\"><em>Oh No!</em> News is Good\nNews.</h2>\n<ul>\n<li><strong>TAGS:</strong> Oh No, News, Threat analysis, InfoSec, Google\nDynamic Search Ads</li>\n</ul>\n<hr />\n<h3 id=\"threat-analysis-your-attack-surface.\"><strong>Threat analysis;\nyour attack surface.</strong></h3>\n<ul>\n<li><p><strong>Source:</strong> <a\nhref=\"https://ico.org.uk/about-the-ico/media-centre/news-and-blogs/2023/11/former-nhs-secretary-found-guilty-of-illegally-accessing-medical-records/\">Former\nNHS secretary found guilty of illegally accessing medical\nrecords</a><br />\n</p>\n<ul>\n<li>A former NHS employee has been found guilty and fined for illegally\naccessing the medical records of over 150 people.<br />\n</li>\n<li>Loretta Alborghetti, from Redditch, worked as a medical secretary\nwithin the Ophthalmology department at Worcestershire Acute Hospitals\nNHS Trust when she illegally accessed the records.<br />\n</li>\n</ul></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://www.openstreetmap.org/relation/1875340#map=12/52.2917/-1.9485\">Open\nStreet Map link to Redditch Worcestershire.</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://thehackernews.com/2023/11/netsupport-rat-infections-on-rise.html\">NetSupport\nRAT Infections on the Rise. Targeting Government and Business\nSectors</a><br />\n</p>\n<ul>\n<li>While NetSupport Manager started off as a legitimate remote\nadministration tool for technical assistance and support, malicious\nactors have misappropriated the tool to their own advantage, using it as\na beachhead for subsequent attacks.<br />\n</li>\n</ul></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://thehackernews.com/2023/11/beware-malicious-google-ads-trick.html\">Beware:\nMalicious Google Ads Trick WinSCP Users into Installing\nMalware</a><br />\n</p>\n<ul>\n<li>The threat actors are believed to leverage Google\'s Dynamic Search\nAds (DSAs), which automatically generates ads based on a site\'s content\nto serve the malicious ads that take the victims to the infected\nsite.<br />\n</li>\n</ul></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://thehackernews.com/2023/10/trojanized-pycharm-software-version.html\">Trojanized\nPyCharm Software Version Delivered via Google Search Ads.</a><br />\n</p>\n<ul>\n<li>Victims who clicked on the ad were taken to a hacked web page with a\nlink to download the application, which turned out to install over a\ndozen different pieces of malware instead.<br />\n</li>\n</ul></li>\n</ul>\n<hr />\n<h3 id=\"infosec-the-language-of-security.\"><strong>InfoSec; the language\nof security.</strong></h3>\n<ul>\n<li><strong>Source:</strong> <a\nhref=\"https://thehackernews.com/2023/11/why-defenders-should-embrace-hacker.html\">Why\nDefenders Should Embrace a Hacker Mindset</a><br />\n</li>\n</ul>\n<hr />\n<ul>\n<li><strong>Additional Information.</strong>\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Data_breach\"\ntitle=\"From Wikipedia, the free encyclopedia.\">What is a \"Data\nBreach\"?</a> A data breach is a security violation, in which sensitive,\nprotected or confidential data is copied, transmitted, viewed, stolen,\naltered or used by an individual unauthorized to do so.<br />\n</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Malware\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is \"Malware\"?</a>\nMalware (a <a href=\"https://en.wikipedia.org/wiki/Portmanteau\"\ntitle=\"From Wikipedia, the free encyclopedia\">portmanteau</a> for\nmalicious software) is any software intentionally designed to cause\ndisruption to a computer, server, client, or computer network, leak\nprivate information, gain unauthorized access to information or systems,\ndeprive access to information, or which unknowingly interferes with the\nuser\'s computer security and privacy.<br />\n</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Payload_(comput
(4005,'2023-12-08','Sgoti\'s reply to multiple shows.',893,'Sgoti replies to a few HPR Shows.','<h1 id=\"sgotis-reply-to-multiple-shows.\">Sgoti\'s reply to multiple\nshows.</h1>\n<h2 id=\"sgoti-replies-to-a-few-hpr-shows.\">Sgoti replies to a few HPR\nShows.</h2>\n<ul>\n<li><p>Tags: Reply show, password managers, lastpass.</p></li>\n<li><p>Reply to: <a\nhref=\"https://hackerpublicradio.org/eps/hpr3988/index.html\"\ntitle=\"operat0r talks about Beeper dot com a multi chat client\">hpr3988\n:: Beeper.com</a><br />\n</p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://www.beeper.com/\">Beeper chat application</a><br />\n</p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://github.com/beeper\">Beeper Github page</a><br />\n</p></li>\n<li><p><strong>Supporting Source:</strong> <a\nhref=\"https://github.com/beeper#work-with-us-at-beeper\">Work with us at\nBeeper</a><br />\n</p></li>\n<li><p>Reply to: <a\nhref=\"https://hackerpublicradio.org/eps/hpr3989/index.html\"\ntitle=\"LastPass was hacked, what should you do?\">hpr3989 :: LastPass\nSecurity Update 1 November 2023</a><br />\n</p></li>\n<li><p>Reply to: <a\nhref=\"https://hackerpublicradio.org/eps/hpr3994/index.html\">hpr3994 ::\nLastpass Response</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://youtu.be/IY84DvdPQaw?si=VFDyfM6YSh1IEs3N&amp;t=602\">The\nTHREE STOOGES - A Plumbing We Will Go</a><br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.youtube.com/watch?v=UWQoK506xkQ\">Whitest Kids U Know:\nLeg Peeing</a><br />\n</p>\n<ul>\n<li>This was just funny. I found it while searching for, \"why the\nBritish say things like taking a piss\".</li>\n</ul></li>\n</ul>\n<p>This work is licensed under a <a\nhref=\"https://creativecommons.org/licenses/by-sa/4.0/\"\ntitle=\"CC-BY-SA 4.0 International\">Creative Commons\nAttribution-ShareAlike 4.0 International License</a>.</p>\n',391,0,0,'CC-BY-SA','reply show, password managers, lastpass',0,0,1),
(3998,'2023-11-29','Using open source OCR to digitize my mom\'s book',1847,'How I used open source tools such as gphoto2 and the OCR software tesseract to digitize pages','<p>To improve the speed of my workflow, I wrote a bash script that uses\nthe open source programs programs <code>gphoto2</code>,\n<code>tesseract</code>, <code>grep</code> and <code>ImageMagick</code>\nto digitize my mom\'s 338 page book. Here is the link to the script:\n<a href=\"https://github.com/deltaray/ocr-script\">https://github.com/deltaray/ocr-script</a></p>\n',194,0,0,'CC-BY-SA','ocr,opensource,grep,scripts,programming',0,0,1),
(4002,'2023-12-05','Today I learnt - 2023-11-24',477,'Some odds and ends I learnt today','<article>\n<h2 id=\"whats-this\">What\'s this?</h2>\n<p>I enjoy finding out about things. Now I\'m retired (I have been for 14\nyears), I have time to research subjects I find interesting. So I\ndo!</p>\n<p>The HPR project is going through a phase where the queue can get very\nlow, so I thought having a subject where I could fire off short shows\nfrom time to time would help with this. Maybe we can make a series where\nothers who like the idea can contribute when the mood takes them!</p>\n<p>My plan is to keep details to a minimum and provide links to sources\nof more information if you\'re someone who likes to dig deeper!</p>\n<h2 id=\"til-1---is-it-learnt-or-learned\">TIL 1 - is it <em>learnt</em>\nor <em>learned</em>?</h2>\n<p>I discovered that both are acceptable. Both are the past tense (and\npast participle) of the verb \"to learn\":</p>\n<ul>\n<li><em>learnt</em> is an older form which is more common in British\nEnglish</li>\n<li><em>learned</em> is more common in US English, and is becoming more\npopular in the UK</li>\n</ul>\n<h3 id=\"links\">Links</h3>\n<ul>\n<li><a\nhref=\"https://grammarist.com/spelling/learned-learnt/\">Grammarist:\nLearned vs. learnt</a></li>\n<li><a\nhref=\"https://www.bbc.co.uk/worldservice/learningenglish/radio/specials/1535_questionanswer/page50.shtml\">BBC\nAsk About English</a></li>\n</ul>\n<h2 id=\"til-2---the-french-word-for-piggy-bank\">TIL 2 - the French word\nfor <em>piggy bank</em></h2>\n<p>I watch a YouTube channel from a Canadian woodworker who produces\nEnglish and French versions of his episodes. His latest one is about\nmaking a wooden piggy bank, or <em>tirelire</em> in French.</p>\n<p>I learnt French at school (though I wasn\'t much good at it), but have\nnever come across this word. My questions are:</p>\n<ul>\n<li>Where does it come from?</li>\n<li>How do you say it?</li>\n</ul>\n<p>The Wiktionary page below has answers to both.</p>\n<ul>\n<li>It\'s of <em>onomatopoeic origin (representing the rattling of\ncoins)</em>.</li>\n<li>There\'s audio on the page showing how to say it (as well as the IPA\nversion [International Phonetic Alphabet], see below).</li>\n</ul>\n<h3 id=\"links-1\">Links</h3>\n<ul>\n<li>YouTube channel - <em>The Woodpecker</em>:\n<ul>\n<li><a href=\"https://www.youtube.com/watch?v=Nsla1NB-Q40\">L\'gosseux\nd\'bois EP 305 - Une tirelire en bois</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=2r739TM_ru8\">The Woodpecker\nEP 305 - A wooden piggybank</a></li>\n</ul></li>\n<li><a href=\"https://en.wiktionary.org/wiki/tirelire\">Wiktionary:\ntirelire</a></li>\n</ul>\n<h2 id=\"til-3---how-to-pronounce-ipa-coded-words\">TIL 3 - how to\npronounce IPA coded words</h2>\n<p>I actually learnt about this a while ago, but I thought now would be\na good time to share.</p>\n<p>The IPA form of <em>tirelire</em> is <code>/tiʁ.liʁ/</code> (I\nincluded the enclosing slash delimiters which aren\'t part of the IPA but\nhave significance; see the IPA Wikipedia page for details). I have seen\nthese symbols for years but have never managed to decode them\nreliably.</p>\n<p>A few months ago I wondered how to deal with them reliably (and\neasily). There are many sites offering to transcribe English (and other\nlanguages) to IPA, a few of which are free. I only found one that would\nattempt to speak IPA, and that is <a href=\"http://ipa-reader.xyz\">IPA\nReader</a>.</p>\n<p>Paste the IPA into the form, select a reader voice, and click \"Read\".\nSome of the voices seem a bit odd. I settled on \"Brian\" for British\nEnglish, and it seems fine.</p>\n<h3 id=\"links-2\">Links</h3>\n<ul>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/International_Phonetic_Association\">International\nPhonetic Association</a> - creators of the <a\nhref=\"https://en.wikipedia.org/wiki/International_Phonetic_Alphabet\">International\nPhonetic Alphabet</a></li>\n<li><a href=\"http://ipa-reader.xyz\">IPA Reader</a></li>\n</ul>\n</article>\n',225,0,1,'CC-BY-SA','learning,learned,learnt,TIL,English,French,pho
/*!40000 ALTER TABLE `eps` ENABLE KEYS */;
UNLOCK TABLES;
--
-- Table structure for table `hosts`
--
DROP TABLE IF EXISTS `hosts`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `hosts` (
`hostid` int(10) NOT NULL AUTO_INCREMENT,
`host` text NOT NULL,
`email` text NOT NULL,
`profile` text NOT NULL,
`license` varchar(11) NOT NULL DEFAULT 'CC-BY-SA',
`local_image` int(2) NOT NULL DEFAULT 0,
`gpg` text NOT NULL,
`valid` int(1) NOT NULL DEFAULT 1,
`espeak_name` text DEFAULT NULL COMMENT 'Version of the host name for use with espeak',
PRIMARY KEY (`hostid`)
) ENGINE=MyISAM AUTO_INCREMENT=426 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping data for table `hosts`
--
LOCK TABLES `hosts` WRITE;
/*!40000 ALTER TABLE `hosts` DISABLE KEYS */;
INSERT INTO `hosts` (`hostid`, `host`, `email`, `profile`, `license`, `local_image`, `gpg`, `valid`, `espeak_name`) VALUES (1,'droops','droops.nospam@nospam.gmail.com','nomicon.info','CC-BY-NC-SA',0,'',1,'droops'),
(3,'dosman','dosman.nospam@nospam.packetsniffers.org','packetsniffers.org','CC-BY-SA',0,'',1,'dosman'),
(7,'Dann','dann.nospam@nospam.tllts.org','','CC-BY-SA',0,'',1,'Dann'),
(79,'Xoke','Xokesoru.nospam@nospam.gmail.com','Xoke.org','CC-BY-SA',0,'',1,'Xoke'),
(18,'Seal','julien.nospam@nospam.jmcardle.com','jmcardle.com','CC-BY-NC-SA',0,'',1,'Seal'),
(282,'Mike Ray','mike.nospam@nospam.raspberryvi.org','','CC-BY-SA',0,'',1,'Mike Ray'),
(73,'deepgeek','hpr.nospam@nospam.deepgeek.us','','CC-BY-SA',0,'',1,'deepgeek'),
(24,'Lord Drachenblut (R.I.P.)','lord.drachenblut.nospam@nospam.gmail.com','thedigitaldragonslair.net/','CC-BY-SA',0,'',1,'Lord Drachenblut'),
(25,'Morgellon','morgellon.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Morgellon'),
(29,'willjasen','willjasen.nospam@nospam.charter.net','','CC-BY-SA',0,'',0,'willjasen'),
(30,'Ken Fallon','ken.nospam@nospam.fallon.ie','<p>\r\nI am a Irishman living in the Netherlands.\r\n</p>\r\n\r\n<ul>\r\n<li>Website: <a href=\"https://kenfallon.com\">https://kenfallon.com</a>\r\n</li>\r\n<li>Twitter: @ken_fallon <a href=\"https://twitter.com/ken_fallon\">https://twitter.com/ken_fallon</a>\r\n</li>\r\n<li>Mastodon: <a href=\"https://mastodon.sdf.org/@ken_fallon\">@ken_fallon@mastodon.sdf.org</a>\r\n</li>\r\n<li>Facebook: <a href=\"https://www.facebook.com/ken.fallon\">https://www.facebook.com/ken.fallon</a>\r\n</li>\r\n<li>LinkedIn: <a href=\"https://nl.linkedin.com/in/kenfallon\">https://nl.linkedin.com/in/kenfallon</a>\r\n</li>\r\n</ul>','CC-BY-SA',0,'23B68D4377311169',1,'Ken Falun'),
(75,'fawkesfyre','purplepentester.nospam@nospam.gmail.com','','CC-BY-NC-SA',0,'',1,'fawkesfyre'),
(36,'operat0r','freeload101.nospam@nospam.yahoo.com','rmccurdy.com','CC-BY-SA',0,'',1,'operator'),
(38,'Silver','silverballz.nospam@nospam.gmail.com','silverballz.com','CC-BY-NC-SA',0,'',1,'Silver'),
(39,'Enigma','eth0enigma.nospam@nospam.gmail.com','hackerpublicradio.org','CC-BY-NC-SA',0,'',1,'Enigma'),
(41,'kitche','kitche.nospam@nospam.reddphoenix.com','','CC-BY-NC-SA',0,'',0,'kitche'),
(42,'slick0','slick0.nospam@nospam.slick0.net','','CC-0',0,'',1,'slick0'),
(48,'mirovengi','mirovengi.nospam@nospam.gmail.com','','CC-BY-NC-SA',0,'',1,'mirovengi'),
(55,'StankDawg','stankdawg.nospam@nospam.stankdawg.com','stankdawg.com','CC-BY-NC-SA',0,'',1,'StankDawg'),
(57,'Plexi','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Plexi'),
(58,'Drake Anubis','drake.anubis.nospam@nospam.gmail.com','drakeanubis.com','CC-BY-NC-SA',0,'',1,'Drake Anubis'),
(62,'Mubix','jd.mubix.nospam@nospam.gmail.com','room362.com/','CC-BY-NC-SA',0,'',1,'Mubix'),
(64,'Alk3','mr.alk3.nospam@nospam.gmail.com','exitstatusone.com/','CC-BY-NC-SA',0,'',1,'Alk3'),
(69,'thewtex','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'thewtex'),
(74,'Peter','freshubuntu.nospam@nospam.gmail.com','freshubuntu.org/','CC-BY-NC-SA',0,'',1,'Peter'),
(76,'Chess Griffin','chess.nospam@nospam.chessgriffin.com','linuxreality.com','CC-BY-NC-SA',0,'',1,'Chess Griffin'),
(77,'Dave Yates','dsyates.nospam@nospam.lottalinuxlinks.com','lottalinuxlinks.com','CC-BY-SA',0,'',1,'Dave Yates'),
(78,'Klaatu','klaatu.nospam@nospam.mixedsignals.ml','','CC-BY-SA',0,'',1,'klaatu'),
(408,'Stache_AF','stache.nospam@nospam.duck.com','','CC-BY-SA',0,'',1,'Stash A. F'),
(80,'W3lshrarebit','W3lshrarebit.nospam@nospam.do-not-contact.gmail.com','','CC-BY-NC',0,'',1,'W3lshrarebit'),
(81,'Bitviper','bitviper.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Bitviper'),
(82,'DjBoo','KP101ST.nospam@nospam.gmail.com','zombie.el.cx/music/','CC-BY-NC-SA',0,'',1,'DjBoo'),
(83,'MadRush','madrush.nospam@nospam.comcast.net','','CC-BY-NC-SA',0,'',1,'MadRush'),
(84,'Lunarsphere','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Lunarsphere'),
(85,'finux','podcast.nospam@nospam.finux.co.uk','finux.co.uk','CC-BY-SA',1,'',1,'finux'),
(86,'rowinggolfer','rowinggolfer.nospam@nospam.googlemail.com','','CC-BY-SA',0,'',1,'RowingGolfer'),
(87,'Tottenkoph','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Tottenkoph'),
(88,'Skirlet','admin.nospam@nospam.hackerpublicradio.org','fiercelyindependent.org','CC-BY-NC-SA',0,'',1,'Skirlet'),
(89,'MC Smedley','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'MC Smedley'),
(90,'jelkimantis','linux.cli.oggcast.nospam@nospam.gmail.com','','CC-BY-NC-SA',0,'',1,'jelkimantis'),
(91,'Cybercod','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Cybercod'),
(92,'threethirty','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'threethirty'),
(93,'EC Lug','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'EC Lug'),
(94,'riddlebox','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'riddlebox'),
(95,'UberChick','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'UberChick'),
(96,'Jrullo','jrullo.nospam@nospam.jonasrullo.net','','CC-BY-SA',0,'',1,'Jrullo'),
(97,'Jeremy','admin.nospam@nospam.hackerpublicradio.org','distrocast.org','CC-BY-NC-SA',0,'',1,'Jeremy'),
(98,'weex','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'weex'),
(99,'monsterb','bill.nospam@nospam.monsterb.org','linuxcranks.info','CC-BY-SA',0,'',1,'MonsterB'),
(100,'UTOSC','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'U T O S C '),
(101,'Chad','chad.nospam@nospam.linuxbasement.com','linuxbasement.com','CC-BY',0,'',1,'Chad'),
(102,'dwick','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'dwick'),
(103,'Roadrunner','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Roadrunner'),
(104,'pixel Juice','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'pixel Juice'),
(105,'Wintermute21','mute.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Wintermute21'),
(106,'Thistleweb','gordon.nospam@nospam.thistleweb.co.uk','thistleweb.co.uk/','CC-BY-SA',0,'',1,'Thistleweb'),
(107,'lostnbronx','lostnbronx.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'lostnbronx'),
(109,'Various Hosts','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Various Hosts'),
(110,'Quvmoh','quvmoh.nospam@nospam.gmail.com','<p>\r\nold geek and fan of building things, spends the work day polishing fiber optics and staring through scopes listening to podcasts.</p>','CC-BY-SA',0,'',1,'Quvmoh'),
(111,'knightwise','knightwise.nospam@nospam.knightwise.com','<p>\r\nKnightwise.com is a website with hacks tips and tweaks for cross platform geeks. The home of the Knightwise.com cross platform podcast that makes technology work for you and not the other way around. A place to go for all geeks who slide between Mac, iOS, Android, Linux and Windows offering an essential mix of hacks, tips, howtos and tweaks spiced up with a dash of geek culture.\r\n</p>\r\n<p>\r\nWhat is our philosophy?\r\nIn our daily lives, on the internet, whether we want it or not, hundreds of new inventions, thousands of websites and millions of bits of information engulf us as the tsunami of progress sweeps along the shores of time.\r\nYou have the choice: Be washed away on by the virtual surf or turn technology into a tool that works for you.\r\n</p>\r\n<p>\r\nHere at Knightwise.com we think that YOU are the most important element in the technology that surrounds you. Technology should enable you and not lock you in to some vendor or product. That is why we focus on cross platform solutions that work on any operating system or mobile device you might be using, making YOU and what you want to DO the focus of our content. We dont believe in fanboys, we dont believe in vendor lock-ins and we dont believe in brands. We cater to the geeks who slide from operating system to operating system, free their data and communications and let technology work for them instead of the other way around.\r\n</p>','CC-BY-SA',0,'',1,'knightwise'),
(112,'Mark Clarke','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Mark Clarke'),
(113,'Kevin Benko','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Kevin Benko'),
(114,'rkirk','zugzwang.seven.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'rkirk'),
(115,'sigflup','pantsbutt.nospam@nospam.gmail.com','<p>\r\n<a href=\"https://theadesilva.com\">https://theadesilva.com</a>\r\n</p>','CC-BY-SA',0,'',1,'sigflup'),
(116,'janedoc','njwrightmd.nospam@nospam.yahoo.com','','CC-BY-NC-SA',0,'',1,'janedoc'),
(117,'PhreakerD7','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'PhreakerD7'),
(118,'df99','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'df99'),
(120,'pegwole','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'pegwole'),
(121,'Michael Foord ','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Michael Foord '),
(122,'Urban Koistinen','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Urban Koistinen'),
(123,'tmacuk ','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'tmacuk '),
(124,'Patrick L Archibald (R.I.P.)','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Patrick L Archibald'),
(125,'elel','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'elel'),
(126,'cobra2','cobra2.nospam@nospam.linuxbasement.com','','CC-BY-SA',0,'',1,'cobra2'),
(127,'KFive','k5tux.nospam@nospam.k5tux.us','','CC-BY-SA',0,'',1,'KFive'),
(128,'pokey','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'pokey'),
(129,'JWP','jwp5.nospam@nospam.hotmail.com','<p>JWP is a linux follower - has a linux job and lives the life of a free Texan in the World making Texas where ever he might be.</p>','CC-BY-SA',1,'',1,'JWP'),
(130,'Jared Mayes','mayesja.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Jared Mayes'),
(131,'FiftyOneFifty (R.I.P.)','fiftyonefifty.nospam@nospam.linuxbasement.com','','CC-BY-SA',0,'',1,'FiftyOneFifty'),
(132,'Flaviu Simihaian','flaviu.nospam@nospam.closedbracket.com','','CC-BY-SA',0,'',1,'Flaviu Simihaian'),
(133,'sp0rus','sp0rus.cs.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'sporus'),
(134,'PipeManMusic','PipeManMusic.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'PipeManMusic'),
(135,'Johninsc','johninsc.nospam@nospam.myway.com','','CC-BY-SA',0,'',1,'Johninsc'),
(136,'Curbuntu','curbuntu.nospam@nospam.cox.net','','CC-BY-NC-SA',0,'',1,'Curbuntu'),
(137,'guitarman','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'GuitarMan'),
(138,'arfab','clearnitesky.nospam@nospam.gmail.com','','CC-BY-NC-SA',0,'',1,'arfab'),
(139,'Ruji','toiletresin.nospam@nospam.gmail.com','','CC-BY-NC-SA',0,'',1,'Ruji'),
(140,'brother mouse','fratermus+hpr.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'brother mouse'),
(141,'Dismal Science','dismal.science.hpr.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Dismal Science'),
(142,'N50','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'N50'),
(143,'Broam','brian.kemp.nospam@nospam.member.fsf.org','','CC-BY-SA',0,'',1,'Broam'),
(144,'sp0rus and biosshadow','sp0rus.cs.nospam@nospam.gmail.com','','CC-BY-NC-SA',0,'',1,'sporus and BiosShadow'),
(145,'Heisenbug','matt_hew.nospam@nospam.rocketmail.com','','CC-BY-NC-SA',0,'',1,'Heisenbug'),
(146,'JBu92','jbucky1092.nospam@nospam.gmail.com','','CC-BY-NC-SA',0,'',1,'JBu92'),
(147,'Sven','sven.nospam@nospam.noblanks.org','','CC-BY-SA',0,'',1,'Sven'),
(148,'Mark Katerberg and Courtney Schauer','mark.katerberg.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Mark Katerberg and Courtney Schauer'),
(149,'Trixter','trixter.nospam@nospam.oldskool.org','<p>I am a child of the early 1980s, defined by the personal computer explosion, new wave music, and post-modern artistic style of that era. Co-founded MobyGames. I\'m an assembly programmer, demoscener, unix systems engineer, husband, and father. I sometimes write things of dubious value at <a href=\"https://trixter.oldskool.org/\">https://trixter.oldskool.org/</a>.</p>','CC-BY-SA',0,'',1,'Trixter'),
(150,'Bariman','anthony.denton.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Bariman'),
(151,'dodddummy','jason.s.dodd.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'D O D D Dummy'),
(152,'Claudio Miranda','quadsix50.nospam@nospam.gmail.com','Mastodon: @claudiom@bsd.network\r\nBlog: https://claudiomiranda.wordpress.com','CC-BY-SA',0,'',1,'Claudio Miranda'),
(153,'Doug Farrell','doug.farrell.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Doug Farrell'),
(154,'MrsXoke','MrsXoke.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'MrsXoke'),
(155,'MrGadgets','hpr.nospam@nospam.mrgadgets.com','','CC-BY-SA',0,'',1,'MrGadgets'),
(156,'marcoz','marcoz.nospam@nospam.osource.org','','CC-BY-SA',0,'',1,'marcoz'),
(157,'HPR_AudioBookClub','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'HPR_AudioBookClub'),
(158,'Various Creative Commons Works','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Various Creative Commons Works'),
(159,'HPR Volunteers','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'HPR Volunteers'),
(160,'Robin Catling','fullcirclepodcast.nospam@nospam.googlemail.com','','CC-BY-SA',0,'',1,'Robin Catling'),
(161,'Jonathan Nadeau','feedback.nospam@nospam.frostbitemedia.org','','CC-BY-NC-SA',0,'',1,'Jonathan Nadeau'),
(162,'code.cruncher','code.cruncher_hpr.nospam@nospam.yahoo.ca','','CC-BY-SA',0,'',1,'code.cruncher'),
(163,'Brad Carter','brad.nospam@nospam.notla.com','','CC-BY-SA',0,'',1,'Brad Carter'),
(164,'scriptmunkee','scriptmunkee.nospam@nospam.gmail.com','','CC-BY-NC-SA',0,'',1,'scriptmunkee'),
(165,'Bob Evans','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Bob Evans'),
(167,'imahuph','imahuph.nospam@nospam.imahuph.net','','CC-0',0,'',1,'ImAHuph'),
(168,'sikilpaake and badbit','info.nospam@nospam.carlosduarte.info','','CC-BY-SA',0,'',1,'sikilpaake and badbit'),
(169,'Slurry','williams.jayson.nospam@nospam.gmail.com','','CC-BY-NC-SA',0,'',1,'Slurry'),
(170,'Dismal Science and Sunzofman1','dismal.science.hpr.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Dismal Science and SunzOfMan1'),
(171,'Brotherred','goy.ben.regesh.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Brotherred'),
(172,'ArigornStrider','arigornstrider.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'ArigornStrider'),
(173,'Joel','gorkon.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Joel'),
(174,'Josh Knapp','jknapp85.nospam@nospam.gmail.com','<p>\r\nSysadmin/Developer /Contractor/Consultant\r\n</p>','CC-0',0,'',1,'Josh Knapp'),
(175,'Dave','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'Dave'),
(176,'finux and code.cruncher','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-NC-SA',0,'',1,'finux and code.cruncher'),
(177,'NewAgeTechnoHippie','newagetechnohippie.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'NewAgeTechnoHippie'),
(178,'Downer','downer.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Downer'),
(182,'Epicanis','epicanis+hpr.nospam@nospam.dogphilosophy.net','<p>\r\n\"Epicanis\" has been this correspondent\'s pseudonym on the internet for enough years to make him feel old and to make it an established enough identity to not want to change it now.\r\n</p>\r\n<p>\r\nA self-described Penguinista with a long career as a compu-janitor/systems administrator, Epicanis is broad-spectrum, \r\n multi-purpose \"Swiss-Army Nerd\", with a B.S. in Microbiology, an A.S. in Chemistry, a quarter-century of continuous\r\n I.T. experience and a desire to escape the economic roach-motel of rural northern Maine, so if you\'re looking to hire,\r\n let him know.\r\n</p>\r\n<p>\r\nYou can find him on Twitter and Google Plus via his pseudonym, and at (among other places) <a href=\"https://hpr.dogphilosophy.net\">https://hpr.dogphilosophy.net</a>\r\n</p>\r\n<p>\r\n<ul>\r\n<li>Website: <a href=\"https://hpr.dogphilosophy.net\">https://hpr.dogphilosophy.net</a>\r\n</li>\r\n<li>Twitter: @Epicanis <a href=\"https://twitter.com/Epicanis\">https://twitter.com/Epicanis</a>\r\n</li>\r\n<li>Google+: <a href=\"https://plus.google.com/u/0/117231980905216630589/posts\">https://plus.google.com/u/0/117231980905216630589/posts</a>\r\n</li>\r\n</ul\r\n</p>','CC-BY-SA',1,'',1,'EpiCaynis'),
(184,'diablomarcus','mark.katerberg.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'DiabloMarcus'),
(185,'Mike Hingley','computa_mike.nospam@nospam.hotmail.com','','CC-BY-SA',0,'',1,'Mike Hingley'),
(186,'Germ','jeremythegeek.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Germ'),
(187,'Sunzofman1','agreen.nospam@nospam.bkaeg.org','','CC-BY-SA',0,'',1,'SunzOfMan1'),
(188,'saras fox','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'saras fox'),
(189,'Joe Wakumara','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'Joe Wakumara'),
(190,'Tracy Holz_Holzster','workingintheopen.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Tracy Holz_Holzster'),
(191,'AukonDK','aukondk.nospam@nospam.aukondk.com','<p>\r\nStephen Ward, a Brit in Croatia. Accidental specialist subject: Internet Radio.\r\n</p>\r\n<p>\r\nMore info at <a href=\"https://aukondk.com\">https://aukondk.com</a>\r\n</p>','CC-BY-SA',1,'',1,'AukonDK'),
(192,'Seetee','kenneth.nospam@nospam.aiit.se','<p>\r\nKenneth \"Seetee\" Frantzen\r\n</p>\r\n<p>\r\nAn IT professional and teacher living in Gothenburg, the second largest city of Sweden. Listen to my own podcast as well, the All In IT Radio!\r\n</p>\r\n<ul>\r\n<li>Podcast: <a href=\"https://aiit.se/radio/\">https://aiit.se/radio/</a>\r\n</li>\r\n<li>Website: <a href=\"https://frantzen.se/\">https://frantzen.se/</a>\r\n</li>\r\n<li>Twitter: @alltinomit <a href=\"https://twitter.com/alltinomit\">https://twitter.com/alltinomit</a>\r\n</li>\r\n<li>Identica: <a href=\"https://identi.ca/alltinomit\">https://identi.ca/alltinomit</a>\r\n</li>\r\n<li>Google+: <a href=\"https://plus.google.com/+KennethFrantzen\">https://plus.google.com/+KennethFrantzen</a> \r\n</li>\r\n</ul>','CC-BY-SA',0,'',1,'Seetee'),
(193,'Kevin Granade','kevin.granade.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Kevin Granade'),
(194,'Deltaray','deltaray.nospam@nospam.slugbug.org','From the \"mid-west\" of the US. I am the creator/host of the @climagic account on Mastodon and (cough) Twitter.','CC-BY-SA',0,'',1,'Deltaray'),
(195,'Frank Bell','frank.nospam@nospam.pineviewfarm.net','<p>\r\nA Linux enthusiast who enjoys making stuff work.\r\n<br />\r\n<a https://=\"https://www.pineviewfarm.net\">https://www.pineviewfarm.net</a>\r\n</p>','CC-BY-SA',1,'',1,'Frank Bell'),
(196,'Windigo','jacob.nospam@nospam.fragdev.com','<p> A dork that likes Minecraft, web development, and coffee. Not in that order. </p>','CC-BY-SA',0,'',1,'Windigo'),
(197,'garjola','garjola.nospam@nospam.garjola.net','','CC-BY-SA',0,'',1,'garjola'),
(198,'Ahuka','zwilnik.nospam@nospam.zwilnik.com','<p>\r\nI am a long-time office software geek, and also a promoter of Free Software, so LibreOffice is a natural fit for me. I also have a series on HPR called Security and Privacy, and occasionally record shows that are non-series. I am also the former Tech Track organizer for Penguicon, an event in southeast Michigan, USA. Visit one of my sites at:\r\n</p>\r\n\r\n<ul>\r\n<li><a href=\"https://www.ahuka.com\">https://www.ahuka.com</a>\r\n</li>\r\n<li><a href=\"https://www.palain.com\">https://www.palain.com</a>\r\n</li>\r\n<li><a href=\"https://www.zwilnik.com\">https://www.zwilnik.com</a>\r\n</li>\r\n</ul>','CC-BY-SA',0,'',1,'ah-who-ca'),
(199,'Akranis','hexagenic.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Akranis'),
(200,'mordancy','hpr.nospam@nospam.mordancy.com','mordancy.com','CC-BY-SA',0,'',1,'mordancy'),
(201,'MrX','mrxathpr.nospam@nospam.googlemail.com','','CC-BY-SA',0,'',1,'Mister X'),
(202,'BrocktonBob','bhpcrepair.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'BrocktonBob'),
(203,'dmfrey','dmfrey.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'dmfrey'),
(273,'ToeJet','james.nospam@nospam.toebesacademy.com','<p>\r\nDabbling in a bit of this and that.\r\n\r\nFind me at https://james.toebesacademy.com\r\n</p>','CC-BY-SA',0,'',1,'Toe Jet'),
(205,'Jezra and NYbill','nybill.nospam@nospam.gunmonkeynet.net','','CC-BY-SA',0,'',1,'Jezra and N_Y_bill'),
(206,'Bob Wooden','rbrtewdn.nospam@nospam.comcast.net','','CC-BY-SA',0,'',1,'Bob Wooden'),
(207,'rootoutcast','rootoutcast.nospam@nospam.hushmail.com','','CC-BY-SA',0,'',1,'RootOutcast'),
(208,'Digital Maniac','destinydesignlabs.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Digital Maniac'),
(209,'David Whitman','davidglennwhitman.nospam@nospam.gmail.com','<p>\r\nI am a normal person with good taste from Oregon, USA. I like black coffee and FREE Software. I use Linux as my operating system of choice.\r\n</p>','CC-BY-SA',0,'',1,'David Whitman'),
(210,'Neodragon','linuxgeekster.stahl.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Neodragon'),
(296,'Kevie','tuxjam.nospam@nospam.unseenstudio.co.uk','<p>\r\nLinux and open source advocate from the Isle of Lewis in the north west of Scotland. I am a keen podcaster, co-host of CCJam, Crivins and TuxJam, you can find these at <a href=\"https://unseenstudio.co.uk\">https://unseenstudio.co.uk</a>\r\n</p>\r\n<p>\r\nI am on Twitter (@kevie49), but mainly active on joindiaspora.co.uk and micro.fragdev.com, where I am @kevie on both of these networks. \r\n</p>','CC-BY-SA',1,'',1,'Kevie'),
(212,'DoorToDoorGeek','doortodoorgeek.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'DoorToDoorGeek'),
(213,'bgryderclock','bgryderclock.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'bgryderclock'),
(214,'Nido Media','nido.nospam@nospam.foxserver.be','','CC-BY-SA',0,'',1,'Nido Media'),
(403,'Lee','leehanken.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Lee'),
(216,'goibhniu','goibhniu.nospam@nospam.fsfe.org','','CC-BY-SA',0,'',1,'goibhniu'),
(217,'aparanoidshell','aparanoidshell.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'aparanoidshell'),
(218,'Famicoman','famicoman.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Famicoman'),
(219,'ccmusique','ccmusique.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'ccmusique'),
(220,'doubi','ryan.jendoubi.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'doubi'),
(221,'cleavey','cleavey.nospam@nospam.ic24.net','','CC-BY-SA',0,'',1,'cleavey'),
(222,'The Air Staff of Erie Looking Productions','skellat.nospam@nospam.fastmail.net','','CC-BY-SA',0,'',1,'The Air Staff of Erie Looking Productions'),
(223,'Frederic Couchet','fcouchet.nospam@nospam.april.org','','CC-BY-SA',0,'',1,'Frederic Couchet'),
(224,'Zachary De Santos','niisa.nospam@nospam.gmx.co.uk','','CC-BY-SA',0,'',1,'Zachary De Santos'),
(225,'Dave Morriss','perloid.nospam@nospam.autistici.org','<p>Old Geek, lives in Scotland, writes scripts and stuff for amusement</p>\r\n\r\n<ul>\r\n<li>Mastodon: @perloid@mastodon.sdf.org <a href=\"https://mastodon.sdf.org/@perloid\">https://mastodon.sdf.org/@perloid</a></li>\r\n</ul>\r\n','CC-BY-SA',0,'4825C90A45758A21',1,'Dave Morriss'),
(425,'gemlog','gemlog.nospam@nospam.gemlog.ca','<p>I may be found on <a href=\"https://sdf.org\">sdf.org</a> as gemlog and on mastodon as <a href=\"https://mastodon.sdf.org/@gemlog@tilde.zone\">@gemlog@tilde.zone</a></p>','CC-BY-SA',1,' ',1,'gem log'),
(226,'bobobex','bobobex.nospam@nospam.bobobex.org','','CC-BY-SA',0,'',1,'BoBoBex'),
(227,'Dick Thomas','Dick.nospam@nospam.xpd259.co.uk','','CC-BY-SA',0,'',1,'Dick Thomas'),
(228,'Delwin','delwin.nospam@nospam.skyehaven.net','','CC-BY-SA',0,'',1,'Delwin'),
(229,'Charles in NJ','catintp.nospam@nospam.yahoo.com','','CC-BY-SA',0,'',1,'Charles in NJ'),
(230,'Dude-man','hpr.nospam@nospam.dudmanovi.cz','','CC-BY-SA',0,'',1,'Dude-man'),
(231,'Beto','beto.nospam@nospam.haventfoundme.com','','CC-BY-SA',0,'',1,'Beto'),
(232,'Peter64','peter.nospam@nospam.peter64.org','','CC-BY-SA',0,'',1,'Peter64'),
(233,'johanv','johan.vervloet.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'johanv'),
(234,'Emilien Klein','emilien+hpr.nospam@nospam.klein.st','','CC-BY-SA',0,'',1,'Emilien Klein'),
(235,'NYbill','nybill.nospam@nospam.gunmonkeynet.net','','CC-BY-SA',0,'',1,'N Y bill'),
(237,'Tgtm News Team','hpr.nospam@nospam.deepgeek.us','','CC-BY-SA',0,'',1,'Tgtm News Team'),
(238,'Jon Kulp','jonlancekulp.nospam@nospam.gmail.com','<p>\r\nMusic professor, open-source software enthusiast, Lafayette, LA. <br />\r\n<a href=\"https://jonathankulp.org \">https://jonathankulp.org </a>\r\n</p>','CC-BY-SA',0,'',1,'Jon Kulp'),
(239,'b1ackcr0w','alistair.nospam@nospam.amunro.net','','CC-BY-SA',0,'',1,'blackcrow'),
(240,'Steve Bickle','steve.nospam@nospam.bickle.co.uk','','CC-BY-SA',0,'',1,'Steve Bickle'),
(241,'Christopher M. Hobbs','cmhobbs.nospam@nospam.member.fsf.org','','CC-BY-SA',0,'',1,'Christopher M. Hobbs'),
(242,'Russ Wenner','russwenner.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Russ Wenner'),
(243,'Jezra','Jezra.nospam@nospam.jezra.net','','CC-BY-SA',0,'',1,'Jezra'),
(244,'Helvetin','reiststefan.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Helvetin'),
(245,'Deb Nicholson','dnicholson.nospam@nospam.openinventionnetwork.com','','CC-BY-SA',0,'',1,'Deb Nicholson'),
(246,'Beeza','nigelverity.nospam@nospam.hotmail.com','<p>\r\nBeeza has worked in just about every area of software development over the last 30 years, including long spells in the defence and finance industries. He is now relatively impoverished but far happier working for himself on a number of tech and non-tech projects. \r\n</p>','CC-BY-SA',0,'',1,'Beeza'),
(247,'Toby Meehan','conman53095.nospam@nospam.yahoo.com','','CC-BY-SA',0,'',1,'Toby Meehan'),
(248,'Alek Grigorian','alek.grigorian.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Alek Grigorian'),
(249,'Accipiter','Accipiter81M.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Accsipiter'),
(250,'Shane Shennan','shaneshennan.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Shane Shennan'),
(251,'Bob Tregilus','elaterite.nospam@nospam.yahoo.com','','CC-BY-SA',0,'',1,'Bob Tregilus'),
(252,'Curtis Adkins (CPrompt^)','curtadkins.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Curtis Adkins (CPrompt^)'),
(253,'jrobb','jfrobbins.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'jrobb'),
(254,'Stitch','Stitch.nospam@nospam.hack42.nl','','CC-BY-SA',0,'',1,'Stitch'),
(255,'Matt McGraw (g33kdad)','matty.nospam@nospam.thestrangeland.net','<p>\r\nstay-home dad, child of God, Progressive Christian, technology enthusiast, homeschool parent, mostly harmless\r\n</p>\r\n<p>\r\n<a href=\"https://g33kdad.thestrangeland.net\">https://g33kdad.thestrangeland.net</a>\r\n</p>','CC-BY-SA',1,'',1,'Matt McGraw (g33kdad)'),
(256,'Julian Neuer','jln.neuer.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Julian Neuer'),
(257,'laindir','carl.hamann.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'laindir'),
(258,'Riley Gelwicks (glwx)','riley.gelwicks.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Riley Gelwicks (glwx)'),
(259,'Gabriel Evenfire','evenfire.nospam@nospam.sdf.org','','CC-BY-SA',1,'',1,'Gabriel Evenfire'),
(260,'James Michael DuPont (h4ck3rm1k3)','JamesMikeDuPont.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'James Michael DuPont (hackermike)'),
(261,'David Willson','DLWillson.nospam@nospam.thegeek.nu','','CC-BY-SA',0,'',1,'David Willson'),
(262,'Neandergeek','rkline1963.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Neandergeek'),
(263,'Tony Pelaez','tony.nospam@nospam.pelaez.me','<p>\r\nI feel information should be free, so I created <a href=\"https://ilearnthings.com\">https://ilearnthings.com</a>\r\n</p>','CC-BY-SA',0,'',1,'Tony Pelaez'),
(264,'Richard Hughes','richardhughes260.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Richard Hughes'),
(265,'Kevin Wisher','kevin.wisher.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Kevin Wisher'),
(266,'Keith Murray','kdmurray.nospam@nospam.kdmurray.com','Canadian geek from the west coast. Converting calories to code.\r\n\r\n@kdmurray nearly everywhere\r\n\r\nhtttps://kdmurray.com/','CC-BY-SA',0,'',1,'Keith Murray'),
(267,'Underruner','plushgeek.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Underruner'),
(268,'Andrew Conway','nalumc.nospam@nospam.gmail.com','<p>\r\nInterested in computers, science, economics, writing and er, well, um, humans I suppose.<br />\r\n<a href=\"https://blog.mcnalu.net/\">blog.mcnalu.net</a>\r\n</p>','CC-BY-SA',0,'',1,'Andrew Conway'),
(269,'Honkeymagoo','honkeymagoo01.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'HonkeyMagoo'),
(270,'Thaj Sara','thajasara.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Thaj Sara'),
(271,'mirwi','mirwi.nospam@nospam.binary-kitchen.de','','CC-BY-SA',0,'',1,'mirwi'),
(272,'cyan','cyantech.nospam@nospam.yandex.com','','CC-BY-SA',0,'',1,'cyan'),
(274,'J. A. Mathis','jamathis.nospam@nospam.riseup.net','','CC-BY-SA',0,'',1,'J. A. Mathis'),
(275,'Bill_MI','Bill_MI.nospam@nospam.mi.ath.cx','','CC-BY-SA',0,'',1,'Bill_M_I'),
(276,'x1101','x1101.nospam@nospam.gmx.com','<p>\r\nFather | Husband | Hacker | Cook | Podcaster | DevOps\r\n</p>\r\n<p>\r\n<a href=\"https://reflections.x1101.net/\">https://reflections.x1101.net/</a><br />\r\n<a href=\"https://urandom-podcast.info/\">https://urandom-podcast.info/</a>\r\n</p>','CC-BY-SA',0,'',1,'x 1 1 0 1 '),
(277,'John Duarte','john.nospam@nospam.duarte-dailey.us','','CC-BY-SA',0,'',1,'John Duarte'),
(279,'Mark Waters','mark.nospam@nospam.collective-b.org.uk','','CC-BY-SA',0,'',1,'Mark Waters'),
(280,'semioticrobotic','bryan.nospam@nospam.semioticrobotic.net','','CC-BY-SA',0,'259E2719E0EC869B',1,'semioticrobotic'),
(281,'Scyner','person65278.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Scyner'),
(283,'Inscius','mikael.nospam@nospam.inscius.se','','CC-BY-SA',0,'97517ADC315AB7B6',1,'Inscius'),
(284,'Steve Smethurst','ssmethurst.nospam@nospam.tiscali.co.uk','','CC-BY-SA',1,'',1,'Steve Smethurst'),
(285,'2BFrank','frank.durr.nospam@nospam.mailoo.org','Our own podcast \"Linux ohne Angst\" (in German, Linux without fear): https://linuxohneangst.net','CC-BY-SA',0,'',1,'2BFrank'),
(286,'cjm','colin.j.mills96.nospam@nospam.gmail.com','<pre>\r\n* Unix Enthusiast \r\n\r\n* Nixers Frequent\r\n\r\n* Coffee Drinker\r\n</pre>','CC-BY-SA',1,'',1,'cjm'),
(287,'corenominal','corenominal.nospam@nospam.corenominal.org','<p>\r\n<a href=\"https://corenominal.org\" title=\"Link to Philip\'s blog.\">Philip Newborough</a>\r\n</p>','CC-BY-SA',0,'',1,'CoreNominal'),
(288,'beni','hpr.nospam@nospam.hb9hnt.ch','','CC-BY-SA',0,'',1,'beni'),
(289,'pyrrhic','notrofise.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'pyrrhic'),
(290,'Al','al.nospam@nospam.adminadminpodcast.co.uk','','CC-BY-SA',0,'',1,'Al'),
(291,'Rill','jefa.nospam@nospam.lajefa.net','','CC-BY-SA',0,'',1,'Rill'),
(292,'Michal Cieraszynski','planet444.nospam@nospam.gmail.com','I am a electronics and technology enthusiast as well as hobbyist who likes to mess around with computer hardware, video games, and other things in my spare time. https://www.planet444.com, my very neglected website. I only mention it here because one day I may actually update it.','CC-BY-SA',0,'',1,'Michal Cieraszynski'),
(293,'Rho`n','roan.horning.nospam@nospam.gmail.com','How grey does your beard need to be to be a grey beard?\r\n\r\n* Mastodon: @roan@fosstodon.org\r\n* Matrix: @rho_n:matrix.org\r\n','CC-BY-SA',1,'',1,'rowen'),
(294,'daw','douglasawh.nospam@nospam.gmail.com','<p>\r\n<a href=\"https://www.musicmanumit.com\">https://www.musicmanumit.com</a> and <a href=\"https://micro.fragdev.com/daw\">https://micro.fragdev.com/daw</a> are probably all you need. Although, I will say I am moving to Cincinnati summer 2015 and looking for work there (or telecommuting). So, you if you know something, let me know!\r\n</p>','CC-BY-SA',1,'',1,'daw'),
(295,'Cibola Jerry','cibolajerry.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Cibola Jerry'),
(297,'swift110','anthonyvenable110.nospam@nospam.gmail.com','<p>\r\nHello I have been using Linux since 2010 and I learn more and more each day. My blog can be found at <a href=\"https://anthonyvenable110.wordpress.com\">https://anthonyvenable110.wordpress.com</a>\r\n</p>','CC-BY-SA',0,'',1,'swift110'),
(298,'tcuc','infotcuc.nospam@nospam.gmail.com','<p>The American viking.</p>','CC-BY-SA',0,'',1,'T C U C '),
(299,'Fin','finlaygmitchell.nospam@nospam.gmail.com','','CC-BY-SA',1,'',1,'Fin'),
(300,'Mr. Young','by33zi.nospam@nospam.protonmail.com','<p>\r\nI am a dad, small-business owner, scientist, and Linux enthousiast with a lust for knowledge. You can find me on Mastadon at @ryoung39@mastodon.online\r\n</p>','CC-BY-SA',1,'',1,'b-yeezi'),
(421,'Reto','reto007.nospam@nospam.yahoo.com','<p>Tech enthusiast from Switzerland</p>','CC-BY-SA',0,'',1,'ray toe'),
(301,'Amunizp','amunizp.nospam@nospam.member.fsf.org','<p>\r\nI am a scientist as my day job and in my free time I enjoy being with my family. I also contribute to my local hacerspace/makerspace: <a href=\"https://wiki.richmondmakerlabs.uk/index.php?title=Main_Page\">https://wiki.richmondmakerlabs.uk/index.php?title=Main_Page</a>\r\n</p>\r\n<p>\r\nmy handle at gnusocial is @andresinmp@loadaverage.org\r\n</p>','CC-BY-SA',1,'',1,'A MunizP'),
(302,'Stilvoid','steve.nospam@nospam.offend.me.uk','<p>\r\nDoes things with servers. Deeply embedded in the Linux world with no way out and sees that as a great thing. Father of one. Often too polite.\r\n</p>\r\n<p>\r\nIf you want to know more about me, look here: <a href=\"https://offend.me.uk/about/\">https://offend.me.uk/about/</a> and feel free to get in touch.\r\n</p>','CC-BY-SA',0,'',1,'Stilvoid'),
(303,'Alpha32','andrew.neher1.nospam@nospam.gmail.com','<p>\r\nJust a guy with a microphone. And a computer. and some other stuff, but that\'s not important.\r\n</p>','CC-BY-SA',0,'',1,'Alpha32'),
(306,'GNULinuxRTM','GNULinuxRTM.nospam@nospam.gmail.com','<p>\r\nStarted on the Altair 8800 in 1979 in Middle School (Very lucky to have a teacher who had a Comp Sci Degree).\r\n</p>\r\n<p>\r\nStarted my Comp/Sci Degree in 1984. They ran UNIX System V with VT220 terminals. Had to learn VI editor, shell commands and C in first 2 weeks to complete the Lab. Did some Co-ops Work-Terms, graduated in 1990.\r\n</p>\r\n<p>\r\nDay Job is mostly Microsoft Environment, switched to Linux Mint at home summer of 2014.\r\n</p>\r\n<p>\r\nJust Started an Educational Youtube Channel (April 2015). I am the Voice of the GNU Bull and my daughter is the voice for the Linux Penguin. Later added the Blog and Podcast. Trying to make it Family Friendly and bring life to relatively dry topic - Documentation.\r\n</p>\r\n\r\n<h3>Links</h3>\r\n\r\n<ul>\r\n<li>Blog: <a href=\"https://GNULinuxRTM.blogspot.com\">https://GNULinuxRTM.blogspot.com</a>\r\n</li>\r\n<li>RSS Feed: <a href=\"https://feeds.feedburner.com/GNULinuxRTM\">https://feeds.feedburner.com/GNULinuxRTM</a>\r\n</li>\r\n<li>Youtube Channel: <a href=\"https://www.youtube.com/c/GNULinuxRTMblogspotPlus\">https://www.youtube.com/c/GNULinuxRTMblogspotPlus</a>\r\n</li>\r\n<li>Google+: <a href=\"https://plus.google.com/+GNULinuxRTMblogspotPlus\">https://plus.google.com/+GNULinuxRTMblogspotPlus</a>\r\n</li>\r\n</ul>','CC-BY-SA',1,'',1,'GNULinuxRTM'),
(305,'kurakura','kurakuradave.nospam@nospam.gmail.com','<p>\r\nLong time listener of HPR, drawn to Linux in 2008, because of the accessibility features (Orca, font size and mouse pointer customizability) which I continue to use daily until today, now plus the screen magnifier. \r\n</p>\r\n<p>\r\nLately, started work on ChorusText, a device built with Arduino, Linux SBC and some sliders, and text-to-speech - an open assistive device for users with visual impairment. The main goal for ChorusText is as a non-visual text editor. Plase see <a href=\"https://www.chorustext.org\">www.chorustext.org</a> for more details\r\n</p>','CC-BY-SA',0,'',1,'kurakura'),
(307,'cheeto4493','Travis.nospam@nospam.travestylabs.com','','CC-BY-SA',0,'',1,'cheeto4 4 9 3'),
(308,'A Shadowy Figure','hpr.saxz.nospam@nospam.9ox.net','<p>\r\nfrom parts unknown, weight unknown, a shadowy figure has a murky past, with a questionable alibi for his whereabouts at any particular time.\r\n</p>\r\n<p>\r\nLikes: hacking, and lurking in shadows.\r\n</p>\r\n<p>\r\nDislikes: Corporate greed, and revealing things about himself.\r\n</p>\r\n<p>\r\nUses Linux as main computing device, windows and mac as back-ups\r\n</p>','CC-BY-SA',1,'',1,'A Shadowy Figure'),
(309,'folky','hpr.nospam@nospam.svenskaa.net','<p>\r\nEveryday GNU/Linux-user, german-speaking, living in northern Europe.\r\n</p>','CC-BY-SA',0,'',1,'folky'),
(311,'clacke','hpr.nospam@nospam.clacke.user.lysator.liu.se','<p>On GNU/Linux since <a href=\"https://www.linux-m68k.org/faq/saynotowatchtower.html\">Amiga Watchtower</a>, using it as my primary OS since Debian Slink, been on Ubuntu ever since it fulfilled the derailed UserLinux dream.</p>\r\n<p>These days I\'m running Ubuntu-Gnome, but I\'m considering NixOS+Guix as my primary OS, with a Debian chroot for the pieces that are missing.</p>\r\n<p>You can find me on the Free social web at <a href=\"https://libranet.de/~clacke\">clacke@libranet.de</a>.</p>\r\n','CC-BY-SA',1,'',1,'clacke'),
(387,'Cedric De Vroey','cedric.nospam@nospam.n0b0t.com','<p>\r\nHi, I\'m Cedric, and I work as a professional pentester. Social engineering, bypassing access controls both physical and digital, that\'s what I live for :-)\r\n</p>','CC-BY-SA',0,'',1,'Cedric De Vroey'),
(388,'Padraig Jeroen Fallon','pakie+hpr.nospam@nospam.bussum.org','<p>I like DND.</p>','CC-BY-SA',0,'',1,'Padraig Jeroen Fallon'),
(310,'Geddes','geddes.linux.nospam@nospam.gmail.com','','CC-BY-SA',1,'',1,'Geddes'),
(312,'Moral Volcano','vsubhash.nospam@nospam.gmail.com','<p>\r\nBlogger. Writer. Developer.\r\n</p>','CC-BY-SA',1,'',1,'Moral Volcano'),
(313,'JustMe','easlingml.nospam@nospam.aliyun.com','<p>I\'ve been in &amp; out of computing since the late 70s.</p>','CC-BY-SA',0,'',1,'JustMe'),
(314,'thelovebug','hpr.nospam@nospam.thelovebug.org','<p>\r\nProfessional database administrator and data manipulator working for a global information company.\r\n<br />\r\nLives in South Yorkshire in the UK.\r\n</p>\r\n<h3>Contact</h3>\r\n\r\n<ul>\r\n<li>GNUsocial: <a href=\"https://s.wefamlee.be/thelovebug\">thelovebug@s.wefamlee.be</a>\r\n</li>\r\n<li>Telegram: <a href=\"https://telegram.me/thelovebug\">https://telegram.me/thelovebug</a>\r\n</li>\r\n</ul>\r\n\r\n<p>\r\nAlso on Twitter, Facebook, Google+ but don\'t use those much.\r\n</p>','CC-BY-SA',0,'',1,'TheLoveBug'),
(315,'Clinton Roy','clinton.roy.nospam@nospam.gmail.com','<p>Clinton Roy is an Open Source engineer.</p>','CC-BY-SA',0,'',1,'Clinton Roy'),
(317,'Eric Duhamel','ericxdu23.nospam@nospam.gmail.com','<p>\r\nI\'m a 30-something programming/computer hobbyist in Southern California.\r\n<br />\r\nSee more on my webpage <a href=\"https://www.noxbanners.net/\">https://www.noxbanners.net/</a> and follow me on <a href=\"https://loadaverage.org/ericxdu23\">https://loadaverage.org/ericxdu23</a>\r\n</p>','CC-BY-SA',0,'',1,'Eric Duhamel'),
(318,'Archer72','ricemark20.nospam@nospam.gmail.com','<p>\r\nI got started in Linux in 2002, with a set of Mandriva CD\'s and have enjoyed using variations ever since. Currently on Fedora 38.\r\n</p>\r\n<p>\r\nI can be reached as archer72 on IRC on libera.chat on #oggcastplanet and on Mastodon at @archer72@mastodon.sdf.org \r\n</p>','CC-BY-SA',1,'',1,'Archer Seventy Two'),
(319,'OnlyHalfTheTime','onlyhalfthetime.nospam@nospam.gmail.com','<p>The Reluctant Windows Admin</a>','CC-BY-SA',1,'',1,'OnlyHalfTheTime'),
(320,'The Linux Experiment','editor.nospam@nospam.thelinuxexperiment.com','<p>Help us take The Linux Experiment to the next level!</p>','CC-BY-SA',1,'',1,'The Linux Experiment'),
(322,'Cov','cov.nospam@nospam.mykolab.com','<p>\r\nChristopher \"Cov\" Covington is a fan of libre projects, currently living in North Carolina, United States of America. His personal site is <a href=\"https://covlibre.net/\">https://covlibre.net/</a>\r\n</p>','CC-BY-SA',0,'',1,'Cov'),
(323,'Nacho Jordi','ijordiatienza.nospam@nospam.yahoo.es','','CC-BY-SA',0,'',1,'Nacho Jordi'),
(324,'Jon Doe','jondoelocksmith.nospam@nospam.gmail.com','<p>A locksmith by training, I work in physical and digital security, and have some fun with the same by night. </p>','CC-BY-SA',0,'',1,'Jon Doe'),
(325,'m1rr0r5h4d35','m1rr0r5h4d35.nospam@nospam.gmx.com','<p>I\'m this guy who likes computers. Computers and Burger King. </p>','CC-BY-SA',1,'',1,'MirrorShades'),
(326,'Brian in Ohio','bknavarette.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Brian in Ohio'),
(327,'noplacelikeslashhome','nathanpublicinbox.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'NoPlaceLikeSlashHome'),
(328,'Joe','jsilino.nospam@nospam.gmail.com','<p>\r\nHi, I\'m Joe Silino and I live in Upstate NY. I\'ve been using Linux since the late 90\'s and have recently entered the world of sound production. I\'m currently introducing my tech team at church to the benefits of the Open Source world and finding it very useful for many of my projects.\r\n<br />\r\n<a href=https://soundcloud.com/calvaryworshipandtech\">https://soundcloud.com/calvaryworshipandtech</a><br />\r\n<a href=\"https://soundcloud.com/ccsyracuse\">https://soundcloud.com/ccsyracuse</a>\r\n</p>','CC-BY-SA',0,'',1,'Joe'),
(329,'brian','venant.nospam@nospam.protonmail.ch','','CC-BY-SA',0,'',1,'brian'),
(330,'Bitbox','bitbox.nospam@nospam.member.fsf.org','<p>\r\nI\'m a long haul trucker who runs all 48 states here in the US. I really enjoy tinkering with my laptops and used to do a lot of nuke and pave. I am afraid you wont find me on social media nor do I have a website. I don\'t really have much time for that stuff, and I have never been a big social butterfly, anyway. I live in north east Indiana, in the US. I am a father 3 times over, and Grampa twice over. Been married 26 years (yeah,... a VERY patient woman there). I work between 75 and 85 hrs a week, roughly 70 of it driving. I\'ve been an HPR listener for about 2-3 years now, but as of 15 April 2016, I am just now contributing my first episode (shame...). I will strive to do better, Ken...!<br />\r\n<strong>PS: I really hate seeing people get scraped off the highways. I like tech too, but STOP TEXTING AND PLAYING WITH PHONES WHILE YOU DRIVE, EVERYONE. PLEASE!</strong>\r\n</p>\r\n','CC-BY-SA',0,'',1,'Bitbox'),
(331,'njulian','njulianmallog.nospam@nospam.yahoo.de','','CC-BY-SA',0,'',1,'njulian'),
(332,'schism','alarmdude9.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'schism'),
(333,'pope523','joseph.harris.nospam@nospam.jlharris.net','<p>Former network engineer, now delivery driver.</a>','CC-BY-SA',0,'',1,'pope5 2 3'),
(334,'Steve Saner','hpr.nospam@nospam.saner.net','','CC-BY-SA',0,'',1,'Steve Saner'),
(424,'hobs','hobson.nospam@nospam.tangibleai.com','<p>\nPassion: Open source, open data, teachable AI that that you can trust.<br />\nAuthor: _Natural Language Processing in Action_ 1st and 2nd Ed<br />\nCTO: Social impact chatbots at Tangible AI (<a href=\"https://tangibleai.com\">https://tangibleai.com</a>) <br />\nAdjunct Professor: Data Science (UCSD Extension), Computer Science (Mesa College)<br />\nMentor: Data Science (Springboard)<br />\nEducation: Robotics (MS, Georgia Tech)<br />\n</p>','CC-BY-SA',0,'',1,'hobs'),
(335,'matthew','matthew.nospam@nospam.fairvega.com','<p>I\'m a family guy, a pilot, and a compulsive programmer.</p>','CC-BY-SA',0,'',1,'matthew'),
(336,'Lyle Lastinger','lylelastinger.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Lyle Lastinger'),
(337,'handsome_pirate','jdulaney.nospam@nospam.fedoraproject.org','<p>handsome_pirate (John Dulaney) is a long time contributor to the Fedora Project. He is an avid rail enthusiast, and considers his model ships to be his artwork.</p>','CC-BY-SA',1,'',1,'handsome_pirate'),
(338,'Tony Hughes AKA TonyH1212','tonyhughes1958.nospam@nospam.gmail.com','<p>\r\nI\'m a middle age bloke who enjoys using and talking about computers and open source software. I started using Linux in 2006 and have been using it as my Operating System on all my PC\'s for the last 7 years. I\'m also an avid cook and enjoy creating new vegetarian recipes as I have been a vegetarian for over 26 years. <br />\r\nI have an occasional Blog at: <a href=\"https://tony-hughes.blogspot.co.uk/\">https://tony-hughes.blogspot.co.uk/<a/>\r\n</p>','CC-BY-SA',0,'',1,'Tony Hughes A.K.A TonyH1 2 1 2'),
(339,'Todd Mitchell','Todd.nospam@nospam.codewriteplay.com','<p>\r\nMidwest US-based freelance entertainment journalist focused on the game industry. Former professional software developer and current indie game hobbyist. \r\n</p>\r\n<p>\r\nTwitter: <a href=\"https://twitter.com/Mechatodzilla\">@Mechatodzilla</a>\r\n</p>\r\n<p>\r\n<a href=\"https://CodeWritePlay.com\">CodeWritePlay.com</a>\r\n</p>\r\n','CC-BY-SA',1,'',1,'Todd Mitchell'),
(340,'mattkingusa','Matt.nospam@nospam.autumnstreetrecords.com','<p>\r\nHi im matt king. I produce music on linux and i try and code wesites. :)\r\n</p>','CC-BY-SA',0,'',1,'MattKingUSA'),
(359,'The Alien Brothers Podcast (ABP)','alienbrotherspc.nospam@nospam.gmail.com','<p>\r\nThe Alien Brothers Podcast is written?, recorded, and produced? by Rutiger and Casper. Check out their noise experiments here (on hpr)\r\n</p>','CC-BY-SA',1,'',1,'The Alien Brothers Podcast (ABP)'),
(360,'Joey Hess','id.nospam@nospam.joeyh.name','<p><a href=\"https://joeyh.name/\">https://joeyh.name/</a></p>','CC-BY-SA',0,'',1,'Joey Hess'),
(342,'norrist','norrist.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'norrist'),
(2,'Kn1ghtl0rd','kn1ghtl0rd.nospam@nospam.hotmail.com','https://www.kn1ghtl0rd.org','CC-BY-SA',0,'',1,'Kn1ghtl0rd'),
(4,'Phizone','phizone.nospam@nospam.infonomicon.org','https://infonomicon.org','CC-BY-SA',0,'',1,'Phizone'),
(5,'Scedha','scheda.nospam@nospam.gmail.com','https://underfirenetwork.com','CC-BY-SA',0,'',1,'Scedha'),
(6,'J-Hood','JHood.nospam@nospam.JHood.biz','https://tehshow.org','CC-BY-SA',0,'',1,'J-Hood'),
(8,'LinLin','will.nospam@nospam.techcentric.org','https://www.techcentric.org','CC-BY-SA',0,'',1,'LinLin'),
(9,'Irongeek','irongeek.nospam@nospam.irongeek.com','https://irongeek.com','CC-BY-SA',0,'',1,'Irongeek'),
(10,'p0trill0','p0trill023.nospam@nospam.gmail.com','https://twatech.org','CC-BY-SA',0,'',1,'potrillo'),
(11,'Pat from TLLTS','patrickmdavila.nospam@nospam.gmail.com','Co-host of the The Linux Link Tech Show. Former host of the MythTVCast.','CC-BY-SA',0,'',1,'Pat from The Linux Link Tech Show'),
(12,'livinded','livinded.nospam@nospam.gmail.com','https://deadbytes.net','CC-BY-SA',0,'',1,'livinded'),
(13,'Jason Scott','jason.nospam@nospam.textfiles.com','https://www.textfiles.com','CC-BY-SA',0,'',1,'Jason Scott'),
(14,'Blackratchet','blackratchet.nospam@nospam.blackratchet.org','https://www.binrev.com','CC-BY-SA',0,'',1,'Blackratchet'),
(15,'Merk','Merk.nospam@nospam.iname.com','https://google.com','CC-BY-SA',0,'',1,'Merk'),
(16,'Madjimisimi','madjimisimi.nospam@nospam.gmail.com','https://google.com','CC-BY-SA',0,'',1,'Madjimisimi'),
(17,'Pixelfiend','pxfiend.nospam@nospam.gmail.com','https://google.com','CC-BY-SA',0,'',1,'Pixelfiend'),
(19,'Luminaire','salveya.nospam@nospam.gmail.com','https://google.com','CC-BY-SA',0,'',1,'Luminaire'),
(20,'Dominic Uilano','123.nospam@nospam.gmail.com','https://google.com','CC-BY-SA',0,'',1,'Dominic Uilano'),
(21,'Killersmurf','ksmurf99.nospam@nospam.gmail.com','https://google.com','CC-BY-SA',0,'',1,'Killersmurf'),
(22,'Electroman','electroman37.nospam@nospam.gmail.com','https://electrostuff.net','CC-BY-SA',0,'',1,'Electroman'),
(23,'Lowtek Mystik','lowtekmystik.nospam@nospam.walla.com','https://ninjanightschool.com/','CC-BY-SA',0,'',1,'Lowtek Mystik'),
(26,'ponyboy','cliffstoll.nospam@nospam.gmail.com','https://bellcoreradio.net/','CC-BY-SA',0,'',1,'ponyboy'),
(27,'Dr^ZigMan','drzigman.nospam@nospam.bellsouth.net','https://binrev.com','CC-BY-SA',0,'',1,'Dr^ZigMan'),
(28,'Kynan Dent','kynan.nospam@nospam.kynan.org','https://kynan.org','CC-BY-SA',0,'',1,'Kynan Dent'),
(31,'Xcalibur','xcalibur1337.nospam@nospam.gmail.com','https://www.google.com','CC-BY-SA',0,'',1,'Xcalibur'),
(32,'Metatron','metatron.nospam@nospam.fbillradio.com','','CC-BY-SA',0,'',1,'Metatron'),
(33,'dual_parallel','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'dual_parallel'),
(34,'Coder365','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'Coder365'),
(35,'Cottonballs','cottonballz.nospam@nospam.gmail.com','https://www.google.com','CC-BY-SA',0,'',1,'Cottonballs'),
(37,'Haq','burnmytime.nospam@nospam.gmail.com','https://www.google.com','CC-BY-SA',0,'',1,'Haq'),
(40,'coldsteal','antonnid.nospam@nospam.gmail.com','https://www.i-trash.org','CC-BY-SA',0,'',1,'coldsteal'),
(43,'GeoNine','projektdiscon.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'GeoNine'),
(44,'spiffytech','spiffytech.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'spiffytech'),
(45,'L3pprd/ocCode','l3pprd.nospam@nospam.gmail.com','https://occ0de.wordpress.com','CC-BY-SA',0,'',1,'L3pprd/ocCode'),
(46,'blackmath','blckmth.nospam@nospam.gmail.com','https://blackmath.org','CC-BY-SA',0,'',1,'blackmath'),
(47,'cid','cidviscous.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'cid'),
(49,'kotrin','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'kotrin'),
(50,'Dospod','drewmarin.nospam@nospam.gmail.com','https://dospod.i-trash.org','CC-BY-SA',0,'',1,'Dospod'),
(51,'Messyman','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'Messyman'),
(52,'javatard','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'javatard'),
(53,'Zach','admin.nospam@nospam.hackerpublicradio.org','https://packetsniffers.org','CC-BY-SA',0,'',1,'Zach'),
(54,'skrye','skrye.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'skrye'),
(56,'riscphree','riscphree.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'riscphree'),
(59,'MrE','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'MrE'),
(60,'Faceman','lt.faceman.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Faceman'),
(61,'DarkShadow','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'DarkShadow'),
(63,'spaceout','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'spaceout'),
(65,'ThoughtPhreaker','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'ThoughtPhreaker'),
(66,'Adam','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'Adam'),
(67,'Draven','admin.nospam@nospam.hackerpublicradio.org','','CC-BY-SA',0,'',1,'Draven'),
(68,'Mc Frontalot','admin.nospam@nospam.hackerpublicradio.org','https://frontalot.com','CC-BY-SA',0,'',1,'Mc Frontalot'),
(343,'The Bishop','bishop-hpr.nospam@nospam.mondkalbantrieb.de','<p>\r\nHi, i am The Bishop from Berlin/Germany.<br />\r\nMy computer experience started more than 30 years ago with Commodore Plus 4 and Commodore 64. Later on i continued with Commodore Amiga 500 and Amiga 1200. My first PC was an 80286-based. I started using Linux with Slackware 3.2(?) and Kernel 2.0.20.\r\n</p>\r\n<p>\r\nMy favourite topics are compression technology and cryptography. I\'m a guy interested in low level stuff down to the raw bits, i leave the modern GUI-programming for others.\r\n</p>','CC-BY-SA',1,'',1,'The Bishop'),
(344,'spaceman','admin.nospam@nospam.hackerpublicradio.org','<ul>\r\n<li><a href=\"https://qzc3ou3vccr3yjyg.onion/\">https://qzc3ou3vccr3yjyg.onion/</a></li>\r\n<li><a href=\"https://loadaverage.org/spaceman\">https://loadaverage.org/spaceman</a></li>\r\n</ul>','CC-BY-SA',1,'',1,'spaceman'),
(346,'Bill \"NFMZ1\" Miller','thenfmz1.nospam@nospam.gmail.com','<p>\r\nOld man who loves tech and discussing everything tech wise. A master of none. Love the outdoors and being a dad.\r\n</p>','CC-BY-SA',1,'',1,'Bill \"NFMZ1\" Miller'),
(348,'Reg A','krtariles.nospam@nospam.gmail.com','<p>\r\nI\'m an old retired dude. Former US Air Force and US Army living in the state of Georgia, USA with plenty time on my hands to mess with computers and electronic devices.\r\n</p>','CC-BY-SA',0,'',1,'Reg A'),
(349,'Hannah, of Terra, of Sol','spacehanners.nospam@nospam.gmail.com','<p>\r\nI\'m down with the space, and ASIC. Let\'s look at the stars with python and an antenna. \r\n</p>','CC-BY-SA',0,'',1,'Hannah, of Terra, of Sol'),
(350,'BobJonkman','bjonkman+hpr.nospam@nospam.sobac.com','<p>Bob Jonkman works with computers. He\'s an instructor, project manager and system administrator. In another life he dabbles in politics, too.</p>','CC-BY-SA',1,'',1,'BobJonkman'),
(351,'@einebiene','postfach.nospam@nospam.einebiene.de','','CC-BY-SA',0,'',1,'@EinerBeener'),
(352,'fth','freakdoesgeek.nospam@nospam.gmail.com','<p>\r\nA free and libre software end user with admiration for the community.\r\n</p>\r\n<p>\r\n@fth_nix on twitter\r\n</p>\r\n','CC-BY-SA',0,'',1,'fth'),
(353,'venam','patrick.nospam@nospam.iotek.org','<ul>\r\n<li>venam from <a href=\"https://nixers.net\">https://nixers.net</a>\r\n</li>\r\n<li>Patreon: <a href=\"https://www.patreon.com/venam\">https://www.patreon.com/venam</a>\r\n</li>\r\n<li>Blog: <a href=\"https://venam.nixers.net\">https://venam.nixers.net</a>\r\n</li>\r\n</ul>','CC-BY-SA',1,'',1,'venam'),
(354,'TheDUDE','jstahlman13.nospam@nospam.gmail.com','<pre>\r\nTheD|_|D3\r\n</pre>','CC-BY-SA',0,'',1,'TheDUDE'),
(355,'Knox','jrknox1977.nospam@nospam.gmail.com','<p>\r\nI am a life long tech geek. I love all things tech. I started with a TRS-80 Model 3 in 6th grade and have never looked back! \r\n</p>','CC-BY-SA',0,'',1,'Knox'),
(356,'Mongo','mongo.nospam@nospam.mailfence.com','<p>\r\nI am a retired former Systems Administrator. The last almost 20 years was supporting Windows servers. After retiring, I still wanted to play with computers, but need to keep costs reasonable. When Windows XP went unsupported, I found a nice Linux replacement for my old netbook. Now, a couple years later, I am getting serious about switching. This project is part of my path to freedom.\r\n</p>','CC-BY-SA',0,'',1,'Mongo'),
(357,'bjb','bjb.nospam@nospam.sourcerer.ca','','CC-BY-SA',0,'',1,'bjb'),
(358,'Ironic Sodium','ironic.sodium.42.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Ironic Sodium'),
(361,'Aaressaar','sundaryourfriend.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Aaressaar'),
(362,'MPardo','mpardohpr.nospam@nospam.gmail.com','','CC-0',0,'',1,'MPardo'),
(363,'the_remora','HPR+the_remora.nospam@nospam.theremora.me','<p>\r\nI enjoy messing with Linux, Playing Board Games, Role-Playing Games and LARPING\r\n</p>','CC-BY-SA',1,'',1,'the_remora'),
(364,'Tuula','tuukka.turto.nospam@nospam.oktaeder.net','<!-- test --><p>\r\nEternal tinkerer of code, who occasionally writes things down at <a href=\"https://engineersjourney.wordpress.com/\">https://engineersjourney.wordpress.com/</a>\r\n or contributes to hylang project at <a href=\"https://github.com/hylang/hy\">https://github.com/hylang/hy</a>\r\n</p>','CC-BY-SA',0,'',1,'Tuula'),
(365,'Bookewyrmm','tasettle.nospam@nospam.gmail.com','A man, out, standing, in his field','CC-BY-SA',0,'',1,'bookworm'),
(381,'Nihilazo','nico.nospam@nospam.itwont.work','<p>I\'m just a person. I blog @ <a href=\"itwont.work\">https://itwont.work/</a></p>','CC-BY-SA',1,'',1,'Niel azo'),
(366,'Philip','philip.nospam@nospam.shutdown.network','','CC-BY-SA',0,'',1,'Philip'),
(368,'Xtrato','james.nospam@nospam.jamesdotcom.com','<p>Interested in Network security and Technology</p>','CC-BY-SA',0,'',1,'Xtrato'),
(369,'Jeroen Baten','jbaten.nospam@nospam.i2rs.nl','<p>\r\nI solve IT problems. I connect system A with system B. I teach people stuff. I do this mostly with Linux systems. To make stuff happen I write a lot of custom scripts in various programming lanuages like Perl, Python, Bash, C, Java, Ruby, etc. I have clients all over the world (Australia, Switserland, US, etc).\r\n</p>\r\n<p>\r\nI am also the project leader of the open source LibrePlan project. So go to that site if you need more information about an open source webbased project management application.\r\n</p>\r\n<p>\r\nI occasionally write an article for my blog, but I have also written a number of books:\r\n</p>\r\n<ul>\r\n<li>Jumpstart your business with Odoo 12</li>\r\n<li>LPI Essentials (Dutch)</li>\r\n<li>LibrePlan, the missing manual (English)</li>\r\n</ul>\r\n<p>\r\nIf you have a question, please contact me at jeroen@jeroenbaten.nl.\r\n</p>\r\n<p>\r\nHave a nice day.\r\n</p>','CC-BY-SA',0,'',1,'Jeroen Baten'),
(370,'Yannick','yannick.nospam@nospam.frenchguy.ch','<p>\r\nI\'m Yannick. I\'m french, I live in Switzerland. Hence, the french guy from Switzerland !<br />\r\nI\'m a geek, a father, a podcaster.<br />\r\nI\'m interested in programming, of all sorts, in all kinds of languages.<br />\r\nI like to tinker with basic electronics components, especially LEDs !<br />\r\nI have half a dozen Raspberry Pis, and probably twice that amount of micro controllers of all sorts.<br />\r\nI have many websites :\r\n</p>\r\n<ul>\r\n<li><a href=\"https://frenchguy.ch\">https://frenchguy.ch</a></li>\r\n<li><a href=\"https://theawesomejinglefactory.frenchguy.ch/\">https://theawesomejinglefactory.frenchguy.ch/</a></li>\r\n<li><a href=\"https://euterpiaradio.ch\">https://euterpiaradio.ch</a></li>\r\n</ul>','CC-0',0,'',1,'Yannick'),
(371,'desearcher','desearcher.nospam@nospam.gmail.com','<p> Hello, World! </p> <p> I\'m just a TRS-80 that grows algae while my code compiles. </p> <p> Sometimes I beep. </p>','CC-BY-SA',0,'',1,'de searcher'),
(372,'Edward Miro / c1ph0r','c1ph0r.nospam@nospam.protonmail.com','<p>\r\nJust an old dude from the internet.\r\n<br />\r\n<br />\r\nI gave a talk at a local hacker con once about vehicle based surveillance.\r\nI also contributed to a privacy/hacking project called <a href=\"https://shadowlinkit.com/\">Shadowlink </a>with the main focus being the NetP Wiki (The NetP Wiki is a fully collaborative and dynamic guide designed to help navigate the world of privacy &amp; anonymity).\r\n<br />\r\n<br />\r\nCurrently moving prior blogs and content over to my GitHub Page:\r\n<a href=\"https://c1ph0r.github.io/\">https://c1ph0r.github.io/ </a>\r\n<br />\r\n<br />\r\nPrevious episodes:<br />\r\n<a href=\"https://hackerpublicradio.org/eps.php?id=2707\">hpr2707 :: Steganalysis 101 </a>\r\n</p>\r\n','CC-BY-SA',0,'',1,'Edward Miero'),
(373,'Floyd C Poynter','Floyd.C.Poynter.nospam@nospam.protonmail.com','','CC-BY-SA',0,'',1,'Floyd C Poynter'),
(374,'aldenp','alden.peeters.nospam@nospam.leagueh.xyz','<p>\r\nOpen source and decentralization/P2P enthusiast\r\n</p>','CC-BY-SA',1,'',1,'aldenp'),
(375,'minnix','minnix.nospam@nospam.minnix.dev','find me on mastodon: @minnix@upallnight.minnix.dev\r\n\r\nfind me on matrix: @minnix:minnix.dev\r\n\r\nfind me on peertube: https://nightshift.minnix.dev/c/nightshift/videos?s=1\r\n\r\nfind me on funkwhale: @minnix@allnightlong.minnix.dev\r\n\r\nfind me in your ears: https://linuxlugcast.com/','CC-0',0,'',1,'minnix'),
(376,'Joel D','joel.nospam@nospam.jdueck.net','<p>\r\nI\'m a dad and programmer in Minnesota. I enjoy publishing small books, small websites and small programs, sometimes all at once! I am at <a href=\"https://joeldueck.com\">https://joeldueck.com</a>, <a href=\"https://twitter.com/joeld\">@joeld</a> on Twitter, or <a href=\"https://icosahedron.website/@joeld\">@joeld@icosahedron.website</a> on Mastodon.\r\n</p>\r\n','CC-BY-SA',0,'',1,'Joel D'),
(377,'Zen_Floater2','zen_floater2.nospam@nospam.yahoo.com','<p>My name is Zen_Floater2, I am a former human being, converted into a Squirrel by {ALIENS} in the 1960\'s and placed in a magical forest in Eastern Oklahoma. Green Country; I think they call it.<br />\r\nI started developing software in 1975 post Vietnam. Atheist and complainer about HUMANS and their STUFF</p>','CC-BY-SA',0,'',1,'Zen Floater two'),
(378,'Shannon Wright','support.nospam@nospam.wrighttechnical.net','<p>\r\nI have been using technology since the early 90s. I love anything tech. My career started in technical phone support in the 90s. I have since moved into areas such as: content manager, technical training, business systems analyst, systems administrator and systems engineer. I love solving problems and continue to learn something new all the time.</p>','CC-BY-SA',1,'',1,'Shannon Wright'),
(379,'mightbemike','mightbemike.nospam@nospam.protonmail.com','<p>\r\nCreator of Bitcorn Battle game <a href=\"https://bitcornbattle.com\">https://bitcornbattle.com</a>, and Rob this Farm contests for problem solvers that want to win free Bitcorn loot.\r\n</p>','CC-BY-SA',0,'',1,'might be mike'),
(380,'Carl','online.nospam@nospam.chave.us','','CC-BY-SA',0,'',1,'Carl'),
(382,'Daniel Persson','mailto.woden.nospam@nospam.gmail.com','<p> I\'m a developer that loves creating code, talking about different solutions, and learning new things. </p> <p> During the workday, I create systems to extract text from media assets, structure them, and produce different results to make the media accessible to everyone. </p> <p> In my time off, I like to create small prototypes and try different techniques and libraries. </p> <p> I\'m also creating some Youtube videos to inspire and help developers to improve their skills. Not that I know everything, but we learn by teaching. </p> <p> Other than these hobbies, I run some open-source projects. To mention a few, I developed the Android SQRL client and the Wordpress plugin for SQRL. I\'ve also contributed to projects creating braille text, epubs, and PDFs as these subjects are close to my daily work. I usually say that I know too much about the PDF file structure as I\'ve worked six years on a tool to extract text from PDFs. </p>','CC-BY-SA',0,'<p>Im a developer that loves creating code, talking about different solutions, and learning new things.</p>\r\n<p>During the workday, I create systems to extract text from media assets, structure them, and produce different results to make the media accessible to everyone.</p>\r\n<p>In my time off, I like to create small prototypes and try different techniques and libraries.</p>\r\n<p>Im also creating some Youtube videos to inspire and help developers to improve their skills. Not that I know everything, but we learn by teaching.</p>\r\n<p>Other than these hobbies, I run some open-source projects. To mention a few, I developed the Android SQRL client and the Wordpress plugin for SQRL. Ive also contributed to projects creating braille text, epubs, and PDFs as these subjects are close to my daily work. I usually say that I know too much about the PDF file structure as Ive worked six years on a tool to extract text from PDFs.</p>\r\n',1,'Daniel Persson'),
(383,'Paul Quirk','paul.nospam@nospam.pquirk.com','<p>I\'m a licensed electrician, but my hobbies include open source software and retro computing. After listening to Hacker Public Radio for almost a year, I decided to become a contributor.</p>','CC-BY-SA',1,'',1,'Paul Quirk'),
(384,'monochromec','monochromec.nospam@nospam.gmail.com','<p>\r\nTwo old wise men talking about free and open source software, life in general and having a bit of fun along the way.\r\n</p>','CC-BY',0,'',1,'monochromec'),
(385,'crvs','carvas.f.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'c r v s'),
(386,'DanNixon','dan.nospam@nospam.dan-nixon.com','<p>Software engineer, hacker, maker, open source activist.</p>','CC-BY-SA',0,'',1,'Dan Nixon'),
(389,'TrumpetJohn','john.nospam@nospam.biblicaltrumpets.org','<p>\r\nI am a trumpet player/musician/and worship leader with a PhD in church music. I enjoy \"life hacking\" and understanding how systems can influence our daily life, and free us to be more creative beings. My blog site is <a href=\"https://biblicaltrumpets.org\">biblicaltrumpets.org</a>.\r\n</p>','CC-BY-SA',0,'',1,'Trumpet John'),
(390,'o9l','amanda1usernamesarehard.nospam@nospam.protonmail.com','<p>\r\nI\'m o9l! The name comes from... well... that\'s a story for another time.\r\n</p>','CC-BY-SA',0,'',1,'o9l'),
(391,'Some Guy On The Internet','Lyunpaw.nospam@nospam.gmail.com','- Mastodon: @Yung_Lyun@mastodon.social \r\n- Matrix: @sgoti:matrix.org \r\n- Mumble (chatter.skyehaven.net): SGOTI \r\n\r\n- All messages, created by SGOTI, published on the Social Media \r\nplatforms: Mastodon, Matrix, and Mumble are licensed under \r\nCreative Commons Attribution-ShareAlike 4.0 International (CC-BY-SA 4.0 International). ','CC-BY-SA',0,'',1,'Some Guy On The Internet'),
(420,'HopperMCS','gage.nospam@nospam.gages.blog','I science the computers! https://madcompscientist.com','CC-BY-SA',1,'',1,'gage hopper'),
(392,'timttmy','marshall.cleave.nospam@nospam.tiscali.co.uk','<p>\r\nPlease contact me on my pleroma account @timttmy@the-pit.uk</p>','CC-BY-SA',0,'',1,'timttmy'),
(393,'Anonymous Host','Anonymous.Host.nospam@nospam.hackerpublicradio.org','A catch all account for those who wish to submit content anonymously.','CC-BY-SA',0,'',1,'Anonymous Host'),
(394,'Trey','jttrey3.nospam@nospam.yahoo.com','','CC-BY-SA',0,'',1,'Trey'),
(395,'CoGo','cogocogocogocogo.nospam@nospam.gmail.com','<p>\r\nBorn Again Christian<br />\r\nCNC hobbyist, worker<br />\r\nLove but can\'t afford aviation.\r\n</p>','CC-BY-SA',0,'',1,'Co Go'),