Plugging Back Into The Grid

I am finally writing another post after falling off the grid for a couple of months.  I had high hopes of writing a post every day in November, but the holidays combined with a full time job and paying side job keeping me up until 2AM or 3AM left me with little motivation to squeeze out a post.  Yesterday I finally completed the project and so I’ve got some more time on my hands.

I’m not at liberty to announce the project yet, but it is something that will be public and it involves my favorite web framework. Once it launches officially I will provide some more details to how it was created.

So now I have a few things I’ll be working on.  They’re going to be including Django, jQuery, CouchDB, Amazon S3 and Rackspace Cloudfiles.  At work I’ve been busy creating a solution with and ASP.Net MVC front end, A MOSS 2007 backend and some custom workflow type components built with Iron Python.  Hopefully that will lead to some more interesting posts here.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Exploring CouchDB

Over the last week I’ve been reading a few articles about CouchDB and playing with some sample code.  Yesterday I read Eric Florenzano’s article on Using CouchDB with Django and it elevated my interest.  CouchDB is a a document-oriented database from Apache.  It can be queried and indexed in a MapReduce function in javascript.  CouchDB also provides an incremental replication feature that finds and resolves conflicts bi-directionally.

Eric’s article provided an example of using CouchDB that didn’t fit what I was looking to do, but provided me with two key pieces of data; an example of using the python library for CouchDB and introducing me to an awesome project CouchDBX.  CouchDBX is basically an InstantCouchDB for Mac OSX.  It was very easy to download and start using CouchDB immediately.

Unfortunately this post has no code sample.  I haven’t slayed CouchDB yet.  Whether I use a Python class that inherits from object or from the couchdb-python library Document object, I end up with a json serialization error “<object> is not JSON serializable”.  It’s annoying, but there’s just something I’m still missing.  I’ll figure out (or some Google searching will).

I’m planning a demo at work.  Since I still work for a Microsoft based shop, most of these alternate technologies are like a traveling freak show from the circus for them.  I do see some places where CouchDB would work well, although security is an issue.  Where I work they want everything protected with CAC’s or certificates of some sort, so I’ll have to eventually look into how to do that with CouchDB.

UPDATE:

I was able to start storing data once I created a proper object.  It seems that a public property of a collection type isn’t json serializable.  I had a property “answers = []” and it was causing the serialization error.  Creating and updating data is working well now.  Time to tackle queries and then replication.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Dude I Got A………Mac

This weekend we drove up to Raleigh for the simple pleasure of giving Apple, Inc. a handful of money. I’ve wanted one for over a year, but the timing or the budget just didn’t line up until now. We purchased an iMac last year as a “Shared Family” computer. Wrong. After 3 days, my wife decided it was hers and the rest of us were never to touch it.  Ever.

First Mac

First Mac

I ended up getting the 2.53Ghz, with a 320GB HDD and 4GB of RAM.  I also purchased a wired keyboard with the number pad and a magic mouse.  The mouse is pretty good, like magic.  So far it’s been very easy to set up and use.

Now that I have the Mac I hope to take a little time to get to know the platform, try out some Obj-C, PyCocoa, and maybe try my hand at an iPhone app.  I’m very curious to see where this differs from my Linux platform.

If you want the play by play, here’s the Whrrl story to document my experience.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

November Blogging Thing

Ok so the annual November is the month for blogging thing is going on and this year I’m going to attempt it.  Like many other developers I don’t keep up with my blog as much as I should.  I don’t feel guilty about letting the reader down….it’s not like I have a huge following anyway.  The blog is more for me for getting out my ideas (somewhat cautiously still) and as a place to find things I need when I’ve forgotten.

So for the month of November, I will give it my best to write something daily.  It may not be long or particularly interesting but that’s not the goal!  Here’s to setting the bar low!

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

_Why All The Tears?

Last month when _Whytheluckystiff (_why) “went missing” I was not sure how to respond.  I needed time to process what was happening.  A lot of people, including some big names in web development were quick to step in and give a heartfelt thanks and goodbye to a man that had done so much for the Ruby community.

When I first started learning Ruby, I used the “Try Ruby in Your Browser” that _why made and hosted.  I read some of the coveted “Why’s Poignant Guide” and his blog, “Red Handed”.  I enjoyed exploring Hackety Hack and suggested it to friends.  His Shoes framework was also something I enjoyed, if only for a brief moment in time.

So here’s where I diverge from what seems to be the overwhelming sentiment of the majority of other people speaking out on the subject.  When _why left, he did not just abandon his projects and walk away.  He destroyed and deleted as he left.  He burned it all down and walked away into the wind.  I have 4 year old twins and a recent trip to the beach had a very similar outcome.  One child didn’t want her sandcastle to be used by anyone else, so she destroyed it before we left.  We talked about why she did it and what impact it would have.  She’s only 4 though, what’s your excuse _why?

So while _why doesn’t owe us anything, he surely didn’t leave in a way I could characterize as honorable or even mature.  Many people talk about the impact he made on their lives or learning process with his projects and his art, but to me his contribution will always be marred by his destcructive exit.  In my version of reality you’re not allowed to get full credit for the gifts you provide by  taking them back.

So _why,  good luck and Godspeed!  Your final and lasting impression is negativity.  Dude, I totally hope you come back only so I can sit next to Zed at a Ruby conference and huck milkduds and chunky bacon at you.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Scripting My Setup

I’ve had the occasion to setup new Ubuntu environments several times over the last couple of months and out of laziness I created a simple script to install easy_install, pip, virtualenv, virtualenvwrapper and fabric.  I’m no bash ninja, but this script makes it quick and easy for me to install the python tools I need to play.  Sharing this with you is only half of my motivation; I’m also putting this here for someday when I forget it…

#!/bin/bash
 
#prerequisites
echo ensuring buid-essential and required dev headers are installed
sudo aptitude install build-essential python2.5-dev python2.6-dev
 
#easy_install
echo installing easy_install
mkdir ~/tmp_sources
cd tmp_sources
wget http://peak.telecommunity.com/dist/ez_setup.py
sudo python ez_setup.py
rm -rf ez_setup.py
 
#pip
echo installing pip
sudo easy_install pip
 
#fabric
echo installing fabric
sudo pip install fabric
 
#virtualenv
echo installing virtualenv
sudo pip install virtualenv
sudo pip install virtualenvwrapper
 
#clean up
rm -rf ~/tmp_sources
echo all done!
[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Linux Use #257 – Baby Rocker

I absolutely love this video of using a shell script, string, and cd-rom to gently rock a baby…nice.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

I’ve Just Gone Mobile!

I now have the WPtouch plugin for Wordpress that has an optimized layout for mobile devices.  Makes the site way more readable within my iPhone, so I hope to not put off mobile readers any more!

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Changing Gears, Changing Venues, Changing Jobs

So I haven’t written in a while and it’s mostly due to a move 3,000 miles to take a new job in North Carolina.  The job is with a government contractor doing work very similar to a job I had worked in the past – although I’m not required to do it in a tent any more.

The job is a big change for me.  Leaving Ventyx, where I wrote mostly Windows client software using WPF, WCF and working with a large group of very experienced developers has now changed to a smaller, younger shop writing ASP.Net applications in a restrictive environment.  My new role has me working more on integrating coding standards, testing practices, security practices & pen testing, etc.  The new role should bring some new thoughts and subsequently new content here.

So as things settle down over here, the plan is to continue to spend some more time writing out some of my ideas here.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Spring Is Here In Sacramento

Yesterday I decided to go to lunch.  Alone.  On Purpose.  It’s not that I’m anti-social.  I’m probably less anti-social than the majority of developers I have worked with.  I have been working in my cubicle during lunch trying to complete some tasks I’ve been assigned, but I’ve started feeling like I never leave my desk.  I had already worked through most of lunch when I had decided to go, so I was about an hour after the lunch rush.

So I took a break.  I walked to a deli hidden away in the middle of a few office buildings down the street.  The “Secret Deli” as we refer to it at work.  I ordered a roast beef and cheddar sandwich on a garlic roll with every vegetable on the menu and a Snapple raspberry tea.  I grabbed a Sacramento News & Review, a local newspaper-ish publication and took a seat outside.  The newspaper grabbed my attention with an article on the front page “Why Twitter Sucks”, but that’s a topic for another post.

I picked a seat outside underneath a tree, next to a water fountain that resembles a small waterfall.  The sun was bright enough to keep me warm and so I sat there eating and reading, oblivious to the world around me.  It was awesome for me to feel like I could focus on enjoying lunch.

After I finished eating, I sat underneath the tree watching the pear blossoms fall in the wind into the fountain.  The foliage around the fountain is a vibrant green, like #234F32.  It made me think about the time we spend in cubicles, surrounded by dim walls.  The weight we assume onto our shoulders when we step into this small square of solitary confinement is too great if we isolate ourselves from brain stimulation you may find in the environment around you.

I’m going to start forcing myself out of the cube more and focus on “thinking out of the box”, literally.

[Slashdot] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]