<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7359352975660439424</id><updated>2024-10-24T07:02:26.051-04:00</updated><category term="backups"/><category term="ubuntu"/><category term="python"/><category term="activerecord sqlserver timeout"/><category term="activerecord trigger"/><category term="shibboleth"/><category term="shibboleth rails"/><category term="vmware"/><title type='text'>Backyard Bamboo</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>54</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-1905944209723236651</id><published>2010-08-05T21:49:00.004-04:00</published><updated>2010-10-15T10:36:17.995-04:00</updated><title type='text'>Changing jobs</title><summary type="text">Well, tomorrow is my last day at SciMed Solutions.  I have been there (and with sister company Net Friends) for almost 7 years.  That&#39;s the longest I have ever been with a single employer.  In that time I have learned LOTS.On Monday, I start over with Epiphany Cardiography Products.  They are small but successful and do a lot of things well.  I like the team that I&#39;ll be on too.  My role there </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/1905944209723236651/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2010/08/changing-jobs.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/1905944209723236651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/1905944209723236651'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2010/08/changing-jobs.html' title='Changing jobs'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-4812290649138946959</id><published>2010-02-18T11:46:00.004-05:00</published><updated>2010-02-18T11:58:07.493-05:00</updated><title type='text'>Efail</title><summary type="text">Lately, I have been really dissatisfied with communicating through email.  It just seemed to be such a low rate-of-return on my time spent communicating.  I found a few links from people that think this way too that spell it out pretty well.Is Email = Efail?Email: The Variable Reinforcement MachineEmail Is For Old People?</summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/4812290649138946959/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2010/02/efail.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/4812290649138946959'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/4812290649138946959'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2010/02/efail.html' title='Efail'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-3940416952253880134</id><published>2009-10-15T16:02:00.003-04:00</published><updated>2009-10-15T16:10:37.409-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="shibboleth"/><title type='text'>Shibboleth2 on Ubuntu 9.04</title><summary type="text">Here are my notes on how I got Shibboleth2 compiled from source on Ubuntu 9.04.  YMMV.Adapted from https://spaces.internet2.edu/display/SHIB2/NativeSPLinuxSourceBuild apt-get install wgetapt-get install build-essentialapt-get install apache2apt-get install libxerces-c28 libxerces-c2-devapt-get install libxml-security-c14 libxml-security-c-devapt-get install libcurl4-openssl-devapt-get install </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/3940416952253880134/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2009/10/shibboleth2-on-ubuntu-904.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/3940416952253880134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/3940416952253880134'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2009/10/shibboleth2-on-ubuntu-904.html' title='Shibboleth2 on Ubuntu 9.04'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-3411447496106748599</id><published>2009-08-04T10:59:00.003-04:00</published><updated>2009-08-04T11:19:49.422-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="vmware"/><title type='text'>Installing ESX 4 from USB Flash</title><summary type="text">The target server had a CD drive and I only had a DVD .iso file that was about 835Mb.  I discovered that the server&#39;s BIOS would allow me to boot from a USB flash drive.  I used unetbootin to burn the .iso file to my USB drive.  Next, and this is the important part, I booted from the USB drive and pressed the Tab key when presented with the boot options for ESX.  That then brings up the standard </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/3411447496106748599/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2009/08/installing-esx-4-from-usb-flash.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/3411447496106748599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/3411447496106748599'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2009/08/installing-esx-4-from-usb-flash.html' title='Installing ESX 4 from USB Flash'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-6370208361787769416</id><published>2009-08-03T10:20:00.003-04:00</published><updated>2009-08-03T10:29:03.321-04:00</updated><title type='text'>stackoverflow.com is the best thing since sliced bread</title><summary type="text">I love stackoverflow.com.  If you do any programming at all you must check it out.  I had a really tough programming bug last Friday and posted a question on stackoverflow with the appropriate tags to help with classifying the questions.  Within an hour I had two excellent responses one of which was from Python luminary, Alex Martelli.  (His answer turned out to be correct -- no surpise there.)A </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/6370208361787769416/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2009/08/stackoverflowcom-is-best-thing-since.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/6370208361787769416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/6370208361787769416'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2009/08/stackoverflowcom-is-best-thing-since.html' title='stackoverflow.com is the best thing since sliced bread'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-6623926183608767782</id><published>2009-07-13T09:31:00.002-04:00</published><updated>2009-07-13T09:37:35.712-04:00</updated><title type='text'>IPTables protection against brute SSH attacks</title><summary type="text">One annoying thing I see in my servers&#39; logs for which their respective ssh port is not restricted is that there are always brute force attacks every day.  For various reasons some of the servers that I administer have to have wide open ssh ports.  I found two sites today that show how to use IPTable&#39;s &quot;recent&quot; module to slow down those brute force attacks.  It works great!http://</summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/6623926183608767782/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2009/07/iptables-protection-against-brute-ssh.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/6623926183608767782'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/6623926183608767782'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2009/07/iptables-protection-against-brute-ssh.html' title='IPTables protection against brute SSH attacks'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-8635464187270744272</id><published>2009-02-11T10:42:00.006-05:00</published><updated>2009-02-11T11:14:44.326-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="python"/><title type='text'>Python multiprocessing vs. threading performance</title><summary type="text">I recently wrote an application using the threading module in the Python standard library.  The application itself was basically attempting to discover Open Reading Frames (ORFs) in a DNA sequence.  The application appeared to be mostly CPU bound.Running the application in a single thread took about 6 seconds for my test data.  Running it continuously over 3 threads took about 30 seconds per run!</summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/8635464187270744272/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2009/02/python-multiprocessing-vs-threading.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/8635464187270744272'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/8635464187270744272'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2009/02/python-multiprocessing-vs-threading.html' title='Python multiprocessing vs. threading performance'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-1986822077230717745</id><published>2009-01-09T16:01:00.004-05:00</published><updated>2009-01-09T16:15:55.744-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="activerecord trigger"/><title type='text'>Database Trigger vs. ActiveRecord Callback</title><summary type="text">Out of curiosity, I wanted to compare the performance of an ActiveRecord &quot;after_save&quot; callback versus a PostgreSQL &quot;AFTER INSERT&quot; trigger.I prototyped the functionality in Rails.   I got the logic clean and simple.   Next, I ported that logic to PL/pgSQL.  I wrote a few time-related functions to keep the code clean but it was identical in flow and logic to the Rails code.Lastly, I ran the the </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/1986822077230717745/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2009/01/database-trigger-vs-activerecord.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/1986822077230717745'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/1986822077230717745'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2009/01/database-trigger-vs-activerecord.html' title='Database Trigger vs. ActiveRecord Callback'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-1214576355989058833</id><published>2008-12-19T09:07:00.002-05:00</published><updated>2008-12-19T09:29:00.798-05:00</updated><title type='text'>Native Postgresql Data Types for ActiveRecord</title><summary type="text">In researching ActiveRecord migrations, I came across this bit of new information in their documentation: Instantiates a new column for the table. The type parameter is normally one of the migrations native types, which is one of the following: :primary_key, :string, :text, :integer, :float, :decimal, :datetime, :timestamp, :time, :date, :binary, :boolean.   You may use a type not in this list as</summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/1214576355989058833/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/12/native-postgresql-data-types-for.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/1214576355989058833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/1214576355989058833'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/12/native-postgresql-data-types-for.html' title='Native Postgresql Data Types for ActiveRecord'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-486477355398231338</id><published>2008-12-18T09:19:00.002-05:00</published><updated>2008-12-18T09:25:50.882-05:00</updated><title type='text'>Ruby&#39;s native postgres gem on Windows</title><summary type="text">The ruby-postgres gem is a compiled and fast adapter. It has some dependencies for Windows, though, so follow these steps to get it running properly: go to the http://www.postgresql.org/ftp/binary/ and navigate to the release that matches the Postgres server that you installed.look for and download a file that follows the pattern postgresql-8.X-binaries-no-installer.zip where the X corresponds to</summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/486477355398231338/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/12/rubys-native-postgres-gem-on-windows.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/486477355398231338'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/486477355398231338'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/12/rubys-native-postgres-gem-on-windows.html' title='Ruby&#39;s native postgres gem on Windows'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-2937589299700461322</id><published>2008-12-17T16:23:00.002-05:00</published><updated>2008-12-17T16:29:26.713-05:00</updated><title type='text'>Pylons and SQLAlchemy</title><summary type="text">I recently gave Pylons and SQLAlchemy a spin.  I mainly wanted to check out SQLAlchemy so that I could evaluate it for upcoming projects.  Well, my opinion is that it is wildly flexible and, therefore, came with a steep learning curve.  Pylons wasn&#39;t too hard to grasp although it seemed sort of arcane at times.  I genuinely liked Pylons though.This has been a disappointing experience for me.  I </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/2937589299700461322/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/12/pylons-and-sqlalchemy.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/2937589299700461322'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/2937589299700461322'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/12/pylons-and-sqlalchemy.html' title='Pylons and SQLAlchemy'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-4865929338431617047</id><published>2008-12-17T16:19:00.003-05:00</published><updated>2008-12-17T16:23:03.100-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><title type='text'>Ubuntu destop is so broken...</title><summary type="text">I&#39;ve had it with Linux on the desktop.Things that didn&#39;t work...my office&#39;s Java based SSL VPNflickr uploaderall sound and, therefore, dependent applications like Skypeand more...To be fair, the issue is mostly with my computer&#39;s particular hardware.  For example, my computer&#39;s NVidia card driver constantly pegged the processor at 25%.  Not acceptable.I am sad that Ubuntu on the desktop didn&#39;t </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/4865929338431617047/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/12/ubuntu-destop-is-so-broken.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/4865929338431617047'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/4865929338431617047'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/12/ubuntu-destop-is-so-broken.html' title='Ubuntu destop is so broken...'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-7133345544843528130</id><published>2008-12-13T07:58:00.002-05:00</published><updated>2008-12-13T08:01:07.530-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><title type='text'>So far, so good</title><summary type="text">The switch from XP to Ubuntu has gone just fine so far.  There are a couple of things that I&#39;d like to work out.  One is that I can&#39;t seem to connect to my office&#39;s SSL based VPN which uses Java.  I have the 1.6 JRE from Sun installed and configured but, when I connect to the office VPN, it just freezes up Firefox.I also need to try the proprietary NVidia Geoforce graphics card driver.  The </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/7133345544843528130/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/12/so-far-so-good.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/7133345544843528130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/7133345544843528130'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/12/so-far-so-good.html' title='So far, so good'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-3933630519181085718</id><published>2008-12-12T13:58:00.003-05:00</published><updated>2008-12-12T14:04:41.117-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ubuntu"/><title type='text'>Ubuntu - here we go again</title><summary type="text">So, I got a new laptop at work.  It&#39;s a Dell Vostro 2510 with a 250gb 7200rpm SATA HD and 4 Gb RAM.  It came downgraded to XP.  I had installed Ubuntu to dual-boot with XP.  That worked okay but for some reasons that I can&#39;t remember I wasn&#39;t quite satisfied and decided to remove Ubuntu.  That happened on Monday.After having settled for XP I started to set up my many applications.  After a day or</summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/3933630519181085718/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/12/ubuntu-here-we-go-again.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/3933630519181085718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/3933630519181085718'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/12/ubuntu-here-we-go-again.html' title='Ubuntu - here we go again'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-3125965527618953280</id><published>2008-11-19T23:12:00.002-05:00</published><updated>2008-11-19T23:15:12.828-05:00</updated><title type='text'>PHP+IIS=&quot;No input file specified&quot;</title><summary type="text">I was having frustrating problems with PHP on an IIS site complaining that &quot;No input file specified.&quot;  The frustration came from the fact that I am facile with Apache but know next to nothing about IIS.  Ultimately, I came across this link which completely solved my problem.</summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/3125965527618953280/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/11/phpiisno-input-file-specified.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/3125965527618953280'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/3125965527618953280'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/11/phpiisno-input-file-specified.html' title='PHP+IIS=&quot;No input file specified&quot;'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-145134017754081710</id><published>2008-11-05T08:40:00.003-05:00</published><updated>2008-11-05T08:53:45.811-05:00</updated><title type='text'>Narrative tests? Maybe but probably not.</title><summary type="text">There is a lot of buzz (probably always has been) for moving to narrative test frameworks and away from classic Unit Test frameworks such as Python&#39;s unittest and Ruby&#39;s Test::Unit.  Having never tried a narrative test framework I&#39;m partial to the classic frameworks for both Python and Ruby if for no other reason then they function identically so the framework is the same for both languages </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/145134017754081710/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/11/narrative-tests-maybe-but-probably-not.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/145134017754081710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/145134017754081710'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/11/narrative-tests-maybe-but-probably-not.html' title='Narrative tests? Maybe but probably not.'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-3226441924801654781</id><published>2008-10-09T12:05:00.003-04:00</published><updated>2008-10-09T12:13:29.790-04:00</updated><title type='text'>Apache https proxying Mongrel with file upload</title><summary type="text">We had a Ruby on Rails form that did a POST of some form data including a file upload.    The setup was Apache 2.2 proxying a bunch of mongrels on a Windows server.  Port 80 was set to redirect to 443 via a rewrite rule.  The proxy modules that we were using included proxy_http_module, proxy_balancer_module, and proxy_module.  With that setup the file upload was failing.  It appeared to timeout </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/3226441924801654781/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/10/apache-https-proxying-mongrel-with-file.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/3226441924801654781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/3226441924801654781'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/10/apache-https-proxying-mongrel-with-file.html' title='Apache https proxying Mongrel with file upload'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-7423005716424897538</id><published>2008-09-17T08:12:00.003-04:00</published><updated>2008-09-17T08:20:56.261-04:00</updated><title type='text'>Python popen deadlocks</title><summary type="text">I have a python script that calls out to an external program using os.popen3().  That function returns file handle like objects for stdin, stdout, and stderr.  I need to examine both stdout and stderr separately.After running this script for a while I started to see it hang at times.  This was especially true after I added in a parameter which increased the amount stderr.  It turns out that there</summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/7423005716424897538/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/09/python-popen-deadlocks.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/7423005716424897538'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/7423005716424897538'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/09/python-popen-deadlocks.html' title='Python popen deadlocks'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-5290009652056902781</id><published>2008-09-11T10:39:00.004-04:00</published><updated>2008-09-11T10:53:57.322-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="backups"/><title type='text'>Backups Reorganization pt. 10: Verification</title><summary type="text">I set up automated verification on the 4 backups servers on every backup job that they run.  That simply involved the correct usage of the --verify option to rdiff-backup.  This option calculates SHA1 checksums on files in the backups and compares them to the backups metadata.  I don&#39;t put much stock in this process but feel that it is necessary to actually perform.  Besides, the overhead is </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/5290009652056902781/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/09/backups-reorganization-pt-10.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/5290009652056902781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/5290009652056902781'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/09/backups-reorganization-pt-10.html' title='Backups Reorganization pt. 10: Verification'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-2447477997606788806</id><published>2008-09-03T17:20:00.004-04:00</published><updated>2008-09-03T17:25:00.284-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="backups"/><title type='text'>Backups Reorganization pt. 9: Retrospect</title><summary type="text">I finally got around to addressing the backup of the one server that resides behind the firewall.  I can&#39;t use the approach I had been using, that is, having the backups server initiate the backup because the backups server is itself outside of the firewall.  The simplest thing to do is to backup the target server from within the firewall.  As it turns out, my company has a couple of dozen </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/2447477997606788806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/09/backups-reorganization-pt-9-retrospect.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/2447477997606788806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/2447477997606788806'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/09/backups-reorganization-pt-9-retrospect.html' title='Backups Reorganization pt. 9: Retrospect'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-8881268981339645353</id><published>2008-08-27T13:21:00.002-04:00</published><updated>2008-08-27T13:26:17.304-04:00</updated><title type='text'>Shelving AMQP for now</title><summary type="text">I recently put a lot of effort into working with the relatively new messaging queue protocol, AMQP.  This involved reading the v. 0.8 spec., source code of some implementations, the RabbitMQ docs and boards, and the source code of the py-amqplib module.Ultimately, I could not get the AMQP client and broker to behave in ways that I expected.  This is a real disappointment because I had high hopes </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/8881268981339645353/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/08/shelving-amqp-for-now.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/8881268981339645353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/8881268981339645353'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/08/shelving-amqp-for-now.html' title='Shelving AMQP for now'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-3818731525550527392</id><published>2008-08-26T14:58:00.002-04:00</published><updated>2008-08-26T15:06:00.776-04:00</updated><title type='text'>Python logging.fileConfig() weirdness</title><summary type="text">I wrote a draft of a python application that I intended to turn into a Windows service.  In it, I used the logging standard module and the fileConfig() function to configure up multiple log handlers and other cool logging related things.  All of that worked great when run as a simple script on a Windows box.When I wrapped up the functionality in a Windows service, however, the logging killed the </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/3818731525550527392/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/08/python-loggingfileconfig-weirdness.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/3818731525550527392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/3818731525550527392'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/08/python-loggingfileconfig-weirdness.html' title='Python logging.fileConfig() weirdness'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-4880592062730575402</id><published>2008-08-12T10:00:00.002-04:00</published><updated>2008-08-12T10:05:18.256-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="backups"/><title type='text'>Backups Reorganization pt. 8: Oracle</title><summary type="text">I was saving the Oracle database backup for last because I felt that it would be the most difficult to do right.  As it turns out, the client&#39;s chief Oracle user and DBA has already done most of the work.  He is dumping the databases that he cares about to a server and directory which I am already backing up.  I need to ask him to try do do a test restore though.  That&#39;s pretty key.In the </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/4880592062730575402/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/08/backups-reorganization-pt-8-oracle.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/4880592062730575402'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/4880592062730575402'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/08/backups-reorganization-pt-8-oracle.html' title='Backups Reorganization pt. 8: Oracle'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-3407985399528006729</id><published>2008-08-11T15:28:00.003-04:00</published><updated>2008-08-11T15:34:30.170-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="backups"/><title type='text'>Backups Reorganization pt. 7: Zope</title><summary type="text">The client has three versions of Zope running on three servers.  I took the work that I did to discover and dump the Subversion repositories and retrofitted that for Zope databases.  It wasn&#39;t too difficult and I simply extended an existing class in the package that I am building.  Writing the test cases took the most time, as is often the case.The only thing that was a little different was that </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/3407985399528006729/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/08/backups-reorganization-pt-7-zope.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/3407985399528006729'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/3407985399528006729'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/08/backups-reorganization-pt-7-zope.html' title='Backups Reorganization pt. 7: Zope'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7359352975660439424.post-776590559537266466</id><published>2008-08-05T15:22:00.006-04:00</published><updated>2008-08-05T15:57:53.045-04:00</updated><title type='text'>CCP4 on RHEL5</title><summary type="text">CCP4 is an open-source, scientific application used in crystallography.  It is written in C++ and Fortran and runs best on Linux.A client needed help today in compiling this application on Red Hat Enterprise Linux (RHEL) 5.  This blog posting is intended to provide a brief outline of getting CCP4 running on that platform.Here&#39;s what not to try:download sourceuse yum to get all of your </summary><link rel='replies' type='application/atom+xml' href='http://backyardbamboo.blogspot.com/feeds/776590559537266466/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://backyardbamboo.blogspot.com/2008/08/ccp4-on-rhel5.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/776590559537266466'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7359352975660439424/posts/default/776590559537266466'/><link rel='alternate' type='text/html' href='http://backyardbamboo.blogspot.com/2008/08/ccp4-on-rhel5.html' title='CCP4 on RHEL5'/><author><name>Michael</name><uri>http://www.blogger.com/profile/01020829360408821410</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>