teaching

What are convincing examples where pointer arithmetic is preferable to array subscripting?

I'm preparing some slides for an introductory C class, and I'm trying to present good examples (and motivation) for using pointer arithmetic over array subscripting. A lot of the examples I see in books are fairly equivalent. For example, many books show how to reverse the case of all values in a string, but with the exception of replac...

Do all beginners have ability to learn programming?

Duplicate: http://stackoverflow.com/questions/366295/is-programming-for-the-elite-or-can-everybody-learn-to-program I'm interested to know how you all look at the ability to learn programming. I'm a teacher and therefore struggling a lot with wherefore some just don't get it. Why is it so? Perhaps I'm not appreciating enough there thre...

The best 500 word (or less) description of how a CPU works?

What is the best description of the CPU that can fit in 500 words? Submit and vote up actual attempts. Imagine you're explaining it ... to some non-cs grad students over dinner to the smartest, most interested 12 year old you've ever met to a beginning programmer in a high-level language who knows how to count, add, subtract, and mul...

Which programming language to teach my father?

I guess it's a variant of the "Teaching my kids to program" language issue… A little context is in order. At 60, my father is going to retire pretty soon (at least, soon enough that I need to start caring about that stuff). He is a very active person and I'm looking for occupations for his future free time, and one of these could be pro...

Eclipse class designer and design<--> java source bindings

Hi Guys, I'm tutoring a subject on rapid prototyping at university for 2nd/3rd year students. Can anyone recommend a (free) way to design class hierarchies in a GUI design surface within Eclipse? The UML design surfaces in Eclipse Modelling Tools are almost perfect, but I can't find any documentation about how to bind these to java s...

Database Indexes

How would you explain to some one how indexes improve the performance of the database when used judiciously ? I am looking for a good, clear explanation since it's too complex out there in the books. ...

What to include when teaching a UNIX course?

I was asked to teach UNIX to a group of people in my company who probably don't know much about UNIX with total Windows background. Help me decide the Course Contents. I don't want to go in and teach them a set of commands. I want it to be more on the lines of the UNIX architecture, file system, pipes, how everything are files, process c...

Should functional programming be taught before imperative programming?

It seems to me that functional programming is a great thing. It eliminates state and makes it much easier to automatically make code run in parallel. Many programmers who were first taught imperative programming styles find it very difficult to learn functional programming, because it is so different. I began to wonder if programmers wh...

C++ for Python Programmers: Slides and Resources

I have been teaching some bright high school kids Python for 3 months now (for most of them this was their first experience with programming). I've decided to take the best of the group of give them a quick (120 minute) introduction to C++. They're hard-working enough to take what we give them and learn things further on their own. Are ...

What is the coolest thing you can do in <10 lines of simple code? Help me inspire beginners!

I'm looking for the coolest thing you can do in a few lines of simple code. I'm sure you can write a Mandelbrot set in Haskell in 15 lines but it's difficult to follow. My goal is to inspire students that programming is cool. We know that programming is cool because you can create anything you imagine - it's the ultimate creative ou...

How would you teach web development?

I am the lead instructor of web & internet related courses on a private post high-school institution. My current classes include introductions to HTTP, TCP/IP, (X)HTML/CSS/JavaScript and generic SQL. Next year we will deal mostly with PHP / Java. What, in your opinion, are the most important aspects of web development in contrast and rel...

Teaching programming and formal methods

Here's a sort of odd question. I'm in the process of writing a book on learning to program using formal methods, and I'm going to target it toward people with some programming experience. The idea is to teach them to be high-quality programmers. The basic notation is going to be from Dijkstra's Discipline of Programming, along with so...

What are some exciting, fun, and educational Computer Science activities for students?

I am a volunteer for Let's Talk Science, an organization which places science graduate students into elementary school and high school classrooms to present short, fun, yet educational demonstrations or experiments related to their particular field. Physics, Chemistry, and Biology have an abundance of such demonstrations, however as a co...

Looking for a good AI book that uses examples in C++

Hello all. I've searched over the posts I could find on "What's the best AI book" and I found all the responses I expected to see, but I did not find what I was looking for. I'm interested in a book that I can use in a teaching environment that explains AI topics such as Neural Networks, Genetic Algorithms, Decision Tree learning, Indu...

Teaching: other than correctness and originality what else should you require and check?

I teach an introductory computer science course where there are some programming assignments. The question is, what should we demand from the students other than correctness (i.e. the program works and does what we defined it should do) and originality (i.e. the student wrote it by himself). ...

How do you teach junior programmers MVC?

How do you teach junior programmers to use MVC? This is assuming they never had any experience. ...

How can I teach a know-it-all beginner programmer?

I need to teach a teenage beginner programmer (private tutoring style). The problem is that despite their poor knowledge and skills, they are sure of their abilities, to the point where I find it hard to teach them "better ways". What's the best way to tackle this? Just to be clear what I'm talking about: Constantly changing between ...

Project's documentation when dealing with lots of business-logic rules. How to organize it?

I'm working on quite complicated project, in terms of business-logic quantity and quantity of components. Each developer mostly works on "his own" component. I understand that this isn't very cross-functional, but it is impossible to know every components' details. Team sostav changes from time to time. So we have situations when one p...

Good function pointer analogies?

The best one I have come up with so far is that a card catalog contains instructions on finding how to cook different types of food. It does not contain the information on how to cook the food, nor the instructions on cooking the food itself, but it can point you to relevant instructions which are located elsewhere. It is a good analog...

Would Ruby be a bad first language to teach to High-Schoolers with no programming experience?

I'm planning on teaching a programming elective next year at my high-school. The students would be from 9th to 12th grade with minimal programming experience in ti-basic at best. I've yet to decide on what language to use in it. I fear that if I use something ultra-interpretive and abstract like Ruby or Python I'll be doing them a disser...