Mark Lewis
1 min readAug 1, 2021

--

I wrote my first programs in the early 90s on a TI-99, but I don't want any of my students learning that way. It might be simple, but it also allows you to pick up a lot of bad habits that must later be unlearned. I realized this early in my teaching career when I had a student who arrived in college being a good BASIC programmer. He wanted to put everything in one huge function and he was good enough that he could make things work that way. I feel like the first 2-3 semesters of college were wasted on him because he could solve everything the wrong way. It wasn't until he got to the point where programs were bigger and needed to be edited in groups that he finally saw that all the habits of BASIC were really holding him back from writing good software. When I reflect back on it, I was probably similar other than I started writing and working with large programs a little earlier when my friends and I were editing the DikuMUD source to make out own version.

Indeed, I dislike Python as a teaching language for similar reasons. Dynamic typing, lack of block scope, lack of const, lack of private, ... For me, Python is a great scripting language for people who know what they are doing, but it should never be used to write real applications, nor should it be used to teach because it allows students to pick up lots of bad habits they have to unlearn later.

--

--

Mark Lewis
Mark Lewis

Written by Mark Lewis

Computer Science Professor, Planetary Rings Simulator, Scala Zealot

No responses yet