Many students and teachers are joining. What projects should I do to make them enjoy and use programming?
We're going to make a Text-Based RPG, a Quadratic Equation solver, and much more.
Many students and teachers are joining. What projects should I do to make them enjoy and use programming?
We're going to make a Text-Based RPG, a Quadratic Equation solver, and much more.
I'm a game programmer and computer science ninja !
Here's my 2D RPG-Ish Platformer Programmed in Python + Pygame, with a Custom Level Editor and Rendering System!
Here's my Custom IDE / Debugger Programmed in Pure Python and Designed from the Ground Up for Programming Education!
Want to ask about Python, Flask, wxPython, Pygame, C++, HTML5, CSS3, Javascript, jQuery, C++, Vimscript, SFML 1.6 / 2.0, or anything else? Recruiting for a game development team and need a passionate programmer? Just want to talk about programming? Email me here:
hobohm.business@gmail.com
or Personal-Message me on here !
For a simple but decent project, how about a Guess The Number? Or a Nim? Black Jack?
Anything that's fun to test (most probably a game) from the beginning to the end of the project and has multiplayer (2 player multiplayer should be enough).
To be more specific, it would be good to know how long term and intensive this club would be for a student. 4 years for a student? Or kids come and go? How many hours a week? (So how much time could be spend on projects)
That's only an opinion, I don't know much about education.
I'll toss this out their as something the kids will probably find fun:
Minecraft + computerCraft = lua scripting engineering mechanics. I've written multiplayer pong by using pressure plates and computerCraft monitors, I've also built full working multi-level elevators(with the help of redpower(which also has it's own computer system, but it's not nearly as advance as computerCraft)), and numerous other advance mechanics.
You can demonstrate quite a bit with computerCraft without a ton of overhead, and feedback is near instant, not only that, but each player can actually click on the console your working on in game, and watch you program.
anywho, just a thought for getting middle schoolers interested, which can also branch out into general engineering for some individuals.
There's a movement called Code Club in the UK that's doing something similar, although it's aimed at a slightly younger demographic. You might get some ideas from their website: http://www.codeclub.org.uk/. They use Scratch to get kids making games: http://scratch.mit.edu/
IMO, a text-based RPG sounds like a bit of a dry choice of game genre and a quadratic equation solver doesn't sound like much fun at all unless it's in the context of a worms game or golf game or something.
Good luck, I think it's a really valuable thing to do, and I wish I had some free-time so I could get a code club running at my local primary school.
Yeah you can't force someone to enjoy programming. Maybe you can start with an already pre-made game, and you can show them that, through programming, you can customize it. Change the character to one of you, or something fun like that.
Mastermind and Mad-Libs can be fun and simple games for total beginners to implement. Battleship may be a fun way to get into networking. Text-based RPGs are.... Well, by the time you've got enough understanding to really build a functional RPG you may as well use a simple graphics API.
Well, I remember back in those days I wrote a quadratic equation solver in C. I spent more time on the text-based interface than I did on the actual calculator. If you want that particular project to take more than 20-30 minutes (in C, probably 5 minutes in Python), than I would suggest using no other library than the standard I/O library (if you are using C, which I highly recommend) and writing the square root function(s) yourself. Although, if you want a genuine programming club (maybe wait until high school?) I would strongly suggest that you DO NOT start out with games and DO NOT encourage people to join on the premise that you will be making some type of game. That way, it can be a PROGRAMMING club, not a GAMES club. If you have a "games club", or anything similar to it, you might as well be wasting your time during all club-related activities, trust me. I would, if I were you, orient the club towards mathematical formulas implemented in C without the use of math functions. IMHO, that is the best way to start out programming. Check out Project Euler if you want club challenges, and good luck. Maybe you can make an impression on a child that is positive of programming, and real programming at that.
C dominates the world of linear procedural computing, which won't advance. The future lies in MASSIVE parallelism.