Feb 27 2007Comments
Feb 27 2007Comments
We are adding some sanity to our domains, hosts, and ports. Streamlined's official home is www.streamlinedframework.org. I am adding permanent redirects for old URLs.
Some of the top-level URLs are not yet redirecting correctly. I think this may be upstream of my Apache config because things look fine there. Apologies for the inconvenience until we get all the redirects in place.
Update: Fixed the link. Without that being right the post didn't have a lot going for it.
Feb 26 2007Comments
During 2005 and 2006, we developed a simple Rails application called Codecite that we used to deliver presentations and training materials at our private training classes, and at the No Fluff, Just Stuff Java symposiums. As of 2007, codecite is mothballed. Our new course delivery system for 2007 uses a combination of TiddlyWiki and Prototype to present course materials and lab exercises.
If you are looking for Ruby and Rails samples, we have a more polished set of samples with the book Rails for Java Developers. The sample code is a free download.
We will be moving some of the old codecite material into the Code section of the website. If you are looking for some specific code sample that we have not updated yet, contact us and we will get it to you.
Feb 23 2007Comments
Feb 22 2007Comments
The solution to yesterday's rcov problem, it turns out, is to yank flexmock from our test suites. This is a shame, because we like the library so much. However, by removing it and replacing it with mocha/stubba, we were able to get rcov running again. Now, if I could just convince it to quit saying "60.8%"..........
Feb 21 2007Comments
Relevance, LLC is seeking Ruby developers in the Durham/Chapel Hill, NC area. We will begin with two full-time contract positions around April 1 and May 1, 2007.
The ideal candidate would have experience with several of the following items, and a passion to learn the rest:
- Object-Oriented Design
- Domain-Specific Languages
- Mac OS X
Do you want to work with a small, talented team, and develop your skills with the technologies above? Please send a resume and a one-page writing sample to firstname.lastname@example.org, subject line "Ruby position."
Feb 21 2007Comments
We depend pretty heavily on rcov for keeping us sane in our Ruby projects. To our mild surprise and massive consternation, rcov started failing on us yesterday. Somehow or another, we're getting a Bus error thrown out of the c code. It seems to have something to do with multiple aliases of the initialize method in an AR model. It happens across platforms, and it seems that the only other people to experience it are the rspec folks, and the only solution they've found is to turn off the c-level bindings. Which is PAIIINNNFFFULLLLL.
If anybody has any solutions, please let us know, because right now, we're bummed.
Feb 20 2007Comments
action_profiler (1.0.0) actionmailer (1.3.2, 1.3.1, 1.3.0, 188.8.131.5248, 1.2.5, 1.2.3, 1.2.1, 1.2.0) actionpack (1.13.2, 1.13.1, 1.13.0, 184.108.40.20648, 1.12.5, 1.12.3, 1.12.1, 1.12.0) actionwebservice (1.2.2, 1.2.1, 1.2.0, 220.127.116.1148, 1.1.6, 1.1.4, 1.1.2, 1.1.0) activerecord (1.15.2, 1.15.1, 1.15.0, 18.104.22.16848, 1.14.4, 1.14.3, 1.14.2, 1.14.0) activesupport (1.4.1, 1.4.0, 22.214.171.12448, 1.3.1, 1.3.0) acts_as_ferret (0.3.1) aws-s3 (0.3.0, 0.0.8952) builder (2.0.0) capistrano (1.3.1, 1.2.0, 1.1.0) cgi_multipart_eof_fix (2.0.2) color-tools (1.3.0) creditcard (1.0) daemons (1.0.4, 0.4.4) director (0.1) facets (1.8.8, 1.7.46) fastercsv (1.2.0) fastthread (0.6.3, 0.6.2) fcgi (0.8.7, 0.8.6.1) ferret (0.10.14) flexmock (0.5.0, 0.4.5, 0.4.3, 0.3.0) gem_plugin (0.2.2, 0.2.1) google-geocode (1.2.1, 1.2.0) gruff (0.2.8, 0.1.1) hoe (1.1.7) icalendar (0.98, 0.97, 0.96.4) json (0.4.3) Linguistics (1.0.3) mailfactory (1.2.3) markaby (0.5) mime-types (1.15) mocha (0.4.0) model_security_generator (0.0.9) mongrel (1.0.1, 1.0, 0.3.13.4, 0.3.13.1) mongrel_cluster (0.2.1) mysql (2.7) needle (1.3.0) net-sftp (1.1.0) net-ssh (1.0.10, 1.0.8) payment (1.0.1) pdf-writer (1.1.3) rails (1.2.2, 1.2.1, 1.2.0, 126.96.36.19948, 1.1.6, 1.1.4, 1.1.2, 1.1.0) rake (0.7.1) rc-rest (2.2.1, 2.1.0, 1.0.0) rcov (0.7.0.1) RedCloth (3.0.4, 3.0.3) redgreen (1.2) rspec (0.7.5.1) ruby-growl (1.0.1) ruby-prof (0.4.1) rubycas-client (0.11.0, 0.10.1) rubyforge (0.4.0) rubygems-update (0.9.2) rubyzip (0.9.1) ruport (0.8.10) s33r (0.5.2, 0.4.1) scruffy (0.2.2) Selenium (1.0.1) simple-rss (1.1) sources (0.0.1) sparklines (0.4.1, 0.2.7) sqlite3-ruby (1.2.0, 1.1.0) stomp (1.0.5, 1.0.4, 1.0.2) streamlined_generator (0.0.6) syntax (1.0.0) tattle (1.0.1) termios (0.9.4) test-spec (0.3.0) transaction-simple (1.4.0, 1.3.0) trestle_generator (188.8.131.52, 1.1.2) tzinfo (0.3.3, 0.2.1) xml-simple (1.0.10) ZenTest (3.4.3)
That's 73 gems, for those counting at home. Special notes:
- even though streamlined_generator is still in there, it shouldn't be because we moved to a plugin model with 0.0.7
- the trestle generator is redundant if you have Rails 1.2
- there's a bunch of gems in there I've rarely used more than once, but only one designed to be that way
Feb 20 2007Comments
When reading a programming language book, I look for two things:
- Big ideas: What make this language unique? What styles of programming might it enable?
- Little details: Any interesting language has hundreds of little idioms, tricks, and quirky corners.
When I finally cracked my copy of The Ruby Way (2nd ed.), I did not expect to find much that was new to me--big or little. After all, I have been using Ruby daily for years, and have worn out the electrons in my PDF copy of the Pickaxe. My expectations bumped up a notch when I saw this in the introduction: "[The Ruby Way] was carefully designed to be complementary to [the Pickaxe] rather than overlapping it." When Chapter 1 jumped into reflection, singletons vs. eigenclass, threequals, and
method_missing, I knew I was in for a fun ride.
There is a ton of stuff in The Ruby Way that I have not seen elsewhere in book form. The sections on core classes are not afraid to visit the dimly-lit corners. For example, collection coverage includes not only
inject, but also
partition and how to write your own n-way partition method. This "how to write you own" theme recurs throughout the book, as Hal moves past what Ruby
The Ruby Way covers many things that you might not use every day, but give you a complete utility belt for when you face an unusual challenge. You'll learn about Madeleine, Rinda, ZenTest, GUI toolkits, Rcov, web toolkits (not just R**ls), RMagick, PDF::Writer, and internationalization.
There are a few nits to pick. There could be more about Rake, which is vastly more important than anyone seems to realize. The material on metaprogramming is excellent, but the idioms in a few places are "old school", e.g.
append_features is used where
included is more appropriate in Ruby 1.8+.
I usually take a page or two of notes when reading a book on a familiar topic. With The Ruby Way I took about fifteen pages. There is a lot of good food for thought here. Dig in.