# Tag Info

Accepted

### Interesting Programming Exercises to Teach Inheritance?

I'm not as familiar with Python as I am with other languages, but I'm sure your students have played Minecraft. If you haven't, I suggest taking a few minutes to find some introductory "Lets Play" ...
Accepted

### What to consider when choosing version of Python?

A few years ago, the answer to this would have been "stick with Python 2; the libraries aren't ready for Python 3 yet". In many cases, that would have been a deal-breaker, because many of the older ...
• 3,485
Accepted

### IDE vs Editor and terminal for CS1

TL;DR Those two aren't your only options. The main concern is cognitive load: learning to program is difficult enough without adding incidental complexity. We've seen an explosion of hybrids in ...
• 799

### Interesting Programming Exercises to Teach Inheritance?

Too many examples that you find are (IMO) fatally flawed. The Animal->Dog is especially flawed, though widely used. The problem is that these sorts of examples almost require that the superclass has a ...
• 34.9k

### IDE vs Editor and terminal for CS1

Here are my thoughts on this. Editor and Terminal This is most likely the more lightweight solution. Editor and terminal often don't consume much space (or, at least, come bundled with the operating ...
• 961
Accepted

### How do I approach teaching Python to 12-year-olds as a first-time teacher?

Check out the Python books written by Al Sweigart. His homepage Invent with Python includes some great, free resources that are geared to the age range of your students. In particular he focuses on ...
• 9,032

### IDE vs Editor and terminal for CS1

Of course it depends on your overall goals. For me, however, the answer is clear: Use the most powerful IDE that I can find (Eclipse or NetBeans fit my def). I started programming on primitive ...
• 34.9k

### Any simple Python GUI projects for beginner/novice programming students?

In my experience, good introductory programming courses meet three overarching goals: Empower students to create simple programs outside of the scope of the class by giving them the technical skills ...
Accepted

### First programming Language : C or Python?

The question is actually more complex than it might appear, and really the answer can depend on the context. For example, at what age are the students when they are first taught to program? Is this ...

### IDE vs Editor and terminal for CS1

The real question is this: do you want to teach your students what is actually going on, or teach them which magic buttons to press in an IDE? Of course for professional programming work nobody would ...
• 613

### Starting open source

Since you specifically mention high-schoolers getting started with open source, i have to recommend the Google Code-In. I participated all 4 years as a high-schooler and really learned a lot about ...
• 758

### Interesting Programming Exercises to Teach Inheritance?

I've got one that might help, modified/simplified from an actual problem I had to solve at my current job. Imagine you're writing a Content Management system - this system will store four types of ...
• 290
Accepted

### Will I Regret Using Python As A Teaching Language When I Later Need to Teach Static Typing?

If you teach Python's typing system correctly, you should have no problem later. The rule in Python is that names don't have a type associated with them, but all values do. It isn't that "things" ...
• 34.9k
Accepted

### Any simple Python GUI projects for beginner/novice programming students?

Unfortunately, GUI programming is sufficiently different from algorithmic programming that if you start with it students can get the wrong idea about what a program should look like. For example, ...
• 34.9k

### Pedagogical issues with Stack Implementation

Actually, the code is terrible, but I don't think its purpose is to illustrate a stack so much as to illustrate in a very rudimentary way how heap allocation works. (Worse than "terrible", it isn't "...
• 34.9k

### Interesting Programming Exercises to Teach Inheritance?

My coding school gave one particular (weeks-long) project that I felt nailed the concept of inheritance, and why it could be useful: Simulating a circuit board with logic gates. The framework of the ...

### Explaining why arrays are important for statisticians

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 ...
• 31.5k

### What is the best way to learn an object oriented programming language with framework, data structure and alogrithms?

You certainly don't need a list longer than this one. If you do even half of this you will have learned enough to know pretty much what should be next. Having a complete list now gives you very little....
• 34.9k

### How do I approach teaching Python to 12-year-olds as a first-time teacher?

I agree with Peter. It needs to be fun, and games really help. It doesn't take much to exercise basic programming concepts such as variables, loops, selection, input, and output. I would start with ...
• 1,044

### Explaining why arrays are important for statisticians

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 ...
• 1,113

### Starting open source

Before contributing to an open source project it can be useful to become familiar with the tools and concepts involved in version control systems. Write some code that is unfinished with some ...
• 806

### Do Python and Java lead students to construct different mental models of memory?

I think that this is an interesting question, and one the textbooks often ignore or treat as unimportant. I've noticed it because I end up teaching Python, Java and C++ and have seen how my student's ...

### Do Python and Java lead students to construct different mental models of memory?

I am not aware that cognitive modeling of memory structures in early programming education has been directly studied, so anything that I say here is entirely speculative. However, I suspect that the ...
• 31.5k

### IDE vs Editor and terminal for CS1

I like to ease people in. You have mentioned that this is for first year. So, yeah, easing in would really have a positive impact on the overall learning experience. I would like to draw from my own ...
• 1,874

### Will I Regret Using Python As A Teaching Language When I Later Need to Teach Static Typing?

Maybe it is a bit overkill, but I'm teaching python and C in parallel to CS beginners. The languages are syntactically similar enough to lower the burden of learning two languages, but the students ...
• 594

### Explaining why arrays are important for statisticians

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 ...
• 101

### What is the best way to learn an object oriented programming language with framework, data structure and alogrithms?

Your list of items is very complete and would fill a good part of a Bachelor's degree curriculum. One thing to not overlook is that some of the aspects you highlight make little sense in the context ...
• 727