ABSTRACT
A new wave of collaborative robots designed to work alongside humans is bringing the automation historically seen in large-scale industrial settings to new, diverse contexts. However, the ability to program these machines often requires years of training, making them inaccessible or impractical for many. This paper rethinks what robot programming interfaces could be in order to make them accessible and intuitive for adult novice programmers. We created a block-based interface for programming a one-armed industrial robot and conducted a study with 67 adult novices comparing it to two programming approaches in widespread use in industry. The results show participants using the block-based interface successfully implemented robot programs faster with no loss in accuracy while reporting higher scores for usability, learnability, and overall satisfaction. The contribution of this work is showing the potential for using block-based programming to make powerful technologies accessible to a wider audience.
Supplemental Material
Available for Download
- Brenna D. Argall, Sonia Chernova, Manuela Veloso, and Brett Browning. 2009. A survey of robot learning from demonstration. Robotics and autonomous systems 57, 5: 469--483. Google ScholarDigital Library
- A. Cory Bart, J. Tibau, D. Kafura, C. A. Shaffer, and E. Tilevich. 2017. Design and Evaluation of a Blockbased Environment with a Data Science Context. IEEE Transactions on Emerging Topics in Computing PP, 99: 1--1.Google Scholar
- David Bau. 2015. Droplet, a blocks-based editor for text code. Journal of Computing Sciences in Colleges 30, 6: 138--144. Google ScholarDigital Library
- David Bau, Jeff Gray, Caitlin Kelleher, Josh Sheldon, and Franklyn Turbak. 2017. Learnable programming: blocks and beyond. Communications of the ACM 60, 6: 72--80. Google ScholarDigital Library
- A Begel and E Klopfer. 2007. Starlogo TNG: An introduction to game development. Journal of ELearning.Google Scholar
- Geoffrey Biggs and Bruce MacDonald. 2003. A survey of robot programming systems. In Proceedings of the Australasian conference on robotics and automation, 1--10.Google Scholar
- Aude Billard, Sylvain Calinon, Ruediger Dillmann, and Stefan Schaal. 2008. Robot programming by demonstration. In Springer handbook of robotics. Springer, 1371--1394.Google Scholar
- Rainer Bischoff, Arif Kazi, and Markus Seyfarth. 2002. The MORPHA style guide for icon-based programming. In Robot and Human Interactive Communication, 2002. Proceedings. 11th IEEE International Workshop on, 482--487.Google ScholarCross Ref
- Douglas Blank, Deepak Kumar, Lisa Meeden, and Holly Yanco. 2006. The Pyro toolkit for AI and robotics. AI magazine 27, 1: 39.Google Scholar
- Cynthia Breazeal and Brian Scassellati. 2002. Robots that imitate humans. Trends in cognitive sciences 6, 11: 481--487.Google Scholar
- Brian Broll, Akos Lédeczi, Peter Volgyesi, Janos Sallai, Miklos Maroti, Alexia Carrillo, Stephanie L. Weeden-Wright, Chris Vanags, Joshua D. Swartz, and Melvin Lu. 2017. A Visual Programming Environment for Learning Distributed Programming. In Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education (SIGCSE '17), 81--86. Google ScholarDigital Library
- J. Edward Colgate, J. Edward, Michael A. Peshkin, and Witaya Wannasuphoprasit. 1996. Cobots: Robots For Collaboration With Human Operators.Google Scholar
- S. Cooper, W. Dann, and R. Pausch. 2000. Alice: a 3D tool for introductory programming concepts. Journal of Computing Sciences in Colleges 15, 5: 107--116. Google ScholarDigital Library
- C Duncan, T Bell, and S Tanimoto. 2014. Should Your 8-year-old Learn Coding? In Proceedings of the 9th Workshop in Primary and Secondary Computing Education (WiPSCE '14), 60--69. Google ScholarDigital Library
- Sarah Esper, Stephen R. Foster, and William G. Griswold. 2013. CodeSpells: embodying the metaphor of wizardry for programming. In Proceedings of the 18th ACM conference on Innovation and technology in computer science education, 249--254. Google ScholarDigital Library
- Annette Feng, Eli Tilevich, and Wu-chun Feng. 2015. Block-based programming abstractions for explicit parallel computing. In Blocks and Beyond Workshop (Blocks and Beyond), 2015 IEEE, 71--75. Google ScholarDigital Library
- D Franklin, G Skifstad, R Rolock, I Mehrotra, V Ding, A Hansen, D Weintrop, and D Harlow. 2017. Using Upper-Elementary Student Performance to Understand Conceptual Sequencing in a Blocks-based Curriculum. In Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education (SIGCSE '17), 231--236. Google ScholarDigital Library
- N. Fraser. 2015. Ten things we've learned from Blockly. In 2015 IEEE Blocks and Beyond Workshop (Blocks and Beyond), 49--50. Google ScholarDigital Library
- E. Freund and B. Luedemann-Ravit. 2002. A system to automate the generation of program variants for industrial robot applications. In IEEE/RSJ International Conference on Intelligent Robots and Systems, 1856--1861 vol.2.Google Scholar
- Thomas A. Fuhlbrigge, Gregory Rossano, Hui Zhang, Jianjun Wang, and Zhongxue Gan. 2010. Method and apparatus for developing a metadata-infused software program for controlling a robot.Google Scholar
- Shuchi Grover, Roy Pea, and Stephen Cooper. 2015. Designing for deeper learning in a blended computer science course for middle school students. Computer Science Education 25, 2: 199--237.Google ScholarCross Ref
- Martin Hägele, Walter Schaaf, and Evert Helms. 2002. Robot assistants at manual workplaces: Effective cooperation and safety aspects. In Proceedings of the 33rd ISR (International Symposium on Robotics), 7-- 11.Google Scholar
- Robert Hopler and Martin Otter. 2001. A versatile C++ toolbox for model based, real time control systems of robotic manipulators. In Intelligent Robots and Systems, 2001. Proceedings. 2001 IEEE/RSJ International Conference on, 2208--2214.Google ScholarCross Ref
- M. S Horn, C Brady, A Hjorth, A Wagh, and U Wilensky. 2014. Frog pond: a codefirst learning environment on evolution and natural selection. In Proceedings of the 2014 conference on Interaction design and children, 357--360. Google ScholarDigital Library
- Andri Ioannidou, Alexander Repenning, and David C. Webb. 2009. AgentCubes: Incremental 3D end-user development. Journal of Visual Languages & Computing 20, 4: 236--251. Google ScholarDigital Library
- C. Kelleher and R. Pausch. 2005. Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers. ACM Computing Surveys 37, 2: 83--137. Google ScholarDigital Library
- S. Kock, T. Vittor, B. Matthias, H. Jerregard, M. Källman, I. Lundberg, R. Mellander, and M. Hedelind. 2011. Robot concept for scalable, flexible assembly automation: A technology study on a harmless dualarmed robot. In 2011 IEEE International Symposium on Assembly and Manufacturing (ISAM), 1--5.Google Scholar
- Daisuke Kushida, Masatoshi Nakamura, Satoru Goto, and Nobuhiro Kyura. 2001. Human direct teaching of industrial articulated robot arms based on force-free control. Artificial Life and Robotics 5, 1: 26--32.Google ScholarCross Ref
- Tom Lauwers and Illah Nourbakhsh. 2010. Designing the finch: Creating a robot aligned to computer science concepts. In AAAI Symposium on Educational Advances in Artificial Intelligence.Google Scholar
- Lego Systems Inc. 2008. Lego Mindstorms NXT-G Invention System. Retrieved from http://mindstorms.lego.comGoogle Scholar
- Makeblock Co., Ltd. 2017. mBot. Retrieved September 18, 2017 from http://www.makeblock.com/Google Scholar
- J. H Maloney, M Resnick, N Rusk, B Silverman, and E Eastmond. 2010. The Scratch programming language and environment. ACM Transactions on Computing Education (TOCE) 10, 4: 16. Google ScholarDigital Library
- J Maloney, M Nagle, and J Mönig. 2017. GP: A General Purpose Blocks-Based Language. In Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education (SIGCSE '17), 739--739. Google ScholarDigital Library
- Microbric Pty, Ltd. 2017. Edison Programmable Robot. Retrieved from https://meetedison.com/Google Scholar
- Brad A. Myers. 1990. Taxonomies of visual programming and program visualization. Journal of Visual Languages & Computing 1, 1: 97--123. Google ScholarDigital Library
- Ozobot & Evollve, Inc. 2017. Ozobot. Retrieved from http://ozobot.com/Google Scholar
- Zengxi Pan, Joseph Polden, Nathan Larkin, Stephen Van Duin, and John Norrish. 2012. Recent progress on programming methods for industrial robots. Robotics and Computer-Integrated Manufacturing 28, 2: 87--94. Google ScholarDigital Library
- J. N. Pires, K. Nilsson, and H. G. Petersen. 2005. Industrial robotics applications and industry-academia cooperation in Europe. IEEE Robotics Automation Magazine 12, 3: 5--6.Google ScholarCross Ref
- Mitchell Resnick, Brian Silverman, Yasmin Kafai, John Maloney, Andrés Monroy-Hernández, Natalie Rusk, Evelyn Eastmond, Karen Brennan, Amon Millner, Eric Rosenbaum, and Jay Silver. 2009. Scratch: Programming for all. Communications of the ACM 52, 11: 60. Google ScholarDigital Library
- Wolfgang Slany. 2014. Tinkering with Pocket Code, a Scratch-like programming app for your smartphone. In Proceedings of Constructionism 2014.Google Scholar
- A. Strauss and J. Corbin. 1994. Grounded Theory Methodology: An Overview. In Strategies of Qualitative Inquiry. Sage Publications, Inc, Thousand Oaks, CA, 158--183.Google Scholar
- D. Weintrop, D. C. Shepherd, P. Francis, and D. Franklin. 2017. Blockly goes to work: Block-based programming for industrial robots. In 2017 IEEE Blocks and Beyond Workshop, 29--36.Google Scholar
- D Weintrop and U Wilensky. In Press. Comparing Blocks-based and Text-based Programming in High School Computer Science Classrooms. ACM Transactions on Computing Education (TOCE). Google ScholarDigital Library
- D. Weintrop and U. Wilensky. 2012. RoboBuilder: A program-to-play constructionist video game. In Proceedings of the Constructionism 2012 Conference.Google Scholar
- D Weintrop and U. Wilensky. 2015. To Block or Not to Block, That is the Question: Students' Perceptions of Blocks-based Programming. In Proceedings of the 14th International Conference on Interaction Design and Children (IDC '15), 199--208. Google ScholarDigital Library
- M. H. Wilkerson-Jerde and U. Wilensky. 2010. Restructuring Change, Interpreting Changes: The DeltaTick Modeling and Analysis Toolkit. In Proceedings of the Constructionism 2010 Conference.Google Scholar
- David Wolber, Hal Abelson, Ellen Spertus, and Liz Looney. 2014. App Inventor 2: Create Your Own Android Apps. O'Reilly Media, Beijing. Google ScholarDigital Library
- Wonder Workshop, Inc. 2017. Dash & Dot. Retrieved from https://www.makewonder.com/Google Scholar
- Y. F. Yong and M. C. Bonney. 1999. Off-Line Programming. In Handbook of Industrial Robotics, Shimon Y. Nof (ed.). John Wiley & Sons, Inc., 353-- 371.Google Scholar
- Open Roberta. Retrieved September 18, 2017 from https://www.open-roberta.org/en/welcome/Google Scholar
Index Terms
- Evaluating CoBlox: A Comparative Study of Robotics Programming Environments for Adult Novices
Recommendations
Evaluating CoBlox: A Comparative Study of Robotics Programming Environments for Adult Novices
CHI EA '18: Extended Abstracts of the 2018 CHI Conference on Human Factors in Computing SystemsA new wave of collaborative robots designed to work alongside humans is bringing the automation historically seen in large-scale industrial settings to new, diverse contexts. However, the ability to program these machines often requires years of ...
Experience Helps, but It Isn't Everything: Exploring Causes of Affective State in Novice Programmers
SIGCSE 2024: Proceedings of the 55th ACM Technical Symposium on Computer Science Education V. 2Affective state, referring to an individual's feeling, can impact students' confidence and retention in CS, particularly for novice programmers. However, little research has been conducted to examine how moments that occur during programming impact ...
Scratch and Google Blockly: How Girls' Programming Skills and Attitudes are Influenced
Koli Calling '19: Proceedings of the 19th Koli Calling International Conference on Computing Education ResearchBlock-based programming has become popular to teach programming to young students in introductory programming environments. Nevertheless, in most western countries, girls show a lack of interest in computer science, including programming. This paper ...
Comments