skip to main content - dyslexic font - mobile - text - print

Hacker Public Radio

Your ideas, projects, opinions - podcasted.

New episodes Monday through Friday.


Welcome to HPR the Community Podcast Network

We started producing shows as Today with a Techie 9 years, 3 months, 24 days ago. Our shows are produced by listeners like you and can be on any topic that "are of interest to hackers". If you listen to HPR then please consider contributing one show a year. If you record your show now it could be released in 4 days.

Call for shows

We are running very low on shows at the moment. Have a look at the hosts page and if you don't see "2015-??-??" next to your name, or if your name is not listed, you might consider sending us in something.

hpr queue showing an graph showing how few shows we have
    Use_the_web_form_for_shownotes
HPR-fin.wav

There are files ready to process on the FTP server.

Latest Shows


hpr1695 :: 46 - LibreOffice Calc - The Object Model and Using Templates

Ubderstanding the Object Model and how Templates work.


Hosted by Ahuka on 2015-01-30 and released under a CC-BY-SA license.
Listen in ogg, spx, or mp3 format. Series: LibreOffice | Comments (0)

As I said in the last tutorial, Templates can be understood as a container for a number of settings, most particularly Styles. This follows the object model, which is a lot like those Russian dolls inside of each other. The File for your spreadsheet is an object, and it contains individual Sheets which are objects. Each Sheet contains Cells which are objects. And each Cell contains various Characters which are objects, which can be used to represent numbers, formulas, addresses, labels, etc. Objects exhibit two features we always want to keep in mind. First, objects have properties that are particular to the kind of object. The properties of a file might include who the author is, where the file resides on the system, any access restrictions (like making the file password-protected), and so on.

The properties of each sheet might include things like the name of the sheet, the orientation (landscape vs. portrait), headers and footers, etc. Then the properties of the cell might include the type of cell and how it is formatted (text, currency, general number, etc.). And finally the properties of the Character include the font family, font style, font size, and so on.


hpr1694 :: My APOD downloader

My simple Perl script to download the Astronomy Picture of the Day each day


Hosted by Dave Morriss on 2015-01-29 and released under a CC-BY-SA license.
Listen in ogg, spx, or mp3 format. Comments (0)

My APOD Downloader

Astronomy Picture of the Day

You have probably heard of the Astronomy Picture of the Day (APOD) site. It has existed since 1995, is provided by NASA and Michigan Technological University (MTU) and is created and managed by Robert Nemiroff and Jerry Bonnell. The FAQ on the site says "The APOD archive contains the largest collection of annotated astronomical images on the internet".

The Downloader

Being a KDE user I quite like a moderate amount of bling, and I particularly like to have a picture on my desktop. I like to rotate my wallpaper pictures every so often, so I want to have a collection of images. To this end I download the APOD on my server every day and make the images available through an NFS-mounted volume.

In 2012 I wrote a Perl script to perform the download, using a fairly primitive HTML parsing method. This script has been improved over the intervening years and now uses the Perl module HTML::TreeBuilder which I believe is much better at parsing HTML.

The version of the script I use myself also includes the Perl module Image::Magick which interfaces to the awesome ImageMagick image manipulation software suite. I use this to annotate the downloaded image with the title parsed from the HTML so I know what it is.

The script I am presenting here is called collect_apod_simple and does not use ImageMagick. I chose to omit it because the installation of this suite and the related Perl module can be difficult. Also, I do not feel that the annotation always works as well as it could, and I have not yet found the time to correct this shortcoming.

A version of the more advanced script (called collect_apod) is available in the same place as collect_apod_simple should you wish to give it a try. Both scripts are available on Gitorious under the link https://gitorious.org/hprmisc/hprmisc.

The Code

The script itself is described in the full show notes, available here: http://hackerpublicradio.org/eps/hpr1694_full_shownotes.html



hpr1692 :: Boulevard Brewing Company "Sample Twelve"

FiftyOneFifty explores nature and Kansas City brews while celebrating juke box heroes


Hosted by FiftyOneFifty on 2015-01-27 and released under a CC-BY-SA license.
Listen in ogg, spx, or mp3 format. Series: 5150 Shades of Beer | Comments (0)

Unrelated tech stuff: Recently, Knightwise showed me a link to use a Raspberry Pi as a streaming music box, much like a Sonos player http://www.woutervanwijk.nl/pimusicbox/ . I looked at the enclosures people had come up with and saw transistor radios from the 40s and 50s which were true works of art, but don't provide a great selection of controls. It was then I remembered seeing a 1950's juke box wallbox control ( http://www.ebay.com/sch/i.html?_from=R40&_trksid=p2050601.m570.l1313.TR2.TRC1.A0.H0.Xjuke+box+wallbox&_nkw=juke+box+wallbox&_sacat=0 ) in a local "antique" shop. I'm never sure when addressing our European friends what parts of the American experience they are familiar with, but in the 40s to the 70s, in just about every American diner with a jukebox, at every booth there would be a remote console with a coin slot. Usually, you would have card tiles that could be rotated by a knob or by tabs, and each song would have a code made up of a letter and a number. Dropping in the required currency and making a selection would cause the song to be played on the jukebox (and sometimes on a set of stereo speakers in the wall unit). As you may see from the eBay link in the shownotes, wall boxes progressed from just a dozen titles in the 40s to far more complex systems, some with digital read out in the 80s. Most were marvels of late art deco design.

My parents were far to frugal to let me drop coins into one of these pioneering marvels of analog networking, but thanks to a couple modders who have tied their panels into a Raspberry Pi, I can give you a general overview of how these units communicated with the central jukebox via primitive serial protocols. First off, if you have the expectation of following in Phil Lavin's or Stephin Devlin's footsteps, be prepared to pay more for a wallbox certified to be ready to connect and work with the same brand's jukebox (while all wallboxes seemed to communicate by serial pulse, each company employed a different scheme). Wallboxes of all conditions seem to start around $50 on eBay, but can go into the thousands. As I said, all of the wallboxes are marvels of art deco design if they have no other purpose than to occupy your space and become a conversation piece. Right now on eBay, there is an example of a wallbox converted into a waitorless ordering system (this looks like it is from the 70s, only now do we have this functionallity with iPads at every table). In other words, where once was "Stairway to Heaven", now there was "Steak and Eggs: $4.95". The add on plaque covering the face of the unit identified the system as T.O.B.Y., for Totally Order By Yourself. I could find nothing on the tech on Google, but I really hope it was successful, because it truly would have been a master hack.

First step. most wallboxes were powered from the jukebox, you can't just plug them into 120v alternating current, you will likely need a 25 or 30v adapter (research your model). If everything works, you should be able to drop your quarter, punch a letter number combo (which will stay down), then a motor will whir and you selected keys will punch back out. What happens in the background, the motor will cause an energized arm to sweep in a circle, making a circuit with electrodes in it's path. They keys selected determine how many pulses go down the output line, like a finger dialing a rotary phone.

Each manufacturer used a different code. In the case of Steve Devlin's Rowe Ami, there would be an initial set of pulses for the number, a pause, then a more complex set for characters A-V (earlier wallboxes had 10 letters and 0-9 to create 100 selections, later boxes had as many as 200). Phil Lavin's Seeburg uses pulses corresponding to two base 20 digits, both protocols were discovered through trial and error. Each gentleman uses a different method to protect his Pi from overvolt. Devlin uses a 3.5v voltage regulator, which also makes the pulses appear more "square", Lavin uses an optical relay to electrically separate the Pi from Seeburg console entirely.

Both Lavin and Devlin use there wallboxes to control Sonos streaming players. My idea is more flexible, I'd like the Pi to be able to launch either streaming podcasts, or play the last ep of a selection of podcasts, or launch various home automation processes. I didn't think this talk warranted it's own podcast yet because it is clearly an unfinished idea, but I thought this application of old tech was too cool to wait until I was actually motivated to do something with it. If I get a wallbox, I might be inclined instead to connect each button to a momentary switch and wire each in turn to one of the Pi's 40 I/O pins for an even more flexible instruction set.

http://wallbox.weebly.com/index.html http://phil.lavin.me.uk/2013/11/raspberry-pi-project-a-1960s-wallbox-interfaced-with-sonos/

Boulevard brewing Company "Sample Twelve" http://www.boulevard.com K.C. Mo

This is a unique marketing campaign from my favorite K.C. brewer. The twelve pack contains four varieties of beer, two are established Boulevard offerings, and the other two are bottled with non gloss "generic" labels that appear to have been hand typed. In other words, we are to believe we have been sold two prototype beers for our approval.

80 Acre "Hoppy" Wheat Beer (the quotes are mine). The graphics consist of an old Farmall tractor towing a pickup trailer carrying a gigantic hops bud. From this presentation, one would expect an oppressivly hoppy beer, fortunately for the hop timid this is a rather satisfying abulation that only registers 20 IBUs. I detect a distinct citrus taste, so I suspect Citra or related hops but Boulevard is keeping the exact specs closer to the vest than some other brewers. The brewers escription of the beer may be found here (link in the shownotes) http://www.boulevard.com/BoulevardBeers/80-acre-hoppy-wheat-beer/ Pours corn silk yellow with lots of head but not a lot of lacing. Damp wheat aroma.

Oatmeal Stout: This is the first of the "generic" label "test" beers. Pours opaque dark brown with a very small lite brown head that disappears. Milk chocolate aroma. Thin mouth feel, choclately after taste that lasts more than a flavor washing over your tongue (i.e., you drink it, then you taste the chocolaty/coffee like essence). For locally brewed Oatmeal Stouts, I'd give the nod to Free State in Lawrence KS, but I wouldn't turn down the brew from K.C. if they decide to produce it. As it is not yet an "official", they don't document this beer on the Boulevard web page.

Unfiltered Wheat Beer: There is a graphic of a farmer gathering wheat bundles to build shocks, surrounded by hops vines. Pours the color of cloudy golden wheat straw, lots of persistent head that leaves little lacing. Slight biscuity aroma. Distinctly more citrusy than the 80 Acre. Not much malt and just a little hops bitterness. Despite the name, you can safely drink this beer to th bottom without winding up with a mouthful of particulates.

Mid Coast IPA: The last "experimental" beer. At 104 IBUs, this is where all the hops you expected from 80 Acre went. Pours wheat straw golden, thick white head that leaves little lacing, with a hoppy aroma. Even at 104 IBU, its has a slight sweet taste and doesn't seem to be one of those "my hops can beat up your hops beers". The label states: "The hoppiest thing we have ever brewed. Pretty nervy for a bunch of midwesterners". It's a great complement to the baked ham and spicey glaze I'm having for dinner (link in the show notes, even though I had to improvise somewhat). http://www.tasteofhome.com/recipes/apple-cider-glazed-ham

Before I leave you, I wanted to play the sounds of dusk from my new homesite. I can think of no more eloquent argument why living on the lake is better than living in town.

Note: Recorded with 2.4Ghz Creative Labs GH0220B headset. I am not happy with the result.


hpr1691 :: Arduino 101 Arduino IO

In this episode, learn how to read and write input and output from the Arduino.

Hosted by klaatu on 2015-01-26 and released under a CC-BY-SA license.
Listen in ogg, spx, or mp3 format. Comments (2)

In this two-part series, Klaatu introduces you to the Arduino. First, learn about the breadboard and how to make electricity course through it in order to power your very own simple circuit.

To follow along with what Klaatu is talking about, refer to these two graphics:

And here are diagrams of the simple circuits that Klaatu constructs.

image: a diagramme of the simple circuit in todays show

The simple code to reset the servo:

#include <Servo.h>
Servo myservo;

int servoPosition;

void setup()
{
  myservo.attach(13);
  myservo.write(90);
}

void loop() {}

And the code that responds to input:

#include <Servo.h>
Servo myservo; 

int servoPosition;
int servoMax = 180;
int servoMin = 0;

int value;
int valMax = 600;
int valMin = 50;


void setup()
{
  myservo.attach(13);
}

void loop() 
{
  value = analogRead(0);
  servoPosition = map(value, valMin, valMax, servoMax, servoMin);
  servoPosition = constrain(servoPosition, servoMin, servoMax);
  myservo.write(servoPosition);
}

And here is a bonus diagramme that you can try to create, using a light sensor, servo, and resistor.

image: homework

hpr1690 :: Arduino 101 Breadboard

learn how to use a breadboard.

Hosted by klaatu on 2015-01-23 and released under a CC-BY-SA license.
Listen in ogg, spx, or mp3 format. Comments (1)

In this two-part series, Klaatu introduces you to the Arduino. First, learn about the breadboard and how to make electricity course through it in order to power your very own simple circuit.

To follow along with what Klaatu is talking about, refer to these two graphics:

And here are diagrams of the simple circuits that Klaatu constructs.

image: a diagram of the simplest circuit in todays show

image: a diagram of the switched circuit in todays show


hpr1689 :: Linux Voice magazine at OggCamp

Another interview from OggCamp with the guys from Linux Voice


Hosted by beni on 2015-01-22 and released under a CC-BY-SA license.
Listen in ogg, spx, or mp3 format. Series: OggCamp | Comments (0)

Corenominal and Beni talking to the guys of the newly founded Linux Voice magazine. It's a British Linux publication that's less than a year old.

We talked to them about why you would found a magazine these days, why their magazine is still relevant in the digital age and why kinds won't beat them at mario cart.

Linux Voice Cover

You find their magazine here:

http://www.linuxvoice.com/

and their superb Linux postcast by the same name here:

http://www.linuxvoice.com/category/podcasts/


hpr1688 :: Some useful tools when compiling software

Useful tools I found when compiling software, and creating a debian package.

Hosted by Rho`n on 2015-01-21 and released under a CC-BY-SA license.
Listen in ogg, spx, or mp3 format. Comments (0)

introduction

Hi this is Rho`n and welcome to my first submission to Hacker Public Radio. I have been working on an application using the Python programming language with the Enlightenment Foundation Libraries (EFL) libraries for the GUI interface. After acquiring a new laptop and installing a fresh copy of Ubuntu on it, I decided to set up the build environment I needed to be able to work on my project. I have been building from source the EFL libraries along with the Python-EFL wrapper libraries. For the last couple machines on which I have built the software, I would use the standard configure, make, and make install procedure. This time around I decided to create a debian package to use for installing the libraries. It had been a few years since I had created a .deb, so I googled for some tutorials, and found mention of the checkinstall program. After reading a couple blog posts about it I decided to try it out. checkinstall is run instead of "make install" , and will create a .deb file, and then install the newly created package.

cut and tr commands

To help speed up the configure process, I had previously created a file from my other builds that is a grep of my history for all the various "apt get install" commands of the libraries the EFL software needs to compile. Since my current operating system was a freshly installed distribution of Ubuntu, I needed to install the build-essential package first. After looking through my install file, and I decided to create a single apt-get install line with all the packages listed, instead of running each of the installs seperately. I knew I could grep the file, and then pass that to awk or sed, but my skill with either isn't that great. I did a little searching to see what other tools were out there and found the cut command and the tr command. Cut lets you print part of a line. You can extract set a field delimeter with the -d option and then list a range of fields to be printed with the -f option. The tr command can replace a character. I used this to replace the new line character that was printed by the cut command to generate a single line of packages which I piped to a file. A quick edit of the file to add "sudo apt-get install" at the beginning, add execute permissions to the file, and now I have a nice, easy way to install all the needed libraries.

apt-file and checkinstall

At least that was the idea. After installing the libraries, and running configure, I still received errors that libraries were missing. The machines from which my list of libraries was generated, had all been used for various development purposes, so some needed libraries were already installed on them, and so their installation had passed out of my history. Besides echoing to standard out the file configure can't find, it also creates a log file: config.log. Between the two it is relatively easy to figure out what library is needed. Often the libraries needed included their name in the .deb which has to be installed, and finding them is easy with an apt-cache search and grep of the library name. The hardest ones to find were often the X11 based references. In this case, I needed the scrnsaver.h header file. After googling, I found a reference to the needed package (libxss-dev) on Stack Exchange. The answer also showed how to use the apt-file command to determine in which package a file is included. I wish I had run into this before, there a few times where it took a number of searches on the internet to figure out which package I needed to install, and "apt-file find" would have saved time and frustration. A very handy tool for anyone developing on a debian based distribution. As it turns out, that was the last dependency that needed resolved. After a successful configure, and successful compile using the make command, I was ready to try out checkinstall. Running sudo checkinstall, brings up a series of questions about your package, helping you fill out the needed .deb meta-data. I filled out my name and email, name for the package, short description of the package, and let everything else go to the suggested defaults. After, that hit enter and checkinstall will create a debian package and install it for you. If you run "apt-cache search <name of package>" you will see it listed, and "apt-cache show <name of package>" will give you the details you created for the package. There are warnings on the Ubuntu wiki not to use this method for packages to be included in an archive or in a ppa. It does work great for a local install, and would use it to install on machines on my local network.

conclusion

After a short side trip into development setup, I'm back writing my application on my new laptop. While I am a big fan of binary packages, Debian being the first GNU/Linux distribution I ever used, sometimes you need to dive in and compile software from source. For me running configure, make, make install has been the easiest way to do this, and these days it usually isn't too difficult to get even moderately complex applications and libraries to build. The most tedious part can be resolving all the dependencies. Now, with apt-file in my tool belt, it will be even faster and easier. I will also be using checkinstall for future compiles. I do like being able to use package management tools to install, and un-install software.

I hope others find these tools useful. I have posted links in the show notes to the pages about cut, tr, apt-file and checkinstall that led me to these tools. If you've made it this far, thanks for listening to my first post to HPR. As Ken Fallon points out, it's not an HPR episode until you have uploaded it to the server. So let those episode ideas flow from your brain, into your favorite recording device, and up to the HPR server. Let's keep HPR active, vibrant, and a part of our lives for years to come.


hpr1687 :: Podcast recommendations

Thaj goes through his podcast list and shares the shows that he finds to be the most interesting.

Hosted by Thaj Sara on 2015-01-20 and released under a CC-BY-SA license.
Listen in ogg, spx, or mp3 format. Series: Podcast recommendations | Comments (0)

Linux / Floss Podcasts

Pop Culture General Podcasts

  • Podculture: Local folks who talk about nerdy things. (http://www.podculture.com/feed/)
  • The Mindrobbers: This show is run by a writer from my gernal area named Scott Carelli. I orginially heard of him through Podculture. I've followed his various podcasts for many years and this is the most recent incarnation. Although sometimes I don't always agree with his opinions I do always look forward to hearing them. (http://www.mindrobber.net/feed/)
  • Trekcast: My first undying love in this world is Star Trek. (http://trekcast.podbean.com/feed/)
  • The Doctor's Companion: Another podcast by Scott Carelli and gang. Good American centreic view of Doctor Who, another of my favorite shows. (http://www.thedoctorscompanion.us/?feed=rss2)
  • The Babylon Podcast: This show isn;t in production anymore, but if you are a fan of Babylon 5 (which I am) this is a great show that breaks down each episode, and interviews many of the stars from the show. (http://www.babylonpodcast.com/category/shows/feed/)
  • Fear the Boot: A great tabletop role playing game podcast (http://www.feartheboot.com/ftb/?feed=rss2)
  • Hiyaa Martial Arts Podcast: Must listening for martial artists (especially of the chinese martial arts persuasion). There are very few good martial arts podcasts out there that are not style specific. This fits the bill. One of the host practices the same style of kung fu that I do (although through a different branch of the family tree) and it's nice to see that perspective on other arts. (http://feeds.feedburner.com/HiyaaMartialArtsPodcast)
  • This American Life: NPR.. used to be an addict. (http://feeds.thisamericanlife.org/talpodcast)
  • Unfilter: Jupiter Broadcasting's version of No Agenda. I used to listen to No Agenda but I find that it has become too long, and they tend to go off the deep end on some of their annalysis in my opinion. I find Unfilter to be a little more grounded, and it's an hour and a half once a week. I'll still listen to No agenda from time to time, but not regularly since I found this. (http://www.jupiterbroadcasting.com/feeds/unfilterogg.xml)

Ham Radio Podcasts

Science Podcast

Buddhism

I listen to a lot of random budhism podcasts but this is the must listen to.

  • Buddhist Geeks: Modern take on culture, science and society's impact on Budhism. Tends to be academic, but I enjoy it. (http://feeds.feedburner.com/BuddhistGeeksPodcast)
  • Vedic Mythology and Mantras Podcast: While not Buddhist specifically I have always loved Vedic mythology and Indian music. In my mind the relationship between the Vedic traditions and Buddhist are similar to Judaism to Christianity. This podcast gies a short mythological story and a chant that goes along with it. It's no longer being produced but it has lots of episodes to listen to. (http://www.puja.net/wordpress/category/mythologypodcast/)

TWiT Shows


hpr1686 :: Interview with Joel Gibbard of OpenHand

An interview with Joel Gibbard founder of the prize winning Openhand project

Hosted by Steve Bickle on 2015-01-19 and released under a CC-BY-SA license.
Listen in ogg, spx, or mp3 format. Series: Accessibility | Comments (0)

This show is an interview with Joel Gibbard founder of the OpenHand project. The interview was recorded on my phone which unfortunately created a few glitches. I've cleaned the audio up as best I can. Although frustrating, the occasional glitches have not caused anything to be missed that cannot be inferred from the context of the recording.

photo of the hand

After creating an artificial hand for his degree project Joel Gibbard wanted to continue the work on the hand with the goal of producing a workable prosthetic hand for $1000, so he launched the OpenHand project with a succesful IndieGoGo fundraiser. In this interview we learn more about the Dextrus hand, the project's progress to date, and hear of Joel's vision of affordable prosthetics for amputees worldwide.

For a short 4 minute introduction to the project see Joel's video at

The openhand designs and more information are available at