2,142
Views
36
CrossRef citations to date
0
Altmetric
Articles

The effects of first programming language on college students’ computing attitude and achievement: a comparison of graphical and textual languages

ORCID Icon, , , &
Pages 23-48 | Received 21 Mar 2018, Accepted 03 Nov 2018, Published online: 15 Nov 2018

References

  • Abelson, H., Baldwin, L., Friedman, M., Lipman, D., Sheldon, J., Sherman, M., & Wolber, D. (2014). Real programmers use blocks – A new definition of who is a programmer [Blog post]. Retrieved from http://blog.csta.acm.org/2014/10/28/real-programmers-use-blocks-a-new-definition-of-who-is-a-programmer/
  • Alexandron, G., Armoni, M., Gordon, M., & Harel, D. (2012). The effect of previous programming experience on the learning of scenario-based programming. Proceedings of the 12th Koli Calling International Conference on Computing Education Research, Koli, Finland.
  • Anderson, N., Lankshear, C., Timms, C., & Courtney, L. (2008). ‘Because it’s boring, irrelevant and I don’t like computers’: Why high school girls avoid professionally-oriented ICT subjects. Computers & Education, 50(4), 1304–1318.
  • Badashian, A. S., Esteki, A., Gholipour, A., Hindle, A., & Stroulia, E. (2014). Involvement, contribution and influence in GitHub and stack overflow. Proceedings of 24th Annual International Conference on Computer Science and Software Engineering, Markham, Ontario, Canada.
  • Bau, D., Gray, J., Kelleher, C., Sheldon, J., & Turbak, F. (2017). Learnable programming: Blocks and beyond. Communications of the ACM, 60(6), 72–80.
  • Ben Arfa Rabai, L., Cohen, B., & Mili, A. (2015). Programming language use in US academia and industry. Informatics in Education, 14(2), 143–160.
  • Bergin, S., & Reilly, R. (2005). Programming: Factors that influence success. Proceedings of the 36th SIGCSE technical symposium on Computer science education, St. Louis, Missouri, USA.
  • Bers, M. U. (2010). The TangibleK Robotics program: Applied computational thinking for young children. Early Childhood Research & Practice, 12(2), n2.
  • Brennan, K., & Resnick, M. (2013). Imagining, creating, playing, sharing, reflecting: How online community supports young people as designers of interactive media. In N. Lavigne & C. Mouza (Eds.), Emerging Technologies for the Classroom: A Learning Sciences Perspective (pp. 253–268). New York, NY: Springer.
  • Brennan, K. (2013). Learning computing through creating and connecting. Computer, 46(9), 52–59.
  • Brennan, K., Valverde, A., Prempeh, J., Roque, R., & Chung, M. (2011). More than code: The significance of social interactions in young people’s development as interactive media creators. In EdMedia: World Conference on Educational Media and Technology (pp. 2147–2156). Association for the Advancement of Computing in Education (AACE), Lisbon, Portugal .
  • Brown, N., Stevens, P., & Kölling, K. M. (2010). Greenroom: A teacher community for collaborative resource development. Proceedings of the Fifteenth Annual Conference on Innovation and technology in computer science education, Bilkent, Ankara, Turkey.
  • Charlton, J. P., & Birkett, P. E. (1999). An integrative model of factors related to computing course performance. Journal of Educational Computing Research, 20(3), 237–257.
  • Cheung, J. C. Y., Ngai, G., Chan, S. C. F., & Lau, W. W. Y. (2009). Filling the gap in programming instruction: A text-enhanced graphical programming environment for junior high students. SIGCSE Bulletin, 41(1), 276–280.
  • Cooper, S., Grover, S., Guzdial, M., & Simon, B. (2014). A future for computing education research. Communications of the ACM, 57(11), 34–36.
  • Cuny, J., Baxter, D. A., Garcia, D. D., Gray, J., & Morelli, R. (2014). CS principles professional development: Only 9,500 to go!. Proceedings of the 45th ACM technical symposium on Computer science education, Atlanta, GA.
  • Dehouck, R. (2016). The maturity of visual programming. Retrieved from http://www.craft.ai/blog/the-maturity-of-visual-programming/
  • Denner, J., & Werner, L. (2007). Computer programming in middle school: How pairs respond to challenges. Journal of Educational Computing Research, 37(2), 131–150.
  • Dingle, A., & Zander, C. (2000). Assessing the ripple effect of CS1 language choice. Journal of Computing Sciences in Colleges, 16(2), 85–93.
  • DiSalvo, B. (2014). Graphical qualities of educational technology: Using drag-and-drop and text-based programs for introductory computer science. IEEE Computer Graphics and Applications, 34(6), 12–15.
  • Du, J., Wimmer, H., & Rada, R. (2016). “Hour of Code”: can it change students’ attitudes toward programming? Journal of Information Technology Education: Innovations in Practice, 15, 52–73.
  • Enbody, R. J., & Punch, W. F. (2010). Performance of python CS1 students in mid-level non-python CS courses. Proceedings of the 41st ACM technical symposium on Computer science education, Milwaukee, WI.
  • Fessakis, G., Gouli, E., & Mavroudi, E. (2013). Problem solving by 5–6 years old kindergarten children in a computer programming environment: A case study. Computers & Education, 63, 87–97.
  • Gal-Ezer, J., & Harel, D. (1998). What (else) should CS educators know? Communications in the ACM, 41(9), 77–84.
  • Gelman, A., & Hill, J. (2006). Data analysis using regression and multilevel/hierarchical models. New York, NY: Cambridge university press.
  • Gilmore, D. J., & Green, T. R. G. (1984). Comprehension and recall of miniature programs. International Journal of Man-Machine Studies, 21, 31–48.
  • Gomes, A. J., Santos, Á. N., & Mendes, A. J. (2012). A study on students’ behaviours and attitudes towards learning to program. Proceedings of the 17th ACM annual conference on Innovation and technology in computer science education, Haifa, Israel.
  • Goode, J. (2008). Increasing Diversity in K-12 computer science: Strategies from the field. ACM SIGCSE Bulletin, 40(1), 362–366.
  • Goode, J., Chapman, G., & Margolis, J. (2012). Beyond curriculum: The exploring computer science program. ACM Inroads, 3(2), 47–53.
  • Goosen, L. (2008). A brief history of choosing first programming languages. History of Computing and Education 3 (HCE3), 269, 167–170.
  • Grover, S., Pea, R., & Cooper, S. (2014). Remedying misperceptions of computer science among middle school students. Proceedings of the 45th ACM technical symposium on Computer science education, Atlanta, Georgia, USA.
  • Gu, X. S., & Rosenbaum, P. R. (1993). Comparison of multivariate matching methods: Structures, distances, and algorithms. Journal of Computational and Graphical Statistics, 2(4), 405–420.
  • Harvey, B., & Mönig, J. (2010). Bringing “no ceiling” to scratch: Can one language serve kids and computer scientists. Constructionism, 2010, 1–10.
  • Hewner, M., & Guzdial, M. (2008). Attitudes about computing in postsecondary graduates. Proceedings of the Fourth International Workshop on Computing Education Research, Sydney, Australia.
  • Ho, D. E., Imai, K., King, G., & Stuart, E. A. (2007). Matching as nonparametric preprocessing for reducing model dependence in parametric causal inference. Political Analysis, 15(3), 199–236.
  • Hotelling, H. (1933). Analysis of a complex of statistical variables into principal components. Journal of Educational Psychology, 24(6), 417.
  • Imai, K., Keele, L., Tingley, D., & Yamamoto, T. (2011). Unpacking the black box of causality: Learning about causal mechanisms from experimental and observational studies. American Political Science Review, 105(4), 765–789.
  • Kafai, Y. B., & Burke, Q. (2013). The social turn in K–12 programming: Moving from computational thinking to computational participation. Proceedings of the 44th ACM technical symposium on Computer science education, Denver, Colorado, USA. http://dl.acm.org/citation.cfm?doid=2445196.2445373.
  • Kafai, Y. B., & Burke, Q. (2014). Connected code: Why children need to learn programming. Cambridge, MA: MIT Press.
  • Kelleher, C., & Pausch, R. (2005). Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers. ACM Computing Surveys (CSUR), 37(2), 83–137.
  • Kelleher, C., Pausch, R., & Kiesler, S. (2007). Storytelling Alice motivates middle school girls to learn computer programming. Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, San Jose, California, USA.
  • King, G., & Nielsen, R. (2016). Why propensity scores should not be used for matching. http://j.mp/1sexgVw. Download Citation BibTex Tagged XML Download Paper, 378.
  • Kölling, M. (2010). The greenfoot programming environment. ACM Transactions on Computing Education (TOCE), 10(4), 14.
  • Kunkle, W. M., & Allen, R. B. (2016). The impact of different teaching approaches and languages on student learning of introductory programming concepts. ACM Transactions on Computing Education (TOCE), 16(1), 3.
  • Lau, W. W. F., & Yuen, A. H. K. (2011). Modelling programming performance: Beyond the influence of learner characteristics. Computers & Education, 57(1), 1202–1213.
  • Lee, M. J., Bahmani, F., Kwan, I., LaFerte, J., Charters, P., Horvath, A., & Beswetherick, M. (2014). Principles of a debugging-first puzzle game for computing education. 2014 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), Melbourne, Australia.
  • Lye, S. Y., & Koh, J. H. L. (2014). Review on teaching and learning of computational thinking through programming: What is next for K–12? Computers in Human Behavior, 41, 51–61.
  • Malan, D. J., & Leitner, H. H. (2007). Scratch for budding computer scientists. ACM SIGCSE Bulletin 39(1), 223–227.
  • Margolis, J., & Kafai, Y. (2014). Why the ‘coding for all’ movement is more than a boutique reform. Washington Post. Retrieved from https://www.washingtonpost.com/news/answer-sheet/wp/2014/10/17/why-the-coding-for-all-movement-is-more-than-a-boutique-reform.
  • Margolis, J., Ryoo, J. J., Sandoval, C. D., Lee, C., Goode, J., & Chapman, G. (2012). Beyond access: Broadening participation in high school computer science. ACM Inroads, 3(4), 72–78.
  • McIver, L. (2000). The effect of programming language on error rates of novice programmers. 12th Annual Workshop of the Psychology of Programming Interest Group, Cozenza, Italy (pp. 181–192).
  • Meerbaum-Salant, O., Armoni, M., & Ben-Ari, M. (2011). Habits of programming in scratch. In Proceedings of the 16th annual joint conference on Innovation and technology in computer science education, Darmstadt, Germany (pp. 168–172).
  • Mishra, S., Balan, S., Iyer, S., & Murthy, S. (2014). Effect of a 2-week scratch intervention in CS1 on learners with varying prior knowledge. Proceedings of the 2014 conference on Innovation & technology in computer science education, Uppsala, Sweden.
  • Montgomery, J. M., Nyhan, B., & Torres, M. (2018). How conditioning on posttreatment variables can ruin your experiment and what to do about it. American Journal of Political Science, 62(3), 760-775.
  • Moore, R. W., & Hill Foy, R. L. (1997). The scientific attitude inventory: A revision (SAI II). Journal of Research in Science Teaching, 34(4), 327–336.
  • Morrison, M., & Newman, T. S. (2001). A study of the impact of student background and preparedness on outcomes in CS I. In Proceedings of the thirty-second SIGCSE technical symposium on Computer Science Education (SIGCSE '01) (pp. 179-183). New York, NY: ACM. doi:10.1145/364447.364580.
  • Moskal, B., Lurie, D., Cooper, S., Moskal, B., Lurie, D., & Cooper, S. (2004). Evaluating the effectiveness of a new instructional approach. Proceedings of the 35th SIGCSE technical symposium on Computer science education, Norfolk, VA.
  • Mounfield, L. C., & Taylor, H. G. (1994). Exploration of the relationship between prior computing experience and gender on success in college computer science. Journal of Educational Computing Research, 11(4), 291–306.
  • Nickerson, J. V. (1995). Visual programming. New York, NY: New York University.
  • Papadakis, S., Kalogiannakis, M., Orfanakis, V., & Zaranis, N. (2014). Novice programming environments. Scratch & app inventor: A first comparison. Proceedings of the 2014 Workshop on Interaction Design in Educational Environments, Albacete, Spain  (p. 1).
  • Powers, K., Ecott, S., & Hirshfield, L. M. (2007). Through the looking glass: Teaching CS0 with Alice. In Proceedings of the 38th SIGCSE technical symposium on Computer science education (SIGCSE '07) (pp. 213-217). New York, NY: ACM. doi:10.1145/1227310.1227386.
  • Resnick, M., Maloney, J., Monroy-Hernandéz, A., Rusk, N., Eastmond, E., Brennan, K., & Kafai, Y. (2009). Scratch: Programming for all. Communications of the ACM, 52(11), 60–67.
  • Rizvi, M., & Humphries, T. (2012). A Scratch-based CS0 course for at-risk computer science majors. In Frontiers in Education Conference (FIE), 2012, Seattle, WA (pp. 1–5).
  • Rizvi, M., Humphries, T., Major, D., Jones, M., & Lauzun, H. (2011). A CS0 course using scratch. Journal of Computing Sciences in Colleges, 26(3), 19–27.
  • Robins, A., Rountree, J., & Rountree, N. (2003). Learning and teaching programming: A review and discussion. Computer Science Education, 13(2), 137–172.
  • Rosenbaum, P. R. (1984). The consequences of adjustment for a concomitant variable that has been affected by the treatment. Journal of the Royal Statistical Society. Series A (General), 147(5), 656–666.
  • Sáez-López, J. M., Román-González, M., & Vázquez-Cano, E. (2016). Visual programming languages integrated across the curriculum in elementary school: A two year case study using “Scratch” in five schools. Computers & Education, 97, 129–141.
  • Schollmeyer, M. (1996). Computer programming in high school vs. college. ACM SIGCSE Bulletin, 28(1), 378–382.
  • Schulte, C., & Knobelsdorf, M. (2007). Attitudes towards computer science-computing experiences as a starting point and barrier to computer science. Proceedings of the third international workshop on Computing education research, Atlanta, GA.
  • Statter, D., & Armoni, M. (2017). Learning abstraction in computer science: A gender perspective. Proceedings of the 12th Workshop on Primary and Secondary Computing Education, Nijmegen, Netherlands (pp. 5–14).
  • Stuart, E. A. (2010). Matching methods for causal inference: A review and a look forward. Statistical Science: A Review Journal of the Institute of Mathematical Statistics, 25(1), 1.
  • Tafliovich, A., Campbell, J., & Petersen, A. (2013). A student perspective on prior experience in CS1. Proceeding of the 44th ACM technical symposium on Computer science education, Denver, CO.
  • Techapalokul, P. (2017). Sniffing through millions of blocks for bad smells. Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education, Seattle, WA (pp. 781–782).
  • Thoemmes, F. J., & Kim, E. S. (2011). A systematic review of propensity score methods in the social sciences. Multivariate Behavioral Research, 46(1), 90–118.
  • TIOBE. (2016). TIOBE Index for August 2016. Retrieved from https://perma.cc/93D3-JJ5Q.
  • Uludag, S., Karakus, M., & Turner, S. W. (2011). Implementing IT0/CS0 with scratch, app inventor forandroid, and lego mindstorms. Proceedings of the 2011 conference on Information technology education, West Point, NY (pp. 183–190).
  • Ventura, P. R. (2005). Identifying predictors of success for an objects-first CS1. Computer Science Education, 15(3), 223–243.
  • Wang, S., Lo, D., & Jiang, L. (2013). An empirical study on developer interactions in StackOverflow. Proceedings of the 28th Annual ACM Symposium on Applied Computing, Coimbra, Portugal.
  • Watson, C., & Li, F. W. B. (2014). Failure rates in introductory programming revisited. Proceedings of the 2014 conference on Innovation & technology in computer science education, Uppsala, Sweden.
  • Weintrop, D., & Wilensky, U. (2015a). To block or not to block, that is the question: Students’ perceptions of blocks-based programming. Proceedings of the 14th International Conference on Interaction Design and Children, Boston, MA (pp. 199–208).
  • Weintrop, D., & Wilensky, U. (2015b). Using commutative assessments to compare conceptual understanding in blocks-based and text-based programs. Proceedings of the 11th Annual International Computing Education Research (ICER) conference. New York, NY: ACM.
  • Weintrop, D., & Wilensky, U. (2017). Comparing block-based and text-based programming in high school computer science classrooms. ACM Transactions on Computing Education (TOCE), 18(1), 3.
  • Wiedenbeck, S. (2005). Factors affecting the success of non-majors in learning to program. Proceedings of the first international workshop on Computing education research, Seattle, WA: USA.
  • Wilson, A., & Moffat, D. C. (2010). Evaluating Scratch to introduce younger schoolchildren to programming. Proceedings of the 22nd Annual Psychology of Programming Interest Group. Leganés, Spain: Universidad Carlos III de Madrid
  • Wilson, B. C. (2002). A study of factors promoting success in computer science including gender differences. Computer Science Education, 12(1–2), 141–164.
  • Wilson, B. C., & Shrock, S. (2001). Contributing to success in an introductory computer science course: A study of twelve factors. Proceedings of the thirty-second SIGCSE technical symposium on Computer Science Education, Charlotte, North Carolina, USA.
  • Wolz, U., Leitner, H. H., Malan, D. J., & Maloney, J. (2009). Starting with scratch in CS 1. ACM SIGCSE Bulletin, 41(1), 2–3.

Reprints and Corporate Permissions

Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?

To request a reprint or corporate permissions for this article, please click on the relevant link below:

Academic Permissions

Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?

Obtain permissions instantly via Rightslink by clicking on the button below:

If you are unable to obtain permissions via Rightslink, please complete and submit this Permissions form. For more information, please visit our Permissions help page.