Archive
Maybe a new doggy or two
It’s been about 1.5 years since Ersala passed.
Our house has been clean and orderly and…quiet.
We looked at two rescue dogs today. One is a three-month old terrier – Rottweiler mix puppy named Darla. The other is an eight year old Weimaraner named Skeeter.
We’re considering adopting both of them.
We might be nuts.
Unit test your obvious code
Sometimes you don’t write unit tests. Your reason for not doing so always falls into one of two categories.
Complexity
The code you just wrote would be so much easier to test using system-level testing. For example…
- The setup and teardown would be 10x the test code.
- There’s too much interaction with multiple data stores or third-party vendors.
- Your dev boxes or CI server don’t all have the necessary technology installed.
These are rational reasons to not write unit tests for new code. You’re fine.
Simplicity
But sometimes you don’t write unit tests because the code you just wrote is so darn obvious.
It’s really simple. It’s straightforward. It’s nearly trivial. Why both writing unit tests for it?
Well, I’ll tell you why you should test it. In fact I’ll give you three reasons.
Read more…
The one where I jumped the gun re: Rackspace
I talked with Erik Carlin of Rackspace about last week’s Rackspace post.
He explained that I experienced a bug in their dynamic image configuration. When you instantiate a VM, a number of things happen behind the scenes to the base server image. It’s not as simple as copying a directory tree from A to B. A bug was introduced into their code, and they caught the bug and fixed it, but not before it bit some users.
So, Rackspace didn’t intentionally change the server image this time. I apologize for drawing that conclusion.
My November 2011 post about mutating server bits is still correct. We talked about Rackspace’s challenge in balancing “simplicity of use” vs. “power users’ information needs” when a server image changes.
Screwed again by Rackspace changing a published image
Once again, Rackspace has changed the contents of an already-published server image without any notice to its users.
22 days ago, I provisioned a staging system with Ubuntu 11.10. In upgrading from 11.04, I had the typical difficulties — e.g., removing 11.04 package workarounds, and upgrading some software that we built from sources. When I finished, my Fabric script provisioned my 11.10 servers, and I wouldn’t have to futz with it again until we advanced to Ubuntu 12.04.
So imagine my surprise when I tried re-provisioning our staging system yesterday, and the script threw an oddball installation failure for PostgreSQL, and all the servers had oddball network flakiness.
Back to the real world…
Living at PyCon 24x7x365 would be so much fun.
PyCon, day 3
Daylight Saving Time is a gimmick and a crock and flipping stupid and I hate it.
Personality cults are odd. At a conference, I see this most often in the backchannels. Like on Twitter. If Fred tweets XYZ, it probably won’t be RT’d; and if it is, it’ll be RT’d at most twice. But if a community cognoscenti tweets the same thing, it’s RT’d 18 times as a gem of profound wisdom. That this phenomenon is so obvious only adds to its oddness.
PyCon, day 2
*Yawn*, I’m up. Great party last night.
I met someone who lives and works in the Galápagos Islands for the Charles Darwin foundation! We had a nice chat. He has fascinating challenges doing data crunching and providing web services down there.
“Pragmatic Unicode, or, How do I stop the pain” — Gah, shoot UTF-32 and UTF-16 in the head. That’d be my vote.
The Celery talk will be interesting. I’ve interacted with Ask online, never met him in person.
PyCon, day 1
The first day of the main conference! I’m anticipating syncing up with friends, like Andrew and Kirk. With tinges of loss and misery caused by Joe‘s and Ryan‘s absence…
Great Keynote speeches. Morning is metaclasses, classes, and subclasses. Should one run away from metaclasses, or view them as just another tool?(Apologies to Edward Teller‘s estate.) The subclassing talk taught me a thing or two.
“If your class has only two methods and one of them is __init__, it’s not a class. It’s really a function.”
Advanced security topics summary: We’re all doing it wrong and we’re all hoseheads.
Lots o’ good ideas and tips about context managers and decorators. I’m going to rip up some code when I return to work on Monday.



Recent Comments