Jun Kato
Human-Computer Interaction researcher, Ph.D. (Computer Science)

Research area

I am interested in broad area of Human-Computer Interaction (HCI), and have been especially focused on designing user interfaces and integrated environments for creativity support. Improving Programming Experience (PX) is an important subgoal to support the creativity of people with diverse technical backgrounds.


Jun Kato is a HCI senior researcher at AIST, Japan, and also serves as a technical advisor at Arch Inc. He worked for Microsoft and Adobe and received a Ph.D. from The University of Tokyo in 2014. He has focused on PX research, founded SIGPX, and regularly gained academic recognition such as ACM CHI 2013/2015 Best Paper Honorable Mention.

Recent updates

There have been many committee roles these days. I will provide an invited talk on "Programming for X" at RIEC International Symposium on Human-Computer Interaction which will be held as part of the preparation for CHI 2021!
It's been a while ... Songle Sync (ACM Multimedia 2018) and TextAlive (ACM CHI 2015) were both used at Hatsune Miku "Magical Mirai" 2019. Thank you for your birthday messages presented with Songle Sync and hope you enjoyed the live performance and disc jockey performance using TextAlive!
Attended the Shonan meeting on exploratory and live programming and organized the Sixth Workshop of SIGPX at a venue of The University of Tokyo. The slides at SIGPX are available.
Presented Songle Sync in the "Experience" session at ACM Multimedia 2018. Slides are available for download in the project page.
Presented DeployGround in the "APIs and Use of Programming Languages" session at IEEE VL/HCC 2018. Slides are available for download in the project page.

Research topics

While I am interested in broad area of HCI and have a high-level goal of supporting people's creativity, I have been especially focused on the following topics. For the list of concrete projects, see Projects.

User Interfaces for Live Programming

Live programming eliminates the gulf between code and execution. User interface design plays the key role in providing live programming experience.

With appropriate user interface design, live programming can potentially benefit end-users, be used for applications whose computation takes a long time, and mean much more than merely providing real-time information of the running program.

Programming with Examples

The programming-with-examples (PwE) workflow lets developers create interactive applications with the help of example data. It takes a general programming environment and adds dedicated user interfaces for visualizing and managing the data.

This is particularly useful in developing data-intensive applications such as physical computing, image processing, video authoring, machine learning, and others that require intensive parameter tuning.


Below is the list of research projects, followed by the list of design and/or engineering projects. See Design for the design-oriented list of my projects.

Recent research projects

Songle Sync
The Songle Sync platform allows controlling numerous devices in synchrony with the songs with its SDK.
2017-2020MM '18
A parametric design tool for physical computing devices for both interaction designers and end-users.
2015-2020DIS '17
An integrated design environment for kinetic typography; desktop app revamped as a web service in 2015.
2014-2020CHI '15

Other research projects

DeployGround is a framework for developing web-based tutorials that seamlessly connects the API playground and deployment target for kick-starting the application development.
2018-2020VL/HCC '18Live IDE
The goal of this ongoing project is to develop human-friendly computer-aided technologies that help researchers to conduct scientific research.
2018-2020(Work in progress)
Reactile is an exploratory research project that investigates and proposes a new approach to programming Swarm UI by leveraging direct physical manipulation.
2017-2018CHI '18Co-authoredPhysical PwE Live IDE
User-Generated Variables
UGVs are variables generated by the end-users' requests and implemented (or discarded) by the programmers. The use of UGV helps both sending feature requests and their actual implementation.
2017PX '17Live IDE
Live Tuning
Live Tuning is the subset of Live Programming interaction that only involves changes in constant values through parameter tuning interfaces. It expands Live Programming benefits to non-programmers.
2016LIVE '16Live IDE
A logic puzzle for "musical thinking," deepening your understanding on music while enjoying the puzzle.
2015-2017SMC '15Co-authoredMusic
A to-do list interface for sharing tasks between human and agents including robots and software personal assistants.
2011-2014HAI '14Robot
An IDE for example-centric programming of image processing applications, enabling fluid transition between abstract text-based coding and concrete direct manipulation.
2013-2014GI '14PwE Live IDE NUI
An IDE for visual applications that shows interactive screencasts for replaying program executions and editing visual parameters.
2012-2014CHI EA '14Co-authoredPwE Live IDE
It's Alive! (TouchDevelop)
The TouchDevelop IDE enables live programming for user interface programming by cleanly separating the rendering and non-rendering aspects of a UI program, allowing the display to be refreshed on a code change without restarting the program.
2012-2013PLDI '13Live IDE
An IDE that shows inline photos representing posture data in source code. It manages the data binding between the photos and posture data and show photos to aid source code comprehension and editing.
2011-2013CHI '13PwE IDE Robot
An open-source project that augments a standard billiard table with the cutting-edge computing technologies to provide the "super-billiard" experience.
2012-2013IEEE GCCE '13Toolkit NUI
An IDE that eases the iterative development of interactive camera-based programs with support for monitoring, recording, reviewing, and reprocess temporal data
2012UIST '12PwE Live IDE NUI
A toolkit that allows researchers and interaction designers to rapidly prototype applications with locomotive robotic things.
2009-2012DIS '12Toolkit Physical Robot
A technique to detect simple gestures of "surfing" (moving a hand horizontally) on a standard keyboard by analyzing recorded sounds in real-time with a microphone attached close to the keyboard.
2010UIST '10 AdjunctNUI
A "pressure-sensitive" programming environment with visual feedbacks of the built-in 2D physical simulator.
2009インタラクション2010デモLive IDE NUI
A table-top interface that provides a streaming video view of the living room, so users can walk up to it, see the layout of the room and interact with the TV, lighting, cleaning robot, and so on.
2009SIGGRAPH '09 E-TechCo-authoredRobot NUI
Multi-touch Interface for Controlling Multiple Mobile Robots
A multi-touch interface with a top-down view from a ceiling-mounted camera for simultaneously controlling multiple mobile robots.
2008-2009CHI EA '09Robot NUI

Design and/or engineering projects

Magical Mirai 2018 live lyrics animation
Once again, authored lyrics animation for a live performance by Hatsune Miku!
SNOW MIKU LIVE! 2018 lyrics animation
Authored lyrics animation for a live performance by a renowned virtual idol singer - Hatsune Miku!
"junkato.jp" Website
This portfolio website is built with various OSS and itself is open-sourced on GitHub.
Tenju Works web design
Helped renovation of the Tenju Works website.
OngaCREST service flyer and poster design
Designed flyers and posters of the four web services developed by the OngaCREST project.
Home hacking
Have been hacking my home to automate various tasks.
A Java-based tool for listening to your home iTunes Library from anywhere.
A user interface for helping navigation of source code in IDEs. For each row of the keyboard, available namespaces, classes, member variables and methods are shown on the keytops.
CD jacket design
Designed multiple CD jackets.
An extendible PHP framework for content management of news website.
2006-2008Design Toolkit
arX MusicPlayer
Yet another music player for Windows with a built-in interpreter of a domain-specific language to change "skins."
arX Launcher
Yet another program launcher for Windows written with <300 physical loc.


Please reach me via email or social networking services rather than telephone and facsimile when possible. I rarely check these conventional machines.

Interested in collaborations?