Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3197091.3197105acmconferencesArticle/Chapter ViewAbstractPublication PagesiticseConference Proceedingsconference-collections
research-article

Instruction of introductory programming course using multiple contexts

Published: 02 July 2018 Publication History

Abstract

This paper describes the experience of redesigning a traditional CS1 programming course, utilizing traditional coding practices as well as microcontroller units (MCU) based coding, to provide multiple programming environments. The objective of this redesign is to improve the programming skills for engineering students by 1) providing them with program development experience in multiple contexts and 2) relating the initial programming experience to the typical notion of engineering through significant hardware experience. Typical CS1 courses are designed with an instructor led lecture focusing on the introduction of specific computer skills and languages while programming assignments and laboratories help strengthen these skills in the students. For this remodeling, in addition to the typical programming exercises, supplementary MCU based lab exercises were used to provide an additional, different programming target for increased learning and highlighting the complementary relationship between hardware and software. The outcomes of this effort demonstrate that the addition of a MCU to an introductory programming course can work as an effective motivator, providing the students with a secondary context to reinforce programming skills developed during the course, and that providing multiple contexts (traditional desktop programming and hardware-based programming) together can aid in learning and the transfer of knowledge.

References

[1]
Victor Adamchik and Ananda Gunawardena. 2005. Adaptive book: Teaching and learning environment for programming education. In Information Technology: Coding and Computing, 2005. ITCC 2005. International Conference on, Vol. 1. IEEE, 488–492.
[2]
John E Bean and John P Dempsey. 2007. Collaboration between Engineering Departments at Clarkson University for a Freshman-Level Engineering Programming Course Including an Experimental Lab Experience. In CIEC 2007 Conference, 4p.
[3]
Jens Bennedsen and Michael E Caspersen. 2007. Failure rates in introductory programming. AcM SIGcSE Bulletin 39, 2 (2007), 32–36.
[4]
David E Clough, Steven C Chapra, and Gary S Huvard. 2001. A change in approach to engineering computing for freshmen–similar directions at three dissimilar institutions. age 6 (2001), 1.
[5]
Mauricio A Colombo, María Rosa Hernández, and Jorge E Gatica. 2000. Combining high-level programming languages and spreadsheets an alternative route for teaching process synthesis and design. age 5 (2000), 2.
[6]
Thomas J Cortina. 2007. An introduction to computer science for non-majors using principles of computation. In ACM SIGCSE Bulletin, Vol. 39. ACM, 218–222.
[7]
Michael Davis. 1998. Thinking like an engineer: Studies in the ethics of a profession. (1998).
[8]
Barry S Fagin, Laurence D Merkle, and Thomas W Eggers. 2001. Teaching computer science with robotics using Ada/Mindstorms 2.0. In ACM SIGAda Ada Letters, Vol. 21. ACM, 73–78.
[9]
Mark Goadrich. 2014. Incorporating tangible computing devices into CS1. Journal of Computing Sciences in Colleges 29, 5 (2014), 23–31.
[10]
Louis S Nadelson and Janet Callahan. 2011. A comparison of two engineering outreach programs for adolescents. Journal of STEM Education: Innovations and Research 12, 1/2 (2011), 43.
[11]
Carmen Fernández Panadero, Julio Villena Román, and Carlos Delgado Kloos. 2010. Impact of learning experiences using LEGO Mindstorms® in engineering courses. In Education Engineering (EDUCON), 2010 IEEE. IEEE, 503–512.
[12]
Julián Ramos, María A Trenas, Eladio Gutiérrez, and Sergio Romero. 2013. Eassessment of Matlab assignments in Moodle: Application to an introductory programming course for engineers. Computer Applications in Engineering Education 21, 4 (2013), 728–736.
[13]
Jerry Schumacher, Don Welch, and David Raymond. 2001. Teaching introductory programming, problem solving and information technology with robots at West Point. In Frontiers in Education Conference, 2001. 31st Annual, Vol. 2. IEEE, F1B–2.
[14]
Hugh Smith. {n. d.}. Microcontroller Based Introduction to Computer Engineering. ({n. d.}).
[15]
Lynda Thomas, Mark Ratcliffe, John Woodbury, and Emma Jarman. 2002. Learning styles and performance in the introductory programming sequence. In ACM SIGCSE Bulletin, Vol. 34. ACM, 33–37.
[16]
Christopher Watson and Frederick WB Li. 2014. Failure rates in introductory programming revisited. In Proceedings of the 2014 conference on Innovation & technology in computer science education. ACM, 39–44.
[17]
Dianna Xu, Douglas Blank, and Deepak Kumar. 2008. Games, robots, and robot games: complementary contexts for introductory computing education. In Proceedings of the 3rd international conference on Game development in computer science education. ACM, 66–70. Abstract 1 Introduction 2 Related Works 3 Course Description 3.1 Course Hardware 3.2 Laboratory Assignments 4 Evaluation 5 Lessons Learned 6 Conclusion Acknowledgments References

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ITiCSE 2018: Proceedings of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education
July 2018
394 pages
ISBN:9781450357074
DOI:10.1145/3197091
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: 02 July 2018

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Introductory Programming
  2. Knowledge Transfer
  3. Microcontroller
  4. Multiple Contexts

Qualifiers

  • Research-article

Conference

ITiCSE '18
Sponsor:

Acceptance Rates

Overall Acceptance Rate 552 of 1,613 submissions, 34%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 136
    Total Downloads
  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 04 Oct 2024

Other Metrics

Citations

View Options

Get Access

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