[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/1734263.1734341acmconferencesArticle/Chapter ViewAbstractPublication PagessigcseConference Proceedingsconference-collections
research-article

Introducing concurrency in CS 1

Published: 10 March 2010 Publication History

Abstract

Because of the growing importance of concurrent programming, many people are trying to figure out where in the curriculum to introduce students to concurrency. In this paper we discuss the use of concurrency in an introductory computer science course. This course, which has been taught for ten years, introduces concurrency in the context of event-driven programming. It also makes use of graphics and animations with the support of a library that reduces the syntactic overhead of using these constructs. Students learn to use separate threads in a way that enables them to write programs that match their intuitions of the world. While the separate threads do interact, programs are selected so that race conditions are generally not an issue.

References

[1]
Computing curricula 2001. J. Educ. Resour. Comput., page 1.
[2]
M. Ben-Ari and Y. B.-D. Kolikant. Thinking parallel: the process of learning concurrency. In ITiCSE '99: Proceedings of the 4th annual SIGCSE/SIGCUE ITiCSE conference on Innovation and technology in computer science education, pages 13--16, New York, NY, USA, 1999. ACM.
[3]
K.B. Bruce, A. Danyluk, and T. Murtagh. Java: An eventful approach. Prentice Hall, 2006.
[4]
D.J. Ernst and D.E. Stevenson. Concurrent CS: preparing students for a multicore world. In ITiCSE '08: Proceedings of the 13th annual conference on Innovation and technology in computer science education, pages 230--234, New York, NY, USA, 2008. ACM.
[5]
Interim Review Task Force. Computer science curriculum 2008: An interim revision of CS 2001. Technical report, ACM/IEEE CS, 2008.
[6]
K.E. Sanders and A. van Dam. Object-Oriented Programming in Java: A Graphical Approach. Addison-Wesley, 2006.
[7]
L.A. Stein. What we've swept under the rug: Radically rethinking CS 1. Computer Science Education, 8(2):118--129, 1998.
[8]
H. Sutter. The free lunch is over: a fundamental turn toward concurrency in software. Dr. Dobb's Journal, 30(3), 2005.
[9]
H. Sutter and J. Larus. Software and the concurrency revolution. Queue, 3(7):54--62, 2005.

Cited By

View all
  • (2023)Lecture-Less Java-Threads Training in an Hour?2023 IEEE 30th International Conference on High Performance Computing, Data and Analytics Workshop (HiPCW)10.1109/HiPCW61695.2023.00010(7-14)Online publication date: 18-Dec-2023
  • (2022)Pictoch: A Block-based Programming Learning Environment through Pictogram Content Creation2022 IEEE Global Engineering Education Conference (EDUCON)10.1109/EDUCON52537.2022.9766570(73-78)Online publication date: 28-Mar-2022
  • (2022)Has the time come to teach parallel programming to secondary school students?Heliyon10.1016/j.heliyon.2021.e086628:1(e08662)Online publication date: Jan-2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
SIGCSE '10: Proceedings of the 41st ACM technical symposium on Computer science education
March 2010
618 pages
ISBN:9781450300063
DOI:10.1145/1734263
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: 10 March 2010

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. concurrency
  2. cs 1
  3. java
  4. objectdraw

Qualifiers

  • Research-article

Conference

SIGCSE10
Sponsor:

Acceptance Rates

Overall Acceptance Rate 1,595 of 4,542 submissions, 35%

Upcoming Conference

SIGCSE TS 2025
The 56th ACM Technical Symposium on Computer Science Education
February 26 - March 1, 2025
Pittsburgh , PA , USA

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)13
  • Downloads (Last 6 weeks)4
Reflects downloads up to 11 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Lecture-Less Java-Threads Training in an Hour?2023 IEEE 30th International Conference on High Performance Computing, Data and Analytics Workshop (HiPCW)10.1109/HiPCW61695.2023.00010(7-14)Online publication date: 18-Dec-2023
  • (2022)Pictoch: A Block-based Programming Learning Environment through Pictogram Content Creation2022 IEEE Global Engineering Education Conference (EDUCON)10.1109/EDUCON52537.2022.9766570(73-78)Online publication date: 28-Mar-2022
  • (2022)Has the time come to teach parallel programming to secondary school students?Heliyon10.1016/j.heliyon.2021.e086628:1(e08662)Online publication date: Jan-2022
  • (2021)A Survey of Teaching PDC Content in Undergraduate Curriculum2021 IEEE 11th Annual Computing and Communication Workshop and Conference (CCWC)10.1109/CCWC51732.2021.9376037(1306-1312)Online publication date: 27-Jan-2021
  • (2021)Techniques and tools for visually introducing freshmen to object-based thread abstractionsJournal of Parallel and Distributed Computing10.1016/j.jpdc.2021.05.013Online publication date: Jun-2021
  • (2020)Teaching Abstraction in Computer Science to 7th Grade StudentsACM Transactions on Computing Education10.1145/337214320:1(1-37)Online publication date: 27-Jan-2020
  • (2020)Enrich a data structures course with parallelism2020 IEEE Frontiers in Education Conference (FIE)10.1109/FIE44824.2020.9274221(1-5)Online publication date: 21-Oct-2020
  • (2019)Visually Introducing Freshmen to Low-Level Java Abstractions for Creating, Synchronizing and Coordinating Threads2019 26th International Conference on High Performance Computing, Data and Analytics Workshop (HiPCW)10.1109/HiPCW.2019.00022(56-63)Online publication date: Dec-2019
  • (2019)Assessing the Integration of Parallel and Distributed Computing in Early Undergraduate Computer Science Curriculum using Unplugged Activities2019 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC)10.1109/EduHPC49559.2019.00008(17-24)Online publication date: Nov-2019
  • (2018)Introductory programming: a systematic literature reviewProceedings Companion of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education10.1145/3293881.3295779(55-106)Online publication date: 2-Jul-2018
  • Show More Cited By

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