SparkFun Levels Up!

A whole new version of sparkfun.com is released! Wish lists! Other stuff! New server hardware! Plus a visualization of the development of the entire code base up to this point.

Welcome to the new SparkFun.com!

In any respectable RPG when you slay just the right number of blue mushroom zombies your level increases. The developers of the SparkFun IT Department have been hacking away at such creatures for months and today our level has most definitely ascended.

1997, October 1, The END DAY ...

SparkFun.com may look the same, but that's the intent. Under the surface SparkFun.com has been literally rebuilt from scratch. There's a lot to cover here, so I'm going to dive right in with perhaps the most obvious new feature: Wish Lists.

  • Have as many wish lists as you like.
  • Name them whatever you like.
  • Make them public and share them with others if you so choose.

I'm sure you can think of how to make the best use of Wish Lists in practice, so if you are one of the many customers that's been clamoring for this feature, enjoy your new toy!

So what other new features are now live? Some of the bigger things you may notice:

  • Clean URLs
  • A brand new shopping cart
  • One-page checkout
  • Greatly improved load times

Plus too many little things to name. Explore the site and look for easter eggs.

Something broke!

If you find yourself uttering these words then you've probably found a bug. Even with the kilothaums of testing we've been doing for weeks something may well have been missed.

Please post bugs and issues in this forum thread!

We'll be monitoring the thread continuously and posting as we fix stuff so that the whole community can know when a problem is found and, ultimately, remedied.

New Iron

Along with all the new features you're also being served this page from a cluster with a lot more power.

Our live cluster began with a stack of five Dell R410s. It's since grown, and grown again, and now we have this attractive pile of whirring fans:

The SparkFun cluster moves into a full rack.

Our cluster grew so much we had to move out of our little half rack and into a full one! One of those two 4U boxes is Spino, the primary web server that's been dishing out content for most of 2010. The other is Seismo, a near-exact clone of Spino that (among other things) lets us test new features in a live-ish environment. The stark yellow boxes are our new load balancers with SSL acceleration.  Plus there's some other fun toys in there, like a 10Gbps Dolphin Interconnect.

Setting up this stack has been no small task. Once we spun up some virtual servers using our Amazon EC3 account and fired them at the cluster we were clocking about 5 FreeDays before seeing a hint of lag.

 

1.7.0: Hasselhoff

So today's major release, in terms of versions of the SparkFun website, is 1.7.0. Or, more colloquially: Hasselhoff.

The SparkFun code base has been under version control for just over three years. It became an absolute necessity when IT suddenly doubled in size to two people back in 2007.

It took a year and a half of organic/reactionary coding to get to a tipping point: a coherent framework was needed. Shortly after that was set in motion we concocted a versioning scheme. All of that has led to today when, at last, SparkFun.com is using our shiny new framework. Check out this visualization of all three years of said development in under three minutes:

This trippy video was created using gource, an open source visualization engine for version controlled repositories.  Development was controlled with subversion for the first year or so before we moved to git and never looked back.  With a little patience and a lot of custom formatting our years of logs got this nice splash of color.  Perhaps after another twelve months of features and releases we'll see 4 years in 4 minutes!

Finally, this release is so named Hasselhoff because our chosen naming convention dictates that our releases are named alphabetically by the last names of musicians that don't suck.  The latter part of that stipulation has been a sticking point on more than one occasion.  Regardless, our trend has emerged: Anastasio begat Byrne begat Costello begat Danzig begat Everett begat Fogerty begat Gordon begat Hasselhoff.

The [ I ] release has yet to be named.  Surely someone can offer up a good suggestion?