Monday, March 26, 2007
Getting Started
Getting started with Ruby What Ruby lacks more than anything is good starting points for getting into the language. There's a bunch of absolutely excellent resources out there, though. I've attempted to summarize the best of them by category. Language (latest release by time of writing: 1.8.1)All: Source release for any platform
Windows: Ruby Installer for Windows
OS X: Pre-compiled disk image for OS X Reference documentationRuby Core Library: Complete methods listing and explanation for all the built-in Ruby classes, such as strings, hashes, and IO. Only covers 1.6.8 — supplement with What's New in Ruby 1.8.
Ruby Standard Library: Ruby ships with about a hundred standard libraries. They're all documented in varying degree and collected in one easy bundle with this site. Guides and books for programmersRuby in Highlights: An introduction to Ruby by its creator Matz. Excellent for a quick overview and feel of the language.
Programming Ruby: A thorough introduction and guide to Ruby for programmers written by the Pragmatic Programmers duo. Available in full-length form for free!
The Ruby Way: Includes more advanced Ruby topics including an especially excellent chapter on OOP and Dynamicity in Ruby. Requires a Safari membership, though.
Ruby Garden Wiki: Tons of great information about Ruby, such as OS X gotchas and Ruby usage in real life (convince your boss by name-dropping NASA, Lucent, and HP) Guides for non-programmersWhy’s (Poignant) Guide to Ruby: Hilarious and very aparte introduction to programming with Ruby — complete with cartoon series.
Learn to Program: A thorough introduction to programming in general using Ruby as the learning language. Ruby bloggersChad Fowler (RubyGems), Rich Kilmer (RubyGems, Jabber4r), Dave Thomas (Pragmatic Programmers), Jim Weirich (Rake), Why (Poignant guide, YAML, RedCloth)
Artima's Ruby Buzz Forum: Aggregated feed for a lot of Ruby bloggers. Library & Applications RepositoriesRuby Application Archive: More than a thousand projects across 200 categories. Nothing like learning about Ruby than reading lots of Ruby code.
RubyForge: Hosts close to two hundred Ruby projects with CVS repositories and project management features. The place to publish your projects. My favorite packages outside of the standard libraryRake: Ant/make replacement for building and packaging projects. (See also the usage presentation)
Log4r: Comprehensive logging package for needs that go beyond the simple Logger class in the standard library.
DBI: Database abstraction layer. Run the same code on everything from MySQL and PostgreSQL to Oracle and DB2.
MySQL: Native library for accessing MySQL through Ruby.
FlexMock: Simple mock object for unit testing.
RMagick: Wrapper for ImageMagick that makes image composition and altering a walk in the park.
Madeleine: Object prevaylence port.
Windows: Ruby Installer for Windows
OS X: Pre-compiled disk image for OS X Reference documentationRuby Core Library: Complete methods listing and explanation for all the built-in Ruby classes, such as strings, hashes, and IO. Only covers 1.6.8 — supplement with What's New in Ruby 1.8.
Ruby Standard Library: Ruby ships with about a hundred standard libraries. They're all documented in varying degree and collected in one easy bundle with this site. Guides and books for programmersRuby in Highlights: An introduction to Ruby by its creator Matz. Excellent for a quick overview and feel of the language.
Programming Ruby: A thorough introduction and guide to Ruby for programmers written by the Pragmatic Programmers duo. Available in full-length form for free!
The Ruby Way: Includes more advanced Ruby topics including an especially excellent chapter on OOP and Dynamicity in Ruby. Requires a Safari membership, though.
Ruby Garden Wiki: Tons of great information about Ruby, such as OS X gotchas and Ruby usage in real life (convince your boss by name-dropping NASA, Lucent, and HP) Guides for non-programmersWhy’s (Poignant) Guide to Ruby: Hilarious and very aparte introduction to programming with Ruby — complete with cartoon series.
Learn to Program: A thorough introduction to programming in general using Ruby as the learning language. Ruby bloggersChad Fowler (RubyGems), Rich Kilmer (RubyGems, Jabber4r), Dave Thomas (Pragmatic Programmers), Jim Weirich (Rake), Why (Poignant guide, YAML, RedCloth)
Artima's Ruby Buzz Forum: Aggregated feed for a lot of Ruby bloggers. Library & Applications RepositoriesRuby Application Archive: More than a thousand projects across 200 categories. Nothing like learning about Ruby than reading lots of Ruby code.
RubyForge: Hosts close to two hundred Ruby projects with CVS repositories and project management features. The place to publish your projects. My favorite packages outside of the standard libraryRake: Ant/make replacement for building and packaging projects. (See also the usage presentation)
Log4r: Comprehensive logging package for needs that go beyond the simple Logger class in the standard library.
DBI: Database abstraction layer. Run the same code on everything from MySQL and PostgreSQL to Oracle and DB2.
MySQL: Native library for accessing MySQL through Ruby.
FlexMock: Simple mock object for unit testing.
RMagick: Wrapper for ImageMagick that makes image composition and altering a walk in the park.
Madeleine: Object prevaylence port.
Rails 1.2.3: Compatible with Ruby 1.8.6
While Rails Edge continues to move forward at a rapid clip, we’ve still had the time to make sure that Rails 1.2.x stays in the game. This release irons out the few wrinkles there was between Ruby 1.8.6 and Rails 1.2.2. So now you can enjoy the latest Ruby with the latest Rails.
Besides the 1.8.6 compatibility, we’ve included a few minor fixes. Nothing major. This should be a drop-in replacement for Rails 1.2.2.
IntelliJ jumps on Ruby and Rails
JetBrains’ IntelliJ has long been the gold standard for Java IDEs. Now the company is taking a shot at turning their suite into a good fit for Ruby and Rails development. This new love is coming in the form of a new official Ruby plug-in. It features assisted Ruby coding, with keyword completion, syntax highlighting, on-the-fly code validation, error highlighting, and Rails templates and generator integration. They even put together a screencast to show it off. Cool stuff. Especially if you already plugged down $400 for a license or work on an open-source project (free license, then).
Capistrano 1.4.1
Here it is, another Capistrano release, and less than a month since the last one! Miracles truly never cease. Capistrano, for those embarrassingly late to the party, is a utility for executing commands in parallel on multiple remote servers. It is useful for lots of things, including automating deployment of Rails applications. Version 1.4.1, available just as soon as the mirrors get updated, is a pretty minor update, but has one new feature: You can now pass :env to ‘run’ (and friends), in order to specify environment variables that should be set for that command. For example: run “some_batch_thang.rb”, :env => { “DEBUG” => “1” } There is also one deprecation: if you are using UPPERCASE variables in your Capistrano recipes, you’ll being seeing warnings now. Support for variables that start with uppercase letters will be removed altogether in Capistrano 2.0. If you want uppercase identifiers, you should use Ruby constants. The two fixes in this release: Actor#get will not close the SFTP channel when it finishes. This makes it possible to do multiple SFTP gets and puts in a single session.The subversion adapter now passes the “no-auth-cache” option, so that if you configure an explicit subversion username for deployment other than your dev username, those deployment auth tokens won’t clobber your development tokens. So, go get it, “gem install capistrano.” Or download it directly from RubyForge. And at the risk of promising too much, too early: I expect this to be the last 1.x release of Capistrano, barring any critical problems that may arise with 1.4.1. Come on, cap2!
Subscribe to:
Posts (Atom)