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.



Bruce Perens : 50mhz -1000mhz SDR transceiver

From: Rod-Lists 

Chris Testa KD2BMH and I have been working for years on a software-defined transceiver that would be FCC-legal and could communicate using essentially any mode and protocol up to 1 MHz wide on frequencies between 50 and 1000 MHz. It's been discussed here before, most recently when Chris taught gate-array programming in Python. We are about to submit the third generation of the design for PCB fabrication, and hope that this version will be salable as a "developer board" and later as a packaged walkie-talkie, mobile, and base station. This radio is unique in that it uses your smartphone for the GUI, uses apps to provide communication modes, contains an on-board FLASH-based gate-array and a ucLinux system. We intend to go for FSF "Respects Your Freedom" certification for the device. My slide show contains 20 pages of schematics and is full of ham jargon ("HT" means "handi-talkie", an old Motorola product name and the hams word for "walkie talkie") but many non-hams should be able to parse it with some help from search engines. Bruce Perens K6BP

Fwd: Great UNIX Admin/Architect Opportunity in Atlanta, GA

From: David White 
I'm still waiting for my new iPad... Surely one of these times, someone on
Chugalug will get hired for a job I pass on to them, right?

---------- Forwarded message ----------
From: Chris Dececco 
Date: Fri, Sep 26, 2014 at 3:10 PM
Subject: Great UNIX Admin/Architect Opportunity in Atlanta, GA
To: DavidWhite 

Hi David!

I am a recruiter here at CyberCoders who specializes in placing UNIX
Admin/Architect candidates as well as similar positions in Atlanta, GA and
other locations nationwide.

I am emailing you in case you think you would be a great fit for the
position listed below.  Please check out the link and apply if you are
interested in hearing more about the job.  :)

Also - If you refer a friend I end up placing at any of my open jobs, I
will give you an iPad for the referral!

This position is for a UNIX Admin/Architect in Atlanta, GA.

*For more details on this job or to apply simply visit CyberCoders:*


*Not a fit for this job?  Search all of our open jobs:*


You can use the link below at any time if you would like us to hold off on
emails to you about new opportunities.

 Thank you,

Chris Dececco  | Lead Recruiter | CyberCoders
949.783.3626 | Follow Us: 

 | View My Bio and Open Jobs

Find of the Day: ArrestDB

From: Eric Wolf 
I was looking for an easier way to work with MySQL data and came across

One "index.php" and a little Apache configuring now I can query, insert and
delete using Python requests library instead of hassling with a MySQL
library. For that matter, I can use curl to manipulate the data as well!


Eric B. Wolf                           720-334-7734

Pillow (PIL) vs PythonMagick

From: "Robert A. Kelly III" 
Pillow (PIL) vs PythonMagick: Pros and cons? Comparisons? Random thoughts?

Python: Project Manager with solid System Architect resources....

From: Mike Harrison 

Been diving into the =93I need a python guru=94 a little more=85 This got b=
etter described as:

"Project Manager with solid System Architect resources and business sense w=
ould be ideal=94

and options include this being a project for an upper end job shop..
It could be a job at this company, but they they are very interested in con=
tracting out the entire technical side of this project. =

About all I can tell you publicly is that I=92ve known the guy asking the q=
uestion for 20+ years and it=92s real business.

Anyone know anyone (person or company) that is local-ish that fits that des=
cription that is Python competent in the real world?

If so: contact me. 423 605 6943 or email.

Any business-savvy Python Guru's?

From: Mike Harrison 

I=92ve got a long time friend asking quietly for a =93business savvy =
python guru=94,=20
and I know him well enough to know it=92s serious real world stuff =

Anyone interested? I=92ll make an introduction=85

Atlanta linux/unix admin

From: Matt Keys 
The details are below.


From: Kathy Dean
Sent: Wednesday, February 12, 2014 1:51 PM
To: Matt Keys
Subject: Unix / Linux Administrator - On Call - No Travel Atlanta Growth!

Hi Matt,

I have a client that would like to interview you for a role that they =

need filled. Great benefits and growth opportunity! They are seeking =

people who want to grow into management. They are also looking for a =

culture fit - very team oriented. This is the detailed Job description. =

Preference is someone with exp. with Nagios. This firm is building a SOX =

IT Hub for themselves in Atlanta and the opportunity for growth is =


Qualifications: =95 Previous experience as Linux/Unix administrator preferr=
=95 Experience supporting IMAP/POP/SMTP email a must
=95 Must be able to compile/install/configure server software (apache, =

openldap, php, etc)
=95 Strong knowledge in setup and deployment of database
=95 Experience in managing large database sizes a plus (MySQL, PostgreSQL, =

=95 Strong knowledge in optimization and interrogation of databases
=95 Experience in data integration and database design
=95 Experience with monitoring logs to identify problems
=95 Deeply familiar with networking including installation/configuration =

of routers, switches, firewalls, desktops
=95 Powerful Linux Shell Skills (use grep, sed, awk, find, etc)
=95 Skilled with scripting languages such as PHP, Ruby, Python
=95 Comfort with HTTP service architecture, optimization a big plus
=95 Server scripting tools including perl/bash/sh/tcsh/csh or some =

combination required
=95 Knowledge of DNS, preferably BIND
=95 Experience with Phone Systems such as Asterisk and Hylafax Servers =



Packt computer programming ebooks for $5 (Christmas special)

From: Phil Shapiro 

This is a lovely holiday surprise for geeks. 

Scratch 1.4 Beginner's Guidebook - $5 ebook offer. Reviewed at

Linux tablet suggestions

From: Unkmar 
I'm asking Santa for a tablet for Christmas.  I know he will lighten my
wallet in exchange.
I've looked at the PengPod.
It fits a tight budget for someone that wants to get started with a Linux
tablet.  I want so more: RAM, SSD, A docking keyboard and touchpad.  The
1040 does look reasonable. I like the dual Cameras. And currently their
store is down.

There is the Python S3.
I'm not a Windows fan, yet the triple boot does appeal to me. I like the
docking station. USB, Wired NIC, keyboard, touchpad.

The other suggestion has been a Surface Pro and install Linux. It appears
that will leave Android out of the equation.  I guess I could live with
that.  I haven't checked the specs on them yet.

Any others want to weigh in on some Linux Tablets of today?

Lucius L. Hilley III - unkmar

Updates usually okay. Never upgrade.

From: Unkmar 
  Install: Python modules, perl modules, C libraries
  Resolve: C libraries.

Upgrades don't work!  Never ever ever ever upgrade.
  At least one thing breaks and it is usually a core issue that breaks many
other things.
Update? sure, why not.  Rare problems do sometimes occur.

I'm going to rebuild.  Fresh install and transfer my data back over.

Lucius L. Hilley III

Flame On

From: AverageSecurityGuy 
Just saw this on Twitter and had to share.

 Bash one-liner to do anything=85 "python do

Software Engineer openings in NYC (revised)

From: Dee Holtsclaw 
Bloomberg is looking to expand the programming staff in SSEOMS and STEP
here in New York.

The full job posting information is available at:

I started as a contractor in September 2012 and accepted a full-time
position several months ago. Besides C++, we use SQL, a lot of
Javascript for UI and a smattering of Python, Perl and shell scripts.
The benefits are incredible and employees are treated VERY well. The
downside is you have to live in NYC. Please feel free to drop me a line
off-list for more information or just to shoot-the-shit.

Teach Python programming via Minecraft - Creative Commons book

From: Phil Shapiro 

This looks very interesting -- a Creative Commons book. 

Learning Python using Codecademy and Raspberry Pi Minecraft: a resource of great note 

Perhaps something suitable for the 4th Floor or Chatt*Lab or schools. Does anyone 
remember schools? 



Phil Shapiro, 

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

OT: Training

From: Stephen Haywood 
I'm thinking about putting together a couple of training classes. One =
would be intro to Python programming and the other would be an intro to =
hacking/pentesting. These would not be free classes.

Would any of you be interested in classes like this? Would any of you be =
willing to pay for classes like this? What would you want to see in =
classes like these?

BTW, I'm available for contract security testing/consulting.

Stephen Haywood
Owner, ASG Consulting

OT - Historical Kickstarter - The Panama Canal

From: Phil Shapiro 
Hi chugalug, 

One way to put open source in front of the public view is for open source enthusiasts to do 
other creative work that catches the public imagination. For example, there's a link to my open source blogging 
in the brief bio at the end of this blog post I wrote this morning for MAKE magazine. 

Creating that video felt like making a Monty Python skit (or like a Saturday Night Live skit.) 




Phil Shapiro, 

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

Pi or 'Duino?

From: Eric Wolf 
I'm wanting to build an automated dog treat dispenser but I want it to
trigger off various external events. I'm trying to decide whether to use a
Raspberry Pi or an Arduino for the controller. The advantage of the Pi is
easy of programming (Python FTW). The disadvantage is largely cost. The Pi
itself is a little more expensive, especially by the time you add in the

Any thoughts?

Eric B. Wolf                           720-334-7734

Update on the June 22 Meetup

From: David White 
Just an update (and a reminder) on the Chugalug / IT Crowd Meetup happening
Saturday June 22 starting at 2:00pm & Ending at 5 on the 4th Floor of the

We now have 5 confirmed break-out sessions to be held in a 4 break-out
session window.

The rough schedule will be as follows:

1:30 - 2:00: Come early, network, hangout
2:00 - Officially starts
2:00 - 2:25 - Breakout Session 1
2:30 - 2:55 - Breakout Session 2
3:00 - 3:25 - Breakout Session 3
3:30 - 3:55 - Breakout Session 4
4:00 - 5:00 - Networking, Chill, hangout, Hardware Swap
4:00 - 4:30 - Separate Breakout session for anyone interested in helping to
organize a real IT conference for next year.

Session presenters have been asked to have about 20 minutes of content to
allow time for questions, discussion, and moving on to the next session.

Here's the current breakout sessions:
Stephen Haywood: Security or Python Related (TBD)
Lynn Dixon: Bitcoin
David White: DNS & BIND
William Wade on Programming: Flow, Environment, and Coding
John Huisman: Contracts, Communication, and =A9 Ownership

If you want to present on a topic, please contact me and let me know what
you want to present on.

And finally, if you haven't done so, and you are able (i.e. you use
Facebook), please consider RSVPing on, and inviting other friends to, the
Facebook event page:

- David

David White
Founder & CEO
Computing, Equipping, Networking, Training & Supporting
Nonprofit Organizations Worldwide