skip to main content
10.1145/2858036.2858323acmconferencesArticle/Chapter ViewAbstractPublication PageschiConference Proceedingsconference-collections
research-article

Understanding Conversational Programmers: A Perspective from the Software Industry

Published:07 May 2016Publication History

ABSTRACT

Recent research suggests that some students learn to program with the goal of becoming conversational programmers: they want to develop programming literacy skills not to write code in the future but mainly to develop conversational skills and communicate better with developers and to improve their marketability. To investigate the existence of such a population of conversational programmers in practice, we surveyed professionals at a large multinational technology company who were not in software development roles. Based on 3151 survey responses from professionals who never or rarely wrote code, we found that a significant number of them (42.6%) had invested in learning programming on the job. While many of these respondents wanted to perform traditional end-user programming tasks (e.g., data analysis), we discovered that two top motivations for learning programming were to improve the efficacy of technical conversations and to acquire marketable skillsets. The main contribution of this work is in empirically establishing the existence and characteristics of conversational programmers in a large software development context.

References

  1. Andrew Begel and Beth Simon. 2008. Struggles of new college graduates in their first software development job. ACM SIGCSE, ACM, 226--230. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Margaret M. Burnett. 1999. "Visual programming," in Encyclopedia of Electrical and Electronics Engineering. John G. Webster, Ed. John Wiley and Sons Inc., NY.Google ScholarGoogle Scholar
  3. Margaret M. Burnett and Brad A. Myers. 2014. Future of end-user software engineering: beyond the silos. Proceedings of the on Future of Software Engineering, ACM, 201--211. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. José C. Castillo, H. Rex Hartson, and Deborah Hix. 1998. Remote usability evaluation: can users report their own critical incidents? CHI 98 Conference Summary on Human Factors in Computing Systems, ACM, 253--254. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Rory Cellan-Jones. 2014. A computing revolution in schools. BBC News. http://www.bbc.com/news/ technology-29010511Google ScholarGoogle Scholar
  6. Parmit K. Chilana, Celena Alcock, Shruti Dembla, Anson Ho, Ada Hurst, and Philip J. Guo. 2015. Perceptions of Non-CS Majors in Intro Programming: The Rise of the Conversational Programmer. Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC '15), 251--259.Google ScholarGoogle Scholar
  7. Edmund M. Clarke, Orna Grumberg, and Doron Peled. 1999. Model checking. MIT press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Herbert H. Clark and Susan E. Brennan. 1991. Grounding in communication. Perspectives on socially shared cognition 13: 127--149.Google ScholarGoogle Scholar
  9. John. C. Flanagan. 1954. The critical incident technique. Psychological bulletin 51, 4: 327--358.Google ScholarGoogle Scholar
  10. Paul Ford. 2015. What is code? Bloomberg Businessweek. http://www.bloomberg.com/graphics/ 2015-paul-ford-what-is-code/Google ScholarGoogle Scholar
  11. Andrea Forte and Mark Guzdial. 2005. Motivation and non-majors in computer science: identifying discrete audiences for introductory courses. IEEE Transactions on Education 48, 2: 248--253. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Mark Guzdial. 2003. A media computation course for non-majors. ACM SIGCSE, ACM, 104--108. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Mark Guzdial. 2004. Programming environments for novices. Computer science education research 127--154.Google ScholarGoogle Scholar
  14. Mark Guzdial and Andrea Forte. 2005. Design process for a non-majors computing course. ACM SIGCSE, ACM, 361--365. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Michael Hewner and Mark Guzdial. 2010. What game developers look for in a new graduate: interviews and surveys at one game company. Proceedings of the 41st ACM technical symposium on Computer science education, ACM, 275--279. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Caitlin Kelleher and Randy Pausch. 2005. Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers. ACM Computing Surveys (CSUR) 37, 2: 83--137. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Gary Klein, Paul J. Feltovich, Jeffrey M. Bradshaw, and David D. Woods. 2005. "Common ground and coordination in joint activity," in Organizational simulation. W.R. Rouse and K.B. Boff, eds., John Wiley & Sons Inc., NY.Google ScholarGoogle Scholar
  18. Andrew J. Ko, Robert Deline, and Gina Venolia. 2007. Information Needs in Collocated Software Development Teams. Proceedings of the 29th international conference on Software Engineering. IEEE Computer Society, 344--353. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Andrew J. Ko, Brad A. Myers, and HH Aung. 2004. Six Learning Barriers in End-User Programming Systems. Proceedings of the Symposium on Visual Languages and Human Centric Computing, IEEE, 199--206. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Henry Lieberman, Fabio Paternò, Markus Klann, and Volker Wulf. 2006. End-user development: An emerging paradigm. Springer. Google ScholarGoogle Scholar
  21. Paul Luo Li, Andrew J. Ko, and Jiamin Zhu. 2015. What makes a great software engineer? Proceedings of the 37th International Conference on Software Engineering, IEEE, 700--710. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Matthew Magain. 2013. How Much Code Should A UX Designer Write? http://uxmastery.com/how-much-codeshould-a-user-experience-designer-write/Google ScholarGoogle Scholar
  23. Lena Mamykina, Bella Manoim, Manas Mittal, George Hripcsak, and Bjoern Hartmann. 2011. Design lessons from the fastest q&a site in the west. Proceedings of the annual conference on Human factors in computing systems, ACM, 2857--2866. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Brad A. Myers. 1986. Visual programming, programming by example, and program visualization: a taxonomy. Proceedings of the annual conference on Human factors in computing systems ACM, 59--66. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Brad A. Myers and Andrew J. Ko. The Past, Present and Future of Programming in HCI. Human-Computer Interaction Consortium (HCIC 2009).Google ScholarGoogle Scholar
  26. Brad A. Myers, John F. Pane, and Andrew J. Ko. 2004. Natural programming languages and environments. Communications of the ACM 47, 9: 47--52. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Bonnie A. Nardi. 1993. A small matter of programming: perspectives on end user computing. MIT press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. John F. Pane, Brad Myers, and Leah B. Miller. 2002. Using HCI techniques to design a more usable programming system. Proceedings of Symposia on Human Centric Computing Languages and Environments, IEEE, 198--206. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Mitchel Resnick, John Maloney, Andrés MonroyHernández, Natalie Rusk, Evelyn Eastmond, Karen Brennan, Amon Millner, Eric Rosenbaum, Jay Silver, Brian Silverman, and Yasmin Kafai. 2009. Scratch: programming for all. Communications of the ACM 52, 11: 60--67. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Tobias Roehm, Rebecca Tiarks, Rainer Koschke, and Walid Maalej. 2012. How do professional developers comprehend software? Proceedings of the 34th International Conference on Software Engineering, IEEE, 255--265. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Douglas Rushkoff. 2010. Program or be programmed: Ten commands for a digital age. O/R Books, NY. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Christopher Scaffidi, Mary Shaw, and Brad Myers. 2005. Estimating the numbers of end users and end user programmers. Symposium on Visual Languages and Human-Centric Computing, IEEE, 207--214. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Nan C. Shu. 1988. Visual programming. Van Nostrand Reinhold NY. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Anselm L. Strauss and Juliet M. Corbin. 1998. Basics of Qualitative Research: Techniques and Procedures for Developing Grounded Theory. Sage Publications Inc.Google ScholarGoogle Scholar
  35. Nikolai Tillmann, Michal Moskal, Jonathan de Halleux, and Manuel Fahndrich. 2011. TouchDevelop: programming cloud-connected mobile devices via touchscreen. Proceedings of the SIGPLAN symposium on New ideas, new paradigms, and reflections on programming and software, ACM, 49--60. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Greg Wilson. 2006. Software carpentry. Computing in Science & Engineering 8: 66.Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Jeannette M. Wing. 2006. Computational thinking. Communications of the ACM 49, 3: 33--35. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. David Wolber. 2011. App inventor and real-world motivation. Proceedings of the ACM technical symposium on Computer science education, ACM, 601--606. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Understanding Conversational Programmers: A Perspective from the Software Industry

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        CHI '16: Proceedings of the 2016 CHI Conference on Human Factors in Computing Systems
        May 2016
        6108 pages
        ISBN:9781450333627
        DOI:10.1145/2858036

        Copyright © 2016 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 7 May 2016

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        CHI '16 Paper Acceptance Rate565of2,435submissions,23%Overall Acceptance Rate6,199of26,314submissions,24%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader