Ruby Midwest 2010 Saturday

So day 2 begins. I got to bed early-ish as I am old so I'm fresh as a daisy and ready for more Ruby. As per my established practice, Tweets are in italics.

  • Keynote by Yehuda Katz (@wycats) is up next at #RubyMidwest
  • I'm wondering why you can't give a technical keynote? Everyone says so. #RubyMidwest

Why is that, exactly? It's a technical conference. And a single track one at that. So I say tech it up, baby.

  • Things that seem really easy are actually huge blockers to new users @wycats #RubyMidwest
  • .@wycats started Rails dev on windows - me too. #RubyMidwest
  • "What the F** is that thing with raw_host on it?" Ex of a small thing that is a blocker to a noob @wycats #RubyMidwest

Yeah, I had a few of those. I had no idea how to do public static final in Ruby. When I figured it out it lead to one of my early blog posts: Public Static Final for Ruby

  • RT: @RubyMidwest Big thanks to @mbleigh and @intridea for hosting the OMGWTFBBQ dinner/lightening talks/hack night! #rubymidwest
  • RT: @RubyMidwest great roundup of the first day of @rubymidwest from @jakescruggs #rubymidwest (via @ajsharp)

Oh yeah -- the Ruby Midwest Twitter account liked my post. Go me.

  • .@wycats got into the 'subversive' side of the Rails community through Data Mapper because he had a legacy DB #RubyMidwest
  • "Because of the craziness of what I was doing, Merb was much more appealing to me than Rails" @wycats #RubyMidwest
  • Building the Merb Server (never finished) pushed him hard into areas he didn't understand and made him much better @wycats #RubyMidwest
  • RT: @tswicegood "If you're gonna do something open-source, pick something hard." /via @wycats #rubymidwest

Good advice. Hard to work up the nerve to follow it but good none-the-less.

  • Bundler has been much harder than Rails - It's a hard social problem. @wycats #RubyMidwest

Yeah. I'm the advocate for Bundler on my Rails 2.3x project and I've heard a lot of "Stupid Bundler!" and it was almost never Bundler's fault.

  • Strength of the Rails community: We demand a very high level of external api excellence. @wycats #RubyMidwest
  • "User experience includes the command line" @wycats #RubyMidwest
  • We've spent a lot of time making the command line an enjoyable experience. Not so true in other communities. @wycats #RubyMidwest
  • .@wycats spent a bunch of time making Bundler's error messages more informative. #RubyMidwest

Good man. It really helps.

  • People were confused by "Locking gems" so that inspired 0.9 => 1.0 @wycats #RubyMidwest

Yep, I kept having to explain to my team that we lock because we're in production.

  • Now, in 1.0, you get a lock automatically in Bundler. @wycats #RubyMidwest


  • People have a right to expect basic use of a product to not require a manual @wycats #RubyMidwest
  • Oh the other hand, with advanced features you should expect the users to read the manual @wycats #RubyMidwest
  • Sign of a mature project: Successful maintainer hand off @wycats #RubyMidwest
  • Another sign of a mature project: Survives several Ruby/Rails releases @wycats #RubyMidwest
  • Another sign of a mature project: Incorporating real world crazy bug fixes @wycats #RubyMidwest
  • .@wycats Sass is battle tested while Less is not. #RubyMidwest

Oh no he di'ent! Let the flame war begin.

  • New things should be able to disrupt, but points should be given to things that are mature @wycats #RubyMidwest
  • .@wycats "Merb was massively immature when it got a lot of mind share. It should have been much harder than it was." #RubyMidwest

Really honest of him to admit that. Also, while I'm at it I should point out that it's really cool of him and Chris Wanstrath to show up to a small first year regional Ruby conference. Stand up guys, they are.

  • RT: @j_root #rubymidwest you heard it here first Yehuda Katz said that less css is clown school... and that Sass 3 rules its nuts. :) #misrepresent

It should be noted that @j_root used the hashtag #misrepresent AND a smiley emoticon so he's just trying to stir up trouble. Bring it.

  • RT: @j_root #rubymidwest Yehuda spits mad fire, holding the entire oss community to the flame. you can run but you can't hide, gems... bam pwnt

I'm not sure what "bam pwnt" means but I like the cut of this @j_root's jib.

  • "User confusion is an actual bug" @wycats #RubyMidwest

Good point.

  • OSS users: put pressure on the established projects to incorporate the new hotness instead of immediately jumping ship @wycats #RubyMidwest
  • .@wycats Reminds me of Winston Wolf. He just gracefully handled a "Why were you a dick to me online" question #RubyMidwest
  • To be fair, I don't think the question asker meant it to come out that way. But it kinda did. #RubyMidwest

Remember the scene in "Pulp Fiction" where the Wolf showed up and effortlessly dealt with Vince Vega's guff? It was like that but better. Do NOT throw down with the wycats - he will destroy you.

  • Next up "User Experience for Library Designers" - Wesley Beary (@geemus) at #RubyMidwest
  • Rename! talk is now called "eXperience Driven Design" @geemus #RubyMidwest

You can't sneak those renames by me -- I'm wise to your tricks. Of course, I've had some of my talks renamed behind my back by organizers. I'm looking at you, Ray Hightower. But I kid the Hightower -- He's alright with me.

But seriously, I'll cut you if you even think of renaming one of talks again. I'm kidding! Sorta.

  • Slide from last night's Lightning Talks: "This is actually a simplified diagram" said the speaker #RubyMidwest

Funny stuff. If you're a Ruby nerd. And you probably are.

What? Windy City Rails picked me to talk? Thanks guys. Especially Ray, who didn't take those previous jokes personally.

  • RT: @brntbeer @geemus is killing so far with funny slides #rubymidwest
  • Writing a test framework is a good way to learn if nothing else. And it probably will be nothing else. @geemus #RubyMidwest
  • Fog has 124 versions in just over a year. Holy crap! I thought metric_fu's 24 was pretty good over 2 years @geemus #RubyMidwest

What the what!?! 124 versions? For real real and not for play play? Damn. I am humbled.

  • Fog is "The Ruby cloud computing library." btw @geemus #RubyMidwest
  • "Encourage Contributors" Damn Straight. He gives out T-Shirts! @geemus #RubyMidwest

124 versions and T-Shirts? This is the best open source project ever. I may even use it someday.

  • RT: @Arlen Wesley Beary: "When you're writing a library, the expert, is YOU. You are trying to help the rest along." #rubymidwest
  • Who wants to design a metric_fu T-Shirt? That would be cool. #RubyMidwest

Seriously -- design a shirt for MetricFu and I'll name a major release after you.

  • RT: @lpillow The dirty secret to project naming: spend as much time coming up with the name as coding the project. @geemus #rubymidwest


  • "Practical Projects in Mongo DB" with Alex Sharp (@ajsharp) starts soon at #RubyMidwest
  • MongoDB is schema-less: great for rapid agile development @ajsharp #RubyMidwest
  • Mongo stores documents (in binary json) not rows @ajsharp #RubyMidwest
  • Auto-sharding is coming soon. But I've heard that before. @ajsharp #RubyMidwest

Pretty sure I saw a talk on Mongo a year ago that was promising Auto-sharding. Either they announced that feature way too early or it's proving harder than they thought. Money on the later.

  • Mongo writes are "fire and forget" @ajsharp #RubyMidwest
  • No Joins or Multi doc transactions in Mongo @ajsharp #RubyMidwest

Hmm, could make like interesting.

  • RT: @mattyoho @blowmage #rubymidwest has been a really great conference. Major kudos to the organizers; it's been smooth as butter.

Here here! If any organizers come to Windy City Rails I'm buying the drinks.

  • .@ajsharp uses Mongo to create detailed super search-able logs that help him track down bugs #RubyMidwest
  • "I don't care about storing data, I care about persisting state" @ajsharp's argument against SQL #RubyMidwest

Good quote and a good point.

  • "Pragmatic Guide to Git" by Travis Swicegood (@tswicegood) coming up at #RubyMidwest
  • It's going to be an Intro to Git talk. @tswicegood #RubyMidwest

Intro to Git is not really my thing (been using it for a few years) but he did a good job.


  • Can't say I've ever understood applauding people who win books at conferences. Great job being lucky! #RubyMidwest
  • Maybe it's just something to do while the winners make their way to the front. Clapping for book winners, that is. #RubyMidwest

I say that at the next conference we all sit in stony silence while the lucky one slowly makes his or her way up to the front. Who's with me?

  • "Interoperable Web" by Michael Bleigh (@mbleigh) next at #RubyMidwest
  • ostatus is a collection of web standards, like the hall of justice (superfriends) @mbleigh #RubyMidwest

Great "Super Friends" Theme to this talk. Remember the classic 70's-80's cartoon? Well I do because I'm old. Get off my lawn.

  • RT: @adamstegman Interoperable Web wins best slide of the conference. Unicorn, hearts, rainbows, leg warmers - unattainable dream. #rubymidwest

The leg warmers on the unicorn is what really made the slide for me. Why would a Unicorn need leg warmers!?! That's just silly.

  • pubsubhubbub - is webhooks with standards. you can subscribe to events @mbleigh #RubyMidwest
  • superfeedr provides a free hub server for public stuff @mbleigh #RubyMidwest
  • webfinger takes this point of view: "email = identity" And hooks everything up through that @mbleigh #RubyMidwest
  • redfinger is a ruby wrapper for webfinger @mbleigh #RubyMidwest
  • Salmon - if someone comments on a blog post on an aggregator (not the blog itself) then it can show up on the blog @mbleigh #RubyMidwest
  • activity streams - adding verbs to rss feeds. Ex: followed, posted, favorited, closed, updated, tagged, etc. @mbleigh #RubyMidwest

God Damn does this stuff sound sexy. Everyone needs to support all of this right now. Without me doing any work.

  • OAuth 2.0 flexible multi-profile token authorization. @mbleigh #RubyMidwest
  • In OAuth 1.0 you had to go the website for auth. What if you couldn't (no browser), or their wasn't a website? @mbleigh #RubyMidwest
  • OAuth 2.0 provides 4 ways to auth: Web server, user agent, native app, and autonomous @mbleigh #RubyMidwest

Good and needed improvements.

  • RT: @LuigiMontanez .@mbleigh is giving an incredible presentation on the Interoperable Web at #rubymidwest -- a peak into the very near future
  • "Start thinking in standards" to make the web one big distributed info machine. @mbleigh #RubyMidwest
  • Here are @mbleigh's slides on the Interoperable Web. (via @LuigiMontanez)

An exciting talk. Assuming any of it gets adopted. If not we'll look back and weep tears of regret into the pillow of despair.

  • So I may have to calm down a bit on the tweeting as my talk is up after the next one and I should review my presentation. #RubyMidwest

I don't think I did, really. I'm out of control. I'm on an airplane right now so I'll have to quit the over tweeting cold turkey. By working on my blog post. Kinda like methadone.

  • "memprof" by Aman Gupta (@tmm1) next at #RubyMidwest
  • Ruby MRI has a "stop the world" GC. @tmm1 #RubyMidwest


  • More objects == Longer GC run @tmm1 #RubyMidwest
  • So, of course, less objects == better performance @tmm1 #RubyMidwest
  • Avoid leaked references (sometimes called memory leaks, but not really the right term) @tmm1 #RubyMidwest
  • bleak_house not only tells you what is 'leaking' but also where it is leaking @tmm1 #RubyMidwest

Sounds good.

  • RT: @chadmontplaisir @tmm1 "God was known for a long time to have memory leaks" #rubymidwest

The God project has lead to a lot of unintentional humor. And for that, we thank you God.

  • memprof - easy to use, no patching the vm, detailed (file/line) object contents, refs between objects, simple json output @tmm1 #RubyMidwest
  • RT: @samullen I feel more smarter just by listening to @tmm1 #rubymidwest

See what he did there? They bring the wit here in the heartland.

  • has gotten better since I last looked at. Nice visualizations of where your memory is going @tmm1 #RubyMidwest
  • is built using Mongo @tmm1 #RubyMidwest
  • RT: @chadmontplaisir @tmm1 Procs are a good way to memory leak because they keep all the variable references within the creation scope. #rubymidwest.
  • RT: @chadmontplaisir @tmm1 Take away: Looking through the trash gives you a better understanding of what your application is doing. #rubymidwest

True dat. Optimize, always optimize.

  • My talk is in less than 10 minutes... Panic! #RubyMidwest

Well, it was a quiet crowd. Afternoon on the second day and all. The Twitter seemed to like me and a bunch of people sought me out after the talk for more info or just to thank me. So I guess it went well. There was a moment, at the end of the talk, when I looked up from my computer to see tumble weeds rolling across the floor. I shouldn't worry about it I suppose.

I used for my presentation. It's a canvas based presentation system and it's pretty cool. You put all your ideas on a big canvas., sort and arrange them, paste in some pics or whatever, and define a path through said canvas. Lots of fun to work with.

  • Someone (not wearing a name tag) just turned me on to this: factory_data_preloader More speed! #RubyMidwest

That guy turned out to be Kyle Ginavan. I'm totally going to try out factory_data_preloader when I get back to work on Monday.

  • RT: @mattpetty "test suites should be reliable, repeatable, and understandable" -@jakescruggs #rubymidwest

My favorite quote from my talk and I completely made it up on the fly. Felt good saying it.

  • @lpillow It was a pic of a little girl making a frowny face. Honest.

Someone though one of my images or diagrams was pornographic. I've looked through the presentation 20 times and I can't see it. If you find something, let me know.

  • "jQuery and Rails, Sitting in a Tree" by Adam McCrea (@adamlogic) is happening now at #RubyMidwest
  • Neat bit about stealing non-obtrusive javascript from Rails 3 to use in Rails 2x @adamlogic #RubyMidwest

To be honest, I was a bit burnt at this point and coming down from the post talk high so I didn't cover this one as much as I should. Sorry Adam - say hi to Joe for me.

  • "A New Set Of Wheels: Leveraging Ruby For System Administration" by Josh French (@joshfrench) #RubyMidwest
  • GrepFu looks pretty cool. Ruby wrapper for command line searching tools. @joshfrench #RubyMidwest

Check out the GrepFu - it looks well worth investigating. Luke Pillow, a Ruby Midwest organizer, said he uses it ever day.

  • Well, I gotta go catch a plane back to Chicago. Thanks #RubyMidwest I had a great time and learned a ton.

And I'm on that plane right now. It's like a conversation with my past self. Hey, past self, don't eat that airport BBQ - they're gonna put mayonnaise on brisket.

Too late.

I did get to sit in the airport sports bar and listen to two young ladies in interesting outfits argue about whether it was lying to omit the fact that you didn't sleep in your hotel room last night. It took a very long time to decide.


Popular posts from this blog

What's a Good Flog Score?

SICP Wasn’t Written for You

Point Inside a Polygon in Ruby