diff --git a/sql/hpr-db-part-0c.sql b/sql/hpr-db-part-0c.sql index 1983ed2..e607c0e 100644 --- a/sql/hpr-db-part-0c.sql +++ b/sql/hpr-db-part-0c.sql @@ -647,7 +647,13 @@ (4005,'hpr4005.spx','spx',3679989,'f2558f723a16ad5032721594bbd7cbf7f3256c57','audio/ogg; charset=binary','setgid Ogg data, Speex audio'), (4005,'hpr4005.flac','flac',74471548,'0252c0250691eac54a5fccd897ce3474a07e67de','audio/flac; charset=binary','setgid FLAC audio bitstream data, 16 bit, mono, 192 kHz, 187056031 samples'), (4005,'hpr4005.opus','opus',9047916,'09e4d148aca52fb63a7ce69ed1fc4dd6cc3e5c1e','audio/ogg; charset=binary','setgid Ogg data, Opus audio,'), -(4005,'hpr4005.wav','wav',374112164,'387a5b0e00d3186dfc866a164ddcc3fdb0ea1e11','audio/x-wav; charset=binary','setgid RIFF (little-endian) data, WAVE audio, mono 192000 Hz'); +(4005,'hpr4005.wav','wav',374112164,'387a5b0e00d3186dfc866a164ddcc3fdb0ea1e11','audio/x-wav; charset=binary','setgid RIFF (little-endian) data, WAVE audio, mono 192000 Hz'), +(3998,'hpr3998.mp3','mp3',15426092,'fcf3e38289c5cb460447fa239d1f3d26311919bd','audio/mpeg; charset=binary','setgid Audio file with ID3 version 2.4.0, contains:MPEG ADTS, layer III, v1, 64 kbps, 48 kHz, Monaural'), +(3998,'hpr3998.ogg','ogg',16776725,'f2503e2f66dbb5986cf833fa63088c6ccbd31da2','audio/ogg; charset=binary','setgid Ogg data, Opus audio,'), +(3998,'hpr3998.spx','spx',7283022,'7446d0e0858bb17aa801da6b879405df36bcd292','audio/ogg; charset=binary','setgid Ogg data, Speex audio'), +(3998,'hpr3998.flac','flac',164171610,'0dc5e1edfee35c8b6abe8e2b12b0991d25292602','audio/flac; charset=binary','setgid FLAC audio bitstream data, 16 bit, mono, 192 kHz, 370211566 samples'), +(3998,'hpr3998.opus','opus',16776725,'b1c6bab2e7007b7215d4254f0d76e01009337282','audio/ogg; charset=binary','setgid Ogg data, Opus audio,'), +(3998,'hpr3998.wav','wav',740423234,'be85699be61bf10abcfd5746459018b3081e9c70','audio/x-wav; charset=binary','setgid RIFF (little-endian) data, WAVE audio, mono 192000 Hz'); /*!40000 ALTER TABLE `assets` ENABLE KEYS */; UNLOCK TABLES; @@ -668,7 +674,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=3828 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci COMMENT='New comments table populated from c5t_* tables'; +) ENGINE=MyISAM AUTO_INCREMENT=3830 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci COMMENT='New comments table populated from c5t_* tables'; /*!40101 SET character_set_client = @saved_cs_client */; -- @@ -992,9 +998,3 @@ INSERT INTO `comments` (`id`, `eps_id`, `comment_timestamp`, `comment_author_nam (313,810,'2011-09-09 19:01:30','Quvmoh','Arch show','Will be great to hear an Arch install show, Thanks!','2017-09-09 07:41:22'), (314,812,'2011-09-26 13:21:05','Klaatu','Angry','They\'re all patent trolls.\r\n\r\nIf corporate america justifies itself by saying that competition breeds excellence, then patents quell that.\r\n\r\nIf you just think that technology should keep advancing and getting better, then patents hinder that as well.\r\n\r\nThe only thing patents seem to be good for is to ensure that someone makes a lot of dough off something that probably wasn\'t even invented or developed in a vacuum.\r\n\r\nGreat show, Mr. Gadgets. I sometimes wish you had a video cast, where you dressed up in wacky pseudo-scientist outfits and did fun experiments that we could all try at home. But until you get that television deal, I\'ll settle for your very fine HPR audio shows.','2017-09-09 07:41:22'), (315,816,'2011-09-26 12:38:50','Klaatu','great information thanks','Great episode! Recipes sound delicious, although not having a kitchen I probably won\'t be trying them anytime soon.\r\n\r\nBut yeah budget living, or living minimally, is great. It\'s amazing how few bills you can have it you just simplify...and the fewer bills, the less work you have to do, which in the end leaves more time for haxooring.','2017-09-09 07:41:22'), -(316,816,'2011-09-28 08:49:06','neddludd','Practical','Thanks Tracy for the useful information, I appreciated the re thinking of the survivalism term to include a whole lot more than stockpiling guns and ammo for the \"coming armageddon\"\r\n\r\nregards','2017-09-09 07:41:22'), -(317,818,'2011-09-26 12:26:15','klaatu','Agreed','I agree, the sansa devices make great little recording devices. I don\'t have a Clip, but I do have the fuze, and I used it at OLF to do interviews. The storage capicity, as long as you plan ahead and leave space for the recording, is great, the battery lasted the entire day and for days thereafter, and the mic and sound quality was fine. As much as I love my tablet (nokia n800), nothing but the storage is really anywhere near the quality that the fuze provided me.\r\n\r\nOn the other hand, the Fuze as a media player (even with Rockbox) leaves a little to be desired...','2017-09-09 07:41:22'), -(318,818,'2011-09-30 05:18:06','sgtron','','I bought a clip+ based on this podcast that I picked up on ebay for about $35 for a refurbished 8GB model, but unfortunately I didn\'t like rockbox on it. I found the rockbox navigation to be a bit flakey and the fm radio popped unless you exited the play screen. I do find the stock firmware fine for recording even though you can\'t monitor the sidetone.','2017-09-09 07:41:22'), -(319,818,'2011-10-02 18:03:49','Fragilematter','Workarounds','Hey guys/Pokey! Sorry for joining the party so late, but I\'ve been behind on my podcasts lately.\r\nI\'ll get down to the subject, and that can be resumed in one acronim: R(F)TM. Rockbox is a complex piece of software and a lot of its functionality isn\'t obvious.\r\nFor instance, to lock the keys on the clip you need to press both the middle button (select) and home at the same time, while you are playing a song (rockbox devs name that the WPS - while playing screen). Also, if you are somewhere in the menus and you want to return to the wps you use the same key combo - home + select.\r\nAlso, at least on my Sansa e200, you can have it charge from a computer without accessing the disk by holding select while you plug in the usb cable. I don\'t know if it\'s the same for the Clip Plus.\r\nAs a closing note, if I recall correctly, the Clip Plus is still under development, especially the usb side of things, so you can expect improvements with each new release (unless you\'re using the current build, like I do).\r\n\r\nHere\'s hoping you have a nice day,\r\nFragilematter','2017-09-09 07:41:22'), -(320,818,'2011-10-03 05:52:49','sgtron','Thanks','Fragilematter, thanks for the reply and I\'ll try the current release to see what I think of that too.. I see the rockbox stable builds are released quarterly and the current one was just last month, so months to go before next release. ','2017-09-09 07:41:22'), -(321,818,'2011-10-10 16:13:26','lostnbronx','Your Idea Works','Pokey, a few years ago, I glued two paint-stirrers together to make a handle; cut the handle to size, sanded it down, and painted it. Then I put Velcro on one end and Velcro on the acrylic case that I have my Fuze in, and stuck it on. I hold the earbud cable to the handle with an elastic. The Fuze has has never fallen off by accident. \r\n\r\nThis is perfect for recording, and even general use, and the Velcro/handle combo helps to cut down on handling noise. The only change I\'d make now is that I should have stained the handle instead of painting it, as the paint began to wear badly almost immediately.','2017-09-09 07:41:22'), diff --git a/sql/hpr-db-part-0d.sql b/sql/hpr-db-part-0d.sql index 339d042..ed7c626 100644 --- a/sql/hpr-db-part-0d.sql +++ b/sql/hpr-db-part-0d.sql @@ -1,3 +1,9 @@ +(316,816,'2011-09-28 08:49:06','neddludd','Practical','Thanks Tracy for the useful information, I appreciated the re thinking of the survivalism term to include a whole lot more than stockpiling guns and ammo for the \"coming armageddon\"\r\n\r\nregards','2017-09-09 07:41:22'), +(317,818,'2011-09-26 12:26:15','klaatu','Agreed','I agree, the sansa devices make great little recording devices. I don\'t have a Clip, but I do have the fuze, and I used it at OLF to do interviews. The storage capicity, as long as you plan ahead and leave space for the recording, is great, the battery lasted the entire day and for days thereafter, and the mic and sound quality was fine. As much as I love my tablet (nokia n800), nothing but the storage is really anywhere near the quality that the fuze provided me.\r\n\r\nOn the other hand, the Fuze as a media player (even with Rockbox) leaves a little to be desired...','2017-09-09 07:41:22'), +(318,818,'2011-09-30 05:18:06','sgtron','','I bought a clip+ based on this podcast that I picked up on ebay for about $35 for a refurbished 8GB model, but unfortunately I didn\'t like rockbox on it. I found the rockbox navigation to be a bit flakey and the fm radio popped unless you exited the play screen. I do find the stock firmware fine for recording even though you can\'t monitor the sidetone.','2017-09-09 07:41:22'), +(319,818,'2011-10-02 18:03:49','Fragilematter','Workarounds','Hey guys/Pokey! Sorry for joining the party so late, but I\'ve been behind on my podcasts lately.\r\nI\'ll get down to the subject, and that can be resumed in one acronim: R(F)TM. Rockbox is a complex piece of software and a lot of its functionality isn\'t obvious.\r\nFor instance, to lock the keys on the clip you need to press both the middle button (select) and home at the same time, while you are playing a song (rockbox devs name that the WPS - while playing screen). Also, if you are somewhere in the menus and you want to return to the wps you use the same key combo - home + select.\r\nAlso, at least on my Sansa e200, you can have it charge from a computer without accessing the disk by holding select while you plug in the usb cable. I don\'t know if it\'s the same for the Clip Plus.\r\nAs a closing note, if I recall correctly, the Clip Plus is still under development, especially the usb side of things, so you can expect improvements with each new release (unless you\'re using the current build, like I do).\r\n\r\nHere\'s hoping you have a nice day,\r\nFragilematter','2017-09-09 07:41:22'), +(320,818,'2011-10-03 05:52:49','sgtron','Thanks','Fragilematter, thanks for the reply and I\'ll try the current release to see what I think of that too.. I see the rockbox stable builds are released quarterly and the current one was just last month, so months to go before next release. ','2017-09-09 07:41:22'), +(321,818,'2011-10-10 16:13:26','lostnbronx','Your Idea Works','Pokey, a few years ago, I glued two paint-stirrers together to make a handle; cut the handle to size, sanded it down, and painted it. Then I put Velcro on one end and Velcro on the acrylic case that I have my Fuze in, and stuck it on. I hold the earbud cable to the handle with an elastic. The Fuze has has never fallen off by accident. \r\n\r\nThis is perfect for recording, and even general use, and the Velcro/handle combo helps to cut down on handling noise. The only change I\'d make now is that I should have stained the handle instead of painting it, as the paint began to wear badly almost immediately.','2017-09-09 07:41:22'), (322,818,'2011-10-26 15:13:39','pokey','Thanks for the feedback guys','Those are all great suggestions. I may need to use the velcro one, as i broke the clip off of my clip. \r\n\r\nThe lock screen function is a new one to me. I\'ll have to try it.\r\n\r\nYes you can charge the Clip without it booting into the stock firmware if it\'s powered on in Rockbox. That\'s how I charge it.','2017-09-09 07:41:22'), (323,820,'2011-09-24 03:50:08','DeepGeek','A Big-Name server you may not have considered','Hi, Klaatu,\r\nLoved the podcast. Your idea of urging listeners to try different servers was great, but your choices of nginx, apache, and lighttpd seemed to indicate an interest in \"big name\" webservers.\r\nI thought you might want to consider something else \"big name.\" Did you know that the webserver that powers AOL, aolserver4, is an open-source project? Check out aolserver.com. They boast not of some obscure benchmark, but rather of extreme scalability and a huge number of languages embedded and multiple API\'s, and multiple database platform support.\r\nI haven\'t tired it myself, but I thought you\'d like to know...\r\n---\r\nDeepGeek','2017-09-09 07:41:22'), (324,820,'2011-09-26 02:43:53','klaatu','aolserver','well let\'s wait for AOL to prove themselves before we go jumping to adopt their server. I\'ve personally not heard of them but I\'ll keep an eye out.','2017-09-09 07:41:22'), @@ -992,9 +998,3 @@ (1310,1870,'2015-12-10 08:19:51','0xf10e','yepp, no cleartext','1st thing is DH key exchange, basically \"no that we speak privately and securely let me tell you who I [the server] am\". Think about it. Any other way would leave the client open to a MitM spoofing the server\'s keys.\r\n\r\nBut, of course, when you ignore the changed fingerprint on the server you won\'t know who is receiving your credentials.\r\nWith pubkey auth you don\'t have to worry about losing anything usable to impersonate you. Also makes brute force login attempts infeasible due to the vast number of possible keys.','2017-09-09 07:41:28'), (1311,1874,'2015-09-28 04:18:26','droops','Thanks','Thank you again Ken for keeping all of this together and thank you to everyone who has recorded and episode and truly been a part of the HPR community. It would not exist without you. ','2017-09-09 07:41:28'), (1312,1874,'2015-10-08 15:15:39','J.','','Wow, as a public school survivor, hearing all about your class makes me a little envious to be honest.\r\n','2017-09-09 07:41:28'), -(1313,1874,'2015-10-13 13:19:37','Dave Morriss','I loved this interview','I really enjoyed this. Congratulations and thanks Ken. \r\n\r\nIt was great to understand more about the history of HPR, and to get further insight into who the founders were, and what their motivation was.\r\n\r\nAnd droops - you sound like a hell of a teacher :-)','2017-09-09 07:41:28'), -(1314,1878,'2015-12-29 04:40:53','Erik','Commands','Would you be able to detail the commands you use for the luks encrypted ISO?','2017-09-09 07:41:28'), -(1315,1880,'2015-10-16 13:39:53','Mike Ray','Great show','Great show Klaatu. Really enjoy anything about Arduino and general fiddling about with electronics.\r\n\r\nCurrently mucking about with RF transmitter and receiver modules and have considered using XBee. So this show was of interest.','2017-09-09 07:41:28'), -(1316,1881,'2015-10-19 20:24:03','Fin','Music fail','Why did the default theme play at the end, when clacke\'s a capella version was so good!\r\n\r\nInteresting journey BTW. The audio wasn\'t that bad.','2017-09-09 07:41:28'), -(1317,1881,'2015-10-23 16:00:35','Dave Morriss','Great episode','This was a very interesting show. I knew very little of what you spoke about, never having had an Amiga, nor having used dial-up with Linux. Thanks for the insight.','2017-09-09 07:41:28'), -(1318,1881,'2015-10-26 11:35:10','clacke','Thanks','Cool! Glad I added something new. I was worried that yet another Linux backstory might be redundant, but I guess everyone comes from their own direction.','2017-09-09 07:41:28'), diff --git a/sql/hpr-db-part-0e.sql b/sql/hpr-db-part-0e.sql index 91edb6e..a3bd8b1 100644 --- a/sql/hpr-db-part-0e.sql +++ b/sql/hpr-db-part-0e.sql @@ -1,3 +1,9 @@ +(1313,1874,'2015-10-13 13:19:37','Dave Morriss','I loved this interview','I really enjoyed this. Congratulations and thanks Ken. \r\n\r\nIt was great to understand more about the history of HPR, and to get further insight into who the founders were, and what their motivation was.\r\n\r\nAnd droops - you sound like a hell of a teacher :-)','2017-09-09 07:41:28'), +(1314,1878,'2015-12-29 04:40:53','Erik','Commands','Would you be able to detail the commands you use for the luks encrypted ISO?','2017-09-09 07:41:28'), +(1315,1880,'2015-10-16 13:39:53','Mike Ray','Great show','Great show Klaatu. Really enjoy anything about Arduino and general fiddling about with electronics.\r\n\r\nCurrently mucking about with RF transmitter and receiver modules and have considered using XBee. So this show was of interest.','2017-09-09 07:41:28'), +(1316,1881,'2015-10-19 20:24:03','Fin','Music fail','Why did the default theme play at the end, when clacke\'s a capella version was so good!\r\n\r\nInteresting journey BTW. The audio wasn\'t that bad.','2017-09-09 07:41:28'), +(1317,1881,'2015-10-23 16:00:35','Dave Morriss','Great episode','This was a very interesting show. I knew very little of what you spoke about, never having had an Amiga, nor having used dial-up with Linux. Thanks for the insight.','2017-09-09 07:41:28'), +(1318,1881,'2015-10-26 11:35:10','clacke','Thanks','Cool! Glad I added something new. I was worried that yet another Linux backstory might be redundant, but I guess everyone comes from their own direction.','2017-09-09 07:41:28'), (1319,1884,'2015-10-27 19:07:10','Frank','','Thank you, Dave. A very nice piece of work.\r\n\r\nI\'ve been trying to understand regular expressions (I guess because I like puzzles). In addition to giving me a better understanding of bash, the examples you gave show similarity with some regular expression syntax, which in turn gives some context to regular expression syntax, so that it does not seem to be quite so foreign a language.\r\n','2017-09-09 07:41:28'), (1320,1884,'2015-10-27 19:49:37','Dave Morriss','Thanks Frank, glad you enjoyed it','The regular expression subject is a complex one. I\'ve been wondering whether I should try and pass on what I know about it. \r\n\r\nStrictly this brace expansion topic is in the area of using patterns to match filenames. Confusingly this is similar but not the same as regular expressions. In later episodes in this (not-)series I want to talk more about filename matching then look at regular expressions in the context of Bash.\r\n\r\nReally, the regular expression subject could (should?) be stand-alone and should look at what\'s available in Bash, grep, sed, awk, etc. I use Perl regular expresions the most but I hesitate to go too deep there because they are mind-blowing :-)','2017-09-09 07:41:28'), (1321,1884,'2015-10-28 22:01:14','Frank','','Indeed regular expressions are complex. They make my brain hurt.\r\n\r\nSeeing some kinship with shell commands--some indication that whoever perpetrated regex did not just make it up from the whole cloth--is somehow comforting.\r\n\r\nI recently stumbled over a great *beginner\'s* tutorial.\r\nhttps://www.digitalocean.com/community/tutorials/using-grep-regular-expressions-to-search-for-text-patterns-in-linux#basic-usage\r\n\r\nWhat makes it so good is that it uses the GPL text found on every Linux computer for the exercises, so you can practice the examples and try different options as you read along.','2017-09-09 07:41:28'), @@ -992,9 +998,3 @@ INSERT INTO `comments` (`id`, `eps_id`, `comment_timestamp`, `comment_author_nam (2310,2470,'2018-01-31 07:47:17','dodddummy','Time to update for the elimination of the individual mandate?','Does the removal of the individual mandate justify an update?','2018-01-31 08:30:57'), (2311,2470,'2018-01-31 20:04:51','Ahuka','I did cover it','The repeal of the Individual Mandate was covered in this last episode, I believe.','2018-01-31 20:06:42'), (2312,2465,'2018-02-03 10:30:15','timttmy','Thanks','Just wanted to say thanks to operat0r for bringing tron-script to my attention. I hate maintaining the windows boxes at work (5 windows boxes and 7 linux boxes). I have run tron-script on 3 of the machines so far and they are running a LOT quicker now including one of the win7 machines which got stuck installing updates a while back and even after hours of searching for a solution to the problem, nothing. Tron-script has resolved the issue and the machine is now up to date :)\r\nIt looks like tron-script has been around for quite some time and has remained under my radar. So thanks again for the episode and bringing it to my attention. \r\nI wonder what other tools HPR listeners use that I or others have not heard of?','2018-02-03 10:32:46'), -(2313,2478,'2018-02-05 00:22:05','hammerron','a second Star Trek reference','As soon as you said Star Trek, it made me think of TNG season 7, an episode called Masks . In that episode both Data and Picard wore masks and had altered roles.','2018-02-05 09:08:25'), -(2314,2477,'2018-02-05 10:48:22','dodddummy','Chickens','I meant to remove the roosters but forgot. In the Philippines and there are roosters everywhere.','2018-02-05 10:53:25'), -(2315,2478,'2018-02-05 22:28:53','lostnbronx','Excellent Episode','I really enjoyed this installment of the Audiobook Club. It was great hearing from the author, who was thoughtful and articulate, explaining what sounded like complex concepts and making them clear. I\'m really excited to listen to this book, spoilers notwithstanding.\r\n\r\nGreat job, guys!','2018-02-05 22:32:05'), -(2316,2482,'2018-02-06 00:35:08','Clinton Roy','How on earth did I do that? :(','I\'ve somehow managed to upload both interviews in the one show :(\r\n\r\nI haven\'t even edited the second interview yet.','2018-02-06 07:42:54'), -(2317,2489,'2018-02-15 19:18:06','Ken Fallon','Bin there done that. (Deliberate typo Dave)','1. Yes you describe why I hate forums.\r\n2. Why did you not record a show describing the peoblem? I know several hosts that have ffmpeg foo. We have the exact same needs for hpr itself','2018-02-15 19:44:39'), -(2318,2482,'2018-02-18 07:17:13','Clinton Roy','Thank you to the admins','I would just like to publicly say thank you to the admins to fixed my mistake, in a way that will force them to read it aloud ;)','2018-02-18 09:54:50'), diff --git a/sql/hpr-db-part-0f.sql b/sql/hpr-db-part-0f.sql index fea6765..13dcd88 100644 --- a/sql/hpr-db-part-0f.sql +++ b/sql/hpr-db-part-0f.sql @@ -1,3 +1,9 @@ +(2313,2478,'2018-02-05 00:22:05','hammerron','a second Star Trek reference','As soon as you said Star Trek, it made me think of TNG season 7, an episode called Masks . In that episode both Data and Picard wore masks and had altered roles.','2018-02-05 09:08:25'), +(2314,2477,'2018-02-05 10:48:22','dodddummy','Chickens','I meant to remove the roosters but forgot. In the Philippines and there are roosters everywhere.','2018-02-05 10:53:25'), +(2315,2478,'2018-02-05 22:28:53','lostnbronx','Excellent Episode','I really enjoyed this installment of the Audiobook Club. It was great hearing from the author, who was thoughtful and articulate, explaining what sounded like complex concepts and making them clear. I\'m really excited to listen to this book, spoilers notwithstanding.\r\n\r\nGreat job, guys!','2018-02-05 22:32:05'), +(2316,2482,'2018-02-06 00:35:08','Clinton Roy','How on earth did I do that? :(','I\'ve somehow managed to upload both interviews in the one show :(\r\n\r\nI haven\'t even edited the second interview yet.','2018-02-06 07:42:54'), +(2317,2489,'2018-02-15 19:18:06','Ken Fallon','Bin there done that. (Deliberate typo Dave)','1. Yes you describe why I hate forums.\r\n2. Why did you not record a show describing the peoblem? I know several hosts that have ffmpeg foo. We have the exact same needs for hpr itself','2018-02-15 19:44:39'), +(2318,2482,'2018-02-18 07:17:13','Clinton Roy','Thank you to the admins','I would just like to publicly say thank you to the admins to fixed my mistake, in a way that will force them to read it aloud ;)','2018-02-18 09:54:50'), (2319,2492,'2018-02-20 00:30:09','Clinton Roy','Swapping in..','It\'s been many a year since I was in Canada: are these the rubber wheeled ones?','2018-02-20 08:34:34'), (2320,2488,'2018-02-20 05:40:00','Windigo','Welcome','Quite a topic for a first episode!\r\n\r\nI enjoyed it, and look forward to your next submission. :)','2018-02-20 08:34:34'), (2321,2477,'2018-02-20 06:15:08','Windigo','Also distractable','Thanks for the tip! I am also very distract-able, and find myself rewinding HPR episodes constantly to catch what I just missed. I tried looping an episode (this one, in fact) and saw a real difference in what I remembered.\r\n\r\nI was curious about the roosters, but didn\'t mind them too much. Perhaps just list them as a co-host next time? ;)','2018-02-20 08:34:34'), @@ -992,9 +998,3 @@ (3310,3457,'2021-11-17 15:24:29','Gumnos','Storing data in recsel format?','I\'m not sure if you\'ve encountered GNU recutils before\r\n\r\nhttps://www.gnu.org/software/recutils/\r\n\r\nbut it\'s a nice flat-file way of storing & querying data in a format similar to what you described. It\'s fairly easy to convert to CSV or other tabular format. It plays nicely with version-control, making it easier to tell when a \"column\" (really a row in a group) has been edited because the diff just shows that one \"cell\" rather than a whole CSV line being modified.\r\n\r\nIt\'s also pretty flexible when it comes to omitted or duplicate fields. I\'ve taken to storing our household address book in this format and then transforming it into other formats as needed.','2021-11-17 21:38:02'), (3311,3470,'2021-11-19 16:50:45','Trey','Oh what happy memories','Thank you for bringing back memories from early in my computer career. I still have a MSDOS 3.31 Emergency boot disk (Because it was the first to support hard drive partitions above 33MB). For the longest time, I kept it in the very front of my floppy disk case. But when I finally tossed all the old PC floppies, I relocated it to the esteemed location of stuck to the refrigerator door with a magnet.\r\n\r\nLikely won\'t boot anymore, but still brings back memories.\r\n\r\nKeep up the good work!','2021-11-19 19:08:48'), (3312,3470,'2021-11-19 22:12:52','Kevin O\'Brien','You are most welcome','I\'m glad you enjoyed it. There are more in the pipeline, but once they are done there won\'t be any more in this series. I wrote these 20-something years ago, and I still get happy users who find them on my Web site.','2021-11-20 19:26:21'), -(3313,3471,'2021-11-22 14:32:18','Trey','Capacitors','Thank you for sharing. Tinkering with vintage electronics (Wait! Referring to the Walkman as \"vintage\" makes me feel really old.) is loads of fun. Do you find the need to replace capacitors in equipment of this era? I have noticed with various radio gear of similar age the capacitors have drifted far from spec.\r\n\r\nKeep up the awesome podcasts!','2021-11-22 22:35:52'), -(3314,3471,'2021-11-23 13:05:23','Keith','They really are great devices','Thanks for making this, I do remember getting one back in the early 80\'s, however that is no longer around, shame I threw it out many years ago now.\r\n\r\nI\'m going to get out my Dad\'s Walkman on the weekend though and see if it still runs. I kept his Walkman WM-F2015 https://www.radiomuseum.org/r/sony_walkman_fmam_stereo_cassette_player_wm_f2015.html as I knew it was special hopefully it still runs, if not I will fix it!','2021-11-24 07:28:26'), -(3315,3471,'2021-11-23 19:49:25','Jon Kulp','Recapping','Thanks for the comment, Trey. Yes, the Walkman is vintage nowadays and we\'re in the same boat old-age-wise. I have a couple of things that could probably benefit from being recapped, but I\'ve never gotten into the weeds that far yet. One of these days when I\'ve got some time in front of me, I would like to replace the capacitors in my Pioneer reel-to-reel tape deck. I feel like this would probably help with the weak left channel. No time right now, though.','2021-11-24 07:28:26'), -(3316,3473,'2021-11-24 01:06:54','Trey','Congrats','Congrats on earning your amateur radio license. It is always interesting to learn some of the differences between operations in different countries. For example, here in the USA, it is generally frowned upon to call \"CQ\" on the 10M and 70cm bands as these are littered with repeaters. We often simply transmit our call sign.\r\n\r\nI look forward to additional amateur radio episodes, and am planning to post one about my Go Box build, assuming I ever get out of the planning phase and into the building phase.\r\n\r\n73','2021-11-24 20:59:36'), -(3317,3485,'2021-11-24 15:52:56','monochromec','The show','Great show - this of course is an ugly mirror showing exactly how time flies and how we have been getting old ever since...','2021-11-24 20:59:36'), -(3318,3472,'2021-11-27 11:59:41','Kevin O\'Brien','I loved the show','I think this is a perfect example of hacking. Fantastic!','2021-11-27 19:11:13'), diff --git a/sql/hpr-db-part-10.sql b/sql/hpr-db-part-10.sql index a4ee445..eaa51f7 100644 --- a/sql/hpr-db-part-10.sql +++ b/sql/hpr-db-part-10.sql @@ -1,3 +1,9 @@ +(3313,3471,'2021-11-22 14:32:18','Trey','Capacitors','Thank you for sharing. Tinkering with vintage electronics (Wait! Referring to the Walkman as \"vintage\" makes me feel really old.) is loads of fun. Do you find the need to replace capacitors in equipment of this era? I have noticed with various radio gear of similar age the capacitors have drifted far from spec.\r\n\r\nKeep up the awesome podcasts!','2021-11-22 22:35:52'), +(3314,3471,'2021-11-23 13:05:23','Keith','They really are great devices','Thanks for making this, I do remember getting one back in the early 80\'s, however that is no longer around, shame I threw it out many years ago now.\r\n\r\nI\'m going to get out my Dad\'s Walkman on the weekend though and see if it still runs. I kept his Walkman WM-F2015 https://www.radiomuseum.org/r/sony_walkman_fmam_stereo_cassette_player_wm_f2015.html as I knew it was special hopefully it still runs, if not I will fix it!','2021-11-24 07:28:26'), +(3315,3471,'2021-11-23 19:49:25','Jon Kulp','Recapping','Thanks for the comment, Trey. Yes, the Walkman is vintage nowadays and we\'re in the same boat old-age-wise. I have a couple of things that could probably benefit from being recapped, but I\'ve never gotten into the weeds that far yet. One of these days when I\'ve got some time in front of me, I would like to replace the capacitors in my Pioneer reel-to-reel tape deck. I feel like this would probably help with the weak left channel. No time right now, though.','2021-11-24 07:28:26'), +(3316,3473,'2021-11-24 01:06:54','Trey','Congrats','Congrats on earning your amateur radio license. It is always interesting to learn some of the differences between operations in different countries. For example, here in the USA, it is generally frowned upon to call \"CQ\" on the 10M and 70cm bands as these are littered with repeaters. We often simply transmit our call sign.\r\n\r\nI look forward to additional amateur radio episodes, and am planning to post one about my Go Box build, assuming I ever get out of the planning phase and into the building phase.\r\n\r\n73','2021-11-24 20:59:36'), +(3317,3485,'2021-11-24 15:52:56','monochromec','The show','Great show - this of course is an ugly mirror showing exactly how time flies and how we have been getting old ever since...','2021-11-24 20:59:36'), +(3318,3472,'2021-11-27 11:59:41','Kevin O\'Brien','I loved the show','I think this is a perfect example of hacking. Fantastic!','2021-11-27 19:11:13'), (3319,3474,'2021-11-27 12:19:46','Ken Fallon','No please don\'t add silence to the audio','Hi All,\r\n\r\nIt is a great idea to record a piece of silence to use as a \"Noise profile\" for using with the \"Effect > Noise Reduction\" feature in Audacity. However please do this *before* you upload it to HPR. \r\n\r\nIt is opening a can of worms to ask hosts to submit this before having a process in place to deal with it. If we learned anything from is it included or not Intro Outro thing, is that everyone will do their own thing. Will the silence be at the beginning or the end ? What if it\'s in the middle ? Was the silence intentional ? Will truncate silence work ? \r\n\r\nSo great idea for a host but please, please, please do not do this.','2021-11-27 19:11:13'), (3320,3459,'2021-11-29 15:37:08','Oliver','TerminusDB Link','Hey,\r\nI see you have a link to one of our blogs here and I\'m just writing to let you know that we\'ve changed URLs so wondered if you could change:\r\n\r\nhttps://blog.terminusdb.com/we-love-gplv3-but-are-switching-license-to-apache-2-0-terminusdb\r\n\r\nto\r\n\r\nhttps://terminusdb.com/blog/we-love-gplv3-but-are-switching-license-to-apache-2-0-terminusdb/\r\n\r\nThanks,\r\nOliver','2021-11-30 20:59:09'), (3321,3478,'2021-12-01 03:27:16','Trey','I am sure the Audio/Video department loves you','Thanks for sharing this great little hack. It may have a negative impact on the impedance matching for this audio input channel, but it shouldn\'t be overtly noticeable when listening.\r\nThanks, again, for sharing.','2021-12-01 23:01:27'), @@ -499,7 +505,9 @@ (3824,3981,'2023-11-06 10:42:23','Hobson Lane (hobs)','Ken\'s comment about demand avoidance','Love the monthly Community News shows. Ken\'s comment about resisting the demands of his past self from reminders apps struck a chord with me. I\'ve been struggling with PDA (persistent/pathological demand avoidance) myself. I\'ll record a response show to summarize some things I\'ve learned from other podcasts that help boost my intrinsic motivation -- things like random rewards (to prevent external rewards from swamping your intrinsic motivation dopamine high). Dave\'s idea to use rituals and habits is also something that sometimes works for me. Rely admire the high quality open source technical infrastructure that keeps this community thriving and the supportive vibe of all the hosts and contributors. It gives me hope for the future of social media and the Internet.','2023-11-06 10:45:43'), (3825,3984,'2023-11-09 15:21:35','Trey','Really? You are sharing this with the world?','Dude! I thought we were keeping this on the down low? And you are naming names?\r\n\r\nNow I need to contact witness protection AGAIN!\r\n\r\nSMH...','2023-11-09 15:26:35'), (3826,3989,'2023-11-17 02:10:27','Trey','Changing passowrds','One consideration when it comes to the LastPass breach is that attackers are actively working to compromise individual vaults exposed by the data. They seem to be targeting known cryptocurrency traders, but if you had a weak or guessable password or low iterations of encryption, the information you stored in your vault may become available to attackers. It is recommended that, whether you choose to stay with LastPass or not, you change all of the passwords, keys, important secrets, etc which you stored in your vault.','2023-11-17 13:02:07'), -(3827,3993,'2023-11-22 14:05:19','Trey','What fun!','This looks like it would be a very fun project. Reminds me of an old microcontroller project I built back around 1990 using an 8085 and a bunch of wirewrap. It would fit in a shoe box, but definitely would NOT fit into an Altoids tin.\r\n\r\nThank you for sharing.','2023-11-22 15:00:06'); +(3827,3993,'2023-11-22 14:05:19','Trey','What fun!','This looks like it would be a very fun project. Reminds me of an old microcontroller project I built back around 1990 using an 8085 and a bunch of wirewrap. It would fit in a shoe box, but definitely would NOT fit into an Altoids tin.\r\n\r\nThank you for sharing.','2023-11-22 15:00:06'), +(3828,3995,'2023-11-24 08:57:50','bittin','another tip','Myself been happy with https://mopidy.com/ on a Raspberry Pi 4 with Hifiberry for a couple of years now running on Arch Linux ARM ALARM','2023-11-24 12:17:44'), +(3829,3995,'2023-11-24 15:31:21','Trey','Live radio secure streaming?','Thank you for sharing this. It looks like a very fun project.\r\n\r\nThis reminded me of a project I have been noodling for some time. I live quite a distance from my home town, and I am unable to listen to the radio streams of sporting events due to geolocation restrictions. I have been considering using a Pi with a software defined radio to build a device which will receive the local radio station and stream it to a cloud service which I can restrict for secure access. I do not want the world to receive it (and have lawyers come after me). I only want to be able to login at times when interesting events are in progress, and listen to them.\r\n\r\nI could then leave the device connected at the home of family in that area.\r\n\r\nAny thoughts on such a project?','2023-11-24 16:12:47'); /*!40000 ALTER TABLE `comments` ENABLE KEYS */; UNLOCK TABLES; /*!50003 SET @saved_cs_client = @@character_set_client */ ; @@ -990,11 +998,3 @@ INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hosti (436,'2009-09-03','Talk geek to me ep 01',1435,'Deepgeek talks geek to his fans about the website mirroring software \"Httrack\"','Deepgeek reviews the website mirroring software \"Httrack\" then puts it to good use by combining it with Cpanels \"Entropy Search\" to create a custom web search.\n',73,34,1,'CC-BY-NC-SA','Website mirroring,httrack',0,2319,1), (437,'2009-09-03','refit',301,'Skirlet tells you how to install and use rEFIt for Intel-based Mac computers','

Skirlet tells you how to install and use rEFIt for Intel-based Mac computers. Listen to this episode in the Skirlet-approved ogg version!\r\n

',88,0,1,'CC-BY-NC-SA','refit,EFI Hack,Apple,Mac',0,3248,1), (438,'2009-09-05','Podcasts I Listen To',803,'Dave Yates does a show about all the podcasts he listens to.','

Dave Yates from the \"Lotta Linux Links Linux User Podcast\" does a show about all the podcasts he listens to. And, as you\'d expect, he provides a LOT of linux links here in the shownotes.

\r\n\r\n

Dave\'s List of RSS Feeds:

\r\n

https://www.linuxuserpodcast.com/feed/podcast/?format=ogg
\r\nhttps://feeds.feedburner.com/cmdln_free
\r\nhttps://feeds2.feedburner.com/SomethingKindaTechy
\r\nhttps://talkgeektome.us/ogg.xml
\r\nhttps://trygnulinux.com/ogg.rss
\r\nhttps://www.tuxradar.com/files/podcast/podcast_ogg.rss
\r\nhttps://linuxgeekdom.com/rssogg.xml
\r\nhttps://linuxvoid.technographer.net/soundfeed.xml
\r\nhttps://www.softwarefreedom.org/feeds/podcast-ogg/
\r\nhttps://feeds.feedburner.com/TenBuckReview
\r\nhttps://www.fossgeek.com/feeds/rss-ogg-full.xml
\r\nhttps://ubuntupodcast.net/?feed=rss2
\r\nhttps://setbit.org/lt-ogg.xml
\r\nhttps://jwplinux.libsyn.com/rss
\r\nhttps://linuxcranks.info/ogg.xml
\r\nhttps://feeds.feedburner.com/thetechiegeek/ogg
\r\nhttps://www.thebadapples.info/fedorareloaded/ogg.xml
\r\nhttps://feeds.feedburner.com/UbuntuUkPodcastOgg-high
\r\nhttps://www.thebadapples.info/ogg.xml
\r\nhttps://linuxcrazy.com/podcasts/ogg.xml
\r\nhttps://thelinuxlink.net/files/lager_ogg.rss
\r\nhttps://www.hwhq.com/rssOGG.xml
\r\nhttps://www.linuxbasement.com/ogg/feed
\r\nhttps://feeds.feedburner.com/feedburner/knightcast
\r\nhttps://feeds.feedburner.com/doctorow_podcast
\r\nhttps://lottalinuxlinks.com/podcast/uclugogg.xml
\r\nhttps://www.tmbg.com/_media/_pod/podcast.xml
\r\nhttps://feeds.feedburner.com/GNSciTech
\r\nhttps://goinglinux.com/mp3podcast.xml
\r\nhttps://feeds.feedburner.com/sourcetrunk
\r\nhttps://www.thelinuxlink.net/tllts/tllts_ogg.rss
\r\nhttps://hackervoice.co.uk/feed.xml
\r\nhttps://distrowatch.com/news/podcast.xml
\r\nhttps://pauldotcom.com/podcast/psw.xml
\r\nhttps://feeds.feedburner.com/freshubuntuogg
\r\nhttps://feeds.feedburner.com/linuxoutlaws
\r\nhttps://distrocast.org/?feed=podcast&format=mp3

\r\n \r\n

A Lotta Linux Links:

\r\n

https://lincgeek.org/bashpodder
\r\nhttps://linuxplanet.org/casts
\r\nhttps://linuxplanet.org/casts/?feed=rss2
\r\nhttps://thelinuxlink.net
\r\nhttps://hackermedia.org
\r\nhttps://netboot.me

',77,75,1,'CC-BY-NC-SA','podcasts,feed',0,3012,1), -(439,'2009-09-07','TiT Radio Episode 007',5894,'Monsterb and friends host TiT Radio','Waaaaay back on August 15th, 2009...\r\nmonsterb and friends talk about Slack Mini Server, Ohio LinuxFest 2009, 10 best Linux cheat sheets, writing udev rules, Linux audio, and so much more.\r\n\r\nCheck out https://titradio.info for shownotes.',99,30,1,'CC-BY-NC-SA','Slack mini server,Electronic music creation,Ohio linux fest,Bell Labs,Unix,LGPL,Udev rules',0,1428,1), -(440,'2009-09-08','Developing Through Virtualbox',3246,'Brian Leonard at the SouthEast Linux Fest 2009','Brian Leonard at the SouthEast Linux Fest 2009. See episode title for a clue about what the talk is about!',158,35,1,'CC-BY-NC-SA','java applications',0,2207,1), -(441,'2009-09-09','Migrating Your GPG Key and Starting GPG-Agent',774,'Klaatu continues his discussion of all things GnuPG','Klaatu continues his discussion of GnuPG related matters (see episode 0222 for Alpine+GPG and some random Bad Apple Linux OggCast ep 2x04 on GPG in general). In this exciting episode, he talks about the proper way to migrate your GnuPG keys, how to manage gpg-agent in your Slackware+KDE desktop, and advises everyone who will be attending Ohio Linux Fest this year to attend the GnuPG Key Signing Party.',78,0,0,'CC-BY-NC-SA','gnupg,gpg keys,gpg-agent',0,6327,1), -(442,'2009-09-11','Chris DiBona Speaks at SELF 2009',3074,'Chris DiBona at the South East Linux Fest 2009','

Chris DiBona at the South East Linux Fest 2009.

\r\n

This file available as ogg here:

\r\n

Ogg Version',158,35,1,'CC-BY-NC-SA','Open source licensing,BSD license,Apache license',0,2239,1), -(443,'2009-09-11','How to Sign C Files with GPG',430,'sigflup talks about cryptographically signing your C source files','

In this show SigFLUP shares a script that can be used to sign your c files with gpg so that they may be directly verifiable by gpg and look un-changed to your c compiler. You can download it at tmd.freeshell.org/gog_bless

',115,0,1,'CC-BY-NC-SA','C,programming,script,gpg,signature,trust',0,4187,1), -(444,'2009-09-14','Cherokee And Asyncronous Servers',1424,'Thistleweb discusses the Cherokee server','

ThistleWeb discusses the difference between process based and asynchronous servers, then goes on to talk about Cherokee server and a few flat file PHP applications.

The Admin process:

I kept refering to \"spawn-cgi\" in the recording. This is supposed to be \"spawn-fcgi\". I also inferred that it didn\'t use config files, it does; it just generates them via the admin web GUI and will overwrite any changes made manually.

My new blog is thistleweb.co.uk, my new email is gordon (at) thistleweb (dot) co (dot) uk.

',106,0,1,'CC-BY-NC-SA','Cherokee webserver,webservers,asynchronous',0,3653,1), -(445,'2009-09-15','HAR Update with Chris n\' Frank',2632,'Hacking at Random interview with Chris and Frank','Finux interviews Frank and Chris for an update after the Hacking At Random (HAR) event. What is Hacking At Random? listen to the episode!\r\n\r\nYou can download the ogg version here --> download the ogg version.',85,0,1,'CC-BY-NC-SA','Hacking at random,ham radio',0,2116,1), -(446,'2009-09-16','Building Live CDs with Fedora',1633,'Clint Savage at SouthEast Linux Fest 2009 on how to build Live CDs','

Clint Savage at SouthEast Linux Fest 2009 on how to build Live CDs and Live USB sticks (\"remixes\" and \"respins\") using Fedora tools like kickstart, live usb creator, revisor, and more.

\r\n\r\n

Note that this is Klaatu\'s edit and is shorter than the source audio on southeastlinuxfest.org because the delay due to technical difficulty has been chopped out.

\r\n\r\n

Ogg is available here:\r\nhpr0446.ogg

',158,35,1,'CC-BY-NC-SA','Fedora,Live CD',0,1692,1), diff --git a/sql/hpr-db-part-11.sql b/sql/hpr-db-part-11.sql index 631c887..cc88074 100644 --- a/sql/hpr-db-part-11.sql +++ b/sql/hpr-db-part-11.sql @@ -1,3 +1,11 @@ +(439,'2009-09-07','TiT Radio Episode 007',5894,'Monsterb and friends host TiT Radio','Waaaaay back on August 15th, 2009...\r\nmonsterb and friends talk about Slack Mini Server, Ohio LinuxFest 2009, 10 best Linux cheat sheets, writing udev rules, Linux audio, and so much more.\r\n\r\nCheck out https://titradio.info for shownotes.',99,30,1,'CC-BY-NC-SA','Slack mini server,Electronic music creation,Ohio linux fest,Bell Labs,Unix,LGPL,Udev rules',0,1428,1), +(440,'2009-09-08','Developing Through Virtualbox',3246,'Brian Leonard at the SouthEast Linux Fest 2009','Brian Leonard at the SouthEast Linux Fest 2009. See episode title for a clue about what the talk is about!',158,35,1,'CC-BY-NC-SA','java applications',0,2207,1), +(441,'2009-09-09','Migrating Your GPG Key and Starting GPG-Agent',774,'Klaatu continues his discussion of all things GnuPG','Klaatu continues his discussion of GnuPG related matters (see episode 0222 for Alpine+GPG and some random Bad Apple Linux OggCast ep 2x04 on GPG in general). In this exciting episode, he talks about the proper way to migrate your GnuPG keys, how to manage gpg-agent in your Slackware+KDE desktop, and advises everyone who will be attending Ohio Linux Fest this year to attend the GnuPG Key Signing Party.',78,0,0,'CC-BY-NC-SA','gnupg,gpg keys,gpg-agent',0,6327,1), +(442,'2009-09-11','Chris DiBona Speaks at SELF 2009',3074,'Chris DiBona at the South East Linux Fest 2009','

Chris DiBona at the South East Linux Fest 2009.

\r\n

This file available as ogg here:

\r\n

Ogg Version',158,35,1,'CC-BY-NC-SA','Open source licensing,BSD license,Apache license',0,2239,1), +(443,'2009-09-11','How to Sign C Files with GPG',430,'sigflup talks about cryptographically signing your C source files','

In this show SigFLUP shares a script that can be used to sign your c files with gpg so that they may be directly verifiable by gpg and look un-changed to your c compiler. You can download it at tmd.freeshell.org/gog_bless

',115,0,1,'CC-BY-NC-SA','C,programming,script,gpg,signature,trust',0,4187,1), +(444,'2009-09-14','Cherokee And Asyncronous Servers',1424,'Thistleweb discusses the Cherokee server','

ThistleWeb discusses the difference between process based and asynchronous servers, then goes on to talk about Cherokee server and a few flat file PHP applications.

The Admin process:

I kept refering to \"spawn-cgi\" in the recording. This is supposed to be \"spawn-fcgi\". I also inferred that it didn\'t use config files, it does; it just generates them via the admin web GUI and will overwrite any changes made manually.

My new blog is thistleweb.co.uk, my new email is gordon (at) thistleweb (dot) co (dot) uk.

',106,0,1,'CC-BY-NC-SA','Cherokee webserver,webservers,asynchronous',0,3653,1), +(445,'2009-09-15','HAR Update with Chris n\' Frank',2632,'Hacking at Random interview with Chris and Frank','Finux interviews Frank and Chris for an update after the Hacking At Random (HAR) event. What is Hacking At Random? listen to the episode!\r\n\r\nYou can download the ogg version here --> download the ogg version.',85,0,1,'CC-BY-NC-SA','Hacking at random,ham radio',0,2116,1), +(446,'2009-09-16','Building Live CDs with Fedora',1633,'Clint Savage at SouthEast Linux Fest 2009 on how to build Live CDs','

Clint Savage at SouthEast Linux Fest 2009 on how to build Live CDs and Live USB sticks (\"remixes\" and \"respins\") using Fedora tools like kickstart, live usb creator, revisor, and more.

\r\n\r\n

Note that this is Klaatu\'s edit and is shorter than the source audio on southeastlinuxfest.org because the delay due to technical difficulty has been chopped out.

\r\n\r\n

Ogg is available here:\r\nhpr0446.ogg

',158,35,1,'CC-BY-NC-SA','Fedora,Live CD',0,1692,1), (447,'2009-09-17','Lord Drachenblut Recovers Data After a Failed Dist-Upgrade',408,'Lord Drachenblut learns about data recovery','

Daring to upgrade to an Alpha version of Kubuntu, Lord Drachenblut learns the finer points of data recovery.

\r\n

\r\nOGG VORBIS

',24,0,1,'CC-BY-NC-SA','data recovery,dist-upgrade',0,2558,1), (448,'2009-09-18','TiT Radio 008 - Something Kinda Tacky',4363,'Monsterb and friends host TiT Radio','

Recorded Live Sept. 5th, 2009; monsterb and friends talk about a perl\r\nscript called exiftool,  Jibbed a NetBSD livecd,  something\r\nshocking on Planet Gnome,  Hannah Montana distro, and so much\r\nmore.  Please take a look at the shownotes for detailed\r\ninformation.  https://titradio.info/008.html
\r\n

',99,30,1,'CC-BY-NC-SA','BSD,exiftool,Chrome OS,Quake Live',0,2114,1), (449,'2009-09-21','Fericyde and Damin talk about Ohio Linux Fest',2571,'A trip down memory lane with Fericyde and Damin.','

Ah, a trip down memory lane with Fericyde and Damin. They talk about geek fests and the upcoming Ohio Linux Fest.

\r\n

ogg version

',109,0,1,'CC-BY-NC-SA','Ohio Linux Fest,geek,Ubuntu',0,3588,1), @@ -990,11 +998,3 @@ INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hosti (1411,'2013-12-30','ohmroep live 1, 31-06-2013, pirate parties',3590,'A live report from OHM2013 in the Netherlands. Speaking to Pirate Party members','

\r\nNido Media reporting Live from OHM2013 in the Netherlands. He is joined\r\nby a group of Pirate Party members including Fabricio Martins do Canto,\r\nDirk Poot, Jonas Degrave, Thomas Gordon. They discuss how their pirate\r\nparty chapters were started, how to start your own. What it means to be\r\na pirate party, the goals of pirate parties. Later we are joined by\r\nChristopher Clay who tells us about the situation over there.\r\n

',214,0,1,'CC-BY-SA','OHMRoep, HPR Live',0,1549,1), (1412,'2013-12-31','ohmroep hpr live 2, 31-06-2013, advancing local communities',3312,'A live report from OHM2013 in the Netherlands','

\r\nNido Media reporting Hacker Public Radio Live. Starring Cecile Langhorst\r\nas co-host who saves the show, and two guests. Civardi from Rhizomatica,\r\nwho is active in installing GSM networks in rural areas in Mexico tells\r\nus of his experiences with GSM technologies and Mexican villagers.\r\nBicycle Mark relates about his work training people from war or post-war\r\ncountries to become reporters.\r\n

',214,0,1,'CC-BY-SA','OHMRoep, HPR Live',0,1501,1), (1413,'2014-01-01','ohmroep hpr live 3, 01-08-2013, (Power)DNS',3490,'A live report from OHM2013 in the Netherlands. PowerDNS and DNSSec; collapsing tent','

Today Nido Media is joined by Ken Fallon as cohost. Bert Hubert from PowerDNS joins us and talks with us about what DNS actually is. What it does, how it is used, how it is implemented. What information DNS holds and what it works. He also explains what PowerDNS and we go into DNSSec a bit. Our conversation is pre-empted right at the very end because the tent was about to collapse. No comments are made about the vicinity of Bind developers.

',214,0,1,'CC-BY-SA','OHMRoep, HPR Live',0,1653,1), -(1414,'2014-01-02','ohmroep hpr live 4, 31-06-2013, operating lights at Observe Hack Make',3546,'A live report from OHM2013 in the Netherlands: Lighting','

Doing the Lights on OHM2013. (shownotes donated by HobbyBob)

\r\n

During the interview i mention the LOC controller. The LOC controller was designed by Bob from Bitlair Hackerspace in Amersfoort, The Netherlands.

\r\n

Here you can find all the info on the controller:

\r\n \r\n

My username is hobbybob there, so if you have any questions just ask me in a pm. It is good habit that you introduce yourself on the forum, this will get you more credits when you start asking questions. Just introduce yourself, what you want to built and what you already have done/tried in the past.

\r\n

Ohh and BTW i sound a bit dull because i was very tired. As the Light team, we worked from 9AM to 3AM every day during OHM to make the experience a colorful one for everyone!

\r\n

We hope you enjoy(ed) our effort and start building cool stuff yourself !

\r\n

If you want to make your own LOC controllers, LED effects or Lasers i am very interested to know. You can mail me: hobbybob at bitlair dot nl

',214,0,1,'CC-BY-SA','OHMRoep, HPR Live',0,1432,1), -(1406,'2013-12-23','ORCA fundraiser',2084,'Ahuka talks to Jonathan Nadeau about the campaign to improve the Orca Screen Reader','

In today\'s show Ahuka tracks down Jonathan Nadeau, from the Accessible Computing Foundation to discuss the running campaign to improve the Orca Screen Reader.

\r\n
    \r\n
  1. ORCA fundraiser: https://www.indiegogo.com/projects/orca-bringing-digital-sight-to-the-vision-impaired
  2. \r\n
  3. Accessible Computing Foundation https://theacf.co/
  4. \r\n
  5. Sonar https://sonargnulinux.com/
  6. \r\n
',198,79,1,'CC-BY-SA','accessibility,orca',0,1404,1), -(1407,'2013-12-24','Mars Needs Women, and Hacker Public Radio Needs Shows',1551,'The many ways you can record a show for Hacker Public Radio and get involved.','

Hacker Public Radio welcomes everyone to record shows and contribute them to the network. In this show we discuss the many ways you can do that. It is very easy to contribute a show and get involved, so we encourage everyone to join in.

',198,0,0,'CC-BY-SA','Hacker Public Radio, shows, recording',0,1379,1), -(1421,'2014-01-13','Statistics and Polling',2427,'Polling and the statistical background behind it','

\r\nWe are given polling results constantly in news stories, and even more so when an election is near. But how accurate are these polls? What are the limitations? And what kinds of questions should you have when looking at these surveys? I will attempt to answer these questions in this podcast.\r\n

',198,0,0,'CC-BY-SA','Statistics,polling,politics,surveys',0,1425,1), -(1440,'2014-02-07','Creating a Key Pair - GUI Client',966,'Using a GUI client (KGpg) to generate an RSA key pair.','

In the previous program we explained how to use the command line tools to generate encryption keys. This time we look at the GUI clients that some people may prefer. Using KGpg as an example, we can see that it does all the things we did last time on the command line.

',198,0,0,'CC-BY-SA','Security, encryption, keys, GUI',0,1564,1), -(1416,'2014-01-06','2013-2014 HPR New Year Show Part 1 2013-12-31T10:00:00Z to 2013-12-31T16:00:00Z',21595,'New Year Show 2014, part 1','

2013-12-31T10:00:00Z

\r\n\r\nGeneral links / references mentioned on the show for the show notes:\r\n\r\n

2013-12-31T10:15:00Z

\r\n\r\n

2013-12-31T11:00:00Z

\r\n\r\n

2013-12-31T12:00:00Z

\r\n\r\n

2013-12-31T12:30:00Z

\r\n\r\n

2013-12-31T13:00:00Z

\r\n\r\n

2013-12-31T13:30:00Z

\r\n\r\n

2013-12-31T14:00:00Z

\r\n\r\n

2013-12-31T14:30:00Z

\r\n\r\n

2013-12-31T15:00:00Z

\r\n\r\n

2013-12-31T15:15:00Z

\r\n',159,121,1,'CC-BY-SA','New Year,2014',0,1554,1), -(1417,'2014-01-07','2013-2014 HPR New Year Show Part 2 2013-12-31T16:00:00Z to 2013-12-31T21:00:00Z',19158,'New Year Show 2014, part 2','

2013-12-31T16:00:00Z

\n \n

2013-12-31T17:00:00Z

\n \n

2013-12-31T17:30:00Z

\n \n

2013-12-31T18:00:00Z

\n \n

2013-12-31T18:15:00Z

\n \n

2013-12-31T18:30:00Z

\n \n

2013-12-31T19:00:00Z

\n \n

2013-12-31T19:30:00Z

\n \n

2013-12-31T20:00:00Z

\n \n

2013-12-31T20:30:00Z

\n \n

2013-12-31T21:00:00Z

\n
\n

HPR COMMUNITY NEWS DECEMBER 2013

\n
A monthly look at what has been going on in the HPR community. This is on the Saturday before the first Monday of the month.
\n

New hosts

\n

Welcome to our new hosts: Honkeymagoo, and Thaj Sara.

\n

Show Updates

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
iddatetitlehost
13912013-12-02Google Play Music All AccessAhuka
13922013-12-03Beginner\'s guide to the night skyAndrew Conway
13932013-12-04Audio Metadata in Ogg, MP3, and othersEpicanis
13942013-12-05Setting Up Your Own BlogKeith Murray
13952013-12-0617 - LibreOffice Writer Overview of Page Layout OptionsAhuka
13962013-12-09First Thoughts of the Google ChromecastCurtis Adkins (CPrompt^)
13972013-12-10HPR Community News for November 2013Various Hosts
13982013-12-11Batteries Part 1MrX
13992013-12-12Interview with Ben Everard https://www.linuxvoice.comCurtis Adkins (CPrompt^)
14002013-12-13How We Use LinuxHonkeymagoo
14012013-12-16Huawei Mate reviewKnightwise
14022013-12-17How I Started Using Linux and Free and Open Source SoftwareThaj Sara
14032013-12-18hiro from GamingGrannar at RetrospelsmässanSeetee
14042013-12-19Editing pre-recorded audio in AudacityKen Fallon
14052013-12-2018 - LibreOffice Writer Page Styles IntroducedAhuka
14062013-12-23ORCA fundraiserAhuka
14072013-12-24Mars Needs Women, and Hacker Public Radio Needs ShowsAhuka
14082013-12-25Drupal in Gothenburg with Addison Berry and othersSeetee
14092013-12-26Xircom PE pocket ethernet adapterKen Fallon
14102013-12-27Generating Keys on the Command LineAhuka
14112013-12-30ohmroep live 1, 31-06-2013, pirate partiesNido Media
14122013-12-31ohmroep hpr live 2, 31-06-2013, advancing local communitiesNido Media
\n

Other News

\nDownloads in 2013 = 1,134,478\nPer episode download = 4,364\n

Other News

\n \n
\n ',159,121,1,'CC-BY-SA','New Year,2014',0,1380,1), -(1418,'2014-01-08','2013-2014 HPR New Year Show Part 3 2013-12-31T22:00:00Z to 2014-01-01T04:00:00Z',20552,'New Year Show 2014, part 3','

2013-12-31T22:00:00Z

\r\n\r\n

2013-12-31T23:00:00Z

\r\n\r\n

2014-01-01T00:00:00Z

\r\n\r\n

2014-01-01T01:00:00Z

\r\n\r\n

2014-01-01T02:00:00Z

\r\n\r\n

2014-01-01T03:00:00Z

\r\n\r\n

2014-01-01T03:30:00Z

\r\n\r\n',159,121,1,'CC-BY-SA','ORCA,FocusWriter,DarkTable,LightZone,GIMP,Sound Converter,Maelstrom,TuxPaint,mtpaint,Jitsi,kid3,EasyTag,Audacity,gPodder,PuddleTag,avidemux,OpenShot,EtherPad,WordPress,Abiword,gnumeric,LibreOffice',0,1672,1), diff --git a/sql/hpr-db-part-12.sql b/sql/hpr-db-part-12.sql index 652d03e..f3f0e39 100644 --- a/sql/hpr-db-part-12.sql +++ b/sql/hpr-db-part-12.sql @@ -1,3 +1,11 @@ +(1414,'2014-01-02','ohmroep hpr live 4, 31-06-2013, operating lights at Observe Hack Make',3546,'A live report from OHM2013 in the Netherlands: Lighting','

Doing the Lights on OHM2013. (shownotes donated by HobbyBob)

\r\n

During the interview i mention the LOC controller. The LOC controller was designed by Bob from Bitlair Hackerspace in Amersfoort, The Netherlands.

\r\n

Here you can find all the info on the controller:

\r\n \r\n

My username is hobbybob there, so if you have any questions just ask me in a pm. It is good habit that you introduce yourself on the forum, this will get you more credits when you start asking questions. Just introduce yourself, what you want to built and what you already have done/tried in the past.

\r\n

Ohh and BTW i sound a bit dull because i was very tired. As the Light team, we worked from 9AM to 3AM every day during OHM to make the experience a colorful one for everyone!

\r\n

We hope you enjoy(ed) our effort and start building cool stuff yourself !

\r\n

If you want to make your own LOC controllers, LED effects or Lasers i am very interested to know. You can mail me: hobbybob at bitlair dot nl

',214,0,1,'CC-BY-SA','OHMRoep, HPR Live',0,1432,1), +(1406,'2013-12-23','ORCA fundraiser',2084,'Ahuka talks to Jonathan Nadeau about the campaign to improve the Orca Screen Reader','

In today\'s show Ahuka tracks down Jonathan Nadeau, from the Accessible Computing Foundation to discuss the running campaign to improve the Orca Screen Reader.

\r\n
    \r\n
  1. ORCA fundraiser: https://www.indiegogo.com/projects/orca-bringing-digital-sight-to-the-vision-impaired
  2. \r\n
  3. Accessible Computing Foundation https://theacf.co/
  4. \r\n
  5. Sonar https://sonargnulinux.com/
  6. \r\n
',198,79,1,'CC-BY-SA','accessibility,orca',0,1404,1), +(1407,'2013-12-24','Mars Needs Women, and Hacker Public Radio Needs Shows',1551,'The many ways you can record a show for Hacker Public Radio and get involved.','

Hacker Public Radio welcomes everyone to record shows and contribute them to the network. In this show we discuss the many ways you can do that. It is very easy to contribute a show and get involved, so we encourage everyone to join in.

',198,0,0,'CC-BY-SA','Hacker Public Radio, shows, recording',0,1379,1), +(1421,'2014-01-13','Statistics and Polling',2427,'Polling and the statistical background behind it','

\r\nWe are given polling results constantly in news stories, and even more so when an election is near. But how accurate are these polls? What are the limitations? And what kinds of questions should you have when looking at these surveys? I will attempt to answer these questions in this podcast.\r\n

',198,0,0,'CC-BY-SA','Statistics,polling,politics,surveys',0,1425,1), +(1440,'2014-02-07','Creating a Key Pair - GUI Client',966,'Using a GUI client (KGpg) to generate an RSA key pair.','

In the previous program we explained how to use the command line tools to generate encryption keys. This time we look at the GUI clients that some people may prefer. Using KGpg as an example, we can see that it does all the things we did last time on the command line.

',198,0,0,'CC-BY-SA','Security, encryption, keys, GUI',0,1564,1), +(1416,'2014-01-06','2013-2014 HPR New Year Show Part 1 2013-12-31T10:00:00Z to 2013-12-31T16:00:00Z',21595,'New Year Show 2014, part 1','

2013-12-31T10:00:00Z

\r\n\r\nGeneral links / references mentioned on the show for the show notes:\r\n\r\n

2013-12-31T10:15:00Z

\r\n\r\n

2013-12-31T11:00:00Z

\r\n\r\n

2013-12-31T12:00:00Z

\r\n\r\n

2013-12-31T12:30:00Z

\r\n\r\n

2013-12-31T13:00:00Z

\r\n\r\n

2013-12-31T13:30:00Z

\r\n\r\n

2013-12-31T14:00:00Z

\r\n\r\n

2013-12-31T14:30:00Z

\r\n\r\n

2013-12-31T15:00:00Z

\r\n\r\n

2013-12-31T15:15:00Z

\r\n',159,121,1,'CC-BY-SA','New Year,2014',0,1554,1), +(1417,'2014-01-07','2013-2014 HPR New Year Show Part 2 2013-12-31T16:00:00Z to 2013-12-31T21:00:00Z',19158,'New Year Show 2014, part 2','

2013-12-31T16:00:00Z

\n \n

2013-12-31T17:00:00Z

\n \n

2013-12-31T17:30:00Z

\n \n

2013-12-31T18:00:00Z

\n \n

2013-12-31T18:15:00Z

\n \n

2013-12-31T18:30:00Z

\n \n

2013-12-31T19:00:00Z

\n \n

2013-12-31T19:30:00Z

\n \n

2013-12-31T20:00:00Z

\n \n

2013-12-31T20:30:00Z

\n \n

2013-12-31T21:00:00Z

\n
\n

HPR COMMUNITY NEWS DECEMBER 2013

\n
A monthly look at what has been going on in the HPR community. This is on the Saturday before the first Monday of the month.
\n

New hosts

\n

Welcome to our new hosts: Honkeymagoo, and Thaj Sara.

\n

Show Updates

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
iddatetitlehost
13912013-12-02Google Play Music All AccessAhuka
13922013-12-03Beginner\'s guide to the night skyAndrew Conway
13932013-12-04Audio Metadata in Ogg, MP3, and othersEpicanis
13942013-12-05Setting Up Your Own BlogKeith Murray
13952013-12-0617 - LibreOffice Writer Overview of Page Layout OptionsAhuka
13962013-12-09First Thoughts of the Google ChromecastCurtis Adkins (CPrompt^)
13972013-12-10HPR Community News for November 2013Various Hosts
13982013-12-11Batteries Part 1MrX
13992013-12-12Interview with Ben Everard https://www.linuxvoice.comCurtis Adkins (CPrompt^)
14002013-12-13How We Use LinuxHonkeymagoo
14012013-12-16Huawei Mate reviewKnightwise
14022013-12-17How I Started Using Linux and Free and Open Source SoftwareThaj Sara
14032013-12-18hiro from GamingGrannar at RetrospelsmässanSeetee
14042013-12-19Editing pre-recorded audio in AudacityKen Fallon
14052013-12-2018 - LibreOffice Writer Page Styles IntroducedAhuka
14062013-12-23ORCA fundraiserAhuka
14072013-12-24Mars Needs Women, and Hacker Public Radio Needs ShowsAhuka
14082013-12-25Drupal in Gothenburg with Addison Berry and othersSeetee
14092013-12-26Xircom PE pocket ethernet adapterKen Fallon
14102013-12-27Generating Keys on the Command LineAhuka
14112013-12-30ohmroep live 1, 31-06-2013, pirate partiesNido Media
14122013-12-31ohmroep hpr live 2, 31-06-2013, advancing local communitiesNido Media
\n

Other News

\nDownloads in 2013 = 1,134,478\nPer episode download = 4,364\n

Other News

\n \n
\n ',159,121,1,'CC-BY-SA','New Year,2014',0,1380,1), +(1418,'2014-01-08','2013-2014 HPR New Year Show Part 3 2013-12-31T22:00:00Z to 2014-01-01T04:00:00Z',20552,'New Year Show 2014, part 3','

2013-12-31T22:00:00Z

\r\n\r\n

2013-12-31T23:00:00Z

\r\n\r\n

2014-01-01T00:00:00Z

\r\n\r\n

2014-01-01T01:00:00Z

\r\n\r\n

2014-01-01T02:00:00Z

\r\n\r\n

2014-01-01T03:00:00Z

\r\n\r\n

2014-01-01T03:30:00Z

\r\n\r\n',159,121,1,'CC-BY-SA','ORCA,FocusWriter,DarkTable,LightZone,GIMP,Sound Converter,Maelstrom,TuxPaint,mtpaint,Jitsi,kid3,EasyTag,Audacity,gPodder,PuddleTag,avidemux,OpenShot,EtherPad,WordPress,Abiword,gnumeric,LibreOffice',0,1672,1), (1419,'2014-01-09','2013-2014 HPR New Year Show Part 4 2014-01-01T04:00:00Z to 2014-01-01T10:00:00Z',18739,'New Year Show 2014, part 4','

2014-01-01T04:00:00Z

\r\n\r\n

2014-01-01T04:30:00Z

\r\n\r\n

2014-01-01T05:00:00Z

\r\n\r\n

2014-01-01T06:00:00Z

\r\n\r\n

2014-01-01T07:00:00Z

\r\n\r\n

2014-01-01T08:00:00Z

\r\n\r\n

2014-01-01T09:00:00Z

\r\n\r\n

2014-01-01T09:30:00Z

\r\n\r\n',159,121,1,'CC-BY-SA','New Year,2014',0,1377,1), (1420,'2014-01-10','2013-2014 HPR New Year Show Part 5 2014-01-01T10:00:00Z to 2014-01-01T12:00:00Z',6699,'New Year Show 2014, part 5','

2014-01-01T10:00:00Z

\r\n\r\n

2014-01-01T11:00:00Z

\r\n\r\n

2014-01-01T12:00:00Z

\r\n\r\n

\r\nShould auld acquaintance be forgot,
\r\nand never brought to mind?
\r\nShould auld acquaintance be forgot,
\r\nand auld lang syne*?

\r\n\r\n

CHORUS

\r\n

\r\nFor auld lang syne, my jo,
\r\nfor auld lang syne,
\r\nwe’ll tak a cup o’ kindness yet,
\r\nfor auld lang syne.

\r\n\r\n

And surely ye’ll be your pint-stowp!
\r\nand surely I’ll be mine!
\r\nAnd we’ll tak a cup o’ kindness yet,
\r\nfor auld lang syne.

\r\n\r\n

CHORUS

\r\n

We twa hae run about the braes,
\r\nand pu’d the gowans fine;
\r\nBut we’ve wander’d mony a weary fit,
\r\nsin auld lang syne.

\r\n\r\n

CHORUS

\r\n

We twa hae paidl’d i\' the burn,
\r\nfrae morning sun till dine;
\r\nBut seas between us braid hae roar’d
\r\nsin auld lang syne.

\r\n\r\n

CHORUS

\r\n

And there’s a hand, my trusty fiere!
\r\nand gie\'s a hand o’ thine!
\r\nAnd we’ll tak a right gude-willy waught,
\r\nfor auld lang syne.

\r\n\r\n

CHORUS

\r\n

',159,121,1,'CC-BY-SA','New Year,2014',0,1419,1), (1423,'2014-01-15','Monty - The man behind your databases',843,'Tune in to today\'s episode of #HPR and hear Monty talk about YOUR database!','

Listen to the man who created the database YOU use every day, today on Hacker Public Radio.

\n

\"There\'s no reasons to use MySQL anymore.\"
-- Monty

\n

Michael Widenius at FSCONS 2013

\n

A couple of months ago I attended FSCONS 2013. There I met Michael \"Monty\" Widenius, the driving force behind both MySQL and MariaDB. This is a guy who loves being a developer and he loves Open Source software. He named MySQL after his daughter My, and the new fork MariaDB got its name from his other daughter Maria.

\n

Monty was invited to FSCONS 2013 to give a speech entitled \"The MySQL and MariaDB story\", and the synopsis on fscons.org says:

\n
\"The story of how MySQL was created, why it was successful and how it grew until it was sold to Sun, who was then overtaken by Oracle.
It will also cover how and why MariaDB was created and what we are doing to ensure that there will always be a free version of MySQL (under the name of MariaDB).
The talk will also explain the challenges we have had to do this fork, especially the merge with MySQL 5.5, and the various systems (like buildbot) that we used to build the binaries and how we are working with the MariaDB/MySQL community.\"
\n
-- https://frab.fscons.org/en/fscons13/public/events/51

That presentation can be found on YouTube, and I encourage you all to have a look at it. \"Michael Monty Widenius: The MySQL and MariaDB story\": https://youtu.be/JxyBNdwmpzM
\n

\n

If you have not yet made the switch to MariaDB, now is the time!

\n

Monty also asks everyone who uses MariaDB to activate the anonymous plug-in, so that the developers might know what to focus their attention on.

\n

If you wish to look Monty in the eyes, you have the opportunity to do so, as this interview was video recorded and will be released on YouTube or similar. Follow All In IT Radio on Google+, Twitter and Identi.ca for updates on when that will be released.

\n

Stuff referenced in the episode

\n \n

How to reach me

\n

You should follow me and subscribe to All In IT Radio:

\n \n',192,0,0,'CC-BY-SA','fscons, monty, mysql, mariadb, oracle, interview',0,1555,1), @@ -990,11 +998,3 @@ INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hosti (2418,'2017-11-08','What\'s in my ham shack, part 2',1456,'A description of what\'s in my amateur radio shack','\r\n\r\n',201,43,0,'CC-BY-SA','Amateur Radio, Ham Radio',0,0,1), (2415,'2017-11-03','bullet journal to org mode',927,'my journey from analog to digital','

1 Brief introduction

\r\n

1.1 Myself

\r\n

Hi, I\'m Brian in Ohio

\r\n

1.2 Inspiration for show

\r\n

I heard Shane Shennan on episode 2299 doing a what\'s in my bag episode where he briefly mentions using a bullet journal. Then I think I heard Ken Fallon wondering about bullet journals on community news for the month with that episode. So I thought a show was in order explaining how I went from using a bullet journal to using emacs org mode.

\r\n

1.3 Parameters

\r\n

I\'m not an expert on any of the following topics: bullet journal, Getting things done (GTD), orgmode or emacs. I\'m someone who has tried these tools, climbed the learning curve and have some observations to make through that process.

\r\n

2 What\'s a bullet journal

\r\n

2.1 Created by ryder carrol

\r\n

The analog system for the digital age

\r\n

2.2 Where I found out about it

\r\n

https://www.relay.fm/penaddict/70

\r\n

2.3 What it is

\r\n

Method of laying out a notebook and using it to organize and process ideas and tasks. I won\'t try to explain exactly how it is set up. The video tutorial https://bulletjournal.com/ is excellent. You can use any notebook and divide it up into index pages, future log, monthly log and daily log there\'s a visual indexing/ tagging system to help organize stuff. Its extremely customizable.

\r\n

2.4 How I used it

\r\n

I bullet journaled for 2 and a half years, initially set it up stock but later put the index at the back. I used it as a daily planner, idea storing device and short term and long term goal setting tool.

\r\n

2.5 Strengths

\r\n

Customizable but within framework, gives a method to get organized that you can tailor to your needs. Its pretty easy to find needed info, if you\'re diciplined about using. It its battery free

\r\n

2.6 Shortcomings

\r\n

Need to be disciplined. Can be tedious to enter items in month, daily and index sections. It takes time to set up. I think Shane\'s use case he mentioned in podcast as sort of a project/idea book sounds pretty cool and might be a really good use case for this system. Hard to edit, this may be a strength for some people, but for me as a daily planner it was a little daunting to use. Adding stuff to something requires either leaving space ahead of time or indexing to a new page. The monthly log was always a mystery to me on how to use it. If you lose it you\'ve lost it, no easy way to back it up

\r\n

3 What is org mode

\r\n

3.1 Created by Carsten Dominik

\r\n\r\n

3.2 what it is

\r\n

Is an editing and organizing mode for notes, planning, and authoring in the free software text editor Emacs.

\r\n

3.3 How I found out about it

\r\n

3.3.1 emacs

\r\n
3.3.1.1 Wanted a commandline C development environment for microcontroller project development
\r\n
3.3.1.2 IDE
\r\n

Worked with vim/ a bash shell as a sort of minimal IDE. I specifically was using it on a laptop that didn\'t have X installed on it. Just for fun, not my bread and butter.

\r\n
3.3.1.3 Wanted to try something new
\r\n

Knew about emacs, had tried it didn\'t like it

\r\n
3.3.1.4 Thanks to klaatu for emacs hpr emacs episodes
\r\n\r\n
3.3.1.5 Thanks to youtube found out about org mode
\r\n

Rainer Konig - getting yourself organized with org-mode
\r\nhttps://www.youtube.com/channel/UCfbGTpcJyEOMwKP-eYz3_fg

\r\n

3.3.2 Switched in october 2016

\r\n

3.4 How I use it

\r\n

At its heart an org-mode is an outliner. I use org-mode to set up daily todo tasks, organize projects, jot down notes. Org-mode has a subsystem call agenda view that can generate daily planner views from your org-mode files. I initially tried to mimic the bullet journal in org-mode, but found that it was better to approach org mode relying on its strengths, which are different, as you can imagine, from a Bullet journal.

\r\n

3.5 Strengths

\r\n

I like it because its editable, searchable and customizable. Projects can be broken down into as fine a detail as you want and that detail level can expand or contract as necessary. The power of org-mode comes out when you use it to capturing ideas, tasks and information. Capturing these events is done via capture templates that you can create. This new data is then saved to the appropriate org file then shows up in your agenda view. Its extremely easy to back up, it\'s text based and therefore future proof. There are many good tutorials and resources online

\r\n

3.6 Shortcomings

\r\n

Need to know a little about emacs and that can feel overwhelming to try. This new tool will require you to use your brain. Emacs keybindings

\r\n

4 What\'s next

\r\n

Trying to find a good way to use orgmode portably. mobile-org app for android doesn\'t work for me. This has led to trying a couple of different solutions which I will record other hpr episodes about. Thanks for listening. If you have ideas on Bullet Journals or Org-mode I\'d love to hear an episode about it. I\'ll put links into the show notes, this is Brian in Ohio signing off.

\r\n',326,0,0,'CC-BY-SA','journal,bullet journal,emacs,org mode',0,0,1), (2434,'2017-11-30','Cybrosis',5958,'The HPR AudioBook Club discusses Cybrosis by P.C. Haring','

SUMMARY

\r\n

In this episode, the HPR_AudioBookClub discusses Cybrosis by P. C. Haring.

\r\n

Non-Spoiler Thoughts

\r\n\r\n

BEVERAGE REVIEWS

\r\n

As usual, the HPR_AudioBookClub took some time to review the beverages that each of us were drinking during the episode

\r\n\r\n

Things We Talked About

\r\n

All of us felt that there were quite a few cliches in the story.

\r\n

OUR NEXT AUDIOBOOK

\r\n

Triplanetary by E. E. \"Doc\" Smith\r\n
https://librivox.org/triplanetary-first-in-the-lensman-series-by-e-e-doc-smith/

\r\n

OUR AUDIO

\r\n

This episode was processed using Audacity https://audacity.sourceforge.net/. We\'ve been making small adjustments to our audio mix each month in order to get the best possible sound. It\'s been especially challenging getting all of our voices relatively level, because everyone has their own unique setup. Mumble is great for bringing us all together, and for recording, but it\'s not good at making everyone\'s voice the same volume. We\'re pretty happy with the way this month\'s show turned out, so we\'d like to share our editing process and settings with you and our future selves (who, of course, will have forgotten all this by then).

\r\n

Mumble uses a sample rate of 48kHz, but HPR requires a sample rate of 44.1kHz so the first step in our audio process is to resample the file at 44.1kHz. Resampling can take a long time if you don\'t have a powerful computer, and sometimes even if you do. If you record late at night, like we do, you may want to start the task before you go to bed, and save it first thing in the morning, so that the file is ready to go the next time you are.

\r\n

Next we use the \"Compressor\" effect with the following settings:

\r\n \r\n

After compressing the audio we cut any pre-show and post-show chatter from the file and save them in a separate file for possible use as outtakes after the closing music.

\r\n

At this point we listen back to the whole file and we work on the shownotes. This is when we can cut out anything that needs to be cut, and we can also make sure that we put any links in the shownotes that were talked about during the recording of the show. We finish the shownotes before exporting the .aup file to .FLAC so that we can paste a copy of the shownotes into the audio file\'s metadata. We use the \"Truncate Silence\" effect with it\'s default settings to minimize the silence between people speaking. When used with its default (or at least reasonable) settings, Truncate Silence is extremely effective and satisfying. It makes everyone sound smarter, it makes the file shorter without destroying actual content, and it makes a conversations sound as easy and fluid during playback as it was while it was recorded. It can be even more effective if you can train yourself to remain silent instead of saying \"uuuuummmm.\" Just remember to ONLY pass the file through Truncate Silence ONCE. If you pass it through a second time, or if you set it too aggressively your audio may sound sped up and choppy.

\r\n

At this point we add new, empty audio tracks into which we paste the intro, outro and possibly outtakes, and we rename each track accordingly.

\r\n

We adjust the Gain so that the VU meter in Audacity hovers around -12db while people are speaking, and we try to keep the peaks under -6db, and we adjust the Gain on each of the new tracks so that all volumes are similar, and more importantly comfortable. Once this is done we can \"Mix and Render\" all of our tracks into a single track for export to the .FLAC file which is uploaded to the HPR FTP server.

\r\n

Remember to save often when using Audacity. We like to save after each of these steps. Audacity has a reputation for being \"crashy\" but if you remember save after every major transform, you will wonder how it ever got that reputation.

\r\n

FURTHER RECOMMENDATIONS

\r\n

FEEDBACK

\r\n

Thank you very much for listening to this episode of the HPR_AudioBookClub. We had a great time recording this show, and we hope you enjoyed it as well. We also hope you\'ll consider joining us next time. Please leave a few words in the episode\'s comment section.\r\n
As always; remember to visit the HPR contribution page; HPR could really use your help right now.

\r\n

https://hackerpublicradio.org/contribute.php

\r\n

Sincerely,\r\n
The HPR_AudioBookClub

\r\n

P.S. Some people really like finding mistakes. For their enjoyment, we always include a few.

\r\n\r\n\r\n',157,53,1,'CC-BY-SA','Cybrosis, HPR AudioBook Club, cyberpunk, audio fiction, P.C. Haring, Free Culture',0,0,1), -(2419,'2017-11-09','Alien Brothers Podcast S1E01 - Introduction',7584,'Meet the Alien Brothers: Casper and Rutiger. Two tech junkies that take nothing sacred','

This was an impromptu inaugural episode recorded in Bethany Beach, DE.

\r\n

Casper and Rutiger work in the tech field and enjoy video games and popular media. We discuss the enigma that is the Handmaid\'s Tale, Tim & Eric Awesome Show Great Job!, the movie Kids, video games from paperboy to Quake to Fallout 4. We comedically discuss the disillusionment that one can incur working in the cubical jungle. We also discuss going back to minimum wage after enjoying a high paying tech industry.

\r\n

We also reference obscure and not well-known music like Slint.

\r\n

The sound quality is not great in this episode, as it was an impromptu recording. All future episodes will be produced at a much higher quality

',359,0,1,'CC-BY-SA','video games, video cards, first podcast',0,0,1), -(2421,'2017-11-13','Project Interest',518,'Lostnbronx wonders how some projects die for lack of interest.','

This is just a short "episode" wherein I ponder the nature of showmanship and razzle-dazzle regarding the success or failure of FOSS, and other projects that require collaboration. Your comments and opinions are ACTIVELY encouraged.

',107,0,0,'CC-BY-SA','foss,collaboration,writing,projects',0,0,1), -(2422,'2017-11-14','Kickstarter Post Mortem',2763,'Klaatu talks about his failed Kickstarter campaign','

Klaatu tried to fund art for a card game on Kickstarter. Missed the goal by 85%

\r\n

This is a post mortem of how the Kickstarter went and where he may have gone wrong. Possibly you can learn from his mistakes. Possibly he has misdiagnosed his mistakes, and you are being misled. Choose wisely.

',78,95,0,'CC-BY-SA','Crowd Funding,Kickstarter,Tabletop Gaming',0,0,1), -(2423,'2017-11-15','Open Source Gaming #2: Oolite',431,'Episode 2 is about the space travel simulator Oolite, which is an open source remake of Elite','

The game\'s website. If you\'re interested in playing, check it out. https://www.oolite.org/

\r\n

Also here\'s the forum I was looking up during the podcast to find out if Elite Dangerous was multiplayer or not. https://steamcommunity.com/app/359320/discussions/0/142260718945308887/

\r\n',354,0,1,'CC-BY-SA','Gaming, Open Source',0,0,1), -(2426,'2017-11-20','Let\'s Talk About Addiction',655,'Lostnbronx shares some thoughts about the need to talk about addiction.','

I was partially inspired by Bitbox\'s really wonderful episode, \"hpr2413: personal health care\", to ramble on about the need for the HPR community to, maybe, start talking about a mental health crisis that touches pretty much everyone in the modern world: addiction.

\r\n

Personal Health Care
\r\nhosted by Bitbox:
\r\nhttps://hackerpublicradio.org/eps.php?id=2413

\r\n',107,100,1,'CC-BY-SA','addiction,mental health',0,0,1), -(2430,'2017-11-24','Scanning books',740,'Ken explains how and why he is scanning school books','

\r\nI want to scan my Son\'s school books so that he doesn\'t get back problems lugging books to and from school. Something that for now at least remains legal in the Netherlands.\r\n

\r\n

Steps involved

\r\n
    \r\n
  1. Scan all the images using the entire length of your scanner. I use scantoimage.bash
  2. \r\n
  3. Confirm that there are no missing pages, and that every other page is upright and then upside down etc. If they are scan them and rename them so the name fits in between the pages
  4. \r\n
  5. Back up all the scanned images
  6. \r\n
  7. Manually crop the areas of the scans outside the area of the page. Usually this is on the side and bottom of the flat bed. Save is as something like ~/x.jpg
  8. \r\n
  9. Use GraphicsMagick Image Processing System to identify the dimensions of the cropped image.
    \r\n\r\ngm identify ~/x.jpg
    \r\n/home/me/x.jpg JPEG 2477x2609+0+0 DirectClass 8-bit 3.2Mi 0.000u 0m:0.000002s
    \r\n
  10. \r\n
  11. Crop all the images to that dimension
    \r\ngm mogrify -crop 2477x2609+0+0 *.jpg\r\n
  12. \r\n
  13. Rotate every second image by 180 degrees. rotate-every-second-image.bash
  14. \r\n
  15. Create a directory for the book and in there create a subdirectory for each section of the book. Manually copy all the images to the sub directory for that section.
  16. \r\n
  17. Then go to the root where there are no files only subdirs and run the command
    \r\nfor i in *;do echo $i;gm convert \"${i}/*.jpg\" \"${i}.pdf\"; done
  18. \r\n
\r\n

\r\nAt the end you will have a pdf file for each section of the book.\r\n

',30,0,1,'CC-BY-SA','book scanning',0,0,1), -(2424,'2017-11-16','Interface Zero RPG Play',3010,'Klaatu, Lobath, and Thaj play the Interface Zero RPG','

Klaatu, Lobath, and Thaj play a session of Interface Zero, a role playing game using the Pathfinder rules.\r\n

\r\n

\r\nIf you\'re new to RPG and want to hear how it\'s done, or you\'re just bored and want to hear some nerds play through a cyberpunk adventure, this is for you! Also - for one lucky listener - we have an RPG starter kit. Listen for details.

',78,95,0,'CC-BY-SA','Interface Zero,actual play,rpg,gaming,live play',0,0,1), -(2425,'2017-11-17','Intro to XSL',2502,'A brief introduction to XSL and xsltproc','

\r\nSure, you can use pandoc to process your Docbook XML, but why not learn a little XSL this weekend?\r\n

\r\n

Requirements

\r\n

\r\nYou must have xsltproc installed. It\'s available from your software repository.\r\n

\r\n

\r\nHere is some sample XML for you:\r\n

\r\n
\r\n<xml version=\"1.0\">\r\n  <para>\r\n    My name is <author>Foo</author>.\r\n  </para>\r\n\r\n  <para>\r\n    You're listening to <emphasis role=\"bold\">Hacker Public\r\n    Radio</emphasis>.\r\n  </para>\r\n</xml>\r\n
\r\n

\r\nAnd here\'s the complete XSL as demonstrated:\r\n

\r\n
\r\n<xsl:stylesheet xmlns:xsl=\"https://www.w3.org/1999/XSL/Transform\" version=\"1.0\">\r\n\r\n  <xsl:template match=\"para\">\r\n    <p><span><xsl:apply-templates/></span></p>\r\n  </xsl:template>\r\n\r\n  <xsl:template match=\"emphasis\">\r\n    <em><xsl:apply-templates/></em>\r\n  </xsl:template>\r\n\r\n  <xsl:template match=\"emphasis[@role=\'bold\']\">\r\n    <strong><xsl:apply-templates/></strong>\r\n  </xsl:template>\r\n\r\n  <xsl:template match=\"author\" name=\"host\">\r\n    <xsl:choose>\r\n\r\n      <xsl:when test=\"$host = \'Klaatu\'\">\r\n        <xsl:text>Klaatu</xsl:text>\r\n      </xsl:when>\r\n\r\n      <xsl:when test=\"$host = \'Gort\'\">\r\n        <xsl:text>Gort</xsl:text>\r\n      </xsl:when>\r\n    </xsl:choose>\r\n  </xsl:template>\r\n</xsl:stylesheet>\r\n
\r\n

Links

\r\n\r\n',78,0,0,'CC-BY-SA','docbook,xml,xsl',0,0,1), diff --git a/sql/hpr-db-part-13.sql b/sql/hpr-db-part-13.sql index 233f9e6..a38bcaf 100644 --- a/sql/hpr-db-part-13.sql +++ b/sql/hpr-db-part-13.sql @@ -1,3 +1,11 @@ +(2419,'2017-11-09','Alien Brothers Podcast S1E01 - Introduction',7584,'Meet the Alien Brothers: Casper and Rutiger. Two tech junkies that take nothing sacred','

This was an impromptu inaugural episode recorded in Bethany Beach, DE.

\r\n

Casper and Rutiger work in the tech field and enjoy video games and popular media. We discuss the enigma that is the Handmaid\'s Tale, Tim & Eric Awesome Show Great Job!, the movie Kids, video games from paperboy to Quake to Fallout 4. We comedically discuss the disillusionment that one can incur working in the cubical jungle. We also discuss going back to minimum wage after enjoying a high paying tech industry.

\r\n

We also reference obscure and not well-known music like Slint.

\r\n

The sound quality is not great in this episode, as it was an impromptu recording. All future episodes will be produced at a much higher quality

',359,0,1,'CC-BY-SA','video games, video cards, first podcast',0,0,1), +(2421,'2017-11-13','Project Interest',518,'Lostnbronx wonders how some projects die for lack of interest.','

This is just a short "episode" wherein I ponder the nature of showmanship and razzle-dazzle regarding the success or failure of FOSS, and other projects that require collaboration. Your comments and opinions are ACTIVELY encouraged.

',107,0,0,'CC-BY-SA','foss,collaboration,writing,projects',0,0,1), +(2422,'2017-11-14','Kickstarter Post Mortem',2763,'Klaatu talks about his failed Kickstarter campaign','

Klaatu tried to fund art for a card game on Kickstarter. Missed the goal by 85%

\r\n

This is a post mortem of how the Kickstarter went and where he may have gone wrong. Possibly you can learn from his mistakes. Possibly he has misdiagnosed his mistakes, and you are being misled. Choose wisely.

',78,95,0,'CC-BY-SA','Crowd Funding,Kickstarter,Tabletop Gaming',0,0,1), +(2423,'2017-11-15','Open Source Gaming #2: Oolite',431,'Episode 2 is about the space travel simulator Oolite, which is an open source remake of Elite','

The game\'s website. If you\'re interested in playing, check it out. https://www.oolite.org/

\r\n

Also here\'s the forum I was looking up during the podcast to find out if Elite Dangerous was multiplayer or not. https://steamcommunity.com/app/359320/discussions/0/142260718945308887/

\r\n',354,0,1,'CC-BY-SA','Gaming, Open Source',0,0,1), +(2426,'2017-11-20','Let\'s Talk About Addiction',655,'Lostnbronx shares some thoughts about the need to talk about addiction.','

I was partially inspired by Bitbox\'s really wonderful episode, \"hpr2413: personal health care\", to ramble on about the need for the HPR community to, maybe, start talking about a mental health crisis that touches pretty much everyone in the modern world: addiction.

\r\n

Personal Health Care
\r\nhosted by Bitbox:
\r\nhttps://hackerpublicradio.org/eps.php?id=2413

\r\n',107,100,1,'CC-BY-SA','addiction,mental health',0,0,1), +(2430,'2017-11-24','Scanning books',740,'Ken explains how and why he is scanning school books','

\r\nI want to scan my Son\'s school books so that he doesn\'t get back problems lugging books to and from school. Something that for now at least remains legal in the Netherlands.\r\n

\r\n

Steps involved

\r\n
    \r\n
  1. Scan all the images using the entire length of your scanner. I use scantoimage.bash
  2. \r\n
  3. Confirm that there are no missing pages, and that every other page is upright and then upside down etc. If they are scan them and rename them so the name fits in between the pages
  4. \r\n
  5. Back up all the scanned images
  6. \r\n
  7. Manually crop the areas of the scans outside the area of the page. Usually this is on the side and bottom of the flat bed. Save is as something like ~/x.jpg
  8. \r\n
  9. Use GraphicsMagick Image Processing System to identify the dimensions of the cropped image.
    \r\n\r\ngm identify ~/x.jpg
    \r\n/home/me/x.jpg JPEG 2477x2609+0+0 DirectClass 8-bit 3.2Mi 0.000u 0m:0.000002s
    \r\n
  10. \r\n
  11. Crop all the images to that dimension
    \r\ngm mogrify -crop 2477x2609+0+0 *.jpg\r\n
  12. \r\n
  13. Rotate every second image by 180 degrees. rotate-every-second-image.bash
  14. \r\n
  15. Create a directory for the book and in there create a subdirectory for each section of the book. Manually copy all the images to the sub directory for that section.
  16. \r\n
  17. Then go to the root where there are no files only subdirs and run the command
    \r\nfor i in *;do echo $i;gm convert \"${i}/*.jpg\" \"${i}.pdf\"; done
  18. \r\n
\r\n

\r\nAt the end you will have a pdf file for each section of the book.\r\n

',30,0,1,'CC-BY-SA','book scanning',0,0,1), +(2424,'2017-11-16','Interface Zero RPG Play',3010,'Klaatu, Lobath, and Thaj play the Interface Zero RPG','

Klaatu, Lobath, and Thaj play a session of Interface Zero, a role playing game using the Pathfinder rules.\r\n

\r\n

\r\nIf you\'re new to RPG and want to hear how it\'s done, or you\'re just bored and want to hear some nerds play through a cyberpunk adventure, this is for you! Also - for one lucky listener - we have an RPG starter kit. Listen for details.

',78,95,0,'CC-BY-SA','Interface Zero,actual play,rpg,gaming,live play',0,0,1), +(2425,'2017-11-17','Intro to XSL',2502,'A brief introduction to XSL and xsltproc','

\r\nSure, you can use pandoc to process your Docbook XML, but why not learn a little XSL this weekend?\r\n

\r\n

Requirements

\r\n

\r\nYou must have xsltproc installed. It\'s available from your software repository.\r\n

\r\n

\r\nHere is some sample XML for you:\r\n

\r\n
\r\n<xml version=\"1.0\">\r\n  <para>\r\n    My name is <author>Foo</author>.\r\n  </para>\r\n\r\n  <para>\r\n    You're listening to <emphasis role=\"bold\">Hacker Public\r\n    Radio</emphasis>.\r\n  </para>\r\n</xml>\r\n
\r\n

\r\nAnd here\'s the complete XSL as demonstrated:\r\n

\r\n
\r\n<xsl:stylesheet xmlns:xsl=\"https://www.w3.org/1999/XSL/Transform\" version=\"1.0\">\r\n\r\n  <xsl:template match=\"para\">\r\n    <p><span><xsl:apply-templates/></span></p>\r\n  </xsl:template>\r\n\r\n  <xsl:template match=\"emphasis\">\r\n    <em><xsl:apply-templates/></em>\r\n  </xsl:template>\r\n\r\n  <xsl:template match=\"emphasis[@role=\'bold\']\">\r\n    <strong><xsl:apply-templates/></strong>\r\n  </xsl:template>\r\n\r\n  <xsl:template match=\"author\" name=\"host\">\r\n    <xsl:choose>\r\n\r\n      <xsl:when test=\"$host = \'Klaatu\'\">\r\n        <xsl:text>Klaatu</xsl:text>\r\n      </xsl:when>\r\n\r\n      <xsl:when test=\"$host = \'Gort\'\">\r\n        <xsl:text>Gort</xsl:text>\r\n      </xsl:when>\r\n    </xsl:choose>\r\n  </xsl:template>\r\n</xsl:stylesheet>\r\n
\r\n

Links

\r\n\r\n',78,0,0,'CC-BY-SA','docbook,xml,xsl',0,0,1), (2427,'2017-11-21','Server Basics 101',2590,'Klaatu endeavours to explain the basics of server administration.','

Klaatu covers the very very basics of servers: what they are, how to know one when you see one, what one ought to run, and why we have them.

',78,0,0,'CC-BY-SA','server,admin,sys admin,linux',0,0,1), (2429,'2017-11-23','Interface Zero RPG Play',1902,'Klaatu, Lobath, and Thaj play the Interface Zero RPG part 2','

The second session of Interface Zero RPG live play with Klaatu, Lobath, and Thaj.

\r\n\r\n

This week, Chiawei and Syd reach Peter\'s apartment and do some quick detective work, and a little bit of minor bone-breaking.

\r\n\r\n

\r\nIf you\'re really keen to play, send Klaatu an email (Klaatu at the domain of this podcast, or member.fsf.org). The recording schedule is inflexible, Klaatu has oddly high standards for audio that he is inevitably compresses down to 64kbps, and the game has already started, but a new character or guest character is not out of the question!

\r\n\r\n

No give-away this week, but we\'ll be giving a (digital) Pathfinder starter kit out next week.

',78,95,0,'CC-BY-SA','Interface Zero,actual play,rpg,gaming,live play',0,0,1), (2435,'2017-12-01','Server Basics 102',2926,'Klaatu talks about SSH configuration on the server you set up in 101.','

Klaatu talks about SSH, changing SSH ports, and using SSH keys for the server you presumably set up after hearing Server Basics 101 in this series.

',78,0,0,'CC-BY-SA','server,admin,sys admin,linux',0,0,1), @@ -990,11 +998,3 @@ INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hosti (3382,'2021-07-20','How I fixed a fault on my car for free thanks to YouTube',760,'How I fixed a fault on my car for free and as an added bonus without injuring myself!','

I had a spare moment and found this show on my hard drive. Cheers MrX

\r\n

YouTube video I found that explains how to fix a rattling heat shield for free

\r\n

Picture of the fix!
\r\n\"Picture

\r\n',201,0,1,'CC-BY-SA','Car, Repair, Hack, DIY',0,0,1), (3383,'2021-07-21','My gEeeky Experiment - Part 1',1029,'ClaudioM talks about how he revived his lowly Asus Eee PC 901 netbook with OpenBSD.','\r\n

CPU on my Dell Latitude E6410 via sysctl: hw.model=Intel(R) Core(TM) i5 CPU M 520 @ 2.40GHz

\r\n',152,0,0,'CC-BY-SA','asus,eeepc,openbsd,bsd,linux',0,0,1), (3384,'2021-07-22','Page Numbers in EPUB eBook Files',1699,'Response to HPR 3367 I describe how to specify page numbers in an EPUB eBook.','

This episode is a response to hpr3367 by Andrew Conway and Dave Morriss. One of the topics they brought up was the thorny issue of page numbers in e-books. Most of the time you don\'t need to worry about page numbers in ebooks, if you\'re reading fiction for example. The whole point of an ebook is that the texts can reflow to fit the page no matter what size the screen is or what font-size you\'ve chosen. This is a major accessibility feature of all e-book formats. One reason you might want to specify actual page numbers, though, is if you\'re dealing with a technical or academic book, and you need to be able to refer to specific passages in the book by page number, as you are expected to do in academic research. Or, as Andrew and Dave were discussing, you might need to create an index in your ebook that would send your readers back to specific pages like in a paper book.

\r\n\r\n

I\'ve thought about this before but never really gotten into the weeds and figured out how to make it happen. In fact, when I was creating the new digital editions of the Counterpoint textbooks like I discussed in hpr1512, I actually took the trouble to put page number anchors through the entire thing, so that at a future date I would be able to enable real page numbers. This was a key part of the source file\'s infrastructure, which helped me quickly find the passages I was working on in my huge HTML file. Those anchors are not quite in the correct format for EPUB, but they are consistent and I will easily be able to write a script to fix them. I haven\'t done that yet, but now that I figured out how to do it on some smaller examples, this is on my to-do list.

\r\n\r\n

Anyway while I was listening to Dave and Andrew talk about this, I thought I remembered reading somewhere that in the newest ePub specification, EPUB 3, there was support for publisher\'s page numbers to deal with precisely this issue. Their discussion prompted me to see if I could make it work. I\'m happy to report success, although with some qualifications, which I will get into.

\r\n\r\n

Converting to EPUB 3

\r\n\r\n

The first thing to do is to upgrade your ebook from EPUB2 to EPUB3. There are a couple of ways to do this. The way I did it was to use the ebook editor in a recent version of Calibre. When you open up the EPUB for editing, go to the Tools menu and choose Upgrade book internals. This will create the new navigation file nav.xhtml to replace the old toc.ncx file. You\'ll need to edit this new file later to enable the page numbers.

\r\n\r\n

Insert page anchors

\r\n\r\n

Next you need to put your page anchors in there. This could be very tedious if you haven\'t done any preparatory work, such as putting visible page numbers in plain sight in square brackets [21] the way I did for a couple of ebooks. It wasn\'t very elegant, but at least it was easy to find where the page breaks were. I have a Blather voice command that triggers a python script to create these things. Here\'s an example of page number anchor, which goes in the main text of the book wherever you want to insert a page number. This will not be visible to the reader inline. This is for page 57:

\r\n\r\n
\r\n<span epub:type="pagebreak" id="page57" title="57"></span>\r\n
\r\n\r\n

Page List in Navigation File

\r\n\r\n

Finally you need to put a page list in the new navigation file. This is simply an ordered list with hyperlinks to every page anchor that you put in your ebook. This will not be visible to the reader, but it\'s critical to making everything work. Here\'s a minimal example from my first attempt. This only covers Pages 122 to 126. This is the kind of page numbering you might need if you created an ebook from a five-page article from an academic journal that appeared in the middle of the volume.

\r\n\r\n\r\n
\r\n<nav epub:type="page-list" hidden="hidden">\r\n    <ol>\r\n        <li><a href="filename.html#page122">122</a></li>\r\n        <li><a href="filename.html#page123">123</a></li>\r\n        <li><a href="filename.html#page124">124</a></li>\r\n        <li><a href="filename.html#page125">125</a></li>\r\n        <li><a href="filename.html#page126">126</a></li>\r\n    </ol>\r\n</nav>\r\n
\r\n\r\n

I\'m not sure it matters where you put this navigation block in the nav.xhmtl file, but I put mine between the table of contents and the landmarks blocks.

\r\n\r\n

Scripting the creation of page list

\r\n\r\n

It could be very tedious to create a page list like this, so of course I wrote a script to automate a lot of the heavy lifting. I\'m sure Dave can write one that\'s more elegant than this, but this is what I came up with in about 5 minutes and it did the job, with the exception of putting the right URL for each link. I did a little bit of post-production to search and replace the URLs generated in the script with what I needed for the specific eBook. I think if you added a third command-line argument with a URL, you can solve this problem. The difficulty with larger books will be when you have more than one internal HTML file in the book, you will have to go through very carefully and make sure that the link goes to the correct file. I saved the script as pagelist.sh and put it in my $PATH.

\r\n\r\n

Command to run to generate a page list from pages 42 to 61:

\r\n\r\n
\r\npagelist.sh 42 61\r\n
\r\n\r\n

And here\'s the script:

\r\n\r\n
\r\n#!/bin/bash\r\n\r\n# grab beginning and ending pages from 1st and 2nd\r\n# CLI arguments, and specify a tmp file to put stuff\r\nstart="$1"\r\nend="$2"\r\nnavfile=/tmp/navfile.txt\r\n\r\n# put the top matter for the nav block\r\necho \'<nav epub:type="page-list" hidden="hidden">\' > $navfile\r\necho "    <ol>" >> $navfile\r\n\r\n# iterate through the page numbers making list item for each one.\r\n# should replace filename with your ebook\'s actual filename\r\nfor i in $(seq $start $end); do\r\n	echo "        <li><a href=\\"filename.html#page$i\\">$i</a></li>" >> $navfile\r\ndone\r\n\r\n# close out the list and nav block\r\necho "    </ol>" >> $navfile\r\necho "</nav>" >> $navfile\r\n\r\nexit 0\r\n
\r\n\r\nThen you just need to copy and paste what was generated from the script into your editor and make sure all of the URLs are correct, then stick that navigation block into the nav.xhtml file.\r\n\r\n

Conclusions

\r\n\r\n

So, once you have the page anchors and the page list in place in your EPUB3 ebook, everything should work. The problem is that so far the only ebook reader I have found that renders the page numbers correctly on the screen is the iBooks app on iOS. I tried it on my Kobo dedicated eReader, on the Marvin ePub reader on iOS and on Overdrive on Android, and none of them displayed my shiny page numbers. iBooks was the only one, but it did so perfectly after choosing \"show publisher page numbers\" on the table of contents menu. It was pretty magical. A quick internet search confirms that there is very little e-book reader or app support for displaying these page numbers.

\r\n\r\n

However, the embedded page numbers will still be useful if what you want to do is create an index that directs readers back to specific pages. On the one hand, indexes are not as critical as they used to be because you can search through the text of e-books very easily. What you can\'t do easily is browse an eBook the way you can browse a paper book index to see what topics might catch your eye. This might be something only academics do. It\'s not uncommon for an academic to pick up a book and flip right to the bibliography and the index!

\r\n\r\n\r\n

Links

\r\n\r\n\r\n',238,0,0,'CC-BY-SA','ebooks, epub, scripting, calibre',0,0,1), -(3386,'2021-07-26','What\'s for dinner?',1342,'Some scripts and a database for randomly choosing which meal to cook','

Overview

\r\n

I live on my own, but I cook for members of my family from time to time. Each week we all get together and cook dinner for Wednesday and Thursday. I usually do the cooking but we are starting to share these duties for certain meals.

\r\n

In 2019 I thought it would be useful if I had some sort of random chooser to decide what next week’s meal was going to be. I wrote a Bash script called choose_meal, using a simple CSV file of meal names and the date last eaten to avoid choosing the same one too often. The shortcomings of this approach soon became apparent!

\r\n

It wasn’t long before choose_meal was rewritten in Perl. This time I decided to use a database, and chose SQLite to create it. My database contained just two tables, one for the meals themselves (called slightly confusingly \'meal_history\'), and another for a record of the choices made (called \'meal_log\') – the ability to produce historical reports seemed like a desirable feature!

\r\n

In 2019 the design of this system was very specific to our needs: one choice per week on a Wednesday. It was not something that could be used by anyone else – which seemed like a bad idea.

\r\n

In late 2020 and early 2021 the system was redesigned, as will be discussed in the detailed notes. In May 2021 a more general design was added to the public GitLab repository and the preparation of this show was begun.

\r\n

I had never intended this system to hold recipes. This was partly because I have built a collection of recipes I have constructed from various sources and amended as I have made them. I print these and keep them in a ring-binder for reference as I cook. In some cases the meals described in the database are multi-component ones (such as the dishes that make up a curry for example), so it doesn’t seem appropriate to hold these here.

\r\n

I might rethink this in the future however.

\r\n

Long notes

\r\n

Follow this link to read the detailed notes associated with this episode.

\r\n

Links

\r\n',225,0,1,'CC-BY-SA','Perl,SQLite3,database,food',0,0,1), -(3387,'2021-07-27','Infosec Podcasts Part 5 Grab bag',483,'Presenting my favorite podcasts related to various aspects of information security','

Inoffensive in every region of the world.

\r\n

Thank you to everyone who has listened to my previous episodes. I hope I am not boring you all to death!

\r\n

Why am I recording this series?

\r\n\r\n

Because there are so many podcasts to list, I have broken them down into 6 different episodes based on topics:

\r\n\r\n

Part 5

\r\n

Hacks & Attacks

\r\n\r\n

Technical information / learning

\r\n\r\n

Community / Social / History

\r\n\r\n

I hope that this series has helped introduce you to some new and interesting listening options. Give some of them a try, and I would love to get your feedback in the episode comments on the HPR website.

\r\n

The next and final episode of this series will be about Information Security Leadership podcasts.

\r\n

Thank you for listening.

',394,75,1,'CC-BY-SA','infosec, podcasts, security',0,0,1), -(3399,'2021-08-12','Linux Inlaws S01E36: Open Source Licenses',3361,'The ultimate show on open source licenses or how to fall asleep without chemicals','

\r\n In this episode Chris is trying hard to get Martin to sleep by elaborating on the\r\n subject of free and open source software licenses but fails miserably. Listen to a\r\n more than riveting episode on the ins and outs of licensing FLOSS code bases in addition\r\n to banter about Brexit, plans for a reshaping of Europe after the invasion of England\r\n and Wales, Northern Ireland and Scotland leave the UK.\r\n

\r\n\r\n

Links:

\r\n\r\n',384,111,1,'CC-BY-SA','Licensing, GNU, BSD, MIT, Taking Lives, MI6, Clarkson\'s Farm, Open Source Initiative',0,0,1), -(3696,'2022-10-03','HPR Community News for September 2022',3283,'HPR Volunteers talk about shows released and comments posted in September 2022','\n\n

New hosts

\n

\nThere were no new hosts this month.\n

\n\n

Last Month\'s Shows

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
IdDayDateTitleHost
3674Thu2022-09-01Emergency Show posted in 2012. MUDKlaatu
3675Fri2022-09-02Plan 9: An exercise in futilitybinrc
3676Mon2022-09-05HPR Community News for August 2022HPR Volunteers
3677Tue2022-09-06Hacker Public Radio 2021 - 2022 New Years Show Part 4Honkeymagoo
3678Wed2022-09-07\"Stupid Users\" ... no, not those users, the other \"stupid users\"Lurking Prion
3679Thu2022-09-08Linux Inlaws S01E64: Non-profits in the US: A closer look at 501(c)smonochromec
3680Fri2022-09-09EDITAhuka
3681Mon2022-09-12Rust 101 Episode 3: Functionally InsaneBlacKernel
3682Tue2022-09-13Hacker Public Radio 2021 - 2022 New Years Show Part 5Honkeymagoo
3683Wed2022-09-14Add a favourite to OSMAndKen Fallon
3684Thu2022-09-15Wake on LanJWP
3685Fri2022-09-16Budget and an Android appArcher72
3686Mon2022-09-19 Followup for HPR3675: Clarifications on the path traversal bugbinrc
3687Tue2022-09-20Hacker Public Radio 2021 - 2022 New Years Show Part 6Honkeymagoo
3688Wed2022-09-21Education, Certifications, and sipping on the SocialsLurking Prion
3689Thu2022-09-22Linux Inlaws S01E65: TerminusDBmonochromec
3690Fri2022-09-23Planning the TripAhuka
3691Mon2022-09-26Starship.rs the best prompt I don\'t useKlaatu
3692Tue2022-09-27What is a real hacker?Lurking Prion
3693Wed2022-09-28Fixing the automatic cutoff mechanism to an electric mowerRho`n
3694Thu2022-09-29Robo Tripping Ravelords of the ApocalypseMechatroniac
3695Fri2022-09-30How I watch youtube with newsboatbinrc
\n\n

Comments this month

\n\n

These are comments which have been made during the past month, either to shows released during the month or to past shows.\nThere are 39 comments in total.

\n

Past shows

\n

There are 8 comments on\n8 previous shows:

\n\n

This month\'s shows

\n

There are 31 comments on 9 of this month\'s shows:

\n\n\n

Mailing List discussions

\n

\nPolicy decisions surrounding HPR are taken by the community as a whole. This\ndiscussion takes place on the Mail List which is open to all HPR listeners and\ncontributors. The discussions are open and available on the HPR server under\nMailman.\n

\n

The threaded discussions this month can be found here:

\nhttps://hackerpublicradio.org/pipermail/hpr_hackerpublicradio.org/2022-September/thread.html\n\n\n

Events Calendar

\n

With the kind permission of LWN.net we are linking to\nThe LWN.net Community Calendar.

\n

Quoting the site:

\n
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.
\n\n

Any other business

\n

FOSDEM 2023

\n

FOSDEM 2023 will take place in Brussels, Belgium at the Université Libre de Bruxelles (or ULB) next February on the weekend of the 4th and 5th.

\n

HPR had a stand at the last in-person event, representing Free Culture Podcasts. There is a call for proposals out at the moment for those wishing to run a stand for the forthcoming event.

\n

Older HPR shows on archive.org, phase 2

\n

Now that all shows from number 1 to the latest have been uploaded to the Internet Archive there are other tasks to perform. We are reprocessing and re-uploading shows in the range 871 to 2429 as explained in the Community News show notes released in May 2022. We are keeping a running total here to show progress:

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\nMonth\n\nMonth count\n\nRunning total\n\nRemainder\n
\n2022-04\n\n130\n\n130\n\n1428\n
\n2022-05\n\n140\n\n270\n\n1288\n
\n2022-06\n\n150\n\n420\n\n1138\n
\n2022-07\n\n155\n\n575\n\n983\n
\n2022-08\n\n155\n\n730\n\n828\n
\n2022-09\n\n150\n\n880\n\n678\n
\n\n

Updated: 2022-10-02 11:47:18

\n\n',159,47,1,'CC-BY-SA','Community News',0,0,1), -(3392,'2021-08-03','Structured error reporting',1714,'Tuula talks about how she improved build times by breaking down error reporting to smaller parts','

Initial state

\r\n

When I originally wanted a unified error reporting on the server-side, I made one huge type that enumerated all the possible error cases that could be reported:

\r\n
-- | Error codes for all errors returned by API\r\ndata ErrorCode\r\n    -- common error codes\r\n    = ResourceNotFound\r\n    | InsufficientRights\r\n    | FailedToParseDataInDatabase\r\n    -- errors specific to news\r\n    | SpecialEventHasAlreadyBeenResolved\r\n    | UnsupportedArticleType\r\n    | SpecialNewsExtractionFailed\r\n    | TriedToMakeChoiceForRegularArticle\r\n    -- errors specific to simulation state\r\n    | SimulationStatusNotFound\r\n    | DeltaTIsTooBig\r\n    | TurnProcessingAndStateChangeDisallowed\r\n    | SimulationNotOpenForCommands\r\n    | SimulationNotOpenForBrowsing\r\n    -- errors specific to people\r\n    | StatIsTooLow Text\r\n    | CouldNotConfirmDateOfBirth\r\n    | DateOfBirthIsInFuture\r\n    | FirstNameIsEmpty\r\n    | FamilyNameIsEmpty\r\n    | CognomenIsEmpty\r\n    | RegnalNumberIsLessThanZero\r\n    -- errors specific to new person creation\r\n    | AgeBracketStartIsGreaterThanEnd\r\n    | PersonCreationFailed\r\n    deriving (Show, Read, Eq)\r\n
\r\n

Then I had some helper functions to turn any value of that type into a nice error message:

\r\n
errorCodeToStatusCode :: ErrorCode -> Int\r\nstatusCodeToText :: Int -> ByteString\r\nerrorCodeToText :: ErrorCode -> Text\r\nraiseIfErrors :: [ErrorCode] -> HandlerFor App ()\r\n
\r\n

errorCodeToStatusCode was responsible for turning ErrorCode into http status code. For example StatIsTooLow \"intrigue\" would be 400. statusCodeToText would take this code and turn it into short error message given in http response. 400 would be Bad Request. errorCodeToText would give a bit more verbose explanation of what happened, StatIsTooLow \"intrigue\" would be mapped to \"Stat intrigue is too low\". Finally raiseIfErrors would take a list of ErrorCode and use these helper functions to turn them into a http response with correct status code, error message and json body detailing all errors that had happened:

\r\n
[\r\n    { code:\r\n        { tag: "StatIsTooLow"\r\n        , contents: "intrique"\r\n        }\r\n    , error: "Stat intrigue is too low"\r\n    }\r\n]\r\n
\r\n

There’s two tags: code, which contains machine readable details about the error and error, which contains error message that can be shown to user.

\r\n

While this worked fine, there was some problems with it. ErrorCode type was growing larger and larger and the module it was defined in was referred all over the codebase. Every time I added a new error message, all the modules that used error reporting had to be compiled and it was getting slow.

\r\n

Solution

\r\n

Breaking up the ErrorCode to smaller types and moving them to different modules would means less modules were going to built when I added a new error code. The problem was that raiseIfErrors :: [ErrorCode] -> HandlerFor App () wanted a list of ErrorCode and elements in a list have to be of same type.

\r\n

I started by splitting ErrorCode to smaller types. Each of the smaller error types have automatically derived toJSON and fromJSON functions for serializing them to and from JSON:

\r\n
data PersonCreationError =\r\n    StatIsTooLow Text\r\n    | CouldNotConfirmDateOfBirth\r\n    | DateOfBirthIsInFuture\r\n    | FirstNameIsEmpty\r\n    | FamilyNameIsEmpty\r\n    | CognomenIsEmpty\r\n    | RegnalNumberIsLessThanZero\r\n    deriving (Show, Read, Eq)\r\n\r\n$(deriveJSON defaultOptions ''PersonCreationError)\r\n
\r\n

That $(deriveJSON defaultOptions \'\'PersonCreationError) is template haskell call. Basically it invokes a deriveJSON function with PersonCreationError as parameter and compiles and splices the resulting code here. This is fast and easy way of generating ToJSON and FromJSON instances and avoiding having to write them by hand. It is very similar to how Lisp macros work.

\r\n

Then I defined a type class, that has functions for getting a http status code and a error message that can be shown to user. statusCodeToText I could use as is, without any modifications:

\r\n
class ErrorCodeClass a where\r\n    httpStatusCode :: a -> Int\r\n    description :: a -> Text\r\n
\r\n

I have to have instance of ErrorCodeClass defined for each and every smaller error type. Here’s an excerpt of PersonCreationError showing how it would look like:

\r\n
instance ErrorCodeClass PersonCreationError where\r\n    httpStatusCode = \\case\r\n        StatIsTooLow _ -> 400\r\n        CouldNotConfirmDateOfBirth -> 500\r\n...\r\n\r\n    description = \\case\r\n        StatIsTooLow s ->\r\n            "Stat " ++ s ++ " is too low"\r\n...\r\n
\r\n

A little note: description = \\case relies on lambda case extension. It is just a slightly different way of writing:

\r\n
    description d =\r\n        case d of\r\n
\r\n

This allows me to turn values of these smaller error types into error messages that could be sent to the user.

\r\n

The second part of the solution is to figure out a way to put values of these smaller error types into same list. If a list is of type [PersonCreationError], it can’t contain values of CommonError and vice versa. Creating a wrapper like:

\r\n
data ECode a = ECode a\r\n
\r\n

doesn’t work, because then I would have elements of type ECode PersonCreationError and ECode CommonError, which are of different type. What I need, is a way to wrap all these different types into a wrapper that loses the type of wrapped value. Another problem is that I need to place constraints on what kind of values can be wrapped. I need them to have instances for ErrorCodeClass (for getting error information) and ToJSON (for serializing them into JSON). There’s several ways of doing this, but I chose to use generalized algebraic data types (GADTs for short):

\r\n
{-# LANGUAGE GADTs #-}\r\n\r\ndata ECode where\r\n    ECode :: (ErrorCodeClass a, ToJSON a) => a -> ECode\r\n
\r\n

Now type ECode has one value constructor, also named to ECode, which takes one parameter a. a can be anything, as long as there’s ErrorCodeClass and ToJSON instances defined for it. Calling this constructor will return ECode. If you compare this with the previous definition of ECode, you’ll notice two major differences:

\r\n\r\n

The second part means that I can wrap different types into ECode and place them into a same list without problems. Type of that list is simply [ECode].

\r\n

But having a list of error codes wrapped in ECode isn’t going to do much to us. We need to be able to turn them into http status code, text and list of error messages. Luckily we have a type class just for that:

\r\n
instance ErrorCodeClass ECode where\r\n    httpStatusCode (ECode a) =\r\n        httpStatusCode a\r\n\r\n    description (ECode a) =\r\n        description a\r\n
\r\n

httpStatusCode of ECode is httpStatusCode of the value ECode wraps. Similarly description of ECode is description of the wrapped value.

\r\n

For turning ECode into JSON, I opted for hand written instance:

\r\n
instance ToJSON ECode where\r\n    toJSON (ECode a) =\r\n        object [ "HttpCode" .= httpStatusCode a\r\n               , "FaultCode" .= toJSON a\r\n               , "ErrorDescription" .= description a\r\n               ]\r\n
\r\n

This gives me complete control over how I want to report errors to the client.

\r\n

Final piece of the puzzle is raiseIfErrors function:

\r\n
raiseIfErrors :: [ECode] -> HandlerFor App ()\r\nraiseIfErrors errors = do\r\n    when (not $ null errors) $ do\r\n        let code = fromMaybe 500 $ errors ^? ix 0 . to httpStatusCode\r\n        let msg = statusCodeToText code\r\n        sendStatusJSON (Status code msg) $ toJSON errors\r\n
\r\n

If there are any elements in the passed in list, grab the http status code and text from the first element of the list. I was considering writing some sort of logic to deduce which error code to return in case there are more than one type in the list, but decided against it. There doesn’t seem to be any easy way to decide between HTTP 400 Bad Request and HTTP 500 Internal Server Error. So I just return the first one. Body of the response contains list of errors codes:

\r\n
[\r\n    { HttpCode: 400\r\n    , FaultCode: {\r\n        Tag: "StatIsTooLow"\r\n        , Contents: "intrique"\r\n        }\r\n    , ErrorDescription: "Stat intrigue is too low"\r\n    }\r\n]\r\n
\r\n

Since manually wrapping things in ECode gets tedious after a while, I defined function for each type of error that does that for me:

\r\n
statIsTooLow :: Text -> ECode\r\nstatIsTooLow s = ECode $ StatIsTooLow s\r\n
\r\n

Now, instead of writing ECode $ StatIsTooLow \"intrigue\", I can write statIsTooLow \"intrigue\". And if I ever decide to change internals of errors again, I can change how these functions are defined and hopefully don’t have to change each and every place where they’re being used.

\r\n

Different solution

\r\n

Another way to tackle this problem is to use records instead of algebraic data types:

\r\n
data ECode = ECode\r\n    { httpCode :: Int\r\n    , description :: Text\r\n    }\r\n\r\nstatIsTooLow :: Text -> ECode\r\nstatIsTooLow s =\r\n    ECode\r\n    { httpCode = 400\r\n    , description = "Stat " ++ s ++ " is too low"\r\n    }\r\n
\r\n',364,107,1,'CC-BY-SA','haskell, error reporting',0,0,1), -(3393,'2021-08-04','We need to talk about XML',1885,'An extensible markup language? This is too good to be true!','

Klaatu introduces XML.

\r\n\r\n

\r\nThe sample XML document discussed in this episode is:\r\n

\r\n\r\n
\r\n\r\n<xml>\r\n  <sol>\r\n    <planet>\r\n      <name>\r\n        Mercury\r\n      </name>\r\n      <albedo>\r\n        0.11\r\n      </albedo>\r\n    </planet>\r\n    <planet>\r\n      <name>\r\n        Venus\r\n      </name>\r\n      <albedo>\r\n        0.7\r\n      </albedo>\r\n    </planet>\r\n    <planet>\r\n      <name>\r\n        Terra\r\n      </name>\r\n      <albedo>\r\n        0.39\r\n      </albedo>\r\n    </planet>\r\n  </sol>\r\n</xml>\r\n\r\n
\r\n',78,0,0,'CC-BY-SA','xml,data,markup,markdown',0,0,1), -(3394,'2021-08-05','Be an XML star with xmlstarlet',1591,'Parse XML from the terminal','

See the layout of an XML document

\r\n\r\n
\r\n$ xmlstarlet elements planets.xml\r\nxml\r\nxml/sol\r\nxml/sol/planet\r\nxml/sol/planet/name\r\nxml/sol/planet/albedo\r\nxml/sol/planet\r\nxml/sol/planet/name\r\nxml/sol/planet/albedo\r\nxml/sol/planet\r\nxml/sol/planet/name\r\nxml/sol/planet/albedo\r\n\r\n
\r\n\r\n

See content of the planet node

\r\n\r\n
\r\n$ xmlstarlet select -t --value-of \'/xml/sol/planet\' planets.xml\r\n\r\n        Mercury\r\n        0.11\r\n\r\n        Venus\r\n        0.7\r\n\r\n        Terra\r\n        0.39\r\n
\r\n\r\n

Get the third instance of the planet node

\r\n\r\n
\r\n$ xmlstarlet select -t --value-of \'/xml/sol/planet[3]\' planets.xml\r\nTerra\r\n0.39\r\n
\r\n\r\n

Get only the planets with an albedo greater than 0.25

\r\n\r\n
\r\n$ xmlstarlet select -t --value-of \'/xml/sol/planet[albedo > 0.25]\' planets.xml\r\n\r\nVenus\r\n0.7\r\n\r\nTerra\r\n0.39\r\n
\r\n\r\n

Get only the planets closer to Sol than the third planet

\r\n\r\n
\r\n$ xmlstarlet select -t --value-of \'/xml/sol/planet[position() < 3]\' planets.xml\r\n\r\nMercury\r\n0.11\r\n\r\nVenus\r\n0.7\r\n
\r\n\r\n

Learn more XPath functions at Mozilla Developer Network.

\r\n\r\n

Download xmlstarlet from xmlstar.sourceforge.net (https://sourceforge.net/projects/xmlstar/).\r\n

\r\n',78,0,0,'CC-BY-SA','xml,data,markup,markdown',0,0,1), -(3441,'2021-10-11','Murphy Work Bench',842,'Operator talks about hitting his head on his work bench','\r\n\r\n\r\n

\"https://hackerpublicradio.org/eps/hpr3441/WorkBench.gif\"

\r\n',36,0,1,'CC-BY-SA','DIY,wood working,hacking',0,0,1), diff --git a/sql/hpr-db-part-14.sql b/sql/hpr-db-part-14.sql index 56849c0..d9af76a 100644 --- a/sql/hpr-db-part-14.sql +++ b/sql/hpr-db-part-14.sql @@ -1,3 +1,11 @@ +(3386,'2021-07-26','What\'s for dinner?',1342,'Some scripts and a database for randomly choosing which meal to cook','

Overview

\r\n

I live on my own, but I cook for members of my family from time to time. Each week we all get together and cook dinner for Wednesday and Thursday. I usually do the cooking but we are starting to share these duties for certain meals.

\r\n

In 2019 I thought it would be useful if I had some sort of random chooser to decide what next week’s meal was going to be. I wrote a Bash script called choose_meal, using a simple CSV file of meal names and the date last eaten to avoid choosing the same one too often. The shortcomings of this approach soon became apparent!

\r\n

It wasn’t long before choose_meal was rewritten in Perl. This time I decided to use a database, and chose SQLite to create it. My database contained just two tables, one for the meals themselves (called slightly confusingly \'meal_history\'), and another for a record of the choices made (called \'meal_log\') – the ability to produce historical reports seemed like a desirable feature!

\r\n

In 2019 the design of this system was very specific to our needs: one choice per week on a Wednesday. It was not something that could be used by anyone else – which seemed like a bad idea.

\r\n

In late 2020 and early 2021 the system was redesigned, as will be discussed in the detailed notes. In May 2021 a more general design was added to the public GitLab repository and the preparation of this show was begun.

\r\n

I had never intended this system to hold recipes. This was partly because I have built a collection of recipes I have constructed from various sources and amended as I have made them. I print these and keep them in a ring-binder for reference as I cook. In some cases the meals described in the database are multi-component ones (such as the dishes that make up a curry for example), so it doesn’t seem appropriate to hold these here.

\r\n

I might rethink this in the future however.

\r\n

Long notes

\r\n

Follow this link to read the detailed notes associated with this episode.

\r\n

Links

\r\n',225,0,1,'CC-BY-SA','Perl,SQLite3,database,food',0,0,1), +(3387,'2021-07-27','Infosec Podcasts Part 5 Grab bag',483,'Presenting my favorite podcasts related to various aspects of information security','

Inoffensive in every region of the world.

\r\n

Thank you to everyone who has listened to my previous episodes. I hope I am not boring you all to death!

\r\n

Why am I recording this series?

\r\n\r\n

Because there are so many podcasts to list, I have broken them down into 6 different episodes based on topics:

\r\n\r\n

Part 5

\r\n

Hacks & Attacks

\r\n\r\n

Technical information / learning

\r\n\r\n

Community / Social / History

\r\n\r\n

I hope that this series has helped introduce you to some new and interesting listening options. Give some of them a try, and I would love to get your feedback in the episode comments on the HPR website.

\r\n

The next and final episode of this series will be about Information Security Leadership podcasts.

\r\n

Thank you for listening.

',394,75,1,'CC-BY-SA','infosec, podcasts, security',0,0,1), +(3399,'2021-08-12','Linux Inlaws S01E36: Open Source Licenses',3361,'The ultimate show on open source licenses or how to fall asleep without chemicals','

\r\n In this episode Chris is trying hard to get Martin to sleep by elaborating on the\r\n subject of free and open source software licenses but fails miserably. Listen to a\r\n more than riveting episode on the ins and outs of licensing FLOSS code bases in addition\r\n to banter about Brexit, plans for a reshaping of Europe after the invasion of England\r\n and Wales, Northern Ireland and Scotland leave the UK.\r\n

\r\n\r\n

Links:

\r\n\r\n',384,111,1,'CC-BY-SA','Licensing, GNU, BSD, MIT, Taking Lives, MI6, Clarkson\'s Farm, Open Source Initiative',0,0,1), +(3696,'2022-10-03','HPR Community News for September 2022',3283,'HPR Volunteers talk about shows released and comments posted in September 2022','\n\n

New hosts

\n

\nThere were no new hosts this month.\n

\n\n

Last Month\'s Shows

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
IdDayDateTitleHost
3674Thu2022-09-01Emergency Show posted in 2012. MUDKlaatu
3675Fri2022-09-02Plan 9: An exercise in futilitybinrc
3676Mon2022-09-05HPR Community News for August 2022HPR Volunteers
3677Tue2022-09-06Hacker Public Radio 2021 - 2022 New Years Show Part 4Honkeymagoo
3678Wed2022-09-07\"Stupid Users\" ... no, not those users, the other \"stupid users\"Lurking Prion
3679Thu2022-09-08Linux Inlaws S01E64: Non-profits in the US: A closer look at 501(c)smonochromec
3680Fri2022-09-09EDITAhuka
3681Mon2022-09-12Rust 101 Episode 3: Functionally InsaneBlacKernel
3682Tue2022-09-13Hacker Public Radio 2021 - 2022 New Years Show Part 5Honkeymagoo
3683Wed2022-09-14Add a favourite to OSMAndKen Fallon
3684Thu2022-09-15Wake on LanJWP
3685Fri2022-09-16Budget and an Android appArcher72
3686Mon2022-09-19 Followup for HPR3675: Clarifications on the path traversal bugbinrc
3687Tue2022-09-20Hacker Public Radio 2021 - 2022 New Years Show Part 6Honkeymagoo
3688Wed2022-09-21Education, Certifications, and sipping on the SocialsLurking Prion
3689Thu2022-09-22Linux Inlaws S01E65: TerminusDBmonochromec
3690Fri2022-09-23Planning the TripAhuka
3691Mon2022-09-26Starship.rs the best prompt I don\'t useKlaatu
3692Tue2022-09-27What is a real hacker?Lurking Prion
3693Wed2022-09-28Fixing the automatic cutoff mechanism to an electric mowerRho`n
3694Thu2022-09-29Robo Tripping Ravelords of the ApocalypseMechatroniac
3695Fri2022-09-30How I watch youtube with newsboatbinrc
\n\n

Comments this month

\n\n

These are comments which have been made during the past month, either to shows released during the month or to past shows.\nThere are 39 comments in total.

\n

Past shows

\n

There are 8 comments on\n8 previous shows:

\n\n

This month\'s shows

\n

There are 31 comments on 9 of this month\'s shows:

\n\n\n

Mailing List discussions

\n

\nPolicy decisions surrounding HPR are taken by the community as a whole. This\ndiscussion takes place on the Mail List which is open to all HPR listeners and\ncontributors. The discussions are open and available on the HPR server under\nMailman.\n

\n

The threaded discussions this month can be found here:

\nhttps://hackerpublicradio.org/pipermail/hpr_hackerpublicradio.org/2022-September/thread.html\n\n\n

Events Calendar

\n

With the kind permission of LWN.net we are linking to\nThe LWN.net Community Calendar.

\n

Quoting the site:

\n
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.
\n\n

Any other business

\n

FOSDEM 2023

\n

FOSDEM 2023 will take place in Brussels, Belgium at the Université Libre de Bruxelles (or ULB) next February on the weekend of the 4th and 5th.

\n

HPR had a stand at the last in-person event, representing Free Culture Podcasts. There is a call for proposals out at the moment for those wishing to run a stand for the forthcoming event.

\n

Older HPR shows on archive.org, phase 2

\n

Now that all shows from number 1 to the latest have been uploaded to the Internet Archive there are other tasks to perform. We are reprocessing and re-uploading shows in the range 871 to 2429 as explained in the Community News show notes released in May 2022. We are keeping a running total here to show progress:

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\nMonth\n\nMonth count\n\nRunning total\n\nRemainder\n
\n2022-04\n\n130\n\n130\n\n1428\n
\n2022-05\n\n140\n\n270\n\n1288\n
\n2022-06\n\n150\n\n420\n\n1138\n
\n2022-07\n\n155\n\n575\n\n983\n
\n2022-08\n\n155\n\n730\n\n828\n
\n2022-09\n\n150\n\n880\n\n678\n
\n\n

Updated: 2022-10-02 11:47:18

\n\n',159,47,1,'CC-BY-SA','Community News',0,0,1), +(3392,'2021-08-03','Structured error reporting',1714,'Tuula talks about how she improved build times by breaking down error reporting to smaller parts','

Initial state

\r\n

When I originally wanted a unified error reporting on the server-side, I made one huge type that enumerated all the possible error cases that could be reported:

\r\n
-- | Error codes for all errors returned by API\r\ndata ErrorCode\r\n    -- common error codes\r\n    = ResourceNotFound\r\n    | InsufficientRights\r\n    | FailedToParseDataInDatabase\r\n    -- errors specific to news\r\n    | SpecialEventHasAlreadyBeenResolved\r\n    | UnsupportedArticleType\r\n    | SpecialNewsExtractionFailed\r\n    | TriedToMakeChoiceForRegularArticle\r\n    -- errors specific to simulation state\r\n    | SimulationStatusNotFound\r\n    | DeltaTIsTooBig\r\n    | TurnProcessingAndStateChangeDisallowed\r\n    | SimulationNotOpenForCommands\r\n    | SimulationNotOpenForBrowsing\r\n    -- errors specific to people\r\n    | StatIsTooLow Text\r\n    | CouldNotConfirmDateOfBirth\r\n    | DateOfBirthIsInFuture\r\n    | FirstNameIsEmpty\r\n    | FamilyNameIsEmpty\r\n    | CognomenIsEmpty\r\n    | RegnalNumberIsLessThanZero\r\n    -- errors specific to new person creation\r\n    | AgeBracketStartIsGreaterThanEnd\r\n    | PersonCreationFailed\r\n    deriving (Show, Read, Eq)\r\n
\r\n

Then I had some helper functions to turn any value of that type into a nice error message:

\r\n
errorCodeToStatusCode :: ErrorCode -> Int\r\nstatusCodeToText :: Int -> ByteString\r\nerrorCodeToText :: ErrorCode -> Text\r\nraiseIfErrors :: [ErrorCode] -> HandlerFor App ()\r\n
\r\n

errorCodeToStatusCode was responsible for turning ErrorCode into http status code. For example StatIsTooLow \"intrigue\" would be 400. statusCodeToText would take this code and turn it into short error message given in http response. 400 would be Bad Request. errorCodeToText would give a bit more verbose explanation of what happened, StatIsTooLow \"intrigue\" would be mapped to \"Stat intrigue is too low\". Finally raiseIfErrors would take a list of ErrorCode and use these helper functions to turn them into a http response with correct status code, error message and json body detailing all errors that had happened:

\r\n
[\r\n    { code:\r\n        { tag: "StatIsTooLow"\r\n        , contents: "intrique"\r\n        }\r\n    , error: "Stat intrigue is too low"\r\n    }\r\n]\r\n
\r\n

There’s two tags: code, which contains machine readable details about the error and error, which contains error message that can be shown to user.

\r\n

While this worked fine, there was some problems with it. ErrorCode type was growing larger and larger and the module it was defined in was referred all over the codebase. Every time I added a new error message, all the modules that used error reporting had to be compiled and it was getting slow.

\r\n

Solution

\r\n

Breaking up the ErrorCode to smaller types and moving them to different modules would means less modules were going to built when I added a new error code. The problem was that raiseIfErrors :: [ErrorCode] -> HandlerFor App () wanted a list of ErrorCode and elements in a list have to be of same type.

\r\n

I started by splitting ErrorCode to smaller types. Each of the smaller error types have automatically derived toJSON and fromJSON functions for serializing them to and from JSON:

\r\n
data PersonCreationError =\r\n    StatIsTooLow Text\r\n    | CouldNotConfirmDateOfBirth\r\n    | DateOfBirthIsInFuture\r\n    | FirstNameIsEmpty\r\n    | FamilyNameIsEmpty\r\n    | CognomenIsEmpty\r\n    | RegnalNumberIsLessThanZero\r\n    deriving (Show, Read, Eq)\r\n\r\n$(deriveJSON defaultOptions ''PersonCreationError)\r\n
\r\n

That $(deriveJSON defaultOptions \'\'PersonCreationError) is template haskell call. Basically it invokes a deriveJSON function with PersonCreationError as parameter and compiles and splices the resulting code here. This is fast and easy way of generating ToJSON and FromJSON instances and avoiding having to write them by hand. It is very similar to how Lisp macros work.

\r\n

Then I defined a type class, that has functions for getting a http status code and a error message that can be shown to user. statusCodeToText I could use as is, without any modifications:

\r\n
class ErrorCodeClass a where\r\n    httpStatusCode :: a -> Int\r\n    description :: a -> Text\r\n
\r\n

I have to have instance of ErrorCodeClass defined for each and every smaller error type. Here’s an excerpt of PersonCreationError showing how it would look like:

\r\n
instance ErrorCodeClass PersonCreationError where\r\n    httpStatusCode = \\case\r\n        StatIsTooLow _ -> 400\r\n        CouldNotConfirmDateOfBirth -> 500\r\n...\r\n\r\n    description = \\case\r\n        StatIsTooLow s ->\r\n            "Stat " ++ s ++ " is too low"\r\n...\r\n
\r\n

A little note: description = \\case relies on lambda case extension. It is just a slightly different way of writing:

\r\n
    description d =\r\n        case d of\r\n
\r\n

This allows me to turn values of these smaller error types into error messages that could be sent to the user.

\r\n

The second part of the solution is to figure out a way to put values of these smaller error types into same list. If a list is of type [PersonCreationError], it can’t contain values of CommonError and vice versa. Creating a wrapper like:

\r\n
data ECode a = ECode a\r\n
\r\n

doesn’t work, because then I would have elements of type ECode PersonCreationError and ECode CommonError, which are of different type. What I need, is a way to wrap all these different types into a wrapper that loses the type of wrapped value. Another problem is that I need to place constraints on what kind of values can be wrapped. I need them to have instances for ErrorCodeClass (for getting error information) and ToJSON (for serializing them into JSON). There’s several ways of doing this, but I chose to use generalized algebraic data types (GADTs for short):

\r\n
{-# LANGUAGE GADTs #-}\r\n\r\ndata ECode where\r\n    ECode :: (ErrorCodeClass a, ToJSON a) => a -> ECode\r\n
\r\n

Now type ECode has one value constructor, also named to ECode, which takes one parameter a. a can be anything, as long as there’s ErrorCodeClass and ToJSON instances defined for it. Calling this constructor will return ECode. If you compare this with the previous definition of ECode, you’ll notice two major differences:

\r\n\r\n

The second part means that I can wrap different types into ECode and place them into a same list without problems. Type of that list is simply [ECode].

\r\n

But having a list of error codes wrapped in ECode isn’t going to do much to us. We need to be able to turn them into http status code, text and list of error messages. Luckily we have a type class just for that:

\r\n
instance ErrorCodeClass ECode where\r\n    httpStatusCode (ECode a) =\r\n        httpStatusCode a\r\n\r\n    description (ECode a) =\r\n        description a\r\n
\r\n

httpStatusCode of ECode is httpStatusCode of the value ECode wraps. Similarly description of ECode is description of the wrapped value.

\r\n

For turning ECode into JSON, I opted for hand written instance:

\r\n
instance ToJSON ECode where\r\n    toJSON (ECode a) =\r\n        object [ "HttpCode" .= httpStatusCode a\r\n               , "FaultCode" .= toJSON a\r\n               , "ErrorDescription" .= description a\r\n               ]\r\n
\r\n

This gives me complete control over how I want to report errors to the client.

\r\n

Final piece of the puzzle is raiseIfErrors function:

\r\n
raiseIfErrors :: [ECode] -> HandlerFor App ()\r\nraiseIfErrors errors = do\r\n    when (not $ null errors) $ do\r\n        let code = fromMaybe 500 $ errors ^? ix 0 . to httpStatusCode\r\n        let msg = statusCodeToText code\r\n        sendStatusJSON (Status code msg) $ toJSON errors\r\n
\r\n

If there are any elements in the passed in list, grab the http status code and text from the first element of the list. I was considering writing some sort of logic to deduce which error code to return in case there are more than one type in the list, but decided against it. There doesn’t seem to be any easy way to decide between HTTP 400 Bad Request and HTTP 500 Internal Server Error. So I just return the first one. Body of the response contains list of errors codes:

\r\n
[\r\n    { HttpCode: 400\r\n    , FaultCode: {\r\n        Tag: "StatIsTooLow"\r\n        , Contents: "intrique"\r\n        }\r\n    , ErrorDescription: "Stat intrigue is too low"\r\n    }\r\n]\r\n
\r\n

Since manually wrapping things in ECode gets tedious after a while, I defined function for each type of error that does that for me:

\r\n
statIsTooLow :: Text -> ECode\r\nstatIsTooLow s = ECode $ StatIsTooLow s\r\n
\r\n

Now, instead of writing ECode $ StatIsTooLow \"intrigue\", I can write statIsTooLow \"intrigue\". And if I ever decide to change internals of errors again, I can change how these functions are defined and hopefully don’t have to change each and every place where they’re being used.

\r\n

Different solution

\r\n

Another way to tackle this problem is to use records instead of algebraic data types:

\r\n
data ECode = ECode\r\n    { httpCode :: Int\r\n    , description :: Text\r\n    }\r\n\r\nstatIsTooLow :: Text -> ECode\r\nstatIsTooLow s =\r\n    ECode\r\n    { httpCode = 400\r\n    , description = "Stat " ++ s ++ " is too low"\r\n    }\r\n
\r\n',364,107,1,'CC-BY-SA','haskell, error reporting',0,0,1), +(3393,'2021-08-04','We need to talk about XML',1885,'An extensible markup language? This is too good to be true!','

Klaatu introduces XML.

\r\n\r\n

\r\nThe sample XML document discussed in this episode is:\r\n

\r\n\r\n
\r\n\r\n<xml>\r\n  <sol>\r\n    <planet>\r\n      <name>\r\n        Mercury\r\n      </name>\r\n      <albedo>\r\n        0.11\r\n      </albedo>\r\n    </planet>\r\n    <planet>\r\n      <name>\r\n        Venus\r\n      </name>\r\n      <albedo>\r\n        0.7\r\n      </albedo>\r\n    </planet>\r\n    <planet>\r\n      <name>\r\n        Terra\r\n      </name>\r\n      <albedo>\r\n        0.39\r\n      </albedo>\r\n    </planet>\r\n  </sol>\r\n</xml>\r\n\r\n
\r\n',78,0,0,'CC-BY-SA','xml,data,markup,markdown',0,0,1), +(3394,'2021-08-05','Be an XML star with xmlstarlet',1591,'Parse XML from the terminal','

See the layout of an XML document

\r\n\r\n
\r\n$ xmlstarlet elements planets.xml\r\nxml\r\nxml/sol\r\nxml/sol/planet\r\nxml/sol/planet/name\r\nxml/sol/planet/albedo\r\nxml/sol/planet\r\nxml/sol/planet/name\r\nxml/sol/planet/albedo\r\nxml/sol/planet\r\nxml/sol/planet/name\r\nxml/sol/planet/albedo\r\n\r\n
\r\n\r\n

See content of the planet node

\r\n\r\n
\r\n$ xmlstarlet select -t --value-of \'/xml/sol/planet\' planets.xml\r\n\r\n        Mercury\r\n        0.11\r\n\r\n        Venus\r\n        0.7\r\n\r\n        Terra\r\n        0.39\r\n
\r\n\r\n

Get the third instance of the planet node

\r\n\r\n
\r\n$ xmlstarlet select -t --value-of \'/xml/sol/planet[3]\' planets.xml\r\nTerra\r\n0.39\r\n
\r\n\r\n

Get only the planets with an albedo greater than 0.25

\r\n\r\n
\r\n$ xmlstarlet select -t --value-of \'/xml/sol/planet[albedo > 0.25]\' planets.xml\r\n\r\nVenus\r\n0.7\r\n\r\nTerra\r\n0.39\r\n
\r\n\r\n

Get only the planets closer to Sol than the third planet

\r\n\r\n
\r\n$ xmlstarlet select -t --value-of \'/xml/sol/planet[position() < 3]\' planets.xml\r\n\r\nMercury\r\n0.11\r\n\r\nVenus\r\n0.7\r\n
\r\n\r\n

Learn more XPath functions at Mozilla Developer Network.

\r\n\r\n

Download xmlstarlet from xmlstar.sourceforge.net (https://sourceforge.net/projects/xmlstar/).\r\n

\r\n',78,0,0,'CC-BY-SA','xml,data,markup,markdown',0,0,1), +(3441,'2021-10-11','Murphy Work Bench',842,'Operator talks about hitting his head on his work bench','\r\n\r\n\r\n

\"https://hackerpublicradio.org/eps/hpr3441/WorkBench.gif\"

\r\n',36,0,1,'CC-BY-SA','DIY,wood working,hacking',0,0,1), (3396,'2021-08-09','Card roles in Magic the Gathering',2367,'There are over 25,000 cards in MTG. You only need 60 to play.','

Cutting to the chase:

\r\n

When getting into Magic the Gathering, it's easy to get overwhelmed and confused by choice. Instead of thinking about cards, I've learnt to think about the game mechanic roles that a deck needs to have satisfied, and then I look for cards that fill those roles.\r\n

\r\n\r\n

My list is by no means definitive, but I think these are the basic universal roles you need, regardless of how you play:

\r\n\r\n\r\n\r\n

There are other card types that can be useful, but they may be best for specific strategies. The ones I list here are, I believe, pretty universal.\r\n

\r\n\r\n

You can find lists of cards that fill specific roles with a simple Internet search. For instance, if you realize you have no cards that let you replenish your hand, you might search for "best cards to draw cards MTG" and get directed to a site like TappedOut.net or magic.wizards.com.

\r\n\r\n

Go to your local game store or an online vendor to buy just the cards you need. Because there are so many to choose from in any given category, you get to control the price. I have a rule for myself that do not spend over $2 on any single card.\r\n

\r\n\r\n

When trying to fill roles, I generally aim to get 4 cards that do the thing I need. Sometimes I get exactly the same card 4 times, other times I get a variety of cards to fill the role. Either way, 4 usually feels like a good draw frequency for each role.

\r\n\r\n',78,0,0,'CC-BY-SA','magic, mtg, card, tcg',0,0,1), (3401,'2021-08-16','Mana hacks',1924,'Klaatu muses about mana ramping in Magic the Gathering','

The categories of mana ramps I have defined for myself are:

\r\n\r\n',78,95,0,'CC-BY-SA','magic, mtg, card, tcg, mana',0,0,1), (3397,'2021-08-10','What is a PineTime',595,'In this podcast I talk a little bit about the pinetime.','

\r\nThis is the first impression of a PineTime watch that I bought about a week ago and have already done some changes to the underlying code. I think this is an interesting project and open source so you can contribute.\r\n

\r\n

\r\nGithub repository:\r\nhttps://github.com/JF002/InfiniTime\r\n

\r\n

\r\nSales page:\r\nhttps://www.pine64.org/pinetime/\r\n

',382,0,0,'CC-BY-SA','open source, watch, coding',0,0,1), @@ -305,7 +313,7 @@ INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hosti (3712,'2022-10-25','The last ever CCHits.net Show',5756,'The team talk about the nearly 12 years of producing CCHits.net.','

Over 12 years ago, Jon \"The Nice Guy\"\nSpriggs went to a \"Pod Crawl\" with (among others) Dave \"The Love Bug\" Lee, where he\npitched the idea of a daily music promotion show, with a twist - it\nwould all be automated, and use text-to-speech to introduce\neverything.

\n

The first show was released\non 2010-10-24 and the last ever show (this one) was released on\n2022-10-12.

\n

Over the twelve years, Jon would go on to meet to meet Yannick and Ken Fallon, both\nof whom would go on to shape changes (big and small) to CCHits.

\n

This year, the cracks started to re-appear in the architecture\nunderneath CCHits - between APIs shutting down that were used to load\ntracks to CCHits, and the general framework being used to write CCHits\nnot receiving the care and attention it needed... and the team finally\ndecided to stop adding new tracks, and let the process build the last\nfew shows.

\n

This podcast gives you a peek behind the curtain to the team involved\nin the system, and gives you some of the high- and low-lights in the 12\nyears the site ran for.

\n',413,0,0,'CC-BY','music,creative commons,podcast',0,0,1), (3724,'2022-11-10','My top Android apps',579,'I walk through the top apps on my phone','

My most used apps

\n

AIO Launcher

\n\n

\"Main

\n

\n

\n

Termux: Terminal\nemulator with packages

\n\n

QKSMS Messaging

\n\n

Firefox browser

\n\n

Opera browser

\n\n

Brave browser

\n\n

Clear Scanner PDF scanner and\nOCR

\n\n

Antennapod

\n\n

Tusky

\n\n

K-9 mail client

\n\n

Viber

\n\n

Audio recorder

\n\n

X-plore dual-pane file\nmanager

\n\n

Librera E-book Reader: for\nPDF, EPUB

\n\n

Multi Timer

\n\n

US Amateur Radio Band Plan

\n\n',318,0,0,'CC-BY-SA','Android, Android apps, Mobile phone, Custom launcher',0,0,1), (3725,'2022-11-11','How to use OSMAnd with Public Transport ',124,'Ken shows you how to use this mapping tool to display transit routes in your area.','

\r\n\"\"
\r\nMap of Dublin showing the Temple Bar tourist area. A red arrow points to where you can change the profile.\r\n

\r\n

\r\n\"\"
\r\nWith the Configure Map > Profile selection menu open, a red square surrounds the Bus icon to indicate the \"public transport\" profile is now selected.\r\n

\r\n

\r\n\"\"
\r\nThe map now opens to show more information about public transport is now displayed on the map. This is highlighted with a red square.
\r\nClicking the bustop (highlighted with a red circle ) will show more information about the routes available at this location.\r\n

\r\n

\r\n\"\"
\r\nOnce the transport stop is selected, a list of all the routes that service this location are displayed. Along with other routes that are available within a short distance.\r\n

\r\n

\r\n\"\"
\r\nClicking any of the routes numbers/names will give a zoomed out map showing in red the route many of the stops towards it\'s source and destination.\r\n

\r\n',30,0,0,'CC-BY-SA','OSMAnd, OSM, Maps, Public Transport',0,0,1), -(4001,'2023-12-04','HPR Community News for November 2023',0,'HPR Volunteers talk about shows released and comments posted in November 2023','\n\n

New hosts

\n

\nThere were no new hosts this month.\n

\n\n

Last Month\'s Shows

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
IdDayDateTitleHost
3978Wed2023-11-01Driving in Virginia.Some Guy On The Internet
3979Thu2023-11-02FireStick and ad blockingoperat0r
3980Fri2023-11-03Huntsville to VicksburgAhuka
3981Mon2023-11-06HPR Community News for October 2023HPR Volunteers
3982Tue2023-11-07Conversation with ChatGPTArcher72
3983Wed2023-11-08ChatGPT Output is not compatible with CC-BY-SAKen Fallon
3984Thu2023-11-09Whoppers. How Archer72 and I made moonshine. Volume one.Some Guy On The Internet
3985Fri2023-11-10Bash snippet - be careful when feeding data to loopsDave Morriss
3986Mon2023-11-13Optical media is not deadArcher72
3987Tue2023-11-14The Grim DawnSome Guy On The Internet
3988Wed2023-11-15Beeper.comoperat0r
3989Thu2023-11-16LastPass Security Update 1 November 2023Ahuka
3990Fri2023-11-17Playing Alpha Centauri, Part 2Ahuka
3991Mon2023-11-20YOU ARE A PIRATE operat0r
3992Tue2023-11-21Test recording on a wireless micArcher72
3993Wed2023-11-22z80 membership cardBrian in Ohio
3994Thu2023-11-23Lastpass Responseoperat0r
3995Fri2023-11-24Creating Your Own Internet Radio Streaming DeviceClaudio Miranda
3996Mon2023-11-27Holiday Challenges Series - Ep 1 - Advent of CodeTrey
3997Tue2023-11-28The Oh No! News.Some Guy On The Internet
3999Thu2023-11-30Holiday Challenges Series Ep 02 TryHackMe Advent of Cyber ChallengeTrey
\n\n

Comments this month

\n\n

These are comments which have been made during the past month, either to shows released during the month or to past shows.\nThere are 5 comments in total.

\n\n

This month\'s shows

\n

There are 5 comments on 5 of this month\'s shows:

\n\n\n

Mailing List discussions

\n

\nPolicy decisions surrounding HPR are taken by the community as a whole. This\ndiscussion takes place on the Mail List which is open to all HPR listeners and\ncontributors. The discussions are open and available on the HPR server under\nMailman.\n

\n

The threaded discussions this month can be found here:

\nhttps://lists.hackerpublicradio.com/pipermail/hpr/2023-November/thread.html\n\n\n

Events Calendar

\n

With the kind permission of LWN.net we are linking to\nThe LWN.net Community Calendar.

\n

Quoting the site:

\n
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.
\n\n

Any other business

\n

Example section

\n\n\n\n',159,47,1,'CC-BY-SA','Community News',0,0,1), +(4001,'2023-12-04','HPR Community News for November 2023',0,'HPR Volunteers talk about shows released and comments posted in November 2023','\n\n

New hosts

\n

\nThere were no new hosts this month.\n

\n\n

Last Month\'s Shows

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
IdDayDateTitleHost
3978Wed2023-11-01Driving in Virginia.Some Guy On The Internet
3979Thu2023-11-02FireStick and ad blockingoperat0r
3980Fri2023-11-03Huntsville to VicksburgAhuka
3981Mon2023-11-06HPR Community News for October 2023HPR Volunteers
3982Tue2023-11-07Conversation with ChatGPTArcher72
3983Wed2023-11-08ChatGPT Output is not compatible with CC-BY-SAKen Fallon
3984Thu2023-11-09Whoppers. How Archer72 and I made moonshine. Volume one.Some Guy On The Internet
3985Fri2023-11-10Bash snippet - be careful when feeding data to loopsDave Morriss
3986Mon2023-11-13Optical media is not deadArcher72
3987Tue2023-11-14The Grim DawnSome Guy On The Internet
3988Wed2023-11-15Beeper.comoperat0r
3989Thu2023-11-16LastPass Security Update 1 November 2023Ahuka
3990Fri2023-11-17Playing Alpha Centauri, Part 2Ahuka
3991Mon2023-11-20YOU ARE A PIRATE operat0r
3992Tue2023-11-21Test recording on a wireless micArcher72
3993Wed2023-11-22z80 membership cardBrian in Ohio
3994Thu2023-11-23Lastpass Responseoperat0r
3995Fri2023-11-24Creating Your Own Internet Radio Streaming DeviceClaudio Miranda
3996Mon2023-11-27Holiday Challenges Series - Ep 1 - Advent of CodeTrey
3997Tue2023-11-28The Oh No! News.Some Guy On The Internet
3998Wed2023-11-29Using open source OCR to digitize my mom\'s bookDeltaray
3999Thu2023-11-30Holiday Challenges Series Ep 02 TryHackMe Advent of Cyber ChallengeTrey
\n\n

Comments this month

\n\n

These are comments which have been made during the past month, either to shows released during the month or to past shows.\nThere are 6 comments in total.

\n\n

This month\'s shows

\n

There are 6 comments on 6 of this month\'s shows:

\n\n\n

Mailing List discussions

\n

\nPolicy decisions surrounding HPR are taken by the community as a whole. This\ndiscussion takes place on the Mail List which is open to all HPR listeners and\ncontributors. The discussions are open and available on the HPR server under\nMailman.\n

\n

The threaded discussions this month can be found here:

\nhttps://lists.hackerpublicradio.com/pipermail/hpr/2023-November/thread.html\n\n\n

Events Calendar

\n

With the kind permission of LWN.net we are linking to\nThe LWN.net Community Calendar.

\n

Quoting the site:

\n
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.
\n\n

Any other business

\n

Example section

\n\n\n\n',159,47,1,'CC-BY-SA','Community News',0,0,1), (3714,'2022-10-27','The News with Some Guy On the Internet',609,'Threat Analysis','

Threat Analysis; your\nattack surface.

\n

The Hacker News

\nNew\nChinese Malware Attack Framework Targets Windows, macOS, and Linux\nSystems.\n

A previously undocumented command-and-control (C2) framework dubbed\nAlchimist is likely being used in the wild to target Windows, macOS, and\nLinux systems.

\n

\"Alchimist C2 has a web interface written in Simplified Chinese and\ncan generate a configured payload, establish remote sessions, deploy\npayloads to the remote machines, capture screenshots, perform remote\nshellcode execution, and run arbitrary commands,\" Cisco Talos said in a\nreport shared with The Hacker News. Written in GoLang, Alchimist is\ncomplemented by a beacon implant called Insekt, which comes with remote\naccess features that can be instrumented by the C2 server.”

\n

\"Since Alchimist is a single-file based ready-to-go C2 framework, it\nis difficult to attribute its use to a single actor such as the authors,\nAPTs, or crimeware syndicates.\"

\n

The trojan, for its part, is equipped with features typically present\nin backdoors of this kind, enabling the malware to get system\ninformation, capture screenshots, run arbitrary commands, and download\nremote files, among others.

\n

Alchimist C2 panel further features the ability to generate first\nstage payloads, including PowerShell and wget code snippets for Windows\nand Linux, potentially allowing an attacker to flesh out their infection\nchains to distribute the Insekt RAT binary. The instructions could then\nbe potentially embedded in a maldoc attached to a phishing email that,\nwhen opened, downloads and launches the backdoor on the compromised\nmachine. What\'s more, the Linux version of Insekt is capable of listing\nthe contents of the \".ssh\" directory and even adding new SSH keys to the\n\"~/.ssh/authorized_keys\" file to facilitate remote access over SSH.

\n

The Hacker News

\nHackers\nUsing Vishing to Trick Victims into Installing Android Banking\nMalware.\n

Malicious actors are resorting to voice phishing (vishing) tactics to\ndupe victims into installing Android malware on their devices.

\n

The Dutch mobile security company said it identified a network of\nphishing websites targeting Italian online-banking users that are\ndesigned to get hold of their contact details.

\n

Telephone-oriented attack delivery (TOAD), as the social engineering\ntechnique is called, involves calling the victims using previously\ncollected information from the fraudulent websites.

\n

The caller, who purports to be a support agent for the bank,\ninstructs the individual on the other end of the call to install a\nsecurity app and grant it extensive permissions, when, in reality, it\'s\nmalicious software intended to gain remote access or conduct financial\nfraud.

\n

What\'s more, the infrastructure utilized by the threat actor has been\nfound to deliver a second malware named SMS Spy that enables the\nadversary to gain access to all incoming SMS messages and intercept\none-time passwords (OTPs) sent by banks.

\n

The new wave of hybrid fraud attacks presents a new dimension for\nscammers to mount convincing Android malware campaigns that have\notherwise relied on traditional methods such as Google Play Store\ndroppers, rogue ads, and smishing.

\n

The Hacker News

\n64,000\nAdditional Patients Impacted by Omnicell Data Breach - What is Your Data\nBreach Action Plan?\n

Founded in 1992, Omnicell is a leading provider of medication\nmanagement solutions for hospitals, long-term care facilities, and\nretail pharmacies. On May 4, 2022, Omnicell\'s IT systems and third-party\ncloud services were affected by ransomware attacks which may lead to\ndata security concerns for employees and patients. While it is still\nearly in the investigation, this appears to be a severe breach with\npotentially significant consequences for the company.

\n

Omnicell began informing individuals whose information may have been\ncompromised on August 3, 2022. Hackers may be able to access and sell\npatient-sensitive information, such as social security numbers, due to\nthe time delay between the breach and the company\'s report of affected\npatients.

\n

The type of information that may be exposed are:

\n
    \n
  • Credit card information.
  • \n
  • Financial information.
  • \n
  • Social security numbers.
  • \n
  • Driver\'s license numbers.
  • \n
  • Health insurance details.
  • \n
\n

The healthcare industry is one of the most targeted sectors globally,\nwith attacks doubling year over year. And these costs are measured in\nmillions or even billions of dollars - not to mention increased risks\nfor patients\' privacy (and reputation).

\n

The Washington Post

\n

How to\nprotect schools getting whacked by ransomware.

\n

Ransomware gangs are taking Americans to school. So far this year,\nhackers have taken hostage at least 1,735 schools in 27 districts; the\nmassive Los Angeles Unified School District is their latest target.

\n

Ransomware hackers breach computers, lock them up, steal sensitive\ndata and demand money to release their hold on organizations’ critical\nsystems. These criminals often attack schools because they are\nprofitable targets. If all ransomware victims refused to pay, the\nattacks would stop. Indeed, paying up might be illegal: The Treasury\nDepartment released guidance last year noting that giving money to\nglobal criminal organizations can violate sanctions law.

\n

The trouble is, saying no isn’t always easy. Los Angeles didn’t\ncapitulate, and the criminals leaked a trove of data — a consequence\nthat can prove more or less serious depending on the sensitivity of the\nstolen information.

\n

“Because we can,” said a representative of the ransomware gang that\ntook down Los Angeles Unified School District, explaining the\ncollective’s motivations to a Bloomberg News reporter. Schools’ task is\nto turn “can” to “can’t” — or, at least, to make success pay a whole lot\nless.

\n

CNET News.

\nVerizon\nAlerts Prepaid Customers to Recent Security Breach.\n

Verizon notified prepaid customers this week of a recent cyberattack\nthat granted third-party actors access to their accounts, as reported\nearlier Tuesday by BleepingComputer. The attack occurred between Oct. 6\nand Oct. 10 and affected 250 Verizon prepaid customers.

\n

The breach exposed the last four digits of customers\' credit cards\nused to make payments on their prepaid accounts. While no full credit\ncard information was accessible, the information was enough to grant the\nattackers access to Verizon user accounts, which hold semi-sensitive\ndata such \"name, telephone number, billing address, price plans, and\nother service-related information,\" per a notice from Verizon.

\n

Account access also potentially enabled attackers to process\nunauthorized SIM card changes on prepaid lines. Also known as SIM\nswapping, unauthorized SIM card changes can allow for the transfer of an\nunsuspecting person\'s phone number to another phone.

\n

From there, the counterfeit phone can be used to receive SMS messages\nfor password resets and user identification verifications on other\naccounts, giving attackers potential access to any account they have, or\ncan guess, the username for. Consequently, Verizon recommended affected\ncustomers secure their non-Verizon accounts such as social media,\nfinancial, email and other accounts that allow for password resets by\nphone.

\n',391,0,0,'CC-BY-SA','Threat Analysis, Security Breach, Ransomware, Data Breach, TOAD',0,0,1), (3717,'2022-11-01','Video editing with Shotcut on a low end PC',695,'In this episode I explain how I use the shotcut video editor to edit video on a low end PC.','

Links

\n

Shotcut video editor website

\n

Useful\nShortcut keys for the Shotcut video editor

\n
C = copy\nV = paste\nA = duplicate\nX = ripple delete\nCtrl + X = ripple delete but send to clipboard\nS = split
\n

Tip not covered in my\nPodcast

\n

Splits are not fixed and can be adjusted. Once you\'ve split up clips\nand put them in the right order on the timeline you can still adjust the\ncut point even though you previously split the clip because the clip is\nreferenced to the original file in the playlist.

\n

Introduction

\n

Hello and welcome Hacker Public Radio audience my name is Mr X\nwelcome to this podcast. As per usual I\'d like to start by thanking the\npeople at HPR for making this podcast possible. HPR is a Community led\npodcast provided by the community for the community that means you can\ncontribute to. The HPR team have gone to great deal of effort to\nsimplify and streamline the process of providing podcasts. There are\nmany ways to record an episode these days using phones tablets PCs and\nalike. The hardest barrier is sending in your first show. Don\'t get too\nhung up about quality, it\'s more important just to send something in.\nThe sound quality of some of my early shows wasn\'t very good. If I can\ndo it anyone can and you might just get hooked in the process.

\n

Well it\'s been almost a year since I\'ve sent in a show. Looking at\nthe HPR site my last episode was back in November 2021. I suspect like\nmany others life has become more complicated and I find I have much less\nspare time and because I have much less spare time I have much less time\nto pursue my hobbies and because of this I have less to speak about and\nbecause of this I have less time to record what I\'ve been doing and it\nall turns into to vicious circle. Fortunately I recently had some time\noff work and had a lovely holiday. During the holiday I ended up\nrecording some video which I decided I wanted to edit. I\'ve done some\nvideo editing in the past using various video editing packages. The best\nand most recent of which is shotcut.

\n

Specific details and\nequipment

\n

Video resolution 1920 x 1080, Codec h264 mpeg-4, Frame rate 30 frames\nper second.

\n

Computer Dell Optiplex 780. Fitted with 4 GB of internal RAM and\nonboard video graphics card.

\n

Shotcut version 22.06.23 Shotcut is a free open-source cross-platform\nvideo editor licenced under the GNU general public licence version\n3.0

\n

This episode will only cover basic shotcut video editing techniques.\nShotcut contains many advanced features and effects that will not be\ncovered in this episode. A lot of the workflow I’ll share with you today\nis intended to get around limitations imposed by my low spec PC

\n

I\'ll try my best to cover the video editing process in this podcast\nusing words alone; however I am conscious that an accompanying video\nwould make it easier to follow along.

\n

Shotcut workflow

\n

Start by creating a folder to hold all the required media files.\nAudio tracks and sound effects can be added to this folder later. Make\nsure all your video files are using the same frame rate in my case 30\nframes per second.

\n

Open each video file in VLC one at a time going through each video\nfile looking for the best portions of video. Make a note of where the\nbest portions of the video are by writing down the start and end points\nin minutes and seconds.

\n

I do this because the interface of VLC is more responsive than\nshortcut and the resolution of displayed video is far greater than the\npreview in shortcut. This makes it quicker and easier to find the best\nportions of video.

\n

Open shortcut and make sure the new project is set to the same frames\nper second as the media files you\'re working with, in my case 30 frames\nper second. You can check the frame rate of your project by looking at\nthe selected video mode in the new projects window. If you select\nautomatic it will ensure the project resolution and frame rate\nautomatically match that of your media files.

\n

Start by adding all the video files to the playlist, this can be done\nin a number of ways for example it can be done by clicking on the open\nfile button in the top toolbar or within the open files menu.\nAlternatively you can drag and drop files into the playlist. I find this\nto be the easiest way to add media files to a project. Once this is done\nsave your project.

\n

Drag the first file from the Playlist to the timeline making sure\nthat the start of the video starts at 0 seconds.

\n

Click on the timeline in the position where the first start point of\ninterest is needed. Use the S key to split the video at this point.\nDon\'t worry about being too accurate as this can be moved at a later\nstage.

\n

Repeat this process for the end point of interest.

\n

Repeat this again for all the other sections of start and end points\nof interest.

\n

Remove the unwanted sections of video by clicking on a section then\nhitting the delete key. This will remove the unwanted section leaving an\nempty space behind.

\n

Once all the unwanted sections are removed click on the sections of\nvideo and pull them to the left to close the gaps up. I find it useful\nto leave some space between the good sections of video as it makes it\neasier to see where splits are and makes it easier later on to rearrange\nthe order of the individual clips.

\n

Check the start and end points of the remaining sections of video to\nsee that the start and end points stop in the correct place. You can do\nthis by clicking the play button on the preview window. The video start\nand end points can be adjusted by dragging the section left or right in\nin the timeline section; this is where leaving spaces Between each\nsection of video can be handy as it allows for fine tuning.

\n

Add a new blank video track to the timeline to hold the next video.\nNote this wasn\'t required when adding the first video track but it is\nneeded for each subsequent track. A video track can be added by right\nclicking on an empty portion of the timeline and selecting add video\ntrack. Alternatively use the ctrl + I key.

\n

Drag your second video from the playlist onto the newly created blank\nvideo track in the timeline. As before make sure that the start of the\nvideo starts at 0 seconds.

\n

Before previewing any section of the second video track click the\nsmall eye shaped hide icon in the left section of the first video track\nlabelled output. This will prevent previewing both video tracks at the\nsame time.

\n

Repeat the process above of chopping the second video track into\nsections using the S key to split the video up. Remove the unwanted\nsections. Finally adjust the start and end points of the remaining\nsections.

\n

Repeat the steps above to add the remaining video files one at a time\nfrom the playlist to the timeline.

\n

When complete you end up with separate video tracks in the timeline\neach containing good sections of video.

\n

At this stage I can\'t be too specific about how to continue as there\nare a number of different options depending on your particular Project.\nYou can for example start by combining the good sections of video into\none video track by dragging them from one track to another then add if\nrequired an audio track or you can add the audio track first and then\ntry to sync things up to the audio track moving bits and pieces of video\ninto one video track remembering to hide the unwanted sections of video\nby clicking on the small hide eye icons. Don\'t do too much editing\nwithout saving the project. If you get a message about low memory save\nthe project then reopen it.

\n

To export the final video click on the export button in the toolbar.\nI pick the default option, this creates an H.264/AAC MP4 file suitable\nfor most users and purposes. You can check the frame rate is the same as\nyour original media files by clicking on the advanced tab. Click the\nexport file button and give it a file name. It may take some time to\ncreate the export file. This will be dependent on the speed of your\ncomputer and the length and resolution of your project.

\n

While Shotcut is far from perfect on my puny PC it is surprisingly\nusable and stable and is the best option I’ve found so far.

\n

Finally here are some general shotcut tips I have when doing video\nediting on a puny PC with limited ram, slow processor and built in\ngraphics card such as mine.

\n

General Tips\nwhen working with a low powered PC

\n

Close all open applications leaving only shortcut open this helps\nwith RAM usage

\n

Shortcut is surprisingly stable with a feeble PC such as mine. I\nwould still recommend saving your project regularly as it is quick and\nvery easy to do.

\n

If you get a message about running out of RAM then try not to do too\nmuch more editing before saving the project. Once saved close shotcut\nand then reopen it. The longer your project is and the higher your\nproject resolution the more RAM you will need.

\n

When you are about to export your final video save the project close\nshortcut reopen shotcut and immediately export your project as any\nprevious editing may be taking up precious ram.

\n

Be patient when clicking on the timeline to repositioned the play\nhead. Always wait for the preview window to update. This can sometimes\ntake a few seconds.

\n

When trying to sync video to audio you need to zoom in in quite a\nlong way before getting an audio preview. When doing this and moving the\nplay head you\'ll get a choppy version of the audio with this it is still\nperfectly possible to find the beat of the music allowing you to sync\nyour video to the music. If this doesn\'t seem to work for you then try\nzooming in closer.

\n

Ok that\'s about it for this podcast. Hope it wasn\'t too boring and it\nmade some sense. If you want to contact me I can be contacted at\nmrxathpr at googlemail.

\n

Thank you and goodbye.

\n',201,0,0,'CC-BY-SA','workflow, tips, video, editing, application',0,0,1), (3719,'2022-11-03','HPR News',594,'InfoSec; the language of security.','

InfoSec; the language of\nsecurity.

\n

What\nis Typosquatting and How Do Scammers Use it?

\n
    \n
  • Typosquatting, as an attack, uses modified or misspelled domain\nnames to trick users into visiting fraudulent websites; the heart of\nthis attack is domain name registration. Typosquatting is deployed by\nscammers to defraud unaware users. Attackers will attempt to: mimic\nlogin pages, redirect traffic, download malware, and extort users.
  • \n
  • Past Known Typosquatting Attacks.\n
      \n
    • Several\nMalicious Typosquatted Python Libraries Found On PyPI\nRepository
    • \n
    • Over\n700 Malicious Typosquatted Libraries Found On RubyGems\nRepository
    • \n
    • Security\nadvisory: malicious crate rustdecimal
    • \n
    • This\nWeek in Malware-Malicious Rust crate, \'colors\' Typosquats
    • \n
  • \n
  • Solutions to Typosquatting.\n
  • \n
  • DNS monitoring services.\n
      \n
    • Link to dnstwister: https://dnstwister.report/
    • \n
    • Link to whois: https://www.whois.com/whois
    • \n
  • \n
  • Password Managers.\n
      \n
    • Link to bitwarden: https://bitwarden.com/
    • \n
    • Link to keepassxc: https://keepassxc.org/
    • \n
  • \n
\n
\n

Two-factor and\nMultifactor Authentication.

\n
    \n
  • First, authentication. This is the process of verifying the\nvalidity of something; in our case, user credentials/identity. The most\ncommon way to authenticate is: USERNAME and PASSWORD.\nThis is just a single layer (single-factor authentication) and isn’t\nenough to discourage attackers.

  • \n
  • Second, 2FA (Two-factor Authentication). 2FA increases the\ndifficulty for attackers by providing users an additional layer of\nsecurity to accomplish authentication. Common 2FA methods are: TOTP/OTP\n(the One Time Password), Authenticator\nApplications (Bitwarden, KeePassXC,...), and Security Keys (Yubikey). This works similar to ATMs;\nto authenticate the user must provide both knowledge (account\nPIN) and a physical object (bank card).

  • \n
  • Last, but not least, MFA (Multifactor Authentication). Similar to\n2FA, MFA offers users security with the addition of biometrics\n(fingerprint scan, retina scan, facial recognition, and voice\nrecognition). Attackers must overcome the knowledge factor, Possession\nfactor, Inherence/Biometric factor, Time factor, and sometimes Location\nfactor.

  • \n
  • MORE helpful security information.

    \n
  • \n
  • 2FA/MFA Known Attacks.

    \n
      \n
    • Bots\nThat Steal Your 2FA Codes.
    • \n
    • hackers\nare cracking two-factor authentication
    • \n
  • \n
\n',391,0,0,'CC-BY-SA','InfoSec, Typosquatting, SFA, 2FA, MFA, Security',0,0,1), @@ -487,9 +495,9 @@ INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hosti (3895,'2023-07-07','What\'s in my backpack',514,'Stache walks through the contents of his work backpack','

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.

\n

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.

\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','In\nthis episode the HPR Audiobook Club discusses the audiobook Murder\nat Avedon Hill by P.G. Holyfield\n
\n

Non-Spoiler Thoughts

\n
\n
    \n
  • 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.
  • \n
\n

Beverage Reviews

\n
\n
    \n
  • Thaj: A delicious regular chocolate malt from the\nlocal ice cream shop \"The Comfy Cow\"
  • \n
  • x1101: Barton\'s 1795
  • \n
  • Pokey 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.
  • \n
\n

Things We Talked About

\n
\n\n

Our Next Audiobook

\n
\n

A\nPrincess of Mars by Edgar Rice Burroughs

\n

The Next Audiobook Club\nRecording

\n
\n

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.

\n

Feedback

\n
\n

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.

\n

As always; remember to visit the HPR contribution page HPR could\nreally use your help right now.

\n

Sincerely, The HPR Audiobook Club

\n

P.S. Some people really like finding mistakes. For their enjoyment,\nwe always include a few.

\n

Our Audio

\n
\n

This episode was processed using Audacity. 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).

\n

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.

\n

Next we use the \"Compressor\" effect with the following settings:

\n
Threshold: -30db\n\nNoise Floor: -50db\n\nRatio: 3:1\n\nAttack Time: 0.2sec\n\nDecay Time: 1.0 sec`
\n

\"Make-up Gain for 0db after compressing\" and \"compress based on\npeaks\" were both left un-checked.

\n

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.

\n

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.

\n

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.

\n

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.

\n

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.

\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','

The show notes

\n\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','

My original blog post on this topic: https://pquirk.com/posts/corruptvideo/

\n
    \n
  • Untruc at Github: https://github.com/anthwlock/untrunc
  • \n
  • Windows version: https://github.com/anthwlock/untrunc/releases
  • \n
  • Arch linux version: https://aur.archlinux.org/packages/untrunc-git
  • \n
\n

Make your donations to:
\nhttps://www.paypal.com/paypalme/anthwlock
\nhttps://vcg.isti.cnr.it/~ponchio/untrunc.php

\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','In\nthis episode the HPR Audiobook Club discusses the audiobooks A\nPrincess of Mars, The\nGods of Mars, and The\nWarlord of Mars by Edgar Rice Burroughs\n
\n

Non-Spoiler Thoughts

\n
\n
    \n
  • Burroughs is kind of verbose, which is symbolic of the time period\nin which it was written.
  • \n
\n

Beverage Reviews

\n
\n
    \n
  • Thaj: Tempting fate with a tall glass of the highly\ntoxic, Dihydrogen\nMonoxide
  • \n
  • x1101: Shipyard\nLittle Horror of Hops Its a very amber IPA
  • \n
  • Pokey: Yellow Tail\nChardonay 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.
  • \n
  • FiftyOneFifty: Funky Pumpkin spiced\npumpkin ale
  • \n
  • Mark: Lagunitas IPA
  • \n
\n

Things We Talked About

\n
\n
    \n
  • Chat Secure secure XMPP,\nThink of the children!!!

  • \n
  • Technology on Barsoom

  • \n
  • Deus Ex Machina much???

  • \n
  • Names in fantasy books

  • \n
\n

Our Next Audiobook

\n
\n

See\nYou At The Morgue by Lawrence Blochman

\n

The Next Audiobook Club\nRecording

\n
\n

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.

\n

Feedback

\n
\n

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.

\n

As always; remember to visit the HPR contribution page HPR could\nreally use your help right now.

\n

Sincerely, The HPR Audiobook Club

\n

P.S. Some people really like finding mistakes. For their enjoyment,\nwe always include a few.

\n

Our Audio

\n
\n

This episode was processed using Audacity. 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).

\n

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.

\n

Next we use the \"Compressor\" effect with the following settings:

\n
Threshold: -30db\n\nNoise Floor: -50db\n\nRatio: 3:1\n\nAttack Time: 0.2sec\n\nDecay Time: 1.0 sec
\n

\"Make-up Gain for 0db after compressing\" and \"compress based on\npeaks\" were both left un-checked.

\n

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.

\n

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.

\n

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.

\n

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.

\n

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.

\n

Attribution

\n
\n

Record\nScratch Creative Commons 0

\n',157,0,1,'CC-BY-SA','mars, audiobook club, fiction, scifi, audiobook',0,0,1); -INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hostid`, `series`, `explicit`, `license`, `tags`, `version`, `downloads`, `valid`) VALUES (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), +(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','

My original blog post on this topic: https://pquirk.com/posts/corruptvideo/

\n
    \n
  • Untruc at Github: https://github.com/anthwlock/untrunc
  • \n
  • Windows version: https://github.com/anthwlock/untrunc/releases
  • \n
  • Arch linux version: https://aur.archlinux.org/packages/untrunc-git
  • \n
\n

Make your donations to:
\nhttps://www.paypal.com/paypalme/anthwlock
\nhttps://vcg.isti.cnr.it/~ponchio/untrunc.php

\n',383,0,0,'CC-BY-NC-SA','video,corrupt,fix,file,linux',0,0,1); +INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hostid`, `series`, `explicit`, `license`, `tags`, `version`, `downloads`, `valid`) VALUES (3921,'2023-08-14','HPR AudioBook Club 23 - John Carter of Mars (Books 1-3)',6516,'In this episode the HPR Audiobook Club discusses the first three books of John Carter of Mars','In\nthis episode the HPR Audiobook Club discusses the audiobooks A\nPrincess of Mars, The\nGods of Mars, and The\nWarlord of Mars by Edgar Rice Burroughs\n
\n

Non-Spoiler Thoughts

\n
\n
    \n
  • Burroughs is kind of verbose, which is symbolic of the time period\nin which it was written.
  • \n
\n

Beverage Reviews

\n
\n
    \n
  • Thaj: Tempting fate with a tall glass of the highly\ntoxic, Dihydrogen\nMonoxide
  • \n
  • x1101: Shipyard\nLittle Horror of Hops Its a very amber IPA
  • \n
  • Pokey: Yellow Tail\nChardonay 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.
  • \n
  • FiftyOneFifty: Funky Pumpkin spiced\npumpkin ale
  • \n
  • Mark: Lagunitas IPA
  • \n
\n

Things We Talked About

\n
\n
    \n
  • Chat Secure secure XMPP,\nThink of the children!!!

  • \n
  • Technology on Barsoom

  • \n
  • Deus Ex Machina much???

  • \n
  • Names in fantasy books

  • \n
\n

Our Next Audiobook

\n
\n

See\nYou At The Morgue by Lawrence Blochman

\n

The Next Audiobook Club\nRecording

\n
\n

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.

\n

Feedback

\n
\n

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.

\n

As always; remember to visit the HPR contribution page HPR could\nreally use your help right now.

\n

Sincerely, The HPR Audiobook Club

\n

P.S. Some people really like finding mistakes. For their enjoyment,\nwe always include a few.

\n

Our Audio

\n
\n

This episode was processed using Audacity. 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).

\n

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.

\n

Next we use the \"Compressor\" effect with the following settings:

\n
Threshold: -30db\n\nNoise Floor: -50db\n\nRatio: 3:1\n\nAttack Time: 0.2sec\n\nDecay Time: 1.0 sec
\n

\"Make-up Gain for 0db after compressing\" and \"compress based on\npeaks\" were both left un-checked.

\n

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.

\n

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.

\n

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.

\n

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.

\n

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.

\n

Attribution

\n
\n

Record\nScratch Creative Commons 0

\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',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','

Links

\n\n\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','

I\'ve been meaning to put down my thoughts about SystemD for the HPR\ncommunity for some while, so here goes.

\n

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.

\n

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.

\n

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.

\n

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.

\n

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.

\n

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.

\n

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!

\n\n',73,99,0,'CC-BY-SA','systemd,linux',0,0,1), @@ -572,7 +580,8 @@ INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hosti (4006,'2023-12-11','Holiday Challenges Ep 3 SANS Holiday Hack Challenge & KringleCon',160,'Discussing the SANS Holiday Hack Challenge & KringleCon to help you enjoy the holiday season','Holiday\nChallenges Series - Ep 3 - SANS Holiday Hack Challenge with\nKringleCon\n

Since some of the information you are about to hear is time specific,\nI want to let you know that I am recording this near the end of November\nin 2023.

\n

If you missed the first episode, which introduces this series, you\ncan go back and listen to HPR3996

\n

The SANS Holiday Hack Challenge is an interactive online technology\nand hacking game combined with a virtual security conference, beginning\nin the second week of December. By the time this episode drops, it may\nalready be live. You can tour the North Pole conference facilities,\nmeeting people, interactive non-player characters (NPC), and maybe even\nsome villains from Holiday Hack Challenges past, as you solve problems\nand gather clues which you use to help save Christmas.

\n

Everything can be done from within the browser, and did I mention\nthere is a virtual security conference, called KringleCon? Some of the\nbiggest rock stars (and most humble and brilliant people) in\nCyberSecurity speak each year at KringleCon. Many of their talks also\nprovide clues to solving game challenges.

\n

Ed Skoudis and his team (The same people who build SANS NetWars) work\ntirelessly year after year to create the most amazing experience,\ncomplete with custom music! This has become one of my favorite holiday\ntraditions each year. You can learn more about the 2023 challenge by\nwatching Ed\'s Inside SANS Holiday Hack Challenge 2023 YouTube video at\nhttps://www.youtube.com/watch?v=X9Gmdr_CxzQ

\n

You can access this year\'s challenge by visiting sans.org/holidayhack\nor https://www.sans.org/mlp/holiday-hack-challenge-2023/

\n

There, you will learn more about all things Holiday Hack before the\ngame opens in the second week of December. If you want to play now, or\njust get a feel for it, you can access three of the previous years\'\nchallenges right now at the same site.

\n

I am not associated with SANS or the Holiday Hack Challenge in any\nway, other than to have participated for several years now, and I have\nwatched other people learn and grow by taking part in it.

\n

I hope that you have enjoyed this short series. If there are other\nonline challenges you find interesting or informative, I encourage you\nto record a show about them.

\n

Have a wonderful day.

\n',394,0,0,'CC-BY-SA','SANS, KringleCon, holiday, challenge',0,0,1), (3997,'2023-11-28','The Oh No! News.',875,'Sgoti talks about Malware distributed via Google\'s Dynamic Ads and more.','

The Oh No! news.

\n

Oh No! News is Good\nNews.

\n
    \n
  • TAGS: Oh No, News, Threat analysis, InfoSec, Google\nDynamic Search Ads
  • \n
\n
\n

Threat analysis;\nyour attack surface.

\n
    \n
  • Source: Former\nNHS secretary found guilty of illegally accessing medical\nrecords
    \n

    \n
      \n
    • A former NHS employee has been found guilty and fined for illegally\naccessing the medical records of over 150 people.
      \n
    • \n
    • Loretta Alborghetti, from Redditch, worked as a medical secretary\nwithin the Ophthalmology department at Worcestershire Acute Hospitals\nNHS Trust when she illegally accessed the records.
      \n
    • \n
  • \n
  • Supporting Source: Open\nStreet Map link to Redditch Worcestershire.
    \n

  • \n
  • Source: NetSupport\nRAT Infections on the Rise. Targeting Government and Business\nSectors
    \n

    \n
      \n
    • While NetSupport Manager started off as a legitimate remote\nadministration tool for technical assistance and support, malicious\nactors have misappropriated the tool to their own advantage, using it as\na beachhead for subsequent attacks.
      \n
    • \n
  • \n
  • Source: Beware:\nMalicious Google Ads Trick WinSCP Users into Installing\nMalware
    \n

    \n
      \n
    • The threat actors are believed to leverage Google\'s Dynamic Search\nAds (DSAs), which automatically generates ads based on a site\'s content\nto serve the malicious ads that take the victims to the infected\nsite.
      \n
    • \n
  • \n
  • Source: Trojanized\nPyCharm Software Version Delivered via Google Search Ads.
    \n

    \n
      \n
    • Victims who clicked on the ad were taken to a hacked web page with a\nlink to download the application, which turned out to install over a\ndozen different pieces of malware instead.
      \n
    • \n
  • \n
\n
\n

InfoSec; the language\nof security.

\n
    \n
  • Source: Why\nDefenders Should Embrace a Hacker Mindset
    \n
  • \n
\n
\n
    \n
  • Additional Information.\n
      \n
    • What is a \"Data\nBreach\"? 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.
      \n
    • \n
    • What is \"Malware\"?\nMalware (a portmanteau 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.
      \n
    • \n
    • What is a \"Payload\"?\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.
      \n
    • \n
    • What is \"Phishing\"?\nPhishing is a form of social engineering\nwhere attackers deceive people into revealing sensitive information or\ninstalling malware such as ransomware. 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.
      \n
    • \n
    • Social\nengineering (security) In the context of information security,\nsocial engineering is the psychological\nmanipulation 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.
      \n
    • \n
    • What is \"Information\nSecurity\" (InfoSec)? Information security, sometimes shortened to\nInfoSec, is the practice of protecting information by mitigating information risks. It\nis part of information risk\nmanagement.\n
        \n
      • Information Security Attributes: Confidentiality, Integrity and Availability (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.
        \n
      • \n
    • \n
    • What is \"Risk\nmanagement\"? 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.
      \n
    • \n
    • What is a \"Vulnerability\"\n(computing)? 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.
      \n
    • \n
    • What is an \"Attack\nSurface\"? 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.
      \n
    • \n
    • What is an \"Attack\nVector\"? 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.
      \n
    • \n
    • What is\n\"Standardization\"? 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
    • \n
    • What is a \"Replay\nattack\"? 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.\"
      \n
    • \n
    • What is a\n\"Man-in-the-middle attack\"? 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.
      \n
    • \n
    • What is \"Transport Layer\nSecurity\" (TLS)? 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.
      \n
    • \n
    • What is a \"Handshake\"\n(computing)?. 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.
      \n
    • \n
    • What is Security\ntheater? The practice of taking security measures that are\nconsidered to provide the feeling of improved security while doing\nlittle or nothing to achieve it.
      \n
    • \n
  • \n
\n
\n\n',391,74,0,'CC-BY-SA','Oh No News, Threat analysis, InfoSec, Google Dynamic Search Ads',0,0,1), (4005,'2023-12-08','Sgoti\'s reply to multiple shows.',893,'Sgoti replies to a few HPR Shows.','

Sgoti\'s reply to multiple\nshows.

\n

Sgoti replies to a few HPR\nShows.

\n
    \n
  • Tags: Reply show, password managers, lastpass.

  • \n
  • Reply to: hpr3988\n:: Beeper.com
    \n

  • \n
  • Supporting Source: Beeper chat application
    \n

  • \n
  • Supporting Source: Beeper Github page
    \n

  • \n
  • Supporting Source: Work with us at\nBeeper
    \n

  • \n
  • Reply to: hpr3989 :: LastPass\nSecurity Update 1 November 2023
    \n

  • \n
  • Reply to: hpr3994 ::\nLastpass Response
    \n

  • \n
  • Source: The\nTHREE STOOGES - A Plumbing We Will Go
    \n

  • \n
  • Source: Whitest Kids U Know:\nLeg Peeing
    \n

    \n
      \n
    • This was just funny. I found it while searching for, \"why the\nBritish say things like taking a piss\".
    • \n
  • \n
\n

This work is licensed under a Creative Commons\nAttribution-ShareAlike 4.0 International License.

\n',391,0,0,'CC-BY-SA','reply show, password managers, lastpass',0,0,1), -(3998,'2023-11-29','Using open source OCR to digitize my mom\'s book',1847,'How I used open source tools such as gphoto2 and the OCR software tesseract to digitize pages','

To improve the speed of my workflow, I wrote a bash script that uses\nthe open source programs programs gphoto2,\ntesseract, grep and ImageMagick\nto digitize my mom\'s 338 page book. Here is the link to the script:\nhttps://github.com/deltaray/ocr-script

\n',194,0,0,'CC-BY-SA','ocr,opensource,grep,scripts,programming',0,0,0); +(3998,'2023-11-29','Using open source OCR to digitize my mom\'s book',1847,'How I used open source tools such as gphoto2 and the OCR software tesseract to digitize pages','

To improve the speed of my workflow, I wrote a bash script that uses\nthe open source programs programs gphoto2,\ntesseract, grep and ImageMagick\nto digitize my mom\'s 338 page book. Here is the link to the script:\nhttps://github.com/deltaray/ocr-script

\n',194,0,0,'CC-BY-SA','ocr,opensource,grep,scripts,programming',0,0,1), +(4002,'2023-12-05','Today I learnt - 2023-11-24',477,'Some odds and ends I learnt today','
\n

What\'s this?

\n

I enjoy finding out about things. Now I\'m retired (I have been for 14\nyears), I have time to research subjects I find interesting. So I\ndo!

\n

The HPR project is going through a phase where the queue can get very\nlow, so I thought having a subject where I could fire off short shows\nfrom time to time would help with this. Maybe we can make a series where\nothers who like the idea can contribute when the mood takes them!

\n

My plan is to keep details to a minimum and provide links to sources\nof more information if you\'re someone who likes to dig deeper!

\n

TIL 1 - is it learnt\nor learned?

\n

I discovered that both are acceptable. Both are the past tense (and\npast participle) of the verb \"to learn\":

\n
    \n
  • learnt is an older form which is more common in British\nEnglish
  • \n
  • learned is more common in US English, and is becoming more\npopular in the UK
  • \n
\n

Links

\n
    \n
  • Grammarist:\nLearned vs. learnt
  • \n
  • BBC\nAsk About English
  • \n
\n

TIL 2 - the French word\nfor piggy bank

\n

I watch a YouTube channel from a Canadian woodworker who produces\nEnglish and French versions of his episodes. His latest one is about\nmaking a wooden piggy bank, or tirelire in French.

\n

I learnt French at school (though I wasn\'t much good at it), but have\nnever come across this word. My questions are:

\n
    \n
  • Where does it come from?
  • \n
  • How do you say it?
  • \n
\n

The Wiktionary page below has answers to both.

\n
    \n
  • It\'s of onomatopoeic origin (representing the rattling of\ncoins).
  • \n
  • There\'s audio on the page showing how to say it (as well as the IPA\nversion [International Phonetic Alphabet], see below).
  • \n
\n\n\n

TIL 3 - how to\npronounce IPA coded words

\n

I actually learnt about this a while ago, but I thought now would be\na good time to share.

\n

The IPA form of tirelire is /tiʁ.liʁ/ (I\nincluded the enclosing slash delimiters which aren\'t part of the IPA but\nhave significance; see the IPA Wikipedia page for details). I have seen\nthese symbols for years but have never managed to decode them\nreliably.

\n

A few months ago I wondered how to deal with them reliably (and\neasily). There are many sites offering to transcribe English (and other\nlanguages) to IPA, a few of which are free. I only found one that would\nattempt to speak IPA, and that is IPA\nReader.

\n

Paste the IPA into the form, select a reader voice, and click \"Read\".\nSome of the voices seem a bit odd. I settled on \"Brian\" for British\nEnglish, and it seems fine.

\n\n
    \n
  • International\nPhonetic Association - creators of the International\nPhonetic Alphabet
  • \n
  • IPA Reader
  • \n
\n
\n',225,0,1,'CC-BY-SA','learning,learned,learnt,TIL,English,French,phonetics,IPA,tirelire',0,0,0); /*!40000 ALTER TABLE `eps` ENABLE KEYS */; UNLOCK TABLES; @@ -989,12 +998,3 @@ INSERT INTO `hosts` (`hostid`, `host`, `email`, `profile`, `license`, `local_ima (401,'Mechatroniac','anarch0re.nospam@nospam.tutanota.com','

\r\nThe Mechatronics Maniac\r\n
\r\nhttps://www.bitchute.com/channel/mechatroniac/\r\n

','CC-BY-SA',0,'',1,'Mechatroniac'), (402,'takov751','takov751.nospam@nospam.protonmail.com','','CC-BY-SA',1,'',1,'takov 7 5 1'), (404,'Sarah','sarah.nospam@nospam.giammarco.ca','

Librarian. Spends too much time on the internet.

','CC-BY-SA',0,'',1,'Sarah'), -(406,'binrc','binrc.nospam@nospam.protonmail.com','https://0x19.org\r\nthanks for listening :)','CC-BY-SA',0,'',1,'bin R. C.'), -(407,'Celeste','zceleste.nospam@nospam.protonmail.com','I once made a crocheted goose named Celeste in my free time and it has since become a sort of online avatar for me.','CC-BY-NC-SA',0,'',1,'Celeste'), -(405,'Lurking Prion','LurkingPrion.nospam@nospam.gmail.com','

\r\nLurking Prion (He/Him/His) is a cybersecurity enthusiast, evangelist, mentor, and professional with 20+ years experience in the Healthcare, Financial, Telecommunications, Managed Security Services Provider (MSSP), Hybrid Cloud Service Provider (CSP), and other unspecified business sectors...\r\n

\r\n

\r\nBeginning as a network administrator, Lurking Prion\'s career followed security as it progressed throughout the years in roles including:\r\n

    \r\n
  • Linux/Windows Systems Administrator
  • \r\n
  • Network Engineer
  • \r\n
  • Telecommunications Engineer
  • \r\n
  • Security Engineer and Architect
  • \r\n
  • Ethical Hacker
  • \r\n
  • Security Consultant
  • \r\n
\r\n

\r\n

\r\nLurking Prion also has a passion for teaching. It is his mission to help build a new generation of cyber security professionals with a security mindset.\r\n

\r\n

\r\nLurking Prion may occasionally refer to himself as Robert.
\r\nLurking Prion likes coffee, dark beer, and dirty martinis.
\r\nLurking Prion only refers to himself in the third person when there is a lack of coffee or an abundance of stupidity.
\r\nLurking Prion\'s eye starts to twitch when all hell is about to break loose.
\r\nLurking Prion\'s spirit animal is DeadPool.\r\n

','CC-BY-SA',0,'',1,'Lurking Prion'), -(416,'screwtape','screwtape.nospam@nospam.sdf.org','Hi everyone! I like to write on the gopher and in common lisp. I am experimenting with idiomatic inclusion of formal ACL2 first order logic as part of larger ASDF3 common lisp system definitions that include side-effect modules.\r\n\r\nYou might know me from the gopher. gopher.club/1/users/screwtape\r\nI normally use openbsd, but in different contexts I often use NetBSD or FreeBSD and I also use Gentoo and Debian linux.','CC-BY-SA',0,'',1,'screw tape'), -(414,'Kinghezy','cbart387.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Kinghezy'), -(410,'Hipernike','hipernike.nospam@nospam.proton.me','','CC-BY-SA',0,'',1,'Hipernike'), -(70,'TheYellow1','TheYellow1.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'The Yellow One'), -(71,'Will Jason','willjasen.nospam@nospam.charter.net','','CC-BY-SA',0,'',1,'Will Jason'), -(411,'Paul J','hpr.nospam@nospam.pauljohnstone.com','I am a full-stack developer','CC-BY-SA',0,'',1,'Paul J'), diff --git a/sql/hpr-db-part-15.sql b/sql/hpr-db-part-15.sql index da0d83f..f894d5e 100644 --- a/sql/hpr-db-part-15.sql +++ b/sql/hpr-db-part-15.sql @@ -1,3 +1,12 @@ +(406,'binrc','binrc.nospam@nospam.protonmail.com','https://0x19.org\r\nthanks for listening :)','CC-BY-SA',0,'',1,'bin R. C.'), +(407,'Celeste','zceleste.nospam@nospam.protonmail.com','I once made a crocheted goose named Celeste in my free time and it has since become a sort of online avatar for me.','CC-BY-NC-SA',0,'',1,'Celeste'), +(405,'Lurking Prion','LurkingPrion.nospam@nospam.gmail.com','

\r\nLurking Prion (He/Him/His) is a cybersecurity enthusiast, evangelist, mentor, and professional with 20+ years experience in the Healthcare, Financial, Telecommunications, Managed Security Services Provider (MSSP), Hybrid Cloud Service Provider (CSP), and other unspecified business sectors...\r\n

\r\n

\r\nBeginning as a network administrator, Lurking Prion\'s career followed security as it progressed throughout the years in roles including:\r\n

    \r\n
  • Linux/Windows Systems Administrator
  • \r\n
  • Network Engineer
  • \r\n
  • Telecommunications Engineer
  • \r\n
  • Security Engineer and Architect
  • \r\n
  • Ethical Hacker
  • \r\n
  • Security Consultant
  • \r\n
\r\n

\r\n

\r\nLurking Prion also has a passion for teaching. It is his mission to help build a new generation of cyber security professionals with a security mindset.\r\n

\r\n

\r\nLurking Prion may occasionally refer to himself as Robert.
\r\nLurking Prion likes coffee, dark beer, and dirty martinis.
\r\nLurking Prion only refers to himself in the third person when there is a lack of coffee or an abundance of stupidity.
\r\nLurking Prion\'s eye starts to twitch when all hell is about to break loose.
\r\nLurking Prion\'s spirit animal is DeadPool.\r\n

','CC-BY-SA',0,'',1,'Lurking Prion'), +(416,'screwtape','screwtape.nospam@nospam.sdf.org','Hi everyone! I like to write on the gopher and in common lisp. I am experimenting with idiomatic inclusion of formal ACL2 first order logic as part of larger ASDF3 common lisp system definitions that include side-effect modules.\r\n\r\nYou might know me from the gopher. gopher.club/1/users/screwtape\r\nI normally use openbsd, but in different contexts I often use NetBSD or FreeBSD and I also use Gentoo and Debian linux.','CC-BY-SA',0,'',1,'screw tape'), +(414,'Kinghezy','cbart387.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'Kinghezy'), +(410,'Hipernike','hipernike.nospam@nospam.proton.me','','CC-BY-SA',0,'',1,'Hipernike'), +(70,'TheYellow1','TheYellow1.nospam@nospam.gmail.com','','CC-BY-SA',0,'',1,'The Yellow One'), +(71,'Will Jason','willjasen.nospam@nospam.charter.net','','CC-BY-SA',0,'',1,'Will Jason'), +(411,'Paul J','hpr.nospam@nospam.pauljohnstone.com','I am a full-stack developer','CC-BY-SA',0,'',1,'Paul J'), (412,'m0dese7en','m0dese7en.nospam@nospam.mykolab.com','','CC-BY-SA',0,'',1,'Mode Seven'), (413,'CCHits.net Team','show.nospam@nospam.cchits.net','CCHits.net is a website which produces a daily, weekly and sometimes even a monthly music podcast. Find out more at cchits.net','CC-BY',0,'',1,'CCHits dot net Team'), (415,'enistello','enistello.nospam@nospam.tuta.io','@enistello@fosstodon.org','CC-BY-SA',0,'',1,'ennis tello'), @@ -496,4 +505,4 @@ UNLOCK TABLES; /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2023-11-23 20:27:18 +-- Dump completed on 2023-11-24 19:34:03 diff --git a/sql/hpr.sql b/sql/hpr.sql index 5d3ac89..6c02d37 100644 --- a/sql/hpr.sql +++ b/sql/hpr.sql @@ -12647,7 +12647,13 @@ INSERT INTO `assets` (`episode_id`, `filename`, `extension`, `size`, `sha1sum`, (4005,'hpr4005.spx','spx',3679989,'f2558f723a16ad5032721594bbd7cbf7f3256c57','audio/ogg; charset=binary','setgid Ogg data, Speex audio'), (4005,'hpr4005.flac','flac',74471548,'0252c0250691eac54a5fccd897ce3474a07e67de','audio/flac; charset=binary','setgid FLAC audio bitstream data, 16 bit, mono, 192 kHz, 187056031 samples'), (4005,'hpr4005.opus','opus',9047916,'09e4d148aca52fb63a7ce69ed1fc4dd6cc3e5c1e','audio/ogg; charset=binary','setgid Ogg data, Opus audio,'), -(4005,'hpr4005.wav','wav',374112164,'387a5b0e00d3186dfc866a164ddcc3fdb0ea1e11','audio/x-wav; charset=binary','setgid RIFF (little-endian) data, WAVE audio, mono 192000 Hz'); +(4005,'hpr4005.wav','wav',374112164,'387a5b0e00d3186dfc866a164ddcc3fdb0ea1e11','audio/x-wav; charset=binary','setgid RIFF (little-endian) data, WAVE audio, mono 192000 Hz'), +(3998,'hpr3998.mp3','mp3',15426092,'fcf3e38289c5cb460447fa239d1f3d26311919bd','audio/mpeg; charset=binary','setgid Audio file with ID3 version 2.4.0, contains:MPEG ADTS, layer III, v1, 64 kbps, 48 kHz, Monaural'), +(3998,'hpr3998.ogg','ogg',16776725,'f2503e2f66dbb5986cf833fa63088c6ccbd31da2','audio/ogg; charset=binary','setgid Ogg data, Opus audio,'), +(3998,'hpr3998.spx','spx',7283022,'7446d0e0858bb17aa801da6b879405df36bcd292','audio/ogg; charset=binary','setgid Ogg data, Speex audio'), +(3998,'hpr3998.flac','flac',164171610,'0dc5e1edfee35c8b6abe8e2b12b0991d25292602','audio/flac; charset=binary','setgid FLAC audio bitstream data, 16 bit, mono, 192 kHz, 370211566 samples'), +(3998,'hpr3998.opus','opus',16776725,'b1c6bab2e7007b7215d4254f0d76e01009337282','audio/ogg; charset=binary','setgid Ogg data, Opus audio,'), +(3998,'hpr3998.wav','wav',740423234,'be85699be61bf10abcfd5746459018b3081e9c70','audio/x-wav; charset=binary','setgid RIFF (little-endian) data, WAVE audio, mono 192000 Hz'); /*!40000 ALTER TABLE `assets` ENABLE KEYS */; UNLOCK TABLES; @@ -12668,7 +12674,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=3828 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci COMMENT='New comments table populated from c5t_* tables'; +) ENGINE=MyISAM AUTO_INCREMENT=3830 DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci COMMENT='New comments table populated from c5t_* tables'; /*!40101 SET character_set_client = @saved_cs_client */; -- @@ -16499,7 +16505,9 @@ INSERT INTO `comments` (`id`, `eps_id`, `comment_timestamp`, `comment_author_nam (3824,3981,'2023-11-06 10:42:23','Hobson Lane (hobs)','Ken\'s comment about demand avoidance','Love the monthly Community News shows. Ken\'s comment about resisting the demands of his past self from reminders apps struck a chord with me. I\'ve been struggling with PDA (persistent/pathological demand avoidance) myself. I\'ll record a response show to summarize some things I\'ve learned from other podcasts that help boost my intrinsic motivation -- things like random rewards (to prevent external rewards from swamping your intrinsic motivation dopamine high). Dave\'s idea to use rituals and habits is also something that sometimes works for me. Rely admire the high quality open source technical infrastructure that keeps this community thriving and the supportive vibe of all the hosts and contributors. It gives me hope for the future of social media and the Internet.','2023-11-06 10:45:43'), (3825,3984,'2023-11-09 15:21:35','Trey','Really? You are sharing this with the world?','Dude! I thought we were keeping this on the down low? And you are naming names?\r\n\r\nNow I need to contact witness protection AGAIN!\r\n\r\nSMH...','2023-11-09 15:26:35'), (3826,3989,'2023-11-17 02:10:27','Trey','Changing passowrds','One consideration when it comes to the LastPass breach is that attackers are actively working to compromise individual vaults exposed by the data. They seem to be targeting known cryptocurrency traders, but if you had a weak or guessable password or low iterations of encryption, the information you stored in your vault may become available to attackers. It is recommended that, whether you choose to stay with LastPass or not, you change all of the passwords, keys, important secrets, etc which you stored in your vault.','2023-11-17 13:02:07'), -(3827,3993,'2023-11-22 14:05:19','Trey','What fun!','This looks like it would be a very fun project. Reminds me of an old microcontroller project I built back around 1990 using an 8085 and a bunch of wirewrap. It would fit in a shoe box, but definitely would NOT fit into an Altoids tin.\r\n\r\nThank you for sharing.','2023-11-22 15:00:06'); +(3827,3993,'2023-11-22 14:05:19','Trey','What fun!','This looks like it would be a very fun project. Reminds me of an old microcontroller project I built back around 1990 using an 8085 and a bunch of wirewrap. It would fit in a shoe box, but definitely would NOT fit into an Altoids tin.\r\n\r\nThank you for sharing.','2023-11-22 15:00:06'), +(3828,3995,'2023-11-24 08:57:50','bittin','another tip','Myself been happy with https://mopidy.com/ on a Raspberry Pi 4 with Hifiberry for a couple of years now running on Arch Linux ARM ALARM','2023-11-24 12:17:44'), +(3829,3995,'2023-11-24 15:31:21','Trey','Live radio secure streaming?','Thank you for sharing this. It looks like a very fun project.\r\n\r\nThis reminded me of a project I have been noodling for some time. I live quite a distance from my home town, and I am unable to listen to the radio streams of sporting events due to geolocation restrictions. I have been considering using a Pi with a software defined radio to build a device which will receive the local radio station and stream it to a cloud service which I can restrict for secure access. I do not want the world to receive it (and have lawyers come after me). I only want to be able to login at times when interesting events are in progress, and listen to them.\r\n\r\nI could then leave the device connected at the home of family in that area.\r\n\r\nAny thoughts on such a project?','2023-11-24 16:12:47'); /*!40000 ALTER TABLE `comments` ENABLE KEYS */; UNLOCK TABLES; /*!50003 SET @saved_cs_client = @@character_set_client */ ; @@ -20305,7 +20313,7 @@ INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hosti (3712,'2022-10-25','The last ever CCHits.net Show',5756,'The team talk about the nearly 12 years of producing CCHits.net.','

Over 12 years ago, Jon \"The Nice Guy\"\nSpriggs went to a \"Pod Crawl\" with (among others) Dave \"The Love Bug\" Lee, where he\npitched the idea of a daily music promotion show, with a twist - it\nwould all be automated, and use text-to-speech to introduce\neverything.

\n

The first show was released\non 2010-10-24 and the last ever show (this one) was released on\n2022-10-12.

\n

Over the twelve years, Jon would go on to meet to meet Yannick and Ken Fallon, both\nof whom would go on to shape changes (big and small) to CCHits.

\n

This year, the cracks started to re-appear in the architecture\nunderneath CCHits - between APIs shutting down that were used to load\ntracks to CCHits, and the general framework being used to write CCHits\nnot receiving the care and attention it needed... and the team finally\ndecided to stop adding new tracks, and let the process build the last\nfew shows.

\n

This podcast gives you a peek behind the curtain to the team involved\nin the system, and gives you some of the high- and low-lights in the 12\nyears the site ran for.

\n',413,0,0,'CC-BY','music,creative commons,podcast',0,0,1), (3724,'2022-11-10','My top Android apps',579,'I walk through the top apps on my phone','

My most used apps

\n

AIO Launcher

\n\n

\"Main

\n

\n

\n

Termux: Terminal\nemulator with packages

\n\n

QKSMS Messaging

\n\n

Firefox browser

\n
    \n
  • Firefox browser
  • \n
\n

Opera browser

\n
    \n
  • Opera browser
  • \n
\n

Brave browser

\n
    \n
  • Brave browser
  • \n
\n

Clear Scanner PDF scanner and\nOCR

\n\n

Antennapod

\n\n

Tusky

\n\n

K-9 mail client

\n\n

Viber

\n
    \n
  • Viber

    \n
      \n
    • Android and Fedora/Ubuntu desktop app
    • \n
    • App image
    • \n
  • \n
\n

Audio recorder

\n\n

X-plore dual-pane file\nmanager

\n
    \n
  • X-plore dual-pane file\nmanager
  • \n
\n

Librera E-book Reader: for\nPDF, EPUB

\n
    \n
  • Librera E-book Reader

    \n
      \n
    • Books\n
        \n
      • Star Wars: Dark Tide I: Onslaught

        \n

        The New Jedi Order #2

        \n
          \n
        • Star Wars Dark Tide I:\nOnslaught
        • \n
      • \n
      • Boba Fett: A Practical Man

        \n
          \n
        • Boba Fett: A Practical Man
        • \n
      • \n
    • \n
  • \n
\n

Multi Timer

\n
    \n
  • Multi Timer
  • \n
\n

US Amateur Radio Band Plan

\n
    \n
  • US Amateur Radio Band Plan

    \n
      \n
    • Quick reference of band and privilege restrictions
    • \n
  • \n
\n',318,0,0,'CC-BY-SA','Android, Android apps, Mobile phone, Custom launcher',0,0,1), (3725,'2022-11-11','How to use OSMAnd with Public Transport ',124,'Ken shows you how to use this mapping tool to display transit routes in your area.','

\r\n\"\"
\r\nMap of Dublin showing the Temple Bar tourist area. A red arrow points to where you can change the profile.\r\n

\r\n

\r\n\"\"
\r\nWith the Configure Map > Profile selection menu open, a red square surrounds the Bus icon to indicate the \"public transport\" profile is now selected.\r\n

\r\n

\r\n\"\"
\r\nThe map now opens to show more information about public transport is now displayed on the map. This is highlighted with a red square.
\r\nClicking the bustop (highlighted with a red circle ) will show more information about the routes available at this location.\r\n

\r\n

\r\n\"\"
\r\nOnce the transport stop is selected, a list of all the routes that service this location are displayed. Along with other routes that are available within a short distance.\r\n

\r\n

\r\n\"\"
\r\nClicking any of the routes numbers/names will give a zoomed out map showing in red the route many of the stops towards it\'s source and destination.\r\n

\r\n',30,0,0,'CC-BY-SA','OSMAnd, OSM, Maps, Public Transport',0,0,1), -(4001,'2023-12-04','HPR Community News for November 2023',0,'HPR Volunteers talk about shows released and comments posted in November 2023','\n\n

New hosts

\n

\nThere were no new hosts this month.\n

\n\n

Last Month\'s Shows

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
IdDayDateTitleHost
3978Wed2023-11-01Driving in Virginia.Some Guy On The Internet
3979Thu2023-11-02FireStick and ad blockingoperat0r
3980Fri2023-11-03Huntsville to VicksburgAhuka
3981Mon2023-11-06HPR Community News for October 2023HPR Volunteers
3982Tue2023-11-07Conversation with ChatGPTArcher72
3983Wed2023-11-08ChatGPT Output is not compatible with CC-BY-SAKen Fallon
3984Thu2023-11-09Whoppers. How Archer72 and I made moonshine. Volume one.Some Guy On The Internet
3985Fri2023-11-10Bash snippet - be careful when feeding data to loopsDave Morriss
3986Mon2023-11-13Optical media is not deadArcher72
3987Tue2023-11-14The Grim DawnSome Guy On The Internet
3988Wed2023-11-15Beeper.comoperat0r
3989Thu2023-11-16LastPass Security Update 1 November 2023Ahuka
3990Fri2023-11-17Playing Alpha Centauri, Part 2Ahuka
3991Mon2023-11-20YOU ARE A PIRATE operat0r
3992Tue2023-11-21Test recording on a wireless micArcher72
3993Wed2023-11-22z80 membership cardBrian in Ohio
3994Thu2023-11-23Lastpass Responseoperat0r
3995Fri2023-11-24Creating Your Own Internet Radio Streaming DeviceClaudio Miranda
3996Mon2023-11-27Holiday Challenges Series - Ep 1 - Advent of CodeTrey
3997Tue2023-11-28The Oh No! News.Some Guy On The Internet
3999Thu2023-11-30Holiday Challenges Series Ep 02 TryHackMe Advent of Cyber ChallengeTrey
\n\n

Comments this month

\n\n

These are comments which have been made during the past month, either to shows released during the month or to past shows.\nThere are 5 comments in total.

\n\n

This month\'s shows

\n

There are 5 comments on 5 of this month\'s shows:

\n\n\n

Mailing List discussions

\n

\nPolicy decisions surrounding HPR are taken by the community as a whole. This\ndiscussion takes place on the Mail List which is open to all HPR listeners and\ncontributors. The discussions are open and available on the HPR server under\nMailman.\n

\n

The threaded discussions this month can be found here:

\nhttps://lists.hackerpublicradio.com/pipermail/hpr/2023-November/thread.html\n\n\n

Events Calendar

\n

With the kind permission of LWN.net we are linking to\nThe LWN.net Community Calendar.

\n

Quoting the site:

\n
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.
\n\n

Any other business

\n

Example section

\n
    \n
  • Bulleted list item 1

  • \n
  • Bulleted list item 2

  • \n
\n\n\n',159,47,1,'CC-BY-SA','Community News',0,0,1), +(4001,'2023-12-04','HPR Community News for November 2023',0,'HPR Volunteers talk about shows released and comments posted in November 2023','\n\n

New hosts

\n

\nThere were no new hosts this month.\n

\n\n

Last Month\'s Shows

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
IdDayDateTitleHost
3978Wed2023-11-01Driving in Virginia.Some Guy On The Internet
3979Thu2023-11-02FireStick and ad blockingoperat0r
3980Fri2023-11-03Huntsville to VicksburgAhuka
3981Mon2023-11-06HPR Community News for October 2023HPR Volunteers
3982Tue2023-11-07Conversation with ChatGPTArcher72
3983Wed2023-11-08ChatGPT Output is not compatible with CC-BY-SAKen Fallon
3984Thu2023-11-09Whoppers. How Archer72 and I made moonshine. Volume one.Some Guy On The Internet
3985Fri2023-11-10Bash snippet - be careful when feeding data to loopsDave Morriss
3986Mon2023-11-13Optical media is not deadArcher72
3987Tue2023-11-14The Grim DawnSome Guy On The Internet
3988Wed2023-11-15Beeper.comoperat0r
3989Thu2023-11-16LastPass Security Update 1 November 2023Ahuka
3990Fri2023-11-17Playing Alpha Centauri, Part 2Ahuka
3991Mon2023-11-20YOU ARE A PIRATE operat0r
3992Tue2023-11-21Test recording on a wireless micArcher72
3993Wed2023-11-22z80 membership cardBrian in Ohio
3994Thu2023-11-23Lastpass Responseoperat0r
3995Fri2023-11-24Creating Your Own Internet Radio Streaming DeviceClaudio Miranda
3996Mon2023-11-27Holiday Challenges Series - Ep 1 - Advent of CodeTrey
3997Tue2023-11-28The Oh No! News.Some Guy On The Internet
3998Wed2023-11-29Using open source OCR to digitize my mom\'s bookDeltaray
3999Thu2023-11-30Holiday Challenges Series Ep 02 TryHackMe Advent of Cyber ChallengeTrey
\n\n

Comments this month

\n\n

These are comments which have been made during the past month, either to shows released during the month or to past shows.\nThere are 6 comments in total.

\n\n

This month\'s shows

\n

There are 6 comments on 6 of this month\'s shows:

\n\n\n

Mailing List discussions

\n

\nPolicy decisions surrounding HPR are taken by the community as a whole. This\ndiscussion takes place on the Mail List which is open to all HPR listeners and\ncontributors. The discussions are open and available on the HPR server under\nMailman.\n

\n

The threaded discussions this month can be found here:

\nhttps://lists.hackerpublicradio.com/pipermail/hpr/2023-November/thread.html\n\n\n

Events Calendar

\n

With the kind permission of LWN.net we are linking to\nThe LWN.net Community Calendar.

\n

Quoting the site:

\n
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.
\n\n

Any other business

\n

Example section

\n
    \n
  • Bulleted list item 1

  • \n
  • Bulleted list item 2

  • \n
\n\n\n',159,47,1,'CC-BY-SA','Community News',0,0,1), (3714,'2022-10-27','The News with Some Guy On the Internet',609,'Threat Analysis','

Threat Analysis; your\nattack surface.

\n

The Hacker News

\nNew\nChinese Malware Attack Framework Targets Windows, macOS, and Linux\nSystems.\n

A previously undocumented command-and-control (C2) framework dubbed\nAlchimist is likely being used in the wild to target Windows, macOS, and\nLinux systems.

\n

\"Alchimist C2 has a web interface written in Simplified Chinese and\ncan generate a configured payload, establish remote sessions, deploy\npayloads to the remote machines, capture screenshots, perform remote\nshellcode execution, and run arbitrary commands,\" Cisco Talos said in a\nreport shared with The Hacker News. Written in GoLang, Alchimist is\ncomplemented by a beacon implant called Insekt, which comes with remote\naccess features that can be instrumented by the C2 server.”

\n

\"Since Alchimist is a single-file based ready-to-go C2 framework, it\nis difficult to attribute its use to a single actor such as the authors,\nAPTs, or crimeware syndicates.\"

\n

The trojan, for its part, is equipped with features typically present\nin backdoors of this kind, enabling the malware to get system\ninformation, capture screenshots, run arbitrary commands, and download\nremote files, among others.

\n

Alchimist C2 panel further features the ability to generate first\nstage payloads, including PowerShell and wget code snippets for Windows\nand Linux, potentially allowing an attacker to flesh out their infection\nchains to distribute the Insekt RAT binary. The instructions could then\nbe potentially embedded in a maldoc attached to a phishing email that,\nwhen opened, downloads and launches the backdoor on the compromised\nmachine. What\'s more, the Linux version of Insekt is capable of listing\nthe contents of the \".ssh\" directory and even adding new SSH keys to the\n\"~/.ssh/authorized_keys\" file to facilitate remote access over SSH.

\n

The Hacker News

\nHackers\nUsing Vishing to Trick Victims into Installing Android Banking\nMalware.\n

Malicious actors are resorting to voice phishing (vishing) tactics to\ndupe victims into installing Android malware on their devices.

\n

The Dutch mobile security company said it identified a network of\nphishing websites targeting Italian online-banking users that are\ndesigned to get hold of their contact details.

\n

Telephone-oriented attack delivery (TOAD), as the social engineering\ntechnique is called, involves calling the victims using previously\ncollected information from the fraudulent websites.

\n

The caller, who purports to be a support agent for the bank,\ninstructs the individual on the other end of the call to install a\nsecurity app and grant it extensive permissions, when, in reality, it\'s\nmalicious software intended to gain remote access or conduct financial\nfraud.

\n

What\'s more, the infrastructure utilized by the threat actor has been\nfound to deliver a second malware named SMS Spy that enables the\nadversary to gain access to all incoming SMS messages and intercept\none-time passwords (OTPs) sent by banks.

\n

The new wave of hybrid fraud attacks presents a new dimension for\nscammers to mount convincing Android malware campaigns that have\notherwise relied on traditional methods such as Google Play Store\ndroppers, rogue ads, and smishing.

\n

The Hacker News

\n64,000\nAdditional Patients Impacted by Omnicell Data Breach - What is Your Data\nBreach Action Plan?\n

Founded in 1992, Omnicell is a leading provider of medication\nmanagement solutions for hospitals, long-term care facilities, and\nretail pharmacies. On May 4, 2022, Omnicell\'s IT systems and third-party\ncloud services were affected by ransomware attacks which may lead to\ndata security concerns for employees and patients. While it is still\nearly in the investigation, this appears to be a severe breach with\npotentially significant consequences for the company.

\n

Omnicell began informing individuals whose information may have been\ncompromised on August 3, 2022. Hackers may be able to access and sell\npatient-sensitive information, such as social security numbers, due to\nthe time delay between the breach and the company\'s report of affected\npatients.

\n

The type of information that may be exposed are:

\n
    \n
  • Credit card information.
  • \n
  • Financial information.
  • \n
  • Social security numbers.
  • \n
  • Driver\'s license numbers.
  • \n
  • Health insurance details.
  • \n
\n

The healthcare industry is one of the most targeted sectors globally,\nwith attacks doubling year over year. And these costs are measured in\nmillions or even billions of dollars - not to mention increased risks\nfor patients\' privacy (and reputation).

\n

The Washington Post

\n

How to\nprotect schools getting whacked by ransomware.

\n

Ransomware gangs are taking Americans to school. So far this year,\nhackers have taken hostage at least 1,735 schools in 27 districts; the\nmassive Los Angeles Unified School District is their latest target.

\n

Ransomware hackers breach computers, lock them up, steal sensitive\ndata and demand money to release their hold on organizations’ critical\nsystems. These criminals often attack schools because they are\nprofitable targets. If all ransomware victims refused to pay, the\nattacks would stop. Indeed, paying up might be illegal: The Treasury\nDepartment released guidance last year noting that giving money to\nglobal criminal organizations can violate sanctions law.

\n

The trouble is, saying no isn’t always easy. Los Angeles didn’t\ncapitulate, and the criminals leaked a trove of data — a consequence\nthat can prove more or less serious depending on the sensitivity of the\nstolen information.

\n

“Because we can,” said a representative of the ransomware gang that\ntook down Los Angeles Unified School District, explaining the\ncollective’s motivations to a Bloomberg News reporter. Schools’ task is\nto turn “can” to “can’t” — or, at least, to make success pay a whole lot\nless.

\n

CNET News.

\nVerizon\nAlerts Prepaid Customers to Recent Security Breach.\n

Verizon notified prepaid customers this week of a recent cyberattack\nthat granted third-party actors access to their accounts, as reported\nearlier Tuesday by BleepingComputer. The attack occurred between Oct. 6\nand Oct. 10 and affected 250 Verizon prepaid customers.

\n

The breach exposed the last four digits of customers\' credit cards\nused to make payments on their prepaid accounts. While no full credit\ncard information was accessible, the information was enough to grant the\nattackers access to Verizon user accounts, which hold semi-sensitive\ndata such \"name, telephone number, billing address, price plans, and\nother service-related information,\" per a notice from Verizon.

\n

Account access also potentially enabled attackers to process\nunauthorized SIM card changes on prepaid lines. Also known as SIM\nswapping, unauthorized SIM card changes can allow for the transfer of an\nunsuspecting person\'s phone number to another phone.

\n

From there, the counterfeit phone can be used to receive SMS messages\nfor password resets and user identification verifications on other\naccounts, giving attackers potential access to any account they have, or\ncan guess, the username for. Consequently, Verizon recommended affected\ncustomers secure their non-Verizon accounts such as social media,\nfinancial, email and other accounts that allow for password resets by\nphone.

\n',391,0,0,'CC-BY-SA','Threat Analysis, Security Breach, Ransomware, Data Breach, TOAD',0,0,1), (3717,'2022-11-01','Video editing with Shotcut on a low end PC',695,'In this episode I explain how I use the shotcut video editor to edit video on a low end PC.','

Links

\n

Shotcut video editor website

\n

Useful\nShortcut keys for the Shotcut video editor

\n
C = copy\nV = paste\nA = duplicate\nX = ripple delete\nCtrl + X = ripple delete but send to clipboard\nS = split
\n

Tip not covered in my\nPodcast

\n

Splits are not fixed and can be adjusted. Once you\'ve split up clips\nand put them in the right order on the timeline you can still adjust the\ncut point even though you previously split the clip because the clip is\nreferenced to the original file in the playlist.

\n

Introduction

\n

Hello and welcome Hacker Public Radio audience my name is Mr X\nwelcome to this podcast. As per usual I\'d like to start by thanking the\npeople at HPR for making this podcast possible. HPR is a Community led\npodcast provided by the community for the community that means you can\ncontribute to. The HPR team have gone to great deal of effort to\nsimplify and streamline the process of providing podcasts. There are\nmany ways to record an episode these days using phones tablets PCs and\nalike. The hardest barrier is sending in your first show. Don\'t get too\nhung up about quality, it\'s more important just to send something in.\nThe sound quality of some of my early shows wasn\'t very good. If I can\ndo it anyone can and you might just get hooked in the process.

\n

Well it\'s been almost a year since I\'ve sent in a show. Looking at\nthe HPR site my last episode was back in November 2021. I suspect like\nmany others life has become more complicated and I find I have much less\nspare time and because I have much less spare time I have much less time\nto pursue my hobbies and because of this I have less to speak about and\nbecause of this I have less time to record what I\'ve been doing and it\nall turns into to vicious circle. Fortunately I recently had some time\noff work and had a lovely holiday. During the holiday I ended up\nrecording some video which I decided I wanted to edit. I\'ve done some\nvideo editing in the past using various video editing packages. The best\nand most recent of which is shotcut.

\n

Specific details and\nequipment

\n

Video resolution 1920 x 1080, Codec h264 mpeg-4, Frame rate 30 frames\nper second.

\n

Computer Dell Optiplex 780. Fitted with 4 GB of internal RAM and\nonboard video graphics card.

\n

Shotcut version 22.06.23 Shotcut is a free open-source cross-platform\nvideo editor licenced under the GNU general public licence version\n3.0

\n

This episode will only cover basic shotcut video editing techniques.\nShotcut contains many advanced features and effects that will not be\ncovered in this episode. A lot of the workflow I’ll share with you today\nis intended to get around limitations imposed by my low spec PC

\n

I\'ll try my best to cover the video editing process in this podcast\nusing words alone; however I am conscious that an accompanying video\nwould make it easier to follow along.

\n

Shotcut workflow

\n

Start by creating a folder to hold all the required media files.\nAudio tracks and sound effects can be added to this folder later. Make\nsure all your video files are using the same frame rate in my case 30\nframes per second.

\n

Open each video file in VLC one at a time going through each video\nfile looking for the best portions of video. Make a note of where the\nbest portions of the video are by writing down the start and end points\nin minutes and seconds.

\n

I do this because the interface of VLC is more responsive than\nshortcut and the resolution of displayed video is far greater than the\npreview in shortcut. This makes it quicker and easier to find the best\nportions of video.

\n

Open shortcut and make sure the new project is set to the same frames\nper second as the media files you\'re working with, in my case 30 frames\nper second. You can check the frame rate of your project by looking at\nthe selected video mode in the new projects window. If you select\nautomatic it will ensure the project resolution and frame rate\nautomatically match that of your media files.

\n

Start by adding all the video files to the playlist, this can be done\nin a number of ways for example it can be done by clicking on the open\nfile button in the top toolbar or within the open files menu.\nAlternatively you can drag and drop files into the playlist. I find this\nto be the easiest way to add media files to a project. Once this is done\nsave your project.

\n

Drag the first file from the Playlist to the timeline making sure\nthat the start of the video starts at 0 seconds.

\n

Click on the timeline in the position where the first start point of\ninterest is needed. Use the S key to split the video at this point.\nDon\'t worry about being too accurate as this can be moved at a later\nstage.

\n

Repeat this process for the end point of interest.

\n

Repeat this again for all the other sections of start and end points\nof interest.

\n

Remove the unwanted sections of video by clicking on a section then\nhitting the delete key. This will remove the unwanted section leaving an\nempty space behind.

\n

Once all the unwanted sections are removed click on the sections of\nvideo and pull them to the left to close the gaps up. I find it useful\nto leave some space between the good sections of video as it makes it\neasier to see where splits are and makes it easier later on to rearrange\nthe order of the individual clips.

\n

Check the start and end points of the remaining sections of video to\nsee that the start and end points stop in the correct place. You can do\nthis by clicking the play button on the preview window. The video start\nand end points can be adjusted by dragging the section left or right in\nin the timeline section; this is where leaving spaces Between each\nsection of video can be handy as it allows for fine tuning.

\n

Add a new blank video track to the timeline to hold the next video.\nNote this wasn\'t required when adding the first video track but it is\nneeded for each subsequent track. A video track can be added by right\nclicking on an empty portion of the timeline and selecting add video\ntrack. Alternatively use the ctrl + I key.

\n

Drag your second video from the playlist onto the newly created blank\nvideo track in the timeline. As before make sure that the start of the\nvideo starts at 0 seconds.

\n

Before previewing any section of the second video track click the\nsmall eye shaped hide icon in the left section of the first video track\nlabelled output. This will prevent previewing both video tracks at the\nsame time.

\n

Repeat the process above of chopping the second video track into\nsections using the S key to split the video up. Remove the unwanted\nsections. Finally adjust the start and end points of the remaining\nsections.

\n

Repeat the steps above to add the remaining video files one at a time\nfrom the playlist to the timeline.

\n

When complete you end up with separate video tracks in the timeline\neach containing good sections of video.

\n

At this stage I can\'t be too specific about how to continue as there\nare a number of different options depending on your particular Project.\nYou can for example start by combining the good sections of video into\none video track by dragging them from one track to another then add if\nrequired an audio track or you can add the audio track first and then\ntry to sync things up to the audio track moving bits and pieces of video\ninto one video track remembering to hide the unwanted sections of video\nby clicking on the small hide eye icons. Don\'t do too much editing\nwithout saving the project. If you get a message about low memory save\nthe project then reopen it.

\n

To export the final video click on the export button in the toolbar.\nI pick the default option, this creates an H.264/AAC MP4 file suitable\nfor most users and purposes. You can check the frame rate is the same as\nyour original media files by clicking on the advanced tab. Click the\nexport file button and give it a file name. It may take some time to\ncreate the export file. This will be dependent on the speed of your\ncomputer and the length and resolution of your project.

\n

While Shotcut is far from perfect on my puny PC it is surprisingly\nusable and stable and is the best option I’ve found so far.

\n

Finally here are some general shotcut tips I have when doing video\nediting on a puny PC with limited ram, slow processor and built in\ngraphics card such as mine.

\n

General Tips\nwhen working with a low powered PC

\n

Close all open applications leaving only shortcut open this helps\nwith RAM usage

\n

Shortcut is surprisingly stable with a feeble PC such as mine. I\nwould still recommend saving your project regularly as it is quick and\nvery easy to do.

\n

If you get a message about running out of RAM then try not to do too\nmuch more editing before saving the project. Once saved close shotcut\nand then reopen it. The longer your project is and the higher your\nproject resolution the more RAM you will need.

\n

When you are about to export your final video save the project close\nshortcut reopen shotcut and immediately export your project as any\nprevious editing may be taking up precious ram.

\n

Be patient when clicking on the timeline to repositioned the play\nhead. Always wait for the preview window to update. This can sometimes\ntake a few seconds.

\n

When trying to sync video to audio you need to zoom in in quite a\nlong way before getting an audio preview. When doing this and moving the\nplay head you\'ll get a choppy version of the audio with this it is still\nperfectly possible to find the beat of the music allowing you to sync\nyour video to the music. If this doesn\'t seem to work for you then try\nzooming in closer.

\n

Ok that\'s about it for this podcast. Hope it wasn\'t too boring and it\nmade some sense. If you want to contact me I can be contacted at\nmrxathpr at googlemail.

\n

Thank you and goodbye.

\n',201,0,0,'CC-BY-SA','workflow, tips, video, editing, application',0,0,1), (3719,'2022-11-03','HPR News',594,'InfoSec; the language of security.','

InfoSec; the language of\nsecurity.

\n

What\nis Typosquatting and How Do Scammers Use it?

\n
    \n
  • Typosquatting, as an attack, uses modified or misspelled domain\nnames to trick users into visiting fraudulent websites; the heart of\nthis attack is domain name registration. Typosquatting is deployed by\nscammers to defraud unaware users. Attackers will attempt to: mimic\nlogin pages, redirect traffic, download malware, and extort users.
  • \n
  • Past Known Typosquatting Attacks.\n
      \n
    • Several\nMalicious Typosquatted Python Libraries Found On PyPI\nRepository
    • \n
    • Over\n700 Malicious Typosquatted Libraries Found On RubyGems\nRepository
    • \n
    • Security\nadvisory: malicious crate rustdecimal
    • \n
    • This\nWeek in Malware-Malicious Rust crate, \'colors\' Typosquats
    • \n
  • \n
  • Solutions to Typosquatting.\n
  • \n
  • DNS monitoring services.\n
      \n
    • Link to dnstwister: https://dnstwister.report/
    • \n
    • Link to whois: https://www.whois.com/whois
    • \n
  • \n
  • Password Managers.\n
      \n
    • Link to bitwarden: https://bitwarden.com/
    • \n
    • Link to keepassxc: https://keepassxc.org/
    • \n
  • \n
\n
\n

Two-factor and\nMultifactor Authentication.

\n
    \n
  • First, authentication. This is the process of verifying the\nvalidity of something; in our case, user credentials/identity. The most\ncommon way to authenticate is: USERNAME and PASSWORD.\nThis is just a single layer (single-factor authentication) and isn’t\nenough to discourage attackers.

  • \n
  • Second, 2FA (Two-factor Authentication). 2FA increases the\ndifficulty for attackers by providing users an additional layer of\nsecurity to accomplish authentication. Common 2FA methods are: TOTP/OTP\n(the One Time Password), Authenticator\nApplications (Bitwarden, KeePassXC,...), and Security Keys (Yubikey). This works similar to ATMs;\nto authenticate the user must provide both knowledge (account\nPIN) and a physical object (bank card).

  • \n
  • Last, but not least, MFA (Multifactor Authentication). Similar to\n2FA, MFA offers users security with the addition of biometrics\n(fingerprint scan, retina scan, facial recognition, and voice\nrecognition). Attackers must overcome the knowledge factor, Possession\nfactor, Inherence/Biometric factor, Time factor, and sometimes Location\nfactor.

  • \n
  • MORE helpful security information.

    \n
  • \n
  • 2FA/MFA Known Attacks.

    \n
      \n
    • Bots\nThat Steal Your 2FA Codes.
    • \n
    • hackers\nare cracking two-factor authentication
    • \n
  • \n
\n',391,0,0,'CC-BY-SA','InfoSec, Typosquatting, SFA, 2FA, MFA, Security',0,0,1), @@ -20487,9 +20495,9 @@ INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hosti (3895,'2023-07-07','What\'s in my backpack',514,'Stache walks through the contents of his work backpack','

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.

\n

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.

\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','In\nthis episode the HPR Audiobook Club discusses the audiobook Murder\nat Avedon Hill by P.G. Holyfield\n
\n

Non-Spoiler Thoughts

\n
\n
    \n
  • 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.
  • \n
\n

Beverage Reviews

\n
\n
    \n
  • Thaj: A delicious regular chocolate malt from the\nlocal ice cream shop \"The Comfy Cow\"
  • \n
  • x1101: Barton\'s 1795
  • \n
  • Pokey 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.
  • \n
\n

Things We Talked About

\n
\n\n

Our Next Audiobook

\n
\n

A\nPrincess of Mars by Edgar Rice Burroughs

\n

The Next Audiobook Club\nRecording

\n
\n

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.

\n

Feedback

\n
\n

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.

\n

As always; remember to visit the HPR contribution page HPR could\nreally use your help right now.

\n

Sincerely, The HPR Audiobook Club

\n

P.S. Some people really like finding mistakes. For their enjoyment,\nwe always include a few.

\n

Our Audio

\n
\n

This episode was processed using Audacity. 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).

\n

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.

\n

Next we use the \"Compressor\" effect with the following settings:

\n
Threshold: -30db\n\nNoise Floor: -50db\n\nRatio: 3:1\n\nAttack Time: 0.2sec\n\nDecay Time: 1.0 sec`
\n

\"Make-up Gain for 0db after compressing\" and \"compress based on\npeaks\" were both left un-checked.

\n

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.

\n

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.

\n

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.

\n

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.

\n

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.

\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','

The show notes

\n\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','

My original blog post on this topic: https://pquirk.com/posts/corruptvideo/

\n
    \n
  • Untruc at Github: https://github.com/anthwlock/untrunc
  • \n
  • Windows version: https://github.com/anthwlock/untrunc/releases
  • \n
  • Arch linux version: https://aur.archlinux.org/packages/untrunc-git
  • \n
\n

Make your donations to:
\nhttps://www.paypal.com/paypalme/anthwlock
\nhttps://vcg.isti.cnr.it/~ponchio/untrunc.php

\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','In\nthis episode the HPR Audiobook Club discusses the audiobooks A\nPrincess of Mars, The\nGods of Mars, and The\nWarlord of Mars by Edgar Rice Burroughs\n
\n

Non-Spoiler Thoughts

\n
\n
    \n
  • Burroughs is kind of verbose, which is symbolic of the time period\nin which it was written.
  • \n
\n

Beverage Reviews

\n
\n
    \n
  • Thaj: Tempting fate with a tall glass of the highly\ntoxic, Dihydrogen\nMonoxide
  • \n
  • x1101: Shipyard\nLittle Horror of Hops Its a very amber IPA
  • \n
  • Pokey: Yellow Tail\nChardonay 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.
  • \n
  • FiftyOneFifty: Funky Pumpkin spiced\npumpkin ale
  • \n
  • Mark: Lagunitas IPA
  • \n
\n

Things We Talked About

\n
\n
    \n
  • Chat Secure secure XMPP,\nThink of the children!!!

  • \n
  • Technology on Barsoom

  • \n
  • Deus Ex Machina much???

  • \n
  • Names in fantasy books

  • \n
\n

Our Next Audiobook

\n
\n

See\nYou At The Morgue by Lawrence Blochman

\n

The Next Audiobook Club\nRecording

\n
\n

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.

\n

Feedback

\n
\n

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.

\n

As always; remember to visit the HPR contribution page HPR could\nreally use your help right now.

\n

Sincerely, The HPR Audiobook Club

\n

P.S. Some people really like finding mistakes. For their enjoyment,\nwe always include a few.

\n

Our Audio

\n
\n

This episode was processed using Audacity. 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).

\n

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.

\n

Next we use the \"Compressor\" effect with the following settings:

\n
Threshold: -30db\n\nNoise Floor: -50db\n\nRatio: 3:1\n\nAttack Time: 0.2sec\n\nDecay Time: 1.0 sec
\n

\"Make-up Gain for 0db after compressing\" and \"compress based on\npeaks\" were both left un-checked.

\n

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.

\n

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.

\n

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.

\n

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.

\n

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.

\n

Attribution

\n
\n

Record\nScratch Creative Commons 0

\n',157,0,1,'CC-BY-SA','mars, audiobook club, fiction, scifi, audiobook',0,0,1); -INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hostid`, `series`, `explicit`, `license`, `tags`, `version`, `downloads`, `valid`) VALUES (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), +(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','

My original blog post on this topic: https://pquirk.com/posts/corruptvideo/

\n
    \n
  • Untruc at Github: https://github.com/anthwlock/untrunc
  • \n
  • Windows version: https://github.com/anthwlock/untrunc/releases
  • \n
  • Arch linux version: https://aur.archlinux.org/packages/untrunc-git
  • \n
\n

Make your donations to:
\nhttps://www.paypal.com/paypalme/anthwlock
\nhttps://vcg.isti.cnr.it/~ponchio/untrunc.php

\n',383,0,0,'CC-BY-NC-SA','video,corrupt,fix,file,linux',0,0,1); +INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hostid`, `series`, `explicit`, `license`, `tags`, `version`, `downloads`, `valid`) VALUES (3921,'2023-08-14','HPR AudioBook Club 23 - John Carter of Mars (Books 1-3)',6516,'In this episode the HPR Audiobook Club discusses the first three books of John Carter of Mars','In\nthis episode the HPR Audiobook Club discusses the audiobooks A\nPrincess of Mars, The\nGods of Mars, and The\nWarlord of Mars by Edgar Rice Burroughs\n
\n

Non-Spoiler Thoughts

\n
\n
    \n
  • Burroughs is kind of verbose, which is symbolic of the time period\nin which it was written.
  • \n
\n

Beverage Reviews

\n
\n
    \n
  • Thaj: Tempting fate with a tall glass of the highly\ntoxic, Dihydrogen\nMonoxide
  • \n
  • x1101: Shipyard\nLittle Horror of Hops Its a very amber IPA
  • \n
  • Pokey: Yellow Tail\nChardonay 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.
  • \n
  • FiftyOneFifty: Funky Pumpkin spiced\npumpkin ale
  • \n
  • Mark: Lagunitas IPA
  • \n
\n

Things We Talked About

\n
\n
    \n
  • Chat Secure secure XMPP,\nThink of the children!!!

  • \n
  • Technology on Barsoom

  • \n
  • Deus Ex Machina much???

  • \n
  • Names in fantasy books

  • \n
\n

Our Next Audiobook

\n
\n

See\nYou At The Morgue by Lawrence Blochman

\n

The Next Audiobook Club\nRecording

\n
\n

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.

\n

Feedback

\n
\n

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.

\n

As always; remember to visit the HPR contribution page HPR could\nreally use your help right now.

\n

Sincerely, The HPR Audiobook Club

\n

P.S. Some people really like finding mistakes. For their enjoyment,\nwe always include a few.

\n

Our Audio

\n
\n

This episode was processed using Audacity. 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).

\n

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.

\n

Next we use the \"Compressor\" effect with the following settings:

\n
Threshold: -30db\n\nNoise Floor: -50db\n\nRatio: 3:1\n\nAttack Time: 0.2sec\n\nDecay Time: 1.0 sec
\n

\"Make-up Gain for 0db after compressing\" and \"compress based on\npeaks\" were both left un-checked.

\n

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.

\n

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.

\n

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.

\n

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.

\n

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.

\n

Attribution

\n
\n

Record\nScratch Creative Commons 0

\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',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','

Links

\n\n\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','

I\'ve been meaning to put down my thoughts about SystemD for the HPR\ncommunity for some while, so here goes.

\n

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.

\n

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.

\n

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.

\n

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.

\n

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.

\n

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.

\n

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!

\n\n',73,99,0,'CC-BY-SA','systemd,linux',0,0,1), @@ -20572,7 +20580,8 @@ INSERT INTO `eps` (`id`, `date`, `title`, `duration`, `summary`, `notes`, `hosti (4006,'2023-12-11','Holiday Challenges Ep 3 SANS Holiday Hack Challenge & KringleCon',160,'Discussing the SANS Holiday Hack Challenge & KringleCon to help you enjoy the holiday season','Holiday\nChallenges Series - Ep 3 - SANS Holiday Hack Challenge with\nKringleCon\n

Since some of the information you are about to hear is time specific,\nI want to let you know that I am recording this near the end of November\nin 2023.

\n

If you missed the first episode, which introduces this series, you\ncan go back and listen to HPR3996

\n

The SANS Holiday Hack Challenge is an interactive online technology\nand hacking game combined with a virtual security conference, beginning\nin the second week of December. By the time this episode drops, it may\nalready be live. You can tour the North Pole conference facilities,\nmeeting people, interactive non-player characters (NPC), and maybe even\nsome villains from Holiday Hack Challenges past, as you solve problems\nand gather clues which you use to help save Christmas.

\n

Everything can be done from within the browser, and did I mention\nthere is a virtual security conference, called KringleCon? Some of the\nbiggest rock stars (and most humble and brilliant people) in\nCyberSecurity speak each year at KringleCon. Many of their talks also\nprovide clues to solving game challenges.

\n

Ed Skoudis and his team (The same people who build SANS NetWars) work\ntirelessly year after year to create the most amazing experience,\ncomplete with custom music! This has become one of my favorite holiday\ntraditions each year. You can learn more about the 2023 challenge by\nwatching Ed\'s Inside SANS Holiday Hack Challenge 2023 YouTube video at\nhttps://www.youtube.com/watch?v=X9Gmdr_CxzQ

\n

You can access this year\'s challenge by visiting sans.org/holidayhack\nor https://www.sans.org/mlp/holiday-hack-challenge-2023/

\n

There, you will learn more about all things Holiday Hack before the\ngame opens in the second week of December. If you want to play now, or\njust get a feel for it, you can access three of the previous years\'\nchallenges right now at the same site.

\n

I am not associated with SANS or the Holiday Hack Challenge in any\nway, other than to have participated for several years now, and I have\nwatched other people learn and grow by taking part in it.

\n

I hope that you have enjoyed this short series. If there are other\nonline challenges you find interesting or informative, I encourage you\nto record a show about them.

\n

Have a wonderful day.

\n',394,0,0,'CC-BY-SA','SANS, KringleCon, holiday, challenge',0,0,1), (3997,'2023-11-28','The Oh No! News.',875,'Sgoti talks about Malware distributed via Google\'s Dynamic Ads and more.','

The Oh No! news.

\n

Oh No! News is Good\nNews.

\n
    \n
  • TAGS: Oh No, News, Threat analysis, InfoSec, Google\nDynamic Search Ads
  • \n
\n
\n

Threat analysis;\nyour attack surface.

\n
    \n
  • Source: Former\nNHS secretary found guilty of illegally accessing medical\nrecords
    \n

    \n
      \n
    • A former NHS employee has been found guilty and fined for illegally\naccessing the medical records of over 150 people.
      \n
    • \n
    • Loretta Alborghetti, from Redditch, worked as a medical secretary\nwithin the Ophthalmology department at Worcestershire Acute Hospitals\nNHS Trust when she illegally accessed the records.
      \n
    • \n
  • \n
  • Supporting Source: Open\nStreet Map link to Redditch Worcestershire.
    \n

  • \n
  • Source: NetSupport\nRAT Infections on the Rise. Targeting Government and Business\nSectors
    \n

    \n
      \n
    • While NetSupport Manager started off as a legitimate remote\nadministration tool for technical assistance and support, malicious\nactors have misappropriated the tool to their own advantage, using it as\na beachhead for subsequent attacks.
      \n
    • \n
  • \n
  • Source: Beware:\nMalicious Google Ads Trick WinSCP Users into Installing\nMalware
    \n

    \n
      \n
    • The threat actors are believed to leverage Google\'s Dynamic Search\nAds (DSAs), which automatically generates ads based on a site\'s content\nto serve the malicious ads that take the victims to the infected\nsite.
      \n
    • \n
  • \n
  • Source: Trojanized\nPyCharm Software Version Delivered via Google Search Ads.
    \n

    \n
      \n
    • Victims who clicked on the ad were taken to a hacked web page with a\nlink to download the application, which turned out to install over a\ndozen different pieces of malware instead.
      \n
    • \n
  • \n
\n
\n

InfoSec; the language\nof security.

\n
    \n
  • Source: Why\nDefenders Should Embrace a Hacker Mindset
    \n
  • \n
\n
\n
    \n
  • Additional Information.\n
      \n
    • What is a \"Data\nBreach\"? 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.
      \n
    • \n
    • What is \"Malware\"?\nMalware (a portmanteau 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.
      \n
    • \n
    • What is a \"Payload\"?\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.
      \n
    • \n
    • What is \"Phishing\"?\nPhishing is a form of social engineering\nwhere attackers deceive people into revealing sensitive information or\ninstalling malware such as ransomware. 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.
      \n
    • \n
    • Social\nengineering (security) In the context of information security,\nsocial engineering is the psychological\nmanipulation 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.
      \n
    • \n
    • What is \"Information\nSecurity\" (InfoSec)? Information security, sometimes shortened to\nInfoSec, is the practice of protecting information by mitigating information risks. It\nis part of information risk\nmanagement.\n
        \n
      • Information Security Attributes: Confidentiality, Integrity and Availability (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.
        \n
      • \n
    • \n
    • What is \"Risk\nmanagement\"? 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.
      \n
    • \n
    • What is a \"Vulnerability\"\n(computing)? 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.
      \n
    • \n
    • What is an \"Attack\nSurface\"? 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.
      \n
    • \n
    • What is an \"Attack\nVector\"? 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.
      \n
    • \n
    • What is\n\"Standardization\"? 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
    • \n
    • What is a \"Replay\nattack\"? 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.\"
      \n
    • \n
    • What is a\n\"Man-in-the-middle attack\"? 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.
      \n
    • \n
    • What is \"Transport Layer\nSecurity\" (TLS)? 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.
      \n
    • \n
    • What is a \"Handshake\"\n(computing)?. 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.
      \n
    • \n
    • What is Security\ntheater? The practice of taking security measures that are\nconsidered to provide the feeling of improved security while doing\nlittle or nothing to achieve it.
      \n
    • \n
  • \n
\n
\n\n',391,74,0,'CC-BY-SA','Oh No News, Threat analysis, InfoSec, Google Dynamic Search Ads',0,0,1), (4005,'2023-12-08','Sgoti\'s reply to multiple shows.',893,'Sgoti replies to a few HPR Shows.','

Sgoti\'s reply to multiple\nshows.

\n

Sgoti replies to a few HPR\nShows.

\n
    \n
  • Tags: Reply show, password managers, lastpass.

  • \n
  • Reply to: hpr3988\n:: Beeper.com
    \n

  • \n
  • Supporting Source: Beeper chat application
    \n

  • \n
  • Supporting Source: Beeper Github page
    \n

  • \n
  • Supporting Source: Work with us at\nBeeper
    \n

  • \n
  • Reply to: hpr3989 :: LastPass\nSecurity Update 1 November 2023
    \n

  • \n
  • Reply to: hpr3994 ::\nLastpass Response
    \n

  • \n
  • Source: The\nTHREE STOOGES - A Plumbing We Will Go
    \n

  • \n
  • Source: Whitest Kids U Know:\nLeg Peeing
    \n

    \n
      \n
    • This was just funny. I found it while searching for, \"why the\nBritish say things like taking a piss\".
    • \n
  • \n
\n

This work is licensed under a Creative Commons\nAttribution-ShareAlike 4.0 International License.

\n',391,0,0,'CC-BY-SA','reply show, password managers, lastpass',0,0,1), -(3998,'2023-11-29','Using open source OCR to digitize my mom\'s book',1847,'How I used open source tools such as gphoto2 and the OCR software tesseract to digitize pages','

To improve the speed of my workflow, I wrote a bash script that uses\nthe open source programs programs gphoto2,\ntesseract, grep and ImageMagick\nto digitize my mom\'s 338 page book. Here is the link to the script:\nhttps://github.com/deltaray/ocr-script

\n',194,0,0,'CC-BY-SA','ocr,opensource,grep,scripts,programming',0,0,0); +(3998,'2023-11-29','Using open source OCR to digitize my mom\'s book',1847,'How I used open source tools such as gphoto2 and the OCR software tesseract to digitize pages','

To improve the speed of my workflow, I wrote a bash script that uses\nthe open source programs programs gphoto2,\ntesseract, grep and ImageMagick\nto digitize my mom\'s 338 page book. Here is the link to the script:\nhttps://github.com/deltaray/ocr-script

\n',194,0,0,'CC-BY-SA','ocr,opensource,grep,scripts,programming',0,0,1), +(4002,'2023-12-05','Today I learnt - 2023-11-24',477,'Some odds and ends I learnt today','
\n

What\'s this?

\n

I enjoy finding out about things. Now I\'m retired (I have been for 14\nyears), I have time to research subjects I find interesting. So I\ndo!

\n

The HPR project is going through a phase where the queue can get very\nlow, so I thought having a subject where I could fire off short shows\nfrom time to time would help with this. Maybe we can make a series where\nothers who like the idea can contribute when the mood takes them!

\n

My plan is to keep details to a minimum and provide links to sources\nof more information if you\'re someone who likes to dig deeper!

\n

TIL 1 - is it learnt\nor learned?

\n

I discovered that both are acceptable. Both are the past tense (and\npast participle) of the verb \"to learn\":

\n
    \n
  • learnt is an older form which is more common in British\nEnglish
  • \n
  • learned is more common in US English, and is becoming more\npopular in the UK
  • \n
\n

Links

\n
    \n
  • Grammarist:\nLearned vs. learnt
  • \n
  • BBC\nAsk About English
  • \n
\n

TIL 2 - the French word\nfor piggy bank

\n

I watch a YouTube channel from a Canadian woodworker who produces\nEnglish and French versions of his episodes. His latest one is about\nmaking a wooden piggy bank, or tirelire in French.

\n

I learnt French at school (though I wasn\'t much good at it), but have\nnever come across this word. My questions are:

\n
    \n
  • Where does it come from?
  • \n
  • How do you say it?
  • \n
\n

The Wiktionary page below has answers to both.

\n
    \n
  • It\'s of onomatopoeic origin (representing the rattling of\ncoins).
  • \n
  • There\'s audio on the page showing how to say it (as well as the IPA\nversion [International Phonetic Alphabet], see below).
  • \n
\n\n\n

TIL 3 - how to\npronounce IPA coded words

\n

I actually learnt about this a while ago, but I thought now would be\na good time to share.

\n

The IPA form of tirelire is /tiʁ.liʁ/ (I\nincluded the enclosing slash delimiters which aren\'t part of the IPA but\nhave significance; see the IPA Wikipedia page for details). I have seen\nthese symbols for years but have never managed to decode them\nreliably.

\n

A few months ago I wondered how to deal with them reliably (and\neasily). There are many sites offering to transcribe English (and other\nlanguages) to IPA, a few of which are free. I only found one that would\nattempt to speak IPA, and that is IPA\nReader.

\n

Paste the IPA into the form, select a reader voice, and click \"Read\".\nSome of the voices seem a bit odd. I settled on \"Brian\" for British\nEnglish, and it seems fine.

\n\n
    \n
  • International\nPhonetic Association - creators of the International\nPhonetic Alphabet
  • \n
  • IPA Reader
  • \n
\n
\n',225,0,1,'CC-BY-SA','learning,learned,learnt,TIL,English,French,phonetics,IPA,tirelire',0,0,0); /*!40000 ALTER TABLE `eps` ENABLE KEYS */; UNLOCK TABLES; @@ -21496,4 +21505,4 @@ UNLOCK TABLES; /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; --- Dump completed on 2023-11-23 20:27:18 +-- Dump completed on 2023-11-24 19:34:03