| GIGO: words unreadable aloud |
[Site]
[XML]
|
|
Description: Mishrogo Weedapeval
Last Update: 06:43:20 03/06/2006
|
| |
Additional Info
First Fetched: 00:16:37 01/31/2004
Last Updated: 06:43:20 03/06/2006
Headlines
<<
>>
1
2
3
4
|
|
|
For my 50th birthday party three and a half years ago, we were blessed with the presence of Velzoe and the Upbeats. (I made brief mention of it a month later.) Tonight, Velzoe and her band were playing at the Kuumbwa Jazz Center and we got to be there! She was celebrating her 96th birthday (yesterday) and is still an amazing lively presence, vivacious, full of great stories about walking to school with her pony touring with the Pollyannas, her all-woman band, touring various gigs, driving across country in 1928 or so. How amazing it must be, to have stories that relate to events you participated in, almost eighty years ago! For a bit of ambience, here's a sampling from the songs that they performed tonight: Chattanooga Choo Choo, The A Train, Besa Me Mucho, Spanish Eyes, the Jersey Bounce, and I'll add more later. I was somewhat surprised by how familiar so many of those songs were. Here's a couple of links to stories about Velzoe: https://publishconsulting.com/velzoe.htm ...
|
|
|
 |
|
|
|
One of the nice things about working at a startup is that you get to write a lot of new code. One of the less nice things about it is doing that all weekend, too often. It's been fun to write a whole compiler from scratch, even participating in a lot of the language design. It's been fun to write all the code in Ruby. I still like Python better, but now I can say I know Ruby well. Yesterday the VP of Engineering was replaced. The new one mentioned making progress/status stuff more prominent ("who's working on what"), and even mentioned wikis explicitly. That could be cool. Deb's folks got in a car crash, so she and her siblings have each been making weekend visits up to Grass Valley. I spent part of Saturday digging a ditch. It's up at the end of the driveway right in front of the cement pad of what used to be the garage, so the dirt was hard enough that I had to soften it up with a pick. Weird angle, because it's almost under our newish bay window there. Anyway, my back was sore ...
|
|
|
 |
|
|
|
Test post. I guess it was the server that was broken last weekend. I foolishly typed in an entry and hit the "Post & Publish" button, and the text simply vanished. Oh well. Better luck next month.
|
|
|
 |
|
|
|
Extracted raw notes from an email I just sent ... http://diggdot.us/ is an excellent "mash-up" site -- an aggregator that collects stories from digg.com, slashdot, and del.icio.us/popular, and presents them all with a consistent interface. In the course of thinking about how to explain the sites that I frequent on the web, I have an essay percolating in my head, about early adopters, "cool kids", neophiles (see http://en.wikipedia.org/wiki/Neophile ), idea markets, brainstorming sites (halfbakery.com, shouldexist, the lazyweb), paul graham, the NCSA "What's New" page, the "endless September", metafilter, memepool, ... The theme is roughly about how the "interesting places to look at" have to keep moving around, because of an online equivalent of the tragedy of the commons. Unfortunately, though, I don't really have time to flesh it all out. Maybe next year. Or maybe I should invoke the lazyweb, and discover that someone else has already written that essay, or one that's close enough.
|
|
|
 |
|
|
|
For me, 2004 was a light year, blogging-wise. 2002 - 377 entries 2003 - 127 2004 - 84 2005 - 63 http://radio.weblogs.com/0100945/2005/01/ January: Coined a word Nuncocentric. Hasn't seen much use yet. http://radio.weblogs.com/0100945/2005/01/26.html should be http://tmp.i.am/eaU.html http://radio.weblogs.com/0100945/2005/02/ February: In the course of mentioning Eugene Wallingford's weblog "Knowing and Doing", I wrote about Programming as Teaching. I often write about the readability of programs, about how one of the most important aspects of any program is how well it conveys its algorithms, assumptions, context, environment, alternatives, engineering tradeoffs, etc., **to other humans**. Programming as teaching. Yow, I just did a Google search for Programming as Teaching and only 18 pages came up, and many of those think of programming as teaching the computer how to do something, instead of thinking of it as teaching other programmers how you solved this problem. I think the ...
|
|
|
 |
|
|
|
This month saw some exciting hints from the Scala mailing list, and LtU, about GADTs in Haskell, in Scala, and perhaps eventually even in C#. Martin Odersky wrote that there would be support for GADT's in the new version of Scala. (The current compiler is written in a variant of Java; it is being rewritten in Scala itself.) SPJ et al have rewritten the Wobbly Types paper, providing a simpler implementation and semantics for GADT's. GADT's revisited http://lambda-the-ultimate.org/node/view/1132 And LtU http://lambda-the-ultimate.org/node/view/1134 And the C# connection ... Andrew Kennedy and Russo have a "GADTs and Object-Oriented Programming" paper; there's an abstract near the end of Kennedy's generics page, and a complete PDF version here.
|
|
|
 |
|
|
|
So, Deb tells me that her boss is making turducken today. Why anyone would name a food with a name that starts with that particular four-letter combination is beyond me. Seems like they could just as easily have done it from the inside out, yielding chiduckey instead. Oh, well, I guess it's too late. Google says 187,000 for the T word, 19 for my version.
|
|
|
 |
|
|
|
Here's a weird result: to some extent, the more interesting and prolific a weblog writer is, the less of their stuff I'll read. It's not consistently true, but happens more often than I'd like. I get busy. A few non-bloglines days pass. I come back, and wham! Too many hundreds of unread things. Examples: O'Reilly Radar -- stuff I remain interested in, but just too much of it. Dave Pollard -- Dave's postings are so well-written, thoughtful, and feel so much more real-life important than most of what's out there, that I feel like I really ought to read each one. But they are also so thought-provoking that I need to set aside time to think through implications and applications ... and I just don't end up finding the time. So those stack up, but I can't bring myself to just hit the catch-up thing. Jon Udell -- thought provoking like Dave's, except with a tech bent that has me itching to try out many of the ideas he writes about. But, again, no time for that. By contrast, folks who ...
|
|
|
 |
|
|
|
As MenTaLguY mentioned, you can give a block to Hash.new in Ruby. This leads to pretty simple memoization. E.g., # Demonstrate a "memoizing" behavior of certain Hash usage def fib_n ( n ) if n <= 1 n else fib_n( n-1 ) + fib_n( n-2 ) end end $fib_mh = Hash.new do |h,n| if n <= 1 h[n] = n else h[n] = fib_m( n-1 ) + fib_m( n-2 ) end end def fib_m ( n ) $fib_mh[ n ] end def compar (lim) # puts lim strt = Time.now puts fib_n(lim) mid = Time.now puts fib_m(lim) last= Time.now puts "Lim(#{lim}), no memoing, takes #{mid-strt} seconds." puts "Lim(#{lim}), memoing, takes #{last-mid} seconds." end compar( ARGV[0].to_i ) Unless you have a lot of time, don't try running this with an argument bigger than the mid-30s. The RAA has a memoize mixin, but it doesn't use quite the same trick. It's still pretty short, though. The guts: module Memoize MEMOIZE_VERSION = "1.1.0" def memoize(name) meth = method(name) cache = {} (class
|
|
|
 |
|
|
|
Chris Double's weblog is mostly about a few interesting programming languages, including Factor and Erlang, and frequently about implementations of those on smaller devices. He recently moved it to http://www.bluishcoder.co.nz/ . A recent entry included a mention of project blackdog, a cool linux-on-a-USB handheld computer. That led to a review of Blackdog by Mickaël Rémond (whose non-ASCII characters confuse vi on Mac OS X at the moment) on his "3pBlog" ("Performance, Process, Parallelism") (and other Projects). A previous entry there pointed to Boris Mann's suggestion that XMPP (Jabber's protocol) would be a good base upon which to build a peer-to-peer social network. On a different tangent, Dave Pollard's page of links for the week had a few gems: Insider Pages, a peer-to-peer sort of consumer reeports / BBB / yellow pages site; links to a couple of folks who write about innovation -- Umair Haque and Paul Schumann. Nice phrases in those URLs -- "Bubble Generation" and ...
|
|
|
 |
|
|
|
So, at my recent reunion, I told Cloe that she could just Google me. She asked "what would I be looking for?" So I figured I'd summarize a few of the things one can get to by Googling for me. Today, the top result is the most popular single entry I ever posted to my weblog -- my suspicion about one possible reason for the 0xCAFEBABE magic hex string that starts every Java .class file. http://radio.weblogs.com/0100945/2002/04/19.html (I'll shorten my weblog links like this: http://tmp.i.am/2002/04/19.html but that redirector pops up some ads. If you don't have a decent popup blocker, just substitute http://radio.weblogs.com/0100945/ for the "http://tmp.i.am/" part of the URLs below.) If you're new to weblogs in general general and/or Radio Userland weblogs in general particular, and/or my weblog in particular particular, click on the "About Me and GIGO" link. That gets you to http://tmp.i.am/about/about.html which tells a little about my weblog and me. Two of the other local links ...
|
|
|
 |
|
|
|
Combining two of my major geekeries (maps and word-meanings), here's a map of gap-like (pass-like) geographical features, color-coded to what name is used for the place. http://seattle.gii.net/~pfly/gnis.gap-pass-notch-saddle.jpg Near here (Santa Cruz Mountains), there are Saratoga Gap (Highway 9 at 35), Waterman Gap (Highway 9 at 236 (the one north of Boulder Creek, which was recently made vastly worse by Cal-Trans)), and Patchen Pass (aka "The Summit", the highest point of Highway 17). Interesting to see that the vast majority of "Gap"s are in the Appalachians. [ via http://gpstracklog.typepad.com/gps_tracklog/2005/11/gap_pass_notch_.html and http://tinyurl.com/dpx74 ]
|
|
|
 |
|
|
|
I work about a half block from the creek. I take off for a break once every couple of days, walk over to where the road crosses, and look to see what's there. Most days, I'll see a big white egret or two; one of them sometimes hangs around next to a duck. Today there were three egrets, two of them normal sized, and one half-sized. An adolescent, I guess. A couple of weeks ago, I saw a black cat there for a couple of days.
|
|
|
 |
|
|
|
Shae Erisson pointed out Matt Hellige's axiom "Programmers should love programming." That reminded me of the last paragraph of this entry of mine, about the death of the UCLA Computer Club, once Computer Science turned into vocational training for future Pascal coders. And yesterday, Shae mentioned " ... some excellent reasons for spoken programming languages." That was one of the original goals of loglan/Lojban -- to be unambiguous enough to be a speakable programming language. It aims to avoid ambiguity at the phoneme level, which should make speech recognition easier; and at the grammar level, to make it easy to parse; and at the vocabulary level. In its potential role as a speakable programming language, the lack of ambiguity is a quite important feature. However, in lojban's role as a language intended for human-to-human communication, I think that the lack of ambiguity makes the language less useful: sometimes we just need to be vague. Maybe we're just tired, or we actually ...
|
|
|
 |
|
|
|
Saturday, 17 September, I went to Pasadena for my 35-year high school reunion. Took some photos but haven't put them up on the web yet. The organizer had a photo of my kindergarten class! Sunday, I got to go on a mountain bike ride with my nephew Ben and his mother's partner Marty, in Wildwood Park: TinyURL 7hnbk Monday, I drove up to Kings Canyon, found my backpacking friends, and we camped overnight near Grant Grove. Then, starting on Tuesday, we did a car shuttle and then walked about 33 miles in 3 days. We drove about a half-hour from Grant Grove to the trailhead at 7400 feet or so. We started hiking into a rainstorm ... saw five little frogs at various points along the trail. We climbed over a ridge and into the sun, for a great view of the newly-snowed-upon Great Western Divide ... [Doug and the Great Western Divide] After that, we descended gently along the beautiful Sugarloaf Valley, where we camped on Tuesday night. More thunderstorms happened overnight, but we all stayed ...
|
|
|
 |
|
|
|
Busy week planned for next week. Been hacking Ruby code for a couple of months at work, and it's time for a break. My high school is holding a reunion (35 years!) on Saturday; I plan a backpacking trip from near Grant Grove, past Roaring River Ranger Station, Moraine Ridge, Avalanche Pass, and down and down and down and down and down to Road's End. "Road" being CA-180 in King's Canyon.
|
|
|
 |
|
|
|
A few interesting tidbits from the Scala world: Matt Hellige mentioned a relatively new (new to me, anyway) paper by Odersky and Zenger: Scalable Component Abstractions; from which I learned: (a) that Google has an office in Switzerland; and (b) that Zenger works there. Kannan Goundan mentioned Scala's Automatic Closure Construction feature, aka implicit lambdas. Cool. Having worked pretty exclusively with Ruby for the past couple of months, I'm finding ways in which it reminds me more of Scala than of Python. It's probably the blocks.
|
|
|
 |
|
|
|
A pointer from LtU led me to Paul McJones' excellent "Dusty Decks" weblog, about computer history. He also has a pointer to bitsavers.org, which has a bunch of "... scanned copies of manuals [and] software in source and/or executable form for a variety of machines." My own (only?) contribution in that direction is an article I wrote for the Computer History Association of California several years ago, about the Sigma 7 at UCLA that was the ARPAnet's Host #1. I recently discovered that the article is online now. Check it out, page 21 of Volume 2, Number 2 of the "Analytical Engine". Other keywords: GORDO, The Sigma EXecutive OS, Jon Postel, Vint Cerf, IMP.
|
|
|
 |
|
|
|
While researching plans for my recent backpacking trip, I came across mention of a new trail/proposal in southern/central California, called the "Condor Trail". It's intended to be about 300 miles long, and to go along much of the backbone of the mountains in the Los Padres National Forest. I haven't found much info about it on the web, just a 2001 article from UCSB's Daily Nexus, and a "Condor Trail Weblog", on the site for the Los Padres Forest Association. The UCSB article is called "New Hiking Trail Would Connect the Dots". The Condor Trail Weblog has a few postings from spring and summer of 2004, but nothing since. I ought to update my Long Trails in North America page, and add it.
|
|
|
 |
|
|
|
A few weeks ago, Jamie Webb announced that there is now a Tomcat-like Web App container written in Scala. It's called "Kitten". There are a few other Scala goodies at the Sygneca site, including a "convenience" prelude. And here, since you've been so patient, is the doc for the Scala Enumeration class.
|
|
|
 |
|
|
|
Shoot, after such a promising June and July, here it is a third of the way into August already and this is my first August entry. I've been doing some actual programming language design (for a machine-oriented assembly-like language, but with some curveballs) and documentation. Using Mac OS X's "Pages" word processor. What a breath of fresh air compared with the horridly cluttered interface of the more common word processors!! I've also been learning Ruby, it's pretty nice. Not a whole lot different from Python, so it's pretty quick for me to pick up. The big idea I've been struggling with is the intersection among Haskell's lazy evaluation; demand-driven compiler intermediate languages (SSA, GSA, PDG, PDW, VDG); dataflow languages and architectures; and compilers that find opportunities to do things concurrently. Home's still a bit of a mess, though it's been improving. My cousin Stacy and her husband Jeff and son Tyler were here earlier this week, and their dog Cody (who used to ...
|
|
|
 |
|
|
|
I went backpacking with my nephew Benjamin a couple of wekeends ago (Friday 15 July through Sunday). The photos are up on my mac.com site. Ben is 10 years old, though he's a big 10. Last year, I took him on the first six or so miles of the High Sierra Trail, and we had a blast. So he'd been asking when we could schedule another backpacking trip this summer. Ben and his mother Mary had flown up from T.O., and she had to be in San Francisco for a work meeting. So I came up with the idea of having her drop Ben and me off on Skyline, and we would walk down through Long Ridge Open Space Preserve, down Ward Road into Portola State Park, and on out through Pescadero Creek County Park. It's a mostly downhill hike :-), but this time Ben's pack would be somewhat heavier. The captions tell much of the story, but since I ran out of camera space on Saturday afternoon, there aren't captions for the pictures I didn't take. So: Saturday morning, we had headed straight out from Slate Creek ...
|
|
|
 |
|
|
|
Guido wrote (about an example of dynamic type dispatching code that used explicit isinstance calls), "... This pattern gets tedious. (It also isn't very OO, but then, neither are multimethods, despite the name, IMO.) I've long held the thought that multimethods are less object-oriented than traditional single dispatch code. I've never quite figured out why that feels like it matters. Probably something to do with code clarity, although a visitor pattern is certainly clearer with multimethods than without. Maybe it's the extra implicit crud that most multimethod implementations add -- CLOS' call-next-method et al. Note that I do agree that multimethods are more powerful; I'm just claiming that they are less object oriented. And suspecting that this makes most MM code less clear: most code doesn't require or benefit from the presence of MMs. Are there any languages which have MMs but require that they be marked differently from the more common single dispatched code? Hmmm... IMO, ...
|
|
|
 |
|
|
|
Phil Wadler posted some comments by Warren Harris, expressing the desire to make the Links Programming Language at least partially be a better shell. The discussion reminded me of, and later mentioned, the "es" shell. I wrote up a Unix shells survey a couple of years ago, that mentioned "es". So I think I'll start referring to that new language as LinksPL instead of just "Links". I'm hoping that people pick up on that and thus create a decently google-able word for it. We'll see. I've been spending a small amount of my hobby time setting up a server on my old spare desktop Mac. I've been appalled at the percentage of time, effort, setup, and hair-pulling lore that's all concerned with configuration and deployment rather than actual programming. So that's my wish for LinksPL -- that the language should handle those aspects of web apps cleanly. I hope that Harris' wishes for a shell language and mine for a complete web app creator aren't just symptoms of LinksPL turning into a ...
|
|
|
 |
|
|
|
Margaret mentioned her cousin's son, Paul -- I think that's technically a first cousin once removed -- who has a weblog at http://pjk.us . I didn't know you could get .us domain names at that level. Cool. A ColdFusion fan. Macromedia makes Flash, which powers a lot of the nice-looking animations on the web, and I gather that ColdFusion is a web server and development environment for developing websites, with good support for developing Flash-based or Flash-rich websites. I haven't done much with Flash, but I can see the appeal. Here is the ColdFusion FAQ. Macromedia is lucky to have Sean Corfield working for them. I met him a few times at the C++ standards meetings a decade ago. Macromedia started using the term "MX" a couple of years ago. My guess is that it stands for "More eXtreme". Their FAQ says: What is MX? We use "MX" to identify the new products that are part of the Macromedia MX product family. Each product that bears the MX mark is major new version. Together, the ...
|
|
|
 |
|
|
|
Must be something in the air. I just read Eugene Wallingford's report from this past week's SIGCSE meeting (SIGCSE is an ACM subgroup dedicated to Computer Science Education). It includes mention of a quote attributed to Max Planck: A new scientific truth does not triumph by convincing its opponents and making them see the light, but rather because its opponents eventually die, and a new generation grows up that is familiar with it. So the very next two weblog entries that Bloglines showed me could both benefit from that same quote. For Michael Kölling (as reported by Eugene), it's Computer Science Teachers. For Diego Doval, it's Economists. For Ned Batchelder, it's Old Media. By the way, I think it's very cool that the online folks have framed that last "battle" so well. The Old Media has more money, but starts this particular discussion at a terrible disadvantage, simply by virtue of being called "The Old Media". And also by the way, Madge, if you're reading this: Eugene ...
|
|
|
 |
|
|
|
Now that javascript is getting some traction (see orkut, gmail, tiddlywiki, google maps, "<a href="http://blog.jjg.net/weblog/2005/02/ajax.html">Ajax</a>", etc), it's time for someone to design a decent syntax for it, and write a preprocessor. Candidates: python-like, lisp-like, or hmm... forth?-like...
|
|
|
 |
|
|
|
About two and a half weeks ago, I mentioned "I found a nice GTD summary here at the Minezone Wiki. Had some comments on it which I'll put somewhere else." Matt Vance wrote that GTD summary. I haven't read Robert Allen's book, so I wouldn't presume to comment on how well Matt has captured the ideas in it. I have read some of Merlin Mann's entries about GTD, and have occasionally read David Allen's weblog. So, these notes are therefore not so much about GTD itself, nor about how well Matt has captured Allen's ideas. Rather, I read Matt's summary on its own merit, and these notes are a step towards adapting this stuff to my world. And do note that they're definitely an unpolished draft. First: there's the 7 PEF WUSS habits. The "F" (First Things First) got expanded into Covey's most recent book. But earlier, the F just turned into Mishrogo Weedapeval. While there are hints about spots where GTD addresses the "Mish"ion, it looks to me like GTD is primarily concerned with the "Wee"kly ...
|
|
|
 |
|
|
|
Been experimenting with CSS menus, images for backgrounds, servlets in jython and scala, and re-organizing. I hope to move this weblog to my home server one of these days, but it'll be some time before that's ready. Golly, I just (two weeks ago) blew past my three-years-blogging anniversary, and didn't even notice. Saw the most spectacular rainbow Thursday or Friday, on the way in to work. And a great sunset-ish view on the way home: dark clouds covering almost the whole sky, but some clouds above the ridge to the west, lit up by bright sunshine just starting to tint reddish. At home, the manzanita and the heather is in bloom; and we had hummingbirds and titmice in the yard today. We're clearing out the garage-room so that we can lay down some actual flooring. Lots of work to do this weekend.
|
|
|
 |
|
|
|
I decided to coin a word. Tonight, zero hits on google. Here's my bozos-list email about it: Hey, all you Latinophiles, sesquipedalians, and neologians, I'm not sure there's a word for this, but I'm trying to find or coin one. It's related to egocentric and ethnocentric. It's related to TWIAVBP (The World Is A Very Big Place), the acronym that the AFU-ers (alt.folklore.urban) used to use to tell people that not everyone's environment is the same as yours. But it's about time. "NOW-centric". People have ranted and railed, whined and wailed, for millennia about how terrible things are Right Now, how near the end of the world is if we don't [DO SOMETHING], how important it is to change this terrible course we're on ... and it's always about Right Now. There's a great (probably apocryphal) quote about how wild the younger generation is, how it is clearly leading to the demise of all civilization on earth, and so on, and it turns out to be a quote written by a Greek guy in 1000 BC or ...
|
|
|
 |
|