Dec
03
I read great things about giternal here.
I ran into problems trying to install it based on the README, though. I installed the gem from RubyForge but wasn’t able to find the giternal executable. And trying to run the sake tasks gave errors like:
/Library/Ruby/Gems/1.8/gems/RubyInline-3.6.7/lib/inline.rb:732:in `initialize': Permission denied - /Users/jolma/.ruby_inline/Inline_ParseTree_fa12.c (Errno::EACCES)
and
undefined local variable or method `require_giternal' for main:Object
Pat Maddox, the author, quickly responded to my question. The key is building the gem from the git source instead of using the gem on RubyForge. Here is how to do it:
git clone git://github.com/pat-maddox/giternal.git
cd giternal
rake install_gem
This may require you install a few gems like hoe and rspec first.
Then, to verify you are set up:
$ giternal
Usage: giternal (update:freeze:unfreeze)
Test it on a project
$ cd ../someproject/
$ more config/giternal.yml
rspec:
repo: git://github.com/dchelimsky/rspec.git
path: vendor/plugins
$ ls -al vendor/plugins/rspec
ls: vendor/plugins/rspec: No such file or directory
$ giternal update
$ giternal update
Updating rspec
..updated
$ ls -al vendor/plugins/rspec
total 272
Yay.
Nov
03
Ruby on Rails is great for quickly building web applications but is heavily biased towards database-backed apps. Let’s say a handsome developer is creating a web service on rails that speaks to another web service and doesn’t need a database (yet). The app works great, but unit and functional tests fail, complaining about not being able to connect to a database. What is he to do?
Fortunately, there is a free excerpt from Rails Recipies that shows how to get tests working without a database.
Apr
02
I received to books in the mail the other day: Agile Web Development with Rails and The C Programming Language (aka K&R).
I am starting a project at work using Ruby on Rails, whose goal is to facilitate rapid development of database-backed web applications. It automatically generates the guts of a webapp (provided certain naming conventions are followed), allowing the developer to focus on the application logic. Things like wiring together models, views and controllers and the the mapping between business objects and database tables are automatic. Rails even promises to optimize for programmer happiness, a bold claim.
Jobster is written on a Spring + Hibernate + Oracle platform which is really powerful, but complicated. We often use rails for prototypes and side projects where rapid development is highly valued.
But I miss system programming. Instead of piecing together handfuls of other technologies and dealing with abstractions, you interact directly with the OS with a simple programming language and a small set of libraries. You aren’t dependant on magic black boxes that do most of the work. It is all you for better or worse.
It will be fun contrasting my high-level rails work with whatever pet C projects I come up with.