Feeds:
Posts
Comments

I found this gem deep in the OSCommerce source. Huh? What is so different between a shopping cart containing 100,000 items, versus one that has a mere 85,000? Gotta love hardcoding.

30 if ($cart->count_contents() > 100000){ $cart->reset(); }^

Did you see the code comments? I pasted those too. ;(

Tonight I upgraded to ubuntu 10.04 (lucid lynx) from 9.10 (karmic koala). Install and configuration went well (Dell Latitude D630 dual grub boot Win7).

I just ran into a problem starting postgres 8.4 in my development environment (this worked just fine on ubuntu 9.10).

dthomas@dthomas-laptop:~$ sudo /etc/init.d/postgresql-8.4 start
[sudo] password for dthomas:
* Starting PostgreSQL 8.4 database server * The PostgreSQL server failed to start. Please check the log output:
2010-05-02 21:30:24 PDT FATAL: could not create shared memory segment: Invalid argument
2010-05-02 21:30:24 PDT DETAIL: Failed system call was shmget(key=5432001, size=36880384, 03600).
2010-05-02 21:30:24 PDT HINT: This error usually means that PostgreSQL's request for a shared memory segment exceeded your kernel's SHMMAX parameter. You can either reduce the request size or reconfigure the kernel with larger SHMMAX. To reduce the request size (currently 36880384 bytes), reduce PostgreSQL's shared_buffers parameter (currently 4096) and/or its max_connections parameter (currently 103).
If the request size is already small, it's possible that it is less than your kernel's SHMMIN parameter, in which case raising the request size or reconfiguring SHMMIN is called for.
The PostgreSQL documentation contains more information about shared memory configuration.
[fail]

I was able to fix this by changing the following in: /etc/postgresql/8.4/main/postgresql.conf


106 #ORIG 10.04 UPGRADE FAILED shared_buffers = 32MB # min 128kB^
107 shared_buffers = 16MB # min 128kB^

Today we purchased and installed Tyler’s new loft-style bed. As you can see, it has a killer slide on one side. Unseen on the opposite side is the ladder he climbs to go “one more time?”   He has a fearless (but not careless) sense of jumping and tumbling off things. Seen in this picture, this is only his 5th or 6th time going down and he’s already going skeleton!

Boy would I love to get the adult version of this bed ;)

Unin…STALL

I tried uninstalling a system-installed ruby gem today only to get this error:

<user>@<hostname>$ sudo gem uninstall json --version 1.2.3
ERROR:  While executing gem ... (NameError) undefined local variable or method `sepc_installation_path' for #<Gem::Uninstaller:0x835935c>

uname: SunOS <hostname> 5.11 snv_121 i86pc i386 i86pc

ruby:  ruby 1.8.7 (2009-06-12 patchlevel 174) [i386-solaris2]

A quick review of the source code for the system-wide rubygems package shows the culprit.  It is a blatantly obvious typo also confirmed by the fact that no appropriately scoped variables with that name are used in the local file or required files.  Interestingly, my local linux copy of the same file from the same version of rubygems doesn’t have the problem.  I suspect the hosting company had to patch for their own server environment setup – just a guess.

/opt/local/lib/ruby/vendor_ruby/1.8/rubygems/uninstaller.rb
[ORIGINAL] 134: #bindir = @bin_dir ? @bin_dir : Gem.binddir(sepc_installation_path, @install_root)
[FIXED]    134: bindir = @bin_dir ? @bin_dir : Gem.binddir(spec.installation_path, @install_root)

For a quick fix, I manually edited the file while waiting for the hosting company to address the issue (required root perms).

Agile SEAminar

This week I had an opportunity to present at an agile software development seminar in Seattle sponsored by Software Quality Engineering (SQE). The seminar was hosted by AccuRev, Rally, Urbancode, and Coverity.

David Thomas speaking at SQE Agile Seminar in Seattle 03/17/2010
Speaker: David Thomas

I presented a 15-minute product tour of using AccuRev to manage story-based feature development across teams in a geographically distributed environment.

Of the ~90 participants, most are participating in agile development within their organization. What I like best about this seminar format is that it gives everyone a chance to exchange agile success stories, areas of struggle, and projects were an agile paradigm may not be a great fit (cultural conflict, regulated domains, complex distributed teams) — although, there are usually ways to still apply agile practices ;)

Agile Panel
Agile Panel (I’m on left)

The seminar consisted of a panel session mid-day flanked by content-only presentations in the morning and product demonstrations in the afternoon. I prefer the product demonstration portion because this is where you get to experience an ‘in the trenches’ view of managing or participating in an agile project.

The next series of agile seminars are around the United States. Here is the upcoming schedule.

The rails framework continues to make the database-less applications experience a bit of pain at project startup. Finally, in 2.3 you can simply set
config.frameworks -= [ :active_record ]. However, when doing so, the internal test framework is wired to use toggle transactional fixtures and a few others… yeah, more database stuff. This is the error you’ll get.

./test/test_helper.rb:22: undefined method `use_transactional_fixtures=’ for ActiveSupport::TestCase:Class (NoMethodError)

I found that commenting out the following lines in ./test/test_helper.rb did the trick.

22 # self.use_transactional_fixtures = true
29 # self.use_instantiated_fixtures = false
35 # fixtures :all

Hope this helps someone…

We’re happy to announce the birth of Jacob True Thomas [7lb5oz] on jan 06 at 21:57 UTC in Santa Cruz, CA. He is boy number 10. We’re so lucky to have our two boys, both Tyler and Jacob, only 23 months apart. Baby is healthy. Mom is recovering. and Dad is working hard.

Follow

Get every new post delivered to your Inbox.