Blog: 2010-03

Latest  2010  2009  2008  2007  2006  2005  2004  2003  2002  2001
-07  -06  -05  -04  -03  -02  -01

Swiss Army Knives

 photo of worn black Victorinox Swiss army knife on keychain This isn't that great of a story.

A long time ago, when I was an engineer at a company, one day we were considering partnering with a certain company in Switzerland, and their principal techies had flown in.

Now, in our office building, each person needed to carry lots of keys. We even needed multiple keys for a trip to the restroom. So everyone carried lots of keys. Plus, being engineers, some of us had Swiss army knives of various sizes on our keychains. All the keys we carried could poke us in the thighs while sitting, and a convention evolved that, at a meeting table, we'd put our keys on the table.

So, that day with the visitors from Switzerland, a few of us shuffle into the conference room to meet with them. A colleague walks in, and plops her keys with her huge red Swiss army knife onto the well-lit white laminate table. I cringe before doing the same, with my keys and my smaller red Victorinox.

I'm there, thinking that the Swiss visitors might be amused by us honoring their presence by embracing their cultural artifacts. Or perhaps irritated by the reduction of their image in US awarenesses to red pocket knives, neutrality, and shady bank accounts. Flashbacks to traumatic experiences in the Swiss Army? Red pocket knives might even be kitschy over there; I didn't know.


Great Moments in Design: O-Cel-O Dish Sponges

 photo of O-Cel-O sponge in wrapper, with sickly fuzzy green surface and colonies of multicolored circles like some nasty fungi Presumably to alert consumers to how nasty dish sponges typically are, O-Cel-O has printed theirs in a toxic growth motif that looks like it could kill you dead from across the room.

Photographers and Ziplocs and Laptops

 photo of ThinkPad T60 in food storage bag Zippper food storage bags (like the Ziploc brand ones) are carried by some photographers for keeping gear clean and dry, as well as various emergency uses. For example, an SLR body with a small lens mounted can be sealed in a 1-gallon bag to protect it from water or sand (and conceivably you could even operate it while in the bag). That same bag can be used to avoid camera-destroying condensation, such as when acclimating a camera to indoor conditions after being out in the cold.

I've recently discovered that the 2-gallon store-brand bags (box of 10 for under $2) accomodate my entire ThinkPad T60 laptop. So now the bottom of my daily backpack has a 2-gallon bag rolled up with a large satchet of silica gel. The next time I'm caught in a rain storm, this emergency measure might pay for itself a thousand times over.

Note that a 2-gallon bag won't accomodate all laptops. My T60 is a non-widescreen, about 12.25 inches wide and 1.25 inches thick. This particular bag would have been a squeeze, were the laptop width increased to about 14 inches with all other dimensions being the same. The wiggle room in the bag with my laptop will let me fold the top of the bag over, if that might help protect the seal.

Brazil Nuts and Pecans

If you run out of lofty goals to attain, figure out how to convert the world's production capacity for brazil nuts over to pecans.

You can retain some percentage of brazil nut capacity, if they are found to have some practical use, such as in industrial coatings or highway surfaces.

JavaScript Line Noise & Accidents of Evolution

This little nit is not at all the reason that Scheme is superior liguistically to JavaScript, but while writing a simple JavaScript function right now, I found myself ending the function like this (initially spread across 4 lines at various indent levels that weren't as helpful as one would think):

annosJson);});}});}

Getting the parens and curly braces and semicolons right required lots of checking back, rather than just closing the parens to the right level.

A naive transliteration to a Schemey syntax (disregarding the higher linguistic benefits of Scheme) would be what I consider simpler and more aesthetically pleasing:

annosJson)))))))

One thing that's sad is that the C-ish syntax of Java (and, I'm guessing, JavaScript) happened because, IIRC, the people who developed Java nee Oak wanted a "safe C++" multimedia language for TV set-top boxes[*], and they wanted the syntax accessible to people who at the time were currently mostly using C and C++.

Actually, more accurate than "accessible to" would be "accepted by". Computer programmers tend to be crotchety and opinionated, with lots of religious adherences based on familiarity and narrow experience.

The thing is (this is all assertion, by the way), most all people doing JavaScript programming right now are mainstream "Web developers", who are little like the categories of people who were C and C++ programmers when Java/Oak was designed. C and C++ were used for systems programming, technical software development, shrinkwrap PC software, and embedded systems. The vast majority of people doing JavaScript now are more in the category of people who in 1990 would've been coding corporate MIS database forms and reports and such. Plus people who in 1990 would've been graphic designers.

So (and without going into the history of JavaScript itself), one way to look at JavaScript is that the less-technical people have dumbed-down the technologies that the high-technical people now must use. Another way to look at it is that some crusty old techies proactively avenged themselves by sticking the modern Web programmer with syntactic artifacts of a 1970's portable macro assembly language. :)

[*] This is how I recall Oak being presented to me in '94 or '95, before it was called Java and before it targeted the Web/Internet. I was not under NDA, and this part of the history of Java is all public knowledge now.

Earlier to... 2010-02

© Copyright Neil Van Dyke      Contact