So, as threatened on Twitter, I decided to overreact to Vim users by trying out BBEdit for my Rails development. Expect a write up soon, but the first pass is that it’s clearly a very powerful program, but it also clearly was developed in response to a set of needs that are not completely congruent with my needs.
1. Contains Me
I’m very excited to mention that I’ll be doing a day-long training session at Lone Star Ruby Conf. The session is entitled Being Correct is Only a Side Benefit: Improve Your Life with BDD. Here’s how I’m describing the session:
In this workshop, attendees will build a complex program using the strict BDD process. Along the way, they will see how BDD improves developer speed and code quality, learn the five habits of highly successful tests, and discover how to best leverage existing tools to improve their coding life.
It’s going to focus on the BDD process itself, rather than on specific tools, and on the benefits to your code from writing tests first.
You can sign up for the session at the Lone Star page. Please sign up, it’s going to be a lot of fun, and we’ll all get better at testing together.
2. Ruby Readability Links
Here are a few recent links on readability and Ruby code
Josh Susser would like to tell you that a meaningful symbol is a better argument than a boolean, while Martin Fowler suggests that it’s even better to have separate methods for each flag value.
Meanwhile, Phil Nash wants to be very clear that he doesn’t like the alternative Ruby 1.9 hash syntax
y: 3 as the replacement to
:y => 3. I have to admit, I’m not sold on it yet either, it still looks weird to me.
One of my takeaways from RailsConf this year was the idea that the Ruby community is starting to shift toward PostgreSQL as a database, citing PostgreSQL’s superior performance and stability.
Ruby Inside presents a tutorial from Will Jessop about how to install PostgreSQL on OS X systems. It’s nice, though I’d really like to see the grab-bag of Postgres tools alluded to in the post.
Meantime, there was another debate going on about Ruby’s verbose mode, including Mislav Marohnic describing how Ruby’s verbose mode is broken, essentially because verbose mode is both verbose, and a code lint, whereas it might be more useful to separate the features.
For his part, Avdi Grimm extends the post and defends verbose mode by describing how Ruby’s verbose mode can be helpful, and providing a different perspective on some of the warnings.
It’s a super-cool idea, and I’m looking forward to it getting fleshed out and expanded over time.