post_pointer

Andrew Burton and I spent the morning talking Open Data and Open Government with these passionate public servants at Canada Beyond 150’s three day conference in Winnipeg.

“Canada Beyond 150 is a ten-month professional development program involving a Canada-wide group of early-career public servants. The project is designed to support leadership and skills development, and to drive a culture shift across the federal public service.”

As part of this program, teams of public servants are working together to explore policy challenges including: reconciliation, open and transparent government, sustainable development, feminist government, and socio-economic inclusion.

Andrew and I meet with the open and transparent government team. Andrew was there in his capacity as the City of Winnipeg Open Data manager. I was there as executive directory of Open Democracy Manitoba.

We discussed the evolution (and/or disappearance) of privacy, the implications of a shift to digital government services, proactive vs reactive public disclosure, IT procurement, open source goverance, fake new, policy making as a participatory act, algorithmic biases, the logistics of open data, citizen engagement, artificial intelligence, techno-privilege, trust and reputation online, and so much more.

I was honoured to be invited to share my experiences and perspectives on these topics. It was inspiring morning. I look forward to seeing what kinds of improvements and innovations these folks will help bring to our federal public service.

Oh, and in case you’re curious, here’s why they chose Winnipeg as the location for their mid-project conference.

post_pointer

Types as Concretions

I love that space where coding and philosophy collide.

Rich Hickey talked about types, such as Java classes and Haskell ADTs, as concretions, not abstractions.

People often talk about a Person class representing a person. But it doesn’t. It represents information about a person.

A Person type, with certain fields of given types, is a concrete choice about what information you want to keep out of all of the possible choices of what information to track about a person.

An abstraction would ignore the particulars and let you store any information about a person.

Eric Normand, Clojure vs. The Static Typing World

From the same piece, how Clojure was designed to make a certain kind of software easier to write.

A type of software characterized as:

solving a real-world problem
=> must use non-elegant models

running all the time
=> must deal with state and time

interacting with the world
=> must have effects and be affected

everything is changing
=> must change in ways you can’t predict

2017-10-28 08:38:41

post_pointer
post_pointer

My talk about Alan Turing’s 1936 paper on computable numbers. Recorded in May of 2016 at Skullspace for Papers We Love Winnipeg.

The slides for the talk are also available.

I’ll be speaking at Papers We Love again this year on May 24th. This year’s paper will be Christoph Adami’s What is Information?

This presentation will carefully introduce the concepts of entropy and information, explaining them intuitively while still rigorously defined. The presented paper argues that a proper understanding of information in terms of prediction is key to a number of disciplines beyond engineering, such as physics and biology.

post_pointer

Reading and Listening in 2016

I read 17 books last year. Two more than 2015. Eight less than 2014, Two less than in 2013, one less than in 2012, and one more than in 2011. All seventeen books were deadtree format. Thirteen of them were fiction. Four were non-fiction.

If we also count the books I’ve read to my girls before bed, the number would larger. This was the first year I started reading chapter books with the girls. We finished four chapter books together.

As in 2015, I listened to a large number of podcasts, but I took a break from audio books and audio lectures.

Fiction Read in 2016

  • Harry Potter and the Order of the Phoenix - J. K. Rowling
  • Q - Luther Blissett - 16th century Europe. Reformation, early capitalism, and the journey of an Anabaptist radical.
  • Harry Potter and the Half-Blood Prince - J. K. Rowling
  • How to Live Safely in a Science Fictional Universe - Charles Yu - An exploration of the melancholy nature of consciousness. And time-travel.
  • Harry Potter and the Deathly Hallows - J. K. Rowling - Late to the game, but I can now officially call myself a Rowling/Potter fanboy. The final book did not disappoint.
  • Golden Mean - Annabel Lyon - Fictional account of Aristotle’s years tutoring Alexander (later to become The Great) of Macedon. A search for the mean between action and thought.
  • The Cat’s Table - Michael Ondaatje - Friendship!
  • Purity - Jonathan Frazen - Although sunlight is a disinfectant, too much is a cancer.
  • Seveneves - Neal Stephenson - We never learn who blew up the moon. Survival story. Post-apocalypse far-future history.
  • Embassytown - China Miéville - Must-read for language nerds. Aliens whose native language doesn’t support falsehoods. Through humans they learn to bridge similes into lies.
  • A Thousand Splendid Suns - Khaled Hosseini - The lives of girls and women in Afghanistan, 1960 to 2000.
  • Children of Dune - Frank Herbert - Free will versus prophetic determinism on the formerly desert planet.
  • The Wise Man’s Fear - Patrick Rothfuss - Out-of-the-pan-into-the-fire hero fantasy of epic scale. Much fun.

Read in that order. No incompletes or duds this year.

It’s my usual mix of science fiction (How to live…, Seveneves, Embassytown, Children of Dune), fantasy (Harry Potter, The Wise Man’s Fear) and historical fiction (Q, Golden Mean), with a dash of “coming of age” (The Cat’s Table). Purity and A Thousand Splendid Suns sit outside my wheelhouse and I thank my sister for those. I found ten of the thirteen novels at Value Village. Still rocking the serendipity-driven reading plan.

Children’s Fiction Read in 2016

Read with the girls:

Adventure!

Top Three Fiction Reads in 2016

Oh boy! Can I pick more than three? No?

Seveneves by Neal Stephenson

“As it turned out, imagining the fate of seven billion people was far less emotionally affecting than imagining the fate of one.”

The moon explodes. Within two years moon parts will rain down on earth, destroying the planet’s surface. 1,500 humans are selected to live in space, the other 7 billion will die. The only plan is to orbit earth and survive the 5000 year wait until the planet is re-habitable. The page count is worth it. Includes orbital-mechanics porn.

A Thousand Splendid Suns by Khaled Hosseini

Summarized in a quote and a poem:

“Learn this now and learn this well, my daughter: Like a compass needle that points north, a man’s accusing finger always finds a woman.”
- Khaled Hosseini

“Every street of Kabul is enthralling to the eye
Through the bazaars, caravans of Egypt pass
One could not count the moons that shimmer on her roofs
And the thousand splendid suns that hide behind her walls”
- 17th-century Iranian poet Saib Tabriz

Children of Dune by Frank Herbert

“The malady of indifference is what destroys many things. Yes, even civilizations die of it. It’s as though that were the price demanded for achieving new levels of complexity or consciousness.”

Where there is energy there is struggle. Abandon certainty! That’s life’s deepest command. The only order is the order we create ourselves. Fear is still the mind killer. :)

Non-Fiction Read in 2016

I first attempted to read the Annotated Turing in 2013. In 2016 I forced myself to persevere by promising to give a “Papers we Love” talk on Alan Turing’s 1936 paper on computable numbers. Charles Petzold’s book is an heavily annotated version of Turing’s paper. I enjoyed the process of reading the book, grokking Turing’s Universal Machines, and giving the talk. I also got to reconnect with my year 2000 engineering thesis advisor, Bob McLeod, who attended the talk and asked some tough questions at the end. The slides for the talk can be seen here.

Podcasts in 2016

I discovered podcasts in 2015 and continued to listen to hundreds of hours worth of them in 2016. The podcasts I’ve been listening to, in alphabetical order, split into non-technical and coding categories:

General Interest Podcasts

  • Ideas with Paul Kennedy (CBC) - Documentaries in which thoughts are gathered, contexts explored, and connections made.
  • Invisibilia - The invisible forces that control human behavior – ideas, beliefs, assumptions and emotions.
  • The Longest Shortest Time - The parenting show for for everyone.
  • Philosophy Bites - Top philosophers interviewed on bite-sized topics.
  • Public Philosopher - Harvard political philosopher Michael Sandel examines the thinking behind a current controversy.
  • Reply All - A show about the internet.
  • Song Exploder - Musicians take apart their songs, and piece by piece, tell the story of how they were made.
  • The Tim Ferris Show - Interviews with world-class performers to extract the tactics, tools, and routines you can use.
  • Think Again - Surprising the smartest people you know with ideas they’re not prepared to discuss.
  • This American Life - Themed story-driven journalism.
  • We Turned Out Okay - The modern parent’s guide to old-school parenting.

Programming Related Podcasts

Top Three Podcasts

The Tim Ferris Show

Binge listened to over 150 episodes of the Tim Ferris Show in 2016. Most episodes are long-form (1 to 2 hour) interviews with interesting people. Tim has a knack for making his guest feel comfortable and chatty. I likely could have pick 50+ favourites, but here’s three.

Fav Episodes:

  • #93 - Jane McGonigal - Jane is a world-renowned game designer and the Director of Games Research & Development at the Institute for the Future. Her research focuses on how games are transforming the way we lead our real lives, and how they can be used to increase our resilience and well-being. Listen on the web.
  • #157 - Mike Rowe - Mike’s performing career began in 1984 when he faked his way into the Baltimore Opera. His transition to television occurred in 1990 when — to settle a bet — he auditioned for the Shopping Channel and was hired after talking about a pencil for eight minutes. Amazing story teller. Listen on the web.
  • #148 - Josh Waitzkin - Josh was the basis for the book and movie Searching for Bobby Fischer. Considered a chess prodigy, he has perfected learning strategies that can be applied to anything, including his other loves of Brazilian jiu-jitsu (he’s a black belt under Marcelo Garcia) and Tai Chi push hands (he’s a world champion). He talks about everything from dynamic quality (Zen and the Art) to parenting to athletic training and learning. Listen on the web.

Think Again

I’ve listened to all 90 episodes starting in June 2015. Host Jason Gots and guests explore surprise topics.The conversations are fun and wide-ranging.

Fav Episodes:

  • #47 - Kate Tempest - Poet and spoken word artist Kate Tempest won the Ted Hughes award for her epic poem Brand New Ancients. Her 2014 album Everybody Down has been described as “novelistic hip-hop”.
  • #50 - Ethan Hawke - Ethan Hawke and host Jason Gots discuss fatherhood, perpetual warfare, and the daily struggle between light and dark within every person.
  • “Best Of” Mixtapes - Mixtape #1, Mixtape #2, Mixtape #4 - Listen to these to get a feel for show and then cherry pick the archives for guests you know.

Invisibilia

I listened to the 2016 season while on vacation in the Netherlands, Greece and Spain. Made for some heady runs.

Fav Episodes:

  • The New Norm - Social norms determine much of your behavior - how you dress, talk, eat and even what you feel. Hosts Alix Spiegel and Hanna Rosin examine two experiments that attempt to shift these norms.
  • The Problem with Solutions - Are there problems we shouldn’t try to solve? Lulu Miller visits a town in Belgium with a completely different approach to dealing with mental illness.
  • The Personality Myth - We like to think of our personalities as predictable, constant over time. But what if they aren’t? What if nothing stays constant over a lifetime?

Audio Lectures and Audio Book in 2016

None.

2017-03-25 09:46:46

post_pointer

Open Democracy Manitoba (ODM) is now a registered non-profit corporation!

I helped found ODM six years ago, in the summer of 2010. Since then we’ve helped hundreds of thousands of voters research their candidates and learn about their local democratic process by way of WinnipegElection.ca and ManitobaElection.ca.

We recently launched WinnipegElected.ca, a site where citizen can easily follow Winnipeg City Council decisions on reports, motions and by laws. The site was developed with the assistance of the Winnipeg Clerk’s Department.

Incorporating as a non-profit will help us in securing grants, allowing us to continue to empower the citizens of Winnipeg, Manitoba, and beyond, through our online tools and resources.

post_pointer
post_pointer

Circles traveling along the path of a Hilbert Space filling Curve.

post_pointer
post_pointer
post_pointer

Thinking in Tic Tac Toe

Thirty one years ago I typed tic tac toe code, found at the back of a computer magazine, into my VIC 20. I didn’t understand the code but I felt wizardly when the game popped up on the living room TV. Thirteen years later I would code my own tic tac toe game for the first time while learning to build Microsoft Access apps during my coding internship at MTS. I added the game as an easter egg to the time tracking app I built for the MTS Solutions Group.

The first two were written in flavours of BASIC. I’ve since coded tic tac toe in Pascal, Perl, Ruby and Clojurescript. The Pascal one was Connect Four, a 4-run tic tac toe with gravity.

All were written as code kata in the name of learning through experimentation. Sketching with code.

“This kind of coding as thinking out loud is known in the Agile methodology as a spike. It is meant to be as informal as possible. It’s the equivalent of whiteboarding. And just as whiteboarding sometimes leads to a formal solution, sometimes it’s benefit is in quickly and simply framing a problem. Coding allows us to whiteboard directly with data.”

This quote is from my friend Sam’s talk on Coding and Humanism for the UTSC Digital Pedagogy Institute.

Sam’s talk is embedded below. Worth the watch if you’re into such things as digital literacy in libraries, agency through computational thinking, formalism vs hermeneutics, amateurism, openness and pedagogy. ლ(´ڡ`ლ)

Sam’s talk got me thinking about how I learned to program computers. It also got me thinking about the privilege of having spent three decades thinking in code. I was fortunate to have access to a computer from a young age, with leisure time for computational tinkering, encouraging parents, friends, teachers and mentors. The gender, race and class issues present in the tech world have not been working against me.

Sketching with code. As an IT educator I’ve tried to balance the strict formalism required by technology with an informal exploratory approach to learning.

Sketching with empathy. To better serve all my students a recognition of privilege must also inform my teaching practice.

* * *

My most recent tic tac toe sketch can be played here. The computer plays randomly, not strategically. View the game’s source code, written while learning Clojurescript, Reagent and React.

2016-05-01 09:28:25

post_pointer
post_pointer
post_pointer

Reading and Listening in 2015

I read fifteen books this past year. Ten less than 2014, four less than in 2013, three less than in 2012, and one less than in 2011. All fifteen books were read in deadtree format. Fourteen of them were fiction. One was non-fiction.

As you’ll see at the end of this post, my drop in book consumption can be attributed to my new found love of podcasts.

Books Read in 2015

Read in that order. No incompletes this year. The majority of these books were really great.

Top Three Books in 2015

Dune

“I must not fear. Fear is the mind-killer. Fear is the little-death that brings total obliteration. I will face my fear. I will permit it to pass over me and through me. And when it has gone past I will turn the inner eye to see its path. Where the fear has gone there will be nothing. Only I will remain.”

Publish 50 years ago, this sci-fi novel set 21,000 years in the future, has aged incredibly well.

Politics, religion, ecology, philosophy… Dune has it all. Forget top books of 2015, I’d say this would be one of my favourite books of all time. If forced to find fault, I’d point to sexism: The Bene Gesserit, a matriarchal order, develop a breeding program to produce the Kwisatz Haderach, a male Bene Gesserit who, being male, can do what they cannot do, can see what they cannot see.

Dune Messiah proved to be a solid follow up, and there were interesting similarities to the other far-future novel read in 2015, The Player of Games.

East of Eden

“The American Standard translation orders men to triumph over sin, and you can call sin ignorance. The King James translation makes a promise in ‘Thou shalt,’ meaning that men will surely triumph over sin. But the Hebrew word, the word timshel —'Thou mayest'— that gives a choice. It might be the most important word in the world. That says the way is open. That throws it right back on a man. For if 'Thou mayest’ — it is also true that 'Thou mayest not.’”

This book came highly recommend by Sam and it did not disappoint. The characters (even the minor ones) felt so real, their struggles so familiar.

Oh, the things we do for love (or the lack of).

Never Let Me Go

“All children have to be deceived if they are to grow up without trauma.”

What would you do to preserve the innocence of a group of children shuned by the rest of society? A melancholy story about purpose, love and mortality. Like Ishiguro’s The Remains of the Day (one of my top three from 2014) it’s also about memory and denial.

This book left me feeling sad and protective. Protective of my children but also of the entire human race. And that’s a weird feeling.

I don’t want to say much more, because spoilers, but I really enjoyed how well the author captured the way children see and interpret the adult world.

Podcasts in 2015

2015 was the year I discovered podcasts, which is why I read far fewer books this year. I listened to hundreds of hours worth of podcasts throughout the year. The podcasts I’ve been listening to, in alphabetical order, split into non-techical and coding categories:

General Interest Podcasts

Programming Related Podcasts

Top Three Podcast Episodes

Invisibilia - How to Become Batman

The story of a blind man who says expectations have helped him see. Literally, see.

Mystery Show - Case #3 Belt Buckle

A young boy finds an enchanting object in the street.

Reply All - #36 Today’s The Day.

PJ and Alex go outside. I highly recommend listening to episodes 1 through 35 first for context.

Audio Lectures and Audio Book in 2015

I only completed one set of audio lectures in 2015, but it was a doozy, a 42 hour review of Western philosophy. I also listend to the ebook version of Thinking, Fast and Slow, which was an amazing look at how we othen place too much faith in human intuition.

2016-02-19 16:46:26

post_pointer
post_pointer

How To Think Visually Using Visual Analogies by Anna Vital

“If you know nothing else about visualization but pick the right analogy you are more than half way there.”

post_pointer
post_pointer

Sneak peek from today’s sale at Viscount Gort: Fantastic Four # 5 & 10, X-Men # 4, Hulk Hogan Finger from 1987 match in Wpg.

post_pointer

8-Bit skyline in Japan by @1041uuu.

More 1041uuu gifs can be found on 1041uuu.tumblr including the original daytime version of the above skyline.

post_pointer

Coding is Two Things

Coding is hard because it’s two things:

  1. Expressing ideas in the rigid syntax & grammar of a formal language.
  2. Problem solving.

While learning to code we often focus too much on the first. This is also true while teaching others to code.

This fall I’m going to highlight problem solving while teaching my intro programming courses. Below you will find some of the problem solving strategies I may adapt for my students.

Solving Problems in Five Acts

  1. Define the Problem
  2. Let it Simmer
  3. Plan a Solution
  4. Carry out the Plan
  5. Reflect

via: University of Waterloo Centre for Teaching Excellence

FOWL Problem Solving

Figure out What You’re Being Asked
Organize the Presented Data
Work out the Problem
Look Over Your Answer

via: Geekdad

George Pólya’s Problem Solving Techniques

  1. Understand the Problem
  2. Devise a Plan
  3. Carry out the Plan
  4. Look Back

via: George Melvin - Berkeley University

Also: Pólya’s book on the subject, How to Solve it - A New Aspect of Mathematical Method: Full PDF, AbeBooks, Amazon

Feedback

How do you solve problems?

On reviewing this post Sam suggested emphasising hypothesis and testing when teaching these strategies. I agree that formulating a hypothesis during planning makes room for false starts, while testing adds rigure to the self-assesment of the “Look Back”/Reflect phases. The wonderful part about making these two steps explicit is that we now have something akin to the scientific method:

  1. Statement of the problem.
  2. Hypotheses as to the cause of the problem.
  3. Experiments designed to test each hypothesis.
  4. Predicted results of the experiments.
  5. Observed results of the experiments
  6. Conclusions from the results of the experiments.

Language geek note: The word solve comes from the Latin solvo, to loose an object bound, to release, set free, disengage, dissolve, take apart.

Related Posts on StungEye:

2015-07-11 09:43:45