Slashdot Mirror


Ask Slashdot: Good Homeschool Curriculum For CS??

dingo_kinznerhook writes "I grew up in a homeschooling family, and was homeschooled through high school. ( I went on to get a B.S. and M.S. in computer science; my mom has programming experience and holds bachelor's degrees in physics and math — she's pretty qualified to teach.) Mom is still homeschooling my younger brother and sister and is looking for a good computer science curriculum that covers word processing, spreadsheets, databases, intro to programming, intro to operating systems, etc. Does the Slashdot readership know of a high school computer science curriculum suitable for homeschooling that covers these topics?"

247 of 364 comments (clear)

  1. You don't understand what CS is by Megor1 · · Score: 4, Informative

    "looking for a good computer science curriculum that covers word processing, spreadsheets, databases, intro to programming, intro to operating systems, etc. " This is not computer science (Intro to programming maybe), you are asking for a computer usage course, something that was not even allowed to count to my CS major.

    --
    Everyone that disagrees with me is a paid shill
    1. Re:You don't understand what CS is by tepples · · Score: 1

      Unless "databases" means relational theory and how it translates into SQL, and "operating systems" means threading concepts.

    2. Re:You don't understand what CS is by lahvak · · Score: 1, Troll

      I don't know, writing a good word processor would certainly require a good knowledge of Computer Science. In fact, it seems to be so hard that nobody has managed to do it well so far.

      --
      AccountKiller
    3. Re:You don't understand what CS is by obarthelemy · · Score: 3, Insightful

      give him a break: he's being home schooled. Which probably explains word processing being CS...

      --
      The Cloud - because you don't care if your apps and data are up in the air.
    4. Re:You don't understand what CS is by notKevinJohn · · Score: 4, Insightful

      Come on Slashdot, be reasonable. Maybe these topics don't represent what would be found in a traditional CS curriculum for college, but they sound like the very subjects that a pre-CS course at the high school level would be wise to teach.

    5. Re:You don't understand what CS is by captjc · · Score: 2

      I mostly agree, MS Office (or office applications in general) has no place in in CS. Aside from maybe a brief tour of the IDE at the beginning (let them choose to use an alternate environment later), CS should be application and platform agnostic.

      However, as someone who was required to take an Office course in high school (purely for credits), the most important thing that people take for granted is spending a few weeks teaching typing. IMO any high school CS curriculum, should have a few weeks on typing. It may be boring, but it benefits everyone. If you can't type then you will learn. If you know how you will probably get faster. If I had a dollar for every CS and IS major I knew that couldn't type if their life depended on it, I probably could have bought a Xbox 360 and a game or two.

      Then again, I also believe that typing should be taught in elementary schools and have refreshers in middle school and high school. Maybe we will have less instances of "wut u doin lol k by" in emails and instant messages.

      --
      Slow Down Cowboy! It's been 1 hour, 47 minutes since you last successfully posted a comment
    6. Re:You don't understand what CS is by EconomyGuy · · Score: 1, Insightful

      This is a silly response and demonstrates a limited understanding of the scope of your discipline and where it fits into the continuum of education. Sure, these topics are not appropriate for a college level CS course, but that doesn't mean they aren't related to computer science. To give a concrete example, consider the something as simple as basic mathematics. If OP had shown up asking for "a good mathematics curriculum covering addition, subtraction, multiplication, and division" would you have responded saying that's not "mathematics" because those topics aren't covered in college level math courses? There's no hard and fast rule that says CS topics start at college... it's all part of the the continuum of education.

      --
      Only 120 characters... who can summarize their entire world understanding in 120 characters?!
    7. Re:You don't understand what CS is by PopeRatzo · · Score: 2

      I don't know, writing a good word processor would certainly require a good knowledge of Computer Science. In fact, it seems to be so hard that nobody has managed to do it well so far.

      You've obviously never used Nota Bene.

      --
      You are welcome on my lawn.
    8. Re:You don't understand what CS is by Seumas · · Score: 1

      Typing *is* taught in elementary schools. I was taught to type on Commodore 64s. In first grade. In 1984. I have nothing against home schooling, but if you're waiting until high school to teach typing, you are doing it wrong. You may as well also be touching reading and writing as a "pre-CS course".

    9. Re:You don't understand what CS is by elfprince13 · · Score: 2

      Given that he has an M.S. in CS, I suspect that he does. Nonetheless, most of what you need to know about Word, Excel and Powerpoint can be found here: http://xkcd.com/627/

    10. Re:You don't understand what CS is by SETIGuy · · Score: 3, Funny

      No, he's calling someone who thinks using a word processor is computer science stupid. Home schooled kid aren't necessarily stupid. They're not necessarily smart either.

    11. Re:You don't understand what CS is by MokuMokuRyoushi · · Score: 1

      You may as well also be touching reading and writing as a "pre-CS course".

      Well, at least home schoolers can spell "irony".

      --
      Humans are terrible replicators of Godly things.
    12. Re:You don't understand what CS is by Samantha+Wright · · Score: 4, Insightful

      I agree with the tone of your post, but your analogy is off-base and troubles me. Arithmetic is a direct underpinning of mathematics. The equivalent computer science task would probably be learning how to break instructions down into discrete and logical steps. Computer science as a discipline is fundamentally about procedures and algorithms, just as mathematics is about numbers and equations, and set theory is about relationships and groups.

      Consequentially, using Office is less of a computer science curriculum element and more like a general life skill that involves computers. It's true that working with computers as a user is an important preface to learning how to program and think in the exact terms of a computer, but by no means does it fit the same position as arithmetic does for mathematics.

      A better post might be "c'mon, guys, he's got a Masters degree. Stop being dicks about semantics and realise that he knows what he means better than most of you do."

      --
      Bio questions? Ask me to start a Q&A journal. Computer analogies available for most topics!
    13. Re:You don't understand what CS is by SETIGuy · · Score: 4, Insightful

      If you've got a computer at home, and your kid can't use a word processor by high school, then something is wrong. Even more so, I think something is very wrong when we need courses to teach people to word process or use a spreadsheet. If you need a course to teach something, you must not want to do it very much.

    14. Re:You don't understand what CS is by camperdave · · Score: 3, Insightful

      Nonsense. The person may not know the software well enough themselves to teach it properly. Having a curriculum means they'll cover areas that would otherwise not even be on the radar.

      --
      When our name is on the back of your car, we're behind you all the way!
    15. Re:You don't understand what CS is by AngryNick · · Score: 3, Interesting

      Come on Slashdot, be reasonable. Maybe these topics don't represent what would be found in a traditional CS curriculum for college, but they sound like the very subjects that a pre-CS course at the high school level would be wise to teach.

      Exactly. Many computer classes in middle and high school are mostly fluff...at best review for kids who have been using a computer since birth.

      I've taught my partially homeschooled kids (10 and 13) how to use the common OSs and basic tools (OSX, Ubuntu, Google Apps, Open Office), how to create and manage content (docs, spreadsheets, graphs, simple web pages, blogs, wiki), navigating and managing their drives (so I don't have to help them find their crap after they've created it), and how to be pretty much self-sufficient on their machines (installing apps, patching, upgrading distros, connecting to printers, etc.). When they get to be 14 or 15, I'll start them on databases, writing queries, and maybe writing a few scripts. At that point they'll be on their own to decide what they want to do with computers. My goal is not to make them CS majors, but to give them enough information to decide if they want to be a CS major...and the skills necessary to use a computer as a tool.

    16. Re:You don't understand what CS is by Yosho · · Score: 1

      If you need a course to teach something, you must not want to do it very much.

      Who in their right minds wants to use a spreadsheet application?

      Seriously, though, it's a useful tool for some applications, but I'm pretty sure nobody wakes up in the morning and wishes that they could type a bunch of numbers into some cells and then figure out their standard deviation. It's the kind of thing that you don't understand the use for until after you've learned how to use it.

      --
      Karma: Terrifying (mostly affected by atrocities you've committed)
    17. Re:You don't understand what CS is by spauldo · · Score: 1

      Elementary school typing was far from universal when the Commodore 64 was available - your school was the exception, not the rule.

      I'm probably around the same age (I had a Commodore at home during elementary school, that I two-fingered half to death) and the local school system I attended taught it in high school. When I took the course, half our time was spent on 286s and the other half on IBM electric typewriters.

      I believe typing is now taught in middle school in my district.

      --
      Those who can't do, teach. Those who can't teach either, do tech support.
    18. Re:You don't understand what CS is by steelfood · · Score: 1

      Eh? Your analogy fails. The "addition, subtraction, multiplication, and division" of CS is AND, OR, NOT, XOR, union, intersection, and subtraction.

      Word processing and operating systems barely qualifies as an intro to IT, if that much at all.

      --
      "If a nation expects to be ignorant and free in a state of civilization, it expects what never was and never will be."
    19. Re:You don't understand what CS is by spauldo · · Score: 1

      A kid sees a word processor or a spreadsheet as something they use when they have to do so, because of school. Most kids won't experiment with them.

      A course teaches you not only the basics of how to use the programs, but other features that are occasionally very useful but not apparent to the casual user. Things like pivot tables aren't obvious to someone who only cranks up Word to do book reports.

      I had used office software since WP 5.1, and Microsoft Office since Office 95. When I went back to college, one of the requirements for all students was to take a course on using Microsoft Office. I thought I knew everything I needed to know about it (except for Access, which I had played around with but never seriously used) and I was surprised by the things I never knew were there. I ended up learning quite a bit.

      --
      Those who can't do, teach. Those who can't teach either, do tech support.
    20. Re:You don't understand what CS is by AK+Marc · · Score: 1

      My CS covered intro to OS. My CS covered processor design, followed by BIOS to make that a little more programming friendly, then the OS that goes on top of that, in addition to classes specifically named "OS design" or something like that.

      And there were database electives. And every class assumed programming, in addition to a few specifically on programming to make sure that you knew the languages that were common when the professors were in college (and yes, I even had to program a single program on punchcard because the professor thought it necessary to teach the old ways).

    21. Re:You don't understand what CS is by catmistake · · Score: 1

      This is a silly response and demonstrates a limited understanding of the scope of your discipline and where it fits into the continuum of education. Sure, these topics are not appropriate for a college level CS course, but that doesn't mean they aren't related to computer science.

      You are entirely incorrect. GP is right on. None of that has anything to do with Computer Science. NONE OF IT, regardless of the level. The OP has merely expressed an extremely common misnomer... that stuff that has to do with computers is Computer Science. In fact, Computer Science has nothing to do with computers. It has to do with very specialized Mathematics. You can think of it more correctly as the Science of Math rather than the Science of Computers. I think it should have been called "Computing Science;" there'd be less confusion.

    22. Re:You don't understand what CS is by fermion · · Score: 1
      There is nowhere in a computer science curriculum where offica applications are an appropriate subject. That would like learning to use your pencil in math class. Presumable one learns to use writing implements elsewhere. Also, one should already know how to add and subtract prior to high school. If the OP has asked for addition, subtraction, and multiplication the answer would be the same. No such animal in a high school curriculum.

      A good CS program should allow the student understand, on a fundamental level, how the computer works. Once that happens any program the student uses is no longer a set or random commands, but a systematic means of processing data. The teaching of officer applications is the anithesis of computer science. There has been a whole generation of computer users that have no idea what is going on, and are stuck with sub minimal skills in low wage jobs.

      Here is what I would do for a curriculum. I would start with a Python book that introduces concepts. I woulld them move to Java or C++ depending on what the end goal is. I would introduce some theory, such as taught in The Art of Computer Programming. At this point some architecture and skill training is in order, perhaps using Pragramtic Programmer, the practice of programming, or design patterns.

      Ultimately what is taught is going to depend on what the student is going to do. If the student going into physical science, for instance, then there are specific books that teach, for instance, Python for physics. If the student is interested in bussiness, there are other books that lean in that direction. For financial modeling and stochastics, that is a lot of theory.

      --
      "She's a scientist and a lesbian. She's not going to let it slide." Orphan Black
    23. Re:You don't understand what CS is by softWare3ngineer · · Score: 1

      think the correct syntax is 'computer science != word processing' :-).

    24. Re:You don't understand what CS is by Seumas · · Score: 1

      Unfortunately, they don't apparently understand it well enough to use it properly. :)

    25. Re:You don't understand what CS is by bill_mcgonigle · · Score: 1, Insightful

      If you need a course to teach something, you must not want to do it very much.

      You mean like a Mom apparently teaching an entire high school curriculum? I had a handful of excellent teachers in high school but I can't think of any of them who could have taught all the subjects.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    26. Re:You don't understand what CS is by softWare3ngineer · · Score: 1

      This has always been one of my favorite xkcds. Someone should make it into a x-mas card so we can hand it out to relatives over the holidays.

    27. Re:You don't understand what CS is by eclectus · · Score: 2

      I had a (well known and respected) professor in college who used to use spreadsheets to build neural networks. After seeing that, I gained a lot of respect for both the man and the tool.

      --
      This signature is a waste of 42 characters
    28. Re:You don't understand what CS is by EvilAlphonso · · Score: 1

      (and yes, I even had to program a single program on punchcard because the professor thought it necessary to teach the old ways).

      An ex-colleague had to use punch cards daily on his first job... the guy is younger than me and punch cards were already off the curriculum when I studied CS. One shouldn't assume that a technology will never be encountered and thus shouldn't be taught just because it has been deemed out of fashion.

    29. Re:You don't understand what CS is by drinkypoo · · Score: 1

      Microsoft actually did it twice, once on the Mac and once on the PC. Of course, it's been quite some time since Office '97, and even longer since Word 5.1...

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    30. Re:You don't understand what CS is by stoolpigeon · · Score: 1

      Years ago I was taking a Java class. My wife was writing software for a synthetic aperture radar system and one of the key portions of her work was done by a physicist that did all his work in MS Excel. Then her employer would hire an intern to type the output from the spreadsheet (columns of numbers) into a flat file that their software could read.

      I had a lot of fun showing her how to write something that could open and read the spreadsheets. While I helped her do that I got to see a bit of this guy's work and it was impressive as all get out.

      --
      It's hard to believe that's how Micronians are made. Why don't we see it right now by having you both kiss one another?
    31. Re:You don't understand what CS is by RobDude · · Score: 4, Insightful

      As someone with a BS in Computer Science and an in-progress Masters; I think it's safe to say anyone who is offended by this question is a d-bag.

      Unless you are certain it's being used as a backhanded insult, all this means is someone doesn't fully understand what 'Computer Science' is. That's really not a reason to be offended. I don't really understand Physics, or Chemical Engineering, I'd hate to be afraid of asking a harmless question because I'm likely to offend some overly sensitive guy waiting to jump over a n0ob who only wants to learn.

      Besides, what qualifies as 'Computer Science' is pretty subjective anyway. I took a 300-level 'Computer Science' class that was called 'Unix'. It covered basics of the operating system....things as simple as creating directories were covered. And it was very much apart of the Computer Science curriculum at a moderately respected 4-year University.

    32. Re:You don't understand what CS is by ctnp · · Score: 1

      I went to an inner-city grade school (k-12) in the mid 80s and was taught programming in Logo on C64s. If we're teaching _typing_ to middle school kids in 2011 we're doing something really wrong.

      Really.

    33. Re:You don't understand what CS is by ctnp · · Score: 1

      Sorry, I misedited... an inner-city Catholic grade school (k-12)

    34. Re:You don't understand what CS is by RobDude · · Score: 1

      I thought one of the core values of 'Computer Science' is that it is language agnostic, by definition.

      I'm not sure if you are talking about Visual Basic (6.0) that was released in 1998, or if you are talking about VB.NET; but I'm pretty sure you can handle many fundamental CS concepts in both.

    35. Re:You don't understand what CS is by RobDude · · Score: 1

      I generally agree with what you are saying; but it's important to remember the context.

      In a college-level English class, sure, it's absurd to cover how to hold a pencil. But that *is* taught in our school system....just at a much younger age. If I were going to teach my 13 or 14 year old kid Computer Science (and he hadn't already been exposed to computers), I would not start with a B+ tree. I would start with typing. I'd also encourage him to do 'cool' stuff with the computer. He might not understand the underlying CS Theory that allows that cool flash game to be awesome but again, isn't that approach really common in junior high level physics and chem classes? Show kids cool stuff, have them build cool stuff....then teach theory. It might be years before a kid can fully explain and calculate everything involved in his 5th grade pumpkin launcher he built, but building it was fun, and taught him stuff, and maybe, kept him interested in what can be an overwhelmingly boring topic.

    36. Re:You don't understand what CS is by catmistake · · Score: 1

      At its core, CS is the study of the properties of computing devices and their programs.

      No, dude. No. You are way... way off. Computer Science existed LONG before computers or programs. At its core, and in the simplest terms, Computer Science is Mathematics.

    37. Re:You don't understand what CS is by ewanm89 · · Score: 1

      Typing: public class Hello{public static void main(String[] args[]){System.out.println("Hello World!");}} would be far more relevant than anything in a word processing class, ooh, I can change font :).

    38. Re:You don't understand what CS is by ewanm89 · · Score: 1

      What's wrong with the export to csv option?

    39. Re:You don't understand what CS is by ewanm89 · · Score: 1

      I first started to learn programming in primary school (first 6-7 years of school in the UK), it was called logo, and we had these robots called turtles that worked in much the same way. As I said in another comment, computer science starts at intro to programming.

    40. Re:You don't understand what CS is by TapeCutter · · Score: 1

      When I was at HS boys were not allowed to take typing classes, those classes were aimed at future secrataries (and every one knew only girls grew up to be secrataries). I learnt to two-finger-two-thumb type in my early 30's while studying for my CS degree. I could probably go a lot faster than 30-35wpm if I learnt to touch type but it hasn't hindered my career over the last 20yrs and I'm now too old and grumpy to care what other people think about my typing/driving/walking speed.

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    41. Re:You don't understand what CS is by ewanm89 · · Score: 1

      He said it was the mathematics of computing devices, this is very true, even in the days of pascal and babbage.

    42. Re:You don't understand what CS is by ewanm89 · · Score: 1

      An abacus is a computing devices, there are algorithms to use with it.

    43. Re:You don't understand what CS is by Linzer · · Score: 1

      What's wrong with the export to csv option?

      Shhhh! Now you've ruined it for him, you insensitive clod! It seemed so clever at the time...

      --
      Gravitation is a theory, not a fact.
    44. Re:You don't understand what CS is by ipwndk · · Score: 1

      In CS we use math, so it really is computer science =/= word processing :) computer science => word processing

      --
      01 REDEFINE REALITY.
    45. Re:You don't understand what CS is by Linzer · · Score: 1

      I think it should have been called "Computing Science;" there'd be less confusion.

      Indeed, in German and in Romance languages like French and Italian, CS is referred to as 'informatics', which should remove the confusion. Strangely enough though, at this point I think most speakers of those languages have also managed to equate the term with 'stuff that happens on computers', which is kind of true from a purely practical perspective (that is, forgetting that there is a theory behind all that). At least the phrase 'computer science' has the merit of including the word 'science'.

      --
      Gravitation is a theory, not a fact.
    46. Re:You don't understand what CS is by js_sebastian · · Score: 1

      If word processing is computer science, then learning to type on a keyboard is English Literature. The first time a kid has to write an essay and deliver it, he will learn how to use a word processor.

    47. Re:You don't understand what CS is by maxwell+demon · · Score: 1

      Well, given the way most people use word processing, I think teaching them to use word processors properly would certainly be a win (hint: If you keep selecting fonts, you're doing it wrong).

      --
      The Tao of math: The numbers you can count are not the real numbers.
    48. Re:You don't understand what CS is by vlm · · Score: 1

      To give a concrete example, consider the something as simple as basic mathematics

      A much better example would be the mandatory standard /. car analogy. Combustion is a chemical process. Cars burn gas. Therefore teaching drivers ed is part of the continuum of chemistry training.

      --
      "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
    49. Re:You don't understand what CS is by MBGMorden · · Score: 1

      In all fairness, as someone with a BS in Computer Science, at our school most of those entry level computer usage classes WERE labeled as computer science classes (all 100 level courses), so the general population of students might would get the idea that that's what the major as about. That said, our curriculum had a list of all those courses and specifically stated that THOSE Computer Science courses could not be applied towards a CS degree.

      --
      "People who think they know everything are very annoying to those of us who do."-Mark Twain
    50. Re:You don't understand what CS is by MBGMorden · · Score: 1

      I believe typing is now taught in middle school in my district.

      That's when it was available to me, and I am just a tad younger than you guys from the sounds of it. Sounds like the right time to offer it though. No sense in teaching typing to kids that are still learning to read at a basic level.

      --
      "People who think they know everything are very annoying to those of us who do."-Mark Twain
    51. Re:You don't understand what CS is by MBGMorden · · Score: 1

      Strange. I have older coworkers (close to retirement) that still seem to have that attitude. I learned touch type when I was in school - and got really good at it. I can do about 125wpm or so when I just have a copy or something to transcribe (if I'm thinking of what to say as I type it it's naturally a bit slower). I actually get moderately teased by the older guys of "typing like a secretary". They are in their late 50's/early 60's and somehow feel it more "manly" to hunt and peck :S.

      --
      "People who think they know everything are very annoying to those of us who do."-Mark Twain
    52. Re:You don't understand what CS is by MBGMorden · · Score: 1

      Most people who think they know word processors and ESPECIALLY spreadsheets without taking a course simply don't know how to use them right. The average idiot on the street still probably thinks Excel is like a database for just keeping track of phone numbers and crap. I've had people at work claim to know Excel and as soon as I started using formulas in front of the (I'm talking basic crap like =A1 + B1) they acted as if I was pulling out some super secret nuclear physicist level knowledge. In reality they though because they could type into the little boxes they knew how to use the software.

      --
      "People who think they know everything are very annoying to those of us who do."-Mark Twain
    53. Re:You don't understand what CS is by applematt84 · · Score: 1

      Agreed. These are intro courses for a Management Information Systems (MIS) Major. At the risk of sounding rude, has your mother tired Google? I'm sure there are PLENTY of home schooling resources available that would have the curriculum needed to prepare your siblings.

    54. Re:You don't understand what CS is by tepples · · Score: 1

      It's the kind of thing that you don't understand the use for until after you've learned how to use it.

      A lot of math is like that, which is why math textbooks use "story problems".

    55. Re:You don't understand what CS is by Hognoxious · · Score: 1

      What's wrong with the export to csv option?

      It isn't compatible internationally, that's what.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    56. Re:You don't understand what CS is by Samantha+Wright · · Score: 1

      Well, technically, it doesn't need to, no. Turing introduced his eponymous machines in the mid-thirties, when they were still nothing more than a mathematical formalism. Understanding and working with them doesn't require access to a computer, and while the turtle-pushing power of Logo is a really good introductory environment to prepare the mind for programming and CS, not even it is essential. A good working knowledge of, for example, sorting algorithms has practical value to someone who needs to organize a large collection of physical objects such as papers; similarly, the application of binary search to telephone books is a classic introductory example.

      --
      Bio questions? Ask me to start a Q&A journal. Computer analogies available for most topics!
    57. Re:You don't understand what CS is by JimFive · · Score: 1

      What's wrong with the export to csv option?

      You may be joking, but Excel has never exported to csv properly. It is erratic in using quotes around textual fields. It attempts to determine the type of the column based on the first few rows regardless of the cell format property and then discards data that doesn't fit its guess. If you need fixed width fields or numeric padding you can't do it. (Ok, Excel has VBA so you can, but "Save As..." to CSV doesn't do it.
      --
      JimFive

      --
      Please stop using the word theory when you mean hypothesis.
    58. Re:You don't understand what CS is by radtea · · Score: 1

      give him a break: he's being home schooled. Which probably explains word processing being CS...

      I'm not sure how being given a better than average education, better socialization and a broader range of experience qualifies him for a "break".

      Nor am I sure why repeating a prejudice of the ignorant that has been debunked so many times it's not funny qualifies as "insightful".

      And no, I wasn't home schooled and nor were my kids, but they have friends who were and anyone with a passing familiarity with the data knows that homeschooling is a perfectly sensible educational choice that works at least as well as the "warehouse your kids for 12 years" public school system.

      Seriously, "homeschooling = bad education" makes as much sense as "diversity of creatures = separate creation".

      --
      Blasphemy is a human right. Blasphemophobia kills.
    59. Re:You don't understand what CS is by gstoddart · · Score: 1

      In all fairness, as someone with a BS in Computer Science, at our school most of those entry level computer usage classes WERE labeled as computer science classes (all 100 level courses), so the general population of students might would get the idea that that's what the major as about.

      At my school, those classes were offered by the arts and commerce departments. The actual CS department stayed away from them.

      Basic computer literacy is not the same as "Computer Science". Those courses have nothing to do with "what the major was about" -- they're more the basic skills you need to do anything, and if you don't have any of them, why are you pursuing a major in CS in the first place?

      --
      Lost at C:>. Found at C.
    60. Re:You don't understand what CS is by bipedalhominid · · Score: 1

      Good post, I whole heartedly agree AND you must be new here.

      Timothy, go to your local community college and take the first few computer classes they offer. Then, if you are liking it go from there. Good luck Kid. :)

      --
      This aint Daytona and you aint Dale Earnhardt. So stop trying to draft on Interstate 40.
    61. Re:You don't understand what CS is by creat3d · · Score: 1

      This is Slashdot, did you expect people to answer the guy or to deride him for calling word processing "CS"?

      --
      Grammar nazis are to this community what excrements are to gold.
    62. Re:You don't understand what CS is by Hatta · · Score: 1

      Since when do you need a curriculum to teach basic computer operation? I'm sure most of us figured it out just fine on our own.

      --
      Give me Classic Slashdot or give me death!
    63. Re:You don't understand what CS is by WNight · · Score: 1

      If homeschooling has a stigma it's that it's often religiously motivated. Of course anything non-reality based is bad education.

      But when done right, by motivated people, it's the best.

    64. Re:You don't understand what CS is by Missing.Matter · · Score: 1

      Just took a look at their website. They need to hire a designer, asap.

    65. Re:You don't understand what CS is by creat3d · · Score: 1

      Logo was awesome. Look, I made a circle!

      --
      Grammar nazis are to this community what excrements are to gold.
    66. Re:You don't understand what CS is by SETIGuy · · Score: 1

      I had a (well known and respected) professor in college who used to use spreadsheets to build neural networks.

      That seems to be common in some fields. I was collaborating with some folks at a medical school on time series analysis methods. All of the data files I sent them were to large for Excel. :(

    67. Re:You don't understand what CS is by taiwanjohn · · Score: 1

      >all this means is someone doesn't fully understand what 'Computer Science' is

      Except the OP "timothy" claims to already have both a B.S. and an M.S. in CompSci. Oops.

      Actually I'd find it rather odd if his younger siblings didn't already know some things about word processing and spreadsheets. Perhaps he simply means a more rigorous and thorough exploration of these tools.

      --
      XML is like violence. If it doesn't solve your problem, you're not using enough of it. --AC
    68. Re:You don't understand what CS is by Quirkz · · Score: 1

      From what I've seen from most computer users after a couple of decades of tech support, that statement isn't even remotely true. And that's without talking about complex subjects like spreadsheets, databases, and basic programming.

    69. Re:You don't understand what CS is by anyGould · · Score: 1

      give him a break: he's being home schooled. Which probably explains word processing being CS...

      My high school "Computing Science" curriculum was: CS10: Word Processing, CS20: Spreadsheets, CS30: Databases.

      Most high school Comp teachers are just physics teachers who like computers (or one year, an English teacher who was thrown in there to fill the seat). He'll probably get a better education home-schooled, simply because they've already realized they need to find some better manuals/instructors.

      (I reserve the right to stop defending the home-schooler if he replies "that's OK, God will show me how to compile".)

    70. Re:You don't understand what CS is by TapeCutter · · Score: 1

      What attitude? I don't think touch typing makes you efeminate, I'm just pointing out it's a skill that some old farts (such as myself) were prevented from learning in HS because of the silly sterotypes of the 60's and early 70's. Touch typing would be handy for writing emails and documentation, but it's a long way from being an essential skill of a developer.

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    71. Re:You don't understand what CS is by SETIGuy · · Score: 1

      Who in their right minds wants to use a spreadsheet application?

      Spreadsheets do have their place in the scientific and engineering world. If your desired output is a table that can be computed in place, use a spreadsheet. If your inputs need to be entered by hand into a table, use a spreadsheet, even if only for the inputs to be exported as CSV. I've used spreadsheets to compute model stellar atmospheres, to solve differential equations numerically, to compute efficiencies for optical systems, to perform error analysis for any number of experiments, to model electrical circuits, to model digital logic, to track engineering change orders, to track component orders and deliveries, to prepare budgets... Spreadsheets are useful tools, but they shouldn't be the only one in a tool chest.

      I manage this despite having no training on use of spreadsheets, or ever having owned a book about spreadsheets. I'm sure there are features that I don't know how to use, but thus far it's been easier to use another tool than to learn those features.

    72. Re:You don't understand what CS is by anyGould · · Score: 1

      If you need a course to teach something, you must not want to do it very much.

      You mean like a Mom apparently teaching an entire high school curriculum? I had a handful of excellent teachers in high school but I can't think of any of them who could have taught all the subjects.

      Two points:

      You'd be surprised what a teacher can do with the curriculum - teachers can be reassigned to a new class yearly (very common for teachers just starting out). So your awesome English teacher this year could very well be sitting in front of the Biology class next year, even if they haven't taken Biology since *their* HS days. A good teacher could very well be able to teach all the subjects (particularly if the class size is two.) Hell, your elementary school teacher had to teach all the subjects, didn't they?

      Second, while Mom might not know everything, she apparently knows when she needs support material to look things up.

    73. Re:You don't understand what CS is by Hatta · · Score: 1

      I think the problem is that most people haven't learned how to figure things out for themselves. That should be the highest priority for any home schooler.

      --
      Give me Classic Slashdot or give me death!
    74. Re:You don't understand what CS is by anyGould · · Score: 1

      While Logo is a programming language (I remember using it in grade one, although my school didn't have the robot), at that age it's used far more for "can you explain what you want" than any sort of formalized programming.

    75. Re:You don't understand what CS is by SETIGuy · · Score: 1

      Yeah, well most people have trouble adding two numbers with a pocket calculator. That's part of why most people aren't suited for a CS education.

    76. Re:You don't understand what CS is by zeroshade · · Score: 1

      A good CS Unix class should cover much, much more than the basics of the operating system.

      Things as simple as creating directories were covered

      Unless you're talking about the design and architecture of the file system and what "creating a directory" actually entails at the low level, then that should have been part of the "here's the basic commands you'll need to know at the beginning" type stuff during the first week of the class. If the class only went over the usage of Unix as an operating system, then it doesn't belong as a Computer Science class.

      Years ago I took a "300-level" Unix class (well, we used 3000, but it's the same damn thing). After the mini-intro to using Unix since majority of the class had never dealt with it, we started going over how you would actually program in a Unix environment and what utilities/libraries are available to you. Using POSIX standards and how to program a basic shell, socket programming, using curses for providing interfaces in the terminal, etc. Many might look at this and go "that's programming, CS should be more academic," and I'd agree with you. However, most schools currently still make CS synonymous with software engineering. Either way, basic usage of an operating system or basic usage of an application (like word processing) is by not Computer Science by any imagination. So unless your Unix class covered how the operating system worked (like, algorithmically, theoretically, the data structures and ideas that went into designing it as a system) or how to create programs and system utilities (we created our own versions of basic Unix utilities like a shell, du, wget, etc.) or something more than basic usage, you can't seriously call it a Computer Science class.

      Regardless of the subjective nature of 'Computer Science' it's pretty obvious that using word processing, spreadsheets, etc. is not it. However, do not construe this with offence. I wholeheartedly agree with you that there is no reason to be offended. It's important for people to learn the difference between Computing and Computer Science and Software Engineering. They are often conflated to be the same or very similar while there is no explanation given as to the differences.

    77. Re:You don't understand what CS is by SETIGuy · · Score: 1

      So you're telling me you understand every feature of MS Word (or Open Office for that matter), all of the principles of both corporate and academic style/formatting/typesetting, and can apply them without a second thought?

      Yes. I prepare documents for publication all the time. The style/formatting/typesetting requirements vary by publisher, so it's the publisher's rules that matter, not the rules you find in a book on MS Word.

      Or in the case of Excel, you know all of the available functions, and how to produce effective visuals from the resulting data, and can apply this knowledge to any task without so much as a reference guide?

      Not necessarily all of the available functions, but the ones I need. A function list is available in help, if I need something I don't know the mangled name for. It's impossible to produce effective visuals in Excel. Excel graphs are only useful for near real time updates when data changes. For publication you need to export the data and use a real plotting package.

      And you know all of this without having either taken a course or studied it on your own time?

      Yes, unless you consider using Word and Excel in my own projects to be "studying it on your own time". I'm not suggesting that high school kids shouldn't know this stuff. I'm suggesting that if they don't know it already by the time they are in high school, most of the time it's probably not going to do any good to try to teach it to them now.

    78. Re:You don't understand what CS is by SETIGuy · · Score: 1

      Try posting in a non-anonymous mode. The mods are less likely to think you are trolling.

    79. Re:You don't understand what CS is by mcmonkey · · Score: 1

      If you've got a computer at home, and your kid can't use a word processor by high school, then something is wrong. Even more so, I think something is very wrong when we need courses to teach people to word process or use a spreadsheet. If you need a course to teach something, you must not want to do it very much.

      WTF? This should be modded 'Flamebait' not +5 Insightful.

      Word processors and spreadsheets can be used to create very complex documents. If your course is teaching how make a bulleted list, yes that is something a high school student should be able to figure out.

      But what about a multi-part form with sections are hidden/visible based on drop down and radio button selections in the form? And with a button to post the completed form to a web service?

      For all the talk about geeks and nerds here, I get the feeling for many on /. their knowledge is very shallow. If you are using a word processor as a text editor, sure, you'd never need a class for that. If you are using it as an application platform, which it has the capability to be, you might want a class or book or some reference.

      If you need a course to teach something, you must not want to do it very much.

      So you're expecting people to reinvent calculus, rediscover quantum physics, etc. Basically, universities shouldn't exist in your world. If someone wants to learn something, the last thing they should do is take a course.

    80. Re:You don't understand what CS is by MBGMorden · · Score: 1

      I was moreso talking about the attitude held by your school (ie, that guys shouldn't learn to type).

      but it's a long way from being an essential skill of a developer.

      About as much as broadband is, which means it is a de facto requirement. Essentially, typing speed is just another measure of throughput between two parts of the system. Just as broadband changes your whole workflow compared to dial-up, so does real typing (at a good speed) compared to pecking. What you're looking at is an 8 to 10x speed up between one of the most often used communication links in the system that requires only that you learn a simple skill and practice it (and practice is easy given that its something you'll be doing anyways virtually every day).

      I've seen a lot of developers (many the same guys I was referencing earlier) who hunt and peck to code, and let me say it is downright PAINFUL to watch. If we're at the same desk collaborating on something I almost just want to push them out of the way so I can type it sometimes, because its going so slowly.

      --
      "People who think they know everything are very annoying to those of us who do."-Mark Twain
    81. Re:You don't understand what CS is by catmistake · · Score: 1

      Yes, but this is not informative. Its the same as saying the atmosphere is the air of horses. Mathematics is mathematics. There are jokes to be made... such as distinguishing "clown math" or "blond math"... but if we are being honest, all true mathematics is simply mathematics. However, Mathematics isn't science... again, it's math. I believe that's were the distiction resides. Computer Scientists are, well, scientists. This is why a programmer isn't a Computer Scientist, per se.

    82. Re:You don't understand what CS is by catmistake · · Score: 1

      Think of a computer not as a device... but as a person, one who computes. Then apply that definition to Computer Science... and you'll begin to see that Computer Science, though primitive, must have existed before the abacus.

    83. Re:You don't understand what CS is by catmistake · · Score: 1

      I suspect you are getting caught up on the words. Today, when someone uses the word "computer" we immediately have an understanding of what that is: a machine. However, this machine is merely one that does the work of a human computer. Prior to mechanical computers, we had individuals that computed. The science of those individuals was the earliest Computer Science. We don't necessarily have direct evidence of this in the archeological record, but we know they must have existed, because we found their ancestors' primitive computers. Do you really believe that computers just spontaneously appeared, and then Computer Science was born?

      Looking at this in another way: Computer Science is a subset of Mathematics (and not, as some universities have tried to claim for marketing purposes, an engineering discipline). Mathematics is an a priori knowledge. It exists without any connection to reality or experience. Long before humans, long before the Earth, long before the Solar System, there was Mathematics.

    84. Re:You don't understand what CS is by slapout · · Score: 1

      I had a programming class once where I had to submit the source code (Perl, I think) inside a MS Word document.

      --
      Coder's Stone: The programming language quick ref for iPad
    85. Re:You don't understand what CS is by MokuMokuRyoushi · · Score: 1

      Well, hopefully everyone can explain their angle. Am I just not seeing the joke, or are you saying that I defined that typo(?) as "irony" wrongly?

      --
      Humans are terrible replicators of Godly things.
    86. Re:You don't understand what CS is by TapeCutter · · Score: 1

      What you're looking at is an 8 to 10x speed up

      I doubt it, I've never heard of anyone typing at ~300wpm.

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    87. Re:You don't understand what CS is by MBGMorden · · Score: 1

      People have hit 200+WPM, but realistically most people that I'm familiar with who think they're pecking at 30+WPM simply are overestimating their speed, or found a test composed completely of words less than 4 characters long to take and see a number and pump up their self esteem some. To realistically do more than 30WPM you need to be averaging no more than 2 seconds per word typed. With touch typing that's nothing. I've never seen peckers do that with anything more complicated than "The cat goes to the box." type stuff.

      --
      "People who think they know everything are very annoying to those of us who do."-Mark Twain
    88. Re:You don't understand what CS is by TapeCutter · · Score: 1

      I do 30-35 wpm on the same test my touch typist partner does ~100wpm, and she is the fastest typist I've seen. As I keep saying TT is a useful skill, but in 20yrs as a softwer developer two finger typing has never stopped me getting my job done just as fast as touch typing dev's. If I was a secratary you might have a point, but I'm not, so you don't.

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    89. Re:You don't understand what CS is by TBone · · Score: 1

      I was moreso talking about the attitude held by your school (ie, that guys shouldn't learn to type).

      That wouldn't have been "his school", that would have been just about every high school during the 40's to 70's. Women took Home Economics (a.k.a. Cooking) and maybe Typing if they were on a "career track", and men took Shop.

      Of course it look ridiculous for things to have been that way, looking at them 30-40 years in the past. That's because society changed.

      Now we all know that you have to "sudo make me a sammich" to get your women to get it done. :)

      --

      This space for rent. Call 1-800-STEAK4U

  2. CS? by Anonymous Coward · · Score: 1, Interesting

    Word Processing? Spreadsheets?

    Are you sure its CS that she wants to teach?

    1. Re:CS? by Omestes · · Score: 1

      These are children, not college students.

      These are people in high school, not children. We had a class that touched on typing, word processors, and basic Windows operation in high school, but it wasn't CS, it was "intro to computer use", or somesuch. It was a nice thing in the early 90's, since many of the kids in our school didn't have access to computers yet. Its 2011, I'm guessing that most kids have a computer at home and use it rather frequently (this is high school).

      Around the end of my sophomore year or beginning of my junior, they broke the program into two tiers, and started to offer actual programming. One bit contained "touch typing", and "basic word processing", "how to use windows"; the other has BASIC and intros to various languages. The latter program was called CS, the former was rolled into the business and vocational programs.

      It's 2011, kids should know how to type by the time they get out of junior high. They should understand what they need to know about word processors and Windows by that time as well. Also, CS isn't "how to use a computer", it means something much deeper than that. The "how to use a computer" stuff is pure vocation, where CS is the nuts and bolts.

      Amusingly, me and my friend were such terrors in the "typing" class (damn hunt and peckers typing at 80-100wpm), that the teacher kept us out of trouble by making us tear down all the old AT&T boxes (once you go green and black you never go back!), and help the people hired to set up all the new Windows machine labs. After he did this, me and my friend were his free techs, hunting down wire snags and bad cards, fixing bad installations, and sitting around his server room/office drinking coffee for credit (instead of actually having to participate in his classes...)

      --
      A patriot must always be ready to defend his country against his government. -edward abbey
  3. Dietel & Dietel by Sonny+Yatsen · · Score: 5, Informative

    As far as intro to programming goes, when I took High School Computer Science, our textbook was the Dietel & Dietel C++ How to Program. It was definitely aimed at the beginner to intermediate level programmers and did a pretty good job at explaining fundamentals of programming to a bunch of high school sophomores and making it understandable. As I recall, you can probably go through several chapters per class because it's not so dense and impenetrable that you need bash your way through.

    Here's a link to the 7th edition: http://www.amazon.com/How-Program-7th-Paul-Deitel/dp/0136117260
    However, there are plenty of copies of 6th editions floating around for pretty cheap. If I recall correctly, copies of the 5th edition are even available for download for free, which makes the curriculum that much more cost-effective.

    Anyway, best of luck, hope that helps.

    --
    My postings are informational and does not constitute legal advice. Act on it at your risk.
    1. Re:Dietel & Dietel by jd · · Score: 5, Informative

      Good advice.

      My thought: It doesn't matter where you learn or how you learn, the fundamentals are universal.

      AQA offers a suggested schooling curriculum and past papers for the exams they set. Sure it's UK not US, but C is C, HTML is HTML, MS Office is MS Office and small furry creatures from alpha centauri make great soup if you put them in the blender for long enough.

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    2. Re:Dietel & Dietel by Abreu · · Score: 1, Flamebait

      However, this text teaches has nothing on creationism or the genealogy of the hebrews, and therefore it's useless for the homeschooling crowd.

      --
      No sig for the moment.
    3. Re:Dietel & Dietel by bosef1 · · Score: 3, Insightful

      The only thing to watch out for is that, given the rapid pace of computer technology development, many older edition training course may have been rendered obsolete by the passage of time. I would be cautious about material older than 10 years (circa 2000), and material older than 15 years (circa 1995) is probably too old to use. Observe the changes to Java, C++, Ruby, and streaming media in those time frames

      Of course, many of the fundamentals of computer science (algorithms and algorithm analysis) and software development (structured programming, abstraction) haven't changed, but then it comes down to whether you are doing a more "technical" introduction to computer programming, or a more "abstract" introduction to computer science.

    4. Re:Dietel & Dietel by ironjaw33 · · Score: 1

      As far as intro to programming goes, when I took High School Computer Science, our textbook was the Dietel & Dietel C++ How to Program.

      While my high school CS instructor provided her own take home lecture notes and assignments, I also picked up this book to help with the more difficult topics for first time programmers, such as pointers. I definitely found it helpful as I was completely new to programming at the time.

    5. Re:Dietel & Dietel by jdpars · · Score: 3, Insightful

      Abreu was being overly cruel, yes, but you should look at the survey statistics for the number of parents who pull their kids out of school for "religious reasons" or (self-described) "radical unschooling." The benefit homeschoolers get compared to the rest of children in some sort of education system is that their parents are involved in their schooling.

    6. Re:Dietel & Dietel by orangesquid · · Score: 1

      What?!?! The INTERCAL manual hasn't been rendered obselete at all!
      Of course, you really ought to start with fundamentals, like Brainf***, before moving on to a structured language like INTERCAL.

      --
      --TheOrangeSquid Is it any wonder things seem so awry? We swim in a sea of confusion and don't have to think to survive
    7. Re:Dietel & Dietel by camperdave · · Score: 3, Funny

      C is C, HTML is HTML, MS Office is MS Office and small furry creatures from alpha centauri make great soup if you put them in the blender for long enough.

      Blender: Now THAT needs a good tutorial!

      --
      When our name is on the back of your car, we're behind you all the way!
    8. Re:Dietel & Dietel by i.r.id10t · · Score: 1

      Unfortunately, there is no perceived glory in writing docs - of any kind.

      --
      Don't blame me, I voted for Kodos
    9. Re:Dietel & Dietel by Sipper · · Score: 1

      As far as intro to programming goes, when I took High School Computer Science, our textbook was the Dietel & Dietel C++ How to Program. It was definitely aimed at the beginner to intermediate level programmers and did a pretty good job at explaining fundamentals of programming to a bunch of high school sophomores and making it understandable.

      I really liked the Dietel & Dietel books, also. At SUNY New Paltz, engineering students that take C are using the Kernigham and Ritchie book, the authors of C, and that seems to be working out very well. This is where you'll find out what a "K & R block" is. Had I the opportunity to start all over again, I would have started with the K&R book, and then gone on to Dietel & Dietel.

      Link to the 2nd edition: http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628

      The reason I mention this is that C is a subset of C++, so if you want to start with the basics of non-OOP C++, it might make sense to start with C, depending on your end goals. For instance, the Linux kernel is C and Assembly, not C++. C is also common in embedded systems. The other reason to start with C would be to gain understanding of pointers. These can be very useful in C++ also.

    10. Re:Dietel & Dietel by smisle · · Score: 2

      I was homeschooled in highschool, and I can tell you that it was hard to get along with the other homeschool families .. as soon as they found out that we weren't "christian" we were summarily kicked out. I didn't really learn programming (futzed around with BASIC on our TRS-80), but I taught myself HTML, and a lot about computers just by using one. Now I run a computer repair shop and do web design on the side. The most important thing I learned was how to teach things to myself.

      To answer the FQ, first decide if you really want to teach CS or if you just want to teach how to use a computer. If you just want them to learn how to use a computer, there are a lot of textbooks out there aimed at that crowd, just look in any college bookstore (there are CS 90 classes that will have textbooks on the right level)

      If you are actually interested in teaching Computer SCIENCE, then it will be a little tougher, cause that isn't really taught these days. Start by getting a computer that can be easily reformatted, and put a *nix operating system on it. Install some programming language .. Ruby, Python, PHP ... whatever .. something that makes using strings easy, cause that's what's fun as a beginner. Any kid in highschool can learn the basics of programming .. don't need a textbook, go with the type of book you would use if you were learning a new language as an adult, cause that's what school is for ... preparing you to become an adult. Teach the kids to make shell scripts, tweak and recompile other people's programs, get them involved in the community, lol .. have them post on slashdot ;-) make them read xkcd ... This way, when they get to collage, they will have actual experience in REALLY using a computer and can start to apply the higher concepts that are harder to pick up as you go. And, if they aren't interested in CS as a career, at least they'll be able to use their own computer. You can thrown some hardware stuff in there too for good measure .. can't go wrong with knowing a hard drive from a floppy disc ;-)

      --
      I'm not a bird, I'm a super-advanced flying stealth dinosaur!
    11. Re:Dietel & Dietel by Gr8Apes · · Score: 2

      As far as intro to programming goes, when I took High School Computer Science, our textbook was the Dietel & Dietel C++ How to Program. It was definitely aimed at the beginner to intermediate level programmers ...

      Lucky you, C++ didn't exist when I went to High School. Hell, the first real book on C had just come out, and certainly wasn't in use in my high school.

      That said, Steven Prata's Primer on C++ was pretty useful for OO concepts. It's now in it's 5th edition. Sigh. But it all depends upon what you want to learn. In the Java language (my current meal ticket) I wouldn't even know what to point you to since all the books I originally used are horribly out of date and I haven't bought one in at least 7 years. I can tell you that most of the grads out of college don't know a lick of true CS concepts though, they barely know Java syntax. Makes you wonder what happened to colleges over the past few years? (many years? 5s of years? decades? Let's just skip that thought.)

      All that said though, perhaps you want to look into Objective-C if you're interested in the Mac/iPhone/iPad world.

      Honestly, I'd work on concepts, and start with C and then add an OO language such as C++/Java/Objective-C. It will teach you many things and adding any other language afterwards should be relatively trivial. Assembly remains its own forte, however. That's a different beast, also worth knowing, but mastering it is worthwhile as mastery can apply broadly. Note the key: mastery. Just "knowing" assembly doesn't gain you much.

      I really would start with C for 6-9 months, then add 3-6 months of assembly just for exposure, then about a year or 2 of C++/Java/Objective-C for OO concepts. They should be more ready than most for the market after that.

      --
      The cesspool just got a check and balance.
    12. Re:Dietel & Dietel by bears · · Score: 1

      Bloody hell, someone actually answering the OP's question.

      I'll second the answer. Look on AQA's website for their A level Computing syllabus. NOT, repeat NOT, the ICT A level syllabus. The latter is a pile of foetid dingoes kidneys. The Computing syllabus isn't bad. From memory it doesn't include much in the way of 'how to do bold fonts in Windows'. If you really need that, plunder the ICT syllabus; it's that plus a load of cargo-cult ideas about how computer systems get written, which should be hurled aside with great force.

      There are several different boards that set A level syllabuses, of which AQA is one. I've no reason to prefer them over the others, just that's the one that I read.

      In other news, I have a low opinion of the Deitel books. The ones I've browsed might as well have been written by a computer. But that's by the by; the OP emphatically doesn't want a 'how to code', but a course outline covering more than the nuts and bolts of coding some language.

    13. Re:Dietel & Dietel by Attila+Dimedici · · Score: 1

      and small furry creatures from alpha centauri make great soup if you put them in the blender for long enough./quote. Written by someone who doesn't know how to make a good soup. The correct way to make soup out of small furry creatures from alpha centauri (the blue ones taste best), is to skin them and gut them and put them in a crock pot for 8 hours. The hard part is getting the alpha centauran vegetables, my local produce shop doesn't carry any.

      --
      The truth is that all men having power ought to be mistrusted. James Madison
    14. Re:Dietel & Dietel by vlm · · Score: 1

      then it comes down to whether you are doing a more "technical" introduction to computer programming, or a more "abstract" introduction to computer science.

      In other words, are you trying to provide training, or provide education? Either are fine, just don't confuse the two or try to mix them up.

      Standard /. car analogy is in the field of automotive suspension components you can either:

      1) Train the kid to replace the shocks on one specific 1998 GM model, noting that other cars are of course different, but all are vaguely similar. If the kid is looking for a mechanics job at a GM dealership, this is experience is valuable, but if at a Toyota dealership, this experience is mostly (yet not entirely) useless.

      2) Educate the kid to simulate the car suspension parts using a computer and differential equations, and then run the simulated car over simulated cobblestones at various speeds, potholes of various depths, etc, and try to tune the suspension for either smoothest ride or most traction. This is a useful experience for a future engineering employee of any wheeled vehicle manufacturer.

      --
      "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
    15. Re:Dietel & Dietel by Veretax · · Score: 1

      C could be a good Language, Ada is an interesting one also, but I wonder if VB or VBA is more useful? The other thing for home schoolers that I wonder, is what environment we let them run in. We home school our son, and he's starting 4th Grade, and i want to give him something small to whet his appetite. If he likes it then I'll provide more. If he hates it, I may still provide him more, but in lower dosages, LOL. I feel programming may become a skill like working on cars, where a lot of people will do it in their spare time, or in parts, without it being the focus of a career.

      The real question I have about home schooling and programming is what environment to setup. For us we have windows machines so that limits us. I want to get him some basic ideas about programming, but I'd also like to keep him from offing my desktop that he would be using as well. So given that I'd like to give him a little protection as he starts to learn this, what do you guys recommend as a language that provides a lot of the basics. I'm less concerned about OO right now, as procedural style programming? Would you go VB? VBA within say excel or access? Would you use C or C#? Things like that are questions that really need to be answered before you begin a course like this I think.

    16. Re:Dietel & Dietel by Anonymous Coward · · Score: 1

      I recommend JavaScript. The syntax is a lot like C, it doesn't require anything but a text editor and a browser, you can see the results instantly, and there are huge numbers of books and fun examples available.

      You may have to undo some of the object-oriented weirness later, though.

    17. Re:Dietel & Dietel by jd · · Score: 1

      The AQA is the exam board that resulted from the merge of the JMB into a number of other exam boards. The JMB universities (Manchester, Sheffield and Lancaster are the three I recall) who ran the original JMB exam board have exceptionally strong reputations in computer science and software engineering. This doesn't mean much for how it is today, only that historically that was always a good place to look for that kind of skill.

      However, for the purposes of the OP's question, the main considerations are that they have a clear syllabus and several years of past exam papers to practice with. In home education, the quality of the instructor is a total unknown, as is the quality of the "IT facility" (read: home computer). Without this information, the best syllabus in the world could be a disaster but then the worst in the world could also be a great starting-point for amazing success. But with known exam papers where the percentage of takers with any given grade is also known, it should be quite easy to get a feel for where a person in in relation to their peers.

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    18. Re:Dietel & Dietel by jd · · Score: 1

      If Alpha Centuran vegetables are unavailable, you can substitute those from Proxima Centauri. Do not, however, use root vegetables from Cygnus X1.

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    19. Re:Dietel & Dietel by raddan · · Score: 1

      I think sticking with the procedural/imperative paradigm is fine for starters. It's an intuitive way to understand how a computer works, and the procedural idiom extends way "under the hood" even in modern computers. You can use the metaphor of making food from a cookbook.

      VB isn't terrible, but the language is not particularly organized, so features cannot be inferred like in newer languages. If you have a Windows machine, you should probably stick to .NET languages, and there are an absolute ton of them. C# is very much like Java, and Visual Studio is probably the nicest IDE I've ever used (insanely better than Eclipse), but you can run Ruby, Python, Scala, you name it, on .NET. The only redeeming quality of VB is that it is deeply integrated into MS Access, so that if you want your son to play with databases, he can leverage his VB knowledge. Access is nice for beginners because it lets you build a database visually, with ER-diagram-like construction tools. That said, programming in Access is of the "event-driven" style, and making the leap from strictly procedural to event-driven is difficult for some programmers.

      But you may find that many of these languages are still over the head of a 4th-grader. For reference, I started with BASIC and eventually moved to C. But I also played with a number of toy languages along the way including Logo and the embedded language in the RoboWar game. RoboWar particularly stuck with me. The programming model was simple, and the game was a lot of fun, particularly since both my father and brother played along. It sparked an interested in trig while I was still learning algebra in school, since you could control your robots to a greater degree using trigonometric functions. Another option for beginners is "making webpages". This isn't strictly programming, since HTML is just markup, but it will introduce your son to some computer basics, and it provides a nice segue into programming-- not to mention, future programming jobs are likely to be in the web programming sphere. It is also fun. I can't stress the "fun" part enough. The entire reason I played with computers when I was a kid was because it was an enjoyable thing to do. That sense of fun will pervade his opinion of computers which will be necessary if he ever decides to do programming as a career, significant portions of which are "fun" only to masochists.

      I agree re: programming being a general-purpose skill. A little knowledge of how a program is executed on a computer along with some basic CS concepts would help anybody who has to do computer work nowadays.

    20. Re:Dietel & Dietel by Veretax · · Score: 1

      I'm pretty fluent with C#, and competent with VB. I just worry about giving a youngster too much of an environment to play in off the bat, and since I came to C# from Basic->C->Ada->C++/Java->PHP->C# the experience I have with it gives me some confidence. However, I also wonder whether it might be too much for a younger child, even one as intelligent as my son is. I've been contemplating HTML, then throwing in some CSS and JS. I haven't decided yet. Part of me is interested in Ruby, Python, or PHP as a starter for him. I don't know Ruby or Python, but I know I could pick it up. I just wonder whether it is better to shoot from something I know pretty well, or if I should be more concerned with how terse the language is to start.

      I decided yesterday that I could start with just some basic logical ideas, maybe flow charting type stuff, just to get him thinking about how control structures might work. 4th Grade might be too soon though.

  4. Avoid the office suite stuff by Dyinobal · · Score: 1

    Avoiding the office suite stuff, would generally be a good idea. It's generally far less important to know how to use and office suite than to know how to actually use a computer. Let's face it computers are important for what they give us access to today not for their ability to make nifty graphs. Find something that teaches your kids how to research, effectively using the internet. How to find a solution to a problem in an area they really don't understand and how to do so with out taking two weeks to do it. In short 'How strong is your google fu?'

    1. Re:Avoid the office suite stuff by bmxeroh · · Score: 1

      I agree with pretty much everything you say except for the avoiding the office suite stuff. Truthfully I haven't gone a day in probably 5 years that I haven't messed with a spreadsheet, and the fact remains, the rest of the people in the office uses stuff like this daily as well. Also in my experience, a lot of C-level execs like the nifty graphs, if not just so they don't have to deal with the actual numbers behind them. I've actually made it a requirement for everyone that reports to me to become some sort of proficient with Office, just because the rest of the world uses it so much and it will be that much easier to get a job over the next person that didn't bother to learn it.

      --
      Central Ohio Home Theater Installation - The Theater People
    2. Re:Avoid the office suite stuff by astrodoom · · Score: 2

      While I agree with the "google fu" sentiment, office has been a high selling point on just about every internship/entry level position I've held. Especially if you combine it with a bit of programming knowledge and a VBA object reference. I've had quite a few managers impressed with a simple VB script when it took their 100+ csv files and made nice graphs of them for a proposal or report. I've also discovered that if you have a good enough knowledge of the suite, you end up increasing productivity all around. For example, showing someone how to use proper formatting tools rather than the spacebar can save a lot of time for everyone who's working on the document.

    3. Re:Avoid the office suite stuff by crazycheetah · · Score: 2

      I'm going to second this on a limited scale.

      I took like 4 Office classes throughout High School (only one of which was not the exact same as the others--multiple high schools and cheating the system). The only thing I remember from any of them is what some of the concepts are called, which only makes going looking on Google or elsewhere for them that much easier. And really, if the student learns well this way, they should just be given a list of those concepts by name, and then taught how to find what they need to know on that topic. That should honestly include more than just the internet, though. Teach them how to use the library, and some times, you might need to invest in some books (I've got a couple of books that run through different programming and Office tasks, just because there are topics where it is much easier to find it in the book than on the internet, and those all come in handy for me at work now).

      Personally, that's how I taught myself programming (I took C++ courses in high school as easy things that I would already know all of, which worked; college then gets a bit more challenging for types like me). I figured out what concepts I would need to know and found information on them from the Internet and books. I actually took that same approach throughout school, too--I would skim the textbooks, get the concepts and learn them on my own through the textbook, internet, and other books, making class lectures just a review time for me, usually from a few subjects behind where I was in my own study... except I sucked at getting homework actually complete then, because I was too busy getting ahead of everyone else and the homework was already boring and old news to me. The essays and crap that some teachers liked to throw in at the end of the year for a significant portion of the overall grade was always easy, though, because I was already done learning everything (and more) a while back.

      But not everyone can learn that way, either. Some people need the more solid, clear direction. I personally think that those people will still benefit a lot from being taught how to find it, but they also need more clear direction on what to learn, when to learn, etc. Some people might be autodidact, but those like me in that regard seem to be the more uncommon types; most people need to be taught by someone else.

    4. Re:Avoid the office suite stuff by bosef1 · · Score: 1

      One of my friends had a similar experience. His background was in computer engineering, but he was doing a detail with the finance / accountancy group in his office to get some cross-training. He mentioned he spent a good part of his time updating and improving the finance group's VBA scripts.

      I also agree that having a better knowledge of the capabilities of your office productivity suite can save a lot of time. I've pretty much given up reformatting all of the poorly aligned, and space- and font-ridden documents that come across my desk from the various secretaries and administrative personnel in the company. I almost wish we had either a more complicated or more feature-limited office suite; so that only smart people could use it, or so that you couldn't shoot yourself in the foot with it.

  5. programming practice by icknay · · Score: 4, Informative

    For little live code practice problems in python and java there's http://codingbat.com/

    There's Google's complete free python class at http://code.google.com/edu/languages/google-python-class/

    For a huge library of cs assignments, try the nifty assignments archive at http://nifty.stanford.edu/

    1. Re:programming practice by Sonny+Yatsen · · Score: 5, Informative

      Don't Forget MIT's OpenCourseWare Intro to Computer Science lectures. It might move at a faster pace than for a high school student, but it should give your mother some idea as to how to structure the lessons and concepts.
      http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00-introduction-to-computer-science-and-programming-fall-2008/video-lectures/

      --
      My postings are informational and does not constitute legal advice. Act on it at your risk.
    2. Re:programming practice by Sonny+Yatsen · · Score: 1

      Sorry, not your mother, icknay, but the person who Asked Slashdot.

      --
      My postings are informational and does not constitute legal advice. Act on it at your risk.
    3. Re:programming practice by balbus000 · · Score: 1

      For my programming team practice in college, we used http://www.spoj.pl and http://www.topcoder.com

    4. Re:programming practice by crow_t_robot · · Score: 1

      Excellent post, Nick ;)

      I just did the whole python course (videos+exercises) and it was very well put together. Please get Google to post more courses....maybe some Haskell or Lisp!

      OR BOTH.

  6. Give them a system they can hack by betterunixthanunix · · Score: 3, Interesting

    Give your kids a system they can hack -- give them the ability to touch any part of the system they want, and your ability to teach them about programming and CS will be greatly enhanced. The last thing you should want is to teach your children that there are some parts of their computer or computer science that are off limits to them, or that they can only touch if they work for some large corporation.

    --
    Palm trees and 8
    1. Re:Give them a system they can hack by Purpleslog · · Score: 1
    2. Re:Give them a system they can hack by dolmen.fr · · Score: 1

      The last thing you should want is to teach your children that there are some parts of their computer [...] that they can only touch if they work for some large corporation

      What you learn when working for any large corporation is that you can't touch most parts of "your" computer because they don't trust the user.

  7. Best recommendations... by Anonymous Coward · · Score: 1

    I'd recommend checking out the open coursewares for colleges. Most Computer Science stuff isn't really covered in HS in my experience so it's college-level material in certain respects anyway. MIT has a great website that can be used: ocw.mit.edu and there are materials for courses, their outlines, assignments, ets. and this could easily be toned down or tailored for use at home. Other colleges like Oxford University have open courswares and podcasts as well. The audio/visual elements also help as they can target visual/auditory learners. If you want to learn all the details of spreadsheets/wordprocessing/databases, there's some books (ex: http://www.amazon.com/Microsoft-Office-2010-Introductory-Cashman/dp/1439078386/ref=sr_1_1?s=books&ie=UTF8&qid=1306883348&sr=1-1) by Shelley Cashman that cover everything in VERY fine detail (to my annoyance) but it's very thorough and you have pictures, walkthroughs, etc. The best programming introduction I've found is at the beginning of the book called "Hacking: The Art of Exploitation" http://www.amazon.com/Hacking-Art-Exploitation-CDROM-HACKING/dp/B001TKJ92U/ref=sr_1_2?s=books&ie=UTF8&qid=1306883419&sr=1-2) The rest of the book is WAY too advanced but the first chapter or so -- if you can snag it online or somewhere -- is a great intro to pseudo code and structures. I'd recommend C++ or Java for programming and the best books for that are really the Sam's series. They have LOTS of examples and doing the work through doing examples is how you learn. There's the curriculum in one book right for you! Those things could easily be combined for a great course/year. Best of luck!

  8. spreadsheets and word-processing? by fish+waffle · · Score: 1

    Are you sure your mom is qualified to teach CS?

    Ok, maybe too harsh, that might be fine for HS. But most university CS curricula start by teaching you a programming language---how to do structured program, incrementally adding features and complexity. I don't see why HS should be so different, it's not like it's difficult if you're remotely suited to the topic. Why not give your siblings a leg up on the competition, check out major university CS programs and start from there---from experience, even grade early HS students can master these concepts in small enough doses.

    1. Re:spreadsheets and word-processing? by i.r.id10t · · Score: 1

      Honestly though office skills will be useful no matter what field the kid ends up in, so that should be first. Google-fu as well. Those are skills needed whether you get an AC certificate from your local commercial vo-tech place, or go on to CS at top tier colleges.

      But as others have said, once the basics of *use* are there, start 'em with a programming language.

      --
      Don't blame me, I voted for Kodos
    2. Re:spreadsheets and word-processing? by catmistake · · Score: 2

      But most university CS curricula start by teaching you a programming language

      True, but incidental. The programming language is taught in order to teach algorithms. So really, most CS curricula begin by teaching algorithms (with some teaching language you'll never see again), descrete math and logic. Computer Science is not programming, and programming is not Computer Science.

  9. They should ask you... by Anonymous Coward · · Score: 2, Interesting

    Don't you know, with a masters degree, something about what goes into the field?

    Your mother is already qualified to and is teaching computer science, directly by not directly teaching it. Have her teach them about logic and calculus, i guess. What a strange question, really.

    1. Re:They should ask you... by PitaBred · · Score: 1

      There's a difference between qualification and having a lesson plan. A lesson plan means she can follow a cohesive path in an appropriate amount of time and have exercises and answers to questions. Just knowing your shit doesn't give you that.

  10. MIT Open CourseWare by devleopard · · Score: 1

    http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/ would be a good starting point. Advanced? Yes. The beauty of home schooling is that the curriculum can meet the needs of the student, not the lowest common denominator.

    --
    The best thing about a boolean is even if you are wrong, you are only off by a bit.
    1. Re:MIT Open CourseWare by Obfuscant · · Score: 1, Funny

      The beauty of home schooling is that the curriculum can meet the needs of the student, not the lowest common denominator.

      When you are home schooling just two kids, one of them will ALWAYS be the lowest common denominator. One of them will also always be below the class average in grades, and below the class average in IQ.

      Much better to be batch-schooled, your odds of being above average are better.

    2. Re:MIT Open CourseWare by treeves · · Score: 2

      I take it you didn't do so well in statistics and probability yourself.

      --
      ...the future crusty old bastards are already drinking the Kool-Aid.
    3. Re:MIT Open CourseWare by Obfuscant · · Score: 1

      I take it you didn't do so well in statistics and probability yourself.

      Can you explain how one person cannot help but be below the average of anything when you have a population of just two? Unless, of course, the two are the same, and then neither will be above average. Sounds just as bad.

    4. Re:MIT Open CourseWare by buddyglass · · Score: 1

      Explain why the odds of being in the bottom half in the batch-school environment are any different than in the two-student environment.

    5. Re:MIT Open CourseWare by buddyglass · · Score: 1

      This doesn't follow. Even if I'm an arrogant socially-retarded home-school freak, why should I expect to be more likely to end up in the top half of my traditional school class than to end up in the top half of my two-person home school class?

    6. Re:MIT Open CourseWare by Obfuscant · · Score: 1

      Explain why the odds of being in the bottom half in the batch-school environment are any different than in the two-student environment.

      Because in the home school two-student environment, you will need to be better than someone who is already smarter than you just in order to be above average. In the batch-school, there are a large number of other people who aren't necessarily already smarter than you that are vying for below average. You don't need to beat 100% of the other students to be "above average", you just need to beat 50% of them.

      In addition, there is a positive non-zero chance that some of the students above you in public school will transfer out, thus letting you move up the chain. (In my high school, I was number 4 in the class in junior year. Number 1 moved during the summer. Yay! I was number three. Until I found out that a new student had transferred in who was #1. Sigh.)

      I.e., at home, you have 0 chance of being above average (if you aren't already). At public school, the chance is positive non-zero. Positive is always greater than 0. QED.

    7. Re:MIT Open CourseWare by treeves · · Score: 1

      At home, you have 50% probability of being above average, same as in public school.
        I don't know what the "(if you aren't already)" "better than someone who is smarter than you" comments are for.
      If there are two people, you need to need to be better than the other person, period.
      Assuming a symmetric distribution, the median = the average, and you always have an equal probability of being below or above the average.

      --
      ...the future crusty old bastards are already drinking the Kool-Aid.
    8. Re:MIT Open CourseWare by buddyglass · · Score: 1

      I.e., at home, you have 0 chance of being above average (if you aren't already).

      Suppose I have a twin brother and we're both home schooled. Twin brother is dumb as a rock. I'm a genius. I am therefore in the top half of my two-person home-school environment. So much for "zero chance".

  11. Troll? by Spazmania · · Score: 3, Insightful

    Kids home-schooled into the high school level that don't already have competence with word processors and spreadsheets? A guy with a MS in CS who talks about word processing in the same sentence as computer science? If he wanted to push more buttons he'd have explained that his mom thought Linux was for commies. Seriously, don't feed the troll.

    --
    Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
    1. Re:Troll? by dcollins · · Score: 2

      I'm inclined to agree. Quite puzzling to make sense of it.

      I would like to know what schools the OP and mother got their multiple degrees from.

      --
      We know where leadership by an anti-intellectual "strongman" who scapegoats minorities and likes boisterous rallies goes
    2. Re:Troll? by uofitorn · · Score: 2, Interesting

      In the submitter's defense, a CS degree from one university to the next can differ wildly (although to hold a M.S.. well.. maybe it was from Devry). My friend and I both entered the CS curriculum at different state schools. Mine was in the top tier, his wasn't. He learned how to program C++ his first year. I was told that we were expected to know the language in whatever course we were taking, and if not, to be able to learn it quickly enough to take the course. We weren't to be taught programming. We started with the CLR algorithms book our second semester along with linear algebra and all the other associated mathematics courses.

      Later on I returned to school to finish my M.S. while I was employed with another, less prestigious, university because the tuition was free and the courses were within walking distance during work hours. The curriculum was incredibly easy. A favorite anecdote of mine is from my first graduate course I took there. Since I was used to the level of work required from my undergraduate education, I put in an incredible amount of time on my first project. Thinking it was still subpar and prepared to receive a failing grade, I was shocked when the professor handed back my graded assignment and whispered to me "nice job".

      --
      "What kind of music do pirates listen to?" -Paul Maud'dib
      "Yeeeaaarrrrr n' Bee!!" -Stilgar, Leader of Sietch Tabr
    3. Re:Troll? by langelgjm · · Score: 1

      Kids home-schooled into the high school level that don't already have competence with word processors and spreadsheets?

      On the other hand, I know a lot of people who would say they are competent in the use of Word and Excel, but wouldn't know how to set tab stops, have never used styles, and probably aren't comfortable with formulae more complex than averages or autosum. Just because someone thinks they know how to use a program doesn't mean they actually do.

      Typing is another thing. I am eternally grateful for a touch-typing class I had my freshman year of high school (even though several years later I retrained myself to use Dvorak - I probably would never have done that had I not known how to touch type in the first place). Despite its usefulness, I meet very few people who can actually touch-type.

      --
      "Anyone who [rips a CD] is probably engaging in copyright infringement." - David O. Carson
    4. Re:Troll? by Spazmania · · Score: 1

      I'm grateful for my touch-typing course too. Which I took in the 7th grade. In the '80s before it was obvious how ubiquitous personal computers would become.

      I know a few home-schoolers. Their kids are consistently ahead of the public schools. Way ahead. They typically use computers like they were born to them, and in a sense they were.

      Google searches for "computer science online curriculum" and "computer literacy online curriculum" answer the OP's question well. The article smells like a set up, designed to subtly press CS grads' buttons with things like failing to dissociate CS and computer literacy. I think he did it for the lulz.

      --
      Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
    5. Re:Troll? by gosand · · Score: 1

      Kids home-schooled into the high school level that don't already have competence with word processors and spreadsheets? A guy with a MS in CS who talks about word processing in the same sentence as computer science? If he wanted to push more buttons he'd have explained that his mom thought Linux was for commies. Seriously, don't feed the troll.

      He's also asking for a HIGH SCHOOL computer science cirriculum. Showing my age, when I was in high school it was just called "computers" and was on a TRS-80. So I don't know what kind of learning programs they now have in high school. At first when I saw "computer science" and "spreadsheets" in the same sentence I winced, but then I read what was asked and it's not that far off. Yeah, I did programming in HS (BASIC) but am not sure what they call "computer classes" today... alongside spreadsheets he does mention intro to programmeing and OSes. AND he mentions that it's for his two younger siblings, so they could be 12 and 14 for all we know. So it's not that far off that they wouldn't know anythign about spreadsheets, word processing, and databases.

      I know I know, home-schooling is supposed to be a big joke. You know what's also a joke? Public school. My kids are just entering school, and being part of that broken system has made my wife and I question whether or not it's the best place for our kids. Watch the documentary Waiting For Superman. Home-schooling definitely has downsides, but there are upsides too. My daughter is 6 and just finished kindergarten. She's tiny, yet came home and was saying that someone at school said she looked fat. Many of the kids in her class of 32 (!) are mean little punks. Sometimes NOT being around the "public" isn't such a bad thing.

      --

      My beliefs do not require that you agree with them.

    6. Re:Troll? by Spazmania · · Score: 1

      When I was in high school nearly a quarter century ago there were three computer courses: computer literacy, computer science and advanced placement computer science. The latter ended in a national standard AP test for college credit. Both computer science courses were about programming computers, not using applications. I'm betting things haven't regressed.

      You and I both know that home schooling is no joke. Home schooled children are usually academically ahead of their public school peers. But on Slashdot it carries a not-entirely inaccurate stigma of religious nut job. That makes it a reasonably good way to get a rise out of people, especially when combined with an article that implies boastful ignorance on the part of the parents teaching.

      --
      Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
  12. Students learn from each other, esp in CS by theswade · · Score: 1

    If you really want to give your children a good education in CS, send them to high school with other children. I have learned at least as much from other students as I have from teachers in CS. By all means supplement this education at home. But if you're their only teacher and classmate, their exposure will be extremely limited. And the fact that you think using word processors and spreadsheets is a pillar of CS hints that you might not be qualified to be their sole instructor in this area.

    1. Re:Students learn from each other, esp in CS by cheekyjohnson · · Score: 1

      send them to high school with other children.

      I had the opposite experience. All of the kids at my high school were almost completely computer illiterate. Besides, doing this is far from being required.

      --
      Filthy, filthy copyrapists!
  13. Re:Heathen by jd · · Score: 2

    A GATTAling gun - used to shoot holes in genetics theories.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  14. Don't do it by Kittenman · · Score: 4, Insightful
    Tell your mum to teach the kids how to write a paper (as in, essay) and how to think things through (maths - logic, thinking skills). CS, such as it is, is not as important as those subjects. Certainly not at high school level.

    I can't tell you the number of times I've seen badly written, unclear, badly formatted reports, papers, recommendations, audits from graduates who may have excellent CS skills but can't string sentences together to put over an idea.

    So I'm a grammar Nazi. We're in an exact business. Be exact in putting out ideas. And please don't reply to this with "your welcome"...

    --
    "The greatest lesson in life is to know that even fools are right sometimes" - Winston Churchill
    1. Re:Don't do it by Anonymous Coward · · Score: 1

      your welcome

    2. Re:Don't do it by fimbulvetr · · Score: 1

      English is hardly an exact business (read: language). Maybe you are suggesting we just remove duplication definitions from dictionaries? We could also remove opposites and adjectives, replacing them with double- and un-!

  15. Re:Apps != CS by WATist · · Score: 1

    While Word Processing is not CS, it something pretty necessary for college.

  16. Re:Homeschool? by icebraining · · Score: 1, Troll

    70% of homeschooled children are in very religious families. Assuming that a homeschooler is republican isn't absurd.

  17. I learned by taking apart BASIC games... by VortexCortex · · Score: 2

    CS is more than just how to code, but honestly: Learning to write a bit of working code first helps loads.

    I taught my 11 year old brother how to code in C, C++, Java, SQL, JavaScript, (he's now 20, and learning Perl & Python on his own).

    He didn't get the theory until he could compile stuff and play with real working examples (as I did), and for him, everything we needed was in The Really Big Index. Everything from the concept of Objects and variables, to arrays, branches, algorithms, GUIs, concurrency, graphics, client / servers, etc -- After the first two trails he was studying all by himself, and mastering the programming part of CS. After Java, C/C++ and JavaScript were nothing more than learning the syntax and standard libraries. We installed PostgreSQL, and he picked up SQL in two weeks. I'm helping him write a new scripting language for an existing game engine to learn compiler design -- He's beyond his fellow students, and sometimes even the CS professor in many areas simply due to experience.

    As far as tests go -- I don't know about that. Tests are bogus anyhow. Have them come up with a reasonable project that they can complete and learn by doing. You can get a curriculum and do course work, but first get them coding (also note: if they don't give a damn about writing code, you will never make them want to -- Good programmers are born not made).

  18. Uhhh, seriously?? by casings · · Score: 2

    Is it just me or is there something fishy going on here? Can't decide if this guy is a troll or not.

    I went to a real high school and learned to program in my free time by myself. Just get them a computer and either let them come up with projects to do or give them an assignment. Seriously, its pretty easy to learn shit on your own nowadays and a person who is home schooled should know this.

    Besides that, what if their passion isn't in computer science? It most certainly isn't for everyone, and I find the only good ones are ones who actually want to do it.

    The OP reeks of bullshit.

    1. Re:Uhhh, seriously?? by Steauengeglase · · Score: 1

      Agreed. It does seem a bit fishy. But if we are going to bite, I guess I would suggest K&R C and a good book on discrete math.

      I wish someone had suggested K&R C to me in the beginning instead of mucking my way through more complicated languages. It is compact, dense and the exercises do the job. And discrete math, well I lucked out and it was one of the easy maths for my major (history), but it ended up being invaluable (ended up writing code for a living). It is one of those things they really should teach in high school (at least they didn't in mine).

      As far as Office and that jazz, just spend a couple hours on YouTube. There are some great tutorials on how to use Excel. As far as OSes are concerned, unless you plan on building one, general usage is the best teacher.

  19. carnegie mellon or MIT by bl8n8r · · Score: 2

    both places offer online courses. perhaps your mom can glean some direction from them.

    http://oli.web.cmu.edu/openlearning/
    http://ocw.mit.edu/courses/

    --
    boycott slashdot February 10th - 17th check out: altSlashdot.org
  20. Re:Homeschool? by Wyatt+Earp · · Score: 4, Interesting

    I had to be home schooled for a few years because of Cancer. Basically I'd miss so much school because of chemo and sickness I couldn't qualify as a full time student.

    Then I went back, same friends as before but much more advanced math, science and reading levels. I was doing math, science and reading at high school graduation levels from 4th grade on.

    And now I work in public education, no douchebag parents, no being out of touch with reality, no religion.

  21. IT vs CS, not the same thing... by TiggertheMad · · Score: 1

    How about some Knuth? Because that would be some muthafuckin' kick ass home school CS curriculum.

    --

    HA! I just wasted some of your bandwidth with a frivolous sig!
  22. Re:Homeschool? by Korin43 · · Score: 1

    70% of homeschooled children are in very religious families. Assuming that a homeschooler is republican isn't absurd.

    What a coincidence, 70% of people also make up statistics whenever they need them in an argument!

  23. Re:Homeschool? by Tiger4 · · Score: 4, Insightful

    Those kids will grow up to be out of touch with reality, thinking they're the center of their tiny universe while being hopeless at everything other than their field of speciality.

    ... much like un-informed, self-righteous, snarky, cranio-rectal Slashdot writers. Get out of the basement much do ya?

    Because of course you know, it is possible for a home-schooled child to become socialized with OTHER home schooled children. Or with other people in the community around them as they go about their daily lives in their neighborhood, or at the market, or gas station, or workplace, or parks, or beaches, or if they are religious, at Church. Because you know, people who go to all of those places actually speak to each other, and thus learn social skills. Unlike public school children who learn their social skills... in much the same way, actually. With the added pleasure of school imposed artificial hierarchical dominance games into the mix.

    --
    Behold, this dreamer cometh. Come now, and let us slay him... and we shall see what will become of his dreams.
  24. A+/Linux+/MCSE by Anonymous Coward · · Score: 1

    Educate and get certifications that some companies give credence to when hiring.

  25. Re:I'm such a troll for writing this. by KYPackrat · · Score: 1

    Yup, you're a troll. You are also ignorant.

    High school taught me that the jocks were invincible (even when they lose), that tenure is more important than competence, and that it's easy to snow HS English teachers with BS. I was very lucky to have one brilliant teacher who told me "you're a big fish in a small pond; don't dare think you'll just take college." (He was right; I lost a National Merit full ride fair and square.)

    OTOH, Number One Son has more friends than I did at the time, is doing better academically, and is generally a more rounded individual than I was. His sister is slightly ahead of his stats at the same age...

    There are homeschooling "protect my little darlings at all cost", although in my experience they tend to end up more at heavily-religious private schools. The homeschoolers I know have trouble with keeping the socialization limited, not with never getting it.

  26. Send them to public school by pak9rabid · · Score: 1

    Seriously. As bad as /. makes it sound, you really do develop good people skills and are generally liked more by the general public after having mastered dealing with bullies, idiots, know-it-alls, etc (assuming they're not one of the aforementioned characters). Good people skills are infinitely more valuable than anything school will teach you.

    1. Re:Send them to public school by cheekyjohnson · · Score: 1

      Really? I went to public school and I turned out to be highly introverted. I just would rather not deal with people except in certain circumstances.

      Also, homeschoolers, if they want, can socialize with people. You don't need to be locked in a building to do that. Not only that, but good social skills are typically not required, as far as I've seen. You just need skills (which is more important than meaningless social skills).

      after having mastered dealing with bullies, idiots, know-it-alls

      Except that this doesn't seem to be the case. Many people still seem to take mere words far too seriously.

      --
      Filthy, filthy copyrapists!
    2. Re:Send them to public school by andrewd18 · · Score: 1

      As someone who was homeschooled for 8 years, I can confidently say that it did not hamper my people skills in any way. There are plenty of opportunities for homeschooled kids to socialize. Most locales have homeschool meet-ups and coordinated events. Mine had over 50 kids; plenty of opportunity to learn about bullies, idiots, and especially know-it-alls. :)

  27. as you've seen by now... by Tiger4 · · Score: 1

    Computer Science is not Word Processing. Office skill are important, but they aren't Comp Sci. Back in the old days, Computer Science was part of the Business department curriculum (at least it was in my High School), but it quickly spawned off to its own program in Science and went from there.

    You need a two pronged approach. The first is word processing, spreadsheets, and some graphics. Good basic computer user skills. Gets the kids over their fear factor and gets them using the tool. From there you can branch to bookeeping or desktop publishing or Photoshop graphics or whatever.

    Then you back that up with the underpinnings of good procedural and algorithmic skills and knowledge. It could be as simple as How to write a recipe for hot dogs or How to change a light bulb. No computer necessary in the early stages, you just want them in the frame of mind to get good at putting steps together and phrasing them well to get to a good result. Think of it as programming for the H.Sap2 processor (seriously, try it. Writing good directions isn't easy). After that, you are ready to introduce formalized language and coding concepts, then real languages like java, C, HTML, SQL, javascript, etc. How to make the computer do what YOU want it to do.

    If you are basing this on MS Office, there is VBScript and Visual Basic. Useful tools, and it is all built in. But of course you have to be careful

    --
    Behold, this dreamer cometh. Come now, and let us slay him... and we shall see what will become of his dreams.
  28. Re:Forget about it by syousef · · Score: 4, Funny

    The most important thing is to get him laid. Take him to european countries for as many months as you can legally stay for, and force him to approach girls and women again and again.

    So the plan is if he gets rejected often enough, he'll just spontaneously turn into a computer programmer???

    --
    These posts express my own personal views, not those of my employer
  29. Re:Homeschool? by PCM2 · · Score: 2

    The actual figure is 33 percent, according to the 2001 U.S. census, or 42 percent if you count the families that cited "morality" as their reason.

    --
    Breakfast served all day!
  30. A source I used once. by Geminus · · Score: 1

    Harvard CS 50. It's downloadable, open, and free. -Enjoy

  31. Re:I'm such a troll for writing this. by Abreu · · Score: 2

    High school taught me that the jocks were invincible (even when they lose), that tenure is more important than competence, and that it's easy to snow HS English teachers with BS.

    So essentially, HS prepared you for real life?

    --
    No sig for the moment.
  32. Computer literacy is what youre after... by metalmaster · · Score: 2

    When I was in high school we had a comprehensive Office 2003 textbook that covered MOUS objectives for each of the core office applications. That textbook was published by Thompson Course Technologies. Im not sure if they have been bought out or changed in that time, but I found a Cengage textbook that covers the material for 2010. The book I studied from explained a particular concept, applied that concept, and reviewed that concept. Every few concepts was followed by a test. My instructor followed the method provided by the book, and it worked well.

    Use a similar approach with programming. Find a suitable starting language and find a book that follows the concept-tutorial method. To make things a bit more challenging in this area my instructor gave us custom projects that went outside the scope of the objective text, but still relied on lessons we had learned

    1. Re:Computer literacy is what youre after... by dlb · · Score: 1

      "When I was in high school we had a comprehensive Office 2003 textbook...."

      Thanks for making me feel old.

  33. College Board AP CS? by billrp · · Score: 1

    Yes I know, the College Board is Big Business, but there's a well-defined curriculum. And it got my daughter out of having to take some kind of "Intro to Computer Science" as a college freshman. However I'm not sure if home-schoolers are into AP classes.

  34. Functional programming by incripshin · · Score: 1

    First, office suite applications are not computer science. If you want to teach the CS version of word processing, teach them LaTeX. In the meantime, I recommend something that I didn't do: start with a functional language like Scheme (I started with K&R). I TA'd for a Java intro class and it never went well. All the PL (programming language) grad students I know hate C++, and that leaves Python, Ruby, and the functional languages.

    Scheme is pretty simple, and probably appropriate for HS-level coursework. One of my intro classes was with Scheme and I liked it (we used the wizard book, a friend of mine had The Little Schemer at his school). I've heard good arguments for using functional languages for introductory courses, but I don't really remember them :(.

    1. Re:Functional programming by incripshin · · Score: 1

      Oh, and the wizard book is free online: http://mitpress.mit.edu/sicp/full-text/book/book.html

    2. Re:Functional programming by Repossessed · · Score: 1

      I'd suggest common lisp instead of scheme if you're going to take what people like using into consideration. All the lisp programmers I know hate the scheme version.

      --
      Liberte, Egalite, Fraternite (TM)
  35. Re:Homeschool? by buddyglass · · Score: 2

    I tend not to assume things when I have only a 70% chance of being correct. To each his own.

  36. Re:Public School? by kerohazel · · Score: 2

    Right, because CS geeks are well-appreciated in public school peer groups, and won't be ostracized at all. If you're the kind of person who can only learn social skills in school, you probably won't learn them there anyway... either that or you'll only learn a twisted version of what "proper" behavior is.

    --
    Skype is too convoluted... Now I'm reverse-engineering the Kyoto Protocol.
  37. Re:Homeschool? by Megaport · · Score: 4, Informative

    Those kids will grow up to be out of touch with reality, thinking they're the center of their tiny universe while being hopeless at everything other than their field of speciality.

    You have no idea what you are talking about. I homeschooled my kids and they have a larger and more diverse circle of friends than you can possibly imagine. Unlike school kids, their friends are also from a wider variety of ages because my children didn't experience the age-range apartheid that you would consider 'normal' where the majority of the children you would interact with each day were within 12 months of your own age. My daughter's 16th birthday party had more than 70 kids and 30 adults on the guest list - and these really are close friends who she has spent more quality time with growing up than anything you get out in the school yard between classes.

    I'm a software engineer, but for university the kids have gone into fields as widely different as biotech, justice/law, arts/language and design. One of them went and lived in Beijing for a year to immerse herself in the culture/language when she turned 18. Another has travelled to Japan, China and the USA regularly since they were 17 years old. At 13 years old, one of the kids went and stayed with a friend's family in the USA for three months - even saved up the airfare on her own by doing babysitting around the neighborhood.

    I guess that I wouldn't agree with the same homeschooling that you don't agree with - but unfortunately for you the reality of what the vast majority of homeschoolers are doing has nothing to do with your narrow prejudiced ideas. For every homeschooling parent who is keeping their kids in the basement, I'll show you 10 school kids who are wasting their lives and potential without any help from their parents at all.

    It's your call.

    --D

    --
    # grep slashdot access.log | grep html | sort | uniq | wc -l 2604
  38. Re:Homeschool? by Alaska+Jack · · Score: 1

    Nice try at discrediting opponents of home-schooling, by pretending to be a giant douchebag.

    Your one mistake: NO ONE is as big a stereotypical, reactionary, thoughtless douchebag as you're pretending to be. In the future, your tactic would be more believable if you dialed it down a notch or two.

    Just a tip.

        - aj

  39. Also: Berkeley, Stanford, bootstrapworld.org by andromeda1 · · Score: 1

    In addition to MIT and CMU, which have already been mentioned, Berkeley and Stanford have their introductory CS courses on youtube (and iTunes.) I particularly like Stanford's CS106 with Mehran Sahami. If you want something more middle-school-ish (or scheme-ish) and connected to algebra and functions, check out http://www.bootstrapworld.org/ (founded by a professor at Brown) (Seeing all of those parentheses reminds me of the book that taught me Lisp, David Touretzky's Lisp: A Gentle Introduction to Symbolic Computation, PDF at http://www.cs.cmu.edu/~dst/LispBook/, which should really be brought back and updated for DrScheme!)

  40. Re:Homeschool? by Anonymous Coward · · Score: 1

    Because going to public school guarantees an ability to have normal relationships, of course. *rolls eyes*

    —26-year-old public-school educated student w/B.S. in computer science, a day job programming, and 0 relationships past or present, failed or otherwise

  41. Home schooling is not a joke. by Anonymous Coward · · Score: 2, Interesting

    I have used these successfully when home schooling my children for any of the Microsoft Office products.

    http://www.technokids.com

  42. Re:Homeschool? by icebraining · · Score: 1

    Here's the study.

    By the way, I didn't need an argument. It wasn't me who called OP a republican.

  43. Re:Homeschool? by Anonymous Coward · · Score: 1

    Home-schooling is one of the cancers that is killing America's youth. Man up and live in the real world, or strive to be a bed-wetting momma's boy for the rest of your life. It's your call.

    On the behalf of bed-wetters everywhere, I would like to express my disdain at you grouping us in with Home-schooled kids and Momma's-boys.

  44. Re:Homeschool? by thehodapp · · Score: 1

    I'm something.

  45. Re:Homeschool? by icebraining · · Score: 1

    The link you gave doesn't cite the census, it cites the '96 and '99 National Household Education Surveys. I got 70% from this paper, which cites the 2003 NHES.

  46. Best CS home school curriculum... by SETIGuy · · Score: 1

    An Apple IIe with an assembler, and a few compilers. Or an IBM XT with the same. Give it to them with some old books and tell them to do something fun with it.

    That should keep them out of your hair for a while. Isn't that the whole point of a home school curriculum?

    1. Re:Best CS home school curriculum... by andromeda1 · · Score: 1

      Microcontrollers, notably Arduinos (or PICs or BASIC stamps, etc.) are the modern-day equivalent of the Apple //e or IBM XT. I'd say go with the Arduino since it has the widest support in terms of kits, tutorials, ready availability and user community.

      (On the historical front, people like David A. Lien (Level I BASIC manual) and Bob Albrecht (BASIC: A Self-Teaching Guide) deserve huge credit for their fine self-teaching/programmed texts for learning BASIC on vintage microcomputer and mainframe systems! Not to mention David Ahl, Creative Computing, BYTE, and all the other awesomeness of the microcomputer era. Back in the day, it was assumed that anyone who got a microcomputer, whoever they might be, would undoubtedly and inevitably learn to write programs for it!

      Dive Into Python and its ilk are OK, but I have yet to see something that is nearly as good as the old self-instruction books on BASIC.

      For that matter, even old-school books on 6502 and Z-80 assembly language (e.g. Lance Leventhal and William Barden, Jr.) were written clearly and with the assumption that anyone could learn!)

  47. Re:I'm such a troll for writing this. by tycoex · · Score: 1

    Except for the Jock part. Most jocks end up as High School janitors, while the nerds who got strait A's end up with College degrees and high-paying jobs. There are the exceptions of course, being professional athletes, but that's a very small fraction.

  48. Re:iTunesU by SETIGuy · · Score: 1

    Actually, if he's in a college town, just go sit in on some college courses. Not for CS, though. Depending on where you are, the home town college might not be very good. I've always been in the "introductory programming is best self taught" camp. A bad intro course can do real damage. Back in the day comp.std.c was the best textbook for C programming, and comp.lang.c was the best "what not to do" reference. Save the courses for the hard stuff (algorithms, operating systems, etc).

  49. Re:Homeschool? by PyroMosh · · Score: 2

    The Department of Education's statistics disagree:

    From 2003 to 2007, the percentage of students whose parents reported homeschooling to provide religious or moral instruction increased from 72 percent to 83 percent.

    http://nces.ed.gov/pubs2009/2009030.pdf

    Which is strange because they cite the exact same phrasing "religious or moral instruction".

    In either case, the number is significant.

  50. Computer Science Unplugged by I3OI3 · · Score: 4, Informative
    I am a CS researcher in a corporate lab and a homeschooling father. I'll speak to the subject without snarking about word processing.

    For the younger crowd, I can highly recommend Computer Science Unplugged. It is a great introduction to the fundamentals of computer science - algorithmic basics, information coding and entropy, finite state automata, and a bunch of other good stuff. Interestingly, the entire course is done without a computer. It has exposition, exercises, and games that reinforce those fundamentals.

    It's about 10 hours of coursework, it's free, and it's geared toward the 8-12 year old crowd. My 7-year old didn't have any troubles with it, and was always hungry for more. The novelty of teaching computer science without touching a computer is also compelling.

    Now, if anyone can recommend some good coursework on introduction to programming and basic algorithms for the 8-10 set, I'd appreciate it. I haven't found any good educational materials for Scratch (it's all pretty ad-hoc and amateurish), and I think Alice is a bit much for sit-you-down-and-start-programming. Any personal experiences?

    1. Re:Computer Science Unplugged by andromeda1 · · Score: 2

      You might look at bootstrapworld.org, a project to teach functions and programming to middle schoolers. (I mentioned it in another post, but it's directly relevant to the question.) Their after-school programs (and summer camps) are interesting because they also teach testing (facilitated by functional code) and code reviews (students present their code in a Q and A session) and use pair programming.

    2. Re:Computer Science Unplugged by Anonymous Coward · · Score: 1

      Also by an MIT group and using block based programing is StarLogo TNG. It has some introductory materials and also some complex systems lessons that have been developed. I think it can be a good introduction to programing. http://education.mit.edu/projects/starlogo-tng/learn A bit more sophisticated and actually written are NetLogo and StarLogo. Both of which are very accessible and have a strong complex systems slant. StarLogo was one of my first experiences with programing. Gamemaker is another accessible tool with youth in mind that could be used to start teaching programing concepts.

    3. Re:Computer Science Unplugged by ctnp · · Score: 1

      > It's about 10 hours of coursework,

      I'm sorry, I understand why you didn't want to be snarky but if you think that 10 hours of coursework is anywhere equivalent to a _course_ related to high school level intro to CS you're brain dead.

      Rationale like this is why home schooling should be considered suspect at best.

      - C

    4. Re:Computer Science Unplugged by Anonymous Coward · · Score: 1

      Thanks - that's just what I was looking for. I'm in the same situation as you - corporate CS, homeschooling a 6 and 7 yr old and this was just starting to creep onto the radar. Unrelated, but I'm on the lookout for similar introductory texts and lesson plans for basic shop skills. Building the kids a workbench right now so they can build as well as destroy... seem to have an affinity for the later.

    5. Re:Computer Science Unplugged by jonnash · · Score: 1

      I want to recommend a curriculum from Alpha Omega that my two high school aged boys are currently using. The online curriculum blends real time quiz and test grading with teacher/parent graded items and they offer a wide range of subjects from K-12. The Computer Information System electives for the high school students address what is typically taught in the high schools in this area but Alpha Omega has chosen to base their classwork on OpenOffice which I thought was refreshing.

      The direct links to the electives are:

      Business Computer Information Systems 1-A
      Business Computer Information Systems 1-B

      If you are less interested in business computer information systems and more interested in plain computer science I would like to suggest
      DreamSpark by Microsoft. It is a plan offered to students that gives them access to all the MS tools for one year. On package they tout as providing a great introduction to programming is their Kodu programming and game platform that allows students to quickly begin programming and playing the games they create.

  51. Qualified? by atomicbutterfly · · Score: 2

    my mom has programming experience and holds bachelor's degrees in physics and math â" she's pretty qualified to teach

    Not necessarily. Just because someone is learned in a particular field does not mean they have the skills to dispense the knowledge in an effective manner. I'm not the only one who's encountered people who are experts in their field, yet lack the ability to coherently explain even the basis because they don't have the skills to do so.

    1. Re:Qualified? by andrewd18 · · Score: 1

      I'm not the only one who's encountered people who are experts in their field, yet lack the ability to coherently explain even the basis because they don't have the skills to do so.

      I work with them. *sob*

  52. Logo style by leandrod · · Score: 1

    Computer Science, Logo Style. Free for personal use.

    --
    Leandro Guimarães Faria Corcete DUTRA
    DA, DBA, SysAdmin, Data Modeller
    GNU Project, Debian GNU/Lin
  53. Programming links for Kids by Purpleslog · · Score: 2

    I have collecting to Intro to Programming links for Kids at my blog and in it comments: https://purpleslog.wordpress.com/2009/07/19/reference-intro-to-programming-for-kids-aka-growing-a-young-computer-geek/

  54. Re:Homeschool? by AK+Marc · · Score: 1

    Too bad you aren't going through that now (and no, not in the suffer cancer way). They are required to provide you with an education. That education can't be any less than the education they make available to the smartest person at the school. Having a disease doesn't reduce their need to provide that education. As such, if it costs them $250,000 a year to have a nurse show up at your house (feed you breakfast, even though that's expressly illegal - but it would take the government suing itself for that to stop), escort you to school in an ambulance every day, sit with you in classes (still in your hospital bed provided by the school), administer medications while at school, and escort you home in the same manner, as well as private tutors who go to your house in case you need catching up because your illness was such that it made it hard to concentrate, then that's what they have to do. How do I know? Because two jackass parents (both lawyers) in Anchorage sued until that's what they got. Sadly, that $250,000 per year for a single student takes away from what everyone else gets to work with. And people wonder why public school is expensive...

  55. Arduino by echusarcana · · Score: 2

    Buy a few Arduino boards. Get the robot vehicle version. Add a sound synthesizer shield. Make stuff. Hours of fun and will give you a sound foundation in the basics that you can't get through a higher level language.

  56. How To Design Programs by hendrikboom · · Score: 1

    Seriously, whatever you end up doing in more advanced or more applied courses (if that's the right word for homeschooling), start with "How To Design Programs". It teaches you how to *think* about just about everything else in computing. There's a second edition in progress. Both the original book and the draft second edition (which is probably much better) are available for free downloads. The original can also be purchased on paper.

    The software system that goes with it is also free: Dr. Scheme, now renamed as Racket.

    -- hendrik

    http://www.cs.rice.edu/CS/PLT/Teaching/Lectures/Released/Companion/index.htm

    http://www.ccs.neu.edu/home/matthias/HtDP2e/

    http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=3879

  57. The Course Books I Used to Teach... by microTodd · · Score: 1

    Its probably way too late for my comment to be modded up for the submitter, but here goes.

    I've taught "Into to Word Processing" and "Intro to Spreadsheets" type courses at some local adult education colleges. The best books I found were the Shelly Cashman series, such as "Microsoft Office 2007 Introductory Concepts and Techniques". Good explanations with screenshots, and good exercises.

    Here's an Amazon link: http://www.amazon.com/Microsoft-Office-2007-Introductory-Techniques/dp/0324826842/ref=sr_1_1?ie=UTF8&qid=1306895933&sr=8-1

    Its fairly inexpensive for a used copy.

    --
    "You cannot find out which view is the right one by science in the ordinary sense." - C.S. Lewis on Intelligent Design
  58. people by Dan667 · · Score: 1

    one thing that is not stressed or practiced nearly enough with CS is interaction with people for activities like requirements gathering and maintenance (which is ~80% of a software life cycle). There are jobs where you are handed a spec and you build it with no contact with the outside world, but all the jobs I have ever had require the ability to interact effectively with people from all walks of life.

  59. Re:Homeschool? by PCM2 · · Score: 2

    I got 70% from this paper [ncspe.org], which cites the 2003 NHES.

    Well that's weird, because the 2003 NHES results are right here, and they give the figure as 30 percent, down from 33 percent in the earlier survey (the figure being the number of parents who reported religious instruction as being the most important reason for home schooling). In fact, the report you cite repeats the same data; it then goes on to claim that 70 percent of home schooled children come from "very religious families," but it doesn't explain the methodology used to derive that category. I'd love to know how they correlate the two data points.

    --
    Breakfast served all day!
  60. Re:Homeschool? by Wyatt+Earp · · Score: 1

    This was in South Dakota before ADA, but the school did allow me to take books home, lesson plans for my Grandmother (who had studied teaching in college) and she did well at it.

    We had to travel 90 miles each way 3 times a week for chemo (l-Asparaginase and Vincristine) which were pretty tough medications. So it helped with recovery to stay home.

    As for the jackasses in Anchorage, let me guess, they live in South Anchorage or Girdwood and decided to hose ASD for laughs?

  61. Re:Homeschool? by PCM2 · · Score: 2

    That data just indicates the number of families that reported "a desire to give religious or moral instruction" as a factor. I don't think that establishes the family as a "highly religious family." It could just mean the parent wants to be able to instruct the child about sex, proper behavior, etc., because they think this kind of education is lacking in the school.

    But the same families were asked what the most important factor in choosing home schooling was, and there only ~30 percent responded that religion was the most important reason. I think it would be safe to deem these "highly religious families," though it's still a little speculative.

    --
    Breakfast served all day!
  62. Re:Homeschool? by Wyatt+Earp · · Score: 1

    Yea, I was in South Dakota, we started Algebra in 5th grade with it being all we did in 7th, I went into freshman Algebra in 8th grade and 9th grade physical science then too.

    Unfortunately for me, chemo and radiation as a kid really fraks your math abilities up, so while I took 5 years of it in High School (Algebra, Algebra 2, Geometry, Calculus and Trig) and 5 of science, I wasn't that good at math. 200 level Stats in undergrad was rough for me, but I'm really good at Trig.

  63. Re:I'm such a troll for writing this. by russotto · · Score: 2

    Except for the Jock part. Most jocks end up as High School janitors, while the nerds who got strait A's end up with College degrees and high-paying jobs. There are the exceptions of course, being professional athletes, but that's a very small fraction.

    Sorry, McFly, but most of the jocks end up with a business degree and become the bosses of the straight-A nerds. Some of the rest become politicians and become the bosses of everyone. The high school janitors are mostly drawn from the stoners (the ones who don't become investment bankers, anyway).

  64. My $0.02 by walbourn · · Score: 1

    I had my first computer at 13, and learned to program in BASIC, high-level languages (C/C-like languages), and 6502 assembly well before high-school... Spent years BBSing, playing games, typing in programs from magazines & books, creating varoius graphics-related programs, and generally 'hacking' in the old-school sense. I don't think, however, I'd consider having any real training in 'computer science' until my second year of high-school CS class with an introduction to data-structures. Before that it was all 'hacking' or perhaps 'computer literacy'. Probably the most useful thing in that time was learning to touch-type and that was on an actual type-writer... Being comfortable with technology, and able to learn new systems quickly is important and comes from hours immersed in the 'culture' of computers, but many "prep for college" skills are not computer-related: writing, linear algebra, probability, geometry, organizational skills, communications, etc.

  65. Re:Homeschool? by RobDude · · Score: 3, Informative

    Growing up, I played on the same soccer team for years. One of the kids I became friends with was home schooled. His parents were both friendly, sociable, well educated (and from the looks of their house, doing quite well financially).

    The kid was as normal as anyone else on the team. He had plenty of friends and did pretty good with the girls too. Honestly, looking back, he seemed to be a few years ahead of the curve; and was one of the most genuinely nice kids I knew. I don't know where the stereotype of home-schooled kids being freaks came from; but in my limited experience, not true.

  66. I noticed this with Excel by KingAlanI · · Score: 1

    I did a quick Excel class in my freshman year; it had pointed me to various features that I simply hadn't dealt with while stumbling through the program on my own.

    --
    I listen to both RIAA and non-RIAA stuff if I like the music, tangential business/politics nonwithstanding.
    1. Re:I noticed this with Excel by vlm · · Score: 1

      I did a quick Excel class in my freshman year; it had pointed me to various features that I simply hadn't dealt with while stumbling through the program on my own.

      An Excel class was a requirement for CS where I went... It was extremely hard core, not noob how to add a column of numbers, but absolutely crazy excursions into the strangest depths. Stuff so useless all I can remember is the names, like pivot tables and such. They were giving us an "easy" environment to learn how to push the boundaries, learn how to "hack" or "grok" or whatever name you want to call it, how to read manuals, how to search the internet, how to experiment and figure it out yourself. Also we were told the Excel class taught us what its like to learn a certification ... endless hours of stuff you'll never use, but confidence building that you'll know all there is to know about the subject. It was strangely interesting. I can say with certainty that about 99% of the capabilities of Excel are both unknown to well over 99.9% of users, and also 100% completely useless.

      We also did something I've never seen outside of school, probably because I don't do financial programming, we drew simple financial "programs" in flowchart form inside excel, and then inserted formulas so the flowchart "worked", and then "debugged" with various input data. Obviously not much control flow is possible, but I remember an ultra-simplified income tax flowchart that used IF statements to insert 1 or 0 multiplication coefficients to simulate control flow, kinda.

      --
      "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
    2. Re:I noticed this with Excel by Quirkz · · Score: 1

      Through a physics class we used Excel to chart chaotic motion, draw fractal diagrams, and some other pretty wicked stuff that I'll admit a decade later I couldn't reproduce inside that program if I tried. Word is generally intuitive enough (though tables tend to give me fits of functionality-itis) but beyond the most obvious items Excel has a steep learning curve and the deep end of the pool goes very deep indeed.

    3. Re:I noticed this with Excel by mcmonkey · · Score: 1

      An Excel class was a requirement for CS where I went... It was extremely hard core, not noob how to add a column of numbers, but absolutely crazy excursions into the strangest depths. Stuff so useless all I can remember is the names, like pivot tables and such.

      I don't which is more puzzling--that you think pivot tables are useless or that you think they are "crazy excursions into the strangest depths."

    4. Re:I noticed this with Excel by ginbot462 · · Score: 1

      I took a discrete simulation course that used Excel (some). It made you appreciate Excel as another tool in the box. It may not be a good candidate to build the house, but it's great to play around with your ideas.

      --
      Atlas Shrugged : Thematic Story :: Battlefield Earth : Organized Religion
  67. Write an OS by stevelinton · · Score: 1

    Bst learning advice for CS I ever heard was to write an Operating System. Admittedly this was advice to 1st year University students for what to do after the summer, but it should still be sound for high school. All the information needed is out there.

  68. Re:Homeschool? by furbearntrout · · Score: 1

    I'd love to know how they correlate the two data points.

    The current xkcd has some clues to their methodology.

    --
    Crap. What did the new CSS do with the "Post anonymously" option??
  69. Videogames by kikito · · Score: 1

    Only play videogames that you have programmed yourself.

  70. Re:Public School? by johnsnails · · Score: 1

    hahahh, I wish I had mod points. Although not personally home schooled (my wife and her 9 bros and sisters have been or will be) and that was amazingly funny :P

  71. You could try the OU T100 course by biodata · · Score: 1

    The Open University in the UK does distance learning courses. Their new course starting this year is T100 - Your Digital Life. http://www3.open.ac.uk/study/undergraduate/course/tu100.htm I was involved in setting up the predecessor course a few years ago (You, Your Computer and the Internet). The basic idea is to take people with little experience of using computers through to being confident with word processing, spreadsheets, navigating the web and building some of it for themselves.

    --
    Korma: Good
  72. ECDL by kubajz · · Score: 1

    I found ECDL (the European Computer Driver's License) certification to be more useful than I had thought before I looked at its syllabus. It is no good for programming or operation systems but very useful for the "non-CS" parts of your request:

    1. It has been nicely fine-tuned over the years to cover the basics like turning off your computer or saving and archiving files. This helps you not to forget anything important (like backups :o) )
    2. It has modules not only for the classic word processing / presentations / spreadsheets but also stuff like image processing, 2D CAD and databases
    3. Learning resources are quite easy to obtain, whether online or hardcopy, whether free or paid
    4. It is very practical, with the whole syllabus requiring knowledge of how to do stuff not "what is the definition of a cell in spreadsheets". It is also OS & tool agnostic so you can teach it e.g. on LibreOffice on Linux, although most learning materials are geared towards Windows + MS Office
    5. The option to get certified in the end provides additional motivation for my homeschooled kids
    6. It is approachable by a wide range of ages, from elementary school geeklings to pensioners

    I always dreaded the day when I would have to teach things like copying files or word processing, spreadsheets or presentation software; I'd much rather stick with "proper" CS topics like Python or Unix shell, but I have to say I was pleasantly relieved by discovering ECDL.

  73. Some options from Microsoft and others by alfredtwo · · Score: 2

    There are a lot of curriculum materials that are being used by home schoolers to teach programming and software development at the Microsoft Beginner Developer Learning Center Kid's Corner http://msdn.microsoft.com/en-us/beginner/bb308754.aspx Everything from videos to whole courses for differing ages. You can also find some good curriculum based on Small Basic at http://smallbasic.com/ (see the wiki and tutorial) and http://www.teachingkidsprogramming.org/ I also recommend the CS Unplugged curriculum at http://csunplugged.org/

  74. Focus on principles by Dr.+Blue · · Score: 1

    I won't pile on to the "that's not computer science" comments (but learning how to use Word really doesn't have anything at all to do with computer science).

    At this level, the focus should be on basic principles and how to think logically. My suggestion is to look at the new AP course that's being developed on "CS Principles". The materials they're developing to define this course (at http://csprinciples.org/) aren't very useful for a homeschooler now, but there have been 5 pilots of this material at universities, and those course are available in their entirety online. My personal favorite is the course at Berkeley - it's called the "Beauty and Joy of Computing", and is available here: http://inst.eecs.berkeley.edu/~cs10/sp11/

  75. Basic Computer Science by s31523 · · Score: 1

    OK, I am not sure what time frame you are looking at. You mentioned an awful lot of topics and comp. sci. would normally be studied for 4 years. I do not consider office tools a part of a traditional comp. sci. program, but they should be taught nonetheless. Assuming there is 4 years of high school I would recommend:
    Year 1/Semester 1&2: OS and Office Tools - In this course I would expose the student to different operating systems: Windows, Ubuntu Linux, and Mac OS. I would have the student master some basic end-user activities, like installing software, installing new hardware, modifying system settings (i.e. env vars, etc) and finally touch on some shell scripts (batch files, .bash scripts). I would then move into basic office programs. I would show Word and Open Office and introduce the student to basic word processing and touch on some advanced editing (tables, formatting, formulas, etc.). In spreadsheets I would show the basics plus introduce macros, which are programming based. Also pivot tables and graphs. There would be plenty of material for 1 year of school, especially considering this as an "elective" which would not be studied more than 1-2 hours per week.
    Year 2/Semester 1: Introduction To Programming - Just like it sounds, I would focus on basic programing. The tough part is what language - Pick whatever you are really comfortable with and able to teach. I personally would choose a slightly non-main-stream language like Ada. Focus on basic program structure, good commenting and the fundamentals of the language.
    Year 2/Semester 2: Advanced Programming - Move into advanced aspects of the language, structs/records, user-defined types, compiler pragmas, memory management (pointers).
    Year 3/Semester 1: Introduction To Data Structures - Classic CS course. Array/Stack/Queue/List
    Year 3/Semester 2: Advanced Data Structures - Another Classic. Various Trees/Graphs/Heap
    Year 4/Semester 1: Introduction to OO - Focus more on the design aspect. Also use a language that is a "pure" OO language. We used Eiffel, but the latest .NET stuff if pretty good too. I honestly would not use C++ or Java as the language hinders some of the pure OO techniques.
    Year 4/Semester 2: Advances OO - Get into the more complicated OO stuff. Design patterns, multiple inheritance, repeated inheritance, etc.

    That would cover a good bit of computer science...

  76. Bravo. Sierra. by luis_a_espinal · · Score: 1

    "I grew up in a homeschooling family, and was homeschooled through high school. ( I went on to get a B.S. and M.S. in computer science ; my mom has programming experience and holds bachelor's degrees in physics and math — she's pretty qualified to teach.) Mom is still homeschooling my younger brother and sister and is looking for a good computer science curriculum that covers word processing, spreadsheets , databases, intro to programming, intro to operating systems, etc. Does the Slashdot readership know of a high school computer science curriculum suitable for homeschooling that covers these topics?"

    See those two sentences in bold/italics in the quote above. I call bullshit on this person having a MS in CS (or went through grad school but didn't learn much... it happens.) Who the hell would list word processing and spreadsheets as computer science topics? Moreover, am I to believe a holder of a veritable MS degree in CS cannot devise a basic HS-level CS curriculum?

    1. Re:Bravo. Sierra. by Veretax · · Score: 1

      Some colleges still have so called CS 1 or CS 5 courses (or whatever they number them) that teach just that. I'm not sure where other universities put such training, if at all, but don't assume all Universities are the same. I never took the course, and I tutored a couple of folks who did as a Computer Engineering student. I don't think the issue is about devising a curriculum, but having a good quality text, even if its a tiny one can be a great help to a home schooler. You can have the child read and work through exercises on the computer or whatever. When I was in HS they had a text that fit onto the stands they used to use for keyboarding. Very nice actually. We basically learned to type, and then learned to use the word processor and type.

  77. Code Complete by Drethon · · Score: 1

    So its not a course book but Code Complete http://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670/ref=sr_1_1?ie=UTF8&qid=1306930229&sr=8-1 is an excellent read to understand the overall programming process before getting into actual coding. Starting with language syntax and thinking you understand programming is backward to me when you first need to understand developing software and then you can use any language you want to for implementing the program you designed.

  78. build a test lab by e3m4n · · Score: 1

    get a decently beefy machine and load vmware ESXi on it and carve out some virtual machines of different flavors of OS. Make sure you have a flavor of CentOS5 in there as well as a flavor of windows server 2003/2007 etc. Make them work with each other. Take turns on which OS is responsible for network services such as dhcp, mail, etc. Having to research how to set these sort of services up will go a long way to understanding how networking works. Always take the opportunity to tie certain tasks like arp to theoretical discussions like the OSI model of a protocol that you had prior to the applied portion of the curriculum.

    I have always been amazed at how networking has been the most under-discussed, under-taught concepts in schools. Regardless of the background, every trainee I've ever had has arrived with a rather poor concept of networking. In almost every case, to them, networking has just meant programming the ip address, dns servers, subnet mask, and gateway when prompted. Almost none of them could even explain when a gateway is needed and when it is not. Words like RIP, RIPv2, OSPF, BGP were just random letters.

    IMO if you're going to become a programmer its very likely you'll one day have to write a program that uses the tcp/ip stack in some manner or another. Having a good knowledge of how all the pieces talk to each other and how the network services work to achieve that goal can only help with that job.

  79. Introduction to Programming Using Java by Philosa · · Score: 2

    I am a homeschooling Dad with an S.M. in EE/CS. I choose to teach "programming" to one of my kids who was interested using David Eck's Introduction to Programming Using Java back in the 2000 timeframe. The course material was free online, and was very adaptable to the high-school-level. My kid really liked it, and got a lot out of it, especially one of the client server projects and the Human-Machine-Interface (HMI) element. She later graduated as a very successful college CS major and took on a pretty nifty HMI-related job with one of the Federally Funded Research and Development Centers (FFRDC).

    As in most subjects, interest level and match between curriculum and student are keys to success. I tried teaching the same course to another one of my kids, and she was uninterested (except for making web pages using HTML), so we never completed and moved on to something else. She ended up going into the social sciences. Your mileage will vary.

  80. Family FAIL by Anonymous Coward · · Score: 1

    First the OP tries hard to dazzle us with his creds. A B.S _AND_ M.S. in CS? Really, is that a synergy of B.S. and M.S.? I never heard of a student brag of having both, when all that is needed is to say they have a M.S. in CS. I guess a doctor should say they have their B.S., M.S. and Ph.D., in medical science then.

    Then having this wealth of CS knowledge, he cannot help his mommy or his siblings. At the very least the family can go to home school expos and demos from vendors. {where do I insert the open hand face slap here?}

    Next the OP informs us his mommy has a B.S in physics and math. But the concepts of basic computer usage alludes her, even the concept of randomly clicking of buttons and reading the online help manual. So she's a smart idiot. Once again I never met a double major in math and physics that did not know how to use a computer. Maybe his mommy is eighty, then I'd understand. Actually that would explain a lot about this post.

    This goes under the epic family FAIL!

  81. learning through use by Gripp · · Score: 1

    come on people... get off your high horses... we all know that word isn't really CS, and i'm sure the OP is well aware of that as well.

    my response is to start by simply setting them free on the computer - let them find their own motivations. i learned excel for an online game (and how websites work (rendering code in browser vs pre-compiled, how to manipulate sites via GET, etc) end eventually learned db's because something that i wanted to do in excel was too large and complicated... i would imagine others have learned by making their own myspace/geocities/whatever social sites.

    but please, for the love of god, do NOT try to make them memorize the names of every button and object in MS word. nothing could be abigger waste of time, and those things come naturally through actually USING the software out of need...

  82. Great question, easy answer by bitterblackale · · Score: 1

    First, ignore the pedantic morons who say what you are talking about is somehow not CS. At the high school level, speadsheets, databases, word-processing certainly are a massively important part of CS. I don't quite understand where people get off saying its not. 97% of all programming that happens in the real world (I did some extensive guessing on that figure) is geared toward manipulating database, spreadsheet (which is just a simple db), or documents. This is the heart of end-user CS. When I was in school, even learning to use a scientific calculator was hugely important to computing science. Programming is a very very very small part of CS. There's also logic theory (which I don't think ever gets taught to any suitable extent in the states), and a great way to teach your kids logic is to encourage them to learn to play a musical instrument. It is no accident that ALL of the compsci faculty at the university I attended also played music on the side.

    Music theory = high-level abstract logic = pre-requisite to proper computing science

    Now, here is the easily had answer, and I admit that it's a little suspicious that someone with a BS and MS in CompSci didn't try this, so I also think this post is a bit Troll-ish.

    Google: high school homeschool computer science curriculum
    and you get loads of the kind of results you are probably looking for

  83. "how to make a video game" by peter303 · · Score: 1

    If I were to design a high school computer course, that would be my theme. You cover the basic elements of computing, hardware and software, Then you add the arts: graphic design, elements of writing script, character development, examples from literature, etc.

    I wonder if there are any existing high school level course on this. Plenty of arts schools have this curriculum.

  84. Get a certificate or college credit by cryingpoet · · Score: 1

    Computer training option 1: Go to college

    When I started at my local university there were several high school students attending classes through various programs. Junior colleges and state schools have free and reduced price classes for high schools who want to attend classes part-time. Your brother can also take classes full time at the local junior college by getting his GED. Classes from the Management Information Systems department (a.k.a. Computer Information Systems) will teach the basic computer usage skills you have requested.

    Computer training option 2: Get certification

    The problem with homeschooling is at the end of an excellent education you have no real way of proving your computer skills. After all, the SATs do not test your skills with Excell. Getting Microsoft or some other certificate would be an excellent way of to test your brother’s skills and have a curriculum to follow.

    Does anyone have suggestions for what certificates a high school student should get?

    Computer programming option 1: Java

    The Advanced Placement tests that give high school students college credit assume the student knows Java. I suggest an online introduction to programming college course, however these are more often taught in Visual Basic or C rather than Java.

    Computer programming option 2: Ruby

    The Ruby scripting language would give you brother an easier starting point that Python or Java while still teaching object oriented programming concepts. The best part is that he can use “Why's (poignant) Guide to Ruby,” a short simple introduction to the language written by an insane man. I think the text would be very appealing to a high school student. Please check it out and enjoy the soundtrack.

    HTML version: http://mislav.uniqpath.com/poignant-guide/

  85. Depends on thecore values you wish to impart... by bodland · · Score: 1

    Some examples:
    Christian Fundamentalist
    CS-323 - Building Algorithms with Bible Verse
    Students will learn how the bible guides all decision making using advanced flow charting methodologies and the New Idea Bible.

    Libertarian Para-Military
    CS-400 Applied Advanced Programming Students will utilize various programming languages to write programs in cryptography and working with munitions students in artillery and rocket trajectory feild computations.

    Environmental Extremist
    CS-410 Advanced Communications Programming
    Students will learn to intercept, decrypt maritime whaling vessel broadcasts and to automate triangulation of fleet positions utilizing a botnet of android telephones.

    Polygamous Patriarchal Cult
    CS-330 - Family Network Security
    Students will learn how to secure a family unit network from outside intrusion and methodologies to destroy all knowledge of security access after turning over the encryptions keys and passwords to the Father.

    Dominant Patriarchal Schizophrenia

    CS-101 Skin Bug Eradication
    Students will cover various methodologies of destroying skin bug infections emanating from INTERNET connected computers.

    Obviously the curriculum is vastly different for each...

  86. ICDL or open ICDL by crowne · · Score: 1

    For basic computer literacy starters you could look at the International Computer Drivers Licence ICDL or open ICDL.
    Google "open ICDL" or see http://www.icdl.org.za/products_detail.php?id=6&PHPSESSID=ubu69pnfotj76ecs6vsogfabm1

    ICDL uses Windows XP, Internet Explorer & MS Office
    open ICDL uses Ubuntu Linux, Firefox & Open Office

    Both office suites include a mini database (Access or OO Base), which is used to explain some DB fundamentals.

    Neither course attempts to introduce any sort of programming.

    --
    RTFM is not a radio station.
  87. Classical Education based course by javidjamae · · Score: 1

    Some aspects of what you're asking for fall under the category of Computer Literacy and some Computer Science / Programming. I'm building a course right now based on a Classical Education format (popular in homeschool courses). It will target 6-9 year old kids, so it may not be in your siblings' age range, but I'll have some follow on courses that I'm already planning. I hope to ultimately get it to the point of being a comprehensive curriculum that incorporates programming and computer literacy and take a child from grade school all the way through high school. The first course is not ready yet, but I'll be selling it as an eBook on http://mykidcancode.com/ (@mykidcancode on twitter) Good luck.