"What the hell is going on with everyone?" - Our increasing awareness of misogyny
My CEO/friend/person who's fired me twice Justin Gehtland exclaimed on the twitters yesterday: "What the hell is going on with everyone? Boston API Jam, Belvedere Vodka, Santorum. Is it National Misogyny Month and I missed the PSA???" I glibly replied: "People started paying attention to misogyny and calling it out. The misogyny didn't increase, your visibility into it did."
I find this basically true and explanatory, but after a few hours of reflection and home improvement I'd like to discuss it in further length than 140 characters allow.
Typo needs to work on their migrations...
I use Typo, because I like Rails, and it's free, and the feature set is pretty nice. But often I find that migrating between major versions sucks.
I just upgraded to 6 from 5, and experienced a problem every time I tried to read an article imported from 5. The failures looked something like:
ActionView::MissingTemplate (Missing template /articles with {:handlers=>[:erb, :rjs, :builder, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]} in view paths "/blog/themes/scribbish/views", ...)
After digging around a bit I found the culprit.
REE has a special trick...
If you're trying to install REE with RVM, and you just, for example plug in the following
rvm install ree-2011.03
It doesn't work terrifically under OS X
It also serves as a local minima of functionality, in that it will get caught with the failure condition even if you remember to add something like:
rvm install ree-2011.03 -C --with-readline-dir=/usr/local
after having done the wrong thing.
You need to do the following:
rvm cleanup all rvm install ree-2011.03 -C --with-readline-dir=/usr/local
Try not to BCrypt so much.
Kicking butt with CoffeeScript, Underscore, and Backbone
I've recently had the opportunity to work with some really exciting JavaScript tools that make developing apps that run in the browser much more powerful and managable than I've been accustomed to working with in the past. The trio of tools I am specifically interested in is CoffeeScript, Underscore.js and Backbone.js. I am specifically targeting technical audiences for this work, I will be assuming a good deal of comfort working with JavaScript, the DOM, and jQuery already. Additionally I will assume you understand Rails well enough to build a trivial app in it.
BAMFCSV - BAMF, your data's here!
Rivaling the amazing transitive powers of Nightcrawler, Jon Distad and I decided to tackle the problem of parsing CSV rapidly under Ruby 1.9. "Aha!" you might be saying, "FasterCSV was already rolled into the stdlib in Ruby 1.9! Why would I need a gem to handle it?" Well you have a very good point there, FasterCSV was a good response to the performance of the old 1.8 stdlib CSV parser. However there are still cases where it doesn't quite go fast enough.
First Cut of Cleavage
I've been playing with the last few days of my 20% time at Relevance working with Michael Feathers' ideas about Code Turbulence, specifically with a mind for being able to examine it through time.
Kymera Magic Wand Remote and Windows 7
I recently was presented with the opportunity to purchase a Kymera Magic Wand Remote. "I get to play wizard while controlling my television?" I thought, "SIGN ME RIGHT UP!"
It's a very neat toy and considering the technology problem it is trying to solve, very well done. (I find there's some crosstalk between "flick down" and "tap top").
However it's a learning universal remote, and the problem with these is that if you use it with Windows via a Windows Media Center receiver device, the operating system will "Debounce" all inputs. Essentially you will end up able to do any input once, but not multiple times in a row without some other input intervening.
This is a stupid, compatibility breaking feature. Fortunately you can disable it. Point REGEDIT to HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\HidIr\Remotes\745a17a0-74d3-11d0-b6fe-00a0c90f57da. Find the EnableDebounce key, and change it's value from 1 to 0. Poof! You've just done a little more magic to make Windows compatible with something Microsoft didn't build.
Mac OS X 10.6.*, ruby 1.9.2, and rvm
I've been running into some complications trying to get ruby 1.9.2 installed by RVM on OS X 10.6.3. This is likely not an original problem, but I got it to work. My environment is pretty crufty, I have an oldish Macbook Pro that came installed with 10.4, and has had an upgrade path including 10.5. Macports, and it's ruby interpreter were on my system, as well as the default Mac ruby, and a ruby source tarball installation.
I had since uninstalled all rubies except for the 1.9.2 source tarball, and uninstalled Macports in favor of migrating to Homebrew.
My specific problem is working on a project in which the .rvmrc specified ruby-1.9.2-p0, and rvm install ruby-1.9.2-p0 did not act as expected. I received the error
readline.c:1292: error: 'username_completion_function' undeclared (first use in this function)
Starting with brew and rvm installed I then needed to do some more:
Install readline:
brew install readline
Cleanup to only one version of readline:
brew cleanup readline
Link the brew install to /usr/local:
brew link readline
Install with rvm passing args to autoconf:
rvm install 1.9.2-p0 -C --enable-shared,--with-readline-dir=/usr/local
No compile errors, and proper readline support! Yay. My thanks to George at Plataforma Tecnologia for this solution.
Beating a nuisance
/usr/lib/ruby/gems/1.9.1/gems/activerecord-2.3.8/lib/active_record/connection_adapters/abstract/connection_specification.rb:76:in `rescue in rescue in establish_connection': Please install the postgresql adapter: `gem install activerecord-postgresql-adapter` (no such file to load -- pg) (RuntimeError)