2023-08-16_07-40-58Z_Wednesday database changed

This commit is contained in:
ken_fallon committed 2023-08-16 09:40:58 +02:00
1 parent 5fa1c643fc
commit aebb885656
1 file changed
+9 -8
+9 -8
View File
@@ -12334,7 +12334,7 @@ CREATE TABLE `comments` (
`last_changed` datetime NOT NULL DEFAULT current_timestamp(),
PRIMARY KEY (`id`),
KEY `comments_eps_id_idx` (`eps_id`)
) ENGINE=MyISAM AUTO_INCREMENT=3792 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci COMMENT='New comments table populated from c5t_* tables';
) ENGINE=MyISAM AUTO_INCREMENT=3793 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci COMMENT='New comments table populated from c5t_* tables';
/*!40101 SET character_set_client = @saved_cs_client */;
--
@@ -16129,7 +16129,8 @@ INSERT INTO `comments` (`id`, `eps_id`, `comment_timestamp`, `comment_author_nam
(3787,3856,'2023-08-08 06:37:27','tuturto','great show','I loved listening you explaining about painting toy soldiers. I wanted to add, that if time needed to paint a 28mm figurine is too long, one can always try switching to a different scale. I especially enjoyed 10mm ancients, because they\'re faster to paint and look quite nice from the arms length.','2023-08-08 14:14:59'),
(3788,3840,'2023-08-08 06:57:58','tuturto','this brings back memories','I used to play civilization a lot and it\'s still a very awesome game. In my very first game, things went horribly wrong and when I finally got around having chariots, my neighbour just demolished them with their tanks. I clearly had been focusing on wrong things on that time.\r\n\r\nI\'m thinking that we should get our daughter to give it a try too and experience that \"one more turn\" behaviour.','2023-08-08 14:14:59'),
(3790,3919,'2023-08-10 15:41:59','one_of_spoons','Morphic resonance.','Some years ago I met someone who had been smoothing the staccato out from their voice. I noticed how some people yank their emphasis around, while others map layers of lilting meaning; almost musical but without singing. \r\nAlso I noticed how speaking a different language presented the opportunity to shake out some vocal habits.','2023-08-10 16:01:26'),
(3791,3919,'2023-08-12 12:26:52','tuturto','lilting','That is a good advice. Lilting, a voice that raises and falls, is often perceived more feminine than a steady one that doesn\'t change pitch that much. Another slightly related term is uptalk, where pitch raises slightly towards the end of sentence, making a statement sound more like a question. Uptalk is often perceived feminine, although it\'s not exclusively feminine trait.','2023-08-12 13:42:07');
(3791,3919,'2023-08-12 12:26:52','tuturto','lilting','That is a good advice. Lilting, a voice that raises and falls, is often perceived more feminine than a steady one that doesn\'t change pitch that much. Another slightly related term is uptalk, where pitch raises slightly towards the end of sentence, making a statement sound more like a question. Uptalk is often perceived feminine, although it\'s not exclusively feminine trait.','2023-08-12 13:42:07'),
(3792,3922,'2023-08-15 08:22:08','tuturto','my condolences','I\'m sorry for your loss.\r\n\r\nAlso, interesting to learn about silent key. I wasn\'t aware of that before.','2023-08-15 16:29:13');
/*!40000 ALTER TABLE `comments` ENABLE KEYS */;
UNLOCK TABLES;
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
@@ -18507,7 +18508,7 @@ INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hosti
(2304,'2017-06-01','Using Gnome 3 for the First Time',643,'Shane just switched his desktop environment from XFCE to Gnome 3. Here is his experience, so far.','<p>Here are the three Gnome 3 extensions I am enjoying:</p>\r\n<ul>\r\n<li>Clipboard indicator at <a href=\"https://extensions.gnome.org/extension/779/clipboard-indicator/\" class=\"uri\">https://extensions.gnome.org/extension/779/clipboard-indicator/</a></li>\r\n<li>Dynamic top bar at <a href=\"https://extensions.gnome.org/extension/885/dynamic-top-bar/\" class=\"uri\">https://extensions.gnome.org/extension/885/dynamic-top-bar/</a></li>\r\n<li>Removable drive menu at <a href=\"https://extensions.gnome.org/extension/7/removable-drive-menu/\" class=\"uri\">https://extensions.gnome.org/extension/7/removable-drive-menu/</a></li>\r\n</ul>',250,0,0,'CC-BY-SA','ubuntu, linux, xfce, gnome 3, desktop environment',0,0,1),
(2295,'2017-05-19','MX Linux',529,'Show about my latest Linux Distro find','<p>MX Linux OS</p>\r\n<p>Hi To all in HPR land, this is Tony Hughes in the UK back with you. I noticed that the queue has a couple of gaps in the next week or so here goes again.</p>\r\n<p>Apart from my last show I\'ve recently done shows on current Linux distro\'s that are suitable for older hardware but with a modern look and feel and fully featured with the latest software available.</p>\r\n<p>As you have probably gathered by now if you have listened to my other shows I am a big fan of older Lenovo Laptops. My main Lenovo is an X230i i3 with a 2.5G cpu and 8Gig of Ram and a 120Gig SSD, it did have Mint 17.3 running on it and after running Mint 18 / 18.1 for several months on my desktop PC I decided to upgrade to 18.1 on the X230i.</p>\r\n<p>I completed the install and on first boot after install the boot time had risen from about 40s to over 2 minutes, I suspected a problem with the install so did it again with the same result. I couldn\'t find any issues reported on the net so resorted to installing Linux Lite which is based on Ubuntu 16.04 as is Mint 18. The problem persisted after this install despite getting near 40s boots on the Lenovo X61s with an SSD and the same Distro.</p>\r\n<p>I did another web search but could not find any other reports of this issue with the X230i so put a post on the Facebook community Distro hoppers. The response I got back from one member was to try MX16.</p>\r\n<p>MX Linux is a joint venture from the antiX and former MEPIS communities and is based on the latest Debian Stable &quot;Jessie&quot; with the XFCE desk top environment.</p>\r\n<p>I duly downloaded it and installed it in a Virtual PC using virtual box to see what it looked and felt like. The install is fairly user friendly although if you\'ve never had experience of Linux and installed other Distributions a new user may be a bit unsure when asked about the MBR and where to put it, other than that a fairly straightforward install.</p>\r\n<p>On install there is a fairly good selection of the software you would need including a full install of LibreOffice, FireFox, Thunderbird, GIMP and synaptic package manager for adding further software from the repositories. MX have also included the ability to simply install codecs and additional drivers and a software installation system for popular Apps from the MX Welcome that comes up at boot or if disabled can be started form the menu. Also I installed it on a virtual 8Gig HDD and GParted reports use of 4.64Gig after install and updates, by default it only installs a 1G swap despite 2Gig allocated Ram in the VM.</p>\r\n<p>I liked the look of MX and decided to give it a go on the X230i, install went smoothly and lo and behold boot was back to around 40s on first boot after install. So I\'ve updated the install, installed my packages I use that are not there by default such as Audacity, Scratch and a couple of other things I use. I\'ve also put it on the X61s I use and again working faultlessly, so I\'m happy again. Since I installed MX I found out from a member of my Makerspace/LUG that he had experienced the same problem with Ubuntu 16.04 based distro\'s and crippled SSD Boot times.</p>\r\n<p>I like MX so much when it come to time to reinstall my Desk Top PC, which is about the only PC I use that is not constantly changing OS, I think I will be putting MX on it. This is a big deal for me as I\'ve been a loyal Mint user for over 5 years but MX is working so well on the Laptops at the moment it would be good to have the same OS on the Desktop PC as well.</p>\r\n<p>Will MX stop my Distro Hopping, NO, I like trying out new things that\'s why I have several Laptops kicking around so I have spare hardware to try out new Linux stuff, but it is good to have something stable around when you need it, hence sticking with Mint for so long on the Desktop.</p>\r\n<ul>\r\n<li><a href=\"https://mxlinux.org/\" class=\"uri\">https://mxlinux.org/</a></li>\r\n<li><a href=\"https://antix.mepis.org/index.php?title=Main_Page\" class=\"uri\">https://antix.mepis.org/index.php?title=Main_Page</a></li>\r\n<li><a href=\"https://www.mepis.org/\" class=\"uri\">https://www.mepis.org/</a></li>\r\n</ul>\r\n',338,57,0,'CC-BY-SA','Linux, Distributions',0,0,1),
(2297,'2017-05-23','More Magnatune Favourites',4112,'Andrew and Dave offer you some more tracks from Magnatune','<h1 id=\"more-magnatune-favourites\">More Magnatune Favourites</h1>\r\n<p>After nearly two years Andrew (<span class=\"citation\" data-cites=\"mcnalu\">@mcnalu</span>) and Dave have prepared another show of some of their favourite music from <a href=\"https://magnatune.com/\" title=\"Magnatune\">Magnatune</a> for your pleasure.</p>\r\n<ul>\r\n<li>Andrew #1:\r\n<ul>\r\n<li>Album: \"<em>Helium</em>\" by prettyhowtown</li>\r\n<li>Track: Rodrigo (04:25)</li>\r\n<li>Genre: Ambient</li>\r\n<li>Link: <a href=\"https://magnatune.com/artists/albums/prettyhowtown-helium\" class=\"uri\">https://magnatune.com/artists/albums/prettyhowtown-helium</a></li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>Dave #1:\r\n<ul>\r\n<li>Album: \"<em>The Secret Life of Angels</em>\" by SkinMechanix</li>\r\n<li>Track: Ultravista (08:44)</li>\r\n<li>Genre: Electronica</li>\r\n<li>Link: <a href=\"https://magnatune.com/artists/albums/skin-angels\" class=\"uri\">https://magnatune.com/artists/albums/skin-angels</a></li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>Andrew #2:\r\n<ul>\r\n<li>Album: \"<em>Sleep Mode</em>\" by Mike McGuill</li>\r\n<li>Track: Think Tank (04:38)</li>\r\n<li>Genre: Electronica</li>\r\n<li>Link: <a href=\"https://magnatune.com/artists/albums/mmcguill-sleepmode\" class=\"uri\">https://magnatune.com/artists/albums/mmcguill-sleepmode</a></li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>Dave #2:\r\n<ul>\r\n<li>Album: \"<em>General Fuzz</em>\" by General Fuzz</li>\r\n<li>Track: Ray squared (06:49)</li>\r\n<li>Genre: Ambient, Electronica</li>\r\n<li>Link: <a href=\"https://magnatune.com/artists/albums/fuzz-fuzz\" class=\"uri\">https://magnatune.com/artists/albums/fuzz-fuzz</a></li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>Andrew #3:\r\n<ul>\r\n<li>Album: \"<em>Theatralica</em>\" by Stanislav</li>\r\n<li>Track: Infant (02:35)</li>\r\n<li>Genre: Electro Rock</li>\r\n<li>Link: <a href=\"https://magnatune.com/artists/albums/stanislav-theatralica\" class=\"uri\">https://magnatune.com/artists/albums/stanislav-theatralica</a></li>\r\n</ul></li>\r\n</ul>\r\n<ul>\r\n<li>Dave #3:\r\n<ul>\r\n<li>Album: \"<em>Shop Sessions</em>\" by The Dimples</li>\r\n<li>Track: Drive (03:33)</li>\r\n<li>Genre: World</li>\r\n<li>Link: <a href=\"https://magnatune.com/artists/albums/dimples-shopsessions\" class=\"uri\">https://magnatune.com/artists/albums/dimples-shopsessions</a></li>\r\n</ul></li>\r\n</ul>\r\n<h2 id=\"links\">Links</h2>\r\n<ul>\r\n<li><a href=\"https://magnatune.com/\">Magnatune site</a></li>\r\n<li><a href=\"https://hackerpublicradio.org/eps.php?id=1777\">Our previous HPR show of Magnatune tracks</a></li>\r\n</ul>\r\n',225,0,1,'CC-BY-SA','Magnatune,music',0,0,1),
(2302,'2017-05-30','Bash snippet - nullglob',428,'After learning about the nullglob option I have started to use it','<h1 id=\"bash-snippet---nullglob\">Bash snippet - nullglob</h1>\r\n<p>I recently did an HPR show about <a href=\"https://hackerpublicradio.org/eps.php?id=2278\" title=\"Some supplementary Bash tips\">Bash filename expansion</a> and described the \'<code>shopt</code>\' command and its options. One of the options I talked about was \'<code>nullglob</code>\' which controls what is returned from an expansion when no files match.</p>\r\n<p>When \'<code>nullglob</code>\' is enabled, and a pattern does not match, nothing is returned. When it is disabled (the default) then the pattern itself is returned.</p>\r\n<p>Although I didn\'t think I\'d ever need to, I recently wrote a script where I used \'<code>nullglob</code>\', and thought I would share a snippet of the code to demonstrate what I did.</p>\r\n<p>The script is for managing mail messages containing tag and summary updates. I use Thunderbird for my mail and have configured it to drop these messages into a directory so I can process them. I use Thunderbird\'s message filters to do this. A certain amount of Spam is also received, and sometimes valid messages need a bit of work before they can be processed.</p>\r\n<p>The directory where the messages are saved (the spool area) is stored in the variable \'<code>MAILDROP</code>\' earlier in the script.</p>\r\n<pre><code> 1 #\r\n 2 # Find the files and store their names in an array. Use &#39;nullglob&#39; so we get\r\n 3 # nothing when there is nothing, then revert to the original setting\r\n 4 #\r\n 5 NG=&quot;$(shopt -p nullglob)&quot;\r\n 6 shopt -s nullglob\r\n 7 MESSAGES=( $MAILDROP/*.eml )\r\n 8 eval &quot;$NG&quot;\r\n 9 \r\n 10 #\r\n 11 # Exit if there&#39;s nothing to do or report what&#39;s there\r\n 12 #\r\n 13 if [[ ${#MESSAGES[@]} -gt 0 ]]; then\r\n 14 echo &quot;Files in the spool area:&quot;\r\n 15 printf &quot;%s\\n&quot; &quot;${MESSAGES[@]}&quot;\r\n 16 else\r\n 17 echo &quot;The spool area is empty&quot;\r\n 18 exit\r\n 19 fi</code></pre>\r\n<p>The variable \'<code>NG</code>\' holds the state of \'<code>nullglob</code>\' before the script modifies it. Remember that \'<code>shopt -p</code>\' returns a list of commands that will revert the named options to their current state.</p>\r\n<p>Next (line 6) the \'<code>nullglob</code>\' option is enabled.</p>\r\n<p>The array \'<code>MESSAGES</code>\' is created on line 7 to hold the list of mail files found in the spool area. This is done with a pattern which matches files that end with the string \'<code>.eml</code>\'. If we didn\'t have \'<code>nullglob</code>\' enabled then when there were no files the array would contain the pattern - which would be misleading.</p>\r\n<p>Having collected the file details \'<code>nullglob</code>\' is turned off by executing the command in the variable \'<code>NG</code>\' on line 8.</p>\r\n<p>You might think that the script could just turn \'<code>nullglob</code>\' on then turn it off again when it\'s no longer needed. However, I prefer to use the technique I have shown here because it needs to have no knowledge of the state of the option before it\'s set, and restores that state afterwards.</p>\r\n<p>By line 13 the array \'<code>MESSAGES</code>\' either contains a list of files or is empty. The script checks for these two cases by determining how many elements are in the array. Greater than zero means we have files to process and they are listed in lines 14 and 15. The script then goes on to do various things with the files.</p>\r\n<p>If there were no files then the script reports this and exits.</p>\r\n<p>That\'s it! This is not the only way to do this, but I like to write scripts that call as few sub-processes as I can, and this way appeals for that reason.</p>\r\n<h2 id=\"links\">Links</h2>\r\n<ul>\r\n<li>HPR show 1648 <a href=\"https://hackerpublicradio.org/eps.php?id=1648\"><em>Bash parameter manipulation</em></a> looks at variables and arrays in Bash</li>\r\n<li>HPR show 2278 <a href=\"https://hackerpublicradio.org/eps.php?id=2278\"><em>Some supplementary Bash tips</em></a> introduces \'<code>shopt</code>\' and \'<code>nullglob</code>\'.</li>\r\n</ul>\r\n',225,42,1,'CC-BY-SA','Bash,shopt,filename expansion',0,0,1),
(2302,'2017-05-30','Bash snippet - nullglob',428,'After learning about the nullglob option I have started to use it','<h1 id=\"bash-snippet---nullglob\">Bash snippet - nullglob</h1>\r\n<p>I recently did an HPR show about <a href=\"https://hackerpublicradio.org/eps.php?id=2278\" title=\"Some supplementary Bash tips\">Bash filename expansion</a> and described the \'<code>shopt</code>\' command and its options. One of the options I talked about was \'<code>nullglob</code>\' which controls what is returned from an expansion when no files match.</p>\r\n<p>When \'<code>nullglob</code>\' is enabled, and a pattern does not match, nothing is returned. When it is disabled (the default) then the pattern itself is returned.</p>\r\n<p>Although I didn\'t think I\'d ever need to, I recently wrote a script where I used \'<code>nullglob</code>\', and thought I would share a snippet of the code to demonstrate what I did.</p>\r\n<p>The script is for managing mail messages containing tag and summary updates. I use Thunderbird for my mail and have configured it to drop these messages into a directory so I can process them. I use Thunderbird\'s message filters to do this. A certain amount of Spam is also received, and sometimes valid messages need a bit of work before they can be processed.</p>\r\n<p>The directory where the messages are saved (the spool area) is stored in the variable \'<code>MAILDROP</code>\' earlier in the script.</p>\r\n<pre><code> 1 #\r\n 2 # Find the files and store their names in an array. Use &#39;nullglob&#39; so we get\r\n 3 # nothing when there is nothing, then revert to the original setting\r\n 4 #\r\n 5 NG=&quot;$(shopt -p nullglob)&quot;\r\n 6 shopt -s nullglob\r\n 7 MESSAGES=( $MAILDROP/*.eml )\r\n 8 eval &quot;$NG&quot;\r\n 9 \r\n 10 #\r\n 11 # Exit if there&#39;s nothing to do or report what&#39;s there\r\n 12 #\r\n 13 if [[ ${#MESSAGES[@]} -gt 0 ]]; then\r\n 14 echo &quot;Files in the spool area:&quot;\r\n 15 printf &quot;%s\\n&quot; &quot;${MESSAGES[@]}&quot;\r\n 16 else\r\n 17 echo &quot;The spool area is empty&quot;\r\n 18 exit\r\n 19 fi</code></pre>\r\n<p>The variable \'<code>NG</code>\' holds the state of \'<code>nullglob</code>\' before the script modifies it. Remember that \'<code>shopt -p</code>\' returns a list of commands that will revert the named options to their current state.</p>\r\n<p>Next (line 6) the \'<code>nullglob</code>\' option is enabled.</p>\r\n<p>The array \'<code>MESSAGES</code>\' is created on line 7 to hold the list of mail files found in the spool area. This is done with a pattern which matches files that end with the string \'<code>.eml</code>\'. If we didn\'t have \'<code>nullglob</code>\' enabled then when there were no files the array would contain the pattern - which would be misleading.</p>\r\n<p>Having collected the file details \'<code>nullglob</code>\' is turned off by executing the command in the variable \'<code>NG</code>\' on line 8.</p>\r\n<p>You might think that the script could just turn \'<code>nullglob</code>\' on then turn it off again when it\'s no longer needed. However, I prefer to use the technique I have shown here because it needs to have no knowledge of the state of the option before it\'s set, and restores that state afterwards.</p>\r\n<p>By line 13 the array \'<code>MESSAGES</code>\' either contains a list of files or is empty. The script checks for these two cases by determining how many elements are in the array. Greater than zero means we have files to process and they are listed in lines 14 and 15. The script then goes on to do various things with the files.</p>\r\n<p>If there were no files then the script reports this and exits.</p>\r\n<p>That\'s it! This is not the only way to do this, but I like to write scripts that call as few sub-processes as I can, and this way appeals for that reason.</p>\r\n<h2 id=\"links\">Links</h2>\r\n<ul>\r\n<li>HPR show 1648 <a href=\"https://hackerpublicradio.org/eps.php?id=1648\"><em>Bash parameter manipulation</em></a> looks at variables and arrays in Bash</li>\r\n<li>HPR show 2278 <a href=\"https://hackerpublicradio.org/eps.php?id=2278\"><em>Some supplementary Bash tips</em></a> introduces \'<code>shopt</code>\' and \'<code>nullglob</code>\'.</li>\r\n</ul>\r\n',225,42,1,'CC-BY-SA','Bash,shopt,nullglob,filename expansion',0,0,1),
(2298,'2017-05-24','Phantom Power Drain',273,'diagnosing a phantom power drain on an automobile','<ol start=\"0\" type=\"1\">\r\n<li>disconnect negative battery cable.</li>\r\n<li>connect multimeter between battery and cable.</li>\r\n<li>read amp draw... 15-20 <s>millivolts</s> milliamps is on the high end.</li>\r\n<li>unplug fuses one at a time, until the problem circuit is identified.</li>\r\n</ol>\r\n<p>... some lip smacking, and vocal fry.</p>\r\n\r\n<p><small><small>Corrected 2017-05-27 - Editor</small></small></p>\r\n',329,0,1,'CC-BY-SA','automotive',0,0,1),
(2303,'2017-05-31','Kdenlive Part 5 All About Audio',922,'Recording Audio in Kdenlive','<p>Hello again HPR listeners this is Geddes with you again with Kdenlive part 5 All About Audio. The topics included are:</p>\r\n<ul>\r\n<li><p>Audio Recording and Synchronization</p></li>\r\n<li><p>Best Practices for a Basic Mix</p></li>\r\n<li><p>Exporting</p></li>\r\n</ul>\r\n<p>Here\'s the link to the original article. <a href=\"https://opensource.com/life/11/12/kdenlive-part-5-all-about-audio\" class=\"uri\">https://opensource.com/life/11/12/kdenlive-part-5-all-about-audio</a></p>',310,0,0,'CC-BY-SA','Kdenlive,opensource.com,recording,audio',0,0,1),
(2305,'2017-06-02','Configuring an HP Laptop for Dual Boot Linux and Windows 10',684,'Installing Linux Ubuntu GNOME to dual boot with Windows 10 on an HP laptop.','<p>This presentation describes the installation of Ubuntu GNOME 16.04 to dual boot with Windows 10 Home on an HP Spectre x360-13 laptop. Previously, I had been using Linux in a virtual machine on Windows. After the update, there was a very significant improvement in performance working in Linux without the Windows/VM overhead. It turned out to not be difficult and was certainly worth doing.</p>\r\n<p>I found a lot of helpful information here: <a href=\"https://askubuntu.com/questions/666631\" class=\"uri\">https://askubuntu.com/questions/666631</a></p>\r\n<p>Get Clonezilla here: <a href=\"https://clonezilla.org/\" class=\"uri\">https://clonezilla.org/</a></p>\r\n',356,0,0,'CC-BY-SA','Linux, Dual-boot',0,0,1),
@@ -19880,7 +19881,7 @@ INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hosti
(3665,'2022-08-19','UNIX Is Sublime',3586,'I talk about all of the reasons I love UNIX','<h1 id=\"unix-is-sublime\">UNIX is sublime</h1>\n<h6 id=\"or-how-to-use-a-computer-without-hating-yourself-for-it-in-the-morning\">Or, \"how to use a computer without hating yourself for it in the morning\"</h6>\n<h6 id=\"or-unix-is-basically-a-simple-operating-system---\">Or, \"Unix is basically a simple operating system . . .\"</h6>\n<h6 id=\"or-my-weariness-and-disdain-for-computers-grow-with-each-additional-unit-of-knowledge\">Or, \"My weariness and disdain for computers grow with each additional unit of knowledge\"</h6>\n<h6 id=\"or-worse-is-better\">Or, \"Worse is better\"</h6>\n<h1 id=\"origins\">Origins</h1>\n<p>UNIX is not Multics</p>\n<p>Multics = Multiplexed Information and Computer Service</p>\n<p>UNIX = Uniplexed Information and Computing Service</p>\n<p>The name \'UNIX\' is a pun on the name \'Multics\'. Multics was entirely too large and complicated to be useful so the boys at Bell Labs cooked up something smaller, less complicated, and easier to use.</p>\n<hr />\n<h3 id=\"ancient-emulation-interlude\">Ancient emulation interlude</h3>\n<p><a href=\"https://www.multicians.org/sim-inst.html\">How to run Multics in 2022.</a></p>\n<p><a href=\"https://gunkies.org/wiki/Running_Unix_v5_in_SIMH\">This wiki helped me emulate UNIXv5.</a></p>\n<p><a href=\"https://gunkies.org/wiki/Installing_v7_on_SIMH\">And this one helped me emulate UNIXv7.</a></p>\n<p><a href=\"https://livingcomputers.org/Computer-Collection/Online-Systems.aspx\">These guys host ancient systems accessible via guest accounts over ssh.</a></p>\n<blockquote>\n<p>\"Cool, but useless.\"</p>\n</blockquote>\n<hr />\n<p>I know almost nothing about Multics and I\'m not sure if it\'s even worth learning. This is about UNIX, not Multics. Maybe I\'ll come back to it.</p>\n<h1 id=\"philosophy-implementations-ducks\">Philosophy, implementations, ducks</h1>\n<p>When I think of \"UNIX\", I do not think of the trademark. Instead, I think of the <a href=\"https://en.wikipedia.org/wiki/Unix_philosophy\">Unix philosophy.</a> and the general design principles, interface, and behavior of a UNIX system.</p>\n<p>A better way of thinking about \"UNIX\" is as something \"POSIX-like\" rather than \"AT&amp;T\'s commercial UNIX\". Example: although Linux and GNU are overly complicated, they pass the duck test for being a UNIX. Pedigree or not, you know a nix when you see one.</p>\n<p>Also, when I say \"UNIX\", I mean \"Free UNIX\". I have no interest in proprietary implementations that only exist for the purpose of restricting users and disempowering/discouraging sysadmins from becoming self-reliant.</p>\n<p>So what is the philosophy?</p>\n<ul>\n<li>Do one thing and do it well</li>\n<li>Design programs that work together using text as the common interface</li>\n<li>KISS: Keep it simple, stupid</li>\n<li>Test early, test often</li>\n</ul>\n<p>And additionally:</p>\n<ul>\n<li>everything is a file or a process</li>\n</ul>\n<h1 id=\"design\">Design</h1>\n<h2 id=\"10000-ft-view\">10,000 Ft View</h2>\n<p>UNIX is a multiuser time sharing networked operating system, running as an always online service. A UNIX system is a single mainframe computer running an operating system designed for multiple users to access concurrently over the network, equally (depending on implementation) sharing resources amongst the active users.</p>\n<p>In a traditional network setup, there is one mainframe UNIX machine with multiple dumb terminals connected to it over the network. None of the users touch the mainframe physically. Instead, they interact with it exclusively through their own dumb terms. These dumb terminals have minimal or no computing power of their own because all of the actual computation takes place on the mainframe. Built in networking is a given.</p>\n<p>As for the actual software running on the mainframe, it\'s quite simple to visualize. A Unix system is a flexible but organized stack of concepts, each depending on the concept below, all working together for the sole purpose of enabling the end user to play video games and watch videos online.</p>\n<pre><code> / user applications \\\n / shells \\\n / daemons \\\n / file systems \\\n / kmods/drivers \\\n / syscalls \\\n / kernel \\\n/ hardware \\\n</code></pre>\n<p>In order to fully explain why UNIX is sublime, I will start from the bottom and work my way upward. Before I discuss the shell, I will explain the multiuser aspects of the system. Then, after a long arduous journey of verbosity, explain how to actually use the thing.</p>\n<h2 id=\"kernel\">Kernel</h2>\n<p>The kernel is something the user rarely interacts with. It abstracts all the hard parts away from the user. No more poking random memory addresses to load a program from tape.</p>\n<h3 id=\"multitasking\">Multitasking</h3>\n<p>In order tLine truncated
(3657,'2022-08-09','Small time sysadmin',1568,'How I maintain my Linux Box, Part One.','<ol>\n<li>Creating Backups.</li>\n</ol>\n<ul>\n<li><p>This script was trimmed to serve as an example.</p></li>\n<li><p>The three options shown (email, jop, dots) demonstrates, how to list items with case statements:</p>\n<ul>\n<li>Single item/directory (jop).</li>\n<li>Multiple items in single directory (dots).</li>\n<li>Multiple items in multiple directories (email).</li>\n</ul></li>\n<li><p>The text files created after the archive serves as an item list<br />\nwith current permissions.</p></li>\n<li><p><code>tar --directory= /path/to/directory/ --create --file INSERT_ARCHIVE_NAME.tar /path/to/file;</code></p></li>\n</ul>\n<pre><code>#!/bin/bash\n#License: GPL v3\n# This program is free software: you can redistribute it and/or modify\n# it under the terms of the GNU General Public License as published by\n# the Free Software Foundation, either version 3 of the License, or\n# (at your option) any later version.\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU General Public License for more details.\n#\n# You should have received a copy of the GNU General Public License\n# along with this program. If not, see &lt;https://www.gnu.org/licenses/&gt;.\n\n#Name: getoverhere.sh\n#Purpose:\n#Version: beta 0.07\n#Author: SGOTI (Some Guy On The Internet)\n#Date: Sat 29 Jan 2022 02:19:29 AM EST\n\n#variables:\nVAR_TBALL=\nVAR_TARGET=\nVAR_JUMP=\nVAR_VALUE=\n\n#start:\ncat &lt;&lt; &quot;EOT01&quot;\nOptions:\n email |&quot;${HOME}/.thunderbird/&quot;\n jop |&quot;${HOME}/Documents/joplin&quot;\n dots |&quot;${HOME}/.bashrc .vimrc .bash_aliases&quot;\nEOT01\n\necho -e &quot;What do you want to backup? : \\c.&quot;\nread VAR_VALUE\n\ncase ${VAR_VALUE} in\n &quot;email&quot; )\nVAR_TBALL=&quot;INSERT_EMAIL_NAME$(date +%m-%d-%Y).tar.gz&quot;\nVAR_TARGET=&quot;msgFilterRules.dat&quot;\nVAR_JUMP=&quot;${HOME}/.thunderbird/*.default-release/ImapMail/imap.mail.yahoo.com/&quot;\n echo -e &quot;Grabbing INSERT_EMAIL_NAME...\\n&quot;\ntar -C ${VAR_JUMP} --create --file ${VAR_TBALL} --gzip ${VAR_TARGET}\n sleep 1\n\nVAR_TBALL=&quot;INSERT_EMAIL_NAME$(date +%m-%d-%Y).tar.gz&quot;\nVAR_TARGET=&quot;msgFilterRules.dat&quot;\nVAR_JUMP=&quot;${HOME}/.thunderbird/*.default-release/ImapMail/imap.gmail.com/&quot;\n echo -e &quot;Grabbing INSERT_EMAIL_NAME...\\n&quot;\ntar -C ${VAR_JUMP} --create --file ${VAR_TBALL} --gzip ${VAR_TARGET}\n sleep 1\n\nVAR_TBALL=&quot;EMAIL_ARCHIVES$(date +%m-%d-%Y).tar.gz&quot;\nVAR_TARGET=&quot;Mail/&quot;\nVAR_JUMP=&quot;${HOME}/.thunderbird/*.default-release/&quot;\n echo -e &quot;Grabbing email EMAIL_ARCHIVES...\\n&quot;\ntar -C ${VAR_JUMP} --create --file ${VAR_TBALL} --gzip ${VAR_TARGET}\n echo -e &quot;Creating List for ${VAR_TBALL}...\\n&quot;\nls -lhAR --group-directories-first ${VAR_JUMP}${VAR_TARGET} &gt; EMAIL_ARCHIVES$(date +%m-%d-%Y).txt\n sleep 1\n\nVAR_TBALL=&quot;THUNDERBIRD_CALENDER$(date +%m-%d-%Y).tar.gz&quot;\nVAR_TARGET=&quot;calenders/&quot;\nVAR_JUMP=&quot;${HOME}/Documents/&quot;\n echo -e &quot;Grabbing email THUNDERBIRD_CALENDER...\\n&quot;\ntar -C ${VAR_JUMP} --create --file ${VAR_TBALL} --gzip ${VAR_TARGET}\n echo -e &quot;Creating List for ${VAR_TBALL}...\\n&quot;\nls -lhAR --group-directories-first ${VAR_JUMP}${VAR_TARGET} &gt; THUNDERBIRD_CALENDER$(date +%m-%d-%Y).txt\n sleep 1\n\nVAR_TBALL=&quot;THUNDERBIRD_ADDRESS_BOOK$(date +%m-%d-%Y).tar.gz&quot;\nVAR_TARGET=&quot;address-book/&quot;\nVAR_JUMP=&quot;${HOME}/Documents/&quot;\n echo -e &quot;Grabbing ${VAR_TARGET}...\\n&quot;\ntar -C ${VAR_JUMP} --create --file ${VAR_TBALL} --gzip ${VAR_TARGET}\n echo -e &quot;Creating List for ${VAR_TBALL}...\\n&quot;\nls -lhAR --group-directories-first ${VAR_JUMP}${VAR_TARGET} &gt; THUNDERBIRD_ADDRESS_BOOK$(date +%m-%d-%Y).txt\n sleep 1\n\nVAR_TBALL=&quot;THUNDERBIRD_ALL$(date +%m-%d-%Y).tar.gz&quot;\nVAR_TARGET=&quot;.thunderbird/&quot;\nVAR_JUMP=&quot;${HOME}/&quot;\n echo -e &quot;Grabbing ${VAR_TARGET}...\\n&quot;\ntar -C ${VAR_JUMP} --create --file ${VAR_TBALL} --gzip ${VAR_TARGET}\n echo -e &quot;Creating List for ${VAR_TBALL}...\\n&quot;\nls -lhAR --group-directories-first ${VAR_JUMP}${VAR_TARGET} &gt; THUNDERBIRD_ALL$(date +%m-%d-%Y).txt ;;\n\n &quot;jop&quot; )\nVAR_TBALL=&quot;JOPLIN$(date +%m-%d-%Y).tar.gz&quot;\nVAR_TARGET=&quot;joplin/&quot;\nVAR_JUMP=&quot;${HOME}/Documents/&quot;\n echo &quot;Grabbing ${VAR_TARGET}&quot;\ntar -C ${VAR_JUMP} --create --file ${VAR_TBALL} --gzip ${VAR_TARGET}\n sleep 1\n echo -e &quot;Creating List for ${VAR_TBALL}...\\n&quot;\nls -lhAR --group-directories-first ${VAR_JUMP}${VAR_TARGET} &gt; JOPLIN$(date +%m-%d-%Y).txt ;;\n\n &quot;dots&quot; )\nVAR_TBALL=&quot;dots$(date +%m-%d-%Y).tar.gz&quot;\nVAR_TARGET=&quot;.bashrc .vimrcLine truncated
(3664,'2022-08-18','Secret hat conversations',1070,'You\'ll need your tin hat for this one.','<p><a href=\"https://en.wikipedia.org/wiki/Tin_foil_hat\">The Tin Foil Hat</a> often worn in the belief or hope that it shields the brain from threats such as electromagnetic fields, mind control, and mind reading.</p>\n<ol>\n<li><a href=\"https://www.youtube.com/watch?v=KD7zTSaiigg\">Proper hat construction video</a>. Also includes the &#x201C;why&#x201D; along with the &#x201C;how&#x201D;.</li>\n<li><a href=\"https://www.youtube.com/watch?v=p0mEuIvfFCA\">Proper hat construction music</a>. Just something to keep you focused.</li>\n</ol>\n<hr />\n<p><a href=\"https://www.fcc.gov/spoofing\">FCC Caller ID Spoofing info</a>: Spoofing is when a caller deliberately falsifies the information transmitted to your caller ID display to disguise their identity.</p>\n<p><a href=\"https://www.fcc.gov/call-blocking\">FCC Call Blocking info</a>: Call blocking is a tool used by phone companies to stop illegal and unwanted calls from reaching your phone. A second annual FCC report released in June 2021 found that many voice service providers and third-party analytics companies are improving their call blocking and labeling services and use new data to better detect robocalls. Billions of unwanted calls to American consumers are being blocked each year.</p>\n<p>The <a href=\"https://pine64.com/product/pinephone-pro-explorer-edition/\">PinePhone Pro Explorer Edition</a> is aimed at Linux developers with an extensive knowledge of embedded systems and/or experience with mobile Linux.</p>\n<p><a href=\"https://en.wikipedia.org/wiki/Time-based_one-time_password\">Time-based one-time password</a> (TOTP) is a computer algorithm that generates a one-time password (OTP) that uses the current time as a source of uniqueness. As an extension of the HMAC-based one-time password algorithm (HOTP), it has been adopted as Internet Engineering Task Force (IETF) standard RFC 6238.</p>\n<p><a href=\"https://matrix.org/\">Matrix</a> is an open standard for interoperable, decentralised, real-time communication over IP.</p>\n<hr />\n<p><strong>Password Managers:</strong> <em>Used by Some Guy On The Internet.</em><br />\n<a href=\"https://bitwarden.com/\">Bitwarden</a><br />\n<a href=\"https://keepassxc.org/\">KeePassXC</a></p>\n<hr />\n',391,0,1,'CC-BY-SA','Tin hat, call spoofing',0,0,1),
(3936,'2023-09-04','HPR Community News for August 2023',0,'HPR Volunteers talk about shows released and comments posted in August 2023','<style>\ntable td.shrink {\n white-space:nowrap\n}\nhr.thin {\n border: 0;\n height: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n border-bottom: 1px solid rgba(255, 255, 255, 0.3);\n}\np#ignore, li#ignore {\n background-color: lightgreen;\n color:maroon;\n}\ndiv#highlight {\n border-style: solid;\n border-color: red;\n padding-right: 20px;\n padding-left: 20px;\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nThere were no new hosts this month.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3912/index.html\" target=\"_blank\">3912</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-08-01</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3912/index.html\" target=\"_blank\">Emergency Show: Biltong and Rooibos</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0250.html\" target=\"_blank\">Shane Shennan</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3913/index.html\" target=\"_blank\">3913</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-08-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3913/index.html\" target=\"_blank\">Lurking Prion Q and A</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0405.html\" target=\"_blank\">Lurking Prion</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3914/index.html\" target=\"_blank\">3914</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-08-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3914/index.html\" target=\"_blank\">how to deal with blisters</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3915/index.html\" target=\"_blank\">3915</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-08-04</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3915/index.html\" target=\"_blank\">Why the hell is my audio clipping?</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0201.html\" target=\"_blank\">MrX</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3916/index.html\" target=\"_blank\">3916</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-08-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3916/index.html\" target=\"_blank\">HPR Community News for July 2023</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3917/index.html\" target=\"_blank\">3917</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-08-08</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3917/index.html\" target=\"_blank\">Response to \"Permission Tickets\" by oneofspoons</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3918/index.html\" target=\"_blank\">3918</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-08-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3918/index.html\" target=\"_blank\">Emacs package curation, part 3</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3919/index.html\" target=\"_blank\">3919</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-08-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3919/index.html\" target=\"_blank\">How I hacked my voice</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0364.html\" target=\"_blank\">tuturto</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3920/index.html\" target=\"_blank\">3920</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-08-11</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3920/index.html\" target=\"_blank\">RV Trip 2022-2023: Southeast US</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/hpr3921/index.html\" target=\"_blank\">3921</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-08-14</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3921/index.html\" target=\"_blank\">HPR AudioBook Club 23 - John Carter of Mars (Books 1-3)</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0157.html\" target=\"_blank\">HPR_AudioBookClub</a></td>\n</tr>\n<tr>\n<td><stLine truncated
(3936,'2023-09-04','HPR Community News for August 2023',0,'HPR Volunteers talk about shows released and comments posted in August 2023','<style>\ntable td.shrink {\n white-space:nowrap\n}\nhr.thin {\n border: 0;\n height: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n border-bottom: 1px solid rgba(255, 255, 255, 0.3);\n}\np#ignore, li#ignore {\n background-color: lightgreen;\n color:maroon;\n}\ndiv#highlight {\n border-style: solid;\n border-color: red;\n padding-right: 20px;\n padding-left: 20px;\n}\n</style>\n\n<h2>New hosts</h2>\n<p>\nThere were no new hosts this month.\n</p>\n\n<h2>Last Month\'s Shows</h2>\n<table id=\"t01\">\n<tr>\n<th>Id</th>\n<th>Day</th>\n<th>Date</th>\n<th>Title</th>\n<th>Host</th>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3912/index.html\" target=\"_blank\">3912</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-08-01</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3912/index.html\" target=\"_blank\">Emergency Show: Biltong and Rooibos</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0250.html\" target=\"_blank\">Shane Shennan</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3913/index.html\" target=\"_blank\">3913</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-08-02</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3913/index.html\" target=\"_blank\">Lurking Prion Q and A</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0405.html\" target=\"_blank\">Lurking Prion</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3914/index.html\" target=\"_blank\">3914</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-08-03</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3914/index.html\" target=\"_blank\">how to deal with blisters</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3915/index.html\" target=\"_blank\">3915</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-08-04</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3915/index.html\" target=\"_blank\">Why the hell is my audio clipping?</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0201.html\" target=\"_blank\">MrX</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3916/index.html\" target=\"_blank\">3916</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-08-07</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3916/index.html\" target=\"_blank\">HPR Community News for July 2023</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0159.html\" target=\"_blank\">HPR Volunteers</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3917/index.html\" target=\"_blank\">3917</a></strong></td>\n<td>Tue</td>\n<td class=\"shrink\">2023-08-08</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3917/index.html\" target=\"_blank\">Response to \"Permission Tickets\" by oneofspoons</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3918/index.html\" target=\"_blank\">3918</a></strong></td>\n<td>Wed</td>\n<td class=\"shrink\">2023-08-09</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3918/index.html\" target=\"_blank\">Emacs package curation, part 3</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0399.html\" target=\"_blank\">dnt</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3919/index.html\" target=\"_blank\">3919</a></strong></td>\n<td>Thu</td>\n<td class=\"shrink\">2023-08-10</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3919/index.html\" target=\"_blank\">How I hacked my voice</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0364.html\" target=\"_blank\">tuturto</a></td>\n</tr>\n<tr>\n<td><strong><a href=\"https://hackerpublicradio.org/eps/hpr3920/index.html\" target=\"_blank\">3920</a></strong></td>\n<td>Fri</td>\n<td class=\"shrink\">2023-08-11</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3920/index.html\" target=\"_blank\">RV Trip 2022-2023: Southeast US</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/hpr3921/index.html\" target=\"_blank\">3921</a></strong></td>\n<td>Mon</td>\n<td class=\"shrink\">2023-08-14</td>\n<td><a href=\"https://hackerpublicradio.org/eps/hpr3921/index.html\" target=\"_blank\">HPR AudioBook Club 23 - John Carter of Mars (Books 1-3)</a></td>\n<td><a href=\"https://hackerpublicradio.org/correspondents/0157.html\" target=\"_blank\">HPR_AudioBookClub</a></td>\n</tr>\n<tr>\n<td><stLine truncated
(3666,'2022-08-22','One Weird Trick',997,'I talk about getting into or advancing in cybersecurity & how keyboards could trick malware.','<p>In this episode, I talk about getting in to the field of cybersecurity or moving up in the field. I also talk about how keyboards could keep malware from going Boom on your system.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li><p>Try This One Weird Trick Russian Hackers Hate<br />\n<a href=\"https://krebsonsecurity.com/2021/05/try-this-one-weird-trick-russian-hackers-hate/\" class=\"uri\">https://krebsonsecurity.com/2021/05/try-this-one-weird-trick-russian-hackers-hate/</a></p></li>\n<li><p>Fake VM Sandbox artifacts - not talked about in this episode<br />\n<a href=\"https://github.com/NavyTitanium/Fake-Sandbox-Artifacts\" class=\"uri\">https://github.com/NavyTitanium/Fake-Sandbox-Artifacts</a></p></li>\n<li><p>Has your password been involved in a breach?<br />\n<a href=\"https://haveibeenpwned.com/\" class=\"uri\">https://haveibeenpwned.com/</a></p></li>\n<li><p>Realtime Global Cyber Attack Map<br />\n<a href=\"https://threatmap.checkpoint.com/\" class=\"uri\">https://threatmap.checkpoint.com/</a></p></li>\n</ul>\n',405,74,1,'CC-BY-SA','cybersecurity,security,EvilSteve,malware, career',0,0,1),
(3669,'2022-08-25','My First Podcast: My Journey into the Computer World',1207,'How I was introduced into computers, Linux, robotics, programming, cibersecurity and more...','<h1 id=\"milestones-in-my-journey\">Milestones in my Journey</h1>\n<ol>\n<li>Studied Windows office and played online games</li>\n<li>Electronics</li>\n<li>Programming with Scratch</li>\n<li>Studied Javascript with Khan Academy</li>\n<li>Used Processing</li>\n<li>Learned Arduino and robotics</li>\n<li>Programmed with Visual Studio Code</li>\n<li>Learned Git</li>\n<li>Learned Windows Batch, VBS, registry, and others</li>\n<li>Introduction to Linux and disks with Tails</li>\n<li>Installation of Linux mint</li>\n<li>Installation of Debian</li>\n<li>Learned Apt, sudo, and other commands</li>\n<li>Discovered the Raspberry Pi</li>\n<li>Learned ssh, vnc, servers and networking with the Raspberry Pi</li>\n<li>Received a Thinkpad laptop and installed on it Bodhi Linux, Linux Lite and Alpine Linux</li>\n<li>Learned about erasure, recovery and encryption of data</li>\n<li>Learned more about Linux (Screen, network configuration, emacs, programming in C)</li>\n<li>Discovered <a href=\"https://nethackwiki.com/wiki/NetHack\">Nethack</a> and <a href=\"https://gitlab.com/esr/open-adventure\">Open Adventure</a> console games</li>\n<li>Studied hacking and pentesting</li>\n<li>Helped a company with its computers and learned from it guys</li>\n<li>Introduction to Python and BSD</li>\n</ol>\n',410,29,0,'CC-BY-SA','linux, programming, cibersecurity, robotics, hardware',0,0,1),
(3678,'2022-09-07','\"Stupid Users\" ... no, not those users, the other \"stupid users\"',907,'Brady & I discuss stupid things done by those of us who really should know better.','<p>In this week\'s episode, I chat with R. Brady Frost about the little plumber vs the gigantic rock. Then we move in to a discussion about the fallacy of stupid users with some great stories of stupid things done by those of us who really should know better. The moral of the story, is that we are all human and nothing will ever change that. Instead, we need to be prepared for when humans are human.</p>\n<h2 id=\"links\">Links:</h2>\n<ul>\n<li>Realtime Global Cyber Attack Map<br />\n<a href=\"https://threatmap.checkpoint.com/\" class=\"uri\">https://threatmap.checkpoint.com/</a></li>\n</ul>\n',405,74,1,'CC-BY-SA','cybersecurity,security,EvilSteve,users,stupid human tricks,customer service',0,0,1),
@@ -20117,9 +20118,9 @@ INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hosti
(4151,'2024-07-01','HPR Community News for June 2024',0,'HPR Volunteers talk about shows released and comments posted in June 2024','',159,47,1,'CC-BY-SA','Community News',0,0,1),
(4176,'2024-08-05','HPR Community News for July 2024',0,'HPR Volunteers talk about shows released and comments posted in July 2024','',159,47,1,'CC-BY-SA','Community News',0,0,1),
(3902,'2023-07-18','Introduction to a new series on FFMPEG',474,'In this episode, I introduce FFMPEG, media containers, and codecs','<h2>Links</h2>\n\n<ul>\n<li><a href=\"https://ffmpeg.org\">FFMPEG Website</a></li>\n<li><a href=\"https://helpx.adobe.com/x-productkb/multi/formats-containers.html\">Adobe - containers vs encoders</a></li>\n<li>Containers: <a href=\"https://en.wikipedia.org/wiki/Comparison_of_video_container_formats\">Wikipedia</a></li>\n<li>Encoders/codecs\n\n<ul>\n<li><a href=\"https://en.wikipedia.org/wiki/Audio_coding_format\">Audio</a></li>\n<li><a href=\"https://en.wikipedia.org/wiki/Video_coding_format\">Video</a></li>\n</ul>\n</li>\n<li><a href=\"https://s3-us-west-2.amazonaws.com/courses-images/wp-content/uploads/sites/4052/2019/04/08194049/CommunicationProcessModel1.jpg\">Encoding vs Decoding</a> ** attribution: <a href=\"https://courses.lumenlearning.com/wm-organizationalbehavior/chapter/the-process-of-communication/\">Learning Freedom Group</a></li>\n</ul>\n',300,0,0,'CC-BY-SA','ffmpeg,video streaming,audio streaming',0,0,1),
(3903,'2023-07-19','Why I don\'t love systemd (yet)',396,'Klaatu reads a script by Deepgeek about systemd','<p>I\'ve been meaning to put down my thoughts about SystemD for the HPR\ncommunity for some while, so here goes.</p>\n<p>I want to say that I am not a SystemD hater. When SystemD was a hot\ntopic of debate, many became irrational over it, but I want to start by\nsaying that I don\'t think it\'s a bad technology. I think it is a rather\ngood technology. I just don\'t want it on my personal computer. So I\nwould like to run things down in this order: what is it (as in, what is\nit really,) what makes it a good technology, why I don\'t want it now\n(but might later,) and a few tips for you if you decide that you don\'t\nwant it currently.</p>\n<p>SystemD Is not an init system. SystemD includes an init system.\nSystemD Init was faster than SysVInit, but SystemD Init isn\'t the\nfastest init system, and SysVInit now has a parallelization helper, at\nleast on Debian.</p>\n<p>So, if SystemD Init is not SystemD, than what is SystemD? To\nunderstand this we must first understand something about Linux. Linux\noperates under a model where there are root processes, and there are\nuser processes. These two kinds of processes are usually called\n\"layers.\" SystemD is actually a third layer, that can be called a system\nlayer. So when SystemD is added to a Linux system, that changes the\nsystem so that there are three layers, a root layer, a user layer, and a\nsystem layer. As such, you now ask SystemD to set how the system runs.\nThis is why SystemD includes things like an init system, because if you\nwant to change what the system is running, you ask SystemD to change it.\nSystemD then messages an appropriate system to implement the change,\nlike messaging its init system to bring up or bring down a system\ndaemon. Once you play out this in your head a bit, you really realize\nthat SystemD acts more like a message passing system in this regard.</p>\n<p>So why do I say SystemD is a good technology? Because this can\nstandardize system control. Without SystemD a fleet of computers becomes\nlike individual fingerprints or unique snowflakes. If you manage many\ncomputers, as many professional IT people do, you want them to all run\nthe same, all have the same profiles and general configurations. So if\nyou have a bunch of computers you are running, you can run a lot more if\nthey are all run the same way. If your job requires you to run 10,000\nwebservers, you want them to run identically because it is impossible to\nkeep an understanding of 10,000 unique configurations in a human\nhead.</p>\n<p>SystemD really shines in its support of virtualization as well. So\nto speak of servers, I used to run an email server for a few friends.\nEach of us had a userid and number as unix users. The mapping of unix\nuserids and postfix userids can get confusing when it gets big. Thanks\nto SystemD\'s virtualization work, you can actually put a service like\nemail into a namespace situation so that it has only the users root and\nthe daemon user id (like \"postfix\"), so SystemD greatly enhances\nsecurity for server installations. This might help explain its\ndominance in linux distributions that have been traditionally\nserver-centric, such as debian and redhat.</p>\n<p>So why don\'t I don\'t want it? Well, I\'ve been doing a lot of talking\nabout professional computer work and corporate work environments, but I\nuse a \"Personal Computer\" as a hobby. I\'ve been out-of-industry for\ndecades now. And when I say \"Personal Computer\" I\'m not talking a\nhardware specification, rather I\'m talking about \"This is my personal\ncomputer where I do things my way, as opposed to my work computer where\nI do things my companies way\". Dear listener, please remember that I did\nthe first community show contribution to HPR, and my topic was about\npersonalization. For me, a hobbyist interested in operating system\nexperimentation, I don\'t want a system layer, I want a traditional\nunix-like system that operates on a two-layer model and does things my\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 persoLine truncated
(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);
INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hostid`, `series`, `explicit`, `license`, `tags`, `version`, `downloads`, `valid`) VALUES (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),
(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 persoLine truncated
INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hostid`, `series`, `explicit`, `license`, `tags`, `version`, `downloads`, `valid`) VALUES (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_manLine truncated
(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&qLine truncated
@@ -21063,4 +21064,4 @@ UNLOCK TABLES;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-- Dump completed on 2023-08-15 6:09:38
-- Dump completed on 2023-08-16 7:39:59