Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2897586.2897613acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
short-paper

Jimbo: a collaborative IDE with live preview

Published: 14 May 2016 Publication History

Abstract

Team collaboration plays a key role in the success of any multi-user activity. Software engineering is a highly collaborative activity, where multiple developers and designers work together to solve a common problem. Meaningful and effective designer-developer collaboration improves the user experience, which can improve the chances of success for the project. Learning to program is another activity that can be implemented in a more collaborative way, students can learn in an active style by working with others. The growth of online classes, from small structured seminars to massive open online courses (MOOCs), and the isolation and impoverished learning experience some students report in these, points to an urgent need for tools that support remote pair programming in a distributed educational setting.
In this paper, we describe Jimbo, a collaborative integrated development environment (IDE) that we believe is beneficial and effective in both aforementioned activities. Jimbo integrates many features that support better collaboration and communication between designers and developers, to bridge communication gaps and develop mutual understanding. These novel features can improve today's CS education by bringing students closer to each other and their instructors as well as training them to collaborate which is consistent with current practices in software engineering.

References

[1]
Sarma, A. A survey of collaborative tools in software development. Technical Report UCI-ISR-05-3, University of California, Irvine, Institute for Software Research, 2005.
[2]
Perry, D. Siy, H. and Votta, L. Parallel changes in large-scale software development: an observational case study. ACM TOSEM, 10:308--337, July 2001.
[3]
Grinter, R. Using a configuration management tool to coordinate software development. In CoOCS, pages 168--177, Milpitas, CA, USA, Aug. 1995.
[4]
Tanimoto, S. VIVA: A visual language for image processing, J. Vis. Languages Computing, 127--139, June 1990.
[5]
Dourish, P. and Bellotti, V. Awareness and coordination in shared workspaces. In ACM Conference on Computer-Supported Cooperative Work, pages 107--114, Monterey, California, USA, 1992.
[6]
Van der Hoek, A. and et al. Continuous coordination: A new paradigm for collaborative software engineering tools. In Proceedings of Workshop on WoDISEE, Scotland, 2004.
[7]
OMG. CORBACos: Notification Service Specification v1.0.1. 2002.
[8]
Horn, E. M., Collier, W. G., Oxford, J. A., Bond Jr, C. F., & Dansereau, D. F. Individual differences in dyadic cooperative learning. In Journal of Educational Psychology, 1998.
[9]
Williams, L. and Kessler, R. R. "Experimenting with Industry's 'Pair-Programming' Model in the Computer Science," Journal on SW Engineering Education, 2000.
[10]
O'Donnell, A. M. and Dansereu, D. F. "Scripted Cooperation in Student Dyads: A Method for Analyzing and Enhancing Academic Learning and Performance," in R. Hartz-Lazarowitz and N. Miller (Eds.) Interactions in Cooperative Groups: The Theoretical Anatomy of Group Learning, pages 120--141, London: Cambridge University Press, 1992.
[11]
McDowell, C., Werner, L., Bullock, H., & Fernald, J. (2002, February). The effects of pair programming on performance in an introductory programming course. In ACM SIGCSE Bulletin (Vol. 34, No. 1, pp. 38--42). ACM.
[12]
Berliner, B. CVS ii: Parallelizing software development. In USENIX Winter 1990 Technical Conference, pages 341--352, 1990.
[13]
Gaspar, A. Langevin, S. Active learning in introductory programming courses through student-led "live coding" and test-driven pair programming, EISTA 2007, Education and Information Systems, Technologies and Applications, July 12--15, Orlando, FL
[14]
Ellis, C. A. Gibbs, S. J. and Rein, G. L. Design and use of a group editor. In Engineering for Human Computer Interaction, pages 13--25, Amsterdam, 1990.
[15]
McGuffin, L. J. and Olson, G. Shredit: A shared electronic workspace. Technical Report 45, Cognitive Science and Machine Intelligence Laboratory, Tech reports: 45, University of Michigan, Ann Arbor, 1992.
[16]
Knister, M. J. and Prakash, A. Distedit: a distributed toolkit for supporting multiple group editors. In Proceedings of the 1990 ACM conference on Computer-supported cooperative work, Los Angeles, CA, 1990.
[17]
Carzaniga, A. Rosenblum, D. S. and Wolf, A. L. Design and evaluation of a wide-area event notification service. ACM Transactions on Computer Systems, 2001. ACM Trans. Comp. Sys.
[18]
Goldman, M. 2011. Role-based interfaces for collaborative software development. In Proceedings of the 24th annual ACM symposium adjunct on User interface software and technology (UIST '11 Adjunct). ACM, New York, NY, USA, 23--26.
[19]
Biehl, J. T. Czerwinski, M. Smith, G. and Robertson, G. G. FASTDash: A visual dashboard for fostering awareness in software teams. In CHI, pages 1313--1322, SanJose, CA, USA, Apr. 2007.
[20]
Schneider, K. A. Gutwin, C. Penner, R. and Paquette, D. Mining a Software Developer's Local Interaction History. MSR 2004, Edinburgh, 2004.
[21]
Al-Ani, B. Trainer, E. Ripley, R. Sarma, A. Hoek, A. and Redmiles, D. Continuous coordination within the context of cooperative and human aspects of soft- ware engineering. In CHASE, pages 1--4, Leipzig, Germany, May 2008.
[22]
Hattori, L. and Lanza, M. Syde: A tool for collaborative software development. In ICSE Tool Demo, pages 235--238, Cape Town, South Africa, May 2010.
[23]
Brun, Y. Holmes, R. Ernst, M. and Notkin, D. 2011. Proactive detection of collaboration conflicts. In Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering (ESEC/FSE '11). ACM, New York, NY, USA, 168--178.
[24]
Cheng, L. Hupfer, S. Ross, S. and Patterson, J. Jazzing up eclipse with collaborative tools. In 18th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications / Eclipse Technology Exchange Workshop, pages 102--103, Anaheim, CA, 2003.
[25]
Hancock, C. M. Real-time programming and the big ideas of computational literacy. PhD thesis, Massachusetts Institute of Technology, 2003.
[26]
McDirmid, S. Living it up with a live programming language. In Proc. of OOPSLA Onward!, pages 623--638, October 2007.
[27]
Krahn, R. Ingalls, D. Hirschfeld, R. Lincke, J. and Palacz, K. 2009. Lively Wiki a development environment for creating and sharing active web content. In Proceedings of the 5th International Symposium on Wiki and Open Collaboration (WikiSym'09). ACM, New York, NY, USA.
[28]
Adobe Brackets, http://brackets.io.
[29]
Resig, J. Redefining the introduction to computer science. http://ejohn.org/blog/introducing-khan-cs/, 2012.
[30]
McDirmid, S. (2013, October). Usable live programming. In Proceedings of the 2013 ACM international symposium on New ideas, new paradigms, and reflections on programming & software (pp. 53--62). ACM.

Cited By

View all
  • (2023)Understanding Collaborative Practices and Tools of Professional UX Practitioners in Software OrganizationsProceedings of the 2023 CHI Conference on Human Factors in Computing Systems10.1145/3544548.3581273(1-20)Online publication date: 19-Apr-2023
  • (2022)Distributed Pair Programming in Higher Education: A Systematic Literature ReviewJournal of Educational Computing Research10.1177/0735633122112288461:3(546-577)Online publication date: 20-Sep-2022
  • (2022)NCCollab: collaborative behavior tree authoring in game developmentMultimedia Tools and Applications10.1007/s11042-022-12307-282:3(4671-4708)Online publication date: 13-Apr-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
CHASE '16: Proceedings of the 9th International Workshop on Cooperative and Human Aspects of Software Engineering
May 2016
142 pages
ISBN:9781450341554
DOI:10.1145/2897586
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 14 May 2016

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. IDE
  2. Jimbo
  3. collaboration
  4. collaborative learning
  5. communication
  6. designer-developer collaboration
  7. distance learning
  8. live preview
  9. pair programming
  10. user awareness
  11. web development

Qualifiers

  • Short-paper

Conference

ICSE '16
Sponsor:

Acceptance Rates

Overall Acceptance Rate 47 of 70 submissions, 67%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)14
  • Downloads (Last 6 weeks)1
Reflects downloads up to 09 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2023)Understanding Collaborative Practices and Tools of Professional UX Practitioners in Software OrganizationsProceedings of the 2023 CHI Conference on Human Factors in Computing Systems10.1145/3544548.3581273(1-20)Online publication date: 19-Apr-2023
  • (2022)Distributed Pair Programming in Higher Education: A Systematic Literature ReviewJournal of Educational Computing Research10.1177/0735633122112288461:3(546-577)Online publication date: 20-Sep-2022
  • (2022)NCCollab: collaborative behavior tree authoring in game developmentMultimedia Tools and Applications10.1007/s11042-022-12307-282:3(4671-4708)Online publication date: 13-Apr-2022
  • (2020)Collaborative Visual Programming Workspace for Blockly2020 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC)10.1109/VL/HCC50065.2020.9127253(1-6)Online publication date: Aug-2020
  • (2019)Programmer eXperience: A Systematic Literature ReviewIEEE Access10.1109/ACCESS.2019.29201247(71079-71094)Online publication date: 2019
  • (2018)An Analysis of the Collaborative Aspects of Pair Programming Support ToolsProceedings of the XIV Brazilian Symposium on Information Systems10.1145/3229345.3229348(1-8)Online publication date: 4-Jun-2018
  • (2017)Integrating Collaborative and Live Coding for Distance EducationComputer10.1109/MC.2017.13150:5(27-35)Online publication date: 1-May-2017
  • (2017)Harmonik = ++(Web IDE)Procedia Computer Science10.1016/j.procs.2017.10.044116:C(222-231)Online publication date: 1-Nov-2017

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media