
Changelog Interviews
Conversations with the hackers, leaders, and innovators of the software world. Adam Stacoviak and Jerod Santo face their imposter syndrome so you don’t have to. Expect in-depth interviews with the best and brightest in software engineering, open source & leadership. This is a polyglot podcast. All programming languages, platforms & communities are welcome.
Latest episodes

May 20, 2011 • 22min
Fog, the Ruby Cloud Services Library
Wynn sat down with Wesley Beary from Engine Yard to talk about the Fog project and the Cloud, live from Red Dirt Ruby Conf.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Featuring:Wynn Netherland – GitHub, XShow Notes:
Wesley Beary aka @geemus
The Fog project is the Ruby cloud services library
By coincidence this interview was recorded the day the cloud went down
Fog supports almost twenty providers for Storage, DNS, Compute, CDN
Dr. Nic made us laugh on Episode 0.5.0
Engine Yard pays Wesley to hack on Fog.
AppCloud is a Ruby Platform as a Service from Engine Yard.
You have to commit to the project to earn a slick Fog tee
Excon grew out of Fog’s need for EXtended http(s) CONnections
Wesley is dubious of ‘compliant APIs’
OpenStack is backed by Rackspace and Nasa
Wesley likes to play with Riak
Red Dirt Ruby Conference videos will be released on May 22
Something missing or broken? PRs welcome!

May 11, 2011 • 20min
RubyGems and RubyGems.org
Wynn sat down with Nick Quaranto at Red Dirt Ruby Conference to talk about Gemcutter, RubyGems.org, and how to get started creating your own Ruby gem.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Featuring:Wynn Netherland – GitHub, XShow Notes:
Nick Quaranto, creator of Gemcutter which is now RubyGems.org
Gemcutter is the Ruby community’s gem hosting service.
Tom Preston-Warner, founder of GitHub
RubyForge was the original spot to host your Ruby project.
Peter Cooper, publisher of Ruby Inside and co-host of the Ruby Show.
A gemspec is a manifest for a Ruby gem.
Since a gemspec is saved as YAML, you can embed Ruby in it.
Bundler manages a Ruby application’s dependencies through its entire life across many machines systematically and repeatably.
Bundler 1.1 aims to speed up how gems are fetched.
Jeweler and Hoe help you create, package, and release gems.
Ryan Tomayko from GitHub tells us why “require ‘rubygems’” is wrong
GitHub is no longer in the Gem building business.
Erik Michaels-Ober uses the gem post install message to share resources with users.
When not squashing Gemcutter bugs or applying patches, Nick likes to play with Redis and EventMachine.
Something missing or broken? PRs welcome!

May 3, 2011 • 34min
Twisted and Evented Programming in Python
Kenneth and Wynn caught up with Glyph Lefkowitz from Twisted to talk about the project and evented programming in Python.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Featuring:Wynn Netherland – GitHub, XKenneth Reitz – GitHub, XShow Notes:
Glyph Lefkowitz is creator of Twisted.
Twisted is an event-driven networking engine written in Python.
Twisted has its origin in the game Divmod Imaginary.
Glyph says Twisted programming is easier than programming with gevent and eventlet.
Twisted.web is the most popular package, but Twisted supports a wide range of other protocols in addtion to HTTP including NNTP, IMAP, SSH, IRC, FTP, and others.
Twisted even supports IO Completion Ports on Windows.
Twisted’s non-blocking approach makes it great for GUI programming via GTK+, wxPython, and more, even Pygame.
Glyph expands on his blog post drawing distinctions between Tornado and Twisted.
Benchmark nerds should check out speed.twistedmatrix.com.
Dustin Sallings ported Tornado to Twisted’s low-level networking stack and eliminated over 1,200 lines of code.
Twisted success stories include LucasFilm, HipChat, TweetDeck, Justin.tv, and more.
Twisted also powers OpenStack, used by Nasa to run its cloud.
Glyph is proud of his rock star sister Sara.
Twisted tracks high scores for community involvement in 8-bit beauty.
Free Changelog stickers for the first person to @reply us with Glyph’s real name.
Something missing or broken? PRs welcome!

Apr 27, 2011 • 45min
Amplify.js, jQuery, CoffeeScript
Wynn caught up with Mike Hostetler and Scott González from AppendTo to talk about Amplify.js, jQuery, CoffeeScript, Microsoft, the web, and open source.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Featuring:Wynn Netherland – GitHub, XShow Notes:
AppendTo offers training and consulting for jQuery.
Amplify.js is a set of components designed to solve common web application problems with a simplistic API.
Mike Hostetler is CEO at AppendTo.
Scott González works on jQuery UI.
amplify.request makes building JavaScript API wrapper easier, providing hooks for mocking transport and payload transformation.
amplify.store is a wrapper for various persistent client-side storage systems and provides advanced features such as cache expiration.
Amplify’s PubSub system provides offers advanced options for handling custom events including priority.
The AppendTo guys weigh in on the all-in-one vs. best-of-breed JavaScript framework debate.
Wynn asks how Microsoft’s adoption of jQuery has led to its adoption.
DamianEdwards worked to get jQuery UI packages for Nuget.
Rails now includes CoffeeScript by default.
Wynn loves cake.
CommonJS aims to create a standard library for JavaScript.
Keep an eye out for AppendTo’s new Learn site, a JavaScript 101 course for newcomers.
Something missing or broken? PRs welcome!

Apr 12, 2011 • 42min
Vim round table discussion
Wynn sat down with three Vim users and experts to talk about tips and tricks for using and pimping the popular text editor.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Featuring:Drew Neil – Website, GitHub, XYehuda Katz – Website, GitHub, XTim Pope – GitHub, XWynn Netherland – GitHub, XShow Notes:
Vim seeks to provide the power of Unix’s Vi
Drew Neil hosts VimCasts
Tim Pope has created numerout Vim plugins
Yehuda Katz from SproutCore, Rails, and jQuery fame.
Dr. Nic says Vim is cutting edge 1960s tech.
Janus Yehuda and Carl’s MacVim bundle
Everyone that tried to convince Yehuda to try Vim were wrong.
Vim is a modal interface
Wynn laments that TextMate 2 is the new Duke Nukem
NerdTree is a text-based treeview inside your vim
Tim uses his vibrantink mod called vividchalk
Yehuda wants to give Solarized Vim is cutting edge 1960s tech.
Yehuda like visual block mode
MacVim lets you use ?-S.
Wynn asks how the world would be different if DHH had used Vim instead of TextMate for his famous Rails screencast.
Tim likes CTRL-X, CTRL-E to bind an editor to the command line.
Yehuda says you should be using ruby -e instead of grep
Drew loves CTRL-R, CTRL-W in Vim.
“Matz is (under)rated.”
Tim says we owe so much to Linus for Linux and Git.
Something missing or broken? PRs welcome!

Apr 6, 2011 • 51min
Goliath, Event Machine, SPDY
Wynn caught up with Ilya Grigorik, Founder and CTO of PostRank to talk about Goliath, async Ruby web development, and Google’s SPDY.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Featuring:Ilya Grigorik – Website, GitHub, XWynn Netherland – GitHub, XShow Notes:
Look for Steve Klabnik at CodeConf.
Ilya Grigorik founder and CTO of PostRank.
PostRank taps into intelligence from the social web.
igvita.com is Ilya’s awesome Ruby, performance, and big data blog.
Goliath Goliath is an open source version of the non-blocking (asynchronous) Ruby web server framework powering PostRank.
Thin glues together Mongrel parser, Event Machine, and Rack.
Evidently we’ve discussed Node.js “at length” on this show.
Goliath hides much of the complexity of its asynchronous architecture from the developer
Goliath was designed for and has been benchmarked on MRI, JRuby and Rubinius
PostRank heavily employs AMQP
The PostRank APIs allow you to create applications that interact with the subscription management component of the PostRank website, as well as, create and retrieve story ratings and customized RSS feeds for your users.
The Top Posts Widget lets you showcase the most important articles on your site, encouraging viewers to click on more articles and read what matters.
A GitHub account and a blog are key differentiators for developers looking to get hired at PostRank.
Ilya says “presentation is 50% of the actual deliverable”. Great READMEs are important.
Ilya looks up to Brad Fitzpatrick of LiveJournal and Memcached fame.
Ilya’s blog tagline: “A goal is a dream with a deadline.”
Anybody still using GTD?
Ilya isn’t beholden to any one editor but loves both Vim and TextMate.
SPDY: (pronounced “SPeeDY”) An experimental protocol for a faster web. The usual HTTP GET and POST message formats remain the same; however, SPDY specifies a new framing format for encoding and transmitting the data over the wire.
If you’re using Chrome, you may be using SPDY and not even know it.
mod_spdy is an experimental proof-of-concept SPDY Apache module.
ØMQ zeromq: socket library that acts as a concurrency framework as discussed on Episode 0.3.4.
Something missing or broken? PRs welcome!

Mar 30, 2011 • 45min
Erlang, CouchBase, merging with Membase
Wynn sat down with Chris Anderson from CouchBase to talk about CouchDB, the merger with Membase, Erlang, and bringing NoSQL to PHPers.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Featuring:Chris Anderson – GitHub, XWynn Netherland – GitHub, XShow Notes:
Chris Anderson is a Couchbase cofounder, Mobile Architect, CouchDB committer, new dad
The CouchDB music video (served up from CouchDB no less)
Chris sings the official CouchDB theme song to kick off Episode 0.1.8
Apache CouchDb is a distributed, fault-tolerant and schema-free document-oriented database accessible via a RESTful HTTP/JSON API.
Damien Katz is the creator of CouchDB.
CouchBase was formed from merging Membase and CouchOne
Chris is one of the rare CFOs with a GitHub account
CouchBase makes the case for NoSQL
Membase Server currently uses Sqlite under the hood, but will be swapped out for Couch’s storage engine soon
Mobile Couchbase runs on iOS and brings Couch to your mobile device
CouchApps are JavaScript and HTML5 applications served directly from CouchDB.
Zynga makers of Farmville use Membase
The CouchApp toolkit is now maintained by Benoît Chesneau
Aaron Miller led the charge to get Erlang on iOS, changing dynamic linking to static linking.
SpiderMonkey was included iOS for CouchMobile and its JIT compiler made it preferable to V8 or Nitro for Couch tasks.
GeoCouch adds geospatial features to CouchDB
Chris outlines the distinctives for Couch’s incremental Map/Reduce
Jason Smith in Thailand keeps the lights on for CouchBase hosting solutions
Cloudant offers hosting for Couch in the cloud
Wynn wants to see integration for CouchBase and Appcelerator Titanium
Todd Anderson has a great tutorial on using jQuery mobile and CouchDB
Damien Katz is Chris’ programming hero
Chris says working with Jan Lehnardt is a blast
Be sure and check out CouchDB - The Definitive Guide by Chris, Jan, and Noah
Something missing or broken? PRs welcome!

Mar 22, 2011 • 50min
Formalize and News Roundup "Design Edition"
Adam and Wynn were joined by Nathan Smith, creator of 960.gs to talk about his new project Formalize and the latest news on The Changelog.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Show Notes:
Nathan Smith, front end dev, speaker, and author
960 Grid System is a versatile CSS grid framework
Formalize teaches your forms some manners
An exhaustive list of HTML5 cross-browser polyfills
Formalize even comes with Sass support out of the box
Compass’s CSS3 module is powerful
Wynn <3 Mustache
Adam writes Sass but converts his stylesheets to SCSS for those who prefer it
Haml means never looking for a missing </div> ever again
The Changelog on Convore
HSLPicker - Most excellent color picker for your enjoyment
Fancy buttons makes your buttons fancy with CSS
Octopress is a blogging framework for hackers
Brandon was on Episode 0.1.7 on open source publishing
Nesta CMS is our favorite Ruby CMS
reveal: jQuery modal for HTML5 and data attributes
Zurb’s CSS playground is awesome
rawler: Crawl your website and find broken links with Ruby
Inception explained in C code
JavaScript version of the Inception code, demonstrating console.group
BeerCamp 2011 site design is fun (scroll all the way down)
compass-magick: Extend Sass with power of ImageMagick
jQuery Mobile Alpha 3 released
Nathan recently spoke at DrupalCon in Chicago on his jQuery desktop project
Adam is tickled SourceForge runs Grid Coordinates
The Open Government project demonstrates how the space is growing
Stylus from LearnBoost brings Node.js-flavored CSS preprocessing
Zeldman on designers who can’t code
Adam loves the work of Mike Kus
Wynn’s rant should be read as ten things you can do to spread the word about your open source project
Wynn’s post actually spurred Nathan to create a homepage at Formalize.me
Ryan Bates’ Railscasts are awesome
Jenkins née Hudson almost became Alfred
Nathan loves Alfred app
Adam and Wynn are on Team Launchbar
Nathan stumbled across a really neat way to target Firefox in CSS
Something missing or broken? PRs welcome!

Mar 16, 2011 • 1h 2min
Serve, RadiantCMS, Design and Prototyping
Adam sat down with Designer/Developer John Long, creator of RadiantCMS about his new project Serve, design, and running a successful open source project.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Featuring:Adam Stacoviak – Website, GitHub, LinkedIn, Mastodon, XShow Notes:John Long of Wiseheart design
Serve is a rapid prototyping framework for web applications
John created RadiantCMS, later extended by Sean Cribbs
Radiant led John to a relationship with Pragmatic Programmers and formation of a Ruby Visual Identity team
Serve is basically the Rails View layer, sans the Model and Controller.
Serve’s makes it easier to use URLs that end in a / instead of file extension
Serve’s view helper are Rails compatible
Serve is Rack under the hood
Acoustic is Django-inspired and aims to be between Sinatra and Rails
“What Rails can learn from Django”
Running a successful open source project can take over your life
In the early days of Radiant, Subversion made it difficult to accept community contributions
Git and GitHub has increased community participation
Use Compass’s CSS3 module and save your sanity
Compass can change your design workflow
Fancy Buttons is a Compass plugin to easily create image-less buttons
Grab the code for Adam’s nifty Serve bootstrap, which adds easy support for Haml, Sass, Compass, and more.
Join the newly created Serve Users group
Something missing or broken? PRs welcome!

Mar 9, 2011 • 35min
MongoDB, NoSQL, Web Scale
Steve and Wynn sat down with Eliot Horowitz from 10gen to talk about MongoDB, the NoSQL landscape, and the fun of building at Web Scale.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Featuring:Wynn Netherland – GitHub, XSteve Klabnik – Website, GitHub, XShow Notes:
Eliot Horowitz CTO and Co-Founder of 10gen
Dwight Merriman CEO & Co-Founder at 10gen
NoSQL is a loose term for Key Value Stores, Graph Databases, and Document Databases
MongoDB still has a large roadmap ahead
MongoDB was first featured on The Changelog over a year ago
Single server durability tops the list of new additions in 1.8
Replica sets are an elaboration on the existing master/slave replication, adding automatic failover and automatic recovery of member nodes
Shutterfly and Foursquare boast some of the largest MongoDB implemenation
MongoDB’s sharding enables horizontal scaling across multiple nodes.
Mongo vs. Riak (and other Dynamo inspired stores)
Full vs. eventual consistency
Compound indexes
Increment operations
Be sure and check out our Riak interviews: Part 1 and Part 2
Mongo vs. CouchDB
Couch uses Map/Reduce views
Couch has great master-master replication
Couch runs on mobile
Mongo’s sharding is closer to a relational database
Mongo’s Geo features now support more precise, spherical geospatial indexing
Mongo shines at
User profiles
CMS data
Mongo enjoys wide language binding support
Eliot and 10gen think the Web Scale meme is all in good fun
BSON [bee · sahn], short for Binary JSON, is a binary-encoded serialization of JSON-like documents
Our interview with Douglas Crockford on JSON
MongoDB 2.0 will be focusing on concurrency, aggregation, online compaction, and TTL temporal collections
Eliot likes Racket when he’s not slinging C.
Linus Torvalds is one of Eliot’s heroes
Something missing or broken? PRs welcome!