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

Jun 2, 2011 • 32min
IronJS, F#, and .NET (Interview)
Wynn caught up with Fredrik Holmström to talk about IronJS, F#, and open source in .NET.
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:
IronJS A JavaScript implementation for .NET written in F#
Fredrik Holmström, creator of IronJS
F# is a succinct, expressive and efficient functional and object-oriented language for .NET which helps you write simple code to solve complex problems.
“This JScript thing”
Mono is an open source, cross-platform, implementation of C# and the CLR that is binary compatible with Microsoft.NET.
IronJS continues in the tradition of IronPython and IronRuby
IronJS implements EcmaScript 3 but is working towards EcmaScript 5 support
Miguel de Icaza created Mono.
Nuget is a free, open source developer focused package management system for .NET.
Codeplex seems to be the place to find .NET open source
GitHub is hosting more and more .NET projects
C# and .NET are hard to Google
Kayak is an asynchronous HTTP server written in C#
Zed Shaw, featured on Episode 0.3.4
Don Syme, architect behind F#
“John” Gietzen has contributed to IronJS.
Follow @IronJS on Twitter for updates.
Something missing or broken? PRs welcome!

May 26, 2011 • 51min
Oh My Zsh (Interview)
Adam and Kenneth caught up with Robby Russell to talk about his community-driven zsh project.
Join the discussionChangelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!Featuring:Robby Russell – GitHub, XAdam Stacoviak – Website, GitHub, LinkedIn, Mastodon, XKenneth Reitz – GitHub, XShow Notes:
oh-my-zsh A community-driven framework for managing your zsh configuration.
Robby Russell is Chief Evangelist at Planet Argon
Derek Sivers from CD Baby
Robby weighs in on the bash vs. zsh debate
Bash vs Zsh debate? Google returns 175k results on the subject
Themes are a big selling point for oh-my-zsh
Kenneth love is right side prompt
Adam loves hub
oh-my-zsh is currently the eighth most forked project on GitHub.
Follow @ohmyzsh on Twitter for updates
Adam likes the update message.
Robby tries to keep the pull requests under 100.
Robby is looking for a few volunteers to help with pull requests and issue management
Something missing or broken? PRs welcome!

May 20, 2011 • 22min
Fog, the Ruby Cloud Services Library (Interview)
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 (Interview)
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 (Interview)
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 (Interview)
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 (Interview)
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 (Interview)
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 (Interview)
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" (Interview)
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!