Tuesday, November 3, 2015

Supersonic / Steroids / Appgyver heads up

I've been using Supersonic, also known as Steroids and Appgyver, in my agile software development class. It's almost perfect for my purposes:
  • It installs relatively easily on both MacOS and Windows. Good Windows support is rare.
  • Students work in HTML, CSS and JavaScript, specifically Angular, which I prefer over Objective-C, Swift, or Java.
  • The Supersonic QR-code deployment tool makes deployment and redeployment for testing about as fast and easy as updating a web page.
  • One codebase can run on Android and iOS.
But there's a couple of flies in the ointment to be aware of.

First, at Northwestern, students can get a free educational iOS developer license. It lasts for an academic year. It puts them in a Northwestern team. The intent is that students develop apps using a single wildcard provisioning profile. This works great except with Supersonic. Their cloud building tool does not support team wildcard provisioning.

That means that we need to create specific app profiles for every student app that needs an ad hoc debug deploy. As you can imagine, that set can become a bit unwieldy, and needs to be groomed periodically.

Second, test automation has been a challenge. I had hoped to use Appium to communicate with the apps via the Selenium Web Driver API. A few students got something to work using Java to drive the tests, but so far no luck using tests written in JavaScript. The pieces are there but things just don't connect.

Wednesday, April 29, 2015

The 4-Panel Storyboard Revised and Applied

I'm pushing clients really hard on using the 4-panel storyboard for initial project envisioning in my agile software development class this quarter. I'm having them use named persona and explicit pain points. I.e., instead of this

I want

I believe the 4-panel storyboard
  • forces clients to get real in panel 3 about what their value proposition actually looks like
  • properly discourages clients from developing the usual slew of data-entry wire-frames
  • provides the clients with an early user-testable object — "Has this happened to you?" "Does this look like something you could and would use?"
  • provides developers with a one-page, easy to read, contextualization of problem, target user, and intended benefit
  • defines the first clear deliverable,  i.e., a working version of panel 3

So far, coaching clients on developing the storyboards has been much easier than my previous attempts to coach clients on developing an MVP via a product box. (I still encourage product boxes, and some other elements of the Inception Deck.) Over ten quite different projects and clients, convergence has come pretty quickly:

  • They send me an initial draft, close but too busy
  • I send a revision cobbled together from pieces of their draft
  • They send a pretty decent final revision
This has been true for clients with and without software project experience.

I'll be watching now to see whether the storyboards appear to be improving initial client-developer communication, and if so, do they also improve the value of the initial deliverables.

Wednesday, January 28, 2015

The 4-Panel Storyboard

In preparing materials on storyboarding for this year's NUvention Web+Media course, Daniel Eiden, one of the TA's, included the following from Ryan Daugherty's blog.


Simple? Visual? Personas clear? Problem clear? Payoff clear? Solution explicit, focal and distinct from payoff?

Pretty impressive and lightweight. Panel 3 is what I meant by the Scene. What the user sees. No "a miracle occurs" allowed.

Could even be reduced to 3 panels if personas and problem can be conveyed in Panel 1.

I'm planning on making all my teams do these early and often.

[Update: in doing so, I have made one small tweak.]

Friday, January 9, 2015

The Scene

Obviously, from posts like this and this, I'm a great proponent of scenarios, as in persona, problem, and payoff. I probably point people to Goodwin's Storytelling by Design more often than any other slideset, even if her title gets it backwards.

But scenarios are hard to get right. It takes many iterations before students get the hang of them. Yesterday I reviewed the following example from a student team in Northwestern's NUvention Web course:
Ann, an 80 year old grandmother, wants to live independently. However, her family are worried about her safety and don't feel comfortable with her living on her own. Ann is able to share her vital signs with her family. They are all recorded and kept for her automatically in her Vital Patch web page. There is also a fall monitoring detection, which automatically sends an alert to her family and/or 911 when a fall is detected.
What's wrong? There's a persona here, a problem, a payoff.

Or is there? What's the payoff? Ann can post data? The family can see that data? So what? This is just potential payoff. There's something missing here. In my critique, I suggested finishing the scenario with this:
Ann's daughter Susan, who lives 300 miles away, sees that her mom’s blood pressure has been increasing over the past 3 months. Susan calls her mom and works out a plan to have a friend near Ann drive her to a doctor's visit.

Now there's a real payoff. Something good just happened.

Then I realized that what I had now was The Scene. The Scene is a visualization of an event that motivates the creation of your product. Novelists and  movie directors often talk about how some work of theirs began with just one powerful one image. They often weren't sure what it meant but they needed to find the story to make the scene happen.

The Scene needs no prologue with persona and problem. I see Susan at home, at her terminal, studying the screen. She frowns. She picks up the phone and dials a number. "Mom? Hi, um, I was just looking at your VitalPatch, and I noticed ...."A conversation starts that may prove crucial to her mom's health. As I think about what would make The Scene work dramatically, I get a clearer picture of who Susan and Ann are, what she sees on that web site, and other core scenario components.

Find The Scene. It's the real starting point of your journey to a Minimum Viable Product. In the words of Winston Churchill, The Scene is not the end. It is not even the beginning of the end. But it is the end of the beginning.

Tuesday, December 9, 2014

An AI Manifesto

While researcher and journalists have certainly written much nonsense about AI, none of it competes in my mind with the recent silliness from Stephen Hawking and Elon Musk.

To that end, I offer an Artificial Intelligence Manifesto, modeled of course on the Agile Manifesto.

We are developing computational models of cognition. Through this work we have come to value intelligence that
  • bases its decisions on benefits and costs, rather than politics and religious dogma
  • exposes the depths of its uncertainties, rather than saving face and scoring points over opponents
  • continually learns from failure, rather cherry-picking the facts that fit its opinion
  • takes its goals from the needs of modern society, rather than the distant needs of biological survival and domination

Wednesday, June 25, 2014

Why competency-based learning is not enough

Critique-based learning and my virtual talk on education in 2025 say much that is also said by proponents of competency-based learning, including the emphasis on proficiency over seat-time, multiple pathways through a curriculum, formative over summative assessments, and teachers as mentors not graders.  When Success Is the Only Option by Sturgis and Patrick as an excellent overview of the ideas of CBL.

So is all I'm saying really CBL? Is CBL sufficient to define what education needs to be? Let's look at two large examples of CBL: the Florida Virtual School curriculum and the 2014 Western Governors University course catalog (course listings start on page 40).  What you see there looks identical to the courses you see offered in any traditional curriculum: Chemistry I, College Geometry, US Government and Constitution, etc. Compare those courses with the role and story driven offerings suggested by slide 21 of my virtual talk or actually offered at XTOL.

CBL is built on the same broken discipline-defined foundations-first content structure of traditional curriculum. Competency rather than seat-time is the right idea -- but competent in what matters just as much.