Software Engineer

Jason Hancock

last update:

One thing I’ve struggled with in puppet in the past was managing iptables firewalls. I used to end up building a few different templates for the various firewalls that I had to manage and just passed in a list of ports to open up, but it was kind of a nightmare to manage as more and more applications with different requirements were added. The number of templates began to sprawl.

puppet and xinetd

I ran into an interesting problem with puppet today involving xinetd on CentOS 5. In one of my manifests, I had declared the following service resource: <service{"xinetd":ensure=>stopped,enable=>false,hasstatus=>true,} The problem I was seeing was every time the puppet client ran, it stopped the xinetd service: Sep 5 01:10:21 someserver puppet-agent[2300]: (/Stage[main]/Xinetd/Service[xinetd]/ensure) ensure changed 'running' to 'stopped' Sep 5 01:10:21 someserver puppet-agent[2300]: Finished catalog run in 5.82 seconds Sep 5 01:20:33 someserver puppet-agent[2300]: (/Stage[main]/Xinetd/Service[xinetd]/ensure) ensure changed 'running' to 'stopped' Sep 5 01:20:36 someserver puppet-agent[2300]: Finished catalog run in 11.

I added a couple of syntax check aliases (well, one’s actually a function because alias didn’t seem to like putting a pipe in there) to my .bashrc file: aliassynpp='puppet --parseonly --ignoreimport'synerb (){erb -x -T - "$@"|ruby -c } To check a .pp (manifest) file, I simply type synpp path/to/manifest.pp and to check a template synerb path/to/template.erb This assumes that you have a puppet client installed on your local machine.

UPDATE 10/24/2011: The script has been updated to support Canon CR2 and CRW raw files and JPEGS. I’ve also moved the script to my github account. Find it (and the latest installation instructions) here. Here’s the situation…’re shooting a wedding, bar mitzvah, or other event. You’re running and gunning, two cameras going full blast, switching back and forth. Your second shooter is laying down cover fire making sure you guys don’t miss any important moments.

I tried something different for dinner yesterday….made some pulled pork in the crock pot. That’s not the different part though….I used orange soda (yes, orange soda) as the braising liquid. I put a pork shoulder in the crock pot, covered with orange soda, and let it do its thing until I got home from work. Then I pulled the meat from the braising liquid, shredded it and mixed in some BBQ sauce.

Here’s a snippet that will print out perl’s @INC path perl -e'print join("\n", @INC);\n' And my results on CentOS 5.5: /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/5.8.8


I’m a day shy of not posting for almost two months. That’s crazy! A lot has changed in the last 60 days. I’ve moved on from SpecificMedia. I’m scheduled to start a new position with Disney on Monday. I’m pretty stoked about that. I’ve had a week off between jobs and I’ve been doing some Android development in that time. I haven’t really been developing too much in Android…more like learning the framework/ecosystem/eclipse IDE/ and getting reacquainted with Java.

Update 2017-10-06: It’s 2017. Don’t use the code below, but use the excellent dalen/dnsquery module instead. Leaving the original post below for historical reasons. I use dynamic DNS at my residence so that I can always log into my server remotely without having to know the IP. I run denyhosts on the server hosting my website at Rackspace to attempt to contain brute-force ssh attacks. If you enter the wrong password N times, your IP gets banned and you can’t connect to my server anymore via ssh.

It’s 9:36PM on a Monday night. For the past few weeks, I’ve been picking up our son from daycare and getting home about an hour before my wife. During that time, I like to crank up some tunes on our home stereo receiver. The problem is that my server and my pc are about 25 feet away from my receiver. I was plugging a long headphone extension cord with a headphone to RCA splitter into the front of the reciever, but our son is on the verge of crawling and I don’t wany any extra or unnecessary cables to be within his reach.

scale 9x

I attended the Southern California Linux Expo(SCALE 9x) conference for the last three days. It was awesome. I learned about some really cools stuff going on in the Linux/FOSS community, gained new insight into stuff I’m familiar with, and got some cool schwag from the vendors. I’m patiently waiting for the spam from the vendors to hit my inbox…I wonder who will be first? One of the things that I found at the conference was OpenShot - A non-linear video editor for Linux.