Jan.
21

Ubuntu - Day 2

January 21, 2007 @02:45
Today I set out to get my own software running.  This included dependencies like:
  1. Apache
  2. Mod_python
  3. Postgresql
  4. Tsearch2
  5. Psycopg2
  6. elementtree
  7. Simplejson
  8. Matplotlib
  9. Apple
I wasn't difficult to install and configure things, though it obviously felt different than it does on Gentoo.  Honestly things seemed less organized, though that's likely because I know Gentoo so much better.

I have not been successful in getting mail-notification to work.  Poking around it seems the imap ssl support is disabled, and people recommend installing from source.  This means that to date, the only two pieces that have given me grief have been Flash and mail-notification.  From a polish perspective Ubuntu continues to be excellent.  I have also been impressed with the functionality of apt, though it's no Portage.  For example when I installed flash, the installation failed though apt registered it as installed.  This meant subsequent attempts required the use of --reinstall.  This isn't a big deal, but Portage is much more ~acid.  The dependency lookups don't seem to be as reliable either.  For example installing eclipse-jdt should have pulled eclipse as a dependancy.  Installing psycopg2 should have pulled python-egenix-mxdatetime as a dependency.  I also found apt's presentation difficult to read.  Portage uses colors and indentation for a much nicer presentation.

From a performance perspective I'm not sure what to think.  I tend to not trust myself when judging the performance of a desktop machine (so many variables) but it does seem to be significantly more sluggish.  I've even noticed the processing time of my own code seems to be slower.  Consistently my pages process in ~0.05 seconds.  On Ubuntu they seem to be running  around ~0.2 seconds.  That's pretty rough though I'm not sure what's responsible (ext3 vs reiserfs, compiler flags, etc).

Today's outcome:  I'm very impressed with Ubuntu, though currently I'm probably 50/50 on whether I might switch.

Jul.
11

Recently a friend of mine pointed out that I had an error on one of my pages.  It took me almost 45 minutes to figure out what was happening.  I wasn't able to reproduce the defect in my development environment.  The version of Python installed was exactly the same.  I tried executing the problematic piece of code on the production server and it did not reproduce the problem.  All of my unit tests passed... I was at a loss as to the source of the problem.

It just so happend that a few months ago I had turned on a particular configuration option in Apache that influenced the way Python works.  The reason why I wasn't able to reproduce the problem in dev was because it does not use a production configuration.  The reason why I wasn't able to reproduce the problem using a Python interpreter is because it doesn't care about how mod_python works.  Once I figured out what was wrong the fix was very simple, in fact all I had to change were two letters.

The moral of the story is: Testing is good, unit testing is great, but don't forget to test your configuration  :)



1

Total records: 2
FCGI/WSGI
0.13.3
170.884132 ms