30 December 2006

Skiing Silverton in Early January

Just firmed up a quick trip with two friends to ski Silverton (Colorado) in early January. One of the guys, Matt, just skied there today and said it was stellar. It's an interesting place, as it only has one lift, and during the main part of the season you must ski guided. This will be my first real backcountry excursion, although it should be relatively mellow in that regard (no skinning, hopefully minimal hiking as my fitness level is quite poor right now).

I also am hoping to take a lot of pictures. And, given my weak fitness, I expect to not last a whole day of this kind of skiing, so hopefully can also shoot some action shots of Matt and Barry. Matt will easily rip it up, as he's been skiing this kind of stuff all over CO and UT for the last few weeks (the lucky bum).

23 December 2006

Dtrace: the anal probe

So I'm listening to the ps pipe grep podcast the other day, and with his always interesting sense of humor, Jason provides this superb quote,

Dtrace is an anal probe for your application.


14 December 2006

John Nack Slashdotted My Flickr Photos of Adobe

The good John Nack mentioned my photos of Adobe that are on Flickr. And, of course this was about as close as they will get to getting Slashdotted, er, I guess that'd bhttp://beta.blogger.com/img/gl.link.gife Dugg these days.

I should of course make one correction. John mentions I'm a Photoshop engineer. This is only partly true. I used to be full time on Photoshop, but my features are complete (wait for the Photoshop CS3 Beta tomorrow, and I'll blog about them). I'm now actually back to doing web services and web applications (hopefully more on that early next year).

The Photoshop beta is very exciting for those of us who've worked on it though. And of course it's great for folks who've been clamoring for a Mactel version. This will be on tomorrow.

There are some other interesting things on Labs recently as well. For example, check out Kuler and Soundbooth. Really fun and great stuff that's been happening at Adobe. And of course there's all the great Flash and Flex related bits, which I have personally been using a lot.

Amazon's UnSpun done with Ruby on Rails

Pretty cool... Amazon's latest service/site, UnSpun, was implemented with Ruby on Rails. I knew Amazon was looking at Rails, but this is great to see.

13 December 2006

Winter Evening in Old Town Auburn

Gary and I went out for a quick photo shoot in the drizzle this evening. We started near the courthouse in Auburn, and then walked around Old Town. I will have to go back, as it took a while to start finding shots I was interested in. But, I got a few. Gary also took some nice ones.

12 December 2006

Adobe Sixth Floor At Night and Other Pics

I took some night shots the other night, while working on servers in the data center (had some time to kill while waiting for Linux to install). This one is shot from the six floor walkway and basketball court area. There are some other shots that I did time-lapse that show some of the planes that fly directly over our buildings.

11 December 2006

Hello BingoDisk, Goodbye iDisk

I've had a Bingo! disk for a little while now, and it's just making the iDisk of .Mac look pathetic. I don't use iDisk for much, except keeping some documents I need to keep available anywhere, and off-site, as well as sync'ing those across machines. But, iDisk performance is horrid, and Bingo disk is nice. So, I'm no longer bothering with iDisk, and hopefully I will not renew my .Mac account (not likely yet, because my main use for it is actually keeping Address Book, iCal, etc. in sync across various machines without having to think about it).

05 December 2006

Camera and Camelbak Backup Solution #1

Following up on my previous post about needing a backpack that was both for camera gear and held a Camelbak, for use mountain biking, I've identified my first solution. After further discussion with Dakine, and having talked to various others, I'm going with the Ridge pack (in black/olive) and their Camera Block. Dakine suggested this, and believes it should work. The only question is that it may be a bit of a tight fit with a full Camelbak bladder and Camera Block, but we'll see.

Their packs, with the diagonal ski carry are still the most appealing to me for carrying a tripod. I also like the back access and full/instant access to all camera gear that it and the Camera Block brings. I should get these within a week or so, and will report again once I've had a chance to ride with it and try it all out.

04 December 2006

Looking for combo camera and Camelbak pack

I've been searching for a backpack for mountain biking while carrying camera gear (digital SLR, extra lenses, etc.). There are many camera backpacks, but none seem to have a Camelbak/hydration sleeve/compartment. If you know of one, please let me know (add a comment). I've started compiling a list of some that may work, or that I might be able to customize or so on, on a backpack page. My current setup is just to individually carry camera+lens in a padding neoprene Zing pouch, and then carry lenses in separate lens bags, and stuff these in my Camelbak Transalp, which is a fairly large Camelbak. This works pretty well, but I'd also like to carry my tripod, and have a more organized setup, preferably with a bit easier camera access. If only the Dakine Sequence had Camelbak sleeve.

I haven't tried putting my tripod on the Transalp yet. I may be able to lash/secure it to it, but not sure. The tripod is a magfiber 4-section Manfrotto, so it's relatively light and a bit shorter than average. Regardless, it's not just a little thing to lash on.

24 November 2006

We need a large scale web app developer/architect

For our team at Adobe, we're looking for an experienced developer who knows larger scale web apps: how to design them, build them, integrate with hardware stacks, and so on. We already hired the more junior spot of the two we have open, but check out my previous post for the description of the more senior position. This promises to be an exciting gig, as we're using cool technology, building some great apps, and the team is a fun one.

21 November 2006

Lake Putt and the Wide Angle

Yesterday I drove up the hill to shoot, and try out my new EF-S 10-22 wide angle. This lens is a lot of fun! Not a lot of great photos from the shoot, but a couple nice ones. Here's the set of four on Flickr.

19 November 2006

Photography Beginnings

I've started to get into photography, and recently finished a short class. The class was given by my father-in-law, who's an avid photography, and while he does some work for pay, it's primarily a hobby. The class was very good, as I am a serious n00b when it comes to real photography (i.e. using more than a point and shoot, and having proper aesthetics and composition). But, it's been really fun, and I'm starting to get some pictures. I put up a of some I took for the class.http://beta.blogger.com/img/gl.link.gif

18 November 2006

Espresso vs. American Fear of Death

As seen on Labnotes:

“Serving size is about the American fear of death. Instead of a great, short experience, people want to prolong a mediocre experience.”

James Freeman of Blue Bottle Coffee

17 November 2006

Upcoming Adobe Apollo Seminar

Adobe is doing another Understanding Apollo seminar. The last one was very good, so I'd encourage folks to check it out. I've been doing some work with Apollo and it's really cool. The ability to create web apps that work online and offline has been a huge interest of mine, and really ups the usefulness of many apps.

16 November 2006

Web Developer Jobs at Adobe - Rails, Flex, RIA's, etc.

We're hiring at Adobe (we always are, but my team specifically)! We have two positions, with one being essentially more senior. See the job descriptions below. If you're interested, and meet the requirements, email me your resume (in PDF) at chris.bailey at adobe dot com.

Job JV110630

Position Summary:

The Digital Imaging Services team at Adobe Systems is looking for a superior web services developer to help us make our hosted applications and web services architectures best of class in an entrepreneurial and fast moving environment.

You need to have serious Web Development chops targeting LAMP-like platforms using the latest tools. This means you've implemented web services and hosted applications that utilize the latest dynamic techniques and languages, can simultaneously develop for multiple operating systems, know and use n-tier architectural patterns, can sling around SQL, a couple of scripting languages, and automate unit tests with ease, and may have even scaled up a hardware or network infrastructure or two. You should have demonstrated experience working iteratively and incrementally in an agile fashion with a high performance team. Be prepared to explain some of the architectures you've developed, answer coding questions, and tell us about your successes working with a dynamic team!

Knowledge & Skills:

  • Expertise with developing multi-tier, distributed web application architectures and deploying in live production environments.
  • Experience with Java, Ruby on Rails, or other current technology stacks required, experience with native code development in C/C++ a big plus. Four or more years of hands on LAMP (Linux, Apache, MySQL, Perl/Ruby) development.
  • Experience using quality focused development practices such as heavy unit test and automation tool usage or Test Drive Development strongly desired.
  • Experience of successful deployment of multiple iterations of a commercial/publicly accessible high traffic web service or application required.
  • BS/MS degree in Computer Science (or equivalent).
  • Must be able to work both independently and in a focused and efficient Agile engineering team that is geographically dispersed.
Job JV110631

Position Summary:

The Digital Imaging Services team at Adobe Systems is looking for a superior web services and infrastructure developer to help us make our hosted applications and web services architectures best of class in an entrepreneurial and fast moving environment.

You need to have serious Web Development chops targeting LAMP-like platforms using the latest tools. This means you've implemented web services and hosted applications that utilize the latest dynamic techniques and languages, can simultaneously develop for multiple operating systems, know and use n-tier architectural patterns, can sling around SQL, a couple of scripting languages, and automate unit tests with ease, and may have even scaled up a hardware or network infrastructure or two. You must have experience building infrastructure that is highly available and has had to grow quickly due to rapid uptake. You should have demonstrated experience working iteratively and incrementally in an agile fashion with a high performance team. Be prepared to explain some of the architectures you've developed, detail growing pains and solutions while scaling SW/HW/Net infrastructure, answer coding questions, and tell us about your successes working with a dynamic team!

Desired Talents:
  • Analytic.
  • Learner.
  • Communication (written and oral).

Knowledge & Skills:
  • Expertise with developing multi-tier, distributed web application architectures and deploying in live, high availability production environments.
  • Expertise with current commodity based hardware, networking, and software infrastructure and related Operations exposure.
  • Experience with two or more of Java, Ruby on Rails, Perl or other current technology stacks is required, experience with native code development in C/C++ a big plus. Eight or more years of hands on LAMP (Linux, Apache, MySQL, Perl/Ruby) or similar development.
  • Experience using quality focused development practices such as heavy unit test and automation tool usage or Test Drive Development strongly desired.
  • Experience of successful deployment of multiple iterations of a commercial/publicly accessible high traffic web service or application required.
  • BS/MS degree in Computer Science (or equivalent).
  • Must be able to work both independently and in a focused and efficient Agile engineering team that is geographically dispersed.

07 November 2006


Originally uploaded by Chris Bailey.
This is the frequent configuration of my desk in my home office lately. That's a MacBook Pro sitting on top of a PowerBook. I've been doing some things lately where the MBP is a big advantage, so have been bringing it home, even though I have the PowerBook to use at home. The PB's days may be numbered.

Note, I don't have them both on (i.e. fully awake) at the same time. The MBP is currently on and in use, but the PB is sleeping. I also use the handy smcFanControl to ensure the MPB's fans are cranked up and keeping it nice and cool.


Originally uploaded by Chris Bailey.
Here's my morning workout - stacking a half cord of nice oak firewood. About another quarter of it is on the side of the house, as it doesn't all fit in the rack (and this is claimed to be a half cord firewood rack :)

Adobe Open Source ActionScript code - attend the chat today

Today, there is a Mozilla developer chat with Brenden Eich and Kevin Lynch (Adobe), discussing Adobe is contributing source code from the ActionScript Virtual Machine to Mozilla! Learn more here.

04 November 2006

Encryption choice dramatically effects WiFi range

I've had range problems with the WiFi in our house for a while. And more than that, it seemed that the older iBook we have in the kitchen simply wouldn't deal with our encrypted WiFi. Last night, after setting up WDS (Wireless Distribution System: basically a way to link many WiFi base stations up to provide a bigger network range) I learned the bigger reason.

The kind of encryption seems to make a BIG difference. I had been using the strong WPA2 Personal encryption. This worked just fine within close range of the base station. But, terrible in other spaces that had worked before with an older base station. Switching to WEP 128-bit dramatically changed things, and now I have excellent coverage again.

The WDS setup also helped in one room in particular, and is relatively easy to set up. In case you're interested in that, here's two resources for doing it when using a Linksys WRT54G base station and then either Airport Express or Airport Extreme as the extension:

Linksys WRT54G, Airport Express, and WDS
Extend a Linksys WRT54G network via AirPort Express

Upshot: our kitchen laptop, which is about the furthest point from our upstairs base station went from sometimes seeing the network, but never being able to connect, to now having a solid 4 bar connection. Similar improvements in other places.

31 October 2006


Originally uploaded by Chris Bailey.
I'm taking today off. I'll be doing two primary things: cooking and coding. I'm going to do some coding work on my side project, as well as cooking for the little family Halloween get together we're having. As you can see from the pic, I'm grilling various peppers, some of which will be eaten as is, others are diced and put into a salsa I'm making. I've already got the chili simmering on the stove, and the immense cheese platter is up next. But, right now, it's time to take a break and code for a little bit. Happy Halloween!

30 October 2006

Fall Leaves of Beauty

Originally uploaded by Chris Bailey.
Here's a beautiful leaf from one of our backyard trees. Nearly all the leaves on this tree look like this right now, and it's just stunning. Taken this past weekend - the leaves have already changed quite a bit since.

21 October 2006

Moving to Eugene, Oregon?

My wife, kids, and I have been thinking about moving for a while now. We can't stand the heat here in Rocklin, CA, and have been wanting a different kind of town - less strip malls, more outdoor and healthy living oriented culture, better coffee ;-) and so on. We're now planning to move to Eugene next year, which is relatively shocking to me. I had thought we'd pick Bend or Portland, and was fairly biased against Eugene, but then being thorough, went to visit last week. We wound up liking it quite a lot. Also, we went into 10 houses with a realator and liked a lot of them, and it's reasonably priced (by CA standards).

The main downside from my perspective so far, is that the startup and tech culture is relatively minimal, Portland being quite superior. But, I have a ton of experience working remotely (did so for 6 years for multiple employers), so know it can work. Mainly I'd just miss the energy of being colocated with your other startup cohorts. For the time being I'd simply plan to work remotely in my existing job.

All in all, quite exciting. We've even found a house we love, so the question now becomes whether we go for that, and own two houses until we can move and sell ours, or wait a bit. Might be a crazy next few months.

New Camera Gear

I'm quite excited, as I just ordered a new camera. I'm getting a Canon Digital Rebel XTi. I chose to get the "throwaway" 18-55 lens with it, which we did not do when we bought our Rebel XT, as instead we got the super sweet EF-S 17-85 lens, which is awesome. But, since we had the 17-85, and I also ordered a 70-300 IS lens, and knew I couldn't take the 17-85 away from my wife much, I got the cheap 18-55 to mostly fill the lower/wider angle end. We also recently got the EF-S 60mm macro lens which is pretty damn cool if I do say so.

Photography is a new thing for me, but I've been really enjoying it, in large part to using a DSLR. I used to use point-and-shoot digital cameras, and they were fun, are good for carrying on a mountain bike ride, etc., but the DSLR is just so amazing in comparison. I take much better pictures with it, in part I think because it makes me take a bit more time and simply the heft of it makes me more serious about it I guess.

I chose the XTi this time almost completely on price. Dell had this superb deal going on them, combined with a 20% coupon, which got me the body and 18-55 for $635 which is a screamin deal. I'd been debating between it and the 30D, which my father-in-law just got, as well as a friend. The 30D is super nice, but the Rebels are quite fine for me, and the nearly $400 I saved payed for most of the 70-300 lens.

10 October 2006

GMail Package Tracking Rocks

One of the things that's been added to Gmail somewhat recently (AFAIK), is that it senses package tracking numbers in emails, and adds a little link to track it in the upper right of the mail window. This simply rocks. It's a little thing, but darn if it isn't just a big time saver and great convenience. Small things like this can really set services apart.

09 October 2006

Bookmarklet for Pandora mini player

Matt recently turned me on to the Pandora music service. Very cool - check it out if you haven't. I always like to use their mini-player, but I wanted to be able to just bookmark that and have the mini player open. So, I created a bookmarklet for it. Drag the link below to your bookmark toolbar (in Flock or Firefox; other browsers use the appropriate mechanism). Now, whenever you click that link, it'll open a new window with the Pandora mini player.

Pandora mini player

Resources for Restful Authentication in Rails

I've been doing a fair bit of REST web service work in Rails apps lately. One of the interesting parts is doing the authentication pieces, and coordinating this with your regular interactive authentication. I've also been ramping up on the whole Simply Restful thing. I'm not totally sold on it, but the one thing that is definitely appealing about it is the further constraint it places on your code for which that primarily comes down to enforcing more consistency.

Anyway, in terms of REST WS API's, and authentication, there's a new Restful Authentication plugin that uses acts_as_authenticated. The San Diego ruby user's group had a video podcast and slides that touch on it briefly. These point to NAME's blog entry on using this for REST WS and authenticated feeds as well. Good stuff.

Why SSH stopped working on my Mac - with solution

I use SSH a lot, and recently it stopped working on one of my Macs here at home. I couldn't figure it out for a long time. The only thing I'd changed was that I got a new Linksys router (a WRTG54, which has WiFi and a switch). Previously I was using a Linksys router that was single port, and no WiFi.

Long story short, it came down to the DNS setting on my Mac. Even since I used SonicWall's, I had set my DNS entry to that of the router, not those of my ISP. This was nice, because then if the ISP changed DNS entries (which I pick up via DHCP), I'd be insulated. Well, apparently with the new Linksys, this somehow messes up SSH. It doesn't seem to bother anything else.

The one other nice change though, is that SSH connections now happen noticeably faster than they used to. Thought I'd pass this along in case it ever happens to anyone else.

08 October 2006

Installing Rails, Apache 2.2, and Mongrel on Ubuntu Dapper 64-bit

I am setting up a system at SliceHost, on one of their Ubuntu Dapper slices. First, I'm not as familiar with Ubuntu as I am Fedora, but this is one reason I chose Ubuntu (to get more experience). Anyway, I found several other blog posts and such on the web about this, but none worked perfectly. I glommed mine together by using them though. Here they are:

And, here's what I did. First, uncomment the universe lines in /etc/apt/sources.list. Then...

# apt-get update# apt-get dist-upgrade
# apt-get install ruby ruby1.8-dev ri rdoc
# ln -s /usr/bin/irb1.8 /usr/local/bin/irb# wget http://rubyforge.org/frs/download.php/11289/rubygems-0.9.0.tgz
# tar xvzf rubygems-0.9.0.tgz
# cd rubygems-0.9.0
# ruby setup.rb
# cd ..
# rm -rf rubygems*
# gem install rails --include-dependencies
# dpkg --purge apache apache2 (this removes Apache if it exists, which it didn't)
# apt-get install build-essential zlib1g-dev
# wget http://apache.rmplc.co.uk/httpd/httpd-2.2.2.tar.gz
# tar xzvf httpd-2.2.2.tar.gz
# cd httpd-2.2.2
# ./configure --prefix=/usr/local/apache2 --enable-mods-shared=all --enable-deflate --enable-proxy --enable-proxy-balancer --enable-proxy-http
# make
# make install
# cd ..
# rm -rf httpd*
# apt-get install postfix (Then, use the "Internet Site" default setting, and picked "WeighPals.com" as the name)
# apt-get install mysql-server mysql-common mysql-client libmysqlclient15-dev libmysqlclient15off
# apt-get install libmysql-ruby1.8
# gem install daemons gem_plugin mongrel mongrel_cluster --include-dependencies

technorati tags:, , ,

06 October 2006

Friday Night Coding

Some might consider it sad, but I'm really enjoying spending my solo Friday night coding.  My wife and kids headed to the Bay area earlier this evening to spend time with the grandparents and some of my wife's friends.  I have a project I've been wanting to work on for a while, so I'm taking the opportunity to hack for the evening.

Right now I'm enjoying:

  • listening to Pandora, a very cool service
  • sipping a decaf espresso (I don't need to stay up that late, and I had a regular espresso earlier this afternoon :)
  • Hacking Rails code in TextMate, with ZenTest's autotest keeping me on track.  The project involves a few interesting things:
    • Amazon's S3
    • Music files
    • Some "Web 2.0" features (natch)
    • Client side code (just for Mac so far, but hopefully Linux and Windows as well)
  • Figuring out where I'm going to host it.  I believe I will have one of TextDrive's new containers soon, but we'll see.

Hope you're enjoying your Friday night as well.

technorati tags:, , , ,

30 September 2006


Originally uploaded by Chris Bailey.
We had a beautiful sunset this evening. Made it home from a walk with the kids, ran in to grab the camera, and got what I could.

01 September 2006

Gmail sucking lately?

Anyone else find that GMail is incredibly slow lately? Half the time it seems to time out or fail to do various things. This has been the case for several days now. I have a GMail domain account as well, and performance there seems fine, so that's interesting. It's a real bummer, makes using it rather painful.

29 August 2006

Problems with RubyGems and Platform Specific Gems

Something that at least a few of us are annoyed with is the case where there is a ruby version, as well as a platform specific version of a gem. Good examples are mysql and mongrel, amongst others. I see a couple of issues here, but the crux of the issue is that this kills the ability to automate (non-interactively) installation.

First, why should the system even offer the win32 version of the gem to me if I'm not using a Windows machine? Fixing that would fix the problem for many people.

But, let's say you are doing multi-platform development, and in particular include in that Windows. I think RubyGems ought to be updated so that you can specify a platform variant when you install a gem, much as you can specify a version. This way, your automation script could simply specify the one it wanted, given the platform it was running on.

The other thing I'm wondering about is what solutions people have in terms of being able to freeze your gems, but where you have gems that have native code, and where you work on multiple platforms. This must be extremely common in the Rails world, where it seems the standard developers machine is MacOS X, and deployment servers are typically some UNIX flavor. Also, I've yet to try it, but I presume things don't behave well if you freeze gems on one platform and then go to another - I assume it freezes gems that include native code?

Anyone have solutions to these issues?

technorati tags: 

28 August 2006

WebORB for Rails: connectivity between Flex and Flash Remoting clients and Ruby on Rails

WebORB for Ruby on Rails | Flex RPC and Flash Remoting for Ruby on Rails

This is just really cool. Take a look at the page. It makes putting a Flex front end on your RoR apps really easy. What's nice is that it's an easy install, and then it exposes your Rails objects as Flex Data SErvices or Flash Remoting gateway, which means that it's the natural way for Flex or Flash to work with it. In the past I've connected Flex apps up to Rails apps via web services and JSON as the data transport. This works just fine, but it appears this will be a more direct and natural integration for Flex. Here's the diagram from their site:

WebORB diagram

technorati tags:, , , , ,

21 August 2006

Resizing hard drives in Parallels on Mac

Parallels is a very cool virtual machine system for Mac (and Windows and Linux). Particularly cool is the ability to resize the hard drive image you have for a given VM. But, the Parallels manual is not accurate on how to do this, or rather is missing some steps (maybe they don't intend for you to have to do this, but haven't finished this functionality?). A thread on their forum leads to the solution, but the thread is a bit jumbled and you need to put together the full solution. For ease, here's the step by step I used to make it work:

  1. Shutdown Parallels

  2. Run the "Image Tool" that comes with Parallels.

  3. Resize the disk you want (it needs to be an "expandable" disk, but Parallels makes them this way by default. If yours is not for some reason, read their manual on how to convert it to one).

  4. I did not bother making a backup of my image prior to this, but of course, standard cautions apply.

  5. Now, what Image Tool actually does, is just to make the disk bigger, it doesn't actually affect the change on your virtual disk volume.

  6. Go get the GPartEd LiveCD. You don't need to burn it to a CD.

  7. Now, start up Parallels, and do two things for your virtual machine:

    1. Change the boot order, so CDROM is first, and

    2. In the CD options, change it to use a disk image, and then go browse to the GPartEd Live CD ISO you just downloaded.

  8. Run the VM, which will boot into GPartEd. Accept all the default options.

  9. Once GPartEd is running, select the initial partition, and click the Resize toolbar button. In the resulting dialog, drag it to fill the additional space, hit OK; then Apply the changes. Shutdown GPartEd.

  10. Boot up your Parallels VM. If doing this for Windows, you'll see Windows do a chkdsk. Once booted, you'll see it say you have new devices and need to restart. This is fine, do so. Once it restarts and is back, you're good to go.

19 August 2006

Headed to Scale With Rails Workshop; and Interesting Rails Deployment Options

Next week I'm headed to the Scale with Rails workshop. I'm hoping this will be quite useful and interesting. It will also be cool to test out TextDrive's new container hosting setup. I've been doing a lot of investigation on VPS and similar systems lately. Also, another very intriguing setup will be the Engine Yard hosted setup. I've been talking to Tom there, and I like what I hear so far. Even cooler is that they are in Sacramento, so I plan to get together with them in the near future and discuss even more. Another non-traditional, much more supported VPS setup is Rails Machine. These are all quite appealing to anyone who wants to concentrate on development of their app, and leave the OS maintenance and related bits to someone else that may have more expertise in that area. For my personal setups, this is quite appealing.

technorati tags:, , , ,

18 August 2006

Using Non-CRUD Actions With Simply Restful Controllers

I've been making use of the simply restful integration in my Rails apps. However, one of the things that took a bit of digging to figure out, was how to map additional (non-CRUD) actions. If you try to simply use a URL of /controller/action that won't work, because it'll treat the action as an ID.

I came across this blog entry on Ryan's Scraps, which explained how to add more actions to the mix. That got me most of the way there. However, what happens if you want to support both GET and POST to an action? A good example of this is a login form. You want GET to show the form page, and POST to do a submit to the login action. As it turns out, you can do this easily with the following mapping:

map.resources :users, :new => { :login => :any }

For more good info, and more of a primer, on simply_restful, check out David Goodlad's post.

technorati tags:,

10 August 2006

Flash Player 9 for Intel Macs Now Available!

The release version of Flash Player 9 is now available for Intel Macs.  Run and get it.

technorati tags:

08 August 2006

Confluence vs. Basecamp

I've recently been using Basecamp for some project management.  It was working fairly well.  I can definitely see the value if you are a consulting firm or similar where you are manageing multiple clients/projects.  The main drawback relates to their claimed strength of simplicity.  Sometimes it's too simple.  I'd like to see multiple todo pages for one.  Also, my real complaint is speed.  Basecamp seems very slow to me, painfully slow at times. 

On a new project, we evaluated Basecamp vs. using a wiki and sort of doing it ourselves.  Due to various constraints our wiki choices were MediaWiki (which is what powers Wikipedia, and many more), or Confluence.  MediaWiki definitely came up short.  We have a range of people using this, from engineers to marketing folks.  Wiki's sometimes present stumbling blocks to those who prefer to write in more of a word processor environment.  Also, we really wanted a good task list system.  We tried the two task extensions for MediaWiki, but neither seemed to actually work properly.

I then setup Confluence.  It should be noted that it is not open source and has a significant price tag that may be a prohibitive factor for many (note to open source folks though that they have arrangements for that).  Setup was simple drop-in and run a startup script (as well as create a database in your DB engine of choice). 

I am impressed!  Confluence is a superb wiki!  I've used several other wikis over the last year or two (we use twiki heavily as well, and I've tried a half dozen others).  Confluence takes it up a notch.  It feels polished and professional, and it's been a joy to use.  Also, the less-technical folks are finding it a lot nicer to use as well.  And, their task extension (we're using the Enhanced Task List macro) is quite nice, perfect for what we're after (fitting our Scrum use).

Another thing I like is how it manages hierarchies of pages, and provides automatic lists of child pages at the bottom of a page.  This allows you to forgo linking when you don't need to.  Also, the mail features, and RSS abilities are well done.  So, I'm sold, and we're proceeding full steam ahead with Confluence.

technorati tags:, , ,

30 July 2006

My contribution to PicoContainer

Ok, contribution is a bit reaching, but Paul Hammant was nice enough to list/credit me on his latest checkin to PicoContainer.  This is fun, because I'd done a very brief bit of pair programming with him, whilst at the Urban Grind cafe following the last day of OSCON.  We were working on the PicoContainer and JRuby stuff.

technorati tags:, , , , ,

OSCON: LiveJournal's talk

I attended the LiveJournal session on the last day of OSCON.  I've read previous slide decks from them on various scaling issues and their tools, etc.  Also, since I've been thinking about memcached (like everyone else I guess), and MogileFS, it made sense.

The presentation was mostly an overview of the main open source tools they provide: Perlbal, MogileFS, and memcached (see code.sixapart.com page for info).  Perlbal is their very configurable load balancer; MogileFS is a file store, not a file system; and memcached is a caching system.  They did not get into setup details on any of them.  They did cover some general aspects of LiveJournal's setup (and it sounds like VOX is similar), and a few points of interest, some relatively common ideas, some more detailed and useful ones (more on this below). 

MogileFS is quite interesting to me.  It is very similar to Amazon's S3 in general use, in that you store things essentially via keys, not via normal file system directories and files.  So, what's cool about this is that you can have a somewhat infinitely sized system where you don't worry about limitations on directory contents, file names, disk space, and so on.  Further, MogileFS allows for a "class" notion, which you configure to mean how many redundant copies you want.  The typical example is that for photo storage, you'd have an "originals" class where you might have 3-4 copies, and then a "thumbnails" class where you had maybe one or two (since you can regenerate these).  Also, there are namespaces, so you can partition data that way.  You must use a client library with MogileFS, but they are available in many languages.

As a general recommendation with their tools, they noted that you would likely start out with your normal system of some web servers and DB server(s).  Then, you'd add in memcached, next Perlbal in front, and finally add MogileFS (which essentially requires at least two machines, if not three or more depending on how you configure the three pieces involved for MogileFS).

They also noted that they use Gearman for job queues where the jobs don't matter, and either they're done in 10 seconds or they're gone.  They then use dschwartz for queues of durable tasks, that you care about.  You can send in multiple of the same task, and they get properly coalesced into only being done once.

Some of the interesting points I noted were:

  • LiveJournal started on a shared hosting setup, then grew to dedicated, and so on until where they are today.  They are still in a single data center, although looking to either go to multiple, or move (their data center is in SF, and they would like to be in a less environmentally disasterous area).  They used to have a data center in Japan, but it wasn't yielding advantages.  This was info I gathered when I talked to them after the session.
  • They use lots of cheap SATA drives, and they found that, at least today, the 250GB disks are better than the 500GB disks, because they are less susceptable to heat, and can be used to capacity, whereas the 500GB's could only be used up to about 350GB. 
  • Further, they do not use RAID (5 anyway).  They do use RAID 0 or RAID 10 say for database systems, but not for the file systems.  With MogileFS, they don't need it, and it doesn't handle all problems, like power failures and so on.  Also, fsck doesn't run in parallel, so it can take a long time.
  • Continuing this, use lots of small machines, so you spray the disk writes across them, as opposed to big honkin' systems.
  • Make sure MySQL is not a SPOF (single point of failure)!  Single big MySQL boxes are not good, better to have smaller ones that are faster and cheaper and where MySQL can perform better (better/faster IO).
  • They think they'll get rid of Apache within a year or so (Perlbal is enough).  They have BigIP boxes in front of Perlbal's for simple load balancing, and these are nice boxes, but they don't know how truly busy the Apaches are.
  • MySQL is the only thing in their system that blocks.
  • They're moving to dual, dual-core machines in 1U boxes to cut down on heat.  4GB of RAM per box.
  • I didn't get the exact config of MySQL, but they said they have about 25 boxes running it, with varying configs for different things.
  • They don't explicitly talk to the Odeo guys, but do see them regularly.  I had asked about this because Odeo is doing various Ruby versions of some of their tools (memcached and MogileFS I believe).

Note, for an older, seemingly slightly out of date slide deck, check out their presentation from last year's OSCON.  This year's presentation I have yet to find online.

technorati tags:, , , , , ,

29 July 2006

Leaving OSCON

I'm at Portland Airport right now (hurray for free WiFi!), about to head home.  OSCON 2006 was great.  Far and away the best part was meeting people, and the impromptu gatherings.  Yesterday afternoon I hung out at Urban Grind with Paul Hammant, Greg Luck, James Duncan Davidson, and several others, and had a great time, then continued on to dinner with a subset.  We talked Java, Ruby, JRuby, Python, did a tiny bit of pair programming, and tried to find Perl folks (we finally found Matt, a young guy who's working on Parrot, and just finished and internship at Amazon).  Dinner was great, and I'm signing off now, as I have 3 hours of sleep and need to get on the plane.  I'll backfill various notes, session info, and stories over the coming week.

technorati tags:, , , , , , , ,

24 July 2006


Had a decent day at OSCON today. Started off with Amy Hoy's JavaScript Bootcamp. Unfortunately, like some folks I talked to at lunch, some of the sessions today were too high level. This one, for me, was just way too basic. It was a very brief intro to JS. From the description of the session, I knew there would be some tutorial, but it also mentioned getting into more AJAX and JS libraries, so I'd figured I'd sit through the initial part. But, alas, AJAX and things like prototype were covered for about 5 minutes at the end. So, while it was not a bad session as a JS intro (there were folks there that were clearly learning JS for the first time, etc.), it was basically a total waste for me. Amy overall was a fine presenter (especially given she was sick). The only dig I'd make was that she didn't realize do-while constructs were different than a plain while's. This is somewhat stunning in that this is the same across nearly all languages, and if they were the same, why would they have them both (oh wait, maybe Perl people would want those multiple ways ;-)

Lunch, or rather lunchtime (no lunch provided at conference) I talked to some folks about OSS in general and their interests (and mine). Two of them were into Asterisk, with one having set up a home Asterisk server so he could tie into his company's phone system. We also briefly talked about sshfs, which is something I'll have to look into, sounds interesting.

After lunch I headed to the Powell's mini-bookstore and lucked out in that Lucas Carlson was there signing his newly released Ruby Cookbook book. So, I picked that up, and one other book.

The afternoon session was a little better. I attended the Rails Guidebook session with Mike Clark and Dave Thomas. These guys are great speakers. Since I've been working with Rails for a bit, I knew roughly the first 75%. But, I hadn't yet gotten into RJS, so that was cool, even if brief. There were a few other tidbits that weren't in the slides, but were good, such as on deployment. Specifically, Dave mentioned that, paraphrasing, most of the people he knew that were running heavy traffic sites were using file based sessions on NFS volumes, in order to do distributed session management, as opposed to memcached. He mentioned that memcache[d] was a bit of a pain to set up. Also, the current "best" (my take, based on their comments, and various bloggers) deployment setup is Apache 2.2 with mod_proxy_balancer and Mongrel. I've mentioned this, with a few good links, in a recent post.

At the end of the day, I took the MAX train over to downtown PDX to meet coworker Mike Potter for dinner. We had great conversation and tasty Italian food at Pazzo Ristorante. So, the day improved as it went along, and that's a good trend. I took the picture above from my hotel room this evening. See you tomorrow...

technorati tags:, , , , , , , , ,

23 July 2006

121 Degrees!

Ok, in case you didn't think it was hot, here's my neighbor's car's thermometer as he drove back into town. Ya, 121 degrees! Ok, so the car thermometer is not the most accurate, but close enough!

technorati tags:,


I've arrived!  w00t!  (cant I say that?)  Anyway, flew in, flight was only an hour late--listened to some podcasts and relaxed.  As hot as it may be here in Portland, it's not as hot as at home (113 today).  Took the MAX train from the airport to the hotel, super easy.  Checked in, then went and did the registration thing at OSCON.  It's about a 10 minute walk from the DoubleTree hotel here. 

After that, I came back to the room and wanted to do a video chat with my kids (4 year old daughter and 18mos old son).  But iChat was screwing up for some reason; and it didn't give me any useful errors!  Normally at hotels I may run into their network being too slow, but iChat will tell you that.  Nope, here it was just something obtuse so I sent it to Apple a half dozen times.  A real bummer though.  I'll have to try from OSCON tomorrow, or maybe Urban Grind (there's one a few blocks away).  Apparently this is where all the kewl kids hang out, although probably at the one in the Pearl.  So far in my short view radius I've only seen Starbucks :(  I'm now hitting the Delocator though.

Just ordered room service with a local brew.  Hopefully will go out tomorrow night.  Now time for a little code before dinner...

technorati tags:, ,

22 July 2006

FOSCON II: The Ruby Rodeo

Are you going to OSCON? Interested in Ruby? Then make sure to check out FOSCON! There will be speakers, pizza, etc. See you there.

technorati tags:, , ,

20 July 2006

Virtual Servers and Web App Deployment

I'm getting very interested in server virtualization system, such as Xen.  And, more to the point, using virtual server hosting options, as opposed to either a regular shared host setup, or a fully dedicated machine/colo.  One reason is cost as related to the configuration of your setup (and this assumes you do not need to own the entire machine due to your application's needs).

For example, maybe I have a budget of around $500/month to get a web app going.  Well, that'd buy me a couple dedicated servers (at a say mid-priced place) with probably minimal to "no" support.  Or, it'd buy me somewhere between 8-10 virtual servers on a virtual server system.  The virtual servers are far more RAM constrained (this seems to be the big dividing line).  For example, those 8-10 server instances would have around 192MB of RAM.  This appears to be decent for running a basic Rails stack for example.

But getting back to it, the reason I find this appealing, at least for early deployment, is that it would allow me to mimic a more fully scaled solution simply due to having more "servers."  Instead of having say one web app server and one DB server with the full colo setup, you could have say a half dozen web app servers, a cluster of DB servers, and then maybe another box that you dump backups to, or dump logs to, or whatever.  What it really lets you do though is setup your fully scaled architecture, something like this, this, or this.

It all amounts to being able to test and setup your system in a more real-world scaled design from the get go, instead of having to redo that in the midst of your site being hammered with traffic.

technorati tags:, , , ,

19 July 2006

Time Breakdown of Modern Web Design

18 July 2006

Store/Sync Your Data Online?

We're still working on the problem of synchronizing data online/offline, but the storage issue looms large. Will users be comfortable having all of their information stored online? I think so, but RIA developers need to take pains to ensure that the data is secure and trust is not misplaced.

Digital Backcountry - Ryan Stewart on Building the Web with Flex and the Flash Platform: RIAs in "World War 2.0"

The above topic in general, i.e. whether or not to keep a copy of your data, or synchronize your data online is becomming a bigger and bigger question and issue.  This is something I'm very interested in, and doing some work on myself. 

I don't believe it's a simple issue of all your data online or not.  I do however want ubiquitous access to my data, but most solutions so far come up very short.  Mainly this has to do with security and privacy.  I already use del.icio.us, Flickr, Backpack, Basecamp, Gmail, and various other tools that store some of my data online, and or hold a copy of some of that data.  But, I most surely do not keep my Quicken files online, or various other documents and information that I consider particularly sensitive or needing explicit security. 

But, I really want this.  I want all my data available on any computer I use.  I'm starting to look at things like S3 to create my own solutions.  One notion is to store everything on the server encrypted.  This works, but becomes a significant overhead when you start storing large amounts of data, or large files like media.  Maybe it is an option per file or per resource location.

I think it will be very interesting to see what Google and folks do in regard to this aspect.  Sure, GDisk would be great and all, but only for some things, at least until there's some level of security.  And believe me, just having some code of conduct, terms of service, and employee guidelines for those working at the data centers, doesn't mean there can't be abuse - you need to make it essentially impossible for folks to see your data (when you care about security/privacy of said data).

technorati tags:, , , , , , , ,

Al Gore's Excellent Speech

I recently listened to a superb speech by Al Gore, which he presented to the Stanford Business School. Mr. Gore is a great speaker (he was far more engaging than I think past criticism has claimed). The speech was dead on, interesting, and damnit, people should just think and listen to this stuff!
The industrialized world is on a collision course with nature, says environmental hero and leading expert Al Gore, who passionately urges a Stanford Business School audience to take action to save the environment. In his presentation on global warming Gore presents with alarming clarity, conclusiveness, and humor, that the fact of global warming is not in question and that its consequences for the world we live in will be disastrous if left unchecked.

Odeo: Al Gore - The Earth in the Balance

technorati tags:, , ,

17 July 2006

This Morning's Capuccino


Illy beans, non-fat milk, Illy cup, made on Jura Capresso Impressa S9.

technorati tags:, , , ,

15 July 2006

Freezing Rails and Gems - how to leverage for version control?

Something I want to do for our development environment is to put Rails, and all our Gems, as well as other tools we use, all under version control.  The way we do this now is to freeze Rails, and then put all the other stuff in a directory in our code repository and only install from there.  I was wanting to freeze gems as well, but the way I understand this, it wouldn't work because it freezes what you have installed, which means it is platform dependent (assuming you have some gems that use native code).  I need to support development, currently primarily on MacOS X, but also on Windows, and then various UNIX flavors such as Linux, BSD, and Solaris.

I'm curious what other folks are doing to ensure their versions of everything are correct for any point in their source code control?  I also want to do this with non-Ruby technologies as well, so it's generic problem.  Things like MySQL, DarwinPorts, and so on.  The script I mentioned I want to write is aimed at handling much of this, but it'd be nice to have the actual "installed" variants in source control so you simply had to sync/update to latest and have everything except a few major bits (MySQL for example) guaranteed to be correct.

technorati tags:, , ,

14 July 2006

Senator Ted Stevens: Master of English, and Internet Authority

Ted Stevens, the Senator who's head of the commerce committee, is well, an Internet idiot, to put it plainly (and in language hopefully he can understand, since he even seems to have a difficult job of putting English sentences together). As always, Jon Stewart has fun with it.

technorati tags:, ,

13 July 2006

Explorer Destroyer: tweaking it to work on Blogger

Explorer Destroyer - Switch to Firefox, Make money from Adsense Referral

I've just set up Explorer Destroyer on my blog. Their instructions are good, but if you use Blogger to host your blog, and you have the little Blogger bar across the top of your page, you'll need to make one tweak to get the Explorer Destoryer box to show up completely. I've only done this for (and it probably only applies to) the Level 1 version. In the Level 1 script code, look for the following line (currently it's line 150 in the HTML they supply):

<div style="padding: 20px; background-color: #ffffbb; font-family: arial; font-size: 15px; font-weight: normal; color: #111111; line-height: 17px;"&gt;

Add a top margin to account for the Blogger bar, thus changing the line to:

<div style="margin-top: 30px; padding: 20px; background-color: #ffffbb; font-family: arial; font-size: 15px; font-weight: normal; color: #111111; line-height: 17px;"&gt;

technorati tags:, , , ,

11 July 2006

New Job!

I'm very excited.  Beginning in August, after returning from OSCON, I will be changing jobs.  I'll still be at Adobe, but I'm moving from the Photoshop team, to a new team (that is just me (development wise) to start), and back to doing web apps and web services. I'm further psyched because I'll be doing Ruby on Rails (taking a project I was working on in my spare time and making it a "real" project), Flex, and other cool stuff.  I will do some minor continued work on Photoshop, but really be concentrated on this new gig.

I've been working on Rails stuff in my spare time for a while, but now I'll be joining the ranks of those getting paid to do it.  Plus while I have utmost respect for the Photoshop team, and really like the folks there (there is some truly amazing talent, although that's true throughout Adobe), I'll be back to my real strength (and love) which is web and network related apps (and maybe next year when CS3 ships, I can reveal what new stuff I worked on in Photoshop - some rather interesting bits indeed!). 

technorati tags:, , , ,

SmackBook Pro

SmackBook Pro is rather nifty.  For those of you/us using virtual desktop software (Virtue Desktops or Desktop Manager are the ones it works with), why bother using a hot key, a menu, or a panel, when you could just use your bare hand to smack the side of your laptop's monitor in order to change desktops?!  Check out the link, and watch the video:

Medallia Blog: SmackBook Pro Archives

technorati tags:, ,

Blogged with Flock

Day 2 with Flock

So far I'm digging Flock.  I'm using it as my primary browser on all my machines now (4 Macs and a Windows XP machine).  I've run into two issues, one minor, the other, I'm not sure:

  1. The favorites/bookmark bar does not appear to support folders, like it does in Firefox, etc.  This is a fairly major bummer to me.  I don't use a Favorites menu or anything beyond the bookmark bar.  I use bookmarks solely for the things I use on a regular basis, and thus this holds what I need--assuming I have folders. 
  2. On Windows, Flock doesn't seem to be able to import all your Firefox settings.  It only seems to see/allow/support IE import, which is pointless for me (I do use IE occasionally, when I have to, and actually in that case I use Maxthon instead, but it's rare).

Also, I need to look at bookmark synchronization more.  I was under the impression that Flock did this, but it it's unclear if you are using full del.icio.us with it, if it does anything beyond that.

technorati tags:, ,

Blogged with Flock

10 July 2006

Trying out Flock

Flock — The web browser for you and your friends

I'm trying out the Flock browser, which is Firefox based. So far it's pretty darn cool. I'm not using every feature (I prefer NNW to Flock's RSS, but that isn't their intent to replace anyway). But, the Flickr integration is cool, and this post is testing out the Blogger integration. The del.icio.us integration rocks. Also, the UI is very nice, and I dig how they've already integrated some of the nicer extension features. I've of course already installed other extensions like Firebug, Web Developer, Gmail, Session Manager, and so on. Anyway, check it out, pretty interesting.

Also, their search box is great - it does multiple searches while you are typing, and shows them in a drop down. So, you can simultaneously search Google, Yahoo, Amazon, Wink, or whatever. It's very nice, and highly effective. I should note that some of these things may be existing Firefox extensions, but Flock simply integrates them really well, and avoids me having to manage that many more extensions.

About the only problem I've found so far is that it has the old focus problems on Mac, when running under CodeTek Virtual Desktop. This plagued Firefox way back, so I'm not sure why Flock still suffers from it, as Firefox fixed it a long time ago. But, I am currently switching all my Macs off CTVD anyway, because it doesn't work well at all on Intel Macs. I'm using Virtue Desktops on my MacBook Pro, and tonight switching the rest of my Macs to it.

technorati tags:, , , ,

Blogged with Flock

09 July 2006

Rails environment setup and update script

I'm about to embark on creating a script/system for keeping a project's Rails and related environment up to date, as well as doing an initial setup. Gems and various Rails pieces already can do some auto-update and setup things, but I'm wanting something more professional, and something more explicit and exact in terms of versions used.

The idea is that this system will take a bare bones machine from essentially just having an OS, to full development or production ready. And then also, once set up, it will update it. So, it will install Ruby, Rails, Gems, database of choice, libraries needed (e.g. ImageMagick), other components used (e.g. DarwinPorts), etc. In combination with the source code control system (SCCM) (such as Perforce or Subversion), it will keep each piece up to date.

In addition, it will do things like install gems and other pieces from what you store in your SCCM - not just from the net or by doing say a generic "gem update". The reason to do this is that you can track the exact versions used at any given point in your application's development or deployment. You won't have to somehow separately document that you were using XYZ versions when you deployed 2.1.3 of your app, etc. I've used, and have heard others who take this further in the past, by also putting even the OS, development tools, and so on withint he source control system (I've never done the OS part, but I believe at Siemens they used to do that back in MacOS <= 9 days). This script also helps ensure all developers and deployment systems are in sync. At the moment I'm planning to do this with a bootstrap bash shell script, but then once Ruby is available, it'd kick over to a Rake script. Partly I'm choosing this route as a way to learn more about Rake. I'd be interested in hearing if anyone else has such a system in place, or if there's already something out there for this (that works well with Ruby and Rails).

Update: I forgot one other thing that plays in here. Our firewall rules at work do not allow rsync outside the firewall. This prevents things like DarwinPorts from working. The solution, silly as it is, is to take a laptop home, connect to a non-VPN'ed network, and do your DarwinPorts work. Then, you come back, and the ports themselves are cached, so you can then add them to your SCCM and install from there for other machines (who wants to lug a super heavy G5 home, ya, not me).

08 July 2006

Driving a car: an excellent Scrum analogy

I've been reading, Agile Project Management with Scrum by Ken Schwaber. One of the things that struck me right off was in Mary Poppendieck's forward, where she provides an excellent analogy: that of driving a car. She describes how driving is made of a set of simple rules, and is a process by which we make small course corrections, frequent decisions, and so on, along the path we take. Yes, we have an end goal in mind, but how we get there is a process which the team (driver) determines along the way. This is unlike say a train route, where it's completely programmed and extremely well known before the trip even starts. A simple analogy, but probably the best fitting, strongest, and easiest to grasp that I've seen yet, in terms of Agile processes.

Adobe's San Jose building is world's first for energy conservation

I think this is very cool, as I'm into energy conservation and such. Adobe's West Tower building (the first of the three that are connected together at the San Jose HQ), just received the highest rating for energy and environmental design:

The Adobe tower is the world's first commercial office building to earn this highest recognition possible for energy and environmental design excellence under the USGBC's permanent LEED Existing Building (LEED-EB) standard.
The other two buildings that it connects to should get this rating shortly as well. It's nice knowing the company you work for takes these issues seriously. It's somewhat amazing to me that they do this, given the beautiful facility. Everyone has their own office, there are many "labs", good cafeteria (Google's main benefit over ours is that theirs is free - food isn't that different IMHO), top notch networking (Gigabit ethernet, WiFi all over), and so on.

Of course, I work in the Auburn, CA office, with four other people, so our facility isn't quite like this. But then we're only an hour drive from Tahoe :)


06 July 2006

Going to Scale with Rails: Yes

The title of this post has more than one meaning, but for the purpose of this post... I've just signed up to attend the Scale with Rails seminar in Laguna Beach in August. I'm hoping that it provides a lot of good content and learning, as I start ramping up Rails apps.

I'll also be taking my family, and staying at my parents in Corona del Mar, which is just north of Laguna. We'll hit LEGOLAND the day after the seminar.

Going to Scale with Rails

I signed up for Scale with Rails this morning.  Hopefully it turns out to be quite useful and a good amount of learning and wisdom.  I'll write up some notes after I go.  I'm bringing my family with me, and staying at my parents house, just north of Laguna in Corona del Mar.  On Friday, I believe we'll be going to LEGOLAND :)

29 June 2006

Feedback on Scale with Rails Seminar?

I'm looking into going to the Scale with Rails seminar put on by the Joyent/TextDrive folks. If you're reading this, and have attended a prior one, let me know what you thought. Also, let us know what your background with Rails, web apps, sys admin, etc. was to provide context. I've gone through their slides that they link to on the site, but obviously you get more detail and interaction in person.

The one thing that worries me is the related discussion about how they had such horrid network throughput with BSD, as compared to Solaris (or really, just in general). I find it exceedingly difficult to believe that they didn't mess something up on their BSD systems. You can't tell me that Yahoo (who uses BSD) has these problems - their business wouldn't work. So, that brings into question the competancy to some degree. The rest of the material seems fine, but this one I worry about. Joseph Scott also blogged about this, in more detail.

Three Big Questions from The Number

I wanted to mention one of my favorite parts from reading The Number. It's near the end (so stop reading if you want to stay in suspense :), but it was a set of questions called "The Three Big Ones." You are asked, or ask yourself these questions, and you should physically write down the answers, answering the first one before reading the second question, and so on. He discusses this more in the book, and how people tend to answer them (the general trend/traits of the answers). I think they are a great way to think about not just retirement and financial planning, but what you are doing in life. Note that these are actually quoted in the book from George Kinder, a speaker on "life planning":

  1. Assume that you've got all the money you need - enough for the rest of your life. Maybe you're not as rich as Warren Buffet, but you never have to worry about money for any reasons. The question is, what would you do with it? How would you live?
  2. You go to the doctor. The doctor discovers you have a rare illness. He says that you are going to feel perfectly fine for the rest of your life. But he says, the illness will prove fatal. The sorry outcome will occur sometime within five and ten years. It will be sudden. The question is, now that you know that your life will be over in five years, how would you live it? What would you do?
  3. [it will sound like the previous one, but is different...] It starts the same way. You go to the doctor. You're feeling perfectly healthy. And again the doctor says you have a serious illness. But then the doctor syas, 'You only have twenty-four hours to live.' What I want to know is, what did you you miss? Who did you not get to be? What did you not get to do?
Pretty good eh? Obviously, #3 is the heavy hitter. It's a good way to think about things. It sure made me think.

Bigger Drives for MacBook Pro?

I have a mere 80GB disk in my MacBook Pro. It's maxed (it was truly at 100% this morning when I woke it up). I need something bigger. Apple has only as large as 120GB disks, and they're the slower ones. I'd like to get say a 200-300GB disk. What have folks found? Anyone successfully using a >120GB disk?

Universal Binary of Flash Player 9 (beta) Now Available

I'm quite happy (as I type this on my MacBook Pro), that a beta of Flash Player 9, for MacTel (universal binary) is now available.

Tags: ,

28 June 2006

Latest Reading: JPod by Douglas Coupland

JPod : A Novel by Douglas Coupland
I read JPOD while on vacation last week, and I loved it! I'd read Microserfs (first as the short story in Wired), when it came out, and loved that too. JPOD is similar in terms of following a person and his group, and is based at a video game company. But, the book's style and story are wild. And, the sort of indifference to evil was great. It was really just such a fun book to read, and wacky too. I was laughing out loud at times, and was rather bummed to finish it. I also particularly liked how Coupland included himself in the book. Highly recommended.

Warning: spoiler-like material ahead...
Today, I was listening to the Distributing the Future podcast Playing with Location. During this, they briefly talked with Onomy Labs, who has the "spinny table" (or tilty table as it's called on their web site). It is very interesting to compare this to the Dglobe product in the book.

27 June 2006

Flex 2 and Flash 9 Released! (and a smidge of Rails)

Great news, Adobe Flex 2 - the Flex 2 SDK, and Flex Builder (Eclipse-based Flex IDE), amongst other pieces, have been released (press release)! There's also a new flex resources web site, flex.org, in addition to the Adobe developer center's flex area. And, there's a new Flex Team blog. I really like Flex. I've been experimenting with it for a while, and in particular with using Flex to do RIA's on top of Ruby on Rails back ends. Some links related to this:

As part of this, version 9 of the Flash player has also been released. Press release is here. To me, two of the coolest things with this, are the 10x speed improvements (try it!), and ActionScript 3.0, which is really a nice language and has great improvements (good data typing, E4X integration, etc.). Download it now.

25 June 2006

The Number

What is "The Number" you ask? Well, it is two things. First, it's this notion of how much money you'd need when you retire, or in order to retire. Second, it's a great book:

The Number : A Completely Different Way to Think About the Rest of Your Life by Lee Eisenberg.

First, if you jump right to the Amazon link, I'd ignore the (currently first) review by Gaetan Lion. This person completely misses the point of the book. They clearly didn't read the jacket cover, or other info about the book, and expected it to have a magic formula and be specific about calculating your number. Secondly, if you know how to calculate your number so well, why'd you bother reading the book?!

Anyway, I'd recommend it. It's very well written, and quite an interesting read. From the wit, to the fun stories, to some quite interesting bits of history surrounding financial planning and retirement planning, it's great. No, there is no magic formula, and the book isn't about that. It's more of a philosophical exploration of The Number, retirement planning, and financial planning in general. I'm only 35, but I want to ensure I set my family up for retirement, amongst other things. It was also a timely read, as I'm working with our financial planner right now on some of these issues.

The book is a quick read, and I think of good general interest. It's not the typical kind of thing I read, but I liked it.

Espresso and Coffee in Bend

On our recent trip to Bend, OR, I had to of course scope out a good place for espresso (and WiFi). Starbucks doesn't count. I was happy to find Bellatazza, right in downtown. They had WiFi (with plenty of folks using it), and great espresso - damn good in fact. I had three espresso macchiato's (this is the real kind, not that abomination of a latte that Starbucks makes; i.e. a doppio with just a tiny layer of foam on top, and well done foam at that). Very good. My wife had assorted mochas and other such fru-fru drinks, and enjoyed them as well. They also had paninis they'd grill up right there for you. Good place. There were a bunch of other indi coffee shops, but I didn't have enough time to give others a shot, and Bellatazza was so good that I was less motivated to be potentially disappointed.

21 June 2006

Rocklin vs. Bend temperatures

We're currently in Bend, OR, scouting it out as a potential place to move to. People often ask why we are interested in moving from Rocklin, CA. Heat is our #1 reason. For example, check out this comparison of high temps for the next week or so:


So far, Bend is good, more on it later.