Monday, August 18, 2014

Edge of Tomorrow (movie review)

The plot here leverages the experience of every player of first person shooters:  you get so far into it, and then you die.  Reset, and again.  You play until you make it through, or give up (similar to our pedagogy at OST, in lieu of "grades").

Given there's no alternative "outside world" beyond the game (The Matrix is complete, a reality prison), Tom (named "Cage" with good reason) has his Ground Hog Day cut out for him.

Seeing Cruise and Murray and their co-stars (Emily Blunt as Rita, and Andie MacDowall also as Rita) as a double feature would be fun, as one gets two different worlds reflective of the kinds of acting each guy does.

Murry is quirky and whimsical whereas Cruise is darkly War of the Worlds and action oriented, highly kinetic.

Yet the similarities stand out too:  how to authenticate as a time traveler.  Blunt's Rita has "been there" and so has an added advantage vis-a-vis her looper partner.

Having Cruise go from shy and retreating to full on aggressive, with that same sense of partnership displayed by Peter Quill towards Gamora (Guardians of the Galaxy), was a fun twist.

A needed ingredient is that sense of destiny aka fate that goes with heroism, a strong sense of making a big difference.  Once Cage develops confidence and survivability, along with his sense of destiny, he develops his heroic qualities within the loop, an eternal return.

The "mimics" which Cage and Rita get to fight have plenty of demonic power.  As a first person shooter, this game is definitely challenging.  Live, Die, Repeat is the other name they came up with for it.

Thursday, August 14, 2014

Finding Vivian Maier (movie review)

One might imagine I felt drawn to Vivian as I share her obsession with "street photography" as they call it, though I more call it "National Geographic photography" when thinking about it to myself.

The controversy about her accent seems easily resolved:  you could call it "affected" as she went to France only later to discover her ancestral roots.  Adopting those roots and owning them was wise on many levels, including in the practical sense that upper middle class people still sucker to this day for that "European nanny" jazz (though these days the Philippines is the new Europe).  It pays to have a French accent when you're in the nanny business, and she had to learn hers late in life.

She had that kind of spy-like fly-on-the-wall existence that life behind a camera somewhat foments.  You get that distance, that "observer" mentality (to quote the est Training).  One is recording for posterity, spying as if for ETs, but really for the future, and it was just hugely fortuitous that John Maloof would acquire her property at auction to start, and do the requisite archeology.  He reminds people how fun it is to discover others, and that's just as viable a creative outlet as making a big show of oneself.  Reminds me of Trevor.

Indeed, he's being somewhat Vivianesque in playing the self effacing documentary maker.  People treat him with the respect of someone who's done some homework.  Vivian too, did a lot of homework, and came across as respect-worthy.  Her employers would have sensed that in wanting her to have parenting responsibilities vis-a-vis their own children.

Yes, developing film was messy, chemical, and a pain.  If you're a deeply private individual, as Vivian was, then piling up your negatives in good condition and putting them all in a time capsule, with some strategic letters, is not a bad strategy.   High risk, but at least doable.

Remember Bucky Fuller and his "chronofile":  to self document in that way added a dimension to his experiment "Guinea Pig B".

Vivian achieved her own kind of nirvana in morphing herself into one of the greatest street photographers in the age before we could just upload into the cloud.  Now I think she so resonates with people like me, the common garden variety camera buff, because we share the same fascination with street photography, and the technology to make it relatively painless.

Of course it helps that the pictures she took were really excellent.

As Linus Pauling said (paraphrase):  the secret to taking some really good pictures is to take a lot of them (as he said of "ideas").

This is a well-made documentary about an intriguing subject:  Mary Poppins meets Bridges of Madison County (OK, that's a stretch -- she doesn't meet anyone, but she does remind of Clint Eastwood).

Someone told me ahead of time she was "plain" and/or "homely" and if maybe that was why she had such a lonely life, the poor dear.  On the contrary, Vivian was photogenic and displayed a level of toughness that goes with the territory, if "street photography" is your game.

As for her supposed mental illness (yes, lots of paranoia, imagine today with Cyberia) and draconian child rearing techniques, lets remember this was spoiled upper middle class America and she was hired as a French nanny.

The role of the nanny was to be "bad cop" sometimes, giving parents a more "good cop" role, sparing them the need to use the rod (nanny was rod queen).

So sure, the little darlings had some PTSD under Mary Poppins, but who wouldn't under such a Scary Mary?  I'm sure Vivian could be intimidating when she needed to be but she didn't water board, lets be clear.  Hers was the wing of the OSS (or whatever spy service) that didn't torture, but maybe did stay out in the cold quite a bit.

Sunday, August 10, 2014

Graph Databases

Ever since Pernilla Lind's talk at OSCON, the idea of graph databases has been rolling around in my brain.  A kind of NoSQL.  That's the place to fit in.

I don't mind accepting the pejorative connotations of "spaghetti monster" (play up the Italian food angle) or the links to the spoof deity that said monster comes with, in the Atheists' religion (some denominations).

That's all a plus in my box.

Neurons, like the Wild World Web (WWW), get messy, like Ms. Frizzle taught.  That's STEM.  So yeah, a graph database might be a terrible tangle, a Gordian Knot.

The beauty of it though, may be seen in its application to Quakerism and its processes.  Nominating puts forward names in a slate, which gets approved by Business Meeting, thereby filling all these positions.

Who served as what when, create a time slice, produce a resume:  these things a graph database will do, and reliably, if you feed it true information.

GIGO, right?

Just keep track of who on what clearness committee recommended X for membership to Oversight, and you'll have your reports at the end of the day.  Bring a smile to your clerking team's helpers, especially if your meeting has grown complicated and involuted over the years.

Minutes are just log files detailing the transactions that have gone on.

But of course the applications of such graphing engines are far broader than Quaker committee work or household diagramming, business analysis and so on.  The list goes on and on.

Friday, August 08, 2014

Dymaxion House

My plan is to visit some coffee shop with Wifi and my copy of Cosmic Fishing, to re-read whatever Ed Applewhite recounts about the Witchita, Kansas operation.

Then I'll flip through Bucky Works by J. Baldwin, which Ed liked a lot.

Trevor of Synchronofile has the most comprehensive Fuller archive within a thousand mile radius, so I'll likely be consulting him too, just to remind myself about some of the subplots.

Speaking of Applewhite, I think he would have been gratified to see this depiction of Fuller's E-module, with follow-up mention of David Koski's Youtubes on Facebook:

:: source ::

Thursday, August 07, 2014

More Counting Down

As in "countdown to zero" that is, a meme brought to you by the abolitionists, versus nuclear weapons that is (the anti-slavery battle is ongoing as well and they're related).

This year we again enjoyed fine weather, perfect shade, and a relaxed summer park atmosphere, with members of the public towards the back performing acrobatics quietly, in much the same way Joe Snyder does with kids' program during talent night at Annual Session (which I mostly missed this year, OSCON a priority -- still got some IT committee prep work done though).

A fun wrinkle was this mom & pop "radio station" showing up with what appeared to be equipment for making interviews.  I didn't see them make any, but one of their colleagues posed during Congressman Blumenaur's speech, with a black on yellow sign calling for Barack Obama's impeachment.  Carol later remembered Bonnie Tinker's fascination with the prospect of impeachment vis-a-vis George Bush.  My take both times is the same:  USAers are still PTSD from the Nixon Era and now see impeachment (a kind of scapegoating) as a solution for everything.

The highlight of course were the en Taiko Drummers, teens and tweens, led by taller girls but all obviously enjoying themselves and the audience feedback.  Mom took the opportunity to leaflet the front row during their 2nd performance, a stunt reminding these theater mode duffsters that it was theirs to stay active, get involved, not just to expect entertainment.  Or at least that's my spin.  She really didn't block anyone's view and she had relevant information.

Veterans for Peace is always high profile at this event.  The Native Americans were less foreground this year.  These things come and go.  I was wandering off site to savor local context and widen my perspective, and stumbled into a photo exhibit regarding some event called Vortex in 1970, which according to the proprietor was like a state sponsored Woodstock aimed at keeping a surly hippie generation out of trouble for the summer, by organizing some "lets get naked and pretend we're Indians" event.  That puzzle piece fit with my recent airplane reading.

Carol reminisced in the car about some of the early versions of this annual event, now pushing fifty years.  Fellowship of Reconciliation used to be involved but FOR must see Portland as "over it" by now, pretty much reconciled by now.  Mercy Corps is just across the street but not an active sponsor.  I was off in a Chinese second floor restaurant having a Tsingtao and watching Chinese TV for a part of it.  Like I said, I was taking in surrounding Portland (Old Town), adding nuance and new angles to an event I've attended for almost fifty years (but with a huge gap from like from age six to fifty).

Carol was given full credit for helping start this ceremony / memorial by Polo, a community / city leader, some years back.  She knows a lot of these people and had a walker full of stuff to compare notes about.  She's looking forward to another workshop today in fact, on the military's misappropriation of drone technology.

OK, time to stop blogging and head out to an AFSC-related meetup (AFSC is an old time co-sponsor of this event, right from its inception). The Portland office has relinquished its hold on its historic digs on E Burnside, though the outdoor sign is still there.

Where to go next, that's fully ADA compliant?  Old houses like that one usually don't even begin to qualify.  E Burnside has a ramp, with some turning radius in the restroom but I don't have the exact figures.  I'm suggesting we camp out, at least on billboards:  picture an AFSC tent overlooking a grand canyon (doesn't have to be the famous one):  "Really Out There, and Lovin' It!" could be the slogan (would McDonalds sue?).

The idea is like we're into scouting and stuff.  Like the old days in some ways, when AFSC ran work camps for COs.  The idea of a recruiting tent right in R2DToo itself has some appeal.  AFSC has a long history of working with stateless / houseless / refugee populations.

:: source ::

Saturday, August 02, 2014


Islamic cultures have appreciated the geodesic sphere and dome from the start.

The shape is geometric and the mathematics pristine.  No wonder that the Globe restaurant in Riyahd, atop Al Faisaliah Tower, is considered one of the architectural marvels of the Middle East.  Sir Norman Foster, who also developed a fourth Dymaxion Car, was the designer behind it.

Here in North America, the domed mosque in Perrysburg, Ohio, near Toledo, has long been on my list of "see in person if you can" places, and yesterday I found myself only eighteen minutes away (per Google Maps) having pulled off I-75 for some excellent sushi with a co-worker.

Tara and I took the country back roads in the rental Mazda 2, guided by GPS.  Although the building was locked, a kind gentleman allowed me inside for a brief self-guided tour.

This dome was designed by Temcor, Don Richter's company, Don having been a student a Buckminster Fuller's at Black Mountain College, a contemporary of Kenneth Snelson.

Sunday, July 27, 2014

Replacing a Broken Camera

I'm thinking of the hardships endured by the Five Broken Cameras documentary filmmaker and his friends, compared with my relatively easy life.  So I had a scratch on my Nikon Coolpix.  That's hardly a super serious problem is it?

Yes, it was messing with every picture and for a guy like me, who uploads by the thousand, that seemed like a big deal.

But that's the kind of problem people shouldn't have to complain about.  Right?  Lets get real here and make fun of ourselves and our "first world problems" (his last problem looked legit), if we happen to be lucky enough to be in danger of spoiling.

The new camera is another small digital point and shoot, a FujiFilm XQ1 with lots of cool features, though less of a zoom than the Nikon Coolpix S9300.

Built into this little jobber, not an accessory, is an ability to share pictures with my Android smartphone, meaning it's even easier to upload from the field, without a computer as an intermediary and over the Verizon network.

Another first world problem is I'd left my brief case with another Wifi device at the boat moorage yesterday and had to go by the marina enroute from the airport (where I dropped off an OSCON attendee) to Forest Grove, where I was to (and did) retrieve Carol (my mom) from Pacific University.  I shared an outdoor lunch with the annual gathering of North Pacific Yearly Meeting.

Old Germantown Road made for a good Meeting for Worship for Driving (MfWfD).  I'll be doing quite a bit of driving over the next few days, if call goes according to plan.

Good seeing Tom Whittaker, Tom Head, Nancy Irving, Sarah Michener, Clint Weimeister and Gayle Matson.

Oh right, and I also replaced my Skullcandy headphones with more of the same brand, purchased at Fred Meyer for about $10 on sale (no microphone on this model).  Maybe the old ones had been through the wash or something, but one ear had gone flaky.  Nothing lasts forever.

Thursday, July 24, 2014


If you've not been to an OSCON, you might find it surprising how many talks are of a "psychological" nature, meaning about inter-personal skills, not in the sense of compensating for not having them, but in the sense of being a community manager or developer evangelist for a global company that depends on Agile / OSS for strategic advantage.  Neo4j is such a company, and their developer evangelist did a dynamite job outlining exactly what the job is, using graph theory.

Older companies may not appreciate what a "community manager" even is, as that sounds like some touchy-feely PR job, some icing on the cake associated with lobbying and schmoozing with members of congress.  There's some of that "special interest" or "lobbyist" flavor, for sure, but you're more serving a team of expensive race horses, your developers, your sled dogs, who are pulling this chariot towards fame and glory, or just plain old towards helping people, making life less of a drag.  Graph databases are doing that for people and Neo4j is a serious player.

Another talk was on Dealing with Disrespect, by a seasoned community manager with Ubuntu on his resume, one of the premier users of, and of course developers of, free and open source software.  He sketched a sorting system of three buckets:  agreeable, disagreeable and unacceptable communications, and techniques for dealing with the disagreeable most especially, as that's where attention to context matters.  Get beyond just content and tone.  The basic posture is empathy.  As an empathetic attender to communications, you're less likely to just go off in the face of provocation.

What I found refreshing and agreed with in this talk is we're not attempting to criminalize offending content, such as satire ala South Park or whatever.  Offensive content, like toxic acids, has its place on the chemistry shelf, as an ingredient.  The public spaces are free to protect themselves from too much "push content" but if you wanna watch HBO, that's your business.  Content providers are not always trying to reach that "agreeable to everyone" market, or only are some of the time.  That's all my spin on the presenter's remarks, what I took away as validation, given my content is sometimes offensive.  It's not like I didn't put that skull and crossed bones on the bottle (smile).

I stayed at my workstation Thursday morning (atypically a last day, as the usual format is Monday-Friday, not Sunday-Thursday -- next year back to normal), getting back in the groove.  This was not vacation time for me.  On the contrary, it was double duty.  True for all in the mentor pool who manned the booth (Kelly, Patrick...).  Our main booth guy is not a coder by training but is fairly able to converse in Portuguese, Russian and maybe some other stuff.  Given i18n was a theme for us, he was just what we needed from central casting.  I sat around looking silvery gray and professorial, in my blue blazer (no elbow patches).  I brought Naga (@psf_snake) in her special carry-on and draped her over the OST counter on Wednesday.  I'm talking about the Python mascot in past OSCONs (she'd flirt with the Perl camel), this year mute on Twitter as I'm no longer her puppet master behind the scenes.

Tuesday, July 22, 2014


I've got a different angle on OSCON this year, from behind a booth counter some of the time, also in front of a TV camera in booth 818.  OST is booth 717.  We're well integrated into the O'Reilly ecosystem, with the mother ship booth to our west at the Expo Hall Center.

Our program opened with a series of videos encouraging OSCON attendees to strive towards being "full stack engineers".  What that means is awareness of one's place in an ecosystem.  Know about how you and your skills fit in to an environment.  Basic sense making, but in geek parlance.

Bluehost and HP are especially visible as one comes in the door.  Both gave keynotes this morning, Bluehost in tandem with Raymond Henderson of, a latter-day CUE (where I used to work; Center for Urban Education) in the sense that it helps non-profits leverage free and open technologies (CUE was at its peak prior to Open Source going gangbusters, around the time of the IBM PC).  IBM was here in force this year as well, with Softlayer. will get you some reliable hosting for your footprint in Cyberia, as long as you meet specific criteria.  Your ability to do quality bookkeeping is relevant.

The keynotes were somewhat psychological with the theme being inclusivity, the flip side (as in, same thing as) diversity.  What about children?  What about introverts?  Say what?  The talk on "coming out as an introvert" by Wendy Chisholm was quite ingenious in taking the term "coming out" -- usually associated with gender -- in a different yet related direction.

Wendy, an Accessibility expert, had found a way to pace herself that didn't go against the grain so much, in terms of her need to be alone with her thoughts and process in tranquility.  Someone with a daily meditation practice would sorely miss it for the same reason.  In allowing for her own needs, her stamina had greatly improved.  She encouraged conference attenders to attend to their own inner rhythms and maybe cutting back on stimulation as a way of engaging more fully.

We also heard from the younger generation, from a precocious programmer with parents up to providing guidance, and a community smart enough to appreciate his talents.  These factors:  access to the tools, guidance and encouragement, had led Shadaj Laddad to achieve maturity as a coder, with adult-level skills.  That he had done so much work in Scala was something the audience could appreciate.  Did I see Python code with a decorator aimed at adding trail call recursion of some kind?  That turns out to be a deep topic in the literature I was unaware of.

I took the nap lady's words to heart.  Not right away, as I had booth responsibilities and time on camera with Patrick and Steve, but later.

Will Marshall of Planet Labs rounded out the inwardly focused talks, plus HP on OpenStack, by sharing about his plans to open global data to user via some API. He already has a lot of satellites out there.

Carol Smith from Google, another Diamond sponsor, along with Citrix and HP, recapped ten years of Summer of Code.  Much has been accomplished.  The "design science revolution" (Fuller's coin) lives on.

Sunday, July 20, 2014

Scala Tutorial at OSCON

My notes from Get Started Developing with Scala by Jason Swartz and Kelsey Gilmore-Innis.

This is my day for JVM languages i.e. languages that compile to the Java Virtual Machine.  Clojure and Scala both fit that bill and have other features in common as well:  immutable data, functional programming, first class functions.

I opted for this tutorial based on a lunch conversation at one of the i18n tables and showed up with nothing working or even installed.  One of the minders got me up and running, getting stuff off a memory stick.

Turns out my version of Java was too old on the OST Mac Air.  I'm grabbing jdk-7u65-macosx-x64.dmg.  That worked.

Now I have a little web servlet going, controlled by the tutorial code.

Starting SBT for OSCON Scala tutorial
mackurner:scala-tutorial kurner$ ./ 
Starting SBT for OSCON Scala tutorial
[info] Loading project definition from /Users/kurner/Documents/scala-tutorial/project
[info] Set current project to Scala Tutorial (in build file:/Users/kurner/Documents/scala-tutorial/)
> console
[info] Generating /Users/kurner/Documents/scala-tutorial/target/scala-2.10/resource_managed/main/rebel.xml.
[info] Starting scala interpreter...
Welcome to Scala version 2.10.4 (Java HotSpot(TM) 64-Bit Server VM, Java 1.7.0_65).
Type in expressions to have them evaluated.
Type :help for more information.

scala> "Hello, Scala"
res0: String = Hello, Scala 
scala> var started_programming: Map[String,Int] = Map("Kirby" -> 24, "Odd" -> 25)
started_programming: Map[String,Int] = Map(Kirby -> 24, Odd -> 25)

The language is not entirely unlike Java, statically typed, object oriented, but is more spare, more "expression-oriented" according to our presenter.  Someone who knows Java might move to Scala next.

Like Python and Clojure, Scala has a REPL (shown above).

I'm sitting next to a man named Odd Are. I like that.

For those who know Python:

>>> list(filter(lambda i: i < 3, [1, 2, 3]))

is the same as

scala> List(1, 2, 3).filter(i => i < 3)

or even

scala> List(1,2,3).filter(_ < 3).

Both Python and Scala feature top-level functions, meaning you're free and encouraged to pass them as arguments on occasion.  The methods map, reduce and filter give you a basis for functional programming.

Our presenters recommend easing into Scala by using it to write tests for Java code.

Recommended followup tutorial:  The Neophytes Guide to Scala.

OSCON 2014 Tutorials (Day 1)

My notes from: The Simplicity of Clojure presented by Clinton Dreisbach and Bridget Hillyer.

Collections in Clojure:  Vectors, Lists, Maps, Sets.

Vectors are heterogeneous, as are all the collections, so like Python's lists. Also 0-based.

(nth [3 6 9] 1) ;=> 6.

A List is a unit of execution in that the first element is the function. Above: [3 6 9] is the Vector whereas (nth ...) is a List.

Collections are also immutable, like Python's tuples, so (conj (list 1 2) 3) ;=> (3 1 2).

Maps are similar to Python dicts.  Why are they associative again?  Sets (#) are like Python sets: no duplicates

:keywords have a magical property of serving as functions. (:a {:a 1}) ;=> 1.

A :keyword is a symbol that evaluates to itself.

Function names (symbols) are common to all the collections wherever that makes sense.  This has to do with their all being Sequences (not just Collections).  The laziness of the Sequence should evoke Pythonic ideas of lazy iteration, as well as the general notion of sequence.

Strings are not sequences but get coerced into same in using sequence functions:

(first "this is it") ;=> \t

...where \t is the character type.

Python's special names enforce a kind of uniformity across types.  We get to the syntax level with __getitem__ and __getattr__ i.e. obj[x] and obj.x are things we define within the obj type.

First exercise (I'm in a tutorial):

(list "Professor Plum" "Mrs. Peacock" "Mr. Green" "Mrs. White" "Colonel Mustered" "Miss scarlet")

(nth (list "Professor Plum" "Mrs. Peacock" "Mr. Green" "Mrs. White" "Colonel Mustered" "Miss scarlet") 3) ;=> "Mrs. White"

They had us download LightTable to follow along.  Here are the slides.  LightTable works with Python as well!

I met up with Tatia and Ed Leafe at the break.  Ed shares my FoxPro lineage.  Tatia is fresh off the plane from Brazil.  She's a Pythonista, like Ed and myself, fluent in both English and Portuguese.  We compared notes on Ruby (another OO language like Python) and clojure (functional, more LISP-like).

In a local scope, function let takes a Vector to give its bindings.  defn contracts def and fn.

Thanks to prefix notation, the hyphen is fine in variable names (symbols), no confusion with the minus symbol.

Polymorphism:  how?  If you don't have objects.  multi-methods maybe.  Helps to know some Java maybe as defrecord relates to Java's classes and interfaces.  "Make a Piece protocol" to model chess pieces, say with possible-moves and can-move? as methods.  OO thinking involves dispatching.

Functional reactive programming:  Javelin treats your data like a spreadsheet.  Check core.matrix for an example of professional clojure code.  What's ClojureScript?  Read more at

For further reading:  Clojure for the Brave and True.