Teaching Programming Part 1

In my experience people generally teach programming poorly. A paper I wrote about this “Incorporating Gaming in Software Engineering Projects: Case of RMU Monopoly” will be in the next issue of http://www.iiisci.org/journal/sci/Home.asp

Summary – programming should be hands on and students should choose how to work, what to work on, and what tools to use. Instead students memorize how to write classes and learn about something they call objects, but don’t know why. Syntax is treated like witchcraft to make the program work and get an A. Also many professors are just boring and questionably interested in programming themselves. Others are arrogant and unapproachable. A good programming class lets students decide what they want to build. Lectures go over concepts and students then implement them how they see fit. Of course the instructor needs to be there to help them.

Some instructors seem to think students shouldn’t be allowed to look on the Internet for answers. That just crazy. At least 50% of my time at work is spent looking around on Google. Of course students in their first programming class may need a simple program to start with. Next week I’ll talk about how I teach programming.

By David

I am a supporter of free software and run Burke Software and Consulting LLC. I am always looking for contract work especially for non-profits and open source projects. Open Source Contributions I maintain a number of Django related projects including GlitchTip, Passit, and django-report-builder. You can view my work on gitlab. Academic papers Incorporating Gaming in Software Engineering Projects: Case of RMU Monopoly in the Journal of Systemics, Cybernetics and Informatics (2008)

Leave a comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: