SIGPX #6

Special Interest Group on Programming Experience
http://sigpx.org
The University of Tokyo
March 2, 2019
Chairs: Jun Kato (AIST), Hidehiko Masuhara (Titech)Today’s schedule• 11am – introduction Jun Kato, AIST
• 11:10am – self introductions• 11:40pm – talk by Isamu Hasegawa, SQEX
• 12:10pm 12:25pm – talk by Luke Church, Univ. of Cambridge• 12:55pm – short talk by Jun Kato and wrap up• 13:00pm – wrap up

PX – why now?
-’80 Users = Programmers…

’20- Programming Education gets popular HumanProgramming
ComputerLanguageInteraction• Motivation for PL research: Mere
improvements in PL are not sufficient toWe need to gather and consider
support exploratory programming
Programming Experience (PX)
• Motivation for HCI research: Support for
the entire workflow requires more than mere
Softwaretoolkit design – IDE designEngineering• Motivation for industry: e.g. Y Combinator
Requests for Startups (Aug. 2015)“Programming Tools” – Software developers
are shaping more and more of our daily lives

What is your expertise?
Research Domains:• ヒューマンコンピュータインタラクション Human-Computer Interaction• プログラミング言語 Programming Language• ソフトウェア工学 Software Engineering
Methodologies:• 実装が得意 Implementation Techniques• 調査や評価実験が得意 Surveys & Evaluations• 商業化や教育などの啓蒙活動が得意 Case Studies & Education

SIGPX as a collective intelligence!
Research Domains:• ヒューマンコンピュータインタラクション Human-Computer Interaction• プログラミング言語 Programming Language• ソフトウェア工学 Software Engineering

Not a single person can cover this

Methodologies:
Share your knowledge
and do the right stuffTechniques• 実装が得意 Implementation• 調査や評価実験が得意 Surveys & Evaluations• 商業化や教育などの啓蒙活動が得意 Case Studies & Education

Short recap on the pastSIGPX
SIGPX #6

SIGPX #1• Venue: Tokyo Institute ofTechnology• 2/27/2016 (Sat)• 35 attendees from bothacademia and industry• Presentations in the context
of startups, education, HCI, PL,SE

SIGPX #2

SIGPX #3

SIGPX #4

• Venue: 31F seminar room
C+D, Microsoft Japan Tokyo• Venue: Tokyo Institute ofTechnology• 8/7/2016 (Sun)• 7/8/2017 (Sat)• Venue: 4F Room 242, Eng.
Bldg. #2, The University ofTokyo• 30 attendees mostly fromacademia• Presentations in the context
of HCI, PL, SE including
reports from international
conference attendees• 3/2/2018 (Fri)• 10 attendees despite the short
notice, including those from• Around 20 attendees
abroad• Presentations regarding social
coding, live programming, and• Presentations in the context
development supportof HCI, PL, SE

Special Issue onEmerging Research on Programming Experience:
From Language Design to Industrial Applications• Special Issue in IPSJ Journal “Information
Processing” Vol.58, No.11• Covered recent work in programming
experience• Jun Kato, Hidehiko Masuhara (AIST, Titech), Sean
McDirmid (Y Combinator Research HARC), TakaUmada (The University of Tokyo), Ryo Suzuki(University of Colorado Boulder), Tsubasa Yumura(NICT), Kazuo Ichikawa (The University of Tokyo),
Katsuhiko Gondow et al. (Titech, Cybozu), Hidetake
Uwano(NIT, Nara College)
See https://sigpx.org/en/ipsj2017/

SIGPX #5

SIGPX #6

• Venue: 2F Room 202, Sci. Bldg. • Venue: (A secret venue in)#7, The University of Tokyo
The University of Tokyo• 12/3/2018 (Mon)• 3/2/2019 (Sat)• Around 20 researchers
including over half of students• Around 10 attendees from allover the world• Presentations regarding
domain-specific PX, machinelearning & programming, andlearnable programming• Presentations regarding PX in
gaming industry, problem
solving, and recap on theinternational workshop

PX studies in HCISIGPX #6

なんで別れたのか Why we got separated• 昔はみんな一緒だった HCI, PL, SE were all the same
• PC, GUIの登場で「エンドユーザ」が生まれた The birth of“end users”• もともとのプログラマ向け研究: PL, SE• エンドユーザ向けプログラミング研究: VPL, PBE• エンドユーザ向けユーザインタフェース研究: UI, HCIHCI研究の歴史を復習します See how HCI people have done itHCIにおけるPX 3類型 PX studies in HCI
1. ユーザインタフェース設計用ツール, ツールキット, API設計
Tools, toolkits, API designs for developing user interfaces• What are good abstractions of concrete user interfaces?
• What are good tools for people to design user interactions?

2. エンドユーザプログラミング, プログラマ用ユーザインタ
フェース
End-user programming, more intuitive “professional” programming• How can we make programming languages and tools better?

3. 統合開発環境

Programming environments for developing applications• What are good environments for people to design user interactions?
• More emphasis on the workflow

1. ユーザインタフェース設計用ツール, ツールキット, APITools, toolkits, API designs for developing user interfaces• Phidgets [UIST 2001] ─ GUIウィジェット（Widget）の物理デバイス版• Phybots [DIS 2012] ─ 平面上の移動をGUIのように指示できるAPI

https://www.youtube.com/watch?v=q0gJMDCrkZM

https://www.youtube.com/watch?v=8pSLDYBQg5I2. エンドユーザプログラミング, プログラマ用UI
End-user programming, better UI for programming• Gneiss [CHI 2015] ─ スプレッドシートで時系列データを扱う拡張UI• Blueprint [CHI 2010] ─ 実例のテンプレートを入力できるコード補完

3. 統合開発環境

Integrated development environments
ワークフロー全体を支援するため複数のツール・UIを複合• Gestalt [UIST 2010] ─ 機械学習のデータ編集とテストケース管理• DejaVu [UIST 2012] ─ 画像処理の時系列可視化とテストケース管理• Picode [CHI 2013], TextAlive [CHI 2015], f3.js…

HCIにおけるPX PX studies in HCI• ユーザインタフェース・アプリケーションの進化と共にあった
They have been always with evolutions of UI/applications• 重要性が増している Fundamental changes in need as of today• データ構造の複雑化 More complex data structure• インタラクションの複雑化 More complex interaction modalities• とくに実世界系アプリの台頭 e.g., VR/AR/physical computing• ツール単体やAPI設計「だけ」では研究になりづらい今日この頃
Sole tool development or API design considered as minor contributions• もう、そういう（商用）ツール・ライブラリあるよ “You can do it already with …”• ラップしただけ? すごみがたりない “You made a wrapper library – so what?”

SIGPX #6