teaching

Best ways to teach a beginner to program?

Original Question I am currently engaged in teaching my brother to program. He is a total beginner, but very smart. (And he actually wants to learn). I've noticed that some of our sessions have gotten bogged down in minor details, and I don't feel I've been very organized. (But the answers to this post have helped a lot.) What can I ...

What is the easiest language to start with?

What is the language with the lowest barriers to entry, simplest syntax, easiest setup. I'm aware that there's not a best language but I am sure that there will be one that's got a good score in all three areas. It's for teaching friends how to program, I like PHP and Python but I don't want to be narrow minded and limit myself when the...

Why are professors or schools picking Java over C++ to teach to students?

Is it just me or are most colleges teaching Java instead of C++ these days? I feel like I've been missing out with having zero classes teach or use C++ at all....

Best Windows Command Line tutorial for beginners?

I'm trying to find a well written understandable tutorial for beginners trying to use the windows command prompt. I'm working with one such beginner and they keep calling me with questions about commands, and I want a concise tutorial or reference to send them to. I tried google, with many combinations of the likely search terms, and g...

What's a good starting development environment for teaching/learning Python?

I'm a seasoned .Net developer with a good chunk of experience on the MS stack and in related areas. I'm about to learn Python and was curious about the ideal development environment on Windows - IDE, tools etc. I'd normally be happy to go out there and have a play with what's available, adapting as I go along. I'd also likely switch bet...

Suggestions on starting a child programming.

What languages and tools do you consider a youngster starting out in programming should use in the modern era? Lots of us started with proprietary Basics and they didn't do all of us long term harm :) but given the experiences you have had since then and your knowledge of the domain now are there better options? There are related queri...

How to mentor a junior programmer

Does anyone have any suggestions on how to mentor a junior programmer ? If you have mentored someone did you follow any process or was it quite informal ? If you've been mentored in the past what kind of things did you find most helpful ? ...

Rewarding code projects for *complete* beginners

Courses for people who are being introduced to programming very often include a code project, which I think is a nice way to learn. However, such projects often feel too artificial, and are thus not very rewarding to work on. What are your ideas of rewarding code projects? (Preferably easy to begin, and extendable at will for the more a...

High School Programming

I have been asked to teach a high schooler how to program. His math skills include Algebra II and Geometry as well as an understanding of computers. My programming experience lies primarily within C# and Java, with a fairly decent understanding of most database technologies. Given I do not do any game programming what should I teach h...

How to teach a crash course on C++?

In a few weeks we'll be teaching a crash course on C++ for Java programmers straight out of college. They have little or no experience yet with C or C++. Previous editions of this course were just 1 or 2 half-day sessions and covered topics including: new language features, e.g. header vs. implementation pointers and references memor...

What are some games with fairly simple heuristics to evaluate positions?

I'm teaching a kid programming, and am introducing some basic artificial intelligence concepts at the moment. To begin with we're going to implement a tic-tac-toe game that searches the entire game tree and as such plays perfectly. Once we finish that I want to apply the same concepts to a game that has too many positions to evaluate eve...

Which is the best Linux C/C++ debugger (or front-end to gdb) to help teaching programming?

I teach a sort of "lite" C++ programming course to novices ("lite" meaning no pointers, no classes, just plain old C, plus references and STL string and vectors). Students have no previous experience in programming, so I believe that using an interactive debugger would help them understand program flow, variables, and recursion. The cou...

Single most important thing to impart when teaching TDD

I'm collaborating with a group of professionals to put on an event to help teach the practice of TDD to people who are interested, but have no experience (novices). We're trying to come up with labs, workshops, etc and I'm trying to think of the single, biggest thing that we need to impart upon these individuals to help them be successf...

What's the best way to teach young kids some basic programming concepts?

I might be asking this question a bit early, since my kid isn't even born yet, but I want to be prepared. How should I start introducing basic programming concepts to my kid? I remember typing BASIC code into my Commodore 64 and trying to get that little turtle to move around the screen at school. But what are some more current begi...

What's the best way to introduce non-majors to HTML / programming?

The following question has been eating at me for the last couple months. After witnessing the quality of the replies here, I'm hopeful that I'll get some great responses here. I'm TAing a course in the ECE department entitled "Exploring Digital Information Technology", intended for non-majors to get their feet wet with the whole "how c...

Motivations for choosing a career in programming

I've been teaching for a couple of years now a course for high school students (not always computing-oriented schools) using some gaming framework. This has been very useful for trying to get them to pursue a career in the field (which is one of the goals), showing them that programming is not only making bussiness, boring applications....

What's a good Wiki for technical documentation?

What's a good Wiki (or other browser based collaborative tool) for technical documentation? Both as a programmers reference and more general "How to perform this reoccurring tasks on a computer" documents. I'm looking for Wikis with features specifically geared towards documenting system, framework and application development. I'm not g...

How do you teach the stuff that good programming is made of?

In my company we get on and off shore contractors in and out all the time. It is hard to maintain a code base like that since the level of maturity in writing code varies considerably. To a certain extent my role consists of mentoring the development resources. I have found that if I just let them code, i will get something very naive pu...

Teaching: Field, Class & Package Relationships

In general I think I can convey most programming related concepts quite well. Yet, I still find it hard to summarise the relationship between Fields, Classes and Packages. How do You summarise "Fields", "Classes" and "Packages" and "Their Relationship" ? ...

What are essential topics to have in a Web Services (semester) course?

I am in the process of designing a Web Services course for students in an Information Technology program. Some students stop after getting a two-year associates degree, but other students in the program go on to a four-year bachelor's degree. This course would be for students going on to the four-year degree. My initial thoughts for t...