What Is Codesmyths?
Codesmyths is an opportunity for students in grades 4-8 to learn how to program computers. The main focus of this course is really learning how to learn, and building the habits of teaching yourself. Programming is a great subject to teach that. The actual programming is geared towards the iOS operating system (which runs on the iPhone, iPad, and iPod Touch). However, the basics will apply to any programming language and any platform. They will also be learning about how computers work — what goes on inside the box. Most important of all, they will be learning about themselves by developing their skills of design, engineering/problem solving, and critical thinking.
Why Teach Codesmyths?
Computers are all around you, and everyone uses them – if you know how to program, you have a much better chance making the best use of computers: getting them to do what you need to to; helping you solve your problems; and understanding what's really possible. Also, just like an adult who understands how their car works, it will be harder for people who would take advantage of your ignorance to trick you into giving them money or doing other things you don't want to do. More importantly, we want the students to directly experience creating digital technology, not just buying it.
We are also hoping that some of the student programs will be useful for helping other students learn school subjects in a fun way. This would be a great chance for them to experience the entire cycle of writing programs, getting user feedback, updating code, etc. — the customer and business side of software.
Eventually students will have apps on the Apple App Store, which opens up the possibility of getting feedback from all over the country or possibly the world. They would effectively be running a software company!
It's pronounced "code-smiths" and it’s based on the concept of a wordsmith, which derives from the concept of a metalsmith: someone who, through a process of many repeated cycles, carefully forges a well crafted product — hammering on something until you get it just the way you want it, making it stronger and better with each cycle. We changed the spelling of "smith" to "smyth" to match the spelling convention of a couple of computer data terms. Can you guess which two words those are?