Saturday, August 23, 2008

Students and Their Metaphors...

Simi L. passed along this list of metaphors and analogies, allegedly a collection of actual student submissions. Their teachers entered them in a contest, and this list has the winners. I've not been able to verify the accuracy of that claim, but...who cares? These things are darned funny!
1. Her face was a perfect oval, like a circle that had its two sides gently compressed by a Thigh Master.

2. His thoughts tumbled in his head, making and breaking alliances like underpants in a dryer without Cling Free.

3. He spoke with the wisdom that can only come from experience, like a guy who went blind because he looked at a solar eclipse without one of those boxes with a pinhole in it and now goes around the country speaking at high schools about the dangers of looking at a solar eclipse without one of those boxes with a pinhole in it.

4. She grew on him like she was a colony of E. Coli, and he was room-temperature Canadian beef.

5. She ha d a deep, throaty, genuine laugh, like that sound a dog makes just before it throws up.

6. Her vocabulary was as bad as, like, whatever.

7. He was as tall as a six-foot, three-inch tree.

8. The revelation that his marriage of 30 years had disintegrated because of his wife's infidelity came as a rude shock, like a surcharge at a formerly surcharge-free ATM machine.

9. The little boat gently drifted across the pond exactly the way a bowling ball wouldn't.

10. McBride fell 12 stories, hitting the pavement like a Hefty bag filled with vegetable soup.

11. From the attic came an unearthly howl. The whole scene had an eerie, surreal quality, like when you're on vacation in another city and Jeopardy comes on at 7:00 p.m. instead of 7:30.

12. Her hair glistened in the rain like a nose hair after a sneeze.

13. The hailstones leaped from the pavement, just like maggots when you fry them in hot grease .

14. Long separated by cruel fate, the star-crossed lovers raced across the grassy field toward each other like two freight trains, one having left Cleveland at 6:36 p.m. traveling at 55 mph, the other from Topeka at 4:19 p.m. at a speed of 35 mph.

15. They lived in a typical suburban neighborhood with picket fences that resembled Nancy Kerrigan's teeth.

16. John and Mary had never met. They were like two hummingbirds who had also never met.

17. He fell for her like his heart was a mob informant, and she was the East River.

18. Even in his last years, Granddad had a mind like a steel trap, only one that had been left out so long, it had rusted shut.

19. Shots rang out, as shots are known to do.

20. The plan was simple, like my brother-in-law Phil. But unlike Phil, this plan just might work.

21. The young fighter had a hungry look, the kind you get from not eating for awhile.

22. He was as lame as a duck. Not the metaphorical lame duck, either, but a real duck that was actually lame, maybe from stepping on a land mine or something.

23. The ballerina rose gracefully en Pointe and extended one slender leg behind her, like a dog at a fire hydrant.

24. It was an American tradition, like fathers chasing kids around with power tools.

25. He was deeply in love. When she spoke, he thought he heard bells, as if she were a garbage truck backing up.
It's hard to pick a favorite out of such a wonderful selection, but if forced to choose, I think I'd go for #18...

Thanks for passing that along, Simi...

If Only It Was REALLY This Easy!

My mom sent this along:
  1. Open a new file in your computer.
  2. Name it 'Barack Obama'.
  3. Send it to the Recycle Bin.
  4. Empty the Recycle Bin.
  5. Your PC will ask you: 'Do you really want to get rid of 'Barack Obama?'
  6. Firmly Click 'Yes.'
  7. Feel better?
GOOD! - Tomorrow we'll do Nancy Pelosi…
On my Mac, it's even better: it doesn't ask, it just does it.

But I got to thinking: on a PC, you're sending the politician to the “recycle bin”. Is that really what we want? I think not – even if only for a moment – so here's a slightly modified version of the above:
  1. Create a new file in your computer and name it "Barack Obama" (because surely you don't already have one!).
  2. While holding the Shift key down, right-click on that file.
  3. Your PC will ask you: "Do you want to permanently delete Barack Obama?".
  4. Firmly click "Yes"!
  5. Feel better?
GOOD! - Tomorrow we'll do Nancy Pelosi…

Native JavaScript? Almost...

For several years it's been clear that standard practice in software architecture has been moving away from client/server (with big, clunky application programs that have to be installed on each user's computer) toward browser-based applications (where nothing specific to the application has to be installed on the client computer). This is true not only on the public Internet (think Google Maps, or Yahoo Mail, or any one of thousands of similar web sites) but also of corporate applications. Browser-based applications still are mostly HTML-based, with the use of JavaScript confined mainly to a little user interface “glue” where plain old HTML won't do the trick.

Increasingly, though, browser-based applications are making extensive use of the JavaScript programming environment built into the web browser. Generally the first step in this direction is to put all the rendering code – the code that turns data into something visual that the user can interact with – into the browser. Applications written like this communicate essentially just data between the client and the server, not the HTML that renders the user interface.

Another step in this direction is to move the application's logic into JavaScript on the browser. Like any architectural choice, there are pros and cons to this. Two main reasons to move application logic into the browser seem to dominate when this choice is made: (1) scalability is improved because CPU cycles are moved from the central server to the distributed users, and (2) the application's responsiveness is improved because many visible decisions can be made entirely on the user's computer, with no communication to the server required.

This logical next step in the evolution of browser-based architectures has been held up to some extent by something that software developers have little control over: the speed of the JavaScript environment. By “speed”, I mean the number of instructions per second that can be executed. JavaScript is one of the sloths of the programming world, and that means that computationally intensive application programs suffer from sluggishness when run in a browser.

But that may be changing, and sooner than I'd have thought: the Mozilla team is readying a new optimization technology that promises to make JavaScript much faster. The promise is made more believable by the fact that they're already demonstrating a more than 2:1 improvement overall, and more than 20:1 in certain areas that matter greatly to certain kinds of applications. From the Ars Technica article:

The theories behind tracing optimization were pioneered by Dr. Michael Franz and Dr. Andreas Gal, research scientists at the University of California, Irvine. The tracing mechanism records the path of execution at runtime and generates compiled code that can be used next time that a particular path is reached. This makes it possible to flatten out loops and nested method calls into a linear stream of instructions that is more conducive to conventional optimization techniques. Tracing optimization is particularly effective in dynamic languages and also has a very light memory footprint relative to alternative approaches.


To get a real-world performance increase right now, Mozilla has adapted the tracing technology and Adobe's nanojit so that they can be integrated directly into SpiderMonkey, the JavaScript interpreter that is used in Firefox 3. This has produced a massive speedup that far surpasses what is currently possible with Tamarin-tracing. In addition to empowering web developers, the optimizations will also improve the general performance of the browser itself and many extensions because many components of the program are coded with JavaScript.

This is very welcome news for anyone who (like me!) writes web applications for a living. It's yet another reason to move to Firefox, if you haven't done so already!

End Times...

Today's Day-By-Day perfectly captured a happy thought I've had more and more frequently over the past couple of months:

It's Biden...

I didn't expect to be surprised by Obama's choice for VP, but I am. For reasons that completely escape me, The One picked the man who is arguably the Senate's most notorious intellectual lightweight. Joe “The Mouth” Biden is most famous for his rambling, incoherent, and oops-filled extemporaneous comments in public places – often captured on tape, because, as the saying goes, it's downright dangerous to get between Joe Biden and a camera or a microphone. YouTube has hundreds of Biden clips, many of them exactly the sort of embarrassing (and revealing) comments for which he is famous.

The McCain camp has obviously been preparing for this choice. Just a couple of hours after The One announced his choice, this advertisement appeared:

While this year's Presidential campaign lacks in the essentials – quality candidates – it certainly doesn't disappoint on the entertainment side. I've been very amused by the antics on both sides. Overall, I'm most impressed by McCain's campaign team – they've made very effective (and fast!) use of the “new media” for getting their message out, and their attacks on Obama have been far more honest and fact-based than those from the other side. The messages I've enjoyed the most are those (like the ad above) that make use of the opposing candidate's own words, in context. I enjoy watching these much as a boxing enthusiast enjoys watching a skilled boxer decimate his opponent…

Obama's choice of Joe Biden must be very welcome to the McCain team. So far as I can discern, it adds no substance to Obama's ticket, but adds a great deal of opportunity for pointed and irrefutable critique.

This could be more fun than I was expecting! The only way I can think of for this to get any more entertaining is if McCain's VP pick was for someone even older than him!