Slashdot Mirror


Ask Slashdot: Best Strategies For Teaching Kids CS Skills With Basic?

beaverdownunder writes We're currently working on developing a teaching platform based around our BASIC interpreter DiscoRunner, and we would love to hear from Slashdot readers as to what methods they've used in the past to teach kids computer science concepts — which worked, what didn't, and why? This will obviously be invaluable to us when it comes to working out the lessons that will be taught in our fight-to-save-the-world-from-evil learning environment, and we would be eternally grateful for any scraps of wisdom you could toss our way.

12 of 215 comments (clear)

  1. Re: Lock them in room with books about BASIC by Anonymous Coward · · Score: 5, Insightful

    That, and give them a problem to solve. Better yet, let them find a problem to solve.

    If there is no drive (i.e. "I just want to learn how to 'program'") they will learn nothing.

    My kid is 7 and is getting pretty darn good with Java... Not because he wanted to learn to program, but because he wanted to mod minecraft. Programming was a side-effect to solving a problem. Now he loves it for what it is... He made the initiative on his own and he's much more appreciative on what he accomplishes.

  2. Teach them GOTO! by ShaunC · · Score: 3, Insightful

    GOTO is well-known as a beneficial logical statement. I suppose in this day and age, we're going to need something like this:

    10 PRINT "GIRLS KAN CODE 2"
    20 GOTO 10

    --
    Thanks to the War on Drugs, it's easier to buy meth than it is to buy cold medicine!
  3. Give students license to solve problems by Virus+Hunter · · Score: 3, Insightful

    My daughter took a programming class using Basic during her freshman year. I encouraged her to take it, so she could see that there are multiple ways of solving problems. Unfortunately the teacher was having none of this. He dictated to his students exactly how he wanted them to write the programs. This was very disappointing and incredibly discouraging for my daughter. Let the students struggle a little bit, and let them find ways to complete their assignments. When they're done present some of the students' solutions to the class, and talk about how they solved the assignment and discuss alternatives. You'll need to be respectful. People that are new to programming can be pretty sensitive about their code, so make sure you take that into account. You don't want to make somebody feel stupid, especially when they probably worked very hard on completing the assignment. Lastly, maybe you should consider a different language. Maybe you should consider Python or even C++.

  4. Don't confuse them by chrism238 · · Score: 4, Insightful

    Firstly, don't confuse the students by telling them it's Computer Science, if it's only simple programming.

  5. Use Logo by wiredlogic · · Score: 3, Insightful

    Implement a turtle-based drawing API and build a curriculum that introduces programming concepts with turtle graphics.

    --
    I am becoming gerund, destroyer of verbs.
  6. Re: Lock them in room with books about BASIC by Alrescha · · Score: 4, Insightful

    "If there is no drive (i.e. "I just want to learn how to 'program'") they will learn nothing."

    One should not discount the motivations of others. "I want to learn how" can be just as effective as "I want to mod minecraft" (if not *more* so).

    A.

    --
    ...bringing you cynical quips since 1998
  7. Easy by mwvdlee · · Score: 3, Interesting

    1. Drop the Applesoft BASIC clone.
    2. Create a programming language that natively interfaces with Facebook API, Minecraft API or whatever other software project they actually care about.
    3. Show them a "Hello world" example.
    4. Wait five minutes.
    5. Classroom full of programmers.

    --
    Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
  8. Re:Offer more streams by Demonoid-Penguin · · Score: 3, Insightful

    While your saving the world idea sounds exciting, it won't appeal to a large segment of your audience. Give them a choice of some other options, maybe something more social.

    Perhaps - before you even attempt that:-

    • Provide licensing information on your website
    • Fix some "basic" problems
    • mention that it is Apple BASIC
    • differentiate it from BASIC4GL
    • It is /. - tell us about the code and who wrote it.

    Fix those point and you'll have a product that stands head and shoulders against the competition. Which isn't hard - most of the edutainment market is utter crap (I work with a large number of schools that buy utter shit on the basis of "social-networking" merit points)
    Until then it 'seems' like you (Melody and Anne?) are just spamming Slashdot to promote a 2 month old project.

    Not that the idea isn't without merit - it's just that the "edutainment" market is overcrowded with "outsourced" get-rich-quick, all-froth-(and social marketing) and-no-beer closed-source schemes knocked-up-in-an-afternoon that leave a trail of broken promises in schools already hard pressed to do the bare minimum with their tiny budgets

    Good luck

    "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration" ~ Edsger W. Dijkstra

  9. Re:Offer more streams by BarbaraHudson · · Score: 4, Informative

    It's Melody Ayres-Griffiths. She's promoting her new (started setting ip up in December) pixelwitches, which will teach you "training in graphic design, music / audio and videography on Macintosh and Windows-based PCs for $97 per hour." And let's not forget drupal and wordpress work.

    But from the look of their discorunner site (hint - she used to do music stuff) she needs someone to tell her that the '90s wants their butt-ugly wordpress theme back.

    Archive org shows that the original owner of discorunner.com let it expire in the spring of 2014. It was taken over by the new owner on January 15th of this year. The previous site had to do with ... wait for it ... jogging.

    Slashvertisement, pure and simple.

    --
    "Transparent" is a shit show that trades on every stereotype going. A man in drag is NOT a transsexual.
  10. negative comments? by Pro923 · · Score: 4, Informative

    I see a lot of negative comments pertaining to teaching basic as a first step in understanding how to code. I respectfully disagree. I believe that basic removes all of the complexity that gets in the way of learning pure logic skills. I don't see any sense in teaching kids to program and having pointers or even compiling and linking when the best thing for them to learn is the purity of understanding how to create simple algorithms to solve problems. If they show an interest, they can figure out more complex things like compilers, and the complexities of lower level languages like C. I stated in another comment, I learned how to code on a TRS80 color computer, and I think it was invaluable to master that before moving on to more complex and real-world things...

  11. Re:Offer more streams by Demonoid-Penguin · · Score: 3, Interesting

    It's Melody Ayres-Griffiths.

    I wasn't sure if it was Melody, or her partner April. I know 'of' them (I have a voluntary position on a community funding body, so I've seen previous "software" by them) - so I chose my words carefully when describing the "market", the nature of some (many?) of those trying to, um, mine it - and what I'd want to see before I'd vote in favour of funding it. Melody(?) has previously promoted this latest 'project' on /. celebrating 1000 downloads (by who?).

    Whois showed the current registration was recent , hence my comment about, um, young code.

    DiscoRunner is different because:-

    • 99.5% compatible with the original languages
    • multi dialect (well, two, sort of - so far....)
    • BASIC programs are saved as text files (revolutionary! paradigm shift!! No more .BAS binaries!! [sigh])
    • various other breakthroughs

    Yes, I'm a jaded cynic (and Australian).

  12. You've already failed miserably by LostMyBeaver · · Score: 3, Interesting

    You haven't identified the problem you're trying to solve. At least you made a huge mistake of asking here since you're asking for opinions from an extremely opinionated community without taking the time to actually identify what it is that you're actually having problems with. It seems you just haven't even bothered thinking about it.

    1) Are you trying to teach CS to children? Is this the goal? Have you considered asking whether people with legitimate pedagogical sciences experience and studies have identified methods of teaching children topics of this type?

    2) Are you asking if there are other tested methods of teaching children computer science which have proven effective that can be adapted to the tool you want to use?

    3) Are you in love with a certain tool and while it has almost no practical value to anyone else, you considered it might be a great way to teach kids and now you want to see how you can justify the existence of such a tool (which should simple be, it was fun to make) by trying to use it in CS education of children because "Hey back in the 80's I used AppleSoft Basic and learned from that!"

    4) Have you stopped for a minute to decide whether you're narrowing your scope so much by choosing a specific tool and language that your first goal should have been "How do I teach kids CS?" and then "Are there any learning platforms already available for this?" and then "What are the benefits of making a new learning platform using a language like BASIC when the rest of the world, using well funded pedagogical studies have chosen alternative approaches?"

    5) Why are you trying to choose a language as a tool. You want to teach principles and things like linked lists and design patterns just are damn near impossible to implement in your language. Any form of real math is also shit in BASIC. Yes, we managed to do these things back when a PASCAL compiler cost $400 and a cheese burger cost $2 and BASIC was free. We have moved on.

    6) What are you actually hoping to teach with BASIC? Are you trying to teach them how to draw a line on a screen? Are you trying to teach them to do math? Teach them to do something more applied? What kind of tasks do you actually plan on teaching them? Did you honestly put any thought into this at all.

    I know I'm tearing you up here, but I hope you'll consider it tough love. You're trying to mess with children's minds. This is more than just a fun toy... you need to consider the implications of things like "If I teach them BASIC today, will it actually assist in building interest in kids that otherwise would have never programmed or will it chase off the kids who thought it might be fun but were scared to try and now will never try again because it was too nerdy."

    There are people who spend decades researching how to introduce topics like this into schools. They don't just say "Hey wouldn't it be great if we made them play with this for a bit!". These people instead are educated not only as engineers but as school teachers. Most of them have at least one masters and one bachelors and they think in terms of "How can we most productively introduce a topic like programming and CS to children" and then they research it with teachers, parents and children.

    I think you are very cool for being interested in getting involved.... I hope I gave you some food for thought and I really hope you take your ambitions further and accomplish your goals... once you figure out what they are.