Virtual Surreality

It's too real to be true

Browsing Posts in Information Science

Because I keep doing this… Download the Java zip unzip to /opt ln -s /opt/yed-XXX /opt/yed cd /opt/yed && jar -xf yed.jar com/yworks/yfx/resource/24/yicon.png && mv com/yworks/yfx/resource/24/yicon.png . && rm -rf com echo “[Desktop Entry] Encoding=UTF-8 Name=yEd Graph Editor Comment=Edit graphm files in yEd Exec=java -jar /opt/yed/yed.jar %u Terminal=false Type=Application Icon=/opt/yed/yicon.png Categories=Application;Office StartupNotify=false MimeType=application/xml; NoDisplay=false” > [...]

The JAOO conference has changed it’s spelling, but not its excellent multi-technology, multi-discipline, deep, pragmatic content. Apart from the great conference lineup, I’m particularly excited to see the Erlang tutorial (by Ulf Wiger) and the F# tutorial (by Amanda Laucher and Joel Pobar). This continuing investment into functional programming by the conference organizers shows a [...]

“This spec is something more than devs, I tell you. It’s the monster. Devs made it, but they can’t control it.” – with apologies to Steinbeck Ahh, factory-forged random values for fields of unique constraint. How thee vex me with thine probabilistic usefulness and definite indeterminacy. Keep thyselves with ephemeral values of algorithmic parameters and [...]

Came across this twice in the past two weeks. How NOT to do it: $(‘form :submit’).click(function() { $(this).attr(“disabled”, true); $(this).val(“wait…”); $(this).addClass(“disabled”); }); Doing it the above way, the click event will indeed fire, but on some browsers the submit event will not. The event to bind to is submission of a form, not clicking of [...]

A little “remember me later” for conditionally deploying a Rails 3 app running on Ruby 1.9 on Heroku. $ruby_version = `ruby –version`.split[1].to_f source :rubygems source ‘http://gems.github.com’ gem ‘rails’, ‘~> 3.0.0′ gem ‘bson_ext’ gem ‘decent_exposure’ gem ‘haml’ gem ‘mongoid’ group :development, :test do if $ruby_version < 1.9 gem ‘ruby-debug’ else gem ‘ruby-debug-base19′, “0.11.24″ gem ‘ruby-debug19′, “0.11.6″ [...]

WindyCityDB – great conference! I did a lightning talk on squealer, and here is the PDF of the slides (1.7MB) squealer Lightning Talk slides

Roy Singham’s gonna owe me a drink.

Object/Relational Mappings (ORM’s) are in the wrong place in the architecture.

An application should have minimal impedance mismatch with the persistence of its own data. External or ancillary systems should bear the cost of mapping between paradigms. If you want to access application data in a relational way for reports, do the mapping for the report.

Squealer is a simple, declarative language where the mapping from the tree structure of MongoDB to the tuple space in mySQL can be scripted.

After 4.5 years at ThoughtWorks, I’ve put down the purple elephant and donned my spacesuit to join Hashrocket and open the Chicago office. Hashrocket is the world’s best Ruby on Rails shop — a world-class team of spectacular developers, lead by my former and now current colleague Obie Fernandez. Our Chicago office has been set [...]

Prepare Java strings for JavaScript evaluation, similar to SQL prepared statements. Saves you from quote escape nightmares!