ActiveRecord doesn't query with Sets
We encountered a strange bug when we were eager loading some user specific data and weren't seeing the optimizations actually be used. Turns out the ActiveRecord doesn't know that Ser is enumerable and the query to the database ended up being
users.id = NULL instead of
users.id in (…)
Monday: Lunch Tech Video – Jim Weirich – Y-Not (Titanium)
Many have heard of it, but few have mastered its mysteries. Although fairly useless in real world software, understanding how the Y-Combinator works and why it is important gives the student an important insight into the nature of functional programming.
Java Boolean vs. boolean
Boolean actually has three states,
new Boolean() == null
boolean on the other hand is either
false and initializes to false.
More discussion here
No More "Ghost Nets"
Lost and abandoned commercial fishing nets ("Ghost Nets") may be a thing of the past. Engineering student in Spain comes up with an RFID tracking system to reduce their occurrence, and a net that biodegrades in 4 years just in case they are lost.
Apple and IBM Partnership
Apple and IBM released their first wave of mobile enterprise apps.
A beautiful list of sixteen LED/light installations and several December events to get your shine on in SF including artists like James Campbell and James Turrell. http://www.illuminatesf.com/#/content/illuminate-sf-tour
Gemma's YouTube Channel has passed 100K subscribers!
Go subscribe and learn to make some of the dishes that keeps calories flowing into Pivots! https://www.youtube.com/user/GemmaStafford
Monday: Lunch Tech Video – Dr. Richard Hamming – You and your research (Titanium)
Capybara using_session leaves dangling web servers
We were using
Capybara.using_session with email addresses as the key for the session. Our email addresses were being randomly generated by Faker. This is a bad combo. Each new session name spawns a new web server (phantomjs in our case) and it doesn't get shut down till the test suite is finished. In our case this meant we had a lot of processes/files open and ran into ulimit issues all the time.
ALSO, each new server incurs the server start up penalty (Rails app), so the first time you hit a page you incur a couple seconds of spec time. This added up to two full minutes on our test suite.
Jasmine 2.2 is out
We release jasmine 2.1.0 (actually 2.2.0 with additional backward compatibility) last Friday (11/14) at lunch.
Jasmine-core release notes are here: https://github.com/pivotal/jasmine/blob/master/release_notes/2.1.0.md
Monday: Lunch Tech Video – Linear Book Scanner (Titanium)