Teaching an Introductory Programming Course to Non-Computer Science Majors Using SageMath

Teaching an Introductory Programming Course to Non-Computer Science Majors Using SageMath

In this paper we propose an introduction to programming course using SageMath for non-ComputerScience majors. A course outline on developing and designing the course is briefly presented. Given the largenumber of packages available in SageMath, such a course could easily be tweaked to match the need of a diversestudent population, whether it is dominated by students majoring in Mathematics, Data Science, Computer Science,Information Technology, or a mix of these. We also include some course evaluation results from the first iterationof the course.

___

  • [1] Bard, G.V., Sage for undergraduates (online version). http://www.gregorybard.com/sage.html, retrieved Dec. 2018.
  • [2] Cass, S., The 2018 top programming languages. https://spectrum.ieee.org , 2017.
  • [3] Davis, J., 5 top languages for machine learning, data science. https://www.informationweek.com, retrieved Dec. 2018.
  • [4] Gaddis, T., Starting Out with Python (4th Edition), 2017.
  • [5] Guo, P., Python is now the most popular introductory teaching language at top U.S. universities. https://cacm.acm.org , retrieved Dec. 2018.
  • [6] Jochen, M., Introduction to computer programming course syllabus - fall 2012. http://quantum.esu.edu/ mjochen/Teaching/CPSC130/12f/, 2012.
  • [7] Lutz, M., Learning Python, 5th Edition, O’Reilly Media, 2013.
  • [8] Puget, J.F., The most popular language for machine learning is... https://www.ibm.com, retrieved Dec. 2018.
  • [9] Rufinus, J. and Kortsarts, Y., Teaching an introductory programming course for non-majors using Python., In Proc ISECON, v22 (ColumbusOH), 2005.
  • [10] Stein, W.A. et al., Sage quickstart for statistics. http://doc.sagemath.org, retrieved Dec. 2018.
  • [11] Stein, W.A. et al., SageMath - open-source mathematical software system. http://www.sagemath.org, retrieved Dec. 2018.
  • [12] Voskoglou, C., What is the best programming language for machine learning? https://towardsdatascience.com, retrieved Dec. 2018.
  • [13] Zelle, J., Python Programming: An Introduction to Computer Science, 3rd Ed., Franklin, Beedle & Associates, 2016.
  • [14] Zimmermann, P. et al., Computational mathematics with SageMath. http://www.sagemath.org, retrieved Dec. 2018.