Ever seen this? It seems in the new age of "instant gratification, folks do not want to read anything that is "too long".
To Long; Didn't Read!
Everyone seems to be in a hury these days. My students do not want to learn things by study, they want those topics injected into their systems somehow. The old idea that you could learn a topic by putting the book under your pillow while you sleep certainly will not work today. Most folks seems to read on their tablets, and sleeping on those things is sure to crack the screens!
I hate to break it to you, but instant gratification may work for some things, but to learn something, you need to dedicate some time to it.
Learn C++ in 24 Hours
Those books hop off of the shelves, purchased by students in a hurry. You simply cannot learn a complex topic in 24 hours. Here is a much better idea:
Learn C++ Really Slowly!
You need to study!. You need to experiment with new ideas, see what works, and what does not work. You need to fail sometimes to learn anything well. Don't just focus on something that works, break it!
A famous race car driver once said:
If everything seems under control, you're just not going fast enough. `Mario Andretti <https://www.brainyquote.com/authors/mario_andretti>`_
Fortunately, when learning how to program a computer, crashing does not hurt much.
The point is simple. You need to explore the edges of a topic to see where they are. In programming, that means making mistakes, and exploring the nasty error messages you encounter when the program cannot be made to run, or when it runs and gives garbage output instead of the cool stuff you hoped to see.
Here is my new mantra for my students: DS;DP!
Didn't Study; Didn't Pass
Copy and Paste
The "TL;DR" generation loves to copy and paste code I put into my lectures. They get annoyed if that code does not work. To that I say:
Copy and paste teaches you not one thing. (Well, maybe it teaches you how to copy and paste). If the code works, what did you learn?
I never copy and paste. Instead, I type the code in manually (it takes time). In doing that, I actually read the code and think about it. I wonder why it is written the way it is, and I actually critique that code. If something seems wrong, I fix it! I am learning something, and I like that!
But I run into situations where learning seems like something to be avoided.
Sometimes, in a review, I go over the answers to questions that are really on an exam. Students sit there, nodding their heads as we go over the topics, and they still miss the question. I puzzle over this a lot! It almost seems like the student is trying to fail.
So, how to I change this?
A Better Way
I am always searching for a better way to reach my students. I try to create assignments they will enjoy working on, while still pushing them into new territory. You have to do that to learn anything.
I remember my flying lessons well. My favorite instructor, General Stan Czyzak, used to make me close my eyes, and put m hands in my lap, while he yanked the airplane all over the sky for several minutes. When he was done, he would leave the airplane in some situation and have me open my eyes and figure out what to do to get us safely back to "straight and level". The first time he did that, we were already "straight and level"! I almost sent us out of control trying to fix something that was not even broke! I learned a lesson there, and never forgot it. He did not once get me into a situation I did not recover from, in spite of leaving me in some bizarre configurations.
I have my students explore new areas of the profession they see to enter. They need to do this, and far too often, students enter my classes with little motivation to explore these areas. They are stuck in their "comfort zone", a sad place where things never change.
Perhaps I am defective. I do not have a "comfort zone"! Instead, I am most comfortable out of that zone, in areas where I an learning something new.
Slowly Pushing the Edge
Maybe the answer is that I am going too fast. There are a lot of cool things to learn out there, and I am eager to explore all of that. There really is not enough time to do that (in one lifetime). Maybe, I am pushing too hard in my classes. The TL;TR generation does not want to take the time to learn these things, so I have to force them over the edge.
There is a limit to how far you can (or should) push. Too far, and they get terrified, sometimes freezing up. So, maybe the answer is to take smaller steps up to and over that edge. If you reach the real edge, push past it a tiny bit, and survive, that edge is not so scary anymore. It is like my adventure learning to race motorcycles, or fly airplanes. I pushed the edge often, and survived. Did I become an expert at either? Not really. But I got quite good, and I kept exploring that edge!
My plan is to keep pushing my students, to get them out of the "comfort zone" they enter my classes stuck in. They will see new ways of doing their work, and learn new tools, as they learn a new topic.
However, instead of a few big steps into that new world, I plan on making hem take many more small steps, and working harder to explain why those steps are needed. In the end, I hope they see the value in approaching new topics with an open mind, and not be in such a hurry to get over this learning stuff.
Maybe what I really want to teach my students is this: SH;LM
Studied hard; Learned much!