It's been a great year for Ruby on Android, but no one knows it. You can start writing Ruby apps for Android devices TODAY. You don't need to install any SDK, you don't need to install some giant Eclipse IDE, and you certainly don't need to write any Java.
Mike Leone
In Turn your Android Phone Into a Remote Spy Camera with Ruby in 15 Minutes, Mike Leone demonstrates how to use Ruby, Sinatra and Scripting Layer for Android (SL4A) to build and deploy a phone-hosted "spy camera" Web service.

SL4A is a system that allows you to run "scripting language" scripts and interactive interpreters on the Android platform. It currently supports JRuby, Python, Perl, Lua, JavaScript, BeanShell, and Tcl. Mike demonstrates how to set up a Sinatra project to use SL4A to run on an Android phone using JRuby. Upon receiving a request, Mike's app takes a picture using the phone's camera and serves it back over HTTP. He has also released the source code to a larger Ruby app called Broadcast that implements general Android device management functionality over HTTP.
Even if you don't want to build a "spy camera", Mike's walkthrough is a must-read if building Web services in Ruby that can run directly on the Android platform is of interest to you.
RubyDoc.info is a new, automatically updated Ruby documentation site by Loren Segal and Nick Plante that builds upon their earlier success with rdoc.info (which we posted about in 2009). It's powered by YARD, a tool that puts out great looking Ruby documentation (there'll be more about YARD in a post later this week).
RubyDoc.info automatically generates documentation for all gems on rubygems.org (it updates its index once per day) but it does GitHub-hosted projects too. For RubyDoc.info to automatically update with documentation for your Ruby-related GitHub project, use the "Add Project" link on RubyDoc.info and then add http://rubydoc.info/checkout as one of your post-commit hook URLs in your repository's settings - on each future commit, your latest documentation will be built on RubyDoc.info.
RubyKaigi is Japan's "home" Ruby conference and the organizers have just put 27 videos from the RubyKaigi 2010 conference online. Unfortunately I can't link to them individually as they're embedded on a single page, so head over to rubykaigi.tdiary.net and check them out.
Presentation titles include: Ruby 2.0, Ruby API is Improved Unix API, Rocking The Enterprise With Ruby, Mapping the World with DataMapper, The Necessity and Implementation of Speedy Tests, A Metaprogramming Spell Book, Conflicts and Resolutions in Ruby and Rails, and User Experience for Library Designers.
Two caveats: 1) Be aware that some of the presentations are in Japanese (unsurprisingly) although most of the slides include English and, of course, any Ruby is still readable. There were also several English language speakers including Sarah Mei, Carl Lerche, and Jake Scruggs. 2) The player/hosting for the videos seems to be super slow. Give it time and they'll load.
[jobs] Engine Yard are hiring! Did you know that Engine Yard - one of the biggest and brightest companies in the Ruby world - are hiring? They have Ruby Engineer and Ruby App Support Engineer positions open in San Francisco.
Rails 3.0 has been underway for a good two years, so it’s with immense pleasure that we can declare it’s finally here. We’ve brought the work of more than 1,600 contributors together to make everything better, faster, cleaner, and more beautiful.
David Heinemeier Hansson
DHH rings the bell and announces that Rails 3.0 (final) has been released after two years of determined effort by the Rails core team. Grab it now with gem install rails --version 3.0.0 or, if you're in no rush, Rails 3.0.1 might come along within a week or two.
The Videos
DHH gives a quick roundup of some of Rails 3's new features but like Emma Watson's head PhotoShopped onto yet another naked body, it's nothing you haven't seen before. If you're really fresh to Rails 3.0, though, Gregg does an admirable job of boiling everything down into a digestible format with his (free!) Dive Into Rails 3.0 screencast series:
- Getting Started and Action Dispatch
- Bundler and Action Mailer
- Active Relation and Active Model
- Cross-site scripting and Unobtrusive JS
- The New Action Controller
Ryan Bates has also produced a fistful of his typically succinct but precise RailsCasts videos on a wide array of Rails 3.0 topics. Ryan always focuses on code and practicalities so these are a good place to start if you want to follow along and do some coding yourself:
- Upgrading to Rails 3.0: Part 1, Part 2 and Part 3
- Routing in Rails 3
- Active Record Queries in Rails 3
- Advanced Queries in Rails 3
- Controllers in Rails 3
- Rack in Rails 3
- Subdomains in Rails 3
- Active Model
- Generators in Rails 3
- Making Generators in Rails 3
- Validations in Rails 3
- ERB Blocks in Rails 3
- Action Mailer in Rails 3
- XSS Protection in Rails 3
- Bundler
If you don't like videos, still follow the links, because there are links to the ASCIIcasts regular HTML versions of the Railscasts videos. These are regular blog posts that you can follow at your own pace.
EuRuKo is the brand of Europe's principal Ruby conference series and EuRuKo 2010 took place in late May. Why, then, am I posting about it in August? First, I'm a strong supporter of EuRuKo and promised to post a roundup of the event here. Secondly, it turns out it took a while for the videos to all be uploaded ;-) Third, I've taken my time in getting round to it. Nonetheless, there are some amazing presentations you can watch and they're still fewer than three months out of date!
One of the event's organizers, Ela Madej, gives a summary:
European Ruby Conference 2010 is now well over and the Berlin EuRuKo 2011 team are surely working on their opening song for the next year. Yes, we all know they sing well - their uber-strong German vocal was nothing but adorable.Despite the flooding and changing the conference venue just one week before the event, EuRuKo was great! It was filled with fantastic talks and Rubyists from all over the planet. Here are some numbers: around 121 Poles (less than half of all 280 attendees), at least 40 Germans, Rubyists from Japan, Austria, Spain, UK, Switzerland, Uruguay, USA, Cuba, Slovakia, Czech Republic, Slovenia, Croatia, Estonia, The Netherlands, Latvia, Italy, France, Belgium, Brasil and more.
For everyone who missed the event, the videos from the conference are on Vimeo. There is also a great summary of the talks for Day One and
Day Two. Here are the links to EuRuKo official photos on Flickr for Day One and Day Two also.
Ela Madej
While there are 37 videos on offer, some standouts include:
- Let's Remodel That Game by Tim Lossen.
- How to Rate A Rails Application by Elise Huard.
- Mislav Marohnić talks about how code is loaded in Ruby (in quite some detail!)
- Spoiling the Youth with Ruby by Karel Minarik (organizer of EuRuKo 2008)
- Matz's keynote
- DSL or no DSL by Jose Valim (of Rails core)
EuRuKo is supported by not only by Rubyists paying to attend but by quite a few sponsors, with 2010's event no exception. The organizers asked me to specially thank their biggest sponsor Novelys - a team of French Ruby on Rails experts. On top of that, EuRuKo's afterparty sponsors were Applicake and Lunar Logic Polska, two Ruby development teams from Poland. Finally, 16 micro sponsors helped out too.
I've been a keen supporter of EuRuKo since the first event so a big thanks to all of the sponsors and attendees for supporting Ruby's principal Ruby conference. Now, go enjoy those videos.
It's time to unveil my latest project: Ruby Weekly, a once-weekly e-mail roundup of 10-20 Ruby related links with a few sentences on each. It's had a brief alpha testing period and it's now ready to roll.
Click here to subscribe to Ruby Weekly - it's a one click process. It's also ultra simple to unsubscribe if it's not eventually to your taste.
There's been a renaissance in e-mail newsletters in the last year or two and it seemed, to me, to be a great way to get programming related news. It's not for everyone (so Ruby Inside will be staying around, I assure you!) but if you want to avoid distractions and just get a summary once a week, it's a great alternative to reloading Twitter or Google Reader over and over. The popularity of the Ruby5 podcast proves there's an appetite for Ruby news in different media (and if you prefer audio, check them out).
As well as featuring links and (very) brief summaries, the weekly e-mail will also occasionally include new event, book, and job announcements and, if something significant is going on in Rubyland, a few paragraphs of editorial. The aim, though, is to keep the e-mail reasonably brief, in a plain format, and, above all, useful.
Ruby Weekly goes out once a week on Thursdays, so if you subscribe within the next 16 hours or so, you'll get this Thursday's edition (issue #4).

SimpleCov is a code coverage analysis tool for Ruby 1.9. It uses 1.9’s built-in Coverage library to gather code coverage data, but makes processing it’s results much easier by providing a clean API to filter, group, merge, format and display those results, thus giving you a complete code coverage suite with just a couple lines of code.
Christoph Olszowka
SimpleCov builds on the ideas presented in Aaron Patterson's recent, and awesome, Writing a Code Coverage Tool with Ruby 1.9 blog post. The result is a powerful yet straightforward code coverage tool that puts out some well formatted stats.
http://github.com/jeremyevans/home_run (or on Ruby Inside)
home_run is an implementation of ruby’s Date/DateTime classes in C, with much better performance (20-200x) than the version in the standard library, while being almost completely compatible.
Jeremy Evans
Jeremy Evans (of Sequel fame) has created home_run, a performance-focused C reimplementation of Ruby's Date and DateTime classes. They work out to be significantly faster than the native Ruby classes while retaining compatibility (mostly).
Jeremy makes the surprising claim that "the standard library Date class is slow enough to be the bottleneck in much (if not most) of code that uses it", but goes on to prove the point with a Rails related benchmark where retrieving all objects for two different models get a 2x and 3x speedup when using home_run.
I hope that Jeremy ultimately aims to get his work included into MRI (as happened with FasterCSV replacing CSV in the stdlib) as standard.
Yuki (Yugui) Sonoda has just announced the release of the stable version of Ruby 1.9.2!
Ruby 1.9.2 has been released. This is the newest release of Ruby 1.9 series. Ruby 1.9.2 is mostly compatible with 1.9.1, except the following changes:
- Many new methods
- New socket API (IPv6 support)
- New encodings
- Random class that supports various random number generators
- Time is reimplemented. There is no longer the year 2038 problem.
- some regexp enhancements
- $: no longer includes the current directory.
- dl is reimplemented on top of libffi.
- new psych library that wraps libyaml. You can use the library instead of syck.
Yuki Sonoda
Ruby 1.9.2 passes 99% of RubySpec and, if you haven't already given it a go, offers worthwhile performance increases over Ruby 1.9.1 and significant performance improvements over the 1.8.x series.
Intriguingly, Ruby 1.9.2 is only considered to have full, verified support on Debian Linux on 32 bit Intel architectures, with support for OS X 10.5 and 10.6, FreeBSD, Windows, and Solaris considered "best effort." Linux distributions other than Debian are listed in the lower "perhaps" category for support, so running your own tests is more essential than ever before moving to 1.9.2 in production.
Installing
As always, the source can be picked up from the official sources at ruby-lang.org:
http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p0.tar.gz
http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p0.tar.bz2
http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p0.zip
Or, you can use RVM, which has already been updated to support the release:
rvm update --head && rvm reload && rvm install 1.9.2 && rvm 1.9.2 --default
http://labs.headlondon.com/2010/07/skinny-daemons/ (or on Ruby Inside)
[W]e’ve been having a lot of fun writing a series of small, self-contained web apps .. When we’re building these kinds of applications, which are often meant as low-ceremony apps targeted at a very specific purpose, or as service utilities, a lot of the time we don’t want to go through the hassle associated with a “normal” web app. [..]
Dave Hrycyszyn
In Skinny Daemons, Dave Hrycyszyn presents a practical walkthrough of how he builds what he calls "skinny daemons" - small, HTTP based daemons to perform single tasks that are then packaged up into gems for easy installation (across multiple servers, for example). It's a practical demonstration and holds your hand the whole way. Useful stuff.
http://mongomatic.com/ (or on Ruby Inside)
Back in June, I did a comparison of Mongoid and MongoMapper, the two best known MongoDB libraries for Ruby. Now, Ben Myles has brought another to the fore: Mongomatic.
Mongomatic is a Ruby library that lets you easily model your MongoDB documents in your applications.The primary design goals of Mongomatic are simplicity and adherence to MongoDB conventions. Mongomatic is not an ActiveRecord clone and has been designed to fit nicely with the document-oriented nature of MongoDB.
Features include cursors, hash access to your document and embedded documents, validations, callbacks and conventions for creating indexes and relationships.
Ben Myles
I haven't given it a try myself yet, but Ben's done a good job of presenting it, along with example code, so check it out if MongoDB is your bag.
If you want more MongoDB related news, check out coder.io's #mongodb tag. Lots of great stuff there.
SunnyConf is a single-track, one day conference taking place Sept. 25th in sunny Phoenix, AZ. There will be 8 speakers and a keynote, as well as lightning talks. Speakers include:
- Jeremy Ashkenas (keynote speaker)
- Les Hill & Jim Remsik of HashRocket
- Charles Nutter (of JRuby fame)
- Blake Mizerany (of Heroku and Sinatra fame)
- and more!
Check out the official SunnyConf Web site to see other speakers and keep up to date on the conference. Tickets are priced at $100. A limited number of seats are available, so get your tickets now!
If you missed out on RubyConf, which sold out just a few days ago, this could make for a good tonic.
http://engineering.attinteractive.com/2010/08/code-coverage-in-ruby-1-9/ (or on Ruby Inside)
Aaron Patterson (of Nokogiri fame) has written a post for the AT&T Interactive blog about writing a code coverage tool with Ruby 1.9:
You probably didn’t know this, but code coverage is actually a miracle. Who knows how it works? Oh wait, it’s exactly opposite of what I just said. It’s not a miracle, and we can learn how it works.I’m not going to go in to depth, but this tool works by hooking in to Ruby's virtual machine...
Aaron Patterson
It turns out that Ruby 1.9 already comes with support for code coverage monitoring. Aaron looks at how it works and improves how we interact with it a shade.
In "So You Want To Be a Ruby Dev" Kevin W Gisi presents a tongue in cheek narrative of a new Ruby developer being guided through the choices they have to make. (It's being discussed on Hacker News too - some good comments there.)
He asks a lot of questions: Which Ruby implementation to use? Which Web framework? Which Gems? Which version of Rails should you use? Which database adapter? And he caps it off with a conclusion of sorts:
Remember when Ruby and Rails was about getting stuff done? Note: New developers, Ruby is still a great place to be - even if there is an overabundance of choice at the moment.
Kevin W Gisi
I like Kevin and I saw a little merit in his tale, but right away mygut felt his concluding point was bogus. I wondered.. is there another problem here or does Ruby really suffer from an overabundance of choice?
If we're talking about the number of tools, implementations, or libraries, no. Abundance is Ruby's strength. It's the TIMTOWTDI (There Is More Than One Way To Do It) philosophy Ruby inherited from Perl, in contrast to Python's preference for only one obvious way to complete an operation. It's Ruby canon that Matz designed Ruby to be a fun programming language for himself but, also, a language flexible enough to adapt to other people's fancies and preferences. Rather than all of us reading from the same hymn sheets, we can bend, bolt onto, and monkey patch Ruby to fit our own personal or team preferences. This approach has its (much discussed) failings, but it's a philosophy nonetheless.
The overabundance is in the options we present
Still, I detected truth in Kevin's narrative. I realized, though, that it's not that Ruby is no longer about "getting stuff done" or that there's an "overabundance of choice" in libraries or tools. The problem is that Ruby's documentation, main advocacy sites, and even most sites for popular Ruby libraries (with one major exception - coming later) try too hard to demonstrate freedom, flexibility and choice from the get go without giving an opinionated, direct instructional approach for newcomers (e.g. on the official Ruby download page, the first thing you see is a link to Ruby's source code).
We need to be more specific in our READMEs and Web sites where we can and think about what a smart newcomer would want to see. We need "Getting Started" or "For Newcomers" pages that tell people exactly what to do without bending over backwards to cover edge cases or show off esoteric features. Tours that don't take diversions. Download X. Type Y. Run code Z. Instructing, rather than showing a smorgasbord of options, from which a new, confused user would choose none. Rather than offer 5 vaguely different alternatives on a "How To Install" page, give the simplest, most generic route, then discuss the alternatives for "advanced users."
Books are great at this sort of direction. Take almost any instructional Ruby book and even if it's out of date or not doing things "the accepted way", it will take a position and stick to it. Novices can follow along and make smarter judgements later. Let's bring that to our own work too, where we can (and I'm certainly aware there are people who do do this already - that's great!). I'll be going through my own libraries and future blog posts to keep an eye out for this and figure out how a newcomer might perceive them. Satish Talim's RubyLearning blog and courses have proven there's a gigantic population of people who consider themselves Ruby "newbies" reading what we write - it would be great if any of them could have a defined route to try out almost any library they stumble across.
Rails gets it right
Rails has been good at the instructional approach over the years. The "type this, type that, start a server, and bam, you've got an app" approach has been instrumental in the boom of Rails' popularity. Things like the "build a blog system in 15 minutes" screencasts were huge hits. Even complete non Rubyists could follow the same moves precisely and get the same results which they could then play around with further. Imagine if every good Ruby library had similar resources? (And if Railscasts has done a video for your library or tool and you're not making it a centerpiece of your site or README, sort that out!)
It's easy to forget that when we write about Ruby, the jargon and "do what you like" approach we frequently celebrate can seem alien to even the most intelligent newcomers who may well be used to more structured, directed "do X, then Y, just because" environments. We should provide hard and fast answers for those people, even if we run the risk of being a little wrong from time to time, without jeopardizing the richness of the number of tools, libraries, or implementations that exist.
In April, we wrote about IronRuby hitting 1.0 and Microsoft's "3 years with Ruby paid off." It's sad, then, to read today that program manager Jimmy Schementi is leaving Microsoft citing a rapidly decreasing interest in dynamic languages at the software giant.
[..] a year ago the team shrunk by half and our agility was severely limited. I’m omitting the internal reasons for this, as they are the typical big-company middle-management issues every software developer has. In short, the team is now very limited to do anything new, which is why the Visual Studio support for IronPython took so long. IronRuby’s IDE support in Visual Studio hasn’t been released yet for the same reasons. While this is just one example, many other roadblocks have cropped up that made my job not enjoyable anymore.Overall, I see a serious lack of commitment to IronRuby, and dynamic language[s] on .NET in general. [..] That being said, I am still interested in implementing dynamic languages on .NET, so I will remain a IronRuby core-team member, ironically making me the first non-Microsoft core contributor. The bad-news is I will no longer be working on IronRuby full-time, but in the near future I’m definitely staying active. Also, Tomas will definitely continue working on IronRuby when he can; we weren’t the last two people left for no reason. :-)
Given that Tomas and I will only be working part-time on IronRuby now, I invite the Ruby and .NET communities to come help us figure out how to continue the IronRuby project, assuming that Microsoft will eventually stop funding it. I’ll start a thread on the IronRuby Mailing List shortly, so keep an eye on that if you’d like to help.
Jimmy Schementi
Schementi left Microsoft at the end of July and is on his way to work at a NYC-based financial technology consulting firm. I'm sure most Rubyists would be quick to join me in congratulating Schementi and the rest of the IronRuby team (including John Lam, who left in 2009) for making significant strides in a company and environment where the obstacles were piled high. We've wondered for years whether Windows is a first class platform for Ruby and now we know that Ruby certainly isn't even a second class language for Microsoft.
Schementi seems keen for people from outside of Microsoft to get involved with IronRuby to keep it alive. These sorts of efforts aren't often successful, because contributors usually bubble up over time to become more important, and he notes that he is now the first non-MS contributor merely by virtue of no longer working for MS. If, though, you're a .Net and Ruby hotshot and have the time and passion to become a hero in the worlds of DLR and "Ruby on Windows", there's a significant opportunity here for the taking.
Yesterday, Lyle Johnson of the FXRuby GUI toolkit project stood aside as the project's maintainer, effectively retiring the project:
When Jamis Buck wrote last year about ceasing development on Capistrano, his post really struck a chord with me. If this post reminds you of that one, it’s because I re-read it before sitting down to compose this one. [..]It is with mixed feelings that I announce that I’m stepping away from FXRuby development, effective immediately. I will no longer be accepting bug reports, support requests, feature requests, or general emails related to FXRuby. [..]
Someone on the mailing list asked whether FOX and FXRuby are “pretty much dead.” I can’t speak for Jeroen or the FOX project. As for FXRuby, however, that’s up to you. FXRuby is, and always has been, an open source project. If you are interested in hacking on FXRuby, or even taking over maintenance of the project, please feel free to fork the project on GitHub and release updates as you see fit.
Lyle Johnson
The undertone here is that the FOX Toolkit, upon which FXRuby operates, isn't underseeing significant development and, perhaps, there is little more for FXRuby to be doing (at least, little in the way of exciting or interesting) and Lyle wants to shuffle the project off his plate.
Lyle cites Jamis Buck's dropping of his Capistrano deployment system project as an inspiration, though Capistrano's story turned out to be a happy one after being adopted, for the most part, by Lee Hambley.
http://avdi.org/devblog/2010/08/02/using-and-and-or-in-ruby/ (or on Ruby Inside)
If you use Ruby long enough, you will discover theandandoroperators. These appear at first glance to be synonyms for&&and||. You will then be tempted to use these English oprators in place of&&and||, for the sake of improved readability. Assuming you yield to that temptation, you will eventually find yourself rudely surprised thatandandordon’t behave quite like their symbolic kin...
Avdi Grimm
Avdi Grimm presents a concise guide to a matter that confuses the majority of Ruby developers from time to time.
Early bird registration for RubyConf 2010 - to be held in New Orleans November 11-13 - has just opened and you need to get in fast if you want to go. RubyConf has a reputation for selling out very quickly and even though some waiting list folks usually make it in, if you're dead set on going, buy your tickets immediately. They're $300.
Not got a second to waste? Go direct to the ticket ordering page by clicking here.
Note: I don't get a cut of ticket sales or even get asked to post about RubyConf. I just remember reading a torrent of endless misery on Twitter when it sold out so quickly last year ;-)
The Ruby on Rails Tutorial: Learn Rails by Example (a.k.a. railstutorial.org) by Michael Hartl has become a must read for developers learning how to build Rails apps. Michael has put together a great Rails 2.3 tutorial, releasing it all for free online chapter by chapter. Now, Michael's going three steps further:
1 — A new, Rails 3.0 focused version. The free online book previously covered Rails 2.3 but Michael's updated it to cover Rails 3.0 too. He's also selling it as a DRM-free PDF for $39 (you get a PDF of the Rails 2.3 version too). As a gesture of goodwill to Ruby Inside's readers, he's made a coupon code that works till the end of August - it's rubyinside01 and gets you 20% off (so a total of $31.20 in the end).
2 — Creative Commons licensing of the existing online text. Like all of us, Michael needs to make some money, but a side benefit is that he's making the existing Rails 2.3 focused text Creative Commons licensed! This will allow you to distribute it, translate it, put snippets on your blog, and so forth. (Update: Michael notes that this is sort of in the air at the moment pending more resources. He has more preparation to do to make this work properly, but the spirit is there.)
3 — A print book, published by Addison-Wesley. A print edition, Ruby on Rails 3 Tutorial: Learn Rails by Example, is due out in the fall as part of the Professional Ruby Series (the same series as The Rails 3 Way by Obie Fernandez), and is currently available for pre-order at Amazon.
As a bit of a "geek aside", the Ruby on Rails Tutorial book is written using PolyTeXnic, a pure-Ruby markup system built on top of the LaTeX typesetting system. PolyTeXnic converts a select subset of LaTeX to HTML, while also producing PDFs via the pdflatex command.
In addition to supporting code-heavy programming books such as Ruby on Rails Tutorial, PolyTeXnic can also produce mathematical documents; see, for example, Michael Hartl's anti-pi propaganda piece called The Tau Manifesto. Michael hopes to release PolyTeXnic as an open-source project some time later this year. I keep nagging him about it.
http://blog.titanous.com/post/867488976/mailman-released (or on Ruby Inside)
Mailman is an incoming email processing microframework. You point it at a source of email, such as a POP3 account or a Maildir, and it will execute routes based on the messages that come in.For instance if you had a ticketing system, and wanted to add replies via email to the database, this application would be a good start:
require 'mailman' Mailman.config.maildir = '~/Maildir' Mailman::Application.new do to 'ticket-%id%@vipsupport.com' do Ticket.find(params[:id]).add_reply(message) end end
Jonathan Rudenberg
This is very nice. I love these microframeworks. The Sinatra style is always good to ape.
http://cogitations.arbia.co.uk/post/863857348/distributed-ruby (or on Ruby Inside)
Due to the nigh insurmountable work of Charles Nutter, Thomas Enebo, Ola Bini and Nick Sieger along with their team we have direct access to Java libraries and thus to a plethora of usefulness. Sometimes I think we forget how lucky we are, the Ruby community, to have such awesome people simplifying our lives, anyway, thats quite enough arse kissing. So, on with the show...
Anthony Buck
In Distributed Ruby - Exploiting Enterprise Software, Anthony riffs on using JRuby as a way for Rubyists to "exploit" robust, enterprise-grade libraries. This isn't a new topic but his demonstration is particularly compelling (and worth scrolling down for).
Hazelcast is an "in memory data grid" that's fail-safe (with regard to crashes) and that automatically scales across the number of nodes within the system. Anthony's code works fine out of the box with JRuby 1.5.1 running under RVM (yep, I tested) and demonstrates what is a particularly powerful Java library I'd never heard of before. It's excellent we have access to this from Ruby, and Anthony's right - the JRuby team deserves credit for giving Rubyists opportunities to both "exploit" enterprise technologies and to deploy systems in enterprise environments without having to jump ship with Ruby.
We'd like to invite you to RubyConf Uruguay, which will take place this October on Friday 29th and Saturday 30th, in Montevideo. This will be a single-track conference aimed at developers who want to learn or get up-to-date with Ruby, Ruby on Rails, Sinatra, Testing, SCRUM, JavaScript, SQL vs NoSQL, etc.If you're interested in speaking at this event, we'll be happy to accept your proposals
RubyConf Uruguay organizers
You can learn more at the official RubyConf Uruguay site or follow the news about the conference on Twitter @rubyconfuruguay.
http://weblog.rubyonrails.org/2010/7/26/rails-3-0-release-candidate (or on Ruby Inside)
High off Baltimore Pandemic and Yellow Tops, I believe we promised a release candidate shortly after RailsConf. As things usually go in open source, we gorged ourselves on fixes and improvements instead. But all to your benefit. We’ve had 842 commits by 125 authors since the release of the last beta!Now it’s time to just say good is good enough, otherwise we could keep on with this forever. So please welcome the Rails 3 release candidate! You install, as always, with
gem install rails --pre
David Heinemeier Hansson
Over on the official Rails blog, DHH talks about today's release of the first release candidate of the much awaited Rails 3.0.
Note: You might still find RI's Rails 3.0 Beta: 36 Links and Resources to Get You Going useful too.
It's been a couple of months since the last job round up but the Ruby Inside job board has been hopping! There are 14 live listings to go over today and they're not all in San Francisco. Jobs in Denver and Maryland bring in a bit of interesting variety.
A tweak to the format now that Ruby Inside has gone all "tumblelog" on you: I've decided not to include blurbs about every job in the listings since if you're interested in a company or the location is suited to you, you're going to click through and read the extended information anyway. Most companies give quite a lot of detail so click through and check them out.
Ruby on Rails Developer(s) (Entry-level-to-Senior)
CreaTek Solutions, Inc. —Boulder, Colorado
Ruby on Rails Developer
Foraker —Boulder, Colorado
Senior Ruby on Rails Developer
Get Satisfaction —San Francisco, California
Sr. Ruby Engineer- CoTweet
ExactTarget + CoTweet —San Francisco, California
Ruby On Rails Developer
On-Site.com —Lafayette, Colorado
Front End Developer
SingleFeed —San Francisco, California
Rails Developer
Context Optional, Inc —San Francisco, California
Sr. Ruby on Rails Programmer (or perl/python/django/catalyst)
Insight —Birmingham, Alabama
Software Engineer, Scalability
Zendesk —San Francisco, California
Software Ruby/Rails leader Engineers
RotoHog —Los Angeles, California
RoR Engineer
Zendesk —San Francisco, California
User Interface Software Engineer
BoxTone —Columbia, Maryland
Front End Developer
Zendesk —San Francisco, California
Frontend Engineer
Onehood, Inc —San Francisco, California
Want your job(s) to appear on Ruby Inside and on the sidebar of Rails Inside? Check out our "Post a Job" page for info on how it all works and how much it costs.
Hot on the heels of his Windows Ruby implementation shootout comes Antonio Cangiano's Great Ruby Shootout of July 2010 where Antonio pits 8 different Ruby implementations against each other in a performance shootout!
Antonio's findings and observations are interesting and well worth a read but if you're in a hurry, the conclusion is that Ruby 1.9.2 RC2 and JRuby 1.5.1 are almost joint first place for fastest Ruby implementation (but 1.9.2 takes it by a hair.) Ruby 1.9.1 and Maglev are then very close behind.
http://redmineblog.com/articles/redmine-1.0.0-released/ (or on Ruby Inside)
It's out, it's out. Redmine 1.0 is released!The first release candidate for Redmine 1.0 has been released to Rubyforge. This is a major release which includes many new features and bugfixes since the last major release, (0.9 in 2010-01-09).
This is still considered a release candidate (RC) release. The code has been stabilized over the past 6 weeks and we believe it is ready to be tested in production, but there still might be some rough edges. We are using this release to get some for final feedback, both for 1.0.1 (bug fixes) and our next major release 1.1.0.
Eric Davis
I don't understand the odd release candidate vs "1.0 is released" situation, but I've been following Eric's progress for months and he's put a lot of effort into making Redmine - a Ruby and Rails-based project management system used by the Ruby, RubySpec, Puppet and Typo3 projects, amongst others.
http://gilesbowkett.blogspot.com/2010/07/secrets-of-superstar-programmer.html (or on Ruby Inside)
Giles Bowkett (Ruby Inside's top Ruby presenter of 2008) has released a series of free videos called "Secrets of Superstar Programming Productivity" that could interest some of you:
Flow (22 minutes)
Metrics (17 minutes)
Habit (22 minutes)
Giles' style isn't for everyone, but he shares some great tips in these videos and they've been very well received on Twitter. Enjoy!
Florian Hanke got in touch to tell me that presentations and photos from the recent Euruko 2010 European Ruby conference are now online.
http://euruko2010.heroku.com/ shows off the presentations awesomely! Videos and slides are available for most of them and the video/audio is of a high quality.
Highlights include:
- Continuous Integration and Why You Need It — Nicolas (foca) Sanguinetti
- Getting and loading code: current state of packaging & best practices — Mislav Marohnić
- Building a search engine with Ruby — Florian Hanke
- Why Bundler? — Yehuda Katz
- Remodelling a Facebook game — Tim Lossen
- Putting the static back into Ruby — Tomasz Stachewicz
- Anatomy of Ruby i18n — Sven Fuchs
- Matz's Keynote — Matz!
More can be found on Vimeo and if you'd rather just read a write up of what happened, Markus Prinz has writeups for Day 1 and Day 2 of the conference.
http://railsmagazine.com/issues/6 (or on Ruby Inside)
Rails Magazine is a well designed magazine dedicated to "fine articles on Ruby & Rails" and the recently released issue #6 is special in being nearly entirely Ruby focused. Topics covered include Haml, Sass, Capistrano, Hpricot, RubyConf India and RVM, as well as interviews with Sarah Allen and Michael Day (of PrinceXML).
The PDF version of Rails Magazine is free, but you can buy a print edition through MagCloud for less than $10.
Ruby Tracker is a new webapp from EnvyLabs that tracks dependencies for your Ruby and Rails applications. It alerts you whenever libraries you depend on are updated or have new versions released. This is all in aid of keeping up to date.
Only two downsides: Ruby Tracker only works with projects that use Bundler and that are in an Internet-accessible Git repository (such as on GitHub). It can deal with private repositories, however, so your code doesn't need to be publicly accessible.
In true Envylabs style, a screencast explains how Ruby Tracker works:
Nathaniel Bibler has written a blog post explaining what Ruby Tracker is all about in case the idea doesn't click for you immediately.









