67

There are a number of reasons why students don't learn, but few non medical ones why they can't. Leaving aside the medical reasons, such as hormonal imbalance or other disorders, I think that students who don't learn either have little desire to learn or have had poor teaching in the past. Even students with some learning disorders can learn given desire and ...


52

Maybe. It's hard to prove a negative. How does knowing that help educators in any way? If that knowledge helps somehow, how does that compare to all the ways that belief can be harmful? Giving up on students who "just won't get it" Not reflecting on how teaching can improve, since the ones who failed "just won't get it" Noticing "patterns" in the ...


27

As I indicated in the question, it has been my experience that there are certain kids who never seem to come along. My data is drawn from a rather small group (definitely under 1000 kids learning CS over the course of my career), and @Buffy's idea that these students are satisfying rather than optimizing may well be correct. However, I haven't seen ...


22

However, every year, I find a small number of students who just don't seem to get it. They get through, but the CS major program becomes harder and harder for them as their four years go by. Must it be this way? Think of it this way: An alien lands on Earth. He sees a human, who encounters another human. The first human flips the second one off. In ...


17

Consider the posibility that this could be a problem with Java. If your first language is APL, and many fail... is a reflect of the students or APL? Read also: http://lambda-the-ultimate.org/node/5481 Is Haskell the right language for teaching functional programming principles? No! (As Simon Thompson explains.) I have learn dozens of languages and ...


14

I firmly believe that, barring actual mental handicap, anyone can learn to program. However, this is purely a belief; a matter taken on faith. It is informed in part by some knowledge of psychology and the process of learning, but in these things I am at best an amateur. The available evidence, unfortunately, does not demonstrate that anyone can learn to ...


11

One elegant way to deal with this sort of problem (though it does take a lot of work) is to create a self-explanatory review packet (including a practice quiz!), give it out on day one, and promise that there will be a quiz on its contents during the second week of class. You then don't need to spend another minute on the material in class, at least for ...


9

Actually, what you want to do is commendable. And no, at the scale of things you talk about, I don't think you are likely to get yourself confused. In fact, you may have the opportunity to learn different things in an integrated way. In some ways the educational system, which puts different topics in different boxes, isn't optimal and everyone needs some ...


9

The only way to learn a lot of things, maybe most things, is practice and feedback. In a standard course (not online), the professor assigns some work to do - homework, projects, .... The professor then gives you feedback on it - grades, but hopefully more. To learn on your own, you want to try to simulate this as much as you can. So, to learn something, ...


8

This is all from my own personal experience, no research: I believe all students can learn to program, and can "get it", barring some mental handicap. But they have to have the desire, as many have stated - that's the kicker. And you, the educator, must have the patience to stick with them until they "get it". I have been a computer science educator for ...


7

Always try to explain it some other way. Try it in another language - there are reasons why BASIC and Visual Basic are used as 'beginner languages', although I would look for 'teaching languages' that entrain a better understanding and good coding habits. I would no more teach someone to program in Java than I would teach them to fly in an F-104. However, ...


7

If you are tutoring her, it is wonderful that you are trying to motivate the material in a practical way, but don't beat yourself up too much if you aren't that successful at persuading her. Some people just get themselves into a sort of myopic headspace where the only things that they need to learn are the exact operations that they will perform later on in ...


6

I noticed that most of the answers focus on the things (topics, lectures, etc.) I have found that it is helpful to focus on the students. I normally ask them for a one-on-one chat and ask them why are they here? What do they like / not like about CS? This normally opens an opportunity for making their experience more engaging for them. It also identifies ...


6

I face the same issue every year. In France where I teach, University is basically free and, in some bachelor curricula you can repeat the year and re-enrol in courses you have not validated as much as you like (almost). At some point, there is little that the teacher can do. Allocating say the first lecture and first lab to rehash the basics works for some ...


6

Moving from formal to informal is almost always a mistake. Let me see if I can show you why. When you consider how you think about sets within your own mind, I am reasonably certain that you rarely use the formal definition. Instead, you visualize or otherwise imagine something more akin to some abstract sort of bag, box, or group. The specifics of your ...


6

Formalization is important, I believe, at every step, concurrent with analogies, metaphors, and examples. Give them the formal definition. Use it frequently in teaching and in conversation. Make them write it on a study guide. Give them a question about it on a practice quiz. They will learn it in spite of themselves. One day their brains will go "aha",...


5

Nature vs Nurture It seems that nature plays a large role: you can not teach a cat to code (even though they share approximately 90% of our DNA. However most of the variance between humans is probably nurture. See Carol Dwecks word on growth mindset, for who some learn and some don't. Note that we can have a growth mind set in some subjects, but a fixed mind ...


5

Have you tried a simple statistics formula such as $$mean = \left(\sum_{i=1}^{n} x_i\right) / n$$ This maps exactly to array notation. Explain that the array x refers to the entire set of values and that x[i] refers to a single element in the set. Then show a simple loop that performs the computation.


5

I had a student some time back who also really struggled with concepts like this, but who was interested in research in psychology which for her was largely about statistics. Statistical data is nothing but arrays, or perhaps tables, that is, 2-dimensional arrays. Statisticians conduct trials consisting of observations. An observation is a simultaneous ...


4

I do tend to review some basic topics at the start of a semester to get a handle on what students have forgotten or never learned completely. After that I don't use class time as I expect students to make some efforts on their own. I teach high school so I may handhold a bit more than a university professor. In my case that means I schedule time for helping ...


4

Goal-oriented action Part of this really depends on your goals in administering the exam. If your goal is the traditional idea of creating a nice bell-curve to rank students, having a study guide makes very little sense. You can separate the wheat from the chaff without providing any assistance to the students prior to the test. However, if you want to ...


4

In many ways the best study guide is one that the students themselves write. This can be done incrementally throughout the course and is useful even in the absence of exams. There are two ways to go about it, and you can, perhaps do both. Each student should have a deck of index cards and they should carry a few around with them. They can take notes of ...


4

I do study guides because some students may need to list the information just once more to get it. What if they hadn't had that opportunity? They may have missed it. And, let's face it, do a lot of students, especially those at the high school level, have the self-discipline to go over the material once more unless they have a compelling reason? Even a ...


4

I have seen instructors call a wide range of documents "study guides". They have ranged from test "simulations" which are old tests with tweaked questions to a 1 page .txt print out with a bullet list of important topics to study. I have also seen instructors spend an entire lecture on just test review mail but not hand out any documents. In my ...


4

You have a big job. The only way to do it is to just start. The undergraduate CS curriculum, which forms a good basis, is about 500 hours of direct instruction and another 1000 or so hours of practice. The instruction is guided and the topics are selected by experts. You are trying to do all of that on your own. Big job, but not impossible. You could ...


4

Abstract definitions are a deep rabbit hole. To illustrate the point: First attempt Imagine a non-English speaker trying to read the dictionary. First word: Aardvark. A nocturnal badger-sized burrowing mammal of Africa, ... Wait, what does nocturnal mean? Done, occurring, or active at night. Wait, what does occurring mean? ... And this is the core of the ...


4

You can follow below points according to your stage of learning. If you done with basic syntax of any programming language then try to solve logical problems from various platform like hackerrank, codechef and many more. Find out other techniques or methods to solve same problem in different ways. If you done with logical question then try for Object ...


3

First of all, kudos to you for wishing to enrich yourself! In addition to Buffy's fine answer, I might recommend an approach to self-studies that I once learned that ensures steady progress on multiple fronts. My understanding is that the technique itself is an old Jewish approach, used for hundreds of years by people becoming talmudic scholars. Put aside ...


3

I'll vote with your colleagues here. I don't know anything about you or your teaching experience, but if you are new at it you should realize that a common error made by new teachers is that their students are just about like themselves and learn just about the same way that they themselves do. In reality this is wildly false. Every student is unique and ...


3

(Sorry, too much for a comment) I've had a related experience back in college that I think is relevant. I was a lab assistant, the lab was sometimes used for a computer literacy for seniors class. I could see one fundamental sticking point for nearly a third of the attendees: They couldn't comprehend changing the meaning of a key. The machines were TRS-...


Only top voted, non community-wiki answers of a minimum length are eligible