Where Did Summer Go?
Ahh... My last post was ages ago. Lots has happened. Most of the family events have been duly recorded on our Family Blog.
I've been doing more biking, more work for the new business (especially system administration type stuff), lots of new exploration in C#, particularly in the ASP.NET MVC world, lots of time with boys who are growing up at an alarming rate, some time away with family in Iowa, as well as just the Wife and I in Victoria, B.C. for our anniversary.
I've been thinking about:
- Writing a time tracking system for use internally with the new business. Some of the initial code is written in Ruby on Rails as well as some design docs -- oh, and a name: "Tempus Fugit".
- Getting an irrigation system in place for the yard (plus some of those automatic hanging basket watering tubes if I can figure it out)
- Updating my favorite online bookmark system (Scuttle) with some more modern features. Development seems dead on it and I'm thinking of forking it and moving in a slightly different direction.
- Learning more about taxes, finances, and Quickbooks in order to do a better job with the company accounting.
- Starting in on a new programming language -- I still haven't decided which but I feel like I'm getting complacent with C# (and some C/C++). Your ideas/recommendations are welcome!
- Catching up on some cleanup projects around the yard (landscaping lighting needs some help in the back, Windsor block border around a bit more of the backyard, possible door in the back of the garage to the backyard, more top soil and reseeding of back yard)
- Posting more to my blog. Fat chance.
Project Idea #35: Auto Tasks via Email
Create a program that is designed to parse and track projects and tasks from emails alone. The point would be to make it completely non-intrusive (albeit not entirely non-interactive). So for example, when composing a message to a client or customer you might be asking a question. You want a response (there's a "task" outstanding that's pending a decision or some action). You would simply BCC the special mailbox. The message would be parsed and tracked. When the user replies, the same program is monitoring your incoming mailbox items. When the message arrives it would attempt to interpret whether the task was complete or not. It could then fire a simple email to you indicating that it THINKS that the task is complete with a simple Yes/No form that would let you close the task or not and also possibly make notes or record anything of interest. Or alternatively you could manually complete tasks by forwarding the message to the same mailbox.
This probably is not incredibly value in its proposed form -- I'm sure something similar exists. But it would be fun to work on and would be neat to see how smart you could train it to be. Introduction of learning algorithms that would adapt to particular users would be even better.
New Studio Speakers
I went ahead and got some new studio speakers for my home office. These are the M-Audio BX5a. The Logitech system didn't sound terrible (especially at normal volumes) but it was cluttery and was difficult to work with. The new system has less bass (no subwoofer) but they sound very clean and seem to perform quite well with everything that I've thrown at it. It's a new experience to me because I've never really distinctly noticed the different between "muddy" sound and what I hear now.
Mine don't look quite as nice -- the exterior case design is a little older. But still a good buy overall.
To Christ on Golgotha
We're singing this piece for the Good Friday service tonight and I couldn't find the music online for it. It's a nice piece -- I hope it gets more attention. This is from the Zions Harfe (Zion's Harp) hymnal used by the Apostolic Christian Church.
An MP3 version of the MIDI file:
Audio clip: Adobe Flash Player (version 9 or above) is required to play this audio clip. Download the latest version here. You also need to have JavaScript enabled in your browser.
Update: Our actual performance (just verse 3):
Audio clip: Adobe Flash Player (version 9 or above) is required to play this audio clip. Download the latest version here. You also need to have JavaScript enabled in your browser.
To Christ on Golgotha (MIDI file -- please redistribute this!)
To Christ on Golgotha,
My spirit fain would go
To Ponder on His words
and His exceeding woe.What pain unspeakable,
in this great cry we see
"My God, My God, oh why
hast thou forsaken me?"No Vengeance in His heart,
I hear Him plead, anew,
"Dear Father, pray forgive;
they know not what they do."His mother weepeth sore,
He comforteth her now;
"Behold in John thy son",
"O John, thy mother know.""I thirst," He crieth then;
There's no affliction thus,
Which He, the friend of man,
Has not endured for us.He, "It is finished," cries.
And bows His head, The End,
"Oh Father, to thy hands,
My Spirit I commend."
Versioning for S3
I just got this notice in my email:
We are pleased to announce the availability of the Versioning feature for beta use across all of our Amazon S3 Regions. Versioning allows you to preserve, retrieve, and restore every version of every object in an Amazon S3 bucket. Once you enable Versioning for a bucket, Amazon S3 preserves existing objects any time you perform a PUT, POST, COPY, or DELETE operation on them. By default, GET requests will retrieve the most recently written version. Older versions of an overwritten or deleted object can be retrieved by specifying a version in the request.
Amazon S3 provides customers with a highly durable storage infrastructure. Versioning offers an additional level of protection by providing a means of recovery when customers accidentally overwrite or delete objects. This allows you to easily recover from unintended user actions and application failures. You can also use Versioning for data retention and archiving.
This is some slick stuff. I'm amazed... I just wish I had more time to play with it. For now, Amazon continues to impress.
Recursion
So w
hat happens when your can of WD-40 is left out too long and the trigger gets stuck and won't stop spraying? Spray it with some WD-40?
Did you know that WD-40 stands for "Water Displacement - 40th Attempt"? Thanks Wikipedia!
Price Tracking
Price tracking can be confusing online. Retailers like Amazon and Newegg (two that I buy from frequently) seem to sometimes change their prices daily. One expects prices to drop over time but this doesn't always happen. I was surprised to find that prices for Solid-State Hard Drives have actually been rising recently (although the real deals appear to have been back in October/November). Thankfully there are some tools that can help. One of them is the Camelizer -- a Firefox plugin. Alternatively, you can access the same data at the website camelcamelcamel.com (for Amazon) and camelegg (for Newegg). The same group also tracks prices at BackCountry, Best Buy, OverStock.com, and Zzounds,
Here's an example of one of the SSD's that I'm interested in:
In this digital age it's nice to have something that keeps some history around. It's easy to get information these days but it's always easy to change information (which is why I'm also a big fan of the WayBackMachine -- check out the original Google page!) We don't keep coupons, flyers, or catalogs anymore, we just remember the website.
Anyone experience this sort of problem?
Happy New Year
It's 2010 everyone! It's ridiculuous how fast 2009 went by. I have high hopes for the year. We'll see how things go...
Office Setup
I seem to remember talking about this already but I've further upgraded my man-cave to new levels of geekiness. I know have two 26" screens that I've wall mounted just above my desk (keeps them in the same position regardless of all the clutter on my desk.)
Currently I'm running OS X on my right screen and Windows 7 on the left. I use Synergy to share mouse/keyboard commands so it feels like one continuous background. I'm mostly using OS X still but the new machine has 6GB of RAM which gives a lot of breathing space if the Mac gets bogged down.
What I'd like to do is switch out my aging Logitech system with two simple monitor speakers -- I still haven't decided what make/model to get but they have good stuff for pretty cheap. I'll plan on mounting these on a small shelf along with all the hard drives and accessories that I have. If that all works, I could simply get rid of the desk and bring the leather chair from downstairs. Should be a nice setup.
I have visions of punching a hole behind the monitors and making an in-wall rack that I can use to store my rather large 4U case. The wall there backs into the garage rafters and there's quite a bit of room. Ventilation and cooling would be an issue but I'm sure I can come up with something that works well.
What's your work/play area set up like? I'll post any pictures I receive...
Ice and Keeping Warm
We've been having some icy weather of late. The frosts have been beautiful -- much heavier than usual. Some of these last few days have just been gorgeous. Cold, crisp, but wonderfully clear!

Most of the plants are holding up well. With the exception of the new maple sapling and the new rhodedendron which our new puppy Jack 2.0 has decided to eat. I think they're goners.
In order to keep Jack warm, I made a dog house. The design is pretty simple, should be big enough for him even when he's full-grown and as a plus, it's insulated. It's not the prettiest thing inside but my woodworking skills are pretty rudimentary. I did get a new DeWalt Jigsaw (which works great). I was amazed by just how much this thing weighed... It's heavy enough that I really need a hand-cart to move it around. I suppose that's good -- the boys and the dog won't be able to move it around. The walls are about 2 inches thick -- outer hardi-plank, 1" foam insulation, and 1/2" plywood sheathing inside. I was able to use a lot of scraps that I had. I think the total cost was under $100.

I made it to match the house so at least it fits in nicely with the yard. The roof is done pretty poorly. I actually have enough to put on a second layer of shingles (which would probably help keep it dry) but I got lazy and decided to wait and see what Jack does to this before moving on.






