Wednesday, November 26, 2014
Tuesday, November 25, 2014
Friday, November 21, 2014
My Grandfather served as a meteorologist in WWII. The family lore is that his missions included flying into Hurricanes in the South Pacific. And while I've always appreciated the value of his service, this story managed to make me appreciate it even more:
On October 22, 1943, Germany made its only armed landing on the North American continent of the Second World War. On that day, the U-boat U-537 anchored at the northern end of Labrador and its crew loaded ten cylindrical canisters, each weighing about 220 pounds, onto rubber rafts and then ashore.
The station was one of 26 manufactured by Siemens and deployed around the North Atlantic to give German meteorologists data on weather as it moved across the Atlantic.
Here's a photo of the station taken by the crew that installed it:
Imagine the risk and effort that the Germans went through, and all in the name of predicting the weather.
The Germans did a thorough job of hiding the station:
The station was camouflaged, and components were marked in English with the words “Canadian Meteor Service.” Not only was there no such agency, but Labrador was part of Newfoundland and not Canada. The station was placed far enough North in the hope, apparently realized, that the Innuit of Labrador would not encounter it. To confuse anyone who might stumble upon the remote site, empty American cigarette packages were strewn about.
In fact, it remained hidden until the mystery finally unraveled in 1977.
It's also worth noting that the technology used in the station was quite advanced for the day:
The technological expertise demonstrated by this 1943 station found in Labrador is impressive. Its operation was described in German technical journals in 1953, but officials in Canada's atmospheric environment service concede that we did not set up similar systems ourselves until the early 1960's.
Granted, modern stations are more sophisticated, use solar power, and provide a much wider and more precise range of information. There are 64 automated weather stations in the Canadian north today. It is doubtful, however, if any of them could have been packaged into 10 cylinders weighing no more than 220 lbs. each and capable of being loaded into and unloaded from a conventional World War II submarine.
To me, this shows that weather data in World War II wasn't some nice to have bit of information. It was crucial for planning and executing your strategy, and lives and equipment were worth risking to attain it.
Thursday, November 20, 2014
And just like that, the Arlington Streetcar project has been canceled. We've been hearing about this project in one form or another for the last 15 years. So part of me is disappointed that after getting so close to reality, it was quashed.
On the other hand, I'm not convinced that a streetcar would have actually solved the the traffic congestion nightmare that is the Pike. Today, you can be stuck behind a car that's behind a bus that's behind a stopped car. Now add a streetcar to this mix, and it's not a pretty picture.
Also, I've got to say I'm actually impressed that a major project which received funding and had awarded contracts could be more or less stopped on a dime. That shows flexibility and agility that I don't often associate with government (national or local). Another way to view the decision is as a bunch of politicians saving their own butts in the next election. Let's hope this wasn't their motivation.
Anyway, the streetcar is dead, time to move on. In fact, I think we can do far better than the streetcar. And no, I'm not interested in building the once proposed metro line. Never going to happen.
Solution #1: Monorail. I'm telling you, we *need* a monorail down Columbia Pike. Think about it: it would be far sexier than a streetcar or bus, and assuming it's elevated, it would zip down the pike while traffic below was crawling. But don't take my word for it, read this and this. Oh, still not convinced? Well, then watch this:
Solution #2: Gondolas. The only thing slicker than a monorail down the Pike would be a series of gondolas. Just imagine stepping into your own private cabin and gently floating down the Pike while the suckers in cars below do battle with each other. It may not be the fastest way to move people, but it would be efficient. And awesome. Again, don't take my word for it, read this, this and this. And before you laugh off the gondolas, note that the idea may hit closer to home than you imagine:
In Georgetown, a neighborhood in Washington, D.C., community leaders are studying a proposal to use gondolas to cross the Potomac River, connecting Georgetown to the Rosslyn Metro station in Arlington County, Virginia.
“We feel like it is an interesting idea and maybe could be a solution to the problems we’re facing,” says Joe Sternlieb, chief executive of the Georgetown Business Improvement District.
Georgetown community leaders raised the idea after visiting Portland, where an aerial tram, opened in 2006, connects the waterfront to the Oregon Health and Science University, Sternlieb says. The group is raising $200,000 to explore the concept.
Solution #3: Dedicated Scooter Lanes. OK, I'm reaching here, but hear me out. The problem with the Pike is getting folks from point A to B efficiently. What if we reconfigured the roads to carve out a section open only to Scooter (or Moped) traffic. My thinking is that scooters are relatively low costs and efficient for moving individuals around the city. Back in 2010 Brisbane floated this exact idea:
“We’ve got the bicycle lanes, but it would actually help to have a dedicated separate moped lane that’s undercover.”
Mr McLindon called for a rethink of “rarely used” T2 transit lanes, saying many cars stuck in traffic contained only one person and transport planners had to “start thinking outside the square”.
Better, safer options for moped riders within 10 kilometres of the Brisbane CBD could prompt more people to take up the environmentally friendly, cost-effective option, he said.
Heck, as long as I'm in fantasy land, we could also consider augmenting the Capital Bike Share to rent out Scooters (or maybe it's more of a Zipcar thing? Zipscoot?). And at the same station, we could have a baguette vending machine, so you could truly look the part while zipping down the Pike.
The streetcar is dead. It's time to start thinking outside the square. Let's do something awesome!
Wednesday, November 19, 2014
My wife, the TV star! Finally, all those migraines she's gotten have paid off. Yesterday, we had a reporter from one of the local TV stations in the house interviewing her about weather-triggered headaches. She knocked the interview out of the park! (If I do say so myself.)
151 years ago today someone snapped this photo of a crowd:
The question: what are they gathered for?
Hint: it's hard to tell from the above picture, but upon further analysis, the picture was photobombed by some guy in a top hat.
Tuesday, November 18, 2014
Last Tuesday, as I had codes and code breaking on my brain, I couldn't help but notice a few coded messages just waiting to be cracked as Shira and I took a walk down Columbia Pike. Here's a few of the more interesting specimens I found. These all mean something to someone.
OK, this rock isn't a mystery to me and it's technically not located right on the pike (it's a few hundred feet off, on a side street). But none the less, this SW No. 6 DC Boundary Marker is too cool not to include on the list:
For the last 222 years or so, this chunk of rock has done it's part to mark of the 10 by 10 mile square that was supposed to be DC. That may not mean much to us today, but back in the 1790's and 1800's I'm sure this was mighty helpful.
And speaking of construction symbols, check out these markings on what appears to be a control box for a set of traffic lights:
Those symbols look like they could be a wiring diagram. But why etch them in cement? Seems like overkill. Or, if it does need to be permanently recorded, why not use an official sign?
And check out this masterpiece:
That block of roman numerals in the bottom right hand corner are just begging for a little amateur cryptanalysis. It may not be Kryptos, but I bet it would be fun to try to crack.
And while not a code, I do have to share this license plate we saw as we were heading home. Seems to fit the theme, no? That may be the best use of a vanity license plate. Ever.
My father, a Professor of Biology, is fond of telling his students (and children): Darwin is always in the room. The idea, as he's explained to me, is that the basic elements of evolution (competition, mutation, adaptation, selection, etc.) are present in all biological processes, no matter how big or small. So if Darwin can be in the room, why not in my computer?
I give you the latest exercise from Programming Praxis: Dawkin's Weasel. This exercise requires that you implement the basic constructs of evolution in code:
I don’t know who it was first pointed out that, given enough time, a monkey bashing away at random on a typewriter could produce all the works of Shakespeare. The operative phrase is, of course, given enough time. Let us limit the task facing our monkey somewhat. Suppose that he has to produce, not the complete works of Shakespeare but just the short sentence ‘Methinks it is like a weasel’, and we shall make it relatively easy by giving him a typewriter with a restricted keyboard, one with just the 26 (capital) letters, and a space bar. How long will he take to write this one little sentence?
... We again use our computer monkey, but with a crucial difference in its program. It again begins by choosing a random sequence of 28 letters, just as before … it duplicates it repeatedly, but with a certain chance of random error – ‘mutation’ – in the copying. The computer examines the mutant nonsense phrases, the ‘progeny’ of the original phrase, and chooses the one which, however slightly, most resembles the target phrase, METHINKS IT IS LIKE A WEASEL.
Writing the prescribed algorithm was easy enough. You can find the complete source code here and the highlights below. Writing the code efficiently, on the other hand, turned out to be more elusive. My version creeps along, taking about 25 minutes to produce an answer. Why the sluggishness? I could blame it on the fact that I'm running it on an interpreter on my phone, but really, it's slow because I haven't take the time to make it fast. Still, after exactly 333 successive generations the system went from pure randomness to the target phrase (on run #2, it only took 211 generations to produce the right match). Slow and steady, that seems appropriate for the topic anyway.
As a programmer, I can't help but marvel at how simple and effective this algorithm is. By providing two key elements: (a) a way to introduce change and (b) a way to score the results, I'm able to write code that finds a solution even though I have no idea what the ideal path to producing that solution is. It's no surprise that there's a whole area of programming dedicated to this approach.
While I think this exercise nicely demonstrates some key aspects of evolution, my favorite experiment on the topic is still this one. In this case, the power of mutation (a key ingredient for evolution) is shown using the act of tracing a single vertical line. Spoiler alert: all those tiny errors introduce when a person tries and fails to copy the line exactly turn into significant changes. The results are pretty staggering. If you want to skip all the chit chat, and just see the effect in action, check out this video.
And here's the code for our computer monkeys:
; http://programmingpraxis.com/2014/11/14/dawkins-weasel/ ; ; requires sort from: ; https://raw.githubusercontent.com/benjisimon/code/master/programming-praxis/dawkins-weasle.scm (define goal (string->list "METHINKS IT IS LIKE A WEASEL")) (define (range low high) (if (> low high) '() (cons low (range (+ 1 low) high)))) (define (rand-char) (let ((offset (random-integer 27))) (if (= offset 26) #\space (integer->char (+ 65 offset))))) (define (mutate input) (map (lambda (x) (let ((rand (random-integer 100))) (if (< rand 5) (rand-char) x))) input)) (define (score input) (let loop ((value 0) (input input) (goal goal)) (cond ((null? input) value) (else (loop (if (equal? (car input) (car goal)) (+ 1 value) 0) (cdr input) (cdr goal)))))) (define (bang) (map (lambda (c) (rand-char)) goal)) (define (tick input) (let ((attempts (sort (map (lambda (i) (mutate input)) (range 1 100)) (lambda (x y) (> (score x) (score y)))))) (car attempts))) (define (solve) (let loop ((generation 0) (input (bang))) (cond ((equal? goal input) generation) (else (display (list generation (score input))) (newline) (loop (+ 1 generation) (tick input))))))
Sunday, November 16, 2014
Here's a recipe for kid Nirvana: fill up a large space with trampolines. Add a continuously run a dodge-ball game and basketball dunking area on said trampolines. And just for the heck of it, add a pit of foam squares children can launch themselves into with complete disregard for their safety. Intrigued? I give you Sky Zone, "the world’s first indoor trampoline park."
Shira and I watched with awe as the kids dove, literally at times, head first into the action. Even Shira and I got in some bouncing time. I got targeted big time by the kids while playing dodge-ball. It was like out of a scene where the inmates play the guards in football, only I was the guard and the children were the inmates and they finally saw a way to bring the pain!
Shira and I were both impressed by the operation at Sky Zone. The staff kept a close eye on the kids, and the place was as safe as one could expect. It wasn't exactly dirt cheap; but for a once in a while adventure, it was definitely worth it. It's certainly an activity you should drag your children to at least once in their lives. And don't blame me if you end up at urgent care...
Some photos of the kids at play:
I should have saved his creation, no doubt they will one day be worth millions.
Happy Birthday big guy!