2014年11月24日月曜日

A necessary rebellion

Talk by Joi at Poptech, "A necessary rebellion"




Some quotes from the talk:

"Question authority and think for yourself: You don't get Nobel prize for doing what you are told- you get Nobel prize for questioning authority and thinking for yourself. But somehow, we made this education system that requires you to have the right answer, to be obedient and to do things the way everybody else does them because it's the way you're supposed to do it."

"Fragile is a something that breaks under stress, and not robust against chaos. But robustness and resilience is not the opposite of fragile, because robustness and resiliency survives chaos. "Antifragile" are things that gets stronger when there's stress or are attacked. For example immune system gets smarter and stronger when they get attacked. Network security is another one. Think about "Antifragile" applied to all the systems including governments, education... the world is complex, stressful, and if you try to eliminate all rebellion and all the stress, you come up with a relatively fragile system."

"Learning over education: Education is something people do to you, learning is what you do to yourself. We need creative learning: In the old days, mass production, post industrial, pre-robot, pre-AI ages, you needed people who are obedient, could do repetitive task, weren't rebellious. But now, people should be more creative, because creative things are what the computers can't do. All the repetitive jobs are going to be taken over by computers."


"4Ps of Creative Learning = Projects, Peers, Passion and Play. Learning out of context doesn't work- learning through doing something you can learn, hence projects are important. Peers: teaching each other is a great way to learn. Passion is important. Play: if you put pressure on somebody and give financial rewards, they will do simple tasks more efficiently but it will take longer to do creative tasks. We're used to pressure people to be on time and be obedient that we have stamped out creativity on the kids. Unless we can transform our children, education system and workforce to a more rebellious and robust system, we will lose our jobs to computers and robots, and it's the only way we can survive."
Japan is a country that grew lots of people who are obedient, can't say no, and aren't allowed to say no in schools and workplaces. "Too tall a pile is hit on the top."

On the other hand, Japan is the country that is full of high quality amateur creativity in the fields of musicart, illustration and cartoons, animations, novels, software, hardware and many more fields in art. The amount of creativity that you see in places like Comic Market and Maker Faire Tokyo are just amazing. Of course many commercial products are exported out of the country, but the layers and layers of amateur creativity flourishing in places that are not mass production. I feel a lot of potential and hope for those creativity to lead to next generation industries.... from the awesome Japanese "rebellions" :)

Disclaimer: The opinions expressed here are my own, and do not reflect those of my employer. -Fumi Yamazaki

2014年11月18日火曜日

The Internet's Own Boy: The Story of Aaron Swartz

I've supported Kickstarter for this project and saw it when it was released, but I realized they now have subtitles in English, Spanish, Russian, French, Italian, Turkish, Chinese, Japanese, and Vietnamese. More reason for everyone in the world to watch this video.... and think about what you can do, what we can do, to make the world a better place. The world lost Aaron. We have to continue what he wanted to make happen.



Disclaimer: The opinions expressed here are my own, and do not reflect those of my employer. -Fumi Yamazaki

2014年11月4日火曜日

How Open and Inclusive Can Government Procurement Be? - Example from Fukushima

There are lots of projects to attempt transforming procurement.

Identifying the problem, and example from Philadelphia

My favorite is this project by Mark Headd former Chief Data Officer of Philadelphia where they did a GitHub-based procurement - "Redesigning Government".



Let's look at the problem: that the government procurement is broken, "fear-based procurement" is taking place, meaning people working in the government in general doesn't want to take risks so they stick to less risky procurement process, with old-style vendors they know, and the newer innovative startups has no way to contribute.

In the case of Philadelphia, they used GitHub for procurement for the following reasons:
1) They wanted to use a platform that would resonate with technologists, and wanted to work with firms that believed in what they believed- "we value open source software, we value collaborative software development, we value awesome things, and existing procurement processes don't allow us to find firms that share our values" says Mike.
2) They wanted to have some insight into the quality of other work done by bidders (to be able to look at their public repos to see what kind of solutions they were working on and how active they were in participating in other projects)
3) They wanted to see creative responses - something that potential vendors probably had not seen from a city government before.

The project they decided to use this process was called myPhillyRising, and they posted their RFP (what they want to build) on GitHub Gist.

https://gist.github.com/PhillyCDO/4666456

Anybody can see it, anybody can ask question or clarification can post public comment on this Gist so that everyone will see those questions and everyone will see those answers. If vendors wanted to bid, they had to create a GitHub repository, and the proposals should be in that repository. Mark and the team used GitHub issues to evaluate the vendor proposals, tagged them and issued bugs to assign the evaluation processes to the team.

Some firms just put a pdf document on their repository, some of them submitted actual code as submission, and the city can install and test them. Another vendor submitted a website that had user stories. Changing the "deign of the procurement process" itself allowed the city to reach those creative firms with shared values.

I think this is fascinating. You can read more about it here:
Experiments in GitHub Based Procurement

Many examples around the world

But this is not the only way to change government procurement - there are many different approaches taken by different governments.

How Barcelona and Philadelphia Are Turning Procurement Upside Down

It talks about how the cities opened their RFPs to everyone to be inclusive to the local citizens, and not specifying the solutions they are looking for but specifying the problems they want to solve made bidders more creative: “If we think about procurement as less about buying solutions and more about solving problems, I think we can open ourselves up to a whole variety of innovations”

And they introduce at tweet of a woman reading the RFP over breakfast: “Suddenly, procurement has gone from something completely horrible to something people can imagine participating in.”

Example from Namie, Fukushima

I wrote about Namie in the past on this blog post: it's a town very near Fukushima nuclear power plant, over 37% of the population is over 60 years old, all of the citizens are in evacuation in other places due to the radiation, and the town is completely in a diaspora. Namie is a small town with around 10,000 households/ 20,000+ citizens, and the town decided to distribute each household a tablet to communicate among each other as well as the town to distribute information. The project has 290,000,000 yen (approx. 2,900,000 USD) as the budget, from the Recovery Agency.

With such aging society, inclusion is extremely important. Here is how they are running the procurement process, together with Code for Namie team.

They have this website that explains to the citizens what this project is about, and the process of procurement.

http://www.town.namie.fukushima.jp/soshiki/2/201405tablet.html

1. They ran 6 ideathons where citizens, developers and designers gathered to discuss ideas for what they want the tablet to be doing in order for it to be useful for them.
2. They summarized the ideas to select the theme for hackathon.
3. They ran 2 sets of 2-day hackathons to develop prototype apps, and had the citizens evaluate those apps.
4. Based on those evaluations by the citizens, the town created RFP and invited vendors to submit proposals for creating applications and running the distribution and operation of the project.
5. All of the households receive application form to apply for the tablet, and monitor households will be able to start using the test device. Events to experience the tablet will be held.
6. Based on the monitor and events, adjustments will be made, and the tablets will be distributed.

Photo from one of the ideathons:



All of the RFP and Q&A results can be seen here:

http://www.town.namie.fukushima.jp/soshiki/1/20140801-proposal.html
http://www.town.namie.fukushima.jp/soshiki/1/8133.html

This is the actual specification from RFP.

http://www.town.namie.fukushima.jp/uploaded/attachment/2870.pdf

Some of the functions includes:
1. Local news distribution
2. Radiation level information distribution
3. Local government information distribution
4. Inter-household SNS
5. Function to increase usage (support function to support non-technical people using characters)
6. Slideshow
7. Inter-citizens SNS (optional)
8. Namie archive (optional function to preserve photos, videos and cultural assets from Namie)

These are the functions that actually came from the citizens' demand. You can see the "idea sketch" from ideathon incorporated in the RFP.




They also attached the "persona" analysis of the users, for the vendors to envision the user scenario.

http://www.town.namie.fukushima.jp/uploaded/attachment/2873.pdf

1. Community leaders, old couple living in temporary housing in Fukushima City
2. Community creators, young mom & daughter in Chiba, with high IT literacy
3. Old man living alone in Nihonmatsu, enjoying single life
4. Family living in Sendai, adjusting their lifestyle based on the children
5. "SOS" type- evacuated to Saitama, but cannot adjust to the locals and having trouble with communication




There were 6 companies that made proposals, all of the proposals can be seen here: the presentation files and video of their actual presentation to the town. You can see all of the scores, overall evaluations and detailed evaluations here. It is extremely transparent.

http://www.town.namie.fukushima.jp/soshiki/1/8028.html




Watching the video archive, you realize that at the beginning of the presentation, the vendors are told "citizens from Namie are in the room listening, so please do not use technical terms- please make your presentations understandable to everyone." One of the vendors started using lots of jargons in their Q&A and one of the person from the audience replied "I did not understand a word you said. Can you explain in plain sentences?"

Also, there is one person in the room that keeps asking the same question to the vendors: "Do you know the percentage of the population of Namie over 60 years old?" and "Do you know what percentage of the citizens have evacuated outside Fukushima?" These information were all in the first couple of pages in the RFP, but surprisingly some of them could not answer.

This is the slides and video of Fujitsu that won the bid.

Slides:
http://www.town.namie.fukushima.jp/uploaded/life/8028_24220_misc.pdf
Video:
https://www.youtube.com/watch?v=AL8Ds_tNtk0

This is the short summary evaluation doc of all of the vendors.

http://www.town.namie.fukushima.jp/uploaded/life/8028_24299_misc.pdf



This one is the detailed one.

http://www.town.namie.fukushima.jp/uploaded/life/8028_24201_misc.pdf

So the first question would be "Why the heck is NTT Docomo's score so low??" NTT Docomo is the largest mobile carrier in Japan, and clearly should have done lots of app development and system integration projects like this. They actually have a lot of experience- in fact, they already have ASP service that has many of the functions needed in Namie, and have already implemented in other town in Fukushima, that they can leverage. Their proposal was basically using this ASP service, customizing to Namie. At first thought, this makes sense, and their presentation seems legit. Instead of reinventing the wheel, let's use existing apps and customize it. What they did NOT realize is that this project was supposed to be agile, collaboration project involving the citizens to prototype, iterate, test, and give the feedback loops for further iteration, although it was written clearly in the RFP. It was not meant to be "giving" the system, but "building together". Also, the citizens did research about how Docomo's similar system in other town of Fukushima was doing, and it was not functioning well. Despite using the existing system, their initial cost and operational cost was expensive.

To summarize, almost all of the steps of the procurement is open, and citizens are inclusive of that process through the following steps:
1. Citizens were involved in shaping the RFP by giving ideas of "what they need".
2. Citizens were involved in hackathons to give feedbacks to the prototypes created.
3. Citizens were involved in evaluation of the vendors by joining and asking questions at their  presentation.
4. Citizens will be involved in using the app early as monitors, join "experiencing events" to give feedbacks for iteration before the final rollout.

Sure, they didn't use GitHub, all of their docs are in pdf format, but I think it is subtle in this case: this is about a small and aging town, with all of their citizens in diaspora, almost nobody is tech-savvy and they have little experience developing systems or apps, but they are working together with the citizens to build something useful for their communication and knowledge sharing which is essential to their future.

Getting the government procurement right, together

Hopefully, those various examples of "changes to government procurement process" will help make more success cases to government procurement projects- according to a research, "94% of large federal information technology projects over the past 10 years were unsuccessful — more than half were delayed, over budget, or didn’t meet user expectations, and 41.4% failed completely".

More on that here: Why the Government Never Gets Tech Right

Instead of complaining about the failure rate, we have to work together to fix it.

Disclaimer: The opinions expressed here are my own, and do not reflect those of my employer. -Fumi Yamazaki

2014年10月29日水曜日

Lawrence Lessig Interviews Edward Snowden



Disclaimer: The opinions expressed here are my own, and do not reflect those of my employer. -Fumi Yamazaki

2014年9月30日火曜日

Silicon Chef - Women's hardware hackathon

I joined Silicon Chef- women's hardware hackathon this weekend.

Our team "Nature's Lullaby" made a musical instrument using Adruino, Max, light sensor, flex sensor and leap motion. 

1. Getting Arduino setup:

Install Arduino
http://arduino.cc/en/main/software

FTDI driver
http://www.ftdichip.com/Drivers/VCP.htm

SparkFun Inventor’s Kit Guide
http://dlnmh9ip6v2uc.cloudfront.net/datasheets/Kits/SFE-SIK-RedBoard-Guide-Version3.0-Online.pdf

2. Making the LED blink, and change the parameters based on photo resistor and flex sensor

Silicon Chef

Hello world- making the LED blink:

void setup()
{
  pinMode(13, OUTPUT);
}

void loop()
{
  digitalWrite(13, HIGH);   // Turn on the LED
  delay(100);              // Wait for one second
  digitalWrite(13, LOW);    // Turn off the LED
  delay(100);              // Wait for one second
}

Using photo resistor to change the light level of LED:

const int sensorPin = 0;
const int ledPin = 9;

int lightLevel, high = 0, low = 1023;

void setup()
{
  pinMode(ledPin, OUTPUT);
}

void loop()
{
  lightLevel = analogRead(sensorPin);
  manualTune();  // manually change the range from light to dark
  analogWrite(ledPin, lightLevel);
}

void manualTune()
{
  lightLevel = map(lightLevel, 0, 1023, 0, 255);
  lightLevel = constrain(lightLevel, 0, 255);
}

void autoTune()
{
  if (lightLevel < low)
  {
    low = lightLevel;
  }

  if (lightLevel > high)
  {
    high = lightLevel;
  }
 
  lightLevel = map(lightLevel, low+30, high-30, 0, 255);
  lightLevel = constrain(lightLevel, 0, 255);
  }

3. Hooking up Arduino with Max:

Install Max
http://cycling74.com/downloads/

Fetching data of Arduino pins (in this case, data of photo resister) to Max

Maxuino 
http://playground.arduino.cc/Interfacing/MaxMSP

 /*
 *  Arduino2Max
 *  Copyleft: use as you like
 *  by Daniel Jolliffe
 *  Based on a sketch and patch by Thomas Ouellet Fredericks  tof.danslchamp.org
 */

int x = 0;                              // a place to hold pin values
int ledpin = 13;

void setup()
{
  Serial.begin(115200);               // 115200 is the default Arduino Bluetooth speed
  digitalWrite(13,HIGH);              ///startup blink
  delay(600);
  digitalWrite(13,LOW);
  pinMode(13,INPUT);
}

void loop()
{
if (Serial.available() > 0){         // Check serial buffer for characters      
    if (Serial.read() == 'r') {       // If an 'r' is received then read the pins  
for (int pin= 0; pin<=5; pin++){      // Read and send analog pins 0-5
    x = analogRead(pin);
    sendValue (x);
    }
for (int pin= 2; pin<=13; pin++){     // Read and send digital pins 2-13
    x = digitalRead(pin);
    sendValue (x);
    }
    Serial.println();                 // Send a carriage returnt to mark end of pin data.
    delay (5);                        // add a delay to prevent crashing/overloading of the serial port
  }
 }
}

void sendValue (int x){              // function to send the pin value followed by a "space".
 Serial.print(x);
 Serial.write(32);
}

Added a patch to change photo resister data to audio
(practically this is a theremin)

Fixing the patch to get various output sounds based on the light parameter and flex parameter.



4. Configure Max to read sample audios and remix



5. Setting up Leap Motion

https://developer.leapmotion.com/

Now we can do gesture input.

6. Making Leap Motion talk with Max

https://github.com/derekrazo/o.io.leap
http://cnmat.berkeley.edu/downloads

Adding Leap input to change the pitch of the sound, configured in Max.

Silicon Chef



Result:

We've got 3 levels of thresholds for light sensor, with frog sound and nature sound (as a lullaby to put you into sleep...), with additional strong light from flashlight app of Android we'll get a cat's meow sound (to wake you up), with flex sensor we'll get a rooster sound (if you were not waken up by the cat) and with Leap motion we can make that rooster sound changed to a digital squeak (to wake up the zombies).



[photo by Hackbright Academy]

It was not my first time playing with Arduino and Leap Motion, but my first time using Max. We had 2 experts on our team so they were able to figure out many things on the fly- I think I should get back to the elementary level and try out using it a bit more. Many thanks to the team for helping me learn!



[photo by Hackbright Academy]


Photos from the event:

Women building things!


Silicon Chef

Silicon Chef

Silicon Chef

Silicon Chef

Silicon Chef

Demos!

Silicon Chef

Silicon Chef

Silicon Chef

Silicon Chef

Silicon Chef

Silicon Chef

Note from TechTalk:

There are lots of cool events happening all around the world!

Nodebot is a global community of developers working on robots powered by JavaScript.



Nodecopter is an event with developers making something with AR Drone & Javascript



Noderocket- Javascript powered missiles



Robotsconf



JS Conf robot soccer game



Electric Imp

https://electricimp.com/

We set it up and ended up not using it this time, but it enables you to connect to wifi... will use it somehow for other projects :)

Silicon Chef

Max Shortcuts

Useful shortcut info,  thanks to Erin!

n = new object
i = integer object
f = floating point number object
m = message (for sending messages like t (for toggle) or b (for bang) or $1 (for use first incoming piece of data) etc.)
b = button
t = toggle
c = comment box (text only, for commenting)
CMD + E = toggle lock/ unlock patch
CMD + OPT + i = open inspector (use with an object highlighted--will open the inspector window for individual settings for that object)
CMD + SHIFT + h = open help (use w/ an object highlighted--will open help window for selected object)
CMD + SHIFT + r = open reference (same as above, but for reference)

My post from last year's Silicon Chef

http://fumiopen.blogspot.com/2013/10/silicon-chef-hardware-hackathon.html

Disclaimer: The opinions expressed here are my own, and do not reflect those of my employer. -Fumi Yamazaki

2014年9月4日木曜日

Code for America SF brigade hacknight memo

From my notes at meetup in San Francisco tonight: Jen Pahlka and Tim O'reilly were the speakers.

CfA brigade

- Let's put technology to the rightful place. It's not just about making money -technology can make society better.

- Should we be building something or reusing? Should governments be using taxpayers' money to build custom-made apps for each city?

- Change in vendor ecosystem is needed. 21st century governments can't survive without digital skill sets, tinkerers and builders.

- Government was our original means of collective action. It was built to do things that none of us could do individually. It’s wonderful to work together.

- Q: Technology will take away government people's jobs? A: Redeploy people to focus on outcome and actual people, don't get rid of them.

- Looking back on how Open Government advocacy started- it started by showing off people who are doing great things in the government, celebrate, and tell stories. Then, others who saw it will start doing it. That's how movements starts. That's how Tim started Open Source movement and other movements.

- 18F is deployment and USDS (US Digital Service) is about strategy and oversight. UK's GDS (Government Digital Service) actually does both.  Government realized they must spend less time just talking and more getting shit done ;)


 Disclaimer: The opinions expressed here are my own, and do not reflect those of my employer. -Fumi Yamazaki

2014年9月2日火曜日

Guides on "How to run Civic Hack Nights"

There are many guides on "how to run civic hack nights" recently, so I decided to compile a list here:


How to: Hack Night



Civic Hacking 101 by Christopher Whitaker


How to Hack Night panel


Disclaimer: The opinions expressed here are my own, and do not reflect those of my employer. -Fumi Yamazaki