Book review - Geography of Genius

From: Phil Shapiro 
Here's a new book review I created on my Linux laptop. 

An interesting question to ponder - Is Chattanooga poised to be a city of great creativity? With 
10 gig municipal fiber on its way -- it may well be heading in that direction. In my visits to Chatt, 
I've been impressed with the quality of the local civic leaders, foundations, library, makerspace, etc. 

Open source, of course, is the foundation for any city that wants to move itself forward. 


Chatt library owns one of copy of the above book. You can place it on reserve to be the next 
person to sign it out. 


Phil Shapiro, 

"Wisdom begins with wonder." - Socrates 
"Learning happens thru gentleness." 

Chatt library in the national news on

From: Phil Shapiro 


Phil Shapiro, 

"Wisdom begins with wonder." - Socrates 
"Learning happens thru gentleness." 

LibraryBox in Google Summer of Code

From: Jason Griffey 
More awesome open-source fun! LibraryBox was asked to be one of the
projects included in the Berkman Center=E2=80=99s Google Summer of Code ini=

Students work on open source, get paid by google. What a world!



Nerdy Post: LD_PRELOAD and a Shell to C program

I had a desire, or a nerdy, geeky need to create this library that overrides:

* int execv(const char *path, char *const argv[]);
* int execvp(const char *file, char *const argv[]);
* int execve(const char *path, char *const argv[], char *const envp[]);

Upon initialization, all original function pointers are saved via the  
constructor, as defined here [1]

When a given overloaded function is called, the values of argv are  
printed to stderr, prefixed with the called file or path.

I built it as an RPM, with included source, signed by my RPM signer  
key, and put on a remote repository. I also included a repository RPM  
to help the ease of use of this repo. It resides at

I'll work on getting it into github.

To use:

1) cd /tmp
2) wget $repo/gonophnet-generic-1.0.0-1.x86

Help with Python programming assignment

From: "Alex Smith (K4RNT)" 
I normally wouldn't ask for help like this, but I'm getting something
fundamentally wrong with my use of the regular expressions library in
Python 2.7. Please help!

My project is to develop a simple web scraper that retrieves the numbers
from an HTML, only the numbers, adds them together, and returns the result.

For some reason, my use of the and re.findall() commands are
producing runtime errors.

Any help would be much appreciated.

# import re

import urllib

from BeautifulSoup import *

> url =3D raw

Topeka public library now has their gig internet installed

From: Phil Shapiro 
It would be so much fun to do some library-to-library projects making use of all that bandwidth -- 
with the open source community leading the way... 




Phil Shapiro, 

"Wisdom begins with wonder." - Socrates 
"Learning happens thru gentleness." 

New book - Git for Teams

From: Phil Shapiro 

This new book would be good to request as a purchase for the Chatt public library.

FWD: CQ HAMS- Second call for HTML form writers, help needed

From: Rod-Lists 
If you have HTML,CSS, and Javascript skills and would like to help the Emergency Comm and Ham communities, this is for you.


----- Forwarded Message -----

      On Sunday, September 20, 2015 11:55 AM, " [Winlink

Teen maker lab opening at Memphis Central Public library

From: Phil Shapiro 

This is great news. Please share with anyone you know in the Memphis area. 

CLOUD901 is a state-of-the-art learning lab, free for teens. Memphis Public Library. Follow @ JeremyOKeeffee # makermovement 



Phil Shapiro, 

"Wisdom begins with wonder." - Socrates 
"Learning happens thru gentleness." 

Job opportunity in NYC

From: Nate Hill 
I miss you, Chattanooga!

I know I'm opening myself up to ridicule by posting a job in NYC on
Chugalug, but hey I can live with that.

I'm up here in NY running the Metropolitan New York Library Council now,
and I'm hiring a Digital Services Coordinator.  This is a *really cool*
opportunity.  I'm looking for a developer with some chops, but also someone
who can organize folks and help create collaborations, collisions, and
opportunities between digital library projects and the rest of the civic
activist / arts / creative technology communities.  Info below.


The Metropolitan New York Library Council (METRO) is seeking qualified
applicants for the position of Digital Services Coordinator.

The Digital Services Coordinator will support Digital Culture of
Metropolitan New York (DCMNY), an online collection hosting service for
members of the Metropolitan New York Library Council. DCMNY is currently
powered by Islandora; the Digital Services Coordinator will need to be
comfortable with Linux, Fedora Commons, Drupal, and custom PHP
modifications. The ideal candidate will be confident with this technology
stack and is up to date on other frameworks and repository solutions (e.g.
Apache SOLR, Ruby/Rails, Blacklight, Hydra). She or he will make
recommendations and lead a migration to a different platform should this be

METRO=E2=80=99s staff of 15+ people hosts classes and events for our member=
The Digital Services Coordinator will also collaborate with the METRO staff
to maintain the technical infrastructure for the office and community
space. This support includes but is not limited to: wireless network, VOIP
network, hardware/software support, technology purchasing, and Google apps.

Finally, the Digital Services Coordinator will have an outward-facing role
at METRO; she or he will engage with the New York/Westchester technology
community beyond the library world. Civic hacking, big data, data literacy,
physical computing, the IoT, and gigabit fiber networks are topics that
should get you excited and light you up with new ideas. This outward-facing
role will lead to new initiatives, new opportunities, and new perspectives
at METRO. The Digital Services Coordinator will be central to their design
and implementation.

The ideal candidate is a curious, creative, and communicative technologist
who will be responsible for supporting and developing a wide variety of
services at METRO. Vision and leadership come from all levels of this lean
organization, so the ideal Digital Services Coordinator will combine
humility and grace with expertise and authority. She or he identifies as a
capable programmer and believes in beautiful, concise, and well-commented

The Digital Services Coordinator will have some opportunity to work
remotely, but will need to be on site regularly in our space on 11th street
in Manhattan as well. METRO is a fun and collaborative workplace full of
energy and enthusiasm.

METRO offers a competitive salary and excellent benefits. Salary is
commensurate with experience.

METRO is an equal opportunity employer. To apply, please send a .pdf copy
of your resume and cover letter along with any other material you would
like considered part of your application to



METRO is the largest of nine library councils in the state of New York,
with METRO serving all of New York City and Westchester County. These
councils were founded in the 1960s to facilitate the sharing of resources
between different types of libraries and archives: academic, public, art,
museum, corporate, and more. In the past, programmatic efforts have been
primarily focused on the discovery and delivery of physical materials.
Today, METRO is increasingly oriented toward the digital, in work ranging
from collaborative digitization projects that engage our diverse membership
to the administration of the Empire State Digital Network, a service hub of
the Digital Public Library of America. In addition, METRO offers a wide
variety of classes, lectures, events, and other professional development

METRO aims to serve as a laboratory and experimental space for our growing
membership, combining new developments in librarianship with emerging
technologies drawn from parallel fields. The Digital Services Coordinator
will help drive this innovation.

Nate Hill

In case you haven't met Jason Griffey yet

From: Phil Shapiro 
Hi Chugalug community, 

In case you haven't met Jason Griffey yet, he is a library luminary on the national (and international) scene, 
but more importantly he is a very talented tech innovator with his LibraryBox project. 

Meet him in this recent video. 

Yup, he's right here with us in the Chugalug community, too. 



Phil Shapiro, 

"Wisdom begins with wonder." - Socrates 
"Learning happens thru gentleness." 

List Activity

From: Dan Lyke 
On Tue, Apr 28, 2015 at 1:48 PM, Jonathan Calloway
> Is it me or has the list been more quiet than usual recently?

... too quiet ...

So on my end:

* My irrigation controller should be ready to deploy, I just need to
either write the systemd config file to run it on my server and
connect a few wires up.

* Then I need to figure out how to rework my CMake build to best
extract the functionality of the applications I'm writing with my C++
helper library from the build of that library, so that I can start
publicizing it. That library does things like wraps the Perl
compatible Regex library, has a basic ORM wrapper for SQLite and
PostgreSQL, and includes a quick and easy way to write internet
servers, including HTTP servers.

* I'd love to get back to my facial recognition and photo
classification project.

* And I'm trying to figure out how to get paid for doing fun
interesting future-looking stuff again. Rather than what I'm doing.
Which is driving me nuts.

OT maybe: advice wanted on particular Android phones.

From: rdflowers 

I have run into a $20 ZTE Whirl2 deal around here. I also got a $35  
for a Moto E and a month service included, if I use my existing #.

The ZTE runs Android 4.3 .

This Moto E runs Android 5.0 .

I would appreciate any insight and experience related to these phones,  
and especially regarding rooting them, and regarding developing apps  
for them ( especially if it can be done not-in-java, but even if it  
must be -- python 3 would be ideal ).

Can one or both be rooted/developed on -- without major risk of bricking them?

Also, and finally, what Android simulators do any of you fine folks like?

I ( because of $ ) don't have email access except at the library, but  
I get here every couple of days or so. Phone or text anytime would be  
great ( 423 653-9715 ), and would increase the appreciation points  
even further, and would be quicker. Either deal could go away soon,  
but especially the Moto E.

Search engining eats my limited access time very quickly, or I would  
do that more instead of asking.

Thanks for any help you can give me !
R. D. Flowers, Chattanooga, TN, USA

[OT] Outernet

From: Chad Smith 
I'm sure there's some open source / libre software being used here, so
somewhat on-topic....

You can help test a project to bring the best content of the Internet to
those who don't have the Internet.  It's like a public library for the
world.  It's called Outernet

(Copied from the website's about in plain text to save the interested
parties a click)

Announcing an opportunity to receive complimentary hardware from Outernet
in exchange for providing ongoing feedback on the functionality of said

Join the waitlist here. -

(That's the link they gave me, I have no idea if that is any type of
referral link tracking thing, but my spot in line is locked in, they said,
so I'm not hyping this out of selfishness.)

We have our first piece of hardware and we need help testing it! Outernet
will be releasing its first piece of consumer hardware for sale in Q2 of
2015. This hardware is called =E2=80=9CPillar." Prior to this public releas=
Outernet wishes to test Pillar in various field locations around the world.

Think of Pillar as combining your Wi-Fi router with your cable box but
serving a different purpose. Pillar is designed to work where Internet
access is unavailable either due to cost, poor service/speed, or just lack
of coverage altogether.

Once set up, Pillar receives Outernet=E2=80=99s free broadcast from space, =
includes content as varied as all of Wikipedia, news, weather, games,
music, video, ebooks, courseware, software=E2=80=A6 any digital file can be=
over Outernet and received by Pillar. Pillar stores these files on its
internal drive. Anyone can connect to the Pillar through its Wi-Fi hotspot.
Once connected, users view the files Pillar has received in any browser and
can save them to their smartphone, tablet, or computer.

Pillar is like an offline version of the Internet. You can see a video of
Pillar=E2=80=99s cousin, Lantern, here. The only difference between the two=
 is that
Pillar has no solar panels, more storage, and Pillar needs to be attached
to a satellite dish to receive Outernet=E2=80=99s signal (but it gets more =
than Lantern).

*- Chad W. Smith*

HTTP Server Architecture

From: Dan Lyke 
So I'm building a better irrigation controller, one that I can
manipulate with my smart phone.

An irrigation controller needs to do timing stuff, keep track of
state, so I need a daemon of some sort. And as soon as I get there, I
start to think "well, rather than having CGIs that talk to the daemon,
why don't I just make it serve HTTP".

And then I think: Rather than copying and pasting one of my older HTTP
servers, why don't I try to make something that's easy to re-purpose.

So I have a C++ object that owns the select loop. Attach servers to
ports, no problem. Server takes a lambda that returns the thing that
responds to that connection, still no problem.

Then we get to HTTP requests. Server creates a request object, sends
it header data. Once request is populated, we can decide what to
instantiate in response via some route (check the method, request
path, Host: header, probably types it accepts, create something that
responds to that request).

But there's potentially this other stuff coming in, from things like
HTTP POST or whatever.

I know there's the "spool everything to memory" (and, in the case of
Form-Multipart, to disk) model, things like Perl's do this.
NiodeJS does "everything is closures and callbacks" which can kinda
work, but...

Does anyone have a particularly favorite architecture for how to
handle the HTTP request/response lifecycle that I can look at? My
target language is C++, but part of the library I'm building in C++ is
the "simplify this so that I can start writing the crap I'd normally
write in Python or Perl and port later in a real language to begin
with" mode.



Raspberry Pi LTSP - this looks delightful

From: DaWorm 
On Tue, Feb 24, 2015 at 8:30 AM, Phil Shapiro  wrote:

>     This might make for an interesting demo on the 4th Floor of the Chatt
> library sometime.
>     This LTSP solution is going to work particularly nicely with the new
> Raspberry Pi 2.
One would think in their "What is Raspi-LTSP" they might have mentioned
just what LTSP means.   They just assumed everyone would know, I guess.
 (Never having used that sort of functionality, I had to look it up.  Dumb


GLIBC Vuln GHOST Vulnerability # CVE-2015-0235

From: Mike Harrison 

Another fun one. Hits a lot of systems and affects multiple programs. 

"During a code audit performed internally at Qualys, we discovered a
buffer overflow in the 

Interesting book - For the Win, by Kevin Werbach and Dan Hunger

From: James Nylen 
Good question, I think we'd be interested in hearing your thoughts.

I think GitHub has helped a lot with this.  There is a clear process for
submitting changes that is standard across most projects on the site, which
makes it easy to get started.  Then, having contributions accepted is
satisfying, which makes repeat customers more likely.

On Sun, Dec 28, 2014 at 1:06 AM, Phil Shapiro  wrote:

> Hi chugalug community,
> This is an interesting book on the topic of gamification of business.
> For the Win: How Game Thinking Can Revolutionize Your Business
> Available in the Chattanooga Public Library as an online audiobook
>    Question to ponder -- how can gamification be used to get more people
> connected and familiar with open source?
>           I've been thinking about that quite a bit in the past few
> months.  Seems to me there are even business
> opportunities in that regard. I'm happy to share my ideas off-list or
> on-list, if there's interest.
>                 phil
> --
> Phil Shapiro,
> "Wisdom begins with wonder." - Socrates
> "Learning happens thru gentleness."

Interesting book - For the Win, by Kevin Werbach and Dan Hunger

From: Phil Shapiro 

Hi chugalug community, 

This is an interesting book on the topic of gamification of business. 

For the Win: How Game Thinking Can Revolutionize Your Business 

Available in the Chattanooga Public Library as an online audiobook 

Question to ponder -- how can gamification be used to get more people connected and familiar with open source? 

I've been thinking about that quite a bit in the past few months. Seems to me there are even business 
opportunities in that regard. I'm happy to share my ideas off-list or on-list, if there's interest. 


Phil Shapiro, 

"Wisdom begins with wonder." - Socrates 
"Learning happens thru gentleness." 

[ANN] CityCampCHA January 8th-9th

From: Sean Brewer 

Open Chattanooga is hosting CityCampCHA at the downtown branch of the
Chattanooga Public Library on its 4th Floor January 8th-9th. The event is
meant to act as a bridge between citizens and local government to
brainstorm on issues. The theme will be: "Building a safer city." The event
is free.

Catherine Bracy, Director of Community Organizing for Code for America,
will be keynoting.

More information can be found here:

If I've already convinced you that this will be the best event ever and
want tickets now, you can get those here: