FAQ
Hi,

I have some ideas, but my 12y old wants to program meaningful things, and
Go seemed meaningful like him.

Every father's dream and nightmare - "meaningful". We discussed scanning a
filesystem for files of a certain type and accumalating the size as a
starter.

But - he'll has to learn the language and the concepts first, and probably
git while he's at it.

Has anyone here treaded here before?

FWIW, I explained a bit about the languages I use - from Scala to Scheme to
OCaml and Go - and Go was obvious as a choice to him.
Cross-platform+compiling, the build system godoc.org.... And children seem
to speak the truth.

Any ideas/input highly appreciated!

Thanks,

Maarten



--
You received this message because you are subscribed to the Google Groups "golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Search Discussions

  • Shawn Milochik at Aug 11, 2015 at 7:41 pm
    In my experience, people (children even more so) don't really absorb
    abstract concepts until they've actually applied them.

    I think a very successful strategy would be this:

    1. Help him build a bunch of *small* tools, one at a time.
    2. "Give him" the answers (use this function, use this package) as he goes
    along.
    3. Answer any questions he has, resisting the temptation to explain more
    than he has asked (so you don't slow him down or give his interest time to
    fade).

    Repeat this and he'll need less help each time with things he's seen
    before, and will build a working knowledge of the language and its
    capabilities.
    In short, be his Google and StackOverflow since he doesn't have the
    experience to know what terms to search for.

    *Then, *when he's comfortable with writing small applications with minimal
    help, you can give him all the guidance he'll stay still for, and it'll
    have fertile ground to take root.
    Your advice and beginner's Go books will make sense to him after this.

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Dan Kortschak at Aug 11, 2015 at 9:54 pm
    The other thing that you can do is scaffold an answer with the major structure implemented by you, but with interesting functions that are required to be implemented by your child left as stubs by you (write the working code to check everything else is correct and delete the body of the target functions before you give it to them).
    On 12/08/2015, at 5:11 AM, "Shawn Milochik" wrote:

    2. "Give him" the answers (use this function, use this package) as he goes along.
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Nicolas riesch at Aug 11, 2015 at 7:48 pm
    For children, drawing things is certainly an enjoyable and interesting
    activity:

    https://github.com/llgcode/draw2d

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Ajstarks at Aug 11, 2015 at 10:38 pm
    I agree: you can also do SVGo with svgplay.
    On Tuesday, August 11, 2015 at 3:48:28 PM UTC-4, nicolas riesch wrote:

    For children, drawing things is certainly an enjoyable and interesting
    activity:

    https://github.com/llgcode/draw2d
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Russel Winder at Aug 13, 2015 at 11:15 am

    On Tue, 2015-08-11 at 12:48 -0700, nicolas riesch wrote:
    For children, drawing things is certainly an enjoyable and
    interesting
    activity:

    https://github.com/llgcode/draw2d
    Drawing stuff to begin to learn programming works very well with adults
    as well. Maze drawing and traversal is a big win. Especially if you
    then build the maze running robots.

    --
    Russel.
    =============================================================================
    Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder@ekiga.net
    41 Buckmaster Road m: +44 7770 465 077 xmpp: russel@winder.org.uk
    London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Grzegorz Żur at Aug 13, 2015 at 2:04 pm
    Some time ago I found Gobot [1] project. It would be fun to program Sphero
    [2].

    [1] http://gobot.io/
    [2] http://gobot.io/documentation/platforms/sphero/

    On Thursday, 13 August 2015 13:15:41 UTC+2, Russel Winder wrote:
    On Tue, 2015-08-11 at 12:48 -0700, nicolas riesch wrote:
    For children, drawing things is certainly an enjoyable and
    interesting
    activity:

    https://github.com/llgcode/draw2d
    Drawing stuff to begin to learn programming works very well with adults
    as well. Maze drawing and traversal is a big win. Especially if you
    then build the maze running robots.

    --
    Russel.
    =============================================================================

    Dr Russel Winder t: +44 20 7585 2200 voip: sip:russ...@ekiga.net
    <javascript:>
    41 Buckmaster Road m: +44 7770 465 077 xmpp: rus...@winder.org.uk
    <javascript:>
    London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Jérôme LAFORGE at Aug 11, 2015 at 7:56 pm
    From my experience, the best language for children is scratch.
    https://scratch.mit.edu/scratch
    It is very nice for learning base concept as loop, condition or event programing.

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Maarten Koopmans at Aug 11, 2015 at 8:53 pm
    Thanks for all the advice - scratch and python are precisely what he didn't like.

    Having him built small tools and not "over-feeding" him seems solid advice. It's really strange - he'd rather traverse a filesystem or make a web crawler than do something with graphics.

    Thanks again!

    --Maarten

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Russel Winder at Aug 13, 2015 at 11:14 am

    On Tue, 2015-08-11 at 13:53 -0700, Maarten Koopmans wrote:
    Thanks for all the advice - scratch and python are precisely what he
    didn't like.

    Having him built small tools and not "over-feeding" him seems solid
    advice. It's really strange - he'd rather traverse a filesystem or
    make a web crawler than do something with graphics.

    Thanks again!
    I am not surprised by the not being convinced by Scratch. Not liking
    Python seems strange. If Go is interesting for him, go for it <groan/>.

    Nothing wrong with preferring file system etc. over graphics, diversity
    is good.

    --
    Russel.
    =============================================================================
    Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder@ekiga.net
    41 Buckmaster Road m: +44 7770 465 077 xmpp: russel@winder.org.uk
    London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Russel Winder at Aug 13, 2015 at 11:12 am

    On Tue, 2015-08-11 at 12:56 -0700, Jérôme LAFORGE wrote:
    From my experience, the best language for children is scratch.
    https://scratch.mit.edu/scratch
    It is very nice for learning base concept as loop, condition or event
    programing.
    Scratch is targeted at the 7 to 11 age range, at least as applied in
    the UK education system. For 11 to 16 most schools are choosing to use
    Python. Java probably creeps in a bit as well. Minecraft.

    --
    Russel.
    =============================================================================
    Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder@ekiga.net
    41 Buckmaster Road m: +44 7770 465 077 xmpp: russel@winder.org.uk
    London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • David Skinner at Aug 12, 2015 at 1:24 am
    I rather liked the go tutorial for appengine. You can spend a lot of time
    customizing the code. It is always easier to start by modifying a working
    program to make it better. Change the program to get the color you want,
    Change to a different formula and get a different pattern. Have fun and
    share.

    To view the end results, http://davsk.net/mandelbrot

    Source code is https://github.com/davsk/davsknet

    To get a list of links for resources try
    http://blog.davsk.net/2015/07/web-page-design-standards-and-resources.html

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Diego Medina at Aug 12, 2015 at 6:05 am
    I would start with a web server, Go makes this really simple, so in just a
    few minutes, he would get to write some lines of code, compile, and see
    "something" happen on the browser. I you can evolve it step by step,
    starting with simply displaying the time, then you can add query
    parameters, one or two more url path handlers and then server json data.

    and from there he can then move to write a client app that would fetch the
    json from the web server, and render specific fields on the terminal.

    I wouldn't worry about git at first.

    All the best!

    Diego


    On Tuesday, August 11, 2015 at 3:30:53 PM UTC-4, Maarten Koopmans wrote:

    Hi,

    I have some ideas, but my 12y old wants to program meaningful things, and
    Go seemed meaningful like him.

    Every father's dream and nightmare - "meaningful". We discussed scanning a
    filesystem for files of a certain type and accumalating the size as a
    starter.

    But - he'll has to learn the language and the concepts first, and probably
    git while he's at it.

    Has anyone here treaded here before?

    FWIW, I explained a bit about the languages I use - from Scala to Scheme
    to OCaml and Go - and Go was obvious as a choice to him.
    Cross-platform+compiling, the build system godoc.org.... And children seem
    to speak the truth.

    Any ideas/input highly appreciated!

    Thanks,

    Maarten


    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Micky at Aug 12, 2015 at 7:22 am
    Well, my 13 year old started by a binary clock I used to have in my living
    room. One day she asked, "how does this work?". And there we went. Off with
    the binary numbers in few weeks, hex and so on. She soon got Edubuntu cause
    she was curious about it as they only taught stuff on Windows in school. I
    also showed her Altair 8080. By the time, she saw the Go playground, she
    had solid understanding of how memory works and different data types and
    their max values.

    I don't teach everyday. It just happens occasionally in small conversations
    when I am working and the kiddo happens to stop by. All kids are curious.
    The trick is when they ask questions, you have to reply in a way that makes
    them more curious and encourages experimentation!

    P.S. Show them cool stuff first. There's Makezine's Mini Show for kids.
    On Wed, Aug 12, 2015 at 11:05 AM, Diego Medina wrote:

    I would start with a web server, Go makes this really simple, so in just a
    few minutes, he would get to write some lines of code, compile, and see
    "something" happen on the browser. I you can evolve it step by step,
    starting with simply displaying the time, then you can add query
    parameters, one or two more url path handlers and then server json data.

    and from there he can then move to write a client app that would fetch the
    json from the web server, and render specific fields on the terminal.

    I wouldn't worry about git at first.

    All the best!

    Diego


    On Tuesday, August 11, 2015 at 3:30:53 PM UTC-4, Maarten Koopmans wrote:

    Hi,

    I have some ideas, but my 12y old wants to program meaningful things, and
    Go seemed meaningful like him.

    Every father's dream and nightmare - "meaningful". We discussed scanning
    a filesystem for files of a certain type and accumalating the size as a
    starter.

    But - he'll has to learn the language and the concepts first, and
    probably git while he's at it.

    Has anyone here treaded here before?

    FWIW, I explained a bit about the languages I use - from Scala to Scheme
    to OCaml and Go - and Go was obvious as a choice to him.
    Cross-platform+compiling, the build system godoc.org.... And children seem
    to speak the truth.

    Any ideas/input highly appreciated!

    Thanks,

    Maarten



    --
    You received this message because you are subscribed to the Google Groups
    "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an
    email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Maarten Koopmans at Aug 12, 2015 at 7:57 am
    So many wonderful suggestions, what a great community this is!

    I might try and record our journey on the web somewhere - and assuming fun and success - inspire others.

    Thanks a lot!

    Maarten

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Fatdogbear at Aug 13, 2015 at 12:57 am
    clone bsd utils or gnu coreutils.

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Kevin Malachowski at Aug 13, 2015 at 3:48 am
    After they've learned the syntax but need to practice using it, try ProjectEuler.net. It is a repository of interesting math/programming problems and includes an autograder. There are at least a few problems that are "easy" enough given an explanation of how to use the math/big package. Some problems can be done with brute force, but many require you to implement an efficient algorithm to compute the result in a realistic timeframe.

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.
  • Kevin Malachowski at Aug 13, 2015 at 3:50 am
    Also, tour.golang.org contains a lot of good information about how to use the language. It pretty much assumes prior programming ability, so parental guidence might be required.

    --
    You received this message because you are subscribed to the Google Groups "golang-nuts" group.
    To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
    For more options, visit https://groups.google.com/d/optout.

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupgolang-nuts @
categoriesgo
postedAug 11, '15 at 7:30p
activeAug 13, '15 at 2:04p
posts18
users13
websitegolang.org

People

Translate

site design / logo © 2022 Grokbase