teaching

Advanced database concepts

I have agreed to become a teacher's assistant in a database course and have also been asked to look into changes that can be made to the course. The course is called "Advanced Databases", but its name is a bit deceptive. The students are not computer science majors but some kind of "IT management"-students and thus lack much of the unde...

"Firefighter" consulting, getting a project released

I am about to start working for a new customer who asked for a "firefighter" to help his only developer finish a product due at the end of the month. While I am confident I will do fine from a technical point of view, I could use some advice regarding the best way to "educate" this developer without sounding too pedantic. Have you ever...

Basic programming/algorithmic concepts

I'm about to start (with fellow programmers) a programming & algorithms club in my high school. The language of choice is C++ - sorry about that, I can't change this. We can assume students have little to no experience in the aforementioned topics. What do you think are the most basic concepts I should focus on? I know that teaching so...

How and when do you teach a kid to code?

I've got a ten year old brother who desperately needs a constructive hobby and I am convinced he has the proper sort of wiring to become an adept coder. However, what he has in raw intelligence he lacks in patience and willingness to try new things. His overpowering interests are Legos and video games so my inclination is to find a way ...

Teach an M.B.A. the intricacies of Microsoft SQL Server (and how's it different from MySQL?)

I haven't had to interact w/MSSQL much in my development career, though I've spent many an hour working with MySQL. An M.B.A. friend of mine is starting a job where she needs to gain functional knowledge of MSSQL Server, and I'd really like to help. What are the differences between MSSQL and MySQL? How would you recommend a non-techni...

Is it possible to teach several languages/paradigms at once?

If you had the opportunity to teach new students how to program for a year, what would you teach? I've always found that a multi-paradigm approach to teaching programming works best, but is it too much for first-year students? Is it better for a student to be great at one or good at 3-5? At the moment I am looking to help tutor students...

Books & resources to teach myself Linear Algebra

The title says it all basically, I'm looking for books and resource to teach myself linear algebra to be used in 3D graphics programming. I prefer practical approaches to teaching over theoretical (even though math is what, 99.99% theory?) ones, so the dream resource for me would be a book that tackles linear algebra as it's used with 3D...

How is programming taught in different institutions?

I would like to know if there's any deep difference in how programming is taught in different schools. I don't mean "They taught me how to write a Gaussian Elimination in C++", I'm more interested in the differing styles of teaching - what did you find effective, what did you see as harmful or a waste of time? I'm also interested in op...

What is the best way to teach you and your boss C#?

My boss wants to "get back into programming" by making an internal web application. I've got lots of experience with php and mvc frameworks, but he's doesn't want to learn php, he wants to learn c# as it probably will be more useful to him down the road (I can't disagree.) I think I'll be ok with tutorials and code snippets I find online...

Reducing coding standards 'brainwashing' duration and effort of new hires.

At my current job we're pretty strict about code quality and coding standards. All new hires go through a 'brainwashing' period in which time senior developers coach them to write (hopefully) better code. The code review process is meticulous and it normally halves the productivity of the developers doing the review. And sometimes the '...

Explaining refactoring

Question My question is how can you teach the methods and importance of tidying-up and refactoring code? Background I was recently working on a code review for a colleague. They had made some modifications to a long-gone colleagues work. During the new changes, my colleague had tried to refactor items but gave up as soon as they hit a...

How did you learn to program?

I would like to know how you learned to program in order to teach future programmers. Could recommend some books to teach programming,or some helpful tips? Edit : How to motivate students to continue learning? ...

How do you encourage someone to learn to use the debugger?

We are in college and I want get my projectmate to use the debugger as it will help improve his debugging speed. Despite offering to show him how to use it so that he won't have to learn it by himself, he refuses and to date still uses printlining to debug. I can understand why he refuses as he's probably afraid of the learning curve (E...

Which parser generator to teach my students?

I am teaching (with others) a relatively introductory course in computer science for IT professionals without a background in CS. Since I developed the course materials on automata and grammars, I am also responsible for teaching about compilers and compiler construction. Years ago, when I studied compilation in college, all our example...

Any sensible examples of creating inheritance without creating subtyping relations?

I've been teaching OOP and was trying to convey to my students the important difference between inheritance and the creation of a subtype relation between two types. For example, in C++, I could use private inheritance to ensure that nobody outside sees the subtyping relation. However, while I can think of a lot of situations where I wo...

Explaining nested arrays to a programmer

How have you explained nested arrays to a programmer. I'm thinking someone that has an entry level understanding of programming, but is trying to do more complicated coding. The array with array works, but they can't quite get their mind around the idea. Edit: example of a nested array: array( 'array1' => array( 'key1' => ...

Programming Excel

I'd like to give my boyfriend a taste of programming. If it was up to me, I'd teach Scheme, Haskell or F# but since he'd rather learn something that can be useful in his job as a fiscal consultant, i.e. programming Excel. What are the options for programming Excel? Which one would you recommend for someone who's just learning to program...

What should I tell kids about how great it is to be a programmer?

I am putting a presentation together. I thought about illustrating with websites like Facebook, and MySpace. Does anyone have children around that age that could tell me what they are into? How to hold their attention? Ways to illustrate what we do? Get them interested? Your ideas are greatly appreciated, I really want to be able to c...

What version-control system is most trivial to set up and use for toy projects?

I teach the third required intro course in a CS department. One of my homework assignments asks students to speed up code they have written for a previous assignment. Factor-of-ten speedups are routine; factors of 100 or 1000 are not unheard of. (For a factor of 1000 speedup you have to have made rookie mistakes with malloc().) Progr...

Seeking examples of workflow using git-format-patch and git am

I'm thinking of asking my students to use git for pair programming. Because student work has to be secret, a public repo is out of the question. Instead, each student will have a private repo they maintain themselves, and they will need to exchange patches using git-format-patch. I've read the man page but I'm a little unclear which p...