"Hi Roy, I did tackle them, but the latest version of RSpec removes spec_server in favour of spork. I haven’t looked at that yet. Cheers, D"
- Dave Nolan
"Again and again, I’ve undergone the humbling experience of first lamenting how badly something sucks, then only much later having the crucial insight that its not sucking wouldn’t have been a Nash equilibrium. Clearly, then, I haven’t yet gotten good enough at Malthusianizing my daily life—have you?"
- Dave Nolan
from Bookmarklet
"Good question. I think it’s fair do’s (is it Yorkshire dialect?). I don’t know why it would have an apostrophe except for show. “Fair dues” looks like an attempt at imposing faux-respectabilty. Anyway, doesn’t sound like much of a congratulation any way it’s written! How about “bravo!” which is what my two-year-old daughter says when she’s evacuated her bowels?"
- Dave Nolan
If you register, www.paypal.com[null character].thoughtcrime.org, the CA will contact the owner of thoughtcrime.org and issue the cert. When clients like Firefox use NSS to verify the cert, the null character causes them to think the certficate is valid for www.paypal.com because they stop at the null character. Even if the person examines the cert in their browser, it will show www.paypal.com.
- Dave Nolan
"Knowing when to play the lottery is relatively clear. You play when the expected value of a ticket is more than the cost. The Kelly criterion tells you how much to play by calculating what fraction of your bankroll you should bet when the odds are in your favour. Generally, betting more than twice the Kelly fraction will eventually lead to gambler’s ruin, even if the odds are in your favour"
- Isaac Hepworth
from Bookmarklet
The key is whether you can reinvest your winnings. If you can't, then shouldn't you just maximize expected value on each bet by wagering all your capital?
- Dave Nolan
"KABUL (Reuters) - Afghanistan's only known pig has been locked in a room, away from visitors to Kabul zoo where it normally grazes beside deer and goats, because people are worried it could infect them with the virus popularly known as swine flu."
- Dave Nolan
from Bookmarklet
"What no one has yet demonstrated is a viable approach to shifting those modalities as the conversation demands. There is a big opportunity for anyone that really cracks this."
- Dave Nolan
Causes, hugely popular among nonprofit organizations seeking to raise money online, has been largely ineffective in its first two years, trailing direct mail, fundraising events and other more traditional methods of soliciting contributions.
- Dave Nolan
The example is for illustration only. I accomplished everything I want in life many years ago, and now I simply enjoy discovering the depths of Ruby. Don't you? :)
- Dave Nolan
Splats are cool. See http://github.com/mischa... for an exhaustive list of what they do. But in 1.8.6 the following code throws "unexpected tSTAR": foo = bar || *zap #=> unexpected tSTAR Whereas this works: foo = *zap || bar #=> works, but of limited value What's the splat operator's precedence and where can it appear in an expression?
- Dave Nolan
Splats are cool. They're not just for exploding arrays, although that is fun. They can also cast to Array and flatten arrays (See http://github.com/mischa... for an exhaustive list of what they do.) It looks like one cannot perform additional operations on the splat, but in 1.8.6/1.9 the following code throws "unexpected tSTAR": foo = bar || *zap #=> unexpected tSTAR Whereas this works: foo = *zap || bar #=> works, but of limited value Where can the splat appear in an expression?
- Dave Nolan
"I can think of some doors to nail #11 and #18 to! You’ve drawn out some valuable insights here on a rich and various topic, thanks. They’re simple but not platitudinous, so editing them down is risky. I’d look at clustering them as Triston suggests. Having said that, there are a few I don’t get (I know there’s a book that’ll fill out the ideas, but it’s this list that will get replicated): 13. Keep it messy OK human conversations don’t have straight edges and right angles. But “keeping it messy” is too strong I reckon. Part of the job of housing/enabling/curating/aggregating multiple threads and strands is to organise and prune. Think wikigardening. It also makes it sound like the success of a project should be measured by the amount of noise it makes. Actually, I think many projects are evaluated this way :/ 19. Be a pirate. Don’t make things yourself. “Don’t make things yourself”?? You can’t be serious! Making things of value is what it’s all about. I know “Don’t reinvent the wheel”..."
- Dave Nolan
"I had a dream last night that we solved the energy crisis by forcing the animal kingdom to create energy for us, but the trick was picking an animal ugly and unlikeable enough that the least number of people opposed the enslavement. So in the end, we had these enormous generators pushed by massive armies of slugs on land and eels in the water that created the entire world's energy needs."
- Dave Nolan
from Bookmarklet
I found another strategy poking around http://github.com/wycats.... Thor lets you write stuff like this:Class RayGun < Thor desc "Flashes red light and makes zowowowowow sound" method_options :confirmation => :required def stun! # ... end end It manages this by using the (undocumented) hook Module#method_added. It works like this: Call to Thor#desc and Thor#method_options set instance variables @desc, @method_options. Defining method stun! calls Thor#method_added(meth) method_added registers Task.new(meth.to_s, @desc, @method_options) (roughly speaking) and unsets @desc, @method_options. It's now ready for the next method Neat! So neat that I am going to accept my own answer :)
- Dave Nolan
Module#method_added is the key - plus the fact the class in parsed linearly, presumably
- Dave Nolan
I found another strategy poking around http://github.com/wycats.... Thor lets you write stuff like this: Class RayGun < Thor desc "Flashes red light and makes zowowowowow sound" method_options :confirmation => :required def stun! # ... end end It manages this by using the (undocumented) hook Module#method_added. It works like this: Call to Thor#desc and Thor#method_options set instance variables @desc, @method_options. Defining method stun! calls Thor#method_added(meth) Thor#method_added registers Task.new(meth.to_s, @desc, @method_options) (roughly speaking) and unsets @desc, @method_options. It's now ready for the next method Neat! So neat that I am going to accept my own answer :)
- Dave Nolan
This doesn't work as written - I think it's based on an old version of win32/daemon. Try the example files here instead: http://rubyforge.org/frs...
- Dave Nolan