The Case for Practical Programming
Participate and share : Poster
Tuesday, December 1, 12:00–1:00 pm PST (Pacific Standard Time)
Programming is now a regular part of most schools’ curriculum, yet how many will later actively use programming in their daily lives? This session shows that programming needn’t be arcane, and can instead be an empowering way for the common mortal to coax their computer into doing their boring tasks.
|Attendee devices:||Devices not needed|
|Topic:||Computer science & computational thinking|
|Subject area:||Computer science|
|ISTE Standards:||For Students:
Programming is now widely accepted as a necessary skill for achieving digital literacy. Students should learn it at school to be prepared for the future. After all, automation is regularly mentioned in headlines: we can read that people are afraid to lose their jobs to machines, but also that new jobs emerge because of this paradigm shift.
Yet, how many of those learning programming at school will actually make use of those skills in their daily lives? Robotics is definitely a good way to introduce students to computational thinking and help to develop it, but it seems to be generally perceived as an end unto itself instead of as an introduction to something greater. Despite the increasing familiarity with programming, it is still considered as an arcane art best left to those considering a STEM career.
Programming should instead be seen as a basic problem-solving skill. We constantly go through boring, mind-numbing, repetitive tasks involving computers and we approach these problems as a human would—not as a human using a computer. We are ready to spend hours correcting the same type of information in hundreds of files, or to compare values between huge sets of data, but what satisfaction, what sense of accomplishment do we derive from such mind-numbing tasks?
While it often feels that they are working against us, computers should instead be seen as fast and highly precise assistants who never make any mistakes; all they lack is a sense of initiative and that's where we, the humans, come in by providing them with instructions, empowering ourselves in the process.
This presentation purposes to make the audience aware of the practical possibilities of programming through Python. Python is a general-purpose language that is very easy to learn, even by those who do not destine themselves to a technological career. With only basic knowledge, it is possible to write programs that can manipulate or download files, open browsers, modify Word, Excel, or PDF files, or even send and read emails.
No prior knowledge of programming is needed: those who come in knowing nothing will discover how to learn programming skills at their own pace and by setting their own objectives; computer science teachers will discover how to motivate their students to program in a practical and personal fashion; and everyone can find out about how to save time by automating recurring drudgery.
* Introduction (5 minutes): present the current situation: programming is taught at schools but ss. ultimately do not see any real-life application to it; programming is still generally perceived as arcane and hermetic.
* What do we mean by practical programming? (5 minutes): an explanation of the concept of using programming to automate boring tasks.
* Why Python? (5 minutes): present the points that makes Python ideal (but by no means unique) for practical programming; best practices, i.e., the “best” way to write programs, vs simple, practical practices.
* A few real-world problems and examples of how to solve them with Python (10 minutes).
* Conclusion (5 minutes).