At the DPS for a way overdue license renewal. Imagine, I used to have to talk to the people around me to pass the time.
A screenshot of my work computer today.
Background
My Uncle Curtis has been battling kidney cancer for almost a year now. Today I got a call with information that, after a very rough weekend, the doctors are pretty concerned and that things might be getting bad quickly.
Before that call and the quick google searches that followed, I was brushing up on a presentation I’m doing at work today about virtual gaming and virtual goods.
And at some point I looked at my screen and this is what I saw.
I think illustrates my working theory that work/life balance is unrealistic and honestly isn’t a goal worth pursuing. My life is intertwined and pieces of it cannot be separated out and weighed against each other.
I want my life to be an orchestra of roles, commitments, and experiences that not only play together in harmony, but also allow for solos, movements, and other cool musical terms that I don’t have in my vocabulary.
Thanks to agile on #dallas.rb for helping me get to this. A great resource for all things tag and attribute related in regards to rails http://api.rubyonrails.com/classes/HTML/Selector.html
describe "/questions/show that logged in user is not monitoring" do
it_should_behave_like "/questions/show"
it "should have a link to start monitoring" do
response.should have_tag('a#monitor_link')
onclick = "new Ajax.Request('/questions/#{@question.id}/monitored_by/#{@current_user.id}',
{asynchronous:true, evalScripts:true, method:'post'});
return false;"
response.should have_tag("a#monitor_link[onclick=\"#{onclick}\"]")
end
end
This is what I’m using to help out with actions and views that require a logged in user
spec_helper.rb
module LoggedInHelper
def mock_globals
@current_user = mock_model(User, :id => 1)
end
end
describe "Logged In Action", :shared => true do
include LoggedInHelper
before(:each) do
mock_globals
controller.stub!(:current_user).and_return(@current_user)
end
end
describe "Logged In View", :shared => true do
include LoggedInHelper
before(:each) do
mock_globals
template.stub!(:current_user).and_return(@current_user)
template.stub!(:logged_in?).and_return(true)
end
end
profiles_controller_spec.rb
require File.dirname(__FILE__) + '/../spec_helper'
describe QuestionMonitorsController do
it_should_behave_like "Logged In Action"
#your specs here
end
show.html.erb_spec.rb
require File.dirname(__FILE__) + '/../../spec_helper'
describe "/profiles/show" do
it_should_behave_like "Logged In View"
#your specs here
end
Using flash[:notice] doesn’t work so well with AJAX calls. Adding a “js_notice” key to flash has helped me in several places.
respond_to do |format|
if @question_monitor.save
format.js {
flash[:js_notice] = "You will now be alerted to any new activity on this question."
}
else
format.js {
flash[:js_notice] = "There was a problem in trying to monitor this question"
}
end
end
Day 2…wow…what a day. Started with a great session on “banker to banker collaboration”:http://barcampbankseattle.pbwiki.com/Day2Session1D and ended with a monumental whiteboard of promise and hope. Sound a little dramatic…maybe…but then again maybe not. The amount of space it is taking up in my mind can only be explained by something that truly is revolutionary.
Even with the picture of that whiteboard almost tattooed in my mind, the thing that sticks with me the most from Day 2, is Jesse’s unwillingness to let the rest of us settle for the Jesse Robbins solution. There were several times in our afternoon discussion where I could almost feel the room waiting to let Jesse take this project and run all the way with it, filling us in where appropriate. However, much to Jesse’s credit, that was not the path that was taken, nor was it the path that was needed. What needed to happen was a room full people talking to a whiteboard, venting frustrations and forging solutions.
And now we sit with an even greater task ahead, continuing forward without sitting in the same room and staring at each other until someone speaks. I am excited about the road ahead, not just for the promise of an open source solution to an industry issue, but also for the collaboration that will occur between bright people and experimentation of the technologies that will best facilitate this conversation.


