(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 Dave’s 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 doesn’t\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- Google’s 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 Scott’s video “I\ntried using AI. It scared me.”</a></li>\n<li>Dave’s experiences with email:\n<ul>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Digital_Equipment_Corporation\">Digital\nEquipment Corporation’s</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 right type is\nimportant. Using older-style cards in new projects might turn out to be\na false economy.</li>\n<li>Hard disks can last a long time if the right sort is used. One thing\nthat shortens their life is getting them hot.</li>\n<li>MrX has used Western Digital Passport hard drives for some time, and\nthey have been very reliable – none have failed.</li>\n<li>There are different drives from Western Digital which have different\nperformances and they are colour coded. See the <a\nhref=\"https://www.westerndigital.com/en-gb/solutions/color-drives\">Western\nDigital</a> website for details.</li>\n</ul></li>\n</ul>\n<ul>\n<li>Complexity and single points of failure:\n<ul>\n<li>Chip shortages and lack of resilience:\n<ul>\n<li>Modern components that do a single job used to consist of multiple\ndiscrete components that could be replaced individually. Now, if a\ncomponent fails it has to be replaced in its entirety, and because of\nthe shortage of chips it uses it may be unavailable.</li>\n<li>Older devices and components may still use older less specialised\nparts and so can be repaired.</li>\n<li>Unnecessary reliance on GPS in devices, cloud services in <em>Smart\nHome</em> equipment, etc.</li>\n<li>For example, managing enormous warehouses requires a lot of services\nthat may not be too resilient, and could fail catastrophically.</li>\n</ul></li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Coronal_mass_ejection\">Coronal Mass\nEjection (CME)</a>:\n<ul>\n<li>Such an event could destroy many satellites (such as those providing\nGPS). It could also cause a massive overload of the power grid.\nTransformers used in the grid can be damaged or destroyed and <a\nhref=\"https://www.tdworld.com/substations/article/21258955/no-easy-answers-transformer-supply-crisis-deepens\">replacing\nthem in a timely fashion can be difficult</a>.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Carrington_Event\">Carrington\nevent</a> in September 1859 telegraph machines reportedly shocked\noperators and caused small fires.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/March_1989_geomagnetic_storm\">March\n1989 CME</a> caused a power outage in Quebec, Canada.</li>\n<li>Recent YouTube video from Anton Petrov: <a\nhref=\"https://www.youtube.com/watch?v=mJCytV7PUzk\"><em>Wow! Sun Just\nProduced a Carrington Like Event, But We Got Super Lucky</em></a></li>\n</ul></li>\n</ul></li>\n</ul>\n<ul>\n<li>Keeping systems up to date:\n<ul>\n<li>MrX has had problems getting various RPis updated and running.</li>\n<li>Dave has had similar problems making the jump from Raspbian to\nRaspberry Pi OS.</li>\n<li>In some cases the operating system on the Pis have needed to be\ncompletely reinstalled, and the work in installing and reconfiguring\nsoftware has proved to be too much!</li>\n<li>MrX’s <a\nhref=\"https://www.piface.org.uk/products/piface_control_and_display/\">PiFace\nControl and Display board</a> is giving problems, as is the simpler <a\nhref=\"https://www.piface.org.uk/products/piface_digital/\">PiFace\nDigital</a>. It looks as if the company has gone out of business\nunfortunately.</li>\n<li>Dave has a <a\nhref=\"https://shop.pimoroni.com/products/pico-rgb-keypad-base\">Pico RGB\nBase from Pimoroni</a>, a 14-key board with RGB LEDs which could be used\nas a way of controlling things.</li>\n<li>Dave’s <a\nhref=\"https://hackerpublicradio.org/eps.php?id=3039\"><em>Magic\nMirror</em></a> system (a Pi 3A+ attached to a monitor) failed because\nthe Pi needed to be upgraded and then the <code>Node.js</code> code\ndidn’t seem to be maintained any more! Needs work!!</li>\n<li>MrX’s desktop PC is small and quiet, but since it’s in a cold room,\ntends not to get used too much in the winter! Dave’s PC is in an\nextension (addition) to the house and tends to get used quite a lot, but\nin cold winter weather, less so.</li>\n</ul></li>\n</ul>\n<ul>\n<li>YouTube list:\n<ul>\n<li>We were going to mention a few YouTube channels we’d watched lately,\nbut felt we’d already talked long enough!</li>\n<li>Rather than just adding the list to the notes, as we discussed, we\nwill leave this section to the next time we make a recording such as\nthis.</li>\n</ul></li>\n</ul>\n<ul>\n<li>Completing HPR shows:\n<ul>\n<li>MrX has a show he has recorded but is held up preparing notes to go\nwith it.</li>\n<li>Dave tends to write draft notes first, then build the recording\naround them, but this approach isn’t necessarily faster!</li>\n</ul></li>\n</ul>\n<h2 id=\"links\">Links</h2>\n<ul>\n<li>Google:\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Google_Wave\">Google\nWave</a></li>\n<li><a href=\"https://support.google.com/mail/answer/7126229\">Accessing\nGmail with IMAP</a></li>\n</ul></li>\n</ul>\n<ul>\n<li>Early mail tools:\n<ul>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/MH_Message_Handling_System\">MH\nMessage Handling System</a></li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/MH_%26_xmh:_Email_for_Users_%26_Programmers\"><em>MH\n&amp; xmh: Email for Users &amp; Programmers</em>, Jerry Peek,\n1996</a></li>\n<li><a href=\"https://www.nongnu.org/nmh/\">nmh - Message Handling\nSystem</a></li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Procmail\"><code>procmail</code> mail\nfilter</a></li>\n</ul></li>\n</ul>\n<ul>\n<li>Solar storms / Coronal Mass Ejections:\n<ul>\n<li>Wikipedia article on <a\nhref=\"https://en.wikipedia.org/wiki/Coronal_mass_ejection\">Coronal Mass\nEjections (CME)</a>.</li>\n<li>Wikipedia article on the <a\nhref=\"https://en.wikipedia.org/wiki/Carrington_Event\">Carrington\nevent</a> in September 1859.</li>\n<li>Wikipedia article on the <a\nhref=\"https://en.wikipedia.org/wiki/March_1989_geomagnetic_storm\">March\n1989 CME</a>.</li>\n<li><a href=\"\">List of solar storms</a></li>\n<li><a\nhref=\"https://www.tdworld.com/substations/article/21258955/no-easy-answers-transformer-supply-crisis-deepens\">Transformer\nshortage in the USA</a></li>\n</ul></li>\n</ul>\n</article>\n',225,0,1,'CC-BY-SA','Edinburgh,meeting',0,0,1),
(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/hpr3835/IMG_Pressure_here_tn.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3835/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/hpr3835/IMG_Vector-Prime-Audio-Drama_tn.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3835/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',4226,'HPR Volunteers talk about shows released and comments posted in April 2024','<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/0430.html\" target=\"_blank\">Dave Hingley</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/hpr4086/index.html\" target=\"_blank\">4086</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-04-01</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4086/index.html\" target=\"_blank\">HPR Community News for March 2024</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/hpr4087/index.html\" target=\"_blank\">4087</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-04-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4087/index.html\" target=\"_blank\">Getting started with the digiKam photo management software</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0429.html\" target=\"_blank\">Henrik Hemrin</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4088/index.html\" target=\"_blank\">4088</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-04-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4088/index.html\" target=\"_blank\">Today I Learnt more Bash tips</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/hpr4089/index.html\" target=\"_blank\">4089</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-04-04</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4089/index.html\" target=\"_blank\">Modifying a Python script with some help from ChatGPT </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/hpr4090/index.html\" target=\"_blank\">4090</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-04-05</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4090/index.html\" target=\"_blank\">Playing Civilization III, Part 1</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/hpr4091/index.html\" target=\"_blank\">4091</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-04-08</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4091/index.html\" target=\"_blank\">Test Driven Development Demo</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0342.html\" target=\"_blank\">norrist</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4092/index.html\" target=\"_blank\">4092</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-04-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4092/index.html\" target=\"_blank\">More man-talk.</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/hpr4093/index.html\" target=\"_blank\">4093</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-04-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4093/index.html\" target=\"_blank\">Installing postmarketOS on a PINE64 PinePhone</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0152.html\" target=\"_blank\">Claudio Miranda</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4094/index.html\" target=\"_blank\">4094</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-04-11</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4094/index.html\" target=\"_blank\">One year of Linux</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/hpr4095/index.html\" target=\"_blank\">4095</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-04-12</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4095/index.html\" target=\"_blank\">Twenty seven years of Linux</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0194.html\" target=\"_blank\">Deltaray</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4096/index.html\" target=\"_blank\">4096</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-04-15</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4096/index.html\" target=\"_blank\">Powers of two</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0194.html\" target=\"_blank\">Deltaray</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4097/index.html\" target=\"_blank\">4097</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-04-16</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4097/index.html\" target=\"_blank\">Will they take our jobs? Of course they will.</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0151.html\" target=\"_blank\">dodddummy</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4098/index.html\" target=\"_blank\">4098</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-04-17</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4098/index.html\" target=\"_blank\">Road trips without GPS</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0394.html\" target=\"_blank\">Trey</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4099/index.html\" target=\"_blank\">4099</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-04-18</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4099/index.html\" target=\"_blank\">Introducing Home Automation and Home Assistant</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/hpr4100/index.html\" target=\"_blank\">4100</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-04-19</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4100/index.html\" target=\"_blank\">Charleston, South Carolina</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/hpr4101/index.html\" target=\"_blank\">4101</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-04-22</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4101/index.html\" target=\"_blank\">A I O M G</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/hpr4102/index.html\" target=\"_blank\">4102</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-04-23</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4102/index.html\" target=\"_blank\">Re:HPR 3133 More MPV Quick Tips</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/hpr4103/index.html\" target=\"_blank\">4103</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-04-24</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4103/index.html\" target=\"_blank\">What\'s in my bag?</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0430.html\" target=\"_blank\">Dave Hingley</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4104/index.html\" target=\"_blank\">4104</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-04-25</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4104/index.html\" target=\"_blank\">Introduction to jq - part 1</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/hpr4105/index.html\" target=\"_blank\">4105</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-04-26</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4105/index.html\" target=\"_blank\">My story how I found a cure for my obesity</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/hpr4106/index.html\" target=\"_blank\">4106</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-04-29</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4106/index.html\" target=\"_blank\">My tribute to feeds</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0429.html\" target=\"_blank\">Henrik Hemrin</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4107/index.html\" target=\"_blank\">4107</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-04-30</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4107/index.html\" target=\"_blank\">Response to HPR #4065</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0297.html\" target=\"_blank\">swift110</a></td>\n</tr>\n</table>\n\n<h2>Comments this month</h2>\n\n<p>These are comments which have been made during the past month, either to shows released during the month or to past shows.\nThere are 21 comments in total.</p>\n<h3>Past shows</h3>\n<p>There are 2 comments on\n2 previous shows:</p>\n<ul>\n<li><strong><a href=\"https://hackerpublicradio.org/eps/hpr3868/index.html#comments\" target=\"_blank\">hpr3868</a></strong>\n(2023-05-31) \"<em>News.</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0391.html\" target=\"_blank\">Some Guy On The Internet</a>.<br/>\n<li style=\"list-style: none; display: inline\">\n<ul>\n<li>\n<a href=\"https://hackerpublicradio.org/eps/hpr3868/index.html#2\" target=\"_blank\">Comment 2</a>:\nelmussol on 2024-04-05:\n\"George Santos\"</li></ul><br/>\n</limage><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4075/index.html#comments\" target=\"_blank\">hpr4075</a></strong>\n(2024-03-15) \"<em>Making a Pomodoro Timer</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0342.html\" target=\"_blank\">norrist</a>.<br/>\n<li style=\"list-style: none; display: inline\">\n<ul>\n<li>\n<a href=\"https://hackerpublicradio.org/eps/hpr4075/index.html#2\" target=\"_blank\">Comment 2</a>:\noperat0r on 2024-04-10:\n\"ADD\"</li></ul><br/>\n</limage></ul>\n<h3>This month\'s shows</h3>\n<p>There are 19 comments on 10 of this month\'s shows:</p>\n<ul><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4086/index.html#comments\" target=\"_blank\">hpr4086</a></strong>\n(2024-04-01) \"<em>HPR Community News for March 2024</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4086/index.html#1\" target=\"_blank\">Comment 1</a>:\nDave Morriss on 2024-04-01:\n\"Senior moment: diatribe\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4086/index.html#2\" target=\"_blank\">Comment 2</a>:\nSome Guy on the Internet on 2024-04-01:\n\"@Dave Morriss\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4092/index.html#comments\" target=\"_blank\">hpr4092</a></strong>\n(2024-04-09) \"<em>More man-talk.</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0391.html\" target=\"_blank\">Some Guy On The Internet</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4092/index.html#1\" target=\"_blank\">Comment 1</a>:\nfolky on 2024-04-09:\n\"Oh no\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4092/index.html#2\" target=\"_blank\">Comment 2</a>:\nMad Sweeney on 2024-04-10:\n\"Squeezing out a show\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4094/index.html#comments\" target=\"_blank\">hpr4094</a></strong>\n(2024-04-11) \"<em>One year of Linux</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0382.html\" target=\"_blank\">Daniel Persson</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4094/index.html#1\" target=\"_blank\">Comment 1</a>:\nAaronB on 2024-04-11:\n\"Bugs in Linux\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4094/index.html#2\" target=\"_blank\">Comment 2</a>:\nFolky on 2024-04-12:\n\"Thank you\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4094/index.html#3\" target=\"_blank\">Comment 3</a>:\nHenrik Hemrin on 2024-04-12:\n\"Enjoyable to learn about your Linux use case and experience\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4095/index.html#comments\" target=\"_blank\">hpr4095</a></strong>\n(2024-04-12) \"<em>Twenty seven years of Linux</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0194.html\" target=\"_blank\">Deltaray</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4095/index.html#1\" target=\"_blank\">Comment 1</a>:\nNick on 2024-04-12:\n\"Correction\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4095/index.html#2\" target=\"_blank\">Comment 2</a>:\nDeltaray on 2024-04-13:\n\"Re: Correction\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4095/index.html#3\" target=\"_blank\">Comment 3</a>:\nHenrik Hemrin on 2024-04-13:\n\"Interesting review of your Linux softwares\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4096/index.html#comments\" target=\"_blank\">hpr4096</a></strong>\n(2024-04-15) \"<em>Powers of two</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0194.html\" target=\"_blank\">Deltaray</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4096/index.html#1\" target=\"_blank\">Comment 1</a>:\nWindigo on 2024-04-15:\n\"Very enjoyable episode\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4096/index.html#2\" target=\"_blank\">Comment 2</a>:\nbrian-in-ohio on 2024-04-17:\n\"Another example\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4096/index.html#3\" target=\"_blank\">Comment 3</a>:\nDave Morriss on 2024-04-17:\n\"8388607\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4097/index.html#comments\" target=\"_blank\">hpr4097</a></strong>\n(2024-04-16) \"<em>Will they take our jobs? Of course they will.</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0151.html\" target=\"_blank\">dodddummy</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4097/index.html#1\" target=\"_blank\">Comment 1</a>:\ndodddummy on 2024-04-16:\n\"The next thing\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4097/index.html#2\" target=\"_blank\">Comment 2</a>:\ndodddummy on 2024-04-20:\n\"More improvements\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4098/index.html#comments\" target=\"_blank\">hpr4098</a></strong>\n(2024-04-17) \"<em>Road trips without GPS</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0394.html\" target=\"_blank\">Trey</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4098/index.html#1\" target=\"_blank\">Comment 1</a>:\narcher72 on 2024-04-13:\n\"Re:Road trips without GPS\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4099/index.html#comments\" target=\"_blank\">hpr4099</a></strong>\n(2024-04-18) \"<em>Introducing Home Automation and Home Assistant</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0030.html\" target=\"_blank\">Ken Fallon</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4099/index.html#1\" target=\"_blank\">Comment 1</a>:\nHenrik Hemrin on 2024-04-26:\n\"Looking forward to learn about Home Assistant\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4103/index.html#comments\" target=\"_blank\">hpr4103</a></strong>\n(2024-04-24) \"<em>What\'s in my bag?</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0430.html\" target=\"_blank\">Dave Hingley</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4103/index.html#1\" target=\"_blank\">Comment 1</a>:\nHenrik Hemrin on 2024-04-26:\n\"Thanks for your show\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4105/index.html#comments\" target=\"_blank\">hpr4105</a></strong>\n(2024-04-26) \"<em>My story how I found a cure for my obesity</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0369.html\" target=\"_blank\">Jeroen Baten</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4105/index.html#1\" target=\"_blank\">Comment 1</a>:\nTrey on 2024-04-26:\n\"Thank you for sharing.\"</li></ul><br/>\n</li></ul>\n\n\n\n<h2>Events Calendar</h2>\n<p>With the kind permission of <strong>LWN.net</strong> we are linking to\n<a href=\"https://lwn.net/Calendar/\" target=\"_blank\">The LWN.net Community Calendar</a>.</p>\n<p>Quoting the site:</p>\n<blockquote>This is the LWN.net community event calendar, where we track\nevents of interest to people using and developing Linux and free software.\nClicking on individual events will take you to the appropriate web\npage.</blockquote>\n\n<h2>Any other business</h2>\n<h3 id=\"craig-maloney-host-of-the-open-metal-cast\">Craig Maloney, host\nof the Open Metal Cast</h3>\n<ul>\n<li><p>We received the sad news that fellow podcaster and host of the\nOpen Metal Cast, Craig Maloney passed away.</p></li>\n<li><p><a\nhref=\"https://www.sawyerfuller.com/obituaries/Craig-S-Maloney?obId=31125380#/obituaryInfo\">Obituary</a></p></li>\n</ul>\n<h3 id=\"markdown-issue-in-show-notes\">Markdown issue in show notes</h3>\n<ul>\n<li>Syntax highlighting for fenced code blocks.\n<ul>\n<li>An issue was raised on the Gitea repository for the <a\nhref=\"https://repo.anhonesthost.net/rho_n/hpr_generator/issues/185\"><code>hpr_generator</code></a>.\nShow notes using Markdown fenced blocks which specify a language (e.g.\n<code>python</code>) are not being syntax highlighted as expected.</li>\n<li>This was turned off because the highlighting is implemented as HTML\n(<code>&lt;div&gt;</code> and <code>&lt;span&gt;</code> tags) which was\nstripped by software on <code>archive.org</code> when the notes were\nuploaded.</li>\n<li>In case this restriction has been lifted, we will try uploading an\nexample to see if highlighting is now available.</li>\n</ul></li>\n</ul>\n<p></p>\n\n\n',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> <a\nhref=\"https://www.pcmag.com/news/data-breach-at-dc-health-insurance-exchange-ensnares-us-lawmakers\">Data\nBreach at DC Health Insurance Exchange Ensnares US Lawmakers.</a>\n<ul>\n<li><strong>Author:</strong> <a\nhref=\"https://www.pcmag.com/authors/michael-kan\">Michael Kan</a>. (2023,\nMar 9).</li>\n<li>A data breach at a health insurance exchange in Washington, D.C. has\nled a hacker to steal the personal information of US lawmakers and their\nstaff.</li>\n</ul></li>\n<li><strong>Article:</strong> <a\nhref=\"https://www.prnewswire.com/news-releases/independent-living-systems-provides-notice-of-data-event-301771989.html\">Independent\nLiving Systems Provides Notice of Data Event.</a>\n<ul>\n<li><strong>Author:</strong> Independent Living Systems, LLC. (2023, Mar\n14).</li>\n<li>The types of impacted information varies by individual and could\nhave included: name, address, date of birth, driver\'s license, state\nidentification, Social Security number, financial account information,\nmedical record number, Medicare or Medicaid identification, CIN#, mental\nor physical treatment/condition information, food delivery information,\ndiagnosis code or diagnosis information, admission/discharge date,\nprescription information, billing/claims information, patient name, and\nhealth insurance information.</li>\n</ul></li>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://apps.web.maine.gov/online/aeviewer/ME/40/aacdb720-e082-4ef6-b7e6-f03280b2c4ec.shtml\">Data\nBreach Notifications.</a>\n<ul>\n<li><strong>Author:</strong> Maine Attorney General. (2023, Mar\n14).</li>\n<li>Total number of persons affected (including residents):\n4,226,508</li>\n<li>Total number of Maine residents affected: 238</li>\n<li>If the number of Maine residents exceeds 1,000, have the consumer\nreporting agencies been notified:</li>\n<li>Date(s) Breach Occurred: 06/03/2022</li>\n<li>Date Breach Discovered: 01/17/2023</li>\n<li>Description of the Breach:</li>\n<li>External system breach (hacking)</li>\n<li>Information Acquired - Name or other personal identifier in\ncombination with: Social Security Number</li>\n</ul></li>\n<li><strong>Article:</strong> <a\nhref=\"https://www.bleepingcomputer.com/news/security/alleged-breachforums-owner-pompompurin-arrested-on-cybercrime-charges/\">Alleged\nBreachForums owner Pompompurin arrested on cybercrime charges.</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 17).</li>\n<li>U.S. law enforcement arrested on Wednesday a New York man believed\nto be Pompompurin, the owner of the BreachForums hacking forum.</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</ul>\n<hr />\n<ul>\n<li><strong>User space.</strong></li>\n<li><strong>Article:</strong> <a\nhref=\"https://www.forbes.com/sites/emilymason/2022/10/27/after-paypal-revokes-controversial-misinformation-policy-major-concerns-remain-over-2500-fine/?sh=7394309330c4\">After\nPayPal Revokes Controversial Misinformation Policy, Major Concerns\nRemain Over $2,500 Fine.</a>.\n<ul>\n<li><strong>Author:</strong> Emily Mason (2022, Oct 22).</li>\n<li>After facing backlash earlier this month, PayPal PYPL -1.5%\nrescinded a line in its policy stating that spreading misinformation on\nthe platform would be subject to a $2,500 fine. Today, the remaining\nlanguage leaves users and elected officials demanding more clarity over\nhow the platform defines fine-worthy speech.</li>\n</ul></li>\n<li>Bumble Bee\'s first experience of the HPR website.</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=\"Data Breach: from Wikipedia, the free encyclopedia.\">What is a\nData Breach?</a> A data breach is a security violation, in which\nsensitive, protected or confidential data is copied, transmitted,\nviewed, stolen, altered or used by an individual unauthorized to do\nso.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Malware\"\ntitle=\"Malware: from Wikipedia, the free encyclopedia.\">What is\nMalware?</a> Malware (a <a\nhref=\"https://en.wikipedia.org/wiki/Portmanteau\"\ntitle=\"Multiple words are combined into a new word.\">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)\">What is\na Payload?</a> In the context of a computer virus or worm, the payload\nis the portion of the malware which performs malicious action; deleting\ndata, sending spam or encrypting data. In addition to the payload, such\nmalware also typically has overhead code aimed at simply spreading\nitself, or avoiding detection.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Phishing\"\ntitle=\"Phishing: from Wikipedia, the free encyclopedia.\">What is\nPhishing?</a> Phishing is a form of <a\nhref=\"https://en.wikipedia.org/wiki/Social_engineering_(security)\">social\nengineering</a> where attackers deceive people into revealing sensitive\ninformation or installing malware such as <a\nhref=\"https://en.wikipedia.org/wiki/Ransomware\">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 href=\"https://en.wikipedia.org/wiki/Information_security\">What is\nInformation Security (InfoSec)?</a> Information security, sometimes\nshortened to InfoSec, is the practice of protecting information by\nmitigating <a\nhref=\"https://en.wikipedia.org/wiki/Information\">information</a> risks.\nIt is part of <a\nhref=\"https://en.wikipedia.org/wiki/Risk_management_information_systems\">information\nrisk management</a>.</li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Vulnerability_(computing)\">What is a\nVulnerability (computing)?</a> Vulnerabilities are flaws in a computer\nsystem that weaken the overall security of the device/system.\nVulnerabilities can be weaknesses in either the hardware itself, or the\nsoftware that runs on the hardware.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Attack_surface\">What is an\n\"Attack Surface\"?</a> The attack surface of a software environment is\nthe sum of the different points (for \"attack vectors\") where an\nunauthorized user (the \"attacker\") can try to enter data to or extract\ndata from an environment. Keeping the attack surface as small as\npossible is a basic security measure.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Attack_vector\">What is an\n\"Attack Vector\"?</a> In computer security, an attack vector is a\nspecific path, method, or scenario that can be exploited to break into\nan IT system, thus compromising its security. The term was derived from\nthe corresponding notion of vector in biology. An attack vector may be\nexploited manually, automatically, or through a combination of manual\nand automatic activity.</li>\n</ul></li>\n</ul>\n',391,0,0,'CC-BY-SA','US Marshals Service Ransomware, Netwire Malware, US Lawmakers Data Breach, Independent Living System',0,0,1),
(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/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/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 EU’s <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\">FSFE’s 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 didn’t\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 it’s billed as “A faster way to navigate your\nfilesystem”.</p>\n<p>It’s 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 it’s possible\nto download it with <code>curl</code> and pipe it to Bash. I’m never\ncomfortable doing this, but that’s your choice.</p>\n<p>I also installed <code>fzf</code> from the Debian Testing repo,\nthough I’m still learning what this can do, since it’s 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 aliases and\nsome commands which are fed into <code>eval</code> and executed in the\ncurrent context.</p>\n<p>Function <code>z</code> is created which gives a way of invoking\n<code>zoxide</code> in fewer keystrokes, though the full functionality\nof <code>zoxide</code> is not available through this function, use the\nfull <code>zoxide</code> command.</p>\n<p>Function <code>zi</code> lists all of the stored directories courtesy\nof <code>fzf</code>. I haven’t tested this without <code>fzf</code>, so\nI’m not sure what it does if it’s not available. The scrollable list can\nbe navigated and a directory chosen with the <code>Enter</code> key (or\ndouble mouse click). In the scrollable list, if characters are typed\nthey are used to select directories from the list, so that it’s simple\nto find a directory whose exact name you have forgotten.</p>\n<h3 id=\"how-to-tune-it\">How to tune it?</h3>\n<p>The <code>zoxide</code> behaviour can be modified through environment\nvariables (and at setup time).</p>\n<p>For example it is possible to define directories which are not to be\nstored using the environment variable <code>_ZO_EXCLUDE_DIRS</code>.\nThis must be done before running <code>zoxide init</code>. In my case, I\nhave the following in my <code>~/.bashrc</code>:</p>\n<pre><code>export _ZO_EXCLUDE_DIRS=&quot;/media/extras:/media/extras/*&quot;\neval &quot;$(zoxide init bash)&quot;</code></pre>\n<p>The setup details are to be found in the GitHub documentation.</p>\n<h2 id=\"conclusion\">Conclusion</h2>\n<p>I really like this. It’s fast and configurable, and with\n<code>fzf</code> gives some great command-line features. There are\neditor plugins, such as <code>zoxide.vim</code> for Vim and Neovim (not\nused yet). It also integrates with other third-party tools.</p>\n<p>It seems to be the best of its type!</p>\n<h2 id=\"links\">Links</h2>\n<ul>\n<li>HPR show <a\nhref=\"https://hackerpublicradio.org/eps.php?id=1843\">“hpr1843 :: Some\nBash tips”</a> covers <code>pushd</code>, <code>popd</code> and\n<code>dirs</code>.</li>\n<li><a href=\"https://github.com/ajeetdsouza/zoxide\"><code>zoxide</code>\nGitHub page</a></li>\n<li><a href=\"https://github.com/junegunn/fzf\"><code>fzf</code> GitHub\npage</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Frecency\">Wikipedia page on\nthe word <em>frecency</em></a></li>\n<li><a href=\"https://github.com/rupa/z\">The <code>\'z\'</code> tool on\nGitHub</a></li>\n<li><a href=\"https://github.com/wting/autojump\">The\n<code>\'autojump\'</code> tool on GitHub</a></li>\n</ul>\n<section class=\"footnotes footnotes-end-of-document\"\nrole=\"doc-endnotes\">\n<hr />\n<ol>\n<li id=\"fn1\" role=\"doc-endnote\"><p>I didn’t know what <code>\'z\'</code>\nwas when recording the audio. I did some research and found it, and can\nsee how <code>\'zoxide\'</code> has similar behaviour. I have added a link\nin case you want to investigate this yourself.<a href=\"#fnref1\"\nclass=\"footnote-back\" role=\"doc-backlink\">↩︎</a></p></li>\n</ol>\n</section>\n</article>\n',225,11,1,'CC-BY-SA','directory,folder,change directory,cd,zoxide,autojump',0,0,1),
(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 original\nLemmings installed! But I have no idea how to refurbish them into a\nbootable state. Do you have ideas?</p>\n<p>I\'m sharing <a href=\"https://jaenis.ch/\">my homepage</a> as well as\n<a href=\"mailto:andre.jaenisch.wdc@posteo.net\">my e-mail address</a> in\nthe show notes. I would really love to hear back from you.</p>\n<p>I feel like I already touched on different ideas today, but looking\nat the time the recording is rather short. Personally I can tune into\nepisodes up to 30 minutes best, so I will try to respect this threshold\nmyself.</p>\n',419,0,0,'CC-BY-SA','introduction',0,0,1),
(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','What’s 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/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/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/hpr3842/03.jpeg\"\nalt=\"Picture 3: Essentials clips\" /></p>\n<p><strong>Picture 4</strong><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3842/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/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_Lifeboat_Institution_lifeboats\">Wikipedia\narticle about the RNLI (Royal National Lifeboat Institution)</a></p>\n<p>[8:50] - I mention a plastic bag clip &#x2013; 08:50. <a\nhref=\"https://www.amazon.co.uk/Bag-Clips-Food-Storage-Assorted/dp/B092R2VN52/ref=sr_1_31?crid=2L2OIOC08Z1E1&amp;keywords=clips&amp;qid=1673792003&amp;sprefix=clips%2Caps%2C127&amp;sr=8-31&amp;th=1\">Link\nto similar plastic bag clip on Amazon</a></p>\n<p>[8:55] - I mention a rubber band. <a\nhref=\"https://en.wikipedia.org/wiki/Rubber_band\">Link to rubber band\narticle on Wikipedia</a></p>\n<p>[9:10] - I mention a silica gel pouch I found in my work bag. Refer\nto picture 06.<br />\n<a href=\"https://en.wikipedia.org/wiki/Silica_gel\">Link to Silica Gel\narticle on Wikipedia.</a></p>\n<p><strong>Picture 6</strong><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3842/hpr3842/06.jpeg\"\nalt=\"Picture 6: silica gel pouch\" /></p>\n<p>[9:40] - I mention a squishy ear defender. Refer to picture 07 <a\nhref=\"https://en.wikipedia.org/wiki/Earplug\">Link to Wikipedia article\nabout ear plugs</a></p>\n<p><strong>Picture 7</strong><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3842/hpr3842/07.jpeg\"\nalt=\"Picture 7: ear defenders\" /></p>\n<p>[10:20] - I mention that I carry Ain Stein 0.7 HB Pencil lead in my\nbag. <a\nhref=\"https://www.amazon.co.uk/gp/product/B005I4ESPG/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&amp;th=1\">Link\nto Ain Stein 0.7mm HB Pentel pencil leads on Amazon.</a></p>\n<p>[10:50] &#x2013; I mention that I carry a four colour Bic pen. <a\nhref=\"https://www.amazon.co.uk/Colours-Original-Ballpoint-Medium-Point/dp/B0006SVBO0/ref=sr_1_20?crid=1258A0SDJBLLR&amp;keywords=big%2B4%2Bcolour%2Bpens&amp;qid=1673987433&amp;s=officeproduct&amp;sprefix=big%2B4%2B%2Coffice-products%2C107&amp;sr=1-20&amp;th=1\">Amazon\nlink to Bic four coloured pen</a></p>\n<p>[11:05] &#x2013; I mention that I carry a Pentel P207 propelling pencil and\nthat this is my favourite writing implement. <a\nhref=\"https://www.amazon.co.uk/Pentel-Automatic-Mechanical-Pencil-0-7/dp/B004PTORHO/ref=sr_1_6?crid=2RYTD7NQLVCWJ&amp;keywords=pentel%2Bp207&amp;qid=1673987646&amp;s=officeproduct&amp;sprefix=Pentel%2Bp%2Coffice-products%2C108&amp;sr=1-6&amp;th=1\">Amazon\nlink to Pentel P207 propelling pencil, they also offer other models with\ndifferent thicknesses of lead.</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/Pentel\">Wikipedia article\nabout the Pentel company</a></p>\n<p>[13:20] &#x2013; I mention that I carry black and white Eding 780 paint\nmarker pens. <a\nhref=\"https://www.amazon.co.uk/Edding-Fine-Bullet-Paintmarker-Pack/dp/B0031QPNWU/ref=sr_1_6_mod_primary_new?crid=ECWAF6FOD8AA&amp;keywords=edding+780&amp;qid=1673987961&amp;s=officeproduct&amp;sbo=RZvfv%2F%2FHxDF%2BO5021pAnSA%3D%3D&amp;sprefix=eding+%2Coffice-products%2C103&amp;sr=1-6\">Amazon\nlink to Eding 780 paint marker pens.</a></p>\n<p>[13:50] &#x2013; I mention that I carry a Southord C801 Lock picking set\nwhich I was given as a birthday present one year. <a\nhref=\"https://www.amazon.co.uk/C801-SouthOrd-Piece-Lock-Pick/dp/B000NW4EL6/ref=sr_1_5?keywords=southord+c801&amp;qid=1673988097&amp;sr=8-5\">Amazon\nlink to Southord C801 Lock picking set</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/Lock_picking\">Wikipedia\narticle about lock picking</a></p>\n<p>[15:35] - I mention that it is generally very easy to pick a\ncombination lock. <a\nhref=\"https://www.youtube.com/watch?v=ABKsUNitXqw\">Link to YouTube video\nexplaining how to pick a combination lock</a></p>\n<p>[16:45] I mention I had some documentation bout the Python function\nurllib.request. I was using this function to scrape text from the HPR\nsite. <a href=\"https://hackerpublicradio.org/eps.php?id=2340\">I cover\nhow I used it in my previous HPR episode HPR 2340.</a> <a\nhref=\"https://docs.python.org/3/library/urllib.request.html\">Link to\nPython documentation about urllib.request</a></p>\n<p>[17:10] I mention that I have some red coloured spot stickers that I\nhave many uses for one of which is to make it easy to see at a glance if\nthe switch that operates an outside light is turned on as without this\nit is not possible without stepping outside to check. Refer to picture\n08.</p>\n<p><strong>Picture 8</strong><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3842/hpr3842/08.jpeg\"\nalt=\"Picture 8: red coloured spot stickers\" /></p>\n<h1 id=\"second-main-compartment\">Second main compartment</h1>\n<p>[18:20] I have a Morgan foldable brolly which I occasionally use when\ncaught in the rain. Refer to picture 09</p>\n<p><strong>Picture 9</strong><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3842/hpr3842/09.jpeg\"\nalt=\"Picture 9: foldable umbrella\" /></p>\n<p>[18:30] I have a pair of foldable military ear defenders. I picked\nthem up while I was at an air show I think at Ingliston many years ago.\nRefer to pictures 10 and 11</p>\n<p><strong>Picture 10</strong><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3842/hpr3842/10.jpeg\"\nalt=\"Picture 10: ear defenders\" /></p>\n<p><strong>Picture 11</strong><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3842/hpr3842/11.jpeg\"\nalt=\"Picture 11: ear defenders\" /></p>\n<h1 id=\"third-compartment-containing-a-pile-of-keech\">Third compartment\ncontaining a pile of keech</h1>\n<p>[19:30] I mention the Scottish word Keech. <a\nhref=\"https://stooryduster.co.uk/scottish-word/keech/\">Definition of the\nScottish word Keech.</a></p>\n<p>[20:25] I found an old Unite Magazine from 2019 in my bag. <a\nhref=\"https://en.wikipedia.org/wiki/Unite_the_Union\">A Wikipedia article\nabout the Unite Union</a></p>\n<p>[20:30] I mention I found on old article from 2006 about the\npossibility of a bird flu epidemic and how to protect yourself should it\nhappen.</p>\n<p><a\nhref=\"https://en.wikipedia.org/wiki/Influenza_A_virus_subtype_H5N1\">Wikipedia\narticle about Avian influenza H5N1 commonly known as bird flu</a></p>\n<p><a href=\"https://en.wikipedia.org/wiki/New_Scientist\">Wikipedia\narticle about the magazine New Scientist</a></p>\n<p>[22:15] I mention that found a letter from my company with a\ndesignated worker heading. If required this letter was to allow me to\ndrive to work at the height of the COVID-19 pandemic. I do remember\nhaving to do this at least once and that the roads were deserted like\nsome post apocalyptic scene from a movie. Despite this I never needed to\nshow the letter to anyone.</p>\n<p>[22:55] I talk about a sketch I made a number of years ago for a\ntimber post. I was told this was needed in order to place a charging\npoint midway up my driveway. This was needed for an electric car I was\nthinking of buying. I ended up abandoning the idea as it all got too\ncomplicated. I believe things have since improved and I now wish I&#x2019;d\nbought the car is it actually went up in value!</p>\n<p>[24:00] I briefly mention a piece of paper entitled disk tidy that\ncontained various Linux commands. I think this was a number of Ideas I\nwanted to try out to tease out which directories were taking up the most\nspace on a hard drive I had. These days I either use the du command or\nsometimes ncurses command ncdu.</p>\n<p>[24:30] I talk about a pile of old documents I came across that may\nhave copyright issues so I won&#x2019;t include them in the show notes. However\nI&#x2019;ll include the following related links</p>\n<p>[24:40] The first document I found was from the from many years ago\nwith a foot note saying it was from the UN Population Division UNDE SA\nOxfam World Centre WWF giving various stats about global population,\nresource usage and carbon emissions <a\nhref=\"https://www.un.org/development/desa/pd/\">Link to UN Population\nDivision</a></p>\n<p><a\nhref=\"https://www.un.org/youthenvoy/2013/09/undesa-youth-focal-point/\">Link\nto UN DESA (Department of Economic and Social Affairs)</a></p>\n<p><a href=\"Oxfam%20https://en.wikipedia.org/wiki/Oxfam\">Wikipedia\narticle about</a></p>\n<p>[26:00] I came across an old illustration from the BBC I think from\naround 2012 which had two graphs from the UK showing the vast number of\nstaff working in the DWP (Department of Work and Pensions) to recover a\npotential small amount of fraud in the UK benefits system and comparing\nthis to the tiny number of staff they had working in the UK\'s HMRC (HM\nRevenue and Customs) that could have recovered a potentially vast amount\nof tax evasion fraud. <a\nhref=\"https://en.wikipedia.org/wiki/BBC\">Wikipedia article about the BBC\n- British Broadcasting corporation</a></p>\n<p><a\nhref=\"https://en.wikipedia.org/wiki/Department_for_Work_and_Pensions\">Wikipedia\narticle about the DWP - Department for Work and Pensions</a></p>\n<p><a\nhref=\"https://en.wikipedia.org/wiki/HM_Revenue_and_Customs\">Wikipedia\narticle about the HMRC - HM Revenue and Customs</a></p>\n<p>[27:45] I briefly mention a paper I found that mentioned peak oil. I\nfeel this is now less of a problem as there is more than enough left in\nthe ground to fry humanity. <a\nhref=\"https://en.wikipedia.org/wiki/Peak_oil\">Link to Wikipedia article\nabout peak oil.</a></p>\n<p>[27:45] I mention a Breadboard layout I found which I created to use\nwith a Digital IO add on board on one of my raspberry pi&#x2019;s. <a\nhref=\"https://archive.org/details/hpr2901?webamp=default\">Refer to my\nprevious HPR show 2901</a> <a\nhref=\"https://en.wikipedia.org/wiki/Breadboard\">Wikipedia article about\nBreadboards</a></p>\n<h1 id=\"last-compartment-of-bag-main-area\">Last compartment of bag &#x2013;\nmain area</h1>\n<p>[28:50] I mention that I carry a bottle of water to work. The bottle\nis a stainless steel water bottle that is double walled vacuum\ninsulated. It can hold &#x200E;500 Millilitres of liquid. It claims to be able\nto keep liquids cool for 24 Hours. I\'ve been very impressed with it as\nit seems to be able to keep the water cool for the whole day I am at\nwork. <a\nhref=\"https://www.amazon.co.uk/SHO-Bottle-Ultimate-Insulated-Stainless/dp/B07HVXJ16Y/ref=sr_1_1_sspa?crid=32TUHWPAC52JX&amp;keywords=water%2Bbottles%2Bsho&amp;qid=1681055737&amp;sprefix=water%2Bbottles%2BSHO%2Caps%2C106&amp;sr=8-1-spons&amp;sp_csd=d2lkZ2V0TmFtZT1zcF9hdGY&amp;th=1&amp;psc=1\">Amazon\nlink to water bottle</a></p>\n<p>[29:00] I mention that I carry a roll of masking tape. This comes in\nhandy for all sorts of situations. Often to create ad-hoc labels for <a\nhref=\"https://en.wikipedia.org/wiki/Masking_tape\">things. Wikipedia\narticle about masking tape</a></p>\n<p>[29:05] I mention that the skin on my hands can get very dry\nespecially when I&#x2019;m at the office due to it having low humidity. I use\nNutrogena hand cream to combat this. <a\nhref=\"https://www.amazon.co.uk/Neutrogena-Norwegian-Formula-Unscented-Cream/dp/B0006SQ9CE/ref=sr_1_1_sspa?crid=1LPK7XUM1RT4S&amp;keywords=neutrogena+hand+cream&amp;qid=1675533812&amp;rdc=1&amp;sprefix=neutrogena+han%2Caps%2C85&amp;sr=8-1-spons&amp;sp_csd=d2lkZ2V0TmFtZT1zcF9hdGY&amp;psc=1\">Amazon\nlink to Nutrogena hand cream</a></p>\n<p>[29:42] I mention that I carry a stapler which comes in handy from\ntime to time. Refer to picture 12. <a\nhref=\"https://en.wikipedia.org/wiki/Stapler\">Wikipedia article about\nstaplers</a></p>\n<p><strong>Picture 12</strong><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3842/hpr3842/12.jpeg\"\nalt=\"Picture 12: stapler\" /></p>\n<p>[29:50] I mention that I carry magnifying glass as my eyesight is not\nas good as it used to be. <a\nhref=\"https://en.wikipedia.org/wiki/Magnifying_glass\">Wikipedia article\nabout magnifying glasses</a></p>\n<p>[29:55] I mention that I also carry a pencil case to work. <a\nhref=\"https://en.wikipedia.org/wiki/Pencil_case\">Wikipedia article about\nthe pencil case</a></p>\n<p>[30:09] I found a Caramel Wacko chocolate bar biscuit in the bag I\ntake to work (Refer to picture 13). These are available from from Aldi.\nAldi is discount food store in the UK. <a\nhref=\"https://en.wikipedia.org/wiki/Aldi\">Wikipedia article about\nAldi</a></p>\n<p><strong>Picture 13</strong><br />\n<img src=\"https://hackerpublicradio.org/eps/hpr3842/hpr3842/13.jpeg\"\nalt=\"Picture 13: Caramel Wacko chocolate bar\" /></p>\n',201,23,1,'CC-BY-SA','Bag, Work',0,0,1),
(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/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/hpr3845/tmux_remote.conf\"\ntitle=\"Tmux remote configuration file\">tmux_remote.conf</a></p>\n<p>Screenshot</p>\n<p><a\nhref=\"https://hackerpublicradio.org/eps/hpr3845/hpr3845/Screenshot.png\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3845/hpr3845/Screenshot_tn.png\"\ntitle=\"Screenshot of Tmux window with 4 panes\"\nalt=\"Screenshot\" /></a></p>\n',318,11,0,'CC-BY-SA','tmux, terminal apps, lightweight apps',0,0,1),
(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);
INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hostid`, `series`, `explicit`, `license`, `tags`, `version`, `downloads`, `valid`) VALUES (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/en-US/kb/organize-your-messages-using-filters\"\ntitle=\"Message filters allow you to set up Thunderbird to organize your messages automatically.\">Organize\nYour Messages by Using Filters.</a><br />\n</li>\n<li><strong>Supporting Article:</strong> <a\nhref=\"https://support.mozilla.org/en-US/kb/profiles-where-thunderbird-stores-user-data#w_finding-your-profile-without-opening-thunderbird\"\ntitle=\"How do I find my profile?\">Profiles. Where Thunderbird stores\nyour messages and other user data.</a><br />\n</li>\n</ul></li>\n<li><strong>Article:</strong> <a\nhref=\"https://medium.com/vim-drops/vim-sessions-50756b2c603a\"\ntitle=\"Vim&#x2019;s sessions, a tool to instantly save the state of everything in your current Vim session.\">Vim&#x2019;s\nsessions, a tool to instantly save the state of everything in your\ncurrent Vim session.</a><br />\n</li>\n</ul>\n<h3 id=\"creative-work-license.\">Creative work License.</h3>\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, Vim, Email Filters',0,0,1),
(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 applications of ChatGPT. Share examples of how ChatGPT can\nbe used and include relevant web links for listeners to learn more.</p>\n</blockquote>\n<h3 id=\"suggestions\">Suggestions:</h3>\n<ul>\n<li>Consider including information about the development of ChatGPT,\nsuch as who created it and when.</li>\n<li>Provide clear and concise examples of how ChatGPT can be used in\nvarious industries and fields, such as customer service, content\ncreation, and chatbots.</li>\n<li>Highlight the benefits and limitations of using ChatGPT, including\nits ability to learn and adapt to user inputs and the potential ethical\nconcerns surrounding its use.</li>\n<li>Provide relevant web links, such as the official OpenAI website and\narticles about the latest developments in ChatGPT technology.</li>\n</ul>\n<h3 id=\"questions\">Questions:</h3>\n<ul>\n<li>Is there a specific angle or focus you want to take in exploring the\nhistory and applications of ChatGPT?</li>\n<li>Do you have any specific examples or use cases of ChatGPT that you\nwould like to be included in the podcast episode?</li>\n<li>How technical should the podcast be? Should it cater to a more\ngeneral audience or dive into more technical details?</li>\n</ul>\n<h2 id=\"i-replied-with-the-following-prompt--1\">I replied with the\nfollowing prompt:-</h2>\n<ul>\n<li><p>Create a Hacker Public Radio podcast episode that explores the\nhistory and applications of ChatGPT. Share examples of how ChatGPT can\nbe used and include relevant web links for listeners to learn\nmore.</p></li>\n<li><p>Include information about the development of ChatGPT, such as who\ncreated it and when.</p></li>\n<li><p>Provide clear and concise examples of how ChatGPT can be used in\nvarious industries and fields, such as customer service, content\ncreation, and chatbots.</p></li>\n<li><p>Highlight the benefits and limitations of using ChatGPT,\nincluding its ability to learn and adapt to user inputs and the\npotential ethical concerns surrounding its use.</p></li>\n<li><p>Provide relevant web links, such as the official OpenAI website\nand articles about the latest developments in ChatGPT\ntechnology.</p></li>\n<li><p>The show is mainly aimed at hobbyist. Many of the listeners will\nhave Linux experience and IT experience. Some listeners may have some\nprogramming experience.</p></li>\n<li><p>The article should cater for both a general audience while also\ndiving into more technical details.</p></li>\n<li><p>Format the article using markdown as required.</p></li>\n</ul>\n<h2 id=\"chatgpt-responded-with--2\">ChatGPT responded with:-</h2>\n<h3 id=\"revised-prompt-1\">Revised prompt:</h3>\n<blockquote>\n<p>Create a Hacker Public Radio podcast episode exploring the history\nand applications of ChatGPT, an artificial intelligence language model\ndeveloped by OpenAI. ChatGPT has become increasingly popular due to its\nability to understand and generate human-like text, and its applications\nspan a wide range of industries and fields.</p>\n<p>In this episode, we will dive into the development of ChatGPT,\nincluding who created it and when. We will explore the technology behind\nit and how it has evolved over time.</p>\n</blockquote>\n<blockquote>\n<p>We will also provide clear and concise examples of how ChatGPT can be\nused in various industries and fields, such as customer service, content\ncreation, and chatbots. For example, ChatGPT can be used to generate\npersonalized responses to customer inquiries in real-time, create\nhigh-quality content for websites and social media platforms, and power\nchatbots that can assist with a range of tasks.</p>\n<p>Additionally, we will highlight the benefits and limitations of using\nChatGPT, including its ability to learn and adapt to user inputs and the\npotential ethical concerns surrounding its use. As ChatGPT continues to\ngrow in popularity, it is important to consider the implications of\nusing AI technology that can generate human-like text, such as the\npotential for bias and misinformation.</p>\n<p>To provide listeners with more information, we will include relevant\nweb links, such as the official OpenAI website and articles about the\nlatest developments in ChatGPT technology.</p>\n<p>This episode will cater to a general audience while also diving into\nmore technical details for listeners with Linux, IT, or programming\nexperience. The article will be formatted using markdown as\nrequired.</p>\n</blockquote>\n<h3 id=\"suggestions-1\">Suggestions:</h3>\n<ul>\n<li>Consider including interviews with experts in the field of AI or\nindividuals who have used ChatGPT in their work.</li>\n<li>Provide real-world examples of how ChatGPT has been used in various\nindustries and fields.</li>\n<li>Discuss the potential future applications of ChatGPT and where the\ntechnology may be headed.</li>\n<li>Address any common misconceptions or concerns about the use of AI\nlanguage models like ChatGPT.</li>\n</ul>\n<h3 id=\"questions-1\">Questions:</h3>\n<ul>\n<li>Is there a specific length you would like the podcast episode to\nbe?</li>\n<li>Are there any specific individuals or companies you would like us to\nfeature in the episode?</li>\n<li>Is there any particular tone or style you would like us to use for\nthe podcast episode?</li>\n</ul>\n<hr />\n<ul>\n<li><p>I stopped at this point and decided not to take on board any\nfurther suggestions or refinements. As I mentioned at the beginning this\nwhole process probably took no longer than 10mins.</p></li>\n<li><p>I will provide the show generated by ChatGPT in my next\nepisode.</p></li>\n</ul>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><p><a href=\"https://en.wikipedia.org/wiki/ChatGPT\">Wikipedia article\ncovering ChatGPT</a></p></li>\n<li><p><a href=\"https://chatgpt.org/\">Link to the official ChatGPT\nwebsite</a></p></li>\n<li><p><a href=\"https://youtu.be/C_78DM8fG6E\">Interesting TED talk that\nincludes the inside story of ChatGPT by Greg Brockman</a></p></li>\n</ul>\n<!--\nvim: syntax=markdown:ts=4:sw=4:tw=0:et:ai:\n-->\n',201,0,1,'CC-BY-SA','ChatGPT,AI,\"Artificial Inelegance\"',0,0,1),
(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 id=\"history-of-chat-gpt\">History of Chat GPT</h2>\n<p>Chat GPT was first introduced in 2018 by OpenAI. It is part of a\nseries of AI language models known as the GPT series, with \"GPT\"\nstanding for \"Generative Pre-trained Transformer.\" Chat GPT was\ndeveloped using a deep learning technique called a transformer neural\nnetwork, which allows it to process large amounts of text and generate\ncoherent responses.</p>\n<h2 id=\"applications-of-chat-gpt\">Applications of Chat GPT</h2>\n<h3 id=\"customer-service\">Customer Service</h3>\n<p>Chat GPT can be used to generate personalized responses to customer\ninquiries in real-time. This can save companies time and money by\nautomating the customer service process. Chat GPT can also learn from\nprevious interactions to improve its responses over time.</p>\n<h3 id=\"content-creation\">Content Creation</h3>\n<p>Chat GPT can create high-quality content for websites and social\nmedia platforms. For example, it can be used to write product\ndescriptions, social media posts, and even entire articles.</p>\n<h3 id=\"chatbots\">Chatbots</h3>\n<p>Chat GPT can power chatbots that can assist with a range of tasks.\nFor example, it can be used to schedule appointments, answer common\nquestions, and even provide emotional support.</p>\n<h2 id=\"benefits-and-limitations-of-chat-gpt\">Benefits and Limitations\nof Chat GPT</h2>\n<h3 id=\"benefits\">Benefits</h3>\n<p>One of the main benefits of Chat GPT is its ability to learn and\nadapt to user inputs. This allows it to generate personalized responses\nthat are tailored to each individual user. Chat GPT can also process\nlarge amounts of text quickly, making it a useful tool for companies\nthat need to generate a lot of content.</p>\n<h3 id=\"limitations\">Limitations</h3>\n<p>However, there are also some limitations to using Chat GPT. One\npotential concern is the potential for bias and misinformation. Since\nChat GPT learns from existing text, it may pick up biases or\ninaccuracies that exist in the data it is trained on. Additionally,\nthere is a risk that Chat GPT may generate inappropriate or offensive\nresponses if it is not properly monitored.</p>\n<h2 id=\"future-applications-of-chat-gpt\">Future Applications of Chat\nGPT</h2>\n<p>Chat GPT has already been used in a variety of industries and fields,\nbut there is still a lot of potential for future applications. For\nexample, it could be used to power virtual assistants that are even more\nintelligent and personalized than current offerings. It could also be\nused to generate more sophisticated chatbots that can assist with\ncomplex tasks.</p>\n<h2 id=\"common-misconceptions-and-concerns\">Common Misconceptions and\nConcerns</h2>\n<p>One common misconception about Chat GPT is that it is a threat to\nhuman jobs. While it is true that Chat GPT can automate certain tasks,\nit is unlikely to replace humans entirely. Instead, it is more likely to\naugment human abilities and make certain tasks more efficient.</p>\n<p>Another concern is the ethical implications of using AI language\nmodels like Chat GPT. It is important to ensure that the data used to\ntrain Chat GPT is diverse and free of biases. Additionally, it is\nimportant to ensure that Chat GPT is used responsibly and not used to\nspread misinformation or harm individuals.</p>\n<h2 id=\"conclusion\">Conclusion</h2>\n<p>Chat GPT is a powerful tool that has the potential to revolutionize\ncustomer service, content creation, and chatbots. While there are some\nlimitations and concerns associated with its use, the benefits of using\nChat GPT are clear. As the technology continues to evolve, it is\nimportant to consider the ethical implications and ensure that it is\nused responsibly.</p>\n<p><a href=\"https://openai\">For more information on Chat GPT, visit the\nofficial OpenAI website at https://openai</a></p>\n',201,0,1,'CC-BY-SA','ChatGPT, AI, Artificial Inelegance',0,0,1),
(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, through the pipes which pass through the boiler, increasing the efficiency of the heating of the water.  The same partial vacuum is also used to increase the draft of air into the furnace.</p>\n\n<p>It is mostly the rush of clean air into the furnace, drawn by the partial vacuum, which gives rise to the deep and pleasing heart-beat of a big powerful engine as it works hard to move a heavy train from a standing start.</p>\n\n<p>Mike</p>\n\n',282,0,0,'CC-BY-SA','steam, condensing, vacuum, demonstrate, experiment',0,0,1),
(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/hpr3849/01.kernel_message.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3849/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/hpr3849/02.bios_message.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3849/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/hpr3849/03.cmos.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3849/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/hpr3849/04.ram.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3849/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/hpr3849/05.mother_board_side.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3849/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/hpr3849/06.the_culprit.jpg\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3849/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',6555,'HPR Volunteers talk about shows released and comments posted in May 2024','<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/0431.html\" target=\"_blank\">Moss Bliss</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/hpr4108/index.html\" target=\"_blank\">4108</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-05-01</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4108/index.html\" target=\"_blank\">What\'s in my bag</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0297.html\" target=\"_blank\">swift110</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4109/index.html\" target=\"_blank\">4109</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-05-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4109/index.html\" target=\"_blank\">The future of HPR </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/hpr4110/index.html\" target=\"_blank\">4110</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-05-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4110/index.html\" target=\"_blank\">Playing Civilization III, 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 href=\"https://hackerpublicradio.org/eps/hpr4111/index.html\" target=\"_blank\">4111</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-05-06</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4111/index.html\" target=\"_blank\">HPR Community News for April 2024</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/hpr4112/index.html\" target=\"_blank\">4112</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-05-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4112/index.html\" target=\"_blank\">JSON and VENDORS and AUTH ohh my!</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/hpr4113/index.html\" target=\"_blank\">4113</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-05-08</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4113/index.html\" target=\"_blank\">Today I Learnt, sed hold/pattern space use.</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/hpr4114/index.html\" target=\"_blank\">4114</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-05-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4114/index.html\" target=\"_blank\">Introduction to jq - part 2</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/hpr4115/index.html\" target=\"_blank\">4115</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-05-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4115/index.html\" target=\"_blank\">Tagging music with Beets</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/hpr4116/index.html\" target=\"_blank\">4116</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-05-13</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4116/index.html\" target=\"_blank\">Response to 4109: Building community without SEO</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0424.html\" target=\"_blank\">hobs</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4117/index.html\" target=\"_blank\">4117</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-05-14</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4117/index.html\" target=\"_blank\">JAMBOREE !</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/hpr4118/index.html\" target=\"_blank\">4118</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-05-15</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4118/index.html\" target=\"_blank\">Toil versus Livelihood</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/hpr4119/index.html\" target=\"_blank\">4119</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-05-16</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4119/index.html\" target=\"_blank\">Cov\'s Jams 003</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0322.html\" target=\"_blank\">Cov</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4120/index.html\" target=\"_blank\">4120</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-05-17</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4120/index.html\" target=\"_blank\">South Carolina to Home</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/hpr4121/index.html\" target=\"_blank\">4121</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-05-20</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4121/index.html\" target=\"_blank\">RODE wireless microphones</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0315.html\" target=\"_blank\">Clinton Roy</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4122/index.html\" target=\"_blank\">4122</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-05-21</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4122/index.html\" target=\"_blank\">The Conference for Creative Use of the Radio Spectrum in Open Systems</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/hpr4123/index.html\" target=\"_blank\">4123</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-05-22</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4123/index.html\" target=\"_blank\">KeepassXC Update</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/hpr4124/index.html\" target=\"_blank\">4124</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-05-23</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4124/index.html\" target=\"_blank\">Developing a project</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0403.html\" target=\"_blank\">Lee</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4125/index.html\" target=\"_blank\">4125</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-05-24</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4125/index.html\" target=\"_blank\">Installing Home Assistant Operating System (HAOS), on a x86-64 machine</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/hpr4126/index.html\" target=\"_blank\">4126</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-05-27</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4126/index.html\" target=\"_blank\">Podcasting for Newbies</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0431.html\" target=\"_blank\">Moss Bliss</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4127/index.html\" target=\"_blank\">4127</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-05-28</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4127/index.html\" target=\"_blank\">Retro fun with the GPi 2 cases</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0296.html\" target=\"_blank\">Kevie</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4128/index.html\" target=\"_blank\">4128</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-05-29</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4128/index.html\" target=\"_blank\">30 years of the internet</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/hpr4129/index.html\" target=\"_blank\">4129</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-05-30</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4129/index.html\" target=\"_blank\">How I found Hacker Public Radio</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0429.html\" target=\"_blank\">Henrik Hemrin</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4130/index.html\" target=\"_blank\">4130</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-05-31</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4130/index.html\" target=\"_blank\">Playing Civilization III, Part 3</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0198.html\" target=\"_blank\">Ahuka</a></td>\n</tr>\n</table>\n\n<h2>Comments this month</h2>\n\n<p>These are comments which have been made during the past month, either to shows released during the month or to past shows.\nThere are 25 comments in total.</p>\n<h3>Past shows</h3>\n<p>There is 1 comment on\n1 previous show:</p>\n<ul>\n<li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4087/index.html#comments\" target=\"_blank\">hpr4087</a></strong>\n(2024-04-02) \"<em>Getting started with the digiKam photo management software</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0429.html\" target=\"_blank\">Henrik Hemrin</a>.<br/>\n<li style=\"list-style: none; display: inline\">\n<ul>\n<li>\n<a href=\"https://hackerpublicradio.org/eps/hpr4087/index.html#1\" target=\"_blank\">Comment 1</a>:\nHenrik Hemrin on 2024-05-13:\n\"Good support from digiKam developers and community\"</li></ul><br/>\n</limage></ul>\n<h3>This month\'s shows</h3>\n<p>There are 24 comments on 7 of this month\'s shows:</p>\n<ul><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4109/index.html#comments\" target=\"_blank\">hpr4109</a></strong>\n(2024-05-02) \"<em>The future of HPR </em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0111.html\" target=\"_blank\">knightwise</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4109/index.html#1\" target=\"_blank\">Comment 1</a>:\nDirk on 2024-05-02:\n\"The future about HPR\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4109/index.html#2\" target=\"_blank\">Comment 2</a>:\nKen Fallon on 2024-05-02:\n\"Thanks for volunteering\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4109/index.html#3\" target=\"_blank\">Comment 3</a>:\nKnightwise on 2024-05-04:\n\"Alt Hoeselt Calling :)\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4109/index.html#4\" target=\"_blank\">Comment 4</a>:\nknightwise on 2024-05-04:\n\"Hacker Public Radio as \"brown noise?\"\n\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4109/index.html#5\" target=\"_blank\">Comment 5</a>:\nmpardo on 2024-05-04:\n\"Interesting episode\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4109/index.html#6\" target=\"_blank\">Comment 6</a>:\nenistello on 2024-05-05:\n\"The future of HPR\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4109/index.html#7\" target=\"_blank\">Comment 7</a>:\nKen Fallon on 2024-05-06:\n\"Active for a given value of active.\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4109/index.html#8\" target=\"_blank\">Comment 8</a>:\nKen Fallon on 2024-05-06:\n\"On proprietary platforms\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4112/index.html#comments\" target=\"_blank\">hpr4112</a></strong>\n(2024-05-07) \"<em>JSON and VENDORS and AUTH ohh my!</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0036.html\" target=\"_blank\">operat0r</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4112/index.html#1\" target=\"_blank\">Comment 1</a>:\nKen Fallon on 2024-05-31:\n\"The answer is always jq\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4115/index.html#comments\" target=\"_blank\">hpr4115</a></strong>\n(2024-05-10) \"<em>Tagging music with Beets</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4115/index.html#1\" target=\"_blank\">Comment 1</a>:\nkdmurray on 2024-05-16:\n\"Just what the doctor ordered\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4116/index.html#comments\" target=\"_blank\">hpr4116</a></strong>\n(2024-05-13) \"<em>Response to 4109: Building community without SEO</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0424.html\" target=\"_blank\">hobs</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4116/index.html#1\" target=\"_blank\">Comment 1</a>:\nKnightwise on 2024-05-13:\n\"Just a small correction.\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4116/index.html#2\" target=\"_blank\">Comment 2</a>:\nkdmurray on 2024-05-13:\n\"Ok but...\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4116/index.html#3\" target=\"_blank\">Comment 3</a>:\nKen Fallon on 2024-05-15:\n\"Actual Actions ?\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4116/index.html#4\" target=\"_blank\">Comment 4</a>:\nknightwise on 2024-05-17:\n\"Low hanging fruit\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4116/index.html#5\" target=\"_blank\">Comment 5</a>:\nnorrist on 2024-05-19:\n\"Mastodon Comments\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4118/index.html#comments\" target=\"_blank\">hpr4118</a></strong>\n(2024-05-15) \"<em>Toil versus Livelihood</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4118/index.html#1\" target=\"_blank\">Comment 1</a>:\nBob on 2024-05-15:\n\"We want free time but what we get is more less paid toil\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4118/index.html#2\" target=\"_blank\">Comment 2</a>:\nkdmurray on 2024-05-16:\n\"Deep Thought\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4118/index.html#3\" target=\"_blank\">Comment 3</a>:\nKevin O&#39;Brien on 2024-05-18:\n\"Bravo!\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4118/index.html#4\" target=\"_blank\">Comment 4</a>:\nLaindir on 2024-05-20:\n\"Half the problem\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4118/index.html#5\" target=\"_blank\">Comment 5</a>:\ndnt on 2024-05-21:\n\"Re: Laindir\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4118/index.html#6\" target=\"_blank\">Comment 6</a>:\ndnt on 2024-05-21:\n\"Re: kdmurray\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4124/index.html#comments\" target=\"_blank\">hpr4124</a></strong>\n(2024-05-23) \"<em>Developing a project</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0403.html\" target=\"_blank\">Lee</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4124/index.html#1\" target=\"_blank\">Comment 1</a>:\nTrey on 2024-05-23:\n\"Not now... another time.\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4124/index.html#2\" target=\"_blank\">Comment 2</a>:\ndnt on 2024-05-25:\n\"projects\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4128/index.html#comments\" target=\"_blank\">hpr4128</a></strong>\n(2024-05-29) \"<em>30 years of the internet</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0111.html\" target=\"_blank\">knightwise</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4128/index.html#1\" target=\"_blank\">Comment 1</a>:\nzen_floater on 2024-05-30:\n\"WVDiAL\"</li></ul><br/>\n</li></ul>\n\n<h2>Mailing List discussions</h2>\n<p>\nPolicy decisions surrounding HPR are taken by the community as a whole. This\ndiscussion takes place on the <a href=\"https://hackerpublicradio.org/maillist\"\ntarget=\"_blank\">Mail List</a> which is open to all HPR listeners and\ncontributors. The discussions are open and available on the HPR server under\n<a href=\"https://lists.hackerpublicradio.com/pipermail/hpr\">Mailman</a>.\n</p>\n<p>The threaded discussions this month can be found here:</p>\n<a href=\"https://lists.hackerpublicradio.com/pipermail/hpr/2024-May/thread.html\" target=\"_blank\">https://lists.hackerpublicradio.com/pipermail/hpr/2024-May/thread.html</a>\n\n\n<h2>Events Calendar</h2>\n<p>With the kind permission of <strong>LWN.net</strong> we are linking to\n<a href=\"https://lwn.net/Calendar/\" target=\"_blank\">The LWN.net Community Calendar</a>.</p>\n<p>Quoting the site:</p>\n<blockquote>This is the LWN.net community event calendar, where we track\nevents of interest to people using and developing Linux and free software.\nClicking on individual events will take you to the appropriate web\npage.</blockquote>\n\n<h2>Any other business</h2>\n<h3 id=\"proposed-policy-change\">Proposed policy change</h3>\n<ul>\n<li>In the past month we were asked to remove a show that had been added\nto the database, and uploaded to archive.org. This was done, but:\n<ul>\n<li>The amount of work to do this type of change is not trivial.</li>\n<li>It\'s not possible to remove archive.org items, only to remove their\ncontents and replace them with whatever comes from the replacement\nshow.</li>\n<li>The processes involved in this deletion and replacement are not\ncomplex but are somewhat labour-intensive.</li>\n<li>There are ramifications into existing feeds (podcast players cache\nepisode details and do not replace them, etc).</li>\n</ul></li>\n<li>It is proposed that the policy be changed to discourage this, except\nin severe cases - perhaps those with copyright or other legal\nconsequences. Obviously, we normally take great care that incoming shows\nare unlikely to trigger such problems in the first place.</li>\n</ul>\n<h3 id=\"the-future-feed\">The Future Feed</h3>\n<ul>\n<li><p>There is a feed which is normally referred to as the <a\nhref=\"https://hackerpublicradio.org/rss-future.php\">\"Future Feed\"</a>,\nwhich can be found on the <a\nhref=\"https://hackerpublicradio.org/syndication.html\">RSS Syndication\npage</a>. It receives shows which are posted out of order as they come\nin and may be replaced/reposted if errors are found. This is intended as\na means to find issues with metadata or the audio quality of new shows\nbefore they hit the main feed.</p></li>\n<li><p>Recently a show was posted to this feed which was truncated.\nUnfortunately, although the Janitors and a number or listeners follow\nthis feed, this truncation was not spotted until the show was\nreleased.</p></li>\n<li><p>It would be much appreciated if you could assist with watching <a\nhref=\"https://hackerpublicradio.org/rss-future.php\">this feed</a> for\nerrors in the future. Please contact the Janitors if you notice\nanything.</p></li>\n</ul>\n<h3 id=\"janitorial-team\">Janitorial Team</h3>\n<ul>\n<li>We have had some recent contributions to the development of the HPR\nsoftware from <code>norrist</code> and <code>kdmurray</code>. We also\nadded them to the \"HPR Janitor\'s Closet\" on Matrix to speed up\ndiscussions about open tickets. If anyone else wishes to help out with\nthe development please do so by creating an account on our <a\nhref=\"https://repo.anhonesthost.net/\">Gitea server</a>.</li>\n</ul>\n<h3 id=\"denial-of-service-attacks-on-the-internet-archive\">Denial of\nService Attacks on the Internet Archive</h3>\n<ul>\n<li><p>There have been a number of DDoS attacks on this service in the\nrecent past. Jason Scott (<code>@textfiles@mastodon.archive.org</code>),\n<em>Free-Range Archivist at the Internet Archive</em>, has been\nmentioning this on Mastodon.</p></li>\n<li><p>These attacks mean that we can sometimes be delayed when we need\nto upload shows to the IA.</p></li>\n</ul>\n<p></p>\n\n\n',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;s Office, Eastern District of Texas\">California\nMan Convicted of Health Care Kickback Conspiracy.</a><br />\n</p>\n<ul>\n<li><strong>Author:</strong> U.S. Attorney\'s Office, Eastern District of\nTexas. (2023, May 9).<br />\n</li>\n<li>According to information presented in court, Donofrio conspired with\nothers to pay and receive kickbacks in exchange for the referral of, and\narranging for, health care business, specifically pharmacogenetic (PGx)\ntests. Pharmacogenetic testing, also known as pharmacogenomic testing,\nis a type of genetic testing that identifies genetic variations that\naffect how an individual patient metabolizes certain drugs. The illegal\narrangement concerned the referral of PGx tests to clinical laboratories\nin Fountain Valley, California; Irvine, California; and San Diego,\nCalifornia. More than $28 million in illegal kickback payments were\nexchanged by those involved in the conspiracy.<br />\n</li>\n</ul></li>\n</ul>\n<hr />\n<ul>\n<li><strong>License:</strong> <a\nhref=\"https://creativecommons.org/licenses/by-sa/4.0/legalcode\">Creative\nCommons Attribution-ShareAlike 4.0 International</a><br />\n<a rel=\"license\" href=\"http://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\nwork is licensed under a\n<a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\">Creative\nCommons Attribution-ShareAlike 4.0 International License</a>.</li>\n</ul>\n',391,0,1,'CC-BY-SA','Fraud, identity theft, murder, crime, conspiracy',0,0,1),
(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 majority of Vimperator\'s features. Control your\nbrowser<br />\nwith your keyboard only. Replace Firefox&#x2019;s control mechanism with one\nmodelled<br />\non VIM. Most common tasks you want your browser to perform are bound to\na<br />\nsingle key press.</p>\n<h3 id=\"mobile-firefox-beta\"><em><em>Mobile Firefox Beta</em></em></h3>\n<p><a\nhref=\"https://play.google.com/store/apps/details?id=org.mozilla.firefox_beta\"\ntitle=\"Firefox Beta for Android\">Firefox Beta for Android</a></p>\n<p><a href=\"https://addons.mozilla.org/en-US/firefox\"\ntitle=\"Firefox Extensions page\">Firefox Extensions page</a></p>\n<h3 id=\"mobile-plugins\">Mobile plugins</h3>\n<p><em><em>Bitwarden</em></em></p>\n<p><em><em>Dark Reader</em></em></p>\n<p><em><em>I don\'t care about cookies</em></em></p>\n<p><em><em>SponsorBlock</em></em></p>\n<p><em><em>uBlock Origin</em></em></p>\n<p><em><em>Adjust Playback Speed (Youtube Playback Speed)</em></em></p>\n<p><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/youtube-playback-speed\"\ntitle=\"Firefox extension to change playback speed\">Firefox extension to\nchange playback speed</a></p>\n<p><a\nhref=\"https://hackerpublicradio.org/eps/hpr3862/hpr3862/Screenshot_20230512-203233-900.png\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3862/hpr3862/Screenshot_20230512-203233-900_tn.png\"\ntitle=\"Example of changing Youtube playback speed\"\nalt=\"Example of changing Youtube playback speed\" /></a></p>\n<p><em><em>Video Background Play Fix</em></em></p>\n<p><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/video-background-play-fix\"\ntitle=\"Firefox extension to fix background playback on mobile\">Firefox\nextension to fix background playback on mobile</a></p>\n<ul>\n<li>Works on Youtube and Invidious\n<ul>\n<li>https://invidious.nerdvpn.de</li>\n<li>https://docs.invidious.io/instances</li>\n</ul></li>\n</ul>\n<p><a\nhref=\"https://hackerpublicradio.org/eps/hpr3862/hpr3862/Screenshot_20230512-203159-556.png\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3862/hpr3862/Screenshot_20230512-203159-556_tn.png\"\ntitle=\"Mobile plugins screenshot\"\nalt=\"Mobile plugins screenshot\" /></a></p>\n<h4 id=\"example\">Example</h4>\n<p><em><em>Adding an extension to a collection</em></em></p>\n<p><a\nhref=\"https://hackerpublicradio.org/eps/hpr3862/hpr3862/Screenshot_from_2023-05-12_10-21-19.png\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3862/hpr3862/Screenshot_from_2023-05-12_10-21-19_tn.png\"\ntitle=\"Adding an extension to a collection\"\nalt=\"Adding an extension to a collection\" /></a></p>\n<p><a\nhref=\"https://addons.mozilla.org/en-US/firefox/addon/simple-translate\"\ntitle=\"Firefox extension to provide language translation\">Firefox\nextension to provide language translation</a></p>\n<p><a\nhref=\"https://hackerpublicradio.org/eps/hpr3862/hpr3862/Screenshot_20230512-203051-774.png\"><img\nsrc=\"https://hackerpublicradio.org/eps/hpr3862/hpr3862/Screenshot_20230512-203051-774_tn.png\"\ntitle=\"Example to add an extension to mobile\"\nalt=\"Example of adding an extension on mobile\" /></a></p>\n',318,0,0,'CC-BY-SA','Firefox, Extensions, Mobile, Android, Privacy, vim',0,0,1),
(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 the recording. I learned from my talks that I already\nfeel comfortable with a script in front of me. It gives me the security\nI need to avoid too many ums.</p>\n<h2 id=\"whats-missing-on-hpr\">What\'s missing on HPR</h2>\n<p>However, I feel like a few things are missing. Considering that this\nis a podcast that is distributed through HPR and its partners I would\nlike to have chapter markers. I couldn\'t find a hint on how to add them\nin the form I was presented. Using timestamps it allows to easily see\nthe outline of a recording which aids in the decision making process on\nwhether it\'s worth the time to listen to a particular episode. I hope\nyou consider the episodes here useful to make time for them :) Thank\nyou.</p>\n<p>Another question mark I had when preparing the recording were the\nsettings. I\'m used to have a guideline when recording videos for an\nonline talk. Things like preferred format and container, to technical\ndetails like stereo or mono to the sampling rate (value and whether\nstatic or variable). The only thing I found is a hint that submissions\nwill be transcoded to mono. I record in stereo with the default 44,1 kHz\nsampling rate here. There was no recommendations on the format so I went\nwith OGG Vorbis instead of MP3 because of license freedom. Audacity\nappear to not support FLAC so I have to use a lossy format. It\'s true\nthat MP3 enjoys wide support, but I want to encourage freedom when given\nthe choice. I could have chosen WAV files but those tend to become huge\nreally fast.</p>\n<h2 id=\"adding-metadata\">Adding metadata</h2>\n<p>Now I also add metadata to the recording. Vorbis offers comments for\nthat. You can compare it to ID3 tags for MP3 files. Given that I\ncouldn\'t find a way to enter these chapter information in HPR web forms\nI\'m experimenting with EasyTAG from the debian repository. From reading\nthe source code of my podcatcher of choice (AntennaPod for Android as\ndistributed in the F-Droid app store) I can tell that it parses these\ncomments at least. If that doesn\'t yield results I hope to see, there is\nvorbiscomment of the vorbis-tools package for the command line. And Kid3\nwith a Qt or CLI interface. Expect some slightly different metadata by\nme over the course of my contributions.</p>\n<h3 id=\"writing-shownotes\">Writing shownotes</h3>\n<p>Last thing I want to highlight before ending this episode is\nshownotes. Now I have more experience with blogging than recording a\npodcast. When researching recommendations online there is all this SEO\nfluff that goes into writing subtitles. Usually with catchy titles,\nclickbait and all the rest. I have opinions here. However, I enjoy that\nthere is no &#x201E;leave a rating and a review&#x201D; part in the episodes I\nlistened to so far, because a podcast is a special RSS feed basically.\nWhy would I want to bind myself to a special platform? But then I also\nwant to be able to read up and search through the content of a podcast\nepisode. Right now I\'m sharing my prepared script as a shownote. It\ncould come off as a wall of text. I\'m open to feedback on this front.\nYou can find my Keyoxide profile below. Please do reach out to me.</p>\n<h2 id=\"closing\">Closing</h2>\n<p>And that\'s it for today. I thank you for listening to me. Looking\nforward to hear from you. Be it in writing or as an episode on HPR.</p>\n<p>Homepage: <a href=\"https://jaenis.ch/\">jaenis.ch</a><br />\nE-Mail: <a\nhref=\"mailto:andre.jaenisch.wdc@posteo.net\">andre.jaenisch.wdc@posteo.net</a><br />\nKeyoxide: <a\nhref=\"https://keyoxide.org/andre.jaenisch%40posteo.de\">andre.jaenisch@posteo.de</a><br />\nMastodon: <a href=\"https://layer8.space/@RyunoKi\"><span class=\"citation\"\ndata-cites=\"RyunoKi\">@RyunoKi</span><span class=\"citation\"\ndata-cites=\"layer8.space\">@layer8.space</span></a></p>\n',419,0,0,'CC-BY-SA','hpr,reflection,audacity,recording,metadata',0,0,1),
(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, we decided to fork KeePassX to\ncontinue its development and provide you with everything you love about\nKeePassX plus many new features and bugfixes.<br />\n</li>\n</ul></li>\n<li>Why KeePassXC instead of KeePass?<br />\n<ul>\n<li>KeePass is a very proven and feature-rich password manager and there\nis nothing fundamentally wrong with it. However, it is written in C# and\ntherefore requires Microsoft\'s .NET platform. On systems other than\nWindows, you can run KeePass using the Mono runtime libraries, but you\nwon\'t get the native look and feel which you are used to.<br />\n</li>\n<li>KeePassXC, on the other hand, is developed in C++ and runs natively\non all platforms giving you the best-possible platform\nintegration.<br />\n</li>\n</ul></li>\n<li>Why is there no cloud synchronization feature built into\nKeePassXC?<br />\n<ul>\n<li>Cloud synchronization with Dropbox, Google Drive, OneDrive,\nownCloud, Nextcloud etc. can be easily accomplished by simply storing\nyour KeePassXC database inside your shared cloud folder and letting your\ndesktop synchronization client do the rest. We prefer this approach,\nbecause it is simple, not tied to a specific cloud provider and keeps\nthe complexity of our code low.<br />\n</li>\n</ul></li>\n<li>KeePassXC allows me to store my TOTP secrets. Doesn\'t this alleviate\nany advantage of two-factor authentication?<br />\n<ul>\n<li>Yes. But only if you store them in the same database as your\npassword. We believe that storing both together can still be more secure\nthan not using 2FA at all, but to maximize the security gain from using\n2FA, you should always store TOTP secrets in a separate database,\nsecured with a different password, possibly even on a different\ncomputer.<br />\n</li>\n</ul></li>\n<li>How do I use the KeePassXC CLI tool with the AppImage?<br />\n<ul>\n<li>Starting with version 2.2.2, you can run the KeePassXC CLI tool from\nthe AppImage by executing it with the <code>cli</code> argument:<br />\n</li>\n<li><code>./KeePassXC-*.AppImage cli</code><br />\n</li>\n</ul></li>\n</ul>\n<h3 id=\"additional-information.\">Additional Information.</h3>\n<ul>\n<li>What Is Infinite Scrolling?<br />\n<ul>\n<li>Infinite scrolling is a technique that loads more content as you\nscroll. It allows you to continue scrolling indefinitely and is\nsometimes known as endless scrolling.<br />\n</li>\n</ul></li>\n<li><strong>Article:</strong> <a\nhref=\"https://www.hackerpublicradio.org/eps.php?id=3568\"\ntitle=\"Hacker Public Radio\">blackeRnel Tries to help yoU undeRstand\nEnough about math and programming.</a><br />\n</li>\n</ul>\n',391,0,0,'CC-BY-SA','KeepassXC, audit, Zaur Molotnikov',0,0,1),
(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 Dave’s 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 doesn’t 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 Andrew’s friend, and all went to the\nexhibition held at the National Museum of Scotland.</li>\n<li>The exhibition contained a lot of Doctor Who memorabilia, including\nsome original props.</li>\n<li>MrX and the group that went to the exhibition have all watched\nDoctor Who over the years. All have lost interest at some point but then\nresumed, particularly after the show was restarted in 2005 with\nChristopher Eccleston and Billie Piper.</li>\n<li>Discussion about the <a\nhref=\"https://en.wikipedia.org/wiki/BBC_Radiophonic_Workshop\">BBC\nRadiophonic Workshop</a> where the Doctor Who sound effects were made as\nwell as the signature tune. Also the <a\nhref=\"https://en.wikipedia.org/wiki/Mellotron\">Mellotron</a>, a keyboard\nthat played tape loops.</li>\n</ul></li>\n</ul>\n<ul>\n<li>Mechanical musical instruments:\n<ul>\n<li>The Swedish band <a\nhref=\"https://en.wikipedia.org/wiki/Wintergatan\"><em>Wintergatan</em></a>\nuse mechanical instruments in their music and <a\nhref=\"https://en.wikipedia.org/wiki/Martin_Molin\">Martin Molin</a>, a\nband member is responsible for some of them. He did a series on YouTube\nabout mechanical instruments: <a\nhref=\"https://www.youtube.com/playlist?list=PLLLYkE3G1HEBO1slIc1RRfcfSsGyv2oMu\"><em>Music\nMachine Mondays</em></a> at the <a\nhref=\"https://en.wikipedia.org/wiki/Museum_Speelklok\">Museum\nSpeelklok</a> in Utrecht which is great to watch if you are\ninterested.</li>\n<li>Dave also mentioned musical instrument museums in <a\nhref=\"https://en.wikipedia.org/wiki/Berlin_Musical_Instrument_Museum\">Berlin</a>\nand <a\nhref=\"https://en.wikipedia.org/wiki/Musical_Instrument_Museum,_Brussels\">Brussels</a>.</li>\n<li>MrX mentioned a museum in <a\nhref=\"https://en.wikipedia.org/wiki/Dalbeattie\">Dalbeattie</a>, a town\nin <a\nhref=\"https://en.wikipedia.org/wiki/Dumfries_and_Galloway\">Dumfries and\nGalloway</a> in the Scottish Borders. In the <a\nhref=\"http://www.dalbeattiemuseum.co.uk/\">museum</a> there had been a\nchance to play a barrel organ.</li>\n</ul></li>\n</ul>\n<ul>\n<li>YouTube channels:\n<ul>\n<li>Dave:\n<ul>\n<li>(Mentioned earlier) <a\nhref=\"https://www.youtube.com/@DebunktheFunkwithDrWilson/about\"><em>Debunk\nthe Funk with Dr Wilson</em></a> - the host, Dan Wilson, has a Ph.D. in\nmolecular biology that covers bad science while making good science\naccessible. The channel focuses mainly on pseudoscience surrounding the\nanti-vaccine movement and COVID misinformation.</li>\n<li><a\nhref=\"https://www.youtube.com/@littlechineseeverywhere\"><em>Little\nChinese Everywhere</em></a> - Yan is a Human Geographer who studied in\nSwitzerland. The first season was “<em>The Longest Way Back Home\n(Switzerland to China)</em>” where she travelled over land to China. She\nis now producing videos for season 2 about China itself. She plans to\nvisit every province in mainland China and make videos.\n<ul>\n<li>Dave mentioned the episode about <a\nhref=\"https://www.youtube.com/watch?v=ZrO08P4-T-g\">Yanjin City in\nYunnan</a>. It is mentioned in Wikipedia as the <a\nhref=\"https://en.wikipedia.org/wiki/Yanjin_County,_Yunnan\">“World’s\nNarrowest City”</a>, either side of the narrow Heng River valley, a\ntributary of the Yangtze.</li>\n</ul></li>\n</ul></li>\n<li>MrX:\n<ul>\n<li><a href=\"https://www.youtube.com/@RonMattino\">Ron Mattino</a> - a\nchannel dedicated to electronics, programming and engineering.\n<ul>\n<li>Mentioned episode about the pins on a smartphone battery: <a\nhref=\"https://www.youtube.com/watch?v=Sb4aVHoeo90\">Why do MOBILE\nBATTERIES have THREE terminals? A simple Explanation.</a></li>\n</ul></li>\n</ul></li>\n</ul></li>\n</ul>\n<h2 id=\"links\">Links</h2>\n<ul>\n<li>Artificial Intelligence:\n<ul>\n<li><a href=\"https://openai.com/blog/chatgpt\">ChatGPT</a></li>\n<li><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></li>\n<li><a href=\"https://callannie.ai/\"><em>Call Annie</em></a>\napplication</li>\n<li><a href=\"https://en.wikipedia.org/wiki/ELIZA\">ELIZA</a> early\n<em>chatbot</em></li>\n</ul></li>\n</ul>\n<ul>\n<li>Audio editing:\n<ul>\n<li><a href=\"https://support.audacityteam.org/\">Audacity web\nsite</a></li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Audacity_(audio_editor)\">Audacity\nWikipedia page</a></li>\n<li><a href=\"https://tenacityaudio.org/\">Tenacity web site</a></li>\n</ul></li>\n</ul>\n<ul>\n<li>Science misinformation:\n<ul>\n<li><a\nhref=\"https://www.youtube.com/channel/UCF9IOB2TExg3QIBupFtBDxg\">Dr John\nCampbell’s YouTube channel</a></li>\n</ul></li>\n</ul>\n<ul>\n<li>Doctor Who:\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/BBC_Radiophonic_Workshop\">BBC\nRadiophonic Workshop</a></li>\n</ul></li>\n</ul>\n<ul>\n<li>Mechanical musical instruments:\n<ul>\n<li><a\nhref=\"https://www.youtube.com/playlist?list=PLLLYkE3G1HEBO1slIc1RRfcfSsGyv2oMu\"><em>Music\nMachine Mondays</em></a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Museum_Speelklok\">Museum\nSpeelklok</a></li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Berlin_Musical_Instrument_Museum\">Berlin\nmusic museum</a></li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Musical_Instrument_Museum,_Brussels\">Brussels\nmusic museum</a></li>\n<li><a href=\"http://www.dalbeattiemuseum.co.uk/\">Dalbeattie\nmuseum</a></li>\n</ul></li>\n</ul>\n<ul>\n<li>YouTube:\n<ul>\n<li><a\nhref=\"https://www.youtube.com/@DebunktheFunkwithDrWilson/about\"><em>Debunk\nthe Funk with Dr Wilson</em></a></li>\n<li><a\nhref=\"https://www.youtube.com/@littlechineseeverywhere\"><em>Little\nChinese Everywhere</em></a></li>\n<li><a href=\"https://www.youtube.com/@RonMattino\">Ron Mattino</a></li>\n</ul></li>\n</ul>\n</article>\n',225,0,1,'CC-BY-SA','Edinburgh, Hillend, discussion',0,0,1),
(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 setting a new origin</p></li>\n<li><p>save views CTRL+NUMBERPAD recall NUMBERPAD</p></li>\n<li><p>Scenery ini <a\nhref=\"http://www.pterosaur.org.uk/Xplane10/Setup/Problem_Solving/Problems.html\"\nclass=\"uri\">http://www.pterosaur.org.uk/Xplane10/Setup/Problem_Solving/Problems.html</a></p></li>\n<li><p>This file order is:</p>\n<p>All add on airports at the top of the list (Important)</p>\n<pre><code>  Aerosoft default airports (Do Not rename)\n\n  Demo Airports (Do Not rename)\n\n  Global airports (Do Not rename - Keep below ALL airports)\n\n       Library files (Can be anywhere, but I put them below airports)\n\n       Landscape scenery files (Keep below the airports they may affect)\n\n             Ortho (Below all airports)\n\n              Mesh (Below ortho)</code></pre></li>\n</ul>\n',36,0,0,'CC-BY-SA','video games,vatsim, simulators',0,0,1),
(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-2023–35866',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 Cybercrime Coordination\nUnit (NC3) and the Canadian Anti-Fraud Centre (CAFC)Reporting a scam or\ncomputer crime helps the Royal Canadian Mounted Police (RCMP), the\nNational Cybercrime Coordination Unit (NC3) and the Canadian Anti-Fraud\nCentre (CAFC) learn more about the nature of these incidents. The\ninformation you include in your report helps us follow cybercrime and\nfraud trends. We use this information to help protect more people from\nharm. It is the role of local police services to investigate.<br />\n</p></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.reddit.com/r/Scams/\">Scams subreddit.</a><br />\n</p>\n<ul>\n<li><strong>Supporting Source:</strong> <a\nhref=\"https://www.fbi.gov/how-we-can-help-you/safety-resources/scams-and-safety/common-scams-and-crimes\">Common\nScams and Crimes.</a> The following are some of the most common scams\nand crimes that the FBI encounters, as well as tips to help prevent you\nfrom being victimized.<br />\n</li>\n<li><strong>Supporting Source:</strong> <a\nhref=\"https://duckduckgo.com/?t=ffab&amp;q=Where+do+I+report+online+scams%3F&amp;ia=web\">DuckDuckGo\nSearch: Where do I report online scams?</a><br />\n</li>\n</ul></li>\n<li><p><strong>Source:</strong> <a\nhref=\"https://www.paypal.com/us/cshelp/article/whats-the-difference-between-friends-and-family-or-goods-and-services-payments-help277\">Paypal:\nWhat\'s the difference between friends and family or goods and services\npayments?</a><br />\n</p></li>\n</ul>\n<p><img src=\"/eps/hpr3898/hpr3898/hpr-eps38diagram.drawio.png\" /></p>\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 of protecting information by mitigating <a\nhref=\"https://en.wikipedia.org/wiki/Information\"\ntitle=\"From Wikipedia, the free encyclopedia\">information</a> risks. It\nis part of <a\nhref=\"https://en.wikipedia.org/wiki/Risk_management_information_systems\"\ntitle=\"From Wikipedia, the free encyclopedia\">information risk\nmanagement</a>.\n<ul>\n<li><strong>Information Security Attributes:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Confidentiality\"\ntitle=\"From Wikipedia, the free encyclopedia\">Confidentiality</a>, <a\nhref=\"https://en.wikipedia.org/wiki/Data_integrity\"\ntitle=\"From Wikipedia, the free encyclopedia\">Integrity</a> and <a\nhref=\"https://en.wikipedia.org/wiki/Availability\"\ntitle=\"From Wikipedia, the free encyclopedia\">Availability</a> (C.I.A.).\nInformation Systems are composed in three main portions, hardware,\nsoftware and communications with the purpose to help identify and apply\ninformation security industry standards, as mechanisms of protection and\nprevention, at three levels or layers: physical, personal and\norganizational. Essentially, procedures or policies are implemented to\ntell administrators, users and operators how to use products to ensure\ninformation security within the organizations.</li>\n</ul></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Risk_management\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is \"Risk\nmanagement\"?</a> Risk management is the identification, evaluation, and\nprioritization of risks followed by coordinated and economical\napplication of resources to minimize, monitor, and control the\nprobability or impact of unfortunate events or to maximize the\nrealization of opportunities.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Vulnerability_(computing)\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is a \"Vulnerability\"\n(computing)?</a> Vulnerabilities are flaws in a computer system that\nweaken the overall security of the device/system. Vulnerabilities can be\nweaknesses in either the hardware itself, or the software that runs on\nthe hardware.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Attack_surface\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is an \"Attack\nSurface\"?</a> The attack surface of a software environment is the sum of\nthe different points (for \"attack vectors\") where an unauthorized user\n(the \"attacker\") can try to enter data to or extract data from an\nenvironment. Keeping the attack surface as small as possible is a basic\nsecurity measure.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Attack_vector\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is an \"Attack\nVector\"?</a> In computer security, an attack vector is a specific path,\nmethod, or scenario that can be exploited to break into an IT system,\nthus compromising its security. The term was derived from the\ncorresponding notion of vector in biology. An attack vector may be\nexploited manually, automatically, or through a combination of manual\nand automatic activity.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Standardization\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is\n\"Standardization\"?</a> Standardization is the process of implementing\nand developing technical standards based on the consensus of different\nparties that include firms, users, interest groups, standards\norganizations and governments. Standardization can help maximize\ncompatibility, interoperability, safety, repeatability, or quality. It\ncan also facilitate a normalization of formerly custom processes.\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/List_of_computer_standards\"\ntitle=\"From Wikipedia, the free encyclopedia\">List of computer\nstandards.</a></li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/List_of_technical_standard_organizations\"\ntitle=\"From Wikipedia, the free encyclopedia\">List of technical standard\norganizations.</a></li>\n</ul></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Replay_attack\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is a \"Replay\nattack\"?</a> A replay attack is a form of network attack in which valid\ndata transmission is maliciously or fraudulently repeated or delayed.\nAnother way of describing such an attack is: \"an attack on a security\nprotocol using a replay of messages from a different context into the\nintended (or original and expected) context, thereby fooling the honest\nparticipant(s) into thinking they have successfully completed the\nprotocol run.\"</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Man-in-the-middle_attack\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is a\n\"Man-in-the-middle attack\"?</a> In cryptography and computer security, a\nman-in-the-middle, ..., attack is a cyberattack where the attacker\nsecretly relays and possibly alters the communications between two\nparties who believe that they are directly communicating with each\nother, as the attacker has inserted themselves between the two\nparties.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Transport_Layer_Security\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is \"Transport Layer\nSecurity\" (TLS)?</a> Transport Layer Security (TLS) is a cryptographic\nprotocol designed to provide communications security over a computer\nnetwork. The protocol is widely used in applications such as email,\ninstant messaging, and voice over IP, but its use in securing HTTPS\nremains the most publicly visible.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Handshake_(computing)\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is a \"Handshake\"\n(computing)?</a>. In computing, a handshake is a signal between two\ndevices or programs, used to, e.g., authenticate, coordinate. An example\nis the handshaking between a hypervisor and an application in a guest\nvirtual machine.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Security_theater\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is Security\ntheater?</a> The practice of taking security measures that are\nconsidered to provide the feeling of improved security while doing\nlittle or nothing to achieve it.<br />\n</li>\n</ul></li>\n</ul>\n<hr />\n<ul>\n<li><strong>License:</strong> <a\nhref=\"https://creativecommons.org/licenses/by-sa/4.0/legalcode\">Creative\nCommons Attribution-ShareAlike 4.0 International</a>\n<a rel=\"license\" href=\"http://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\nwork is licensed under a\n<a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\">Creative\nCommons Attribution-ShareAlike 4.0 International License</a>.</li>\n</ul>\n',391,74,0,'CC-BY-SA','User space, Cybercrime, fraud, scams',0,0,1),
(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 the `orderless&#39; completion style.\n;; Get completion even if you type substrings that don&#39;t match in the\n;; same order you typed them in.\n(use-package orderless\n  :init\n  ;; Configure a custom style dispatcher (see the Consult wiki)\n  ;; (setq orderless-style-dispatchers &#39;(+orderless-consult-dispatch orderless-affix-dispatch)\n  ;;       orderless-component-separator #&#39;orderless-escapable-split-on-space)\n  (setq completion-styles &#39;(orderless basic)\n        completion-category-defaults nil\n        completion-category-overrides &#39;((file (styles partial-completion)))))\n\n;; Enable rich annotations in the completion\n(use-package marginalia\n  ;; Either bind `marginalia-cycle&#39; globally or only in the minibuffer\n  :bind ((&quot;M-A&quot; . marginalia-cycle)\n         :map minibuffer-local-map\n         (&quot;M-A&quot; . marginalia-cycle))\n\n  ;; The :init configuration is always executed (Not lazy!)\n  :init\n\n  ;; Must be in the :init section of use-package such that the mode gets\n  ;; enabled right away. Note that this forces loading the package.\n  (marginalia-mode))\n\n;; Searching commands and lots of other stuff\n;; This is a snippet taken from consult\n(use-package consult\n  ;; Replace bindings. Lazily loaded due by `use-package&#39;.\n  :bind (;; C-c bindings in `mode-specific-map&#39;\n         (&quot;C-c M-x&quot; . consult-mode-command)\n         (&quot;C-c h&quot; . consult-history)\n         (&quot;C-c k&quot; . consult-kmacro)\n         (&quot;C-c m&quot; . consult-man)\n         (&quot;C-c i&quot; . consult-info)\n         ([remap Info-search] . consult-info)\n         ;; C-x bindings in `ctl-x-map&#39;\n         (&quot;C-x M-:&quot; . consult-complex-command)     ;; orig. repeat-complex-command\n         (&quot;C-x b&quot; . consult-buffer)                ;; orig. switch-to-buffer\n         (&quot;C-x 4 b&quot; . consult-buffer-other-window) ;; orig. switch-to-buffer-other-window\n         (&quot;C-x 5 b&quot; . consult-buffer-other-frame)  ;; orig. switch-to-buffer-other-frame\n         (&quot;C-x r b&quot; . consult-bookmark)            ;; orig. bookmark-jump\n         (&quot;C-x p b&quot; . consult-project-buffer)      ;; orig. project-switch-to-buffer\n         ;; Custom M-# bindings for fast register access\n         (&quot;M-#&quot; . consult-register-load)\n         (&quot;M-&#39;&quot; . consult-register-store)          ;; orig. abbrev-prefix-mark (unrelated)\n         (&quot;C-M-#&quot; . consult-register)\n         ;; Other custom bindings\n         (&quot;M-y&quot; . consult-yank-pop)                ;; orig. yank-pop\n         ;; M-g bindings in `goto-map&#39;\n         (&quot;M-g e&quot; . consult-compile-error)\n         (&quot;M-g f&quot; . consult-flymake)               ;; Alternative: consult-flycheck\n         (&quot;M-g g&quot; . consult-goto-line)             ;; orig. goto-line\n         (&quot;M-g M-g&quot; . consult-goto-line)           ;; orig. goto-line\n         (&quot;M-g o&quot; . consult-outline)               ;; Alternative: consult-org-heading\n         (&quot;M-g m&quot; . consult-mark)\n         (&quot;M-g k&quot; . consult-global-mark)\n         (&quot;M-g i&quot; . consult-imenu)\n         (&quot;M-g I&quot; . consult-imenu-multi)\n         ;; M-s bindings in `search-map&#39;\n         (&quot;M-s d&quot; . consult-find)\n         (&quot;M-s D&quot; . consult-locate)\n         (&quot;M-s g&quot; . consult-grep)\n         (&quot;M-s G&quot; . consult-git-grep)\n         (&quot;M-s r&quot; . consult-ripgrep)\n         (&quot;M-s l&quot; . consult-line)\n         (&quot;M-s L&quot; . consult-line-multi)\n         (&quot;M-s k&quot; . consult-keep-lines)\n         (&quot;M-s u&quot; . consult-focus-lines)\n         ;; Isearch integration\n         (&quot;M-s e&quot; . consult-isearch-history)\n         :map isearch-mode-map\n         (&quot;M-e&quot; . consult-isearch-history)         ;; orig. isearch-edit-string\n         (&quot;M-s e&quot; . consult-isearch-history)       ;; orig. isearch-edit-string\n         (&quot;M-s l&quot; . consult-line)                  ;; needed by consult-line to detect isearch\n         (&quot;M-s L&quot; . consult-line-multi)            ;; needed by consult-line to detect isearch\n         ;; Minibuffer history\n         :map minibuffer-local-map\n         (&quot;M-s&quot; . consult-history)                 ;; orig. next-matching-history-element\n         (&quot;M-r&quot; . consult-history))                ;; orig. previous-matching-history-element\n\n  ;; Enable automatic preview at point in the *Completions* buffer. This is\n  ;; relevant when you use the default completion UI.\n  :hook (completion-list-mode . consult-preview-at-point-mode)\n\n  ;; The :init configuration is always executed (Not lazy)\n  :init\n\n  ;; Optionally configure the register formatting. This improves the register\n  ;; preview for `consult-register&#39;, `consult-register-load&#39;,\n  ;; `consult-register-store&#39; and the Emacs built-ins.\n  (setq register-preview-delay 0.5\n        register-preview-function #&#39;consult-register-format)\n\n  ;; Optionally tweak the register preview window.\n  ;; This adds thin lines, sorting and hides the mode line of the window.\n  (advice-add #&#39;register-preview :override #&#39;consult-register-window)\n\n  ;; Use Consult to select xref locations with preview\n  (setq xref-show-xrefs-function #&#39;consult-xref\n        xref-show-definitions-function #&#39;consult-xref)\n\n  ;; Configure other variables and modes in the :config section,\n  ;; after lazily loading the package.\n  :config\n\n  ;; Optionally configure preview. The default value\n  ;; is &#39;any, such that any key triggers the preview.\n  ;; (setq consult-preview-key &#39;any)\n  ;; (setq consult-preview-key &quot;M-.&quot;)\n  ;; (setq consult-preview-key &#39;(&quot;S-&lt;down&gt;&quot; &quot;S-&lt;up&gt;&quot;))\n  ;; For some commands and buffer sources it is useful to configure the\n  ;; :preview-key on a per-command basis using the `consult-customize&#39; macro.\n  (consult-customize\n   consult-theme :preview-key &#39;(:debounce 0.2 any)\n   consult-ripgrep consult-git-grep consult-grep\n   consult-bookmark consult-recent-file consult-xref\n   consult--source-bookmark consult--source-file-register\n   consult--source-recent-file consult--source-project-recent-file\n   ;; :preview-key &quot;M-.&quot;\n   :preview-key &#39;(:debounce 0.4 any))\n\n  ;; Optionally configure the narrowing key.\n  ;; Both &lt; and C-+ work reasonably well.\n  (setq consult-narrow-key &quot;&lt;&quot;) ;; &quot;C-+&quot;\n\n  ;; Optionally make narrowing help available in the minibuffer.\n  ;; You may want to use `embark-prefix-help-command&#39; or which-key instead.\n  ;; (define-key consult-narrow-map (vconcat consult-narrow-key &quot;?&quot;) #&#39;consult-narrow-help)\n\n  ;; By default `consult-project-function&#39; uses `project-root&#39; from project.el.\n  ;; Optionally configure a different project root function.\n  ;;;; 1. project.el (the default)\n  ;; (setq consult-project-function #&#39;consult--default-project--function)\n  ;;;; 2. vc.el (vc-root-dir)\n  ;; (setq consult-project-function (lambda (_) (vc-root-dir)))\n  ;;;; 3. locate-dominating-file\n  ;; (setq consult-project-function (lambda (_) (locate-dominating-file &quot;.&quot; &quot;.git&quot;)))\n  ;;;; 4. projectile.el (projectile-project-root)\n  ;; (autoload &#39;projectile-project-root &quot;projectile&quot;)\n  ;; (setq consult-project-function (lambda (_) (projectile-project-root)))\n  ;;;; 5. No project support\n  ;; (setq consult-project-function nil)\n)\n\n;; workspaces\n(use-package perspective\n  :bind (&quot;C-x C-b&quot; . persp-list-buffers)         ; or use a nicer switcher, see below\n  :custom (persp-mode-prefix-key (kbd &quot;C-c M-p&quot;))  ; pick your own prefix key here\n  :init (persp-mode))\n\n;; theme\n(use-package doom-themes\n  :config\n  ;; Global settings (defaults)\n  (setq doom-themes-enable-bold t    ; if nil, bold is universally disabled\n        doom-themes-enable-italic t) ; if nil, italics is universally disabled\n  (load-theme &#39;doom-one t)\n\n  ;; Corrects (and improves) org-mode&#39;s native fontification.\n  (doom-themes-org-config))\n\n;; modeline\n(use-package powerline\n  :straight (:host github :repo &quot;milkypostman/powerline&quot;)\n  :config (powerline-default-theme))\n\n;; modeline theme\n(use-package airline-themes\n  :config (load-theme &#39;airline-onedark t))\n\n;; makes temporary or non-editing buffers darker\n(use-package solaire-mode\n  :config (solaire-global-mode +1))\n\n;; snippets\n(use-package yasnippet\n  :diminish yas-minor-mode\n  :straight (:host github :repo &quot;joaotavora/yasnippet&quot;)\n  :config (yas-global-mode 1))\n\n;; projects\n(use-package projectile\n  :bind-keymap\n  (&quot;C-c p&quot; . projectile-command-map))\n\n(use-package rg)\n\n;;;;;;;;;;;\n;;; Org ;;;\n;;;;;;;;;;;\n\n(use-package org\n  :commands (org-mode)\n  :init (setq org-directory &quot;~/org/&quot;\n              org-noter-notes-search-path &#39;(&quot;~/org/roam/&quot;)\n              org-cite-global-bibliography &#39;(&quot;~/org/biblio.bib&quot;)\n              org-capture-templates\n                     &#39;((&quot;n&quot; &quot;Note&quot; entry\n                              (file &quot;~/org/todo.org&quot;)\n                              &quot;* %^{prompt}\\n%U\\n\\n%?&quot;)\n                       (&quot;r&quot; &quot;Reading list note&quot; entry\n                              (file &quot;~/org/reading.org&quot;)\n                              &quot;* %^{prompt}\\n%U\\n\\n%x&quot;\n                              :immediate-finish :jump-to-captured)))\n  :config (require &#39;org-crypt)\n          (org-crypt-use-before-save-magic)\n          (require &#39;org-id)\n          (defun tgdnt/advice-org-ctrl-c-ctrl-c (&amp;rest args)\n            &quot;Run `org-todo&#39; if point is on a visible heading.&quot;\n            (let ((do-not-run-orig-fn (org-at-heading-p t)))\n                (when do-not-run-orig-fn\n                (call-interactively #&#39;org-todo))\n                do-not-run-orig-fn))\n          (advice-add &#39;org-ctrl-c-ctrl-c :before-until #&#39;tgdnt/advice-org-ctrl-c-ctrl-c)\n  :hook (org-mode . auto-fill-mode)\n  :bind (&quot;C-x h&quot; . visible-mode)\n        (&quot;C-c n a&quot; . org-agenda)\n  :custom (org-tags-column 2)\n          (org-tags-exclude-from-inheritance &#39;(&quot;crypt&quot;))\n          (org-crypt-key &quot;90A77BEA68A05915&quot;)\n          (org-crypt-disable-auto-save t)\n          (org-adapt-indentation nil)\n          (org-clock-ask-before-exiting nil)\n          (org-startup-folded t)\n          (org-startup-indented t)\n          (org-priority-start-cycle-with-default nil)\n          (org-id-link-to-org-use-id &#39;use-existing)\n          (org-agenda-files (append (directory-files &quot;~/org/&quot; t &quot;.+\\.org$&quot;)))\n          (org-agenda-custom-commands\n                &#39;((&quot;A&quot; &quot;Agenda and Unscheduled TODOs&quot;\n                   ((agenda &quot;&quot;)\n                    (todo &quot;TODO&quot; ((org-agenda-overriding-header &quot;Unscheduled actions:&quot;)))\n                    (todo &quot;PROJ&quot; ((org-agenda-overriding-header &quot;Projects:&quot;)))\n                    (todo &quot;OPEN&quot; ((org-agenda-overriding-header &quot;Open items:&quot;)))\n                    (todo &quot;HOLD&quot; ((org-agenda-overriding-header &quot;On Hold:&quot;))))\n                    ((org-agenda-dim-blocked-tasks &#39;invisible))\n                                    nil)))\n          (org-agenda-todo-ignore-with-date t)\n          (org-agenda-start-day nil)\n          (org-agenda-start-on-weekday nil)\n          (org-agenda-span 1)\n          (org-agenda-skip-deadline-prewarning-if-scheduled t)\n          (org-agenda-prefix-format &#39;((agenda . &quot;%?-12t% s&quot;)\n                                      (todo . &quot;  &quot;)\n                                      (tags . &quot;  &quot;)\n                                      (search . &quot;  &quot;)))\n          (org-agenda-deadline-leaders &#39;(&quot;!&quot; &quot;%1d&quot; &quot;&#x203C;&quot;))\n          (org-agenda-scheduled-leaders &#39;(&quot;#&quot; &quot;%1d&quot;))\n          (org-enforce-todo-dependencies t)\n          (org-refile-targets &#39;((nil :maxlevel . 2)\n                                (org-agenda-files :maxlevel . 2)))\n          (org-attach-id-dir &quot;~/org/attachments&quot;)\n          (org-crypt-disable-auto-save t)\n          (org-crypt-tag-matcher &quot;crypt&quot;)\n          (org-archive-location &quot;~/org/archive/archive.org::&quot;)\n          (org-deadline-warning-days 5)\n          (org-archive-save-context-info &#39;(time file olpath ltags itags category))\n          (org-id-link-to-org-use-id &#39;use-existing)\n          (org-todo-keywords &#39;((type &quot;TODO(t)&quot; ;; A clearly defined action\n                                     &quot;OPEN(o)&quot; ;; An open item, must be clarified\n                                     &quot;HOLD(h)&quot; ;; An open item, must be clarified\n                                     &quot;PROJ(p)&quot; ;; A project, with actions within it\n                                   &quot;|&quot; &quot;DONE(d)&quot; &quot;QUIT(q)&quot;))))\n\n;; make visible-mode automatic when entering insert mode\n(use-package org-appear\n  :init (setq org-hide-emphasis-markers t)\n  :hook (org-mode . org-appear-mode)\n  :custom (org-appear-autolinks t))\n\n(use-package evil-org\n  :after org\n  :hook (org-mode . (lambda () evil-org-mode))\n  :config\n  (require &#39;evil-org-agenda)\n  (evil-org-agenda-set-keys))\n\n;;;;;;;;;;;;;;;;;;;;;;;;;;;\n;;; more basic settings ;;;\n;;;;;;;;;;;;;;;;;;;;;;;;;;;\n(setq backup-directory-alist\n              `((&quot;.&quot; . ,(concat user-emacs-directory &quot;backups&quot;)))\n      backup-by-copying t\n      delete-old-versions t\n      kept-new-versions 6\n      kept-old-versions 2\n      version-control t)\n\n(setq-default fill-column 64\n              indent-tabs-mode nil\n              display-time-day-and-date t\n              display-time-24hr-format t)\n\n(setq custom-file (expand-file-name &quot;custom.el&quot; user-emacs-directory))\n(load custom-file t)\n\n(when window-system\n  (scroll-bar-mode -1)\n  (menu-bar-mode -1)\n  (tool-bar-mode -1))\n\n;; (toggle-frame-fullscreen)\n(display-time)\n(display-battery-mode)\n(server-start)\n(setq inhibit-startup-screen t)\n\n;; If on a graphical env, load init-base, if not on windows, load init-extra\n(when window-system\n  (load-file (expand-file-name &quot;init-base.el&quot; user-emacs-directory))\n  (require &#39;init-base)\n  (unless (string= (x-server-vendor) &quot;Microsoft Corp.&quot;)\n      (load-file (expand-file-name &quot;init-extra.el&quot; user-emacs-directory))\n      (require &#39;init-extra)))\n\n(provide &#39;init)\n;;; init.el ends here</code></pre>\n<p>In part 2, coming soon, we\'ll go through init-base.el and\ninit-extra.el.</p>\n',399,0,0,'CC-BY-SA','emacs,elisp',0,0,1),
(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 aggressively your audio may sound sped up and\nchoppy.</p>\n<p>Next we use the \"Compressor\" effect with the following settings:</p>\n<pre><code>Threshold: -30db\n\nNoise Floor: -50db\n\nRatio: 3:1\n\nAttack Time: 0.2sec\n\nDecay Time: 1.0 sec`</code></pre>\n<p>\"Make-up Gain for 0db after compressing\" and \"compress based on\npeaks\" were both left un-checked.</p>\n<p>After compressing the audio we cut any pre-show and post-show chatter\nfrom the file and save them in a separate file for possible use as\nouttakes after the closing music.</p>\n<p>We adjust the Gain so that the VU meter in Audacity hovers around\n-12db while people are speaking, and we try to keep the peaks under\n-6db, and we adjust the Gain on each of the new tracks so that all\nvolumes are similar, and more importantly comfortable. Once this is done\nwe can \"Mix and Render\" all of our tracks into a single track for export\nto the .FLAC file which is uploaded to the HPR server.</p>\n<p>At this point we listen back to the whole file and we work on the\nshownotes. This is when we can cut out anything that needs to be cut,\nand we can also make sure that we put any links in the shownotes that\nwere talked about during the recording of the show. We finish the\nshownotes before exporting the .aup file to .FLAC so that we can paste a\ncopy of the shownotes into the audio file\'s metadata.</p>\n<p>At this point we add new, empty audio tracks into which we paste the\nintro, outro and possibly outtakes, and we rename each track\naccordingly.</p>\n<p>Remember to save often when using Audacity. We like to save after\neach of these steps. Audacity has a reputation for being \"crashy\" but if\nyou remember save after every major transform, you will wonder how it\never got that reputation.</p>\n',157,53,1,'CC-BY-SA','Audiobook club, audiobook, fantasy, fiction',0,0,1),
(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),
(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 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 aggressively your audio may sound sped up and\nchoppy.</p>\n<p>Next we use the \"Compressor\" effect with the following settings:</p>\n<pre><code>Threshold: -30db\n\nNoise Floor: -50db\n\nRatio: 3:1\n\nAttack Time: 0.2sec\n\nDecay Time: 1.0 sec</code></pre>\n<p>\"Make-up Gain for 0db after compressing\" and \"compress based on\npeaks\" were both left un-checked.</p>\n<p>After compressing the audio we cut any pre-show and post-show chatter\nfrom the file and save them in a separate file for possible use as\nouttakes after the closing music.</p>\n<p>We adjust the Gain so that the VU meter in Audacity hovers around\n-12db while people are speaking, and we try to keep the peaks under\n-6db, and we adjust the Gain on each of the new tracks so that all\nvolumes are similar, and more importantly comfortable. Once this is done\nwe can \"Mix and Render\" all of our tracks into a single track for export\nto the .FLAC file which is uploaded to the HPR server.</p>\n<p>At this point we listen back to the whole file and we work on the\nshownotes. This is when we can cut out anything that needs to be cut,\nand we can also make sure that we put any links in the shownotes that\nwere talked about during the recording of the show. We finish the\nshownotes before exporting the .aup file to .FLAC so that we can paste a\ncopy of the shownotes into the audio file\'s metadata.</p>\n<p>At this point we add new, empty audio tracks into which we paste the\nintro, outro and possibly outtakes, and we rename each track\naccordingly.</p>\n<p>Remember to save often when using Audacity. We like to save after\neach of these steps. Audacity has a reputation for being \"crashy\" but if\nyou remember save after every major transform, you will wonder how it\never got that reputation.</p>\n<h2 id=\"attribution\">Attribution</h2>\n<hr />\n<p><a\nhref=\"https://freesound.org/people/ZeSoundResearchInc./sounds/117512/\">Record\nScratch</a> Creative Commons 0</p>\n',157,0,1,'CC-BY-SA','mars, audiobook club, fiction, scifi, audiobook',0,0,1),
(4151,'2024-07-01','HPR Community News for June 2024',4857,'HPR Volunteers talk about shows released and comments posted in June 2024','<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/0432.html\" target=\"_blank\">mnw</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/hpr4131/index.html\" target=\"_blank\">4131</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-06-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4131/index.html\" target=\"_blank\">HPR Community News for May 2024</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/hpr4132/index.html\" target=\"_blank\">4132</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-06-04</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4132/index.html\" target=\"_blank\">Urandom talks about the future of HPR</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0270.html\" target=\"_blank\">Thaj Sara</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4133/index.html\" target=\"_blank\">4133</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-06-05</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4133/index.html\" target=\"_blank\">Mastodon as a way to comment to HPR episodes</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0342.html\" target=\"_blank\">norrist</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4134/index.html\" target=\"_blank\">4134</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-06-06</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4134/index.html\" target=\"_blank\">Goodbye Craig Maloney. </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/hpr4135/index.html\" target=\"_blank\">4135</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-06-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4135/index.html\" target=\"_blank\">Mining the web</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0387.html\" target=\"_blank\">Cedric De Vroey</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4136/index.html\" target=\"_blank\">4136</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-06-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4136/index.html\" target=\"_blank\">Pi Samba Share</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0296.html\" target=\"_blank\">Kevie</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4137/index.html\" target=\"_blank\">4137</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-06-11</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4137/index.html\" target=\"_blank\">I used reisub key sequence to reboot my frozen Linux computer</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0429.html\" target=\"_blank\">Henrik Hemrin</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4138/index.html\" target=\"_blank\">4138</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-06-12</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4138/index.html\" target=\"_blank\">Linux Gaming: Factorio</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0387.html\" target=\"_blank\">Cedric De Vroey</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4139/index.html\" target=\"_blank\">4139</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-06-13</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4139/index.html\" target=\"_blank\">HPR New Years Eve Show 2023 - 24 ep 1</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/hpr4140/index.html\" target=\"_blank\">4140</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-06-14</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4140/index.html\" target=\"_blank\">Battery and Charging Technology 2024</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/hpr4141/index.html\" target=\"_blank\">4141</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-06-17</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4141/index.html\" target=\"_blank\">Picade Console</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0296.html\" target=\"_blank\">Kevie</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4142/index.html\" target=\"_blank\">4142</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-06-18</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4142/index.html\" target=\"_blank\">A Shared Shell History With Atuin</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0432.html\" target=\"_blank\">mnw</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4143/index.html\" target=\"_blank\">4143</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-06-19</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4143/index.html\" target=\"_blank\">Learning to touch-type using the Dvorak keyboard layout</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/hpr4144/index.html\" target=\"_blank\">4144</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-06-20</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4144/index.html\" target=\"_blank\">Running a Self-Hosted Mail Server</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0403.html\" target=\"_blank\">Lee</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4145/index.html\" target=\"_blank\">4145</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-06-21</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4145/index.html\" target=\"_blank\">Review of the Riwbox TX8</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0297.html\" target=\"_blank\">swift110</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4146/index.html\" target=\"_blank\">4146</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-06-24</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4146/index.html\" target=\"_blank\">Pi 5 - Some initial thoughts</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0296.html\" target=\"_blank\">Kevie</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4147/index.html\" target=\"_blank\">4147</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-06-25</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4147/index.html\" target=\"_blank\">Review of the Moto G 5G 2020</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0297.html\" target=\"_blank\">swift110</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4148/index.html\" target=\"_blank\">4148</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-06-26</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4148/index.html\" target=\"_blank\">Cheap Computers</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0431.html\" target=\"_blank\">Moss Bliss</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4149/index.html\" target=\"_blank\">4149</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-06-27</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4149/index.html\" target=\"_blank\">HPR New Years Eve Show 2023 - 24 ep 2</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/hpr4150/index.html\" target=\"_blank\">4150</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-06-28</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4150/index.html\" target=\"_blank\">Playing Civilization III, Part 4</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0198.html\" target=\"_blank\">Ahuka</a></td>\n</tr>\n</table>\n\n<h2>Comments this month</h2>\n\n<p>These are comments which have been made during the past month, either to shows released during the month or to past shows.\nThere are 30 comments in total.</p>\n<h3>Past shows</h3>\n<p>There are 3 comments on\n3 previous shows:</p>\n<ul>\n<li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4116/index.html#comments\" target=\"_blank\">hpr4116</a></strong>\n(2024-05-13) \"<em>Response to 4109: Building community without SEO</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0424.html\" target=\"_blank\">hobs</a>.<br/>\n<li style=\"list-style: none; display: inline\">\n<ul>\n<li>\n<a href=\"https://hackerpublicradio.org/eps/hpr4116/index.html#comment_3979\" target=\"_blank\">Comment 7</a>:\nhobs on 2024-06-03:\n\"mastodon comments\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4118/index.html#comments\" target=\"_blank\">hpr4118</a></strong>\n(2024-05-15) \"<em>Toil versus Livelihood</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a>.<br/>\n<li style=\"list-style: none; display: inline\">\n<ul>\n<li>\n<a href=\"https://hackerpublicradio.org/eps/hpr4118/index.html#comment_3977\" target=\"_blank\">Comment 7</a>:\ndodddummy on 2024-06-01:\n\"I agree but am concerned about the transition\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4126/index.html#comments\" target=\"_blank\">hpr4126</a></strong>\n(2024-05-27) \"<em>Podcasting for Newbies</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0431.html\" target=\"_blank\">Moss Bliss</a>.<br/>\n<li style=\"list-style: none; display: inline\">\n<ul>\n<li>\n<a href=\"https://hackerpublicradio.org/eps/hpr4126/index.html#comment_3985\" target=\"_blank\">Comment 1</a>:\nHenrik Hemrin on 2024-06-04:\n\"Equipment, experience, encouragement and radio.\"</li></ul><br/>\n</li></ul>\n<h3>This month\'s shows</h3>\n<p>There are 27 comments on 14 of this month\'s shows:</p>\n<ul><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4131/index.html#comments\" target=\"_blank\">hpr4131</a></strong>\n(2024-06-03) \"<em>HPR Community News for May 2024</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4131/index.html#comment_3978\" target=\"_blank\">Comment 1</a>:\nhobs on 2024-06-03:\n\"HPR page design\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4131/index.html#comment_3980\" target=\"_blank\">Comment 2</a>:\nfolky on 2024-06-04:\n\"Give me the opus\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4131/index.html#comment_3981\" target=\"_blank\">Comment 3</a>:\nHenrik Hemrin on 2024-06-04:\n\"Thank you\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4131/index.html#comment_3982\" target=\"_blank\">Comment 4</a>:\nKen Fallon on 2024-06-04:\n\"Bug created\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4131/index.html#comment_3983\" target=\"_blank\">Comment 5</a>:\nKen Fallon on 2024-06-04:\n\"HPR page design - Setting expectations\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4131/index.html#comment_3984\" target=\"_blank\">Comment 6</a>:\nelmussol on 2024-06-04:\n\"opus feed\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4131/index.html#comment_3992\" target=\"_blank\">Comment 7</a>:\nAn HPR listener on 2024-06-09:\n\"The tune Dave mentioned\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4132/index.html#comments\" target=\"_blank\">hpr4132</a></strong>\n(2024-06-04) \"<em>Urandom talks about the future of HPR</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0270.html\" target=\"_blank\">Thaj Sara</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4132/index.html#comment_3986\" target=\"_blank\">Comment 1</a>:\nkdmurray on 2024-06-04:\n\"Great Conversation\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4132/index.html#comment_3987\" target=\"_blank\">Comment 2</a>:\nHenrik Hemrin on 2024-06-05:\n\"Re: Great Conversation.\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4132/index.html#comment_3991\" target=\"_blank\">Comment 3</a>:\nkdmurray on 2024-06-08:\n\"Re: Re: Great Conversation.\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4133/index.html#comments\" target=\"_blank\">hpr4133</a></strong>\n(2024-06-05) \"<em>Mastodon as a way to comment to HPR episodes</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0342.html\" target=\"_blank\">norrist</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4133/index.html#comment_3988\" target=\"_blank\">Comment 1</a>:\nHenrik Hemrin on 2024-06-05:\n\"Comment via phone and laptop/desktop\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4133/index.html#comment_3989\" target=\"_blank\">Comment 2</a>:\nfullstopslash on 2024-06-05:\n\"mastodon comments\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4133/index.html#comment_3990\" target=\"_blank\">Comment 3</a>:\nKen Fallon on 2024-06-05:\n\"Some issues\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4133/index.html#comment_4003\" target=\"_blank\">Comment 4</a>:\nArcher72 on 2024-06-24:\n\"Ken\'s comment\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4135/index.html#comments\" target=\"_blank\">hpr4135</a></strong>\n(2024-06-07) \"<em>Mining the web</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0387.html\" target=\"_blank\">Cedric De Vroey</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4135/index.html#comment_3993\" target=\"_blank\">Comment 1</a>:\nnorrist on 2024-06-12:\n\"Clever use of transparency data\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4135/index.html#comment_3994\" target=\"_blank\">Comment 2</a>:\nHenrik Hemrin on 2024-06-14:\n\"Amazing project\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4136/index.html#comments\" target=\"_blank\">hpr4136</a></strong>\n(2024-06-10) \"<em>Pi Samba Share</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0296.html\" target=\"_blank\">Kevie</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4136/index.html#comment_4000\" target=\"_blank\">Comment 1</a>:\narcher72 on 2024-06-22:\n\"I use this too\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4137/index.html#comments\" target=\"_blank\">hpr4137</a></strong>\n(2024-06-11) \"<em>I used reisub key sequence to reboot my frozen Linux computer</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0429.html\" target=\"_blank\">Henrik Hemrin</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4137/index.html#comment_3995\" target=\"_blank\">Comment 1</a>:\nHenrik Hemrin on 2024-06-14:\n\"What is actually u in reisub doing in more detail? Is it needed?\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4140/index.html#comments\" target=\"_blank\">hpr4140</a></strong>\n(2024-06-14) \"<em>Battery and Charging Technology 2024</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0198.html\" target=\"_blank\">Ahuka</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4140/index.html#comment_3996\" target=\"_blank\">Comment 1</a>:\nKevie on 2024-06-18:\n\"A good, balanced and informative talk\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4140/index.html#comment_3997\" target=\"_blank\">Comment 2</a>:\nHenrik Hemrin on 2024-06-18:\n\"Batteries and hydrogen gas\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4142/index.html#comments\" target=\"_blank\">hpr4142</a></strong>\n(2024-06-18) \"<em>A Shared Shell History With Atuin</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0432.html\" target=\"_blank\">mnw</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4142/index.html#comment_3998\" target=\"_blank\">Comment 1</a>:\nHenrik Hemrin on 2024-06-19:\n\"Good presentation of the to me unknown Atuin\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4143/index.html#comments\" target=\"_blank\">hpr4143</a></strong>\n(2024-06-19) \"<em>Learning to touch-type using the Dvorak keyboard layout</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0415.html\" target=\"_blank\">enistello</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4143/index.html#comment_3999\" target=\"_blank\">Comment 1</a>:\nmnw on 2024-06-20:\n\"Typing Tutorial Websites\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4144/index.html#comments\" target=\"_blank\">hpr4144</a></strong>\n(2024-06-20) \"<em>Running a Self-Hosted Mail Server</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0403.html\" target=\"_blank\">Lee</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4144/index.html#comment_4004\" target=\"_blank\">Comment 1</a>:\nWindigo on 2024-06-24:\n\"The forbidden service\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4145/index.html#comments\" target=\"_blank\">hpr4145</a></strong>\n(2024-06-21) \"<em>Review of the Riwbox TX8</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0297.html\" target=\"_blank\">swift110</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4145/index.html#comment_4001\" target=\"_blank\">Comment 1</a>:\nMike Ray on 2024-06-23:\n\"hiwbox tx8\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4146/index.html#comments\" target=\"_blank\">hpr4146</a></strong>\n(2024-06-24) \"<em>Pi 5 - Some initial thoughts</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0296.html\" target=\"_blank\">Kevie</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4146/index.html#comment_4006\" target=\"_blank\">Comment 1</a>:\nDave Morriss on 2024-06-28:\n\"Comparing the Intel N100 and RPi 5\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4148/index.html#comments\" target=\"_blank\">hpr4148</a></strong>\n(2024-06-26) \"<em>Cheap Computers</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0431.html\" target=\"_blank\">Moss Bliss</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4148/index.html#comment_4005\" target=\"_blank\">Comment 1</a>:\nHenrik Hemrin on 2024-06-26:\n\"Refurbished computers\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4169/index.html#comments\" target=\"_blank\">hpr4169</a></strong>\n(2024-07-25) \"<em> HPR New Years Eve Show 2023 - 24 ep 4</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0269.html\" target=\"_blank\">Honkeymagoo</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4169/index.html#comment_4002\" target=\"_blank\">Comment 1</a>:\nRob on 2024-06-24:\n\"One person talking\"</li></ul><br/>\n</li></ul>\n\n<h2>Mailing List discussions</h2>\n<p>\nPolicy decisions surrounding HPR are taken by the community as a whole. This\ndiscussion takes place on the <a href=\"https://hackerpublicradio.org/maillist\"\ntarget=\"_blank\">Mail List</a> which is open to all HPR listeners and\ncontributors. The discussions are open and available on the HPR server under\n<a href=\"https://lists.hackerpublicradio.com/pipermail/hpr\">Mailman</a>.\n</p>\n<p>The threaded discussions this month can be found here:</p>\n<a href=\"https://lists.hackerpublicradio.com/pipermail/hpr/2024-June/thread.html\" target=\"_blank\">https://lists.hackerpublicradio.com/pipermail/hpr/2024-June/thread.html</a>\n\n\n<h2>Events Calendar</h2>\n<p>With the kind permission of <strong>LWN.net</strong> we are linking to\n<a href=\"https://lwn.net/Calendar/\" target=\"_blank\">The LWN.net Community Calendar</a>.</p>\n<p>Quoting the site:</p>\n<blockquote>This is the LWN.net community event calendar, where we track\nevents of interest to people using and developing Linux and free software.\nClicking on individual events will take you to the appropriate web\npage.</blockquote>\n\n<h2>Any other business</h2>\n<h3 id=\"developing-new-static-feeds\">Developing new static feeds</h3>\n<ul>\n<li><p>RSS feeds are currently being created in real time on\n<code>hub.hackerpublicradio.org</code>. The plan has always been to make\nall feeds static, generated by the <code>site-generator</code> script in\nthe <code>hpr_generator</code> repository.</p></li>\n<li><p>Changing RSS feeds is a dangerous process in that feed readers,\npodcatchers and so on can be triggered by what appear like insignificant\nchanges, making them download files that have already been downloaded,\neven though they are the not different.</p></li>\n<li><p>Work is ongoing to produce new (<em>static</em>) feeds, but they\nwill need extensive testing before they can be released to the world at\nlarge.</p></li>\n<li><p>To do this we will need testers, so it would be appreciated if we\ncould call upon volunteers to assist with this process.</p></li>\n</ul>\n<p></p>\n\n\n',159,47,1,'CC-BY-SA','Community News',0,0,1),
(4176,'2024-08-05','HPR Community News for July 2024',2943,'HPR Volunteers talk about shows released and comments posted in July 2024','<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/0433.html\" target=\"_blank\">Trollercoaster</a>, \n    <a href=\"https://hackerpublicradio.org/correspondents/0434.html\" target=\"_blank\">Lochyboy</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/hpr4151/index.html\" target=\"_blank\">4151</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-07-01</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4151/index.html\" target=\"_blank\">HPR Community News for June 2024</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/hpr4152/index.html\" target=\"_blank\">4152</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-07-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4152/index.html\" target=\"_blank\">URandom Pirate Episode </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/hpr4153/index.html\" target=\"_blank\">4153</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-07-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4153/index.html\" target=\"_blank\">Steading as she goes!</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/hpr4154/index.html\" target=\"_blank\">4154</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-07-04</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4154/index.html\" target=\"_blank\">About HPR</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/hpr4155/index.html\" target=\"_blank\">4155</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-07-05</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4155/index.html\" target=\"_blank\">GNU sleep tips</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0194.html\" target=\"_blank\">Deltaray</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4156/index.html\" target=\"_blank\">4156</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-07-08</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4156/index.html\" target=\"_blank\">Badger 2040</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0296.html\" target=\"_blank\">Kevie</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4157/index.html\" target=\"_blank\">4157</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-07-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4157/index.html\" target=\"_blank\">Talking with Halla about the past and future of Krita for its 25th birthday</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0433.html\" target=\"_blank\">Trollercoaster</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4158/index.html\" target=\"_blank\">4158</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-07-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4158/index.html\" target=\"_blank\">Alexander\'s Introduction</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0434.html\" target=\"_blank\">Lochyboy</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4159/index.html\" target=\"_blank\">4159</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-07-11</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4159/index.html\" target=\"_blank\">HPR New Years Eve Show 2023 - 24 ep 3</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/hpr4160/index.html\" target=\"_blank\">4160</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-07-12</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4160/index.html\" target=\"_blank\">Passkeys</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/hpr4161/index.html\" target=\"_blank\">4161</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-07-15</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4161/index.html\" target=\"_blank\">Building a retro gaming console with a Raspberry Pi</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0296.html\" target=\"_blank\">Kevie</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4162/index.html\" target=\"_blank\">4162</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-07-16</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4162/index.html\" target=\"_blank\">HPR music project - Walking tune from Äppelbo</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0422.html\" target=\"_blank\">Fred Black</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4163/index.html\" target=\"_blank\">4163</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-07-17</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4163/index.html\" target=\"_blank\">Reintroducing myself while discussing Samba and tiny computers</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0290.html\" target=\"_blank\">Al</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4164/index.html\" target=\"_blank\">4164</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-07-18</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4164/index.html\" target=\"_blank\">Postgraduate Computing</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0403.html\" target=\"_blank\">Lee</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4165/index.html\" target=\"_blank\">4165</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-07-19</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4165/index.html\" target=\"_blank\">A circle of Moss</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/hpr4166/index.html\" target=\"_blank\">4166</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-07-22</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4166/index.html\" target=\"_blank\">Everybody organize Software Freedom Day!</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0433.html\" target=\"_blank\">Trollercoaster</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4167/index.html\" target=\"_blank\">4167</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-07-23</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4167/index.html\" target=\"_blank\">Removing another obstacle to recording an HPR show</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0246.html\" target=\"_blank\">Beeza</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4168/index.html\" target=\"_blank\">4168</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-07-24</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4168/index.html\" target=\"_blank\">Beyond Economic Recovery</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/hpr4169/index.html\" target=\"_blank\">4169</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2024-07-25</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4169/index.html\" target=\"_blank\"> HPR New Years Eve Show 2023 - 24 ep 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/hpr4170/index.html\" target=\"_blank\">4170</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2024-07-26</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4170/index.html\" target=\"_blank\">Playing Civilization III, Part 5</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/hpr4171/index.html\" target=\"_blank\">4171</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2024-07-29</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4171/index.html\" target=\"_blank\">Al discusses the renovation of his bathroom</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0290.html\" target=\"_blank\">Al</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr4172/index.html\" target=\"_blank\">4172</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2024-07-30</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4172/index.html\" target=\"_blank\">Re: hpr4072 Piper voice synthesis</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/hpr4173/index.html\" target=\"_blank\">4173</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2024-07-31</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr4173/index.html\" target=\"_blank\">Getting my 2015 Macbook Pro back up and running</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0297.html\" target=\"_blank\">swift110</a></td>\n</tr>\n</table>\n\n<h2>Comments this month</h2>\n\n<p>These are comments which have been made during the past month, either to shows released during the month or to past shows.\nThere are 23 comments in total.</p>\n<h3>Past shows</h3>\n<p>There are 3 comments on\n2 previous shows:</p>\n<ul>\n<li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4135/index.html#comments\" target=\"_blank\">hpr4135</a></strong>\n(2024-06-07) \"<em>Mining the web</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0387.html\" target=\"_blank\">Cedric De Vroey</a>.<br/>\n<li style=\"list-style: none; display: inline\">\n<ul>\n<li>\n<a href=\"https://hackerpublicradio.org/eps/hpr4135/index.html#comment_4023\" target=\"_blank\">Comment 3</a>:\nhobs on 2024-07-28:\n\"Federated DB of domains?\"</li>\n<li>\n<a href=\"https://hackerpublicradio.org/eps/hpr4135/index.html#comment_4026\" target=\"_blank\">Comment 4</a>:\nCedric on 2024-08-01:\n\"Follow up\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4148/index.html#comments\" target=\"_blank\">hpr4148</a></strong>\n(2024-06-26) \"<em>Cheap Computers</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0431.html\" target=\"_blank\">Moss Bliss</a>.<br/>\n<li style=\"list-style: none; display: inline\">\n<ul>\n<li>\n<a href=\"https://hackerpublicradio.org/eps/hpr4148/index.html#comment_4018\" target=\"_blank\">Comment 2</a>:\ndnt on 2024-07-24:\n\"Used corporate computers\"</li></ul><br/>\n</li></ul>\n<h3>This month\'s shows</h3>\n<p>There are 20 comments on 9 of this month\'s shows:</p>\n<ul><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4153/index.html#comments\" target=\"_blank\">hpr4153</a></strong>\n(2024-07-03) \"<em>Steading as she goes!</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0225.html\" target=\"_blank\">Dave Morriss</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4153/index.html#comment_4007\" target=\"_blank\">Comment 1</a>:\nTrey on 2024-07-03:\n\"Wood finishing\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4153/index.html#comment_4008\" target=\"_blank\">Comment 2</a>:\nHenrik Hemrin on 2024-07-08:\n\"Teleprinter\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4153/index.html#comment_4009\" target=\"_blank\">Comment 3</a>:\nMrX on 2024-07-08:\n\"Re Wood Finishing\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4153/index.html#comment_4010\" target=\"_blank\">Comment 4</a>:\nMrX on 2024-07-08:\n\"Re Teleprinter\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4153/index.html#comment_4017\" target=\"_blank\">Comment 5</a>:\ndnt on 2024-07-24:\n\"Studio C\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4153/index.html#comment_4020\" target=\"_blank\">Comment 6</a>:\nDave Morriss on 2024-07-24:\n\"Re: Studio C\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4157/index.html#comments\" target=\"_blank\">hpr4157</a></strong>\n(2024-07-09) \"<em>Talking with Halla about the past and future of Krita for its 25th birthday</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0433.html\" target=\"_blank\">Trollercoaster</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4157/index.html#comment_4014\" target=\"_blank\">Comment 1</a>:\nKevin O&#39;Brien on 2024-07-15:\n\"I loved the show\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4158/index.html#comments\" target=\"_blank\">hpr4158</a></strong>\n(2024-07-10) \"<em>Alexander\'s Introduction</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0434.html\" target=\"_blank\">Lochyboy</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4158/index.html#comment_4011\" target=\"_blank\">Comment 1</a>:\nHenrik Hemrin on 2024-07-10:\n\"Thanks for your first show!\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4158/index.html#comment_4012\" target=\"_blank\">Comment 2</a>:\nDave Lee (thelovebug) on 2024-07-11:\n\"Congratulations on your first show\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4158/index.html#comment_4013\" target=\"_blank\">Comment 3</a>:\nPeter Paterson (SolusSpider) on 2024-07-15:\n\"Excellent Introduction\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4162/index.html#comments\" target=\"_blank\">hpr4162</a></strong>\n(2024-07-16) \"<em>HPR music project - Walking tune from Äppelbo</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0422.html\" target=\"_blank\">Fred Black</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4162/index.html#comment_4015\" target=\"_blank\">Comment 1</a>:\nFolky on 2024-07-16:\n\"More information\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4165/index.html#comments\" target=\"_blank\">hpr4165</a></strong>\n(2024-07-19) \"<em>A circle of Moss</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0030.html\" target=\"_blank\">Ken Fallon</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4165/index.html#comment_4016\" target=\"_blank\">Comment 1</a>:\nTrey on 2024-07-19:\n\"Wonderful discussion!\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4168/index.html#comments\" target=\"_blank\">hpr4168</a></strong>\n(2024-07-24) \"<em>Beyond Economic Recovery</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0149.html\" target=\"_blank\">Trixter</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4168/index.html#comment_4019\" target=\"_blank\">Comment 1</a>:\nHenrik Hemrin on 2024-07-24:\n\"Where in the world and the interest to preserve\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4168/index.html#comment_4024\" target=\"_blank\">Comment 2</a>:\nTrixter on 2024-07-30:\n\"Reply to Henrik\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4169/index.html#comments\" target=\"_blank\">hpr4169</a></strong>\n(2024-07-25) \"<em> HPR New Years Eve Show 2023 - 24 ep 4</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0269.html\" target=\"_blank\">Honkeymagoo</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4169/index.html#comment_4002\" target=\"_blank\">Comment 1</a>:\nRob on 2024-06-24:\n\"One person talking\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4172/index.html#comments\" target=\"_blank\">hpr4172</a></strong>\n(2024-07-30) \"<em>Re: hpr4072 Piper voice synthesis</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0318.html\" target=\"_blank\">Archer72</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4172/index.html#comment_4021\" target=\"_blank\">Comment 1</a>:\nKen Fallon on 2024-07-24:\n\"Fails on Fedora 40\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4172/index.html#comment_4022\" target=\"_blank\">Comment 2</a>:\nArcher72 on 2024-07-26:\n\"Re:Fails on Fedora 40\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4172/index.html#comment_4027\" target=\"_blank\">Comment 3</a>:\nKen Fallon on 2024-08-01:\n\"More issues\"</li><li><a href=\"https://hackerpublicradio.org/eps/hpr4172/index.html#comment_4028\" target=\"_blank\">Comment 4</a>:\nKen Fallon on 2024-08-02:\n\"It works\"</li></ul><br/>\n</li><li><strong><a href=\"https://hackerpublicradio.org/eps/hpr4174/index.html#comments\" target=\"_blank\">hpr4174</a></strong>\n(2024-08-01) \"<em>Of the Mic and the Mop</em>\"\nby <a href=\"https://hackerpublicradio.org/correspondents/0030.html\" target=\"_blank\">Ken Fallon</a>.</li>\n<li style=\"list-style: none; display: inline\">\n<ul><li><a href=\"https://hackerpublicradio.org/eps/hpr4174/index.html#comment_4025\" target=\"_blank\">Comment 1</a>:\nKnightwise on 2024-07-31:\n\"Posting on behalf of Knightwise, and with his permission.\"</li></ul><br/>\n</li></ul>\n\n<h2>Mailing List discussions</h2>\n<p>\nPolicy decisions surrounding HPR are taken by the community as a whole. This\ndiscussion takes place on the <a href=\"https://hackerpublicradio.org/maillist\"\ntarget=\"_blank\">Mail List</a> which is open to all HPR listeners and\ncontributors. The discussions are open and available on the HPR server under\n<a href=\"https://lists.hackerpublicradio.com/pipermail/hpr\">Mailman</a>.\n</p>\n<p>The threaded discussions this month can be found here:</p>\n<a href=\"https://lists.hackerpublicradio.com/pipermail/hpr/2024-July/thread.html\" target=\"_blank\">https://lists.hackerpublicradio.com/pipermail/hpr/2024-July/thread.html</a>\n\n\n<h2>Events Calendar</h2>\n<p>With the kind permission of <strong>LWN.net</strong> we are linking to\n<a href=\"https://lwn.net/Calendar/\" target=\"_blank\">The LWN.net Community Calendar</a>.</p>\n<p>Quoting the site:</p>\n<blockquote>This is the LWN.net community event calendar, where we track\nevents of interest to people using and developing Linux and free software.\nClicking on individual events will take you to the appropriate web\npage.</blockquote>\n\n<h2>Any other business</h2>\n<h3 id=\"repairing-shows-where-external-files-have-been-lost\">Repairing\nshows where external files have been lost</h3>\n<ul>\n<li><p>A number of HPR shows have \"external\" files. These are things\nlike pictures, videos, example scripts and configuration files. During\nthe move to the current static site these were not copied over, and the\nshows on the HPR server have been incomplete since then (the Internet\nArchive versions are complete however).</p></li>\n<li><p>A process to \"repair\" these shows has been started. It relies on\nthe fact that there are copies of the lost files on the Internet\nArchive, and on a backup disk. These are being copied across to the HPR\nserver and linked into shows again.</p></li>\n<li><p>We are restoring the missing parts of shows one at a time. The\nprocess is largely automated, but there is still a manual component. We\nare gradually fully automating it as time allows.</p></li>\n<li><p>We will document the progress here.</p></li>\n<li><p>This is the current repair state:</p></li>\n</ul>\n<pre><code>    +------------+------------+--------------+------------------+\n    |    date    | repairable | repair_count | unrepaired_count |\n    +------------+------------+--------------+------------------+\n    | 2024-08-01 | 352        | 148          | 204              |\n    +------------+------------+--------------+------------------+</code></pre>\n<h3 id=\"spectrum24-conference\">Spectrum24 Conference</h3>\n<ul>\n<li><p>spectrumconf@mastodon.radio - Remember, the call-for-booths for\nthe #spectrum24 conference is still open: If you are interested in\nshowing of your project to an audience that is just as passionate about\nradio as you, drop us a mail: info@spectrum-conference.org</p></li>\n<li><p>Check out the list of currently confirmed booths<br />\n<a href=\"https://spectrum-conference.org/24/booths\"\nclass=\"uri\">https://spectrum-conference.org/24/booths</a></p></li>\n<li><p>Spectrum24 is free but, to manage the practicle side of the\nconference, we do ask you to register: <a\nhref=\"https://ticketplace.ch/?op=booking&amp;id=45\"\nclass=\"uri\">https://ticketplace.ch/?op=booking&amp;id=45</a></p></li>\n<li><p>#hamradio #callforbooths</p></li>\n</ul>\n<p></p>\n\n\n',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\nway, nobody else\'s way.</p>\n<p>So, what advice can I give to those who don\'t want SystemD now? Well,\nrecently I\'ve left Debian. Debian, you see, supports init system\ndiversity, but as you now know dear listener, that is different than\nbeing without SystemD. You may have heard that SystemD is\nlinux-specific, that is to say that it runs only on linux, not anything\nlike a BSD system or a Windows system. But you may be curious to know\nthat it is also Gnu-libC specific. Which means that the C compiler must\nuse GNU\'s libC standard library. Thus, if you have a system built around\nthe Musl C standard library like Alpine or Void, or a system like\nAndroid that runs on the Bionic C Standard library, you wont have a\nSystemD system. I\'m personally learning Void as its package manager\nsupports both binary and a ports collection much like the BSD\'s. But\nthat is what I\'m doing on my personal computer, I leave you in the\nfreedom to do things your way on your personal computer!</p>\n\n',73,99,0,'CC-BY-SA','systemd,linux',0,0,1),
(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 maintain a healthy friendship.</p>\n',78,108,0,'CC-BY-SA','autism,friendship,relationship,social engineering',0,0,1),
(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\"?</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 of protecting information by mitigating <a\nhref=\"https://en.wikipedia.org/wiki/Information\"\ntitle=\"From Wikipedia, the free encyclopedia\">information</a> risks. It\nis part of <a\nhref=\"https://en.wikipedia.org/wiki/Risk_management_information_systems\"\ntitle=\"From Wikipedia, the free encyclopedia\">information risk\nmanagement</a>.\n<ul>\n<li><strong>Information Security Attributes:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Confidentiality\"\ntitle=\"From Wikipedia, the free encyclopedia\">Confidentiality</a>, <a\nhref=\"https://en.wikipedia.org/wiki/Data_integrity\"\ntitle=\"From Wikipedia, the free encyclopedia\">Integrity</a> and <a\nhref=\"https://en.wikipedia.org/wiki/Availability\"\ntitle=\"From Wikipedia, the free encyclopedia\">Availability</a> (C.I.A.).\nInformation Systems are composed in three main portions, hardware,\nsoftware and communications with the purpose to help identify and apply\ninformation security industry standards, as mechanisms of protection and\nprevention, at three levels or layers: physical, personal and\norganizational. Essentially, procedures or policies are implemented to\ntell administrators, users and operators how to use products to ensure\ninformation security within the organizations.</li>\n</ul></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Risk_management\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is \"Risk\nmanagement\"?</a> Risk management is the identification, evaluation, and\nprioritization of risks followed by coordinated and economical\napplication of resources to minimize, monitor, and control the\nprobability or impact of unfortunate events or to maximize the\nrealization of opportunities.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Vulnerability_(computing)\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is a \"Vulnerability\"\n(computing)?</a> Vulnerabilities are flaws in a computer system that\nweaken the overall security of the device/system. Vulnerabilities can be\nweaknesses in either the hardware itself, or the software that runs on\nthe hardware.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Attack_surface\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is an \"Attack\nSurface\"?</a> The attack surface of a software environment is the sum of\nthe different points (for \"attack vectors\") where an unauthorized user\n(the \"attacker\") can try to enter data to or extract data from an\nenvironment. Keeping the attack surface as small as possible is a basic\nsecurity measure.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Attack_vector\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is an \"Attack\nVector\"?</a> In computer security, an attack vector is a specific path,\nmethod, or scenario that can be exploited to break into an IT system,\nthus compromising its security. The term was derived from the\ncorresponding notion of vector in biology. An attack vector may be\nexploited manually, automatically, or through a combination of manual\nand automatic activity.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Standardization\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is\n\"Standardization\"?</a> Standardization is the process of implementing\nand developing technical standards based on the consensus of different\nparties that include firms, users, interest groups, standards\norganizations and governments. Standardization can help maximize\ncompatibility, interoperability, safety, repeatability, or quality. It\ncan also facilitate a normalization of formerly custom processes.\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/List_of_computer_standards\"\ntitle=\"From Wikipedia, the free encyclopedia\">List of computer\nstandards.</a></li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/List_of_technical_standard_organizations\"\ntitle=\"From Wikipedia, the free encyclopedia\">List of technical standard\norganizations.</a></li>\n</ul></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Replay_attack\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is a \"Replay\nattack\"?</a> A replay attack is a form of network attack in which valid\ndata transmission is maliciously or fraudulently repeated or delayed.\nAnother way of describing such an attack is: \"an attack on a security\nprotocol using a replay of messages from a different context into the\nintended (or original and expected) context, thereby fooling the honest\nparticipant(s) into thinking they have successfully completed the\nprotocol run.\"</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Man-in-the-middle_attack\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is a\n\"Man-in-the-middle attack\"?</a> In cryptography and computer security, a\nman-in-the-middle, ..., attack is a cyberattack where the attacker\nsecretly relays and possibly alters the communications between two\nparties who believe that they are directly communicating with each\nother, as the attacker has inserted themselves between the two\nparties.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Transport_Layer_Security\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is \"Transport Layer\nSecurity\" (TLS)?</a> Transport Layer Security (TLS) is a cryptographic\nprotocol designed to provide communications security over a computer\nnetwork. The protocol is widely used in applications such as email,\ninstant messaging, and voice over IP, but its use in securing HTTPS\nremains the most publicly visible.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Handshake_(computing)\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is a \"Handshake\"\n(computing)?</a>. In computing, a handshake is a signal between two\ndevices or programs, used to, e.g., authenticate, coordinate. An example\nis the handshaking between a hypervisor and an application in a guest\nvirtual machine.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Security_theater\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is Security\ntheater?</a> The practice of taking security measures that are\nconsidered to provide the feeling of improved security while doing\nlittle or nothing to achieve it.<br />\n</li>\n</ul></li>\n</ul>\n<hr />\n<ul>\n<li><strong>License:</strong> <a\nhref=\"https://creativecommons.org/licenses/by-sa/4.0/legalcode\">Creative\nCommons Attribution-ShareAlike 4.0 International</a>\n<a rel=\"license\" href=\"http://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\nwork is licensed under a\n<a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\">Creative\nCommons Attribution-ShareAlike 4.0 International License</a>.</li>\n</ul>\n',391,74,0,'CC-BY-SA','Oh No News, InfoSec, browser security, session tokens, session id',0,0,1),
(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(use-package magit)\n\n(use-package git-timemachine)\n\n;; rest APIs via org source block\n(use-package ob-restclient)\n\n;;; END ;;;\n\n(provide &#39;init-base)\n;;; init-base.el ends here</code></pre>\n',399,0,0,'CC-BY-SA','emacs,elisp',0,0,1),
(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-c B o&quot; . org-board-open)\n          (&quot;C-c B D&quot; . org-board-delete-all)))\n\n;;;;;;;;;;;;;;;\n;;; Writing ;;;\n;;;;;;;;;;;;;;;\n\n; something like grammarly, but open source\n(use-package langtool)\n\n;; better than docview, for pdf\n(use-package pdf-tools)\n\n;; annotating docs in org files\n(use-package org-noter)\n\n;; epub\n(use-package nov\n :mode (&quot;\\\\.epub$&quot; . nov-mode))\n\n;;; Invoke quick emacs windows to edit anything anywhere.\n;;; bind a key in xorg to ~emacsclient -c (emacs-everywhere)~\n(use-package emacs-everywhere)\n\n;;;;;;;;;;;;;;\n;;; Auctex ;;;\n;;;;;;;;;;;;;;\n(straight-use-package &#39;( auctex\n  :host nil :repo &quot;https://git.savannah.gnu.org/git/auctex.git&quot;\n  :pre-build ((&quot;./autogen.sh&quot;)\n                  (&quot;./configure&quot; &quot;--without-texmf-dir&quot; &quot;--with-lispdir=.&quot;)\n                  (&quot;make&quot;))))\n\n  (setq TeX-data-directory (expand-file-name &quot;straight/repos/auctex&quot; user-emacs-directory)\n      TeX-lisp-directory TeX-data-directory)\n\n  (eval-after-load &#39;info\n      &#39;(add-to-list &#39;Info-additional-directory-list\n          (expand-file-name &quot;straight/repos/auctex/doc&quot; user-emacs-directory)))\n  (load (expand-file-name &quot;straight/repos/auctex/auctex.el&quot; user-emacs-directory) nil t t)\n  (load (expand-file-name &quot;straight/repos/auctex/preview-latex.el&quot; user-emacs-directory) nil t t)\n\n(use-package evil-tex)\n\n(use-package latex-preview-pane\n  :custom (latex-preview-pane-use-frame t))\n\n(use-package adaptive-wrap)\n\n;;; END AUCTEX ;;;\n\n;;;;;;;;;;;;;;;;;;;\n;;; Programming ;;;\n;;;;;;;;;;;;;;;;;;;\n\n;; downloading and viewing Dash documentation files\n(use-package dash-docs\n  :init (defun elisp-doc ()\n            (setq-local consult-dash-docsets &#39;(&quot;Emacs Lisp&quot;)))\n        (add-hook &#39;emacs-lisp-mode-hook &#39;elisp-doc)\n  :custom (dash-docs-docsets-path (expand-file-name &quot;docsets&quot; user-emacs-directory))\n          (dash-docs-browse-func &#39;eww))\n\n(use-package consult-dash\n  :straight (:host codeberg :repo &quot;rahguzar/consult-dash&quot;)\n  :bind ((&quot;M-s d&quot; . consult-dash))\n  :after consult\n  :config\n  ;; Use the symbol at point as initial search term\n  (consult-customize consult-dash :initial (thing-at-point &#39;symbol)))\n\n;;;;;;;;;;;;;\n;;; Email ;;;\n;;;;;;;;;;;;;\n\n(use-package notmuch\n  :commands notmuch\n  :config (defun notmuch-show-view-html ()\n            &quot;Open the text/html part of the current message using\n            `notmuch-show-view-part&#39;. From https://emacs.stackexchange.com/a/63457&quot;\n            (interactive)\n            (save-excursion\n                (goto-char (prop-match-beginning\n                            (text-property-search-forward\n                            :notmuch-part &quot;text/html&quot;\n                            (lambda (value notmuch-part)\n                                (equal (plist-get notmuch-part :content-type)\n                            value)))))\n            (notmuch-show-view-part)))\n          ;; Enable link to message via org-store-link\n          (load-file (expand-file-name &quot;org-notmuch.el&quot; user-emacs-directory))\n          (require &#39;org-notmuch)\n  :bind (:map notmuch-show-mode-map\n              (&quot;. v&quot; . notmuch-show-view-html))\n  :custom (notmuch-draft-folder &quot;local/drafts&quot;)\n          (notmuch-search-oldest-first nil)\n          (notmuch-fcc-dirs &quot;fastmail/sent&quot;)\n          (notmuch-tagging-keys &#39;((&quot;r&quot; (&quot;+receipt&quot; &quot;-inbox&quot;) &quot;Receipt&quot;)))\n          (sendmail-program (executable-find &quot;msmtp&quot;))\n          (message-sendmail-f-is-evil t)\n          (message-sendmail-extra-arguments &#39;(&quot;--read-envelope-from&quot;)))\n\n(use-package khardel\n  :after notmuch\n  :bind (:map notmuch-message-mode-map\n         (&quot;C-c M-k&quot; . khardel-insert-email)))\n\n;;;;;;;;;;;;\n;;; PASS ;;;\n;;;;;;;;;;;;\n\n(use-package pass)\n\n;;;;;;;;;;;;\n;;; EXWM ;;;\n;;;;;;;;;;;;\n\n(use-package xelb\n  :disabled t\n  :straight (:host github :repo &quot;ch11ng/xelb&quot;))\n\n(use-package exwm\n  :disabled t\n  :straight (:host github :repo &quot;ch11ng/exwm&quot;)\n  :defer t\n  :config (require &#39;exwm-systemtray)\n          (require &#39;exwm-randr)\n          (setq xcb:connection-timeout 20)\n          (exwm-systemtray-enable)\n          (add-hook &#39;exwm-update-class-hook\n                  (lambda ()\n                  (exwm-workspace-rename-buffer exwm-class-name)))\n          (add-hook &#39;exwm-randr-screen-change-hook\n                    (lambda ()\n                      (start-process-shell-command\n                       &quot;autorandr&quot; nil &quot;autorandr -c&quot;)))\n          (defun exwm-randr-mobile()\n          &quot;Load a xrandr profile to use only the laptop screen.&quot;\n          (interactive)\n          (start-process-shell-command &quot;xrandr&quot; nil &quot;xrandr --output eDP-1 --auto --output DP-1 --off&quot;))\n          (defun exwm-randr-docked()\n          &quot;Load a xrandr profile to use only the connected external screen DP-1.&quot;\n          (interactive)\n          (start-process-shell-command &quot;xrandr&quot; nil &quot;xrandr --output eDP-1 --off --output DP-1 --auto&quot;))\n          (defun exwm-randr-chair()\n          &quot;Load a xrandr profile to use both the laptop screen and the connected screen.&quot;\n          (interactive)\n          (start-process-shell-command &quot;xrandr&quot; nil &quot;xrandr --output HDMI-1 --auto --scale 1.3 --output eDP-1 --off&quot;))\n          (defun exwm-randr-all()\n          &quot;Load a xrandr profile to use both the laptop screen and the connected screen.&quot;\n          (interactive)\n          (start-process-shell-command &quot;xrandr&quot; nil &quot;xrandr --output eDP-1 --primary --output DP-1 --above eDP-1&quot;)\n          (setq exwm-randr-workspace-output-plist &#39;(0 &quot;eDP-1&quot; 1 &quot;DP-1&quot;))\n          )\n          (exwm-randr-enable)\n    :custom (exwm-input-global-keys\n              `((,(kbd &quot;s-r&quot;) . exwm-reset)\n                (,(kbd &quot;s-w&quot;) . exwm-workspace-switch)\n                (,(kbd &quot;s-a&quot;) . exwm-randr-all)\n                (,(kbd &quot;s-c&quot;) . exwm-randr-chair)\n                (,(kbd &quot;s-d&quot;) . exwm-randr-docked)\n                (,(kbd &quot;s-m&quot;) . exwm-randr-mobile)\n                (,(kbd &quot;s-k&quot;) . exwm-input-release-keyboard)\n                (,(kbd &quot;s-f&quot;) . exwm-layout-toggle-fullscreen)\n                (,(kbd &quot;s-p&quot;) . pass)\n                (,(kbd &quot;s-t&quot;) . exwm-workspace-switch-to-buffer)\n                (,(kbd &quot;s-&amp;&quot;) . (lambda (command)\n                                       (interactive (list (read-shell-command &quot;$ &quot;)))\n                                       (start-process-shell-command command nil command)))\n                ,@(mapcar (lambda (i)\n                       `(,(kbd (format &quot;s-%d&quot; i)) .\n                           (lambda ()\n                               (interactive)\n                               (exwm-workspace-switch-create ,i))))\n                     (number-sequence 0 9))\n                ))\n          )\n\n;; start emacs server\n(server-start)\n\n;;; END ;;;\n\n(provide &#39;init-extra)\n;;; init-extra.el ends here</code></pre>\n',399,0,0,'CC-BY-SA','emacs,elisp',0,0,1),
(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. It’s 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 RE’s 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;</code></pre>\n<p>Note that <code>ack</code> reports the file path and numbered lines\nwithin it that match.</p>\n<p>You can add your own file types to <code>ack</code>. There is a\nconfiguration file called <code>.ackrc</code> in which new types can be\ndeclared. See below for more information.</p>\n<p>The file type feature is one that makes me use <code>ack</code> again\nand again.</p>\n<h2 id=\"the-.ackrc-file\">The <code>.ackrc</code> file</h2>\n<p>This file contains <em>“command-line options that are prepended to\nthe command line before processing”</em>.</p>\n<p>It’s a useful way to add new types (or even modify existing\nones).</p>\n<p>It can be located in a number of places. Mine is\n<code>~/.ackrc</code> with other configuration files in my home\ndirectory.</p>\n<p>It’s possible to generate a new <code>.ackrc</code> with the option\n<code>--create-ackrc</code>. This saves all the default settings in the\nfile which makes it simple to adjust anything you need to change.</p>\n<p>As an example of a change, I have Markdown files with the extension\n<code>.mkd</code>. However, by default <code>ack</code> only recognises\n<code>.md</code>, and <code>.markdown</code>. To add <code>.mkd</code>\nto the list I can add one of the following to the\n<code>.ackrc</code>:</p>\n<pre><code># Either add `.mkd` to the list\n--type-add=markdown:ext:mkd\n# or replace the list with a new one\n--type-set=markdown:ext:md,mkd,markdown</code></pre>\n<p>Note that lines beginning with <code>#</code> are comments. Note also\nthat <code>--type-add</code> and <code>--type-set</code> have to be\nfollowed by an <code>=</code> sign, not a space in this file.</p>\n<p>If you examine the settings with <code>ack --dump</code> you will see\nthe default command and the one you have added. If you use\n<code>ack --help-types</code> you will see the new extension added to\nthe default list.</p>\n<pre><code>markdown     .md .markdown; .mkd</code></pre>\n<p>If I use this to search files in the directory where I keep my HPR\nepisodes I see:</p>\n<pre><code>$ ack --markdown &#39;inner ear&#39;\nHacking_my_inner_ear/hpr2109_full_shownotes.mkd\n24:became fascinated by the structure of the human [inner ear][2], and studied it\n28:The human inner ear performs two major functions:\n.\n.\n.</code></pre>\n<h2 id=\"quick-review-of-selected-ack-options\">Quick review of selected\n<code>ack</code> options</h2>\n<h3 id=\"usage\">Usage</h3>\n<p>The <code>ack</code> command is designed to be similar in as many\nrespects as possible to <code>grep</code>. The command is used in\ngeneral as follows:</p>\n<pre><code>ack [OPTION]... PATTERN [FILES OR DIRECTORIES]</code></pre>\n<p>The <code>[OPTION]</code> part denotes any options (some discussed\nbelow) and <code>PATTERN</code> is the PCRE search pattern. There are\nsome cases where this must be omitted - such as when files of a\nparticular type are being listed. See example 1 below for such a\ncase.</p>\n<p>In some cases a particular file is being searched, or all files in\ncertain directories, and that is what\n<code>[FILES OR DIRECTORIES]</code> denotes.</p>\n<p>The full documentation for <code>ack</code> can be seen with the\nusual <code>man ack</code> command, and also using\n<code>ack --man</code>. There is also an option <code>--help</code>\nwhich gives a summary of all of the available options.</p>\n<h3 id=\"options\">Options</h3>\n<p>There are many options specific to <code>ack</code> and some in\ncommon with <code>grep</code>, and we’ll look at just a few here:</p>\n<ul>\n<li><p><code>-i</code> - like <code>grep</code> this makes the matched\npattern case insensitive.</p></li>\n<li><p><code>-f</code> - Only print the files that would be searched,\nwithout actually doing any searching. See example 1 below.</p></li>\n<li><p><code>-g</code> - Same as -f, but only select files whose names\nmatch PATTERN. This interacts with file type searches like\n<code>--html</code>, so beware.</p></li>\n<li><p><code>-l</code> - reports the file names which contain matches\nfor a given pattern</p></li>\n<li><p><code>-L</code> - reports the file names which <em>do not</em>\ncontain matches for a given pattern</p></li>\n<li><p><code>-c</code> - reports file names and the number of matches;\nused on its own it reports <em>all</em> files, those that match and\nthose that do not. If used with <code>-l</code> then you only see the\nnames of file that have matches, as well as a count of matches. See\nexample 2 below.</p></li>\n<li><p><code>-w</code> - forces the search pattern to match only whole\nwords. See example 3 below. (Note: there is an equivalent in GNU grep,\nwhich I had not checked when I recorded the audio).</p></li>\n</ul>\n<h2 id=\"examples\">Examples</h2>\n<h3 id=\"find-all-markdown-files-in-a-directory\">1. Find all Markdown\nfiles in a directory</h3>\n<p>Using the <code>-f</code> option:</p>\n<pre><code>$ ack --markdown -f Nitecore_Tube_torch/\nNitecore_Tube_torch/README.mkd\nNitecore_Tube_torch/container.mkd\nNitecore_Tube_torch/index.mkd\nNitecore_Tube_torch/shownotes.mkd</code></pre>\n<p>Using the <code>-g</code> option:</p>\n<pre><code>$ ack -g &#39;&bsol;.mkd$&#39; Nitecore_Tube_torch/\nNitecore_Tube_torch/README.mkd\nNitecore_Tube_torch/container.mkd\nNitecore_Tube_torch/index.mkd\nNitecore_Tube_torch/shownotes.mkd</code></pre>\n<h3 id=\"names-of-files-that-contain-a-match-with-a-match-count\">2. Names\nof files that contain a match, with a match count</h3>\n<p>Using the <code>-l</code> and <code>-c</code> options:</p>\n<pre><code>$ ack --markdown -lci &#39;&bsol;bear&bsol;b&#39;\nHacking_my_inner_ear/hpr2109_full_shownotes.mkd:11\nHacking_my_inner_ear/shownotes.mkd:3\nAn_overview_of_the_ack_command/shownotes.mkd:6</code></pre>\n<p>The sequence <code>\'&bsol;b\'</code> in Perl regular expressions is a\nboundary such as a word boundary. So the pattern is looking for the word\n<code>\'ear\'</code> as opposed to the characters <code>\'ear\'</code> (as\nin <code>\'pearl\'</code> for example).</p>\n<p>Note how the single-letter options <code>-l</code>, <code>-c</code>\nand <code>-i</code> can be concatenated.</p>\n<h3 id=\"searching-for-words-in-a-simpler-way\">3. Searching for words in\na simpler way</h3>\n<p>In example 2 the <code>&bsol;b</code> boundaries ensured the pattern\nmatched words rather than letter sequences. This can be simplified by\nusing the <code>-w</code> option:</p>\n<pre><code>$ ack --markdown -lci -w &#39;ear&#39;\nHacking_my_inner_ear/hpr2109_full_shownotes.mkd:11\nHacking_my_inner_ear/shownotes.mkd:3\nAn_overview_of_the_ack_command/shownotes.mkd:6</code></pre>\n<h2 id=\"links\">Links</h2>\n<ul>\n<li>The <code>ack</code> website:\n<ul>\n<li><a href=\"https://beyondgrep.com/\">ack!</a></li>\n</ul></li>\n</ul>\n<ul>\n<li>Perl regular expressions:\n<ul>\n<li><a href=\"https://perldoc.perl.org/perlreref.html\">RE reference\nmanual</a></li>\n<li><a href=\"https://perldoc.perl.org/perlretut.html\">RE\ntutorial</a></li>\n</ul></li>\n</ul>\n<ul>\n<li>PCRE: <em>Perl Compatible Regular Expressions</em>:\n<ul>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/Perl_Compatible_Regular_Expressions\">Wikipedia\narticle on PCRE</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Philip_Hazel\">Wikipedia\narticle on Philip Hazel</a></li>\n</ul></li>\n</ul>\n</article>\n',225,11,1,'CC-BY-SA','search,grep,regular expression,Perl',0,0,1),
(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> for generations, and since the 2000s has gained popularity internationally.\nThe tea has an earthy flavour that is similar to\n<a href=\"https://en.wikipedia.org/wiki/Yerba_mate\" title=\"Yerba mate\">yerba mate\n</a> or\n<a href=\"https://en.wikipedia.org/wiki/Tobacco\" title=\"Tobacco\">tobacco\n</a>.\n</p>\n<p>Rooibos was formerly classified as\n<i>\n<a href=\"https://en.wikipedia.org/wiki/Psoralea\" title=\"Psoralea\">Psoralea\n</a>\n</i> but is now thought to be part of\n<i>\n<a href=\"https://en.wikipedia.org/wiki/Aspalathus\" title=\"Aspalathus\">Aspalathus\n</a>\n</i> following\n<a href=\"https://en.wikipedia.org/wiki/Rolf_Dahlgren\" title=\"Rolf Dahlgren\">Dahlgren\n</a> (1980).\nThe\n<a href=\"https://en.wikipedia.org/wiki/Specific_name_(botany)\" class=\"mw-redirect\" title=\"Specific name (botany)\">specific name\n</a> of\n<i>linearis\n</i> was given by\n<a href=\"https://en.wikipedia.org/wiki/Nicolaas_Laurens_Burman\" title=\"Nicolaas Laurens Burman\">Burman\n</a> (1759)\nfor the plant\'s linear growing structure and needle-like leaves.\n\n</p>\n<p>\n<a href=\"https://en.wikipedia.org/wiki/File:Rooibos_geschnitten.jpg\" class=\"mw-file-description\">\n<img src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/4/46/Rooibos_geschnitten.jpg/220px-Rooibos_geschnitten.jpg\" decoding=\"async\" class=\"mw-file-element\" srcset=\"//upload.wikimedia.org/wikipedia/commons/thumb/4/46/Rooibos_geschnitten.jpg/330px-Rooibos_geschnitten.jpg 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/4/46/Rooibos_geschnitten.jpg/440px-Rooibos_geschnitten.jpg 2x\" data-file-width=\"1920\" data-file-height=\"1280\" width=\"220\" height=\"147\">\n</a>\n</p>\n\n',250,0,0,'CC-BY-SA','South Africa,Biltong,Rooibos,Afrikaans',0,0,1),
(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 of protecting information by mitigating <a\nhref=\"https://en.wikipedia.org/wiki/Information\"\ntitle=\"From Wikipedia, the free encyclopedia\">information</a> risks. It\nis part of <a\nhref=\"https://en.wikipedia.org/wiki/Risk_management_information_systems\"\ntitle=\"From Wikipedia, the free encyclopedia\">information risk\nmanagement</a>.\n<ul>\n<li><strong>Information Security Attributes:</strong> <a\nhref=\"https://en.wikipedia.org/wiki/Confidentiality\"\ntitle=\"From Wikipedia, the free encyclopedia\">Confidentiality</a>, <a\nhref=\"https://en.wikipedia.org/wiki/Data_integrity\"\ntitle=\"From Wikipedia, the free encyclopedia\">Integrity</a> and <a\nhref=\"https://en.wikipedia.org/wiki/Availability\"\ntitle=\"From Wikipedia, the free encyclopedia\">Availability</a> (C.I.A.).\nInformation Systems are composed in three main portions, hardware,\nsoftware and communications with the purpose to help identify and apply\ninformation security industry standards, as mechanisms of protection and\nprevention, at three levels or layers: physical, personal and\norganizational. Essentially, procedures or policies are implemented to\ntell administrators, users and operators how to use products to ensure\ninformation security within the organizations.</li>\n</ul></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Risk_management\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is \"Risk\nmanagement\"?</a> Risk management is the identification, evaluation, and\nprioritization of risks followed by coordinated and economical\napplication of resources to minimize, monitor, and control the\nprobability or impact of unfortunate events or to maximize the\nrealization of opportunities.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Vulnerability_(computing)\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is a \"Vulnerability\"\n(computing)?</a> Vulnerabilities are flaws in a computer system that\nweaken the overall security of the device/system. Vulnerabilities can be\nweaknesses in either the hardware itself, or the software that runs on\nthe hardware.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Attack_surface\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is an \"Attack\nSurface\"?</a> The attack surface of a software environment is the sum of\nthe different points (for \"attack vectors\") where an unauthorized user\n(the \"attacker\") can try to enter data to or extract data from an\nenvironment. Keeping the attack surface as small as possible is a basic\nsecurity measure.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Attack_vector\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is an \"Attack\nVector\"?</a> In computer security, an attack vector is a specific path,\nmethod, or scenario that can be exploited to break into an IT system,\nthus compromising its security. The term was derived from the\ncorresponding notion of vector in biology. An attack vector may be\nexploited manually, automatically, or through a combination of manual\nand automatic activity.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Standardization\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is\n\"Standardization\"?</a> Standardization is the process of implementing\nand developing technical standards based on the consensus of different\nparties that include firms, users, interest groups, standards\norganizations and governments. Standardization can help maximize\ncompatibility, interoperability, safety, repeatability, or quality. It\ncan also facilitate a normalization of formerly custom processes.\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/List_of_computer_standards\"\ntitle=\"From Wikipedia, the free encyclopedia\">List of computer\nstandards.</a></li>\n<li><a\nhref=\"https://en.wikipedia.org/wiki/List_of_technical_standard_organizations\"\ntitle=\"From Wikipedia, the free encyclopedia\">List of technical standard\norganizations.</a></li>\n</ul></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Replay_attack\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is a \"Replay\nattack\"?</a> A replay attack is a form of network attack in which valid\ndata transmission is maliciously or fraudulently repeated or delayed.\nAnother way of describing such an attack is: \"an attack on a security\nprotocol using a replay of messages from a different context into the\nintended (or original and expected) context, thereby fooling the honest\nparticipant(s) into thinking they have successfully completed the\nprotocol run.\"</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Man-in-the-middle_attack\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is a\n\"Man-in-the-middle attack\"?</a> In cryptography and computer security, a\nman-in-the-middle, ..., attack is a cyberattack where the attacker\nsecretly relays and possibly alters the communications between two\nparties who believe that they are directly communicating with each\nother, as the attacker has inserted themselves between the two\nparties.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Transport_Layer_Security\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is \"Transport Layer\nSecurity\" (TLS)?</a> Transport Layer Security (TLS) is a cryptographic\nprotocol designed to provide communications security over a computer\nnetwork. The protocol is widely used in applications such as email,\ninstant messaging, and voice over IP, but its use in securing HTTPS\nremains the most publicly visible.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Handshake_(computing)\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is a \"Handshake\"\n(computing)?</a>. In computing, a handshake is a signal between two\ndevices or programs, used to, e.g., authenticate, coordinate. An example\nis the handshaking between a hypervisor and an application in a guest\nvirtual machine.</li>\n<li><a href=\"https://en.wikipedia.org/wiki/Security_theater\"\ntitle=\"From Wikipedia, the free encyclopedia\">What is Security\ntheater?</a> The practice of taking security measures that are\nconsidered to provide the feeling of improved security while doing\nlittle or nothing to achieve it.<br />\n</li>\n</ul></li>\n</ul>\n<hr />\n<ul>\n<li><strong>License:</strong> <a\nhref=\"https://creativecommons.org/licenses/by-sa/4.0/legalcode\">Creative\nCommons Attribution-ShareAlike 4.0 International</a>\n<a rel=\"license\" href=\"http://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\nwork is licensed under a\n<a rel=\"license\" href=\"http://creativecommons.org/licenses/by-sa/4.0/\">Creative\nCommons Attribution-ShareAlike 4.0 International License</a>.</li>\n</ul>\n',391,74,0,'CC-BY-SA','User space, investment scams, recovery scams',0,0,1),
(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 +%F) &amp;&amp; pushd $(date +%F);\n}\n\nfunction .mkt (){\ntmpdir=$(mktemp -d /tmp/$(date +%F).XXXXXXXX) &amp;&amp; pushd ${tmpdir}\n}\n\nfunction .d (){\necho $(date +%F)$1 | xsel -i -b;\n}\n\n\nfunction .sh () {\nNEWSCRIPT=${1}.sh\n\ncat &gt;&gt; ${NEWSCRIPT} &lt;&lt; EOS\n#!/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: ${NEWSCRIPT}\n#Purpose:\n#Version: beta 0.01\n#Author: SGOTI (Some Guy On The Internet)\n#Date: $(date +%F)\n\n#variables:\n\n#start:\n\nexit;\nEOS\n\nif [ -f &quot;${NEWSCRIPT}&quot; ]\nthen\n    chmod 700 ${NEWSCRIPT}\nelse\n    echo &quot;Good Heavens! There isn&#39;t a &quot;${NEWSCRIPT}&quot;&quot;\nfi\n}\n\nfunction .fmd () {\nxsel -o -b | fmt -w 76 | sed &#39;s/$/  /g\ns/  /    /g\ns/   /    /g\ns/     /    /g\ns/$/  /g\ns/  *$/  /g\ns/&#xA0;/ /g&#39; | xsel -i -b;\n}\n</code></pre>\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: bfn.sh\n#Purpose: Create better file names.\n#Version: beta 0.01\n#Author: SGOTI (Some Guy On The Internet)\n#Date: 2022-11-08\n\n#variables:\noldname=$(echo ${1%.*})\nnewname=$(echo $oldname | sed &#39;s/ /-/g;s/_/-/g;s/./-/g;s/--*/-/g;/\\/d&#39; | tr [:upper:] [:lower:])\next1=&quot;.$(echo ${1##*.})&quot;\next2=&quot;.$(echo ${1##*.} | tr [:upper:] [:lower:])&quot;\n\n#start:\nfunction bcase () {\n    if [ -f $1 ]\n    then\n        echo -e &quot;renaming $oldnamen&quot;;\n        mv -v &quot;$oldname$ext1&quot; &quot;$newname$ext2&quot;;\n    else\n        mv -v &quot;$oldname&quot; &quot;$newname&quot;;\n    fi\n}\n\nbcase\nexit;</code></pre>\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: perm.sh\n#Purpose:\n#Version: beta 0.01\n#Author: SGOTI (Some Guy On The Internet)\n#Date: 2023-01-13\n\n#variables:\nvar_dir=${1}\n\n#start:\nfunction bfp () {\n    find &quot;${var_dir}&quot; -type d -exec chmod -R =700 {} +\n    find &quot;${var_dir}&quot; -type f -exec chmod -R =600 {} +\n}\n\nbfp\n\nexit;</code></pre>\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,42,1,'CC-BY-SA','Bash scripting, bash commands, bash_aliases',0,0,1),
(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, Nyckelharpa',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 (trading / military)</li>\n<li>cards are dense with information</li>\n</ul>\n<h1 id=\"example\">Example</h1>\n<ul>\n<li>I recorded myself playing against computer: [Race for the galaxy -\nthree medium AIs](<a\nhref=\"https://diode.zone/w/rw8z8pqeqAauENSufmgkjV\">https://diode.zone/w/rw8z8pqeqAauENSufmgkjV</a>).</li>\n<li>for some reason, you can\'t follow me outside of the instance</li>\n</ul>\n<h1 id=\"in-closing\">In closing</h1>\n<dl>\n<dt>- questions, comments, feedback?</dt>\n<dd>\n<ul>\n<li><a href=\"mailto:Tuula@mastodon.art\">Tuula@mastodon.art</a></li>\n<li>or even better, record your own episode</li>\n</ul>\n</dd>\n</dl>\n',364,0,0,'CC-BY-SA','race for the galaxy, card game',0,0,1),
(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 sound&#39;},\n {&#39;generated_text&#39;: &#39;2+2= 2 times 5, 865&#39;},\n {&#39;generated_text&#39;: &#39;2+2= 3 / 7 / 11 =&#39;},\n {&#39;generated_text&#39;: &#39;2+2= 2 2 \\n 2 of 2&#39;},\n {&#39;generated_text&#39;: &#39;2+2= 1, 9 = 1,&#39;}]</code></pre>\n<p>Here\'s the cow leg counting question:</p>\n<pre class=\"python\"><code>    q = &quot;There are 2 cows and 2 bulls, how many legs are there?&quot;\n    responses = generator(\n        f&quot;Question: {q}\\nAnswer: &quot;,\n        max_length=30,\n        num_return_sequences=10)\n    answers = []\n    for resp in responses:\n        text = resp[&#39;generated_text&#39;]\n        answers.append(text[text.find(&#39;Answer: &#39;)+9:])\n    answers</code></pre>\n<pre class=\"text\"><code>     &#39;four. \\n &quot; let me see if i have this straight&#39;,\n     &#39;only 3. and three cows and 2 bulls are bigger than&#39;,\n     &#39;2, 2, 1, 2. \\n &quot; not yet&#39;,\n     &quot;one per cow, that&#39;s all there is. in fact&quot;,\n     &#39;30. and what am i? oh, yes, about&#39;,\n     &#39;one. the big, white bull that is bigger than 1&#39;,\n     &#39;three. they need to be introduced to the cow population before&#39;,\n     &quot;1. i don&#39;t know how many and where exactly ;&quot;,\n     &#39;no 2. 2. two bulls for 1 bull and 2&#39;,\n     &#39;1, there are 1.2, and 2, there are&#39;]</code></pre>\n',424,0,0,'CC-BY-SA','AI, GPT, GPT-2, Llama2, Hugging Face, Machine Learning, Deep Learning, Natural Language Processing',0,0,1),
(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, which I use, set it to have a static IP, and set its DNS\nto point to localhost. Perfect! This works like a charm!</p>\n<h2 id=\"fourth-step-adlists\">Fourth Step: Adlists</h2>\n<p>Okay, phew! Crisis averted. Just some missing networking knowledge.\nSo what\'s next up on the list? Hmmm... Let\'s see... The default adlist\nis kinda small, let\'s go see if we can find some new adlists. Apparently\nthis is more difficult than you\'d think. A quick search on DDG only came\nup with an equivalent search in GitHub. Not useful! I have no idea the\ntrustworthiness and stability of these adlists. Let\'s see. Another\nsearch leads to a Reddit article that then links to a different list.\nBingo! <a href=\"https://firebog.net/\">An Adlist list</a>. Exactly what I\nneeded. I went ahead and looked into these lists, and added a few of\nthem. Perfect!</p>\n<h2 id=\"fifth-step-maintenance\">Fifth Step: Maintenance</h2>\n<p><code>docker compose pull &amp;&amp; docker compose up -d</code><br />\nOf course, this isn\'t it. I actually use an a/b update scheme, but you\nget the gist. Updates are taken care of, and just make sure you try and\nkeep the server up as long as possible, and keep downtime to a\nminimum.</p>\n<h2 id=\"sixth-step-moving-off-the-nas\">Sixth Step: Moving off the\nNAS.</h2>\n<p>After a while of running this, the necessity of having the NAS on the\nwhole time was starting to get frustrating. The answer there was to move\nit off the NAS. I did this by installing it on a Raspberry Pi 3B,\nrunning Arch Linux ARM. The setup was identical to before once I had\ngotten ALARM running.</p>\n',423,0,0,'CC-BY-SA','pi-hole,linux,networking,self-hosting',0,0,1),
