Engine Yard Blog RSS Feed

The New Rubygems Index Format

Note: Here's another guest post from André Arko, who leads the Bundler core team and builds web applications for clients at Cloud City Development in San Francisco.

This post is a part news, part technical documentation, and part request for comment. I'm going to explain the technical nitty-gritty details of the planned next generation index that allows Bundler and Rubygems to know what gems exist and how to install them.

The current index is a mishmash of different files that were created at different times to serve different needs. I'll walk you through the reasons that each of the current index files exists, and then explain how the new index plans to handle all those needs at the same time, in a simple and fast way.

Configure Before You Boot


In the previous post in this series, we learned how the pets vs. cattle metaphor teaches us a new way of approaching cloud server architecture. Instead of unique pets which require constant, individual care, we focus instead on cattle which are identical, homogenous units that can be added en masse and removed with ease. Cattle servers are, in other words, fungible resources.

Writing PHP Extensions with Zephir

PHP would not be as popular today if it was not for its extension system. Developers for PHP have created extensions that hook into just about everything, and by that token end-users can turn around and use systems that are not natively in PHP.

A good example is the database drivers. Many new developers may not realize it right away, but PHP does not natively support all of its databases in core. Things like Firebird, Oracle, and MSSQL are provided as extensions to the core system.

Discovering Our Community Work

A few weeks ago, I published a post called An Open Source Grant with a Difference, in which I announced that we are using Gittip to donate $10,000 to the community.

If you haven't read the post yet, it contains some interesting stuff. I explain what motivated us to use Gittip, especially in how it facilitates our funding goals for this year, and why I think that more people ought to use Gittip in general. The post was received really well.

Distill 2014: The Internet of Us

Unexpected relationships forged on the crush floor at The Winery SF was just one of the indicators of the success of Distill 2013, our first ever developer conference. The talks featured flying robots, the creation of entire movements, and the beauty that comes from working in a world we design.

If this piques your interest, then you’ll be excited to hear about Distill 2014: The Essence of Development, to be held on August 7-8 in San Francisco, CA!