9

I am a engineer. I was recently visiting family and spent some time with my 9 year old nephew. He showed me an app on his mom’s phone he has been using to make games. The app is called hopscotch. It’s a drag and drop app that teaches you some programming concepts. He is really into it; has been at it for a couple months and seems hooked. I want to encourage him to explore programming more. Talking with him, he has the passion for it.

So I am thinking it could be good to get him a laptop. I got my first desktop computer in 1989 at age 8 and it changed my life. It opened up a wonderful career in science and engineering for me. I'd like to offer him the same opportunity.

My concern though is that I never had access to iPhones at his age. I am not sure if he would even use the laptop. Maybe it seems like a strange form factor to kids now or maybe the OS paradigms are too different to what they have become used to?

What do you think? Do you have any experience with modern elementary school kids and laptops? If not a laptop, what’s a good alternative to get him that will let him dig in at more advanced levels?

  • 6
    Not an answer, but if he likes the drag-and-drop coding stuff, look into Scratch. Same type of thing but for desktop stuff. I'd be willing to bet his app was modeled off of (or at least inspired by) Scratch. – Becuzz Nov 20 '17 at 13:21
  • 1
    A desktop is going to be more reliable, less breakable, and cheaper. Also easier to control use. I agree with Scratch. – paparazzo Nov 20 '17 at 14:24
  • +1 for scratch (at least when their website isn't broken). The underlying language is Javascript, which is the premier scripting language. – pojo-guy Nov 21 '17 at 0:21
  • Not enough for an answer but being a parent and a programmer I keep getting this recommended to me in ads and it actually looks pretty neat: codekingdoms.com/code-your-own-minecraft-mods Minecraft coding courses using a drag and drop interface that progresses to code writing. I haven't tried it so can't recommend it for sure but certainly worth looking into. – RyanfaeScotland Nov 21 '17 at 22:55
16

A laptop is a good option, but the downsides are that it's quite expensive and usually rather fragile. (And kids will use them to play games instead of program.)

I'd suggest you instead pick up a Raspberry Pi. They're cheap, tiny, designed to be messed around with, usually come pre-loaded with an Operating System designed to help rookies learn programming and they come with a bunch of connectors that you can use for system programming and robotics.

The internet is full of tutorials and kits to turn a Raspberry into all sorts of things, like installing LEDs on them that react to sound, camera's and motion detectors, spy recorders and what not. (And boring things, like a thermostat or an automatic gate opener, but who wants that?)

If you can get your hands on a Raspberry Zero, your kid can start programming for about 10-20$ (assuming you have some spare peripherals lying around) and even the most twinked out Raspberry3 with all the cool kits won't be as much money as a budget laptop.

(If your Raspberry comes with a blank card, the OS I meant is Raspbian and you can just download and install it yourself; it's free.)

| improve this answer | |
  • I like the suggestion of the PI for the cheapness but is there any drag and drop programming interfaces for Raspbian et al? I think that would be the hardest sell, keeping the interest when transitioning to a text editor! – RyanfaeScotland Nov 21 '17 at 22:57
  • 5
    @RyanfaeScotland it comes with Scratch pre-installed ;) – Erik Nov 22 '17 at 5:57
10

Short answer, yes but ...

(Disclaimer - I am a programmer, and for a hobby I run a video production team composed primarily of teens and preteens )

Yes, it can be a good investment, but for half the price you can set him up with a compact desktop system that is more likely to survive the abuse it will receive by virtue of its owner being 9.

Software for iPhones is not developed on iPhones. It's developed on desktops or laptops them tested on iphones. Many phone "apps" are little more than a browser link to a web server that runs the real app. A laptop or desktop system will allow him to begin exploring those designs.

At 9, some interests are transient. There is no way to know in advance if exposure will result in deepened interest and capacity or shorten the time until they decide it's really not what they want to do.

However, His interest in the limited tools he already has is very promising. Good tools and mentoring can really encourage interest and skill development, especially if a small group of like minded kids and teens can be brought together for some projects.

| improve this answer | |
  • 7
    And for a quarter (or less) of the price, you can set him up with a Raspberry Pi. Which are also meant for this kind of thing, and come pre-installed with all sorts of "learn to code" tools. – Erik Nov 20 '17 at 8:28
  • @Erik - that's probably an answer in and of itself, and is what I came here to post. I'll give you the chance to do it first. – MD-Tech Nov 20 '17 at 15:03
  • @MD-Tech fair enough; I added an answer to share the advantages of the Pi :) – Erik Nov 20 '17 at 19:10
  • Don’t you need a PC to write the code for the Raspberry Pi first? – JBRWilkinson Nov 20 '17 at 22:54
  • 2
    @JBRWilkinson you might be confusing it with the Arduino; the Raspberry is a fully functional computer itself. – Erik Nov 21 '17 at 11:34
9

Please discuss your intention with his parents first

I’m sure whatever you choose to get your nephew will be amazing and life-changing in all sorts of ways, but please be sure to discuss your plans with his parents up front.

There are some important aspects to consider: will it be internet connected? Will it have Parental Controls? Who will have the Admin password? Do they have internet already? What happens if your plans don’t go the way you’d like (e.g. he installs ‘Plants vs Zombies’ from a friends’ disc and suddenly it’s a gaming machine..)

Consider building in ‘quality Uncle time’ to the proposal so that they know you’ll be supervising some of it.

A note from experience - my buddies parents bought their children a little TV and DVD player each for Christmas. What seemed an initially generous gesture backfired in that the children would never come down from their rooms to sit with the family. The Internet is way more enticing and addictive than a TV+DVD ever could be...

| improve this answer | |
3

I'd avoid a laptop mostly because its portability easily translates to droppability/breakability. A desktop is both less expensive and significantly more stable. (Our first "kids" laptop died by falling out of a bunkbed. It wasn't supposed to be up there, but the child really wanted a comfy pile of pillows to sit on while working, and she'd never dropped anything out of bed, and Mom has so many silly rules, and... <crash>)

One significant thing to consider, however, is how much technology has changed in a few decades. Back then, there was not much to do with a computer besides learn how to program; games existed, but weren't free and immediately downloadable. My 10-year-old prefers to use the computer for playing Minecraft, watching YouTube videos, or playing random web games; these are all purely recreational. (He also uses it for school assignments, but that is not a "preferred" use!) Almost every child has strong familiarity with computers and the internet, but that has not led to almost every child being deeply interested in programming and technology.

Since he's already interested in visual programming with that app, it's quite possible to channel that interest. However, choosing good software/languages and providing some level of coaching are just as important as having the computer available. The ease of using a computer as a toy, rather than a tool, could easily reduce its educational utility.

| improve this answer | |
  • 1
    Minecraft is actually a good choice here because it is easy to create mods for. Modding minecraft is java programming, can incorporate both client side and server side elements, and pretty much ensures a well rounded introduction to enterprise technologies. – pojo-guy Nov 20 '17 at 16:36
  • 2
    Minecraft CAN be a good choice for developing interest in coding and whatnot, but it can also be treated as a simple game. Speaking of mods though there used to be one (I'm unsure if it has been updated to the latest version of MC) called "Compucraft" that enabled one to program in Lua IN minecraft to make little robot-cubes do things. That could be worth looking into. On the topic of learning tools though: Code Combat is worth looking into as it is a game that requires one to learn coding skills to "win" the fights and things. – BunnyKnitter Nov 20 '17 at 18:49
2

What do you want him able to do?

You probably want him to be able to use an IDE to compile and run code. But he already seems able to do that with the computer he has. I'm not familiar with that language, but I do play with Scratch which looks similar but is aimed a little younger without access to the phone features.

Being a good programmer is generally held to be independent of the language used, even the tools are about speed and error reduction rather than making the finished result better or the user intrinsically better. Since it is unlikely he's got a LOC quota or project deadlines the key feature is keeping him interested. If he puts effort into making computer programs it will happen if he is bitbanging assembly onto bare metal or drawing with labview. I learned some lasting (not always bad) lessons writing on a calculator.

Learning a new computer language is a nice skill to have, one that uses text probably has more longterm potential than an iPhone app, and there are probably more existing patterns and projects for him to look at with a more established language, but what he has is able to exercise the logical manipulation that are the core of programing.

If he still has projects he is excited about within the scope of this program celebrate them. He doesn't necessarily have to do "more advanced levels" to make meaningful programs.

If you want him to be able to do something he can't now pinpoint what that is. Show him how you use a different tool to easily complete a task he's had trouble with. If he bites, and enjoys team programing on your equipment that's the time to consider (with his parents) how to allow him independent practice.

The transition from mostly visual with clear directions of how blocks can connect, to text with limitless possibilities probably shouldn't be left for a 9-year-old to figure out alone. I wouldn't just turn him loose on a new laptop with a Java IDE and call it progress; "it doesn't compile", "what the heck does 'error -44' mean?" is such a frustrating experience I would be quite worried he would give up on the whole thing.

If you or someone else can provide all the support he will need to become competent with the new tools a laptop opens the whole world, but it is a big commitment.

| improve this answer | |
1

I think a laptop is a great gift option. I received my first computer at a young age because I showed a lot of interest in technology. I feel that it benefited me greatly. (I am currently in college for Software Engineering and employed as a Software Developer)

Do you have any experience with modern elementary school kids and laptops?

All of the middle school and high school students in the middle/high school I attended are given iPads. They are now beginning to provide instruction / apps for basic programming influences.

If not a laptop, what’s a good alternative to get him that will let him dig in at more advanced levels?

I would highly suggest an older generation refurbished iPad. Depending on what level of laptop, I would guess that an older iPad will be cheaper. There are a range of great apps for coding. My personal favorite is Pythonista (an IDE for Python). Also, depending on what phone the drag and drop app was on, he could also potentially transfer the work he has already done. Another potential benefit is, in my opinion, an iPad is easier to make "kid friendly". Of course the need for that depends on the parents.

| improve this answer | |
  • I disagree with recommending an iPad - it's predominantly a consumption device IMO. – JBRWilkinson Dec 29 '17 at 10:50
1

Yes. BUT make sure you check with his parents first to make sure it’s ok with them. And as mentioned by others, a desktop would be more robust and easier to monitor. Also if you’re quite savvy with computers you may try building one that is text-only (which is what my husband is doing for our son, so that we know he isn’t using the computer to browse YouTube etc).

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.