PyConJP Keynote Speech (English version)
description
Transcript of PyConJP Keynote Speech (English version)
Rediscover with PythonCybozu Labs.
NISHIO Hirokazu
PyCon JP Keynote SpeechEnglish version
2014-09-17114年9月17日水曜日
I gave my speech in Japanese and unfortunately simultaneous
interpretation was not recorded. So I rewrite important part of my slide into
English for non-Japanese speakers.
214年9月17日水曜日
self introduction
314年9月17日水曜日
self introduction
• Cybozu Labs.
314年9月17日水曜日
self introduction
• Cybozu Labs.
• Researching next generation groupware
314年9月17日水曜日
self introduction
• Cybozu Labs.
• Researching next generation groupware
• What is groupware?
314年9月17日水曜日
examples of groupware
kintone is our product: https://www.kintone.com/414年9月17日水曜日
What is groupware?
coined by Douglas C. Engelbart, the inventor of mouse and GUI514年9月17日水曜日
What is groupware?
Group + Software
coined by Douglas C. Engelbart, the inventor of mouse and GUI514年9月17日水曜日
Augmenting Human Intellect
Douglas C. Engelbart "Augmenting Human Intellect: A Conceptual Framework" (1962)
Augment Human’s abilitywith software
614年9月17日水曜日
Augmenting Group Intellect
Augment group’s abilitywith software
= Groupware
714年9月17日水曜日
Computer read text and understand relation
between words in the text
word2vec
my book. published on May814年9月17日水曜日
人間
コンピュータ
You may think like this914年9月17日水曜日
人間
人間+コンピュータ=増強された人間
I prefer to think like this1014年9月17日水曜日
To monitor yourself won’t works well. When you are in bad condition, monitoring is also in bad condition. So you can’t
notice you are in bad condition.One solution is monitoring by another person. But sense of
shame and pride will cause problems.
Example
1114年9月17日水曜日
Another solution is monitoring by computer. It solves “shame and pride” problems.
1214年9月17日水曜日
This is a prototype. You can consult with the system to motivate yourself. 13000 people used it and 6000 people was motivated.
1314年9月17日水曜日
14 channels brain wave sensor
Another approach is going.
1414年9月17日水曜日
Machine→Human
Human→Machine touch panel
liquid crystal
(multi-touch)
switch
mousekeyboard
camerascanner
paper CRT 3D TV
HMDe-ink
Method to copy information from/to human is evolved1514年9月17日水曜日
Machine→Human
liquid crystalpaper CRT 3D TV
HMDe-ink
book e-book
But books are not evolved much
We need next generation “book reading”.Computer should monitor human reading books,
and augment its performance.
I think brain-wave and hi-reso HMD are the key to future.1614年9月17日水曜日
4 elements to augment human
• 1: Artifacts: computer, software, etc.
• 2: Language:jargon to refer special concepts, design patterns, etc.
• 3: Methodology: procedure and strategy for solving problems, etc.
• 4: Training: achieve skills to use 1~3
Engelbart "Augmenting Human Intellect: A Conceptual Framework" (1962)1714年9月17日水曜日
theme of this conference:
Rediscover with Python
1814年9月17日水曜日
How to discover?→Methodology to find unknown
1914年9月17日水曜日
When you see something...2014年9月17日水曜日
You see some part of the object2114年9月17日水曜日
If you see the object from the left side, it looks like a sphere.
But if you see it from the bottom side, you find it has a tail!
It is the process todiscover unknown
2214年9月17日水曜日
How to discover?→Change Perspective
2314年9月17日水曜日
known ↔ unknown
Two? no, it’s not correct.
2414年9月17日水曜日
obviouslyknown
obviouslyunknown
Between known and unknown...
2514年9月17日水曜日
obviouslyknown
obviouslyunknown
不明not obvious
There are things which you don’t know that you don’t know them.
“obvious” = “明” in Japanese2614年9月17日水曜日
blind spot
• Between “Things you know” and “Things you don’t know”, “Things you don’t know that you don’t know them” exists
• You don’t see it, but you don’t notice you don’t see it,that is the blind spot
2714年9月17日水曜日
Clarify what you knowobviouslyknown
obviouslyunknown
2814年9月17日水曜日
←blind spot
Out of the border you can find blind spot
obviouslyknown
obviouslyunknown
2914年9月17日水曜日
←blindspot
Then the border expands
obviouslyknown
obviouslyunknown
3014年9月17日水曜日
How to find blind spot?
3114年9月17日水曜日
ComparisonHistory
Experience
In my book published in April 2013, I introduced three way
to learn
Japanese, Korean, Chinese version are available, English version is on going. http://nhiro.org/langbook/en.html
3214年9月17日水曜日
ComparisonHistory
Experience+
AbstractionCommunication
In my special feature article in this April, I added two
3314年9月17日水曜日
ComparisonHistory
ExperienceAbstraction
Communication
How to find blind spot?
3414年9月17日水曜日
Comparison
• You can find blind spot by comparing programming languages
“In Ruby, 0 is true?! In Python it is false!”“It differs among languages?”“What is the definition in Python??”
object.__nonzero__(self)Called to implement truth value testing and the built-in operation bool();
3514年9月17日水曜日
History
• You can find blind spot by learning history.
“Why Python has new-style class and old class?”→(Learn history)→ “To unify types and classes? It’s important!” “Old class has problem on method resolution order, so we need new-style class. I got it.”
Unifying types and classes in Python 2.2 | Python.orghttps://www.python.org/download/releases/2.2.3/descrintro
3614年9月17日水曜日
Experience
• You can find blind spot by doing based on your understanding. Especially it won’t work as you think.
“Oops, why 1/2 goes into 0? I think it goes 0.5!”
PEP 238 -- Changing the Division Operatorhttp://legacy.python.org/dev/peps/pep-0238/
If you think it is obviously goes into 0, you didn’t find your blind spot. You should
experience Python 3.3714年9月17日水曜日
Abstraction
• You can find blind spot by learning abstract model and connect it to your experience. It helps you verbalize implicit knowledge.
“Ah, I’m used to the coding pattern but I didn’t know it was called Mediator Pattern!”“Mailing lists are also Mediator Pattern in information sharing domain!”
Abstract model can connect experiences in different domain/person/situation.
3814年9月17日水曜日
Communication
• You can find blind spot by talking with other people who have different experiences.
“I have a problem...” “You can solve it by ...”“Oh! Nice idea!” “But it is common in GUI programming” “Hmm, I don’t know on GUI”
3914年9月17日水曜日
ComparisonHistory
ExperienceAbstraction
Communication
How to find blind spot?
4014年9月17日水曜日
Communication
4114年9月17日水曜日
Office Hour13:00-13:30
Blog, Mailsee http://nhiro.org/
4214年9月17日水曜日
Q&A
4314年9月17日水曜日
Q: Some people ignore the chance to find blind spot. How can I
manage them?
4414年9月17日水曜日
A: “U Theory” is targeting the problem. I’ll give lecture
on that in Kyoto Univ. Summer Design School.
After that you can read my slides on U soon.
http://www.design.kyoto-u.ac.jp/sds2014/ja/theme01.html4514年9月17日水曜日
A: First, “How to manage others” is not good
attitude. Change yourself first.
4614年9月17日水曜日
A: Second, you (and I) sometimes ignore the
chance to find blind spot too. It’s common. Be aware and be careful. That helps
you find blind spot.4714年9月17日水曜日
A: Start from small step.Make useful result by finding blind spot.
Successful experience make you confident.
4814年9月17日水曜日
U Curve
PDCA Cycle and U CurveU Curve
Otto Scharmer “U Theory”
state
action
from my lecture
4914年9月17日水曜日
U Curve
PDCA Cycle and U CurveU Curve
Otto Scharmer “U Theory”
state
action
from my lecture
←You stick on false belief and you don’t see.
5014年9月17日水曜日
U Curve
PDCA Cycle and U CurveU Curve
Otto Scharmer “U Theory”
state
action
from my lecture
←You see, but from your perspective.You draw boundary between self and others,thinking “they don’t do ...(some good action)”
5114年9月17日水曜日
Q: Is it important to make abstract models?
5214年9月17日水曜日
A: Yes, it’s important.
5314年9月17日水曜日
Section 3 of my special feature is how to make
models.
You can read them(but in Japanese)http://gihyo.jp/lifestyle/feature/01/engineer-studying
5414年9月17日水曜日
A: Sense of “I got it” is also hypothesis. Hypothesis
should be tested. Do action based on your understanding and check
the result.5514年9月17日水曜日
A: If the result differ from your understanding, it is chance to
adjust your models. To repeat the process you can achieve better models, and then based on that you can make larger model.
This is a method.
5614年9月17日水曜日
A: Another method KJ method and grounded theory. They are used in
domains, in which experiments are difficult.
5714年9月17日水曜日
A: I’ll introduce KJ method roughly. First, collect a lot of data. Don’t filter based on your prejudice. Spread all data on your desk.
5814年9月17日水曜日
A: Human’s woring memory is about seven. But if you put data on your desk, you can see 100~200 data at a time.
5914年9月17日水曜日
A: Seeing 100 data, moving them physically, making
structure from bottom up,and then you get models
on your desk.
(Models in my book and special features are also developed with KJ method)
6014年9月17日水曜日
Q: 5 ways to find blind spot are not same on time
series.
6114年9月17日水曜日
A: Good point. It’s my blind point. Sure, “Abstraction” is follower. A person without any programming experience can not find blind spot
by reading design patterns textbooks. Abstract models in book doesn’t connect to his experience.
6214年9月17日水曜日
Q: How to share know-how among testers.(detail omitted)
6314年9月17日水曜日
A: It looks a problem to share implicit, not
verbalized, knowledge.One method is “work
together”
6414年9月17日水曜日
A: By working together, we can share knowledge without
verbalizing them.Additionally, if one person is prohibited to do anything
except for talking what to do, it prompt verbalization.
Ref: Keith Sawyer "Group Genius: The Creative Power of Collaboration"6514年9月17日水曜日
A: We can make manuals only after we verbalized
our knowledge. Verbalization is difficult job. Delegating the job without any training
is bad idea.6614年9月17日水曜日
not verbalized knowledge
Ikujiro Nonaka "The knowledge creating company" Japanese version p93
from my lecture
verbalized
not verbalized
6714年9月17日水曜日
not verbalized knowledge
Ikujiro Nonaka "The knowledge creating company" Japanese version p93
from my lecture
verbalized
not verbalized
↑pair programming, work together
6814年9月17日水曜日
Q: I make template to share information and use it. By answering questions, required information will
be collected.
6914年9月17日水曜日
A: Nice method. Even if someone can not verbalize himself, they can answer to specific questions. It’s common. Making good questions are useful.
7014年9月17日水曜日
A: However, be careful. Sometimes we lose
information which is not fit to the template.
Innovative information don’t fit to existing
template.7114年9月17日水曜日