
The Changelog: Software Development, Open Source
Software's best weekly news brief, deep technical interviews & talk show.
Latest episodes

Mar 16, 2011 • 1h 2min
Serve, RadiantCMS, Design and Prototyping (Interview)
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 (Interview)
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!

Mar 1, 2011 • 43min
Ruby, Rails, the Cloud (Interview)
Steve and Wynn caught up with Dr. Nic from Engine Yard to talk about the cloud, Jenkins, Ruby, and lowering the barrier of entry for learning Rails on Windows.
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:
Catch up with us at Red Dirt Ruby Conf
Steve will be at Codeconf
Kenneth will be covering PyCon 2011
Thanks for putting up with us for 50 episodes!
Dr. Nic Williams is Developer Advocate at Engine Yard has a ton of open source projects
Engine Yard uses Amazon AWS and Terremark
Dr. Nic actively and aggressively abandons most of his 154 public repos and feels good about it due to Git and GitHub
Steve maintains a couple of projects from _why
Dr. Nic liked how Jamis Buck declared he abandoned Capistrano
Dr. Nic prefers TextMate instead of “1960s technology”
Steve likes Janus for Vim
Steve asks about Redcar
Engine Yard has partnered with Appcelerator for mobile app developers
Dr. Nic helps maintain Rails Installer, the easiest way to get up and running with Ruby on Rails. For Windows. Mac and Linux coming soon.
Luis Lavena and Charles Nutter are core to the Ruby community
“If you have to put the shortcuts on a coffee mug!” - Dr. Nic on Vim
Jeremy Ashkenas from DocumentCloud is a regular on The Changelog for projects like Docco, CloudCrowd, Underscore.js, CoffeeScript
The Jenkins rename shows the power of the community to stick together
Dr. Nic is sticking with Jenkins, but Travis is worth a look for Rubyists
Someone send Dr. Nic an Octocat badge
Something missing or broken? PRs welcome!

Feb 22, 2011 • 54min
Git, Showoff, XBox Kinect (Interview)
Kenneth and Wynn caught up with GitHubber Scott Chacon to talk about Git, distributed version control, and his quest to kill Word as a book authoring tool.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Featuring:Scott Chacon – GitHub, XWynn Netherland – GitHub, XKenneth Reitz – GitHub, XShow Notes:
Scott Chacon, Git evangelist, GitHubber, author of ProGit
rsync is a software application for Unix and Windows systems which synchronizes files and directories from one location to another while minimizing data transfer using delta encoding when appropriate.
Perforce is a commercial, proprietary, centralized revision control system developed by Perforce Software, Inc.
Git Internals, Scott’s PeepCode PDF
Chris, Tom, PJ, founders of GitHub
Continuous integration is one of Git’s strengths
Surprisingly, Scott’s .gitconfig isn’t pimped out
gitk The git GUI repository browser
gitx Git GUI for OS X
gitgui Unlike gitk, git gui focuses on commit generation and single file annotation and does not show project history.
Why Git and not Mercurial?
Mercurial bookmarks are references to commits that are automatically updated when new commits are made. If you do hg bookmark feature the feature bookmark refers to the current changeset.
hg-git is the Hg-Git plugin for Mercurial, adding the ability to push to and pull from a Git server repository from Mercurial.
BitBucket is to Hg as GitHub is to Git
Scott says he had good intentions in comparing Git to other version control systems and was not lobbing stones at Mercurial
Scott says distributed source control systems are key to helping the open source community thrive because it lets anyone commit and get involved
The RubyGems.org 404 is amusing
libgit2 is a portable, pure C implementation of the Git core methods provided as a re-entrant linkable library with a solid API, allowing you to write native speed custom Git applications in any language which supports C bindings.
GitHub has continued the libgit2 Google Summer of Code effort, supporting Vicent Marti to continue the development
Scott says that Git is basically a key value store and we should look at uses beyond version control
Eclipse is moving to Git away from CVS
Git Tower is a beautiful Git UI for the Mac
Showoff is a Sinatra web app that reads simple configuration files for a presentation. It is sort of like a Keynote web app engine.
Kinectaby, Ruby bindings for XBox Kinect
Wynn is excited about Scott’s project Git Scribe for writing, feeling the pain of using Word for archaic book publisher workflows
Jason J Williams’s tools have lessened the pain for Wynn in writing the upcoming Sass book for Manning
Everybody that works at GitHub is Scott’s programming hero but Ryan Tomayko is one of the smartest developer’s Scott knows.
Something missing or broken? PRs welcome!

Feb 8, 2011 • 40min
Jenkins and Continous Integration (Interview)
Kenneth and Wynn caught up with Kohsuke Kawaguchi and Andrew Bayer from the Jenkins project to talk about continuous integration, Java, and corporate backing drama.
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:
CI Joe is GitHub’s continuous integration server
Knowing is half the battle
Jenkins née Hudson is the leading open-source continuous integration server. Built with Java, it provides over 300 plugins to support building and testing virtually any project.
Kohsuke Kawaguchi is the creator of Jenkins
Andrew Bayer is a Build Engineer at Cloudera
Nearly 30K Jenkins installations worldwide
Jenkins is written in Java but with its rich plugin system, you can run almost anything with it
Jenkins supports Git, Mercurial, SVN, and even Visual SourceSafe
Jenkins does more than running tests, it can also do parameterized deploys
GitHub has fueled an explosion in Jenkins community growth
Wynn asks why Java is only 6% of GitHub projects
Funny cartoon on how language fanboys see one another
Git and GitHub adoption actually sparked the name change and Oracle split
The community voted 214-14 to rename
Andy addresses how plugins will migrate to the new name. Thanks, Matthew J McCullough.
At what point do projects look at a jQuery Foundation-style governance model?
Hudson was the butler in Upstairs, Downstairs
Alfred, the butler from Batman was a consideration, but conflicted with the Mac program
James Clark is Kohsuke’s programming hero
Kohsuke and Lisp’s Guy Steele are Andrew’s heroes
MZ Scheme now Racket makes Kenneth’s head hurt
Andrew recommends Structure and Interpretation of Computer Programs from MIT
As a build guy, Selenium gets Andrew excited
Kohsuke is trying to hack the Airport Express to stream tunes from Linux
Something missing or broken? PRs welcome!

Feb 1, 2011 • 33min
Open Government and the Citizen Coder (Interview)
Adam and Wynn caught up with Carl Tashian from Open Government to talk about OpenGovernment.org, OpenCongress.org, and the rise of the Citizen Coder.
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, XWynn Netherland – GitHub, XShow Notes:
Carl Tashian is Director of Technology at Open Government
OpenGovernment: Empower individuals and organizations to track government at every level
OpenCongress.org - open source Rails app to track the goings on in the US Congress
Library of Congress THOMAS site is the source for federal legislative information
OpenGovernment.org, a public resource for government transparency at the state, city, and local levels. Free and open-source.
Open States API
The Sunlight Foundation aims to make government transparent and accountable
Wynn helped create TweetCongress.org winner of a SXSW 2009 Web award for activism, making use of Sunlight APIs
Follow the money and connect the dots between bills, key votes, and campaign donations.
Transparency Data is a central source for federal lobbying disclosure, federal grants and contracts, earmarks and federal and state campaign contributions, complete with it’s own API
GovKit
Luigi Montanez and Wynn wrote a wrapper for Transparency Data
Fog, the Ruby cloud services library
Carl worked at ZipCar prior to joining Open Government
Syncing large datasets from different providers is a big challenge
PostgreSQL and PostGIS power the backend of OpenGovernment
GeoServer is an open source software server written in Java that allows users to share and edit geospatial data.
MongoDB and Rack provide a fast way to track page views in the app
Sunlight, Code for America, and Open Government - rise of the Citizen Coder?
Oakland Crimespotting is a case study on developers having an impact on government
DocumentCloud, featured in Episode 0.0.5
Jammit, Industrial Strength Asset Packaging for Rails
Pythonistas, why not help out by creating a scraper for your state?
Kenneth and Wynn debate the best terminal font
Something missing or broken? PRs welcome!

Jan 25, 2011 • 32min
YUI 3, Node.js, JSLint, Douglas Crockford Code Reviews (Interview)
Adam and Wynn caught up with Adam Moore and Satyen Desai from the YUI team to talk about YUI 3, Node.js, and working with Douglas Crockford.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Show Notes:
YUI is the Yahoo! User Interface library, a collection of front end code goodies for JavaScript and CSS
Follow the YUI Blog for the latest developments, such as the new 3.3.0 release
Adam Moore and Satyen Desai are engineers on the YUI team.
The Autocomplete widget provides a flexible, configurable, and accessible implementation of the AutoComplete design pattern.
The DataTable widget renders columnar data into a highly customizable and fully accessible HTML table
The Dial widget is an alternative to sliders
The YUI Charts recently moved from Flash to JavaScript in YUI 3
The Community developed the drag/move component
YUI is on GitHub, fueling community involvement
YUI Theater is a great source for JavaScript talks and all things YUI
Douglas Crockford is the author of JSLint, the JSON spec, featured on Episode 0.2.6 from TXJS
Nicholas C. Zakas aka @slicknet is the author of a number of JavaScript books
Eric Miraglia is the Engineering Manager for the YUI team
JSLint improves your JavaScript but will not spare your feelings
Dave Glass - has a great talk about YUI + Node
“I love async, but I can’t code like this”
Many of the additional Node.js modules deal with parallel execution
Adam suggests targeting features, not platform since features like touch will be on the desktop eventually.
Satyen’s talk on YUI’s mobile strategy
The module pattern in JavaScript
The YUI Gallery lists discoverable components contributed by the community
Something missing or broken? PRs welcome!

Jan 17, 2011 • 40min
Redis In-Memory Data Store (Interview)
Wynn caught up with Salvatore Sanfilippo to talk about Redis, the super hot key value store.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Featuring:Salvatore Sanfilippo – Website, GitHub, XWynn Netherland – GitHub, XShow Notes:
VMware signs the paychecks for Salvatore and Pieter Noordhuis
Redis is an open source, advanced key-value store and data structure server wherein keys can contain strings, hashes, lists, sets and sorted sets
Redis internals consist of ANSI C with an evented model
Non-blocking replication has always been a Redis design goal
Replication in Redis is async
Salvatore’s Redis toolbox includes the Redis Ruby gem and Sinatra
Chances are you can find a Redis library in your favorite language
The C client is the only officially supported wrapper
Salvatore thinks the NoSQL moniker isn’t perfect, focusing too much on performance, but it frames a discussion
Redis Pub/Sub is perfect for real-time apps
GitHub’s adoption of Redis in Resque helped fuel the growth of the project
Redis users tend to use it as a database, as a messaging bus, or as a cache
Salvatore thinks hosted solutions like Redis-to-Go need to add more value like more frequent backups and seamless upgrades.
Blizzard uses an 8-node Redis install in serving avatars for WoW
Justin Campbell asks will VMWare feature Redis in any upcoming projects?
Ezra Zygmuntowicz and GitHub were among the first “few brave users”
After a few months Salvatore noticed a dip in adoption , but he trusted his gut and stuck with it
Something missing or broken? PRs welcome!

Jan 10, 2011 • 34min
Ruby 1.9, Nokogiri, Tender Lovemaking (Interview)
Wynn caught up with Aaron Patterson, aka @tenderlove, to talk about Ruby 1.9, Nokogiri, and muscle cars.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Show Notes:
RubyCommitters.org lists all the folks who hack on the Ruby language
Nokogiri is a library for parsing XML and HTML
The origins of tenderlove, Aaron’s online persona
Hot linking, check it and see. Got a page rank of a hundred and three., to the tune of Hot Blooded
Mechanize adds an API to any website
Being a Ruby committer is ‘alright’
Yugui, release manager for Ruby 1.9
The current state of rubycommitters.org reminds us of CSS Naked Day
REXML is a pure Ruby XML processor
MiniTest is Aaron’s favorite testing framework
His favorite Ruby 1.9.2 feature is speed
texticle is a wrapper around Postgress T-Search APIs
Aaron will be keynoting at Red Dirt Ruby Conf
FasterCSV from JEG2, one of the organizers for Red Dirt Ruby Conf.
El Camino, IROC-Z, or Firebird with T-tops are Aaron’s top three dream cars
For those who have never shaved a Yak and otherwise did not know it.
Arel is at the heart of Rails 3 ActiveRecord improvements
Debian’s Ruby maintainer says he’s out
Ruby Kaigi, the C conference disguised as a Ruby conference
In addition to Japanese, Aaron also speaks Scheme and Haskell
Wynn ? CoffeeScript
Aaron wants to pair program with Jim Weirich
Wynn suggests Aaron capitalize on Tenderlovemaking by organizing promiscuous pair programming
Something missing or broken? PRs welcome!

Jan 5, 2011 • 32min
Hackety Hack and _why (Interview)
Steve Klabnik joined the show to talk about learning to program with Hackety Hack and why the lucky stiff.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Featuring:Steve Klabnik – Website, GitHub, XAdam Stacoviak – Website, GitHub, LinkedIn, Mastodon, XWynn Netherland – GitHub, XShow Notes:
Steve Klabnik, maintainer of Hackety Hack, newest contributor to The Changelog
Hackety Hack will teach you the absolute basics of programming from the ground up.
_why, creator of Hackety Hack. Help keep his memory alive.
Abbott and Costello’s classic “Who’s on first?”
Yakety Yak is a song written, produced, and arranged by Jerry Leiber and Mike Stoller for The Coasters and released on Atlantic Records in 1958
Shoes is a tiny graphical app kit for ruby
GTK is a highly usable, feature rich toolkit for creating graphical user interfaces which boasts cross platform compatibility and an easy to use API.
MacRuby is an implementation of Ruby 1.9 directly on top of Mac OS X core technologies such as the Objective-C runtime and garbage collector, the LLVM compiler infrastructure and the Foundation and ICU frameworks.
The Shoebox is a gallery of Shoes apps.
Mad props to Heroku, Sinatra, and MongoMapper for handling a LifeHacker traffic spike
Ruby is a great language to teach programming
_why’s Poignant Guide to Ruby
ChunkFive is a nice bold free and open source typeface
Steve is intrigued by projects like cool.io and node.js and the evented style of programming.
Something missing or broken? PRs welcome!