Warm water makes the world go 'round

I’ve been doing “very detailed” research on the correlation between the time it takes to get hot water in public bathroom sinks and affluence. Signs point to a strong correlation between the two. Shocking, I know!

Microsoft and Austin Ventures' buildings have almost instant hot water. Generic office buildings take a while. My bathroom at home: 60 seconds of astonishingly cold water.


My dog misses me

I’m at the Microsoft Technology Summit this week.

Fred, sleeping on my pillow

Of course, Fred misses me (and I miss him!), so he’s sleeping on my pillow to keep it warm.


Tough CS illustrated

Greg, who I don’t think has formal CS training, has been making some great illustrations of some of the harder ideas in operating systems and concurrency.

skitched-20080324-145943.jpg
Uploaded with plasq's Skitch!

You can find more sprinkled throughout his lovely little tumblelog.


Write a script in April for Script Frenzy

Script Frenzy – wherein one writes a script in the month of April. I’m tempted to take part, though I’m sure it’d would end up in detriment to all the other plates I have spinning.


Fix Subversion conflicts

Got a case where you did a @svn up@ and now you have a bunch of conflicts where you just want to overwrite your changes? I’ve got a little bit of Ruby cleverness for you:


  `svn status`.split("\n").grep(/^C/).map { |c| c.scan(/\S+/).last }.each { |c| `svn cat #{c} > #{c} && svn resolved #{c}` }

I run this from @irb@ at the root of my Subversion working directory. It makes me happy.

Update: lord that looks ugly on one line!


  status = `svn status`.split("\n")
  conflicts = status.grep(/^C/)
  files = conflicts.map { |c| c.scan(/\S+/).last }
  conflicts.each do |c|
    `svn cat #{c} > #{c} && svn resolved #{c}`
  end

Keep your pants on

A teaser of what I’m working on instead of writing:

NO

Please, keep your pants on.


Git is nouns and verbs

Git was originally not a version control system; it was designed to be the infrastructure so that someone else could build one on top. And they did; nowadays there are more than 100 git-* commands installed along with git. It's scary and confusing and weird, but what that means is git is a platform. It's a new set of nouns and verbs that we never had before. Having new nouns and verbs means we can invent entirely new things that we previously couldn't do.

Avery Pennarun, Git is the next Unix


Geek spring break

For the fourth time, I’m at the annual geek retreat in Austin. Since I went when it was but 300 people, I’m obliged to marvel at how big the conference is getting. I remember when we had to walk uphill, through the snow, both ways, on fire, to get to every panel.

This year, I’m going to retire the hoodie I got five years ago wen I first attended SXSW. It’s a big deal, mind you. FYI.

Anyhow, I’ll attend a subset of these sessions, if you’re curious. I’m hoping on “attending” the “hallway track” more often this year. Also, I’m going to take the leap and not bring my laptop with me. Just a Moleskine and my trusty tricorder.

More importantly I’m going to the Austin on Rails Happy Hour and playing at the Rock Band party with The Rural Jurors.

If you aren’t are coming, I will continually lament your absence. Otherwise, I look forward to seeing you there!


The American Dream, LOL'd


You can patent things that don't exist

The ear worm things from Star Trek II: The Wrath of Khan are patented. The obvious punchline:


SCIENCE

All I can say is SCIENCE!

Tom Preston Werner on God’s memory leak


Summertime Blues

[youtube=http://www.youtube.com/watch?v=t5euZ3YWLXQ&rel=0]

“Summertime Blues” The Who (originally Eddie Cochran)


Non-chalantly rocking

Me, rocking

Rands helps you with your presentations

Out Loud. Conference season looms, folks. Rands is here to help.


Cosmic Class.new

Reading the sources of test/spec inspired me to write a whole post about Class.new on the FiveRuns weblog. Unintentionally, I ended up channelling the style of Err The Blog in writing that post. Now, Chris Wanswrath has posted a little ditty, test/spec/mini, that uses Class.new.

The “Circle Of Class.new” is complete, we can all go back to our normal lives. Also, Class.new totally has a man on your boat.


Teamwork anti-pattern: the edge case

Edge Cases are the Root of all Evil:

"I've learned over the years that Edge Cases are not meant to be normal rationale or a casual reminder of some odd circumstance that you've neglected. Rather, they usually represent an attempt by someone else to gain, show or exert power in a situation. I'll explain."

After reading this, I immediately realized the Edge Case is definitely an anti-pattern of teamwork. I’ve observed, suffered and inflicted this particular tactic countless times in the past.

Tackling this one is three-pronged:

  • Recognize it. When someone points out an edge-case, quickly try to establish with the rest of the team whether this occurrence is as rare as you think it is or whether its truly important.
  • Neutralize it. If it really is a corner case, mark it as such and get back to making actual progress.
  • Bury it. Should you throw something out there and find its really an edge case, let it go. Don’t be that guy.

“But Adam”, you say. “It would be really embarrassing if we omitted a condition for the Blurbleflaster Case!” Well, I couldn’t even find the Blurbleflaster Case in Wikipedia! So, if someone finds that we’ve omitted it, then they get the prize; it won’t be the end of the world. We should probably implement that whole social network thing first anyway.


I Like Rails 2

Tonight I gave a presentation on Rails 2 at Dallas.rb. Within, I note some of my favorite new things in Rails 2. Some things small, some things large.

If you weren’t there, I should probably explain a couple of the slides. I think Rails 2 is, despite its whole-numberness, an evolutionary release. It makes the Rails “language” smoother around the edges. Granted, its still somewhat blob-esque, but its getter rounder. I dig it.

Besides that, I think Active Resource, or ARes as they call it in the biz, is going to prove useful mostly behind the firewall in your datacenter. As you build more and more applications, you’ll find you need to use resources across multiple apps. This is exactly where ARes shines – providing a common user service, for example.

You can download I Like Rails 2 it if you missed it or, for some reason I can’t even fathom, aren’t even in Dallas.


Getting ahead on Git

Git. Soon, you’ll be using it, too. The definition of “soon” probably varies widely depending on what kind of person you are. But, no better time than now to start getting acquainted with the idea.

Finally, what I really wanted to do here was publicly commend Dr. Nic Williams for his adept use at Star Wars metaphor and humanization of Grand Moff Tarkin in his post on using Git to manage the new Rails TextMate bundle (Ed. now 404). Well done, sir. I owe you a frosty one.

Ed. revised Feb 15, 2025. URLs updated or noted as 404, copy left intact. What a time-capsule!


The Mint logo, geometric beauty

Geometry of the Mint logo:

The Mint Logo with interesting annotation

Frickin' genius.

Ed. revised Feb 15, 2025. No notes.


What good could come from MicroYahoo?

Microsoft Proposes Acquisition of Yahoo! for $31 per Share:

REDMOND, Wash., Feb. 1 -- Microsoft Corp. today announced that it has made a proposal to the Yahoo! Inc. Board of Directors to acquire all the outstanding shares of Yahoo! common stock for per share consideration of $31 representing a total equity value of approximately $44.6 billion.

So everyone’s probably gonna spill ink on this one. Understandably – in Flickr, Upcoming and del.icio.us you’ve got three of the most trusted and loved sites out in their respective communities. In addition, there’s a lot of respected people, both in web development and open source, at Yahoo. Joining Microsoft, an organization with minimal respect in the web development and open source communities, would reduce those people’s cred right out of the gate.

Were this bid successful, here’s what I hope would happen. Microsoft uses it as an opportunity to rebuild organizationally. Bury the hatchet with open source and open up the development of Internet Explorer. Yahoo continues building apps like Flickr and del.icio.us like they always have. A rewrite on .NET technologies isn’t imposed like it was on Hotmail. In the end, Microsoft becomes an organization where closed source, proprietary development can flourish with open source, standards-based processes.

This is wild guessing on my part. That said, if you look at Microsoft, its clear they are having major execution problems. Xbox is the only group that is widely successful and even they have hardware problems. All the other groups are missing timelines and customer/developer expectations. Just like Yahoo was before they picked up Flickr, del.icio.us, Upcoming, etc.

If Yahoo can make acquisitions to rebuild their culture, perhaps Microsoft can too.

Ed. revised Feb 15, 2025. Turns out this didn’t happen, but my predictions did reify with the Microsoft acquisition of GitHub. Also, it’s hard to remember the moment when Yahoo was ascendant! Take care what you wish for?