News for hackers. Stuff that matters.
Re:How kids in a low-income country use laptops: lessons fro... by dahart on Thursday April 05, 2018 @11:59AM (#16766087)
> I don’t have children yet, but when I get children I hope to show them programming and involve them in what I do with computers and to show interest in what they are doing and to encourage them to be creative.

I had the same hope for my children (now 12 & 14), so I let them start using devices & playing games when they were 3 (even gave my older kid the first rev of the OLPC laptop). To a large degree, I regret the decision to start that early.

Nothing has gone the same way it did when I was a kid. I had a DOS machine with a couple of crappy games, and a BASIC interpreter. The only thing I could do is learn to program, it was the most exciting thing available.

Today, the absolute flood of high quality content in videos & games has basically prevented them from wanting to spend time figuring out low level details. They have options for spending their time that are so much better than I had that they basically can't choose to create. At least not yet.

My oldest has been talking about creating his own games for years, he's very curious, he's a super user of the OS's he has access too, his knowledge of game styles and history far exceeds mine (and I was a game dev for a decade). But when it comes down to spending time making things, he inevitably chooses to play an interesting game rather than learn coding. My younger son is almost as addicted to games, but has a simultaneous addiction to YouTube.

Recently I met a couple of extremely smart and creative kids whose parents (AI researchers) have completely and severely restricted their access to any devices at all. It got me wondering what the best way to encourage creativity is. Pushing too much will turn them off or make them resist, but a lack of any support can be even worse.

Making sure they have time where they're bored and don't have access to high quality and structured entertainment choices at all times currently seems like a good idea to me.

OTOH, they're growing out of some habits I was worried about, and maybe the best approach is just to set a good example and love and support them in whichever directions they want to go.

Re:How kids in a low-income country use laptops: lessons fro... by NPMaxwell on Thursday April 05, 2018 @12:13PM (#16766217)
We did not restrict access, and when my youngest was 11, he said he wanted to be a game developer. (As he says, "everyone wants to be a game developer.") We agreed to support him, but only if he wanted to do it "for real". "For real" meant first learning C or Java. He agreed and we did something that seemed obvious after the fact: we hired a programming teacher the way other families hire a music teacher. Our son met with this college senior who had taken Java once a week for an hour and the guy took our son through the first 5 courses of UW's CS sequence. Sort of worked well: At 19, when my son applied for jobs, he could say 8 years experience in Java. By then, he also had C, C++, Lua, Unity, and 3D StudioMax. He made a stab at starting a game-development company, and wiped out on that first try. At 24, he is now coding backend for apps supporting farming and creates games now and then on weekends. (Some day, he might get his G.E.D.)
Re:How kids in a low-income country use laptops: lessons fro... by Endy on Thursday April 05, 2018 @02:28PM (#16767601)
I say this as a joke, but what if he'd wanted to learn FlashScript instead of Java or C*?
Re:How kids in a low-income country use laptops: lessons fro... by rbanffy on Thursday April 05, 2018 @07:25PM (#16769690)
Programming is the hard part. Language is a detail.
Re:How kids in a low-income country use laptops: lessons fro... by sandov on Thursday April 05, 2018 @06:42PM (#16769436)
He'd be selling drugs by now.
Re:How kids in a low-income country use laptops: lessons fro... by NPMaxwell on Friday April 06, 2018 @01:15PM (#16775029)
:) We did reach out to developers and got our list (Java or C/C++) from them. There's a serious parenting question in your joke. We presented the whole thing as if we were in control: it's an illusion. He could have screamed, "SCREW YOU!", and locked himself in his room. As it was, we said, "It has to be Java or C" and he believed us. Lucky!
Re:How kids in a low-income country use laptops: lessons fro... by ratsimihah on Thursday April 05, 2018 @07:50PM (#16769835)
What’s FlashScript? I first “picked up” programming by getting a book that teaches ActionScript.

I can’t remember why I bought that book at 12 years old and why ActionScript, but learning about OOP before anything else was interesting.

As far as I remember, I didn’t continue with AS, but around 18 I started messing with PHP and never stopped building things since then.

Re:How kids in a low-income country use laptops: lessons fro... by komali2 on Thursday April 05, 2018 @01:45PM (#16767118)
As a kid that grew up addicted to video games, my greatest "wish" or "feedback" from my perspective is that my parents had significantly restricted my screen time, or reduced screen time competently. As it stood, they were young, broke, and relatively uneducated when I was born, and in their mind if I was quiet, not-dead, and had nothing lower than a B on a report card, job done.

But that came with a total addiction to World of Warcraft, Battlefield, and pirated anime, along with all the broken social interactivity that comes with a pale-skinned weaboo spending his summer vacations hiding in his room and worsening his nearsightedness.

I love my parents and because I don't have kids I won't claim to know the best way to raise them, but I will say I wish my dad had learned enough about computers to actually managed to restrict internet time rather that just throwing on a shitty parenting software his coworker gave him that I surpassed in about five minutes. Or, somehow rewarding me for exploring the pirated copy of 3D Studio Max and fostering creativity there. Or, just taking the damn computer away and forcing me to go hang out with people. I was a shitty kid and I know I was hard to manage, but I think that dealing with that is part of being a parent.

I have no idea if I would have turned out struggling less with the things I struggle with now if they had done things like that, but I suspect this is the case. So, you know, don't take my words at face value, just consider it as one perspective from someone who is now an adult and did grow up with nearly unlimited screen time. I managed to fill the social gaps somehow, get a job etc, not all of my old WoW buddies ever managed to.

Re:How kids in a low-income country use laptops: lessons fro... by Born_Again on Thursday April 05, 2018 @02:54PM (#16767874)
Thank you for sharing this. I have a few college friends that seem to be in the same situation as your WoW buddies that haven't managed to fill in the social gaps. Is there anything that I can do to encourage them to be more social or do you think you had to find that motivation within yourself?
Re:How kids in a low-income country use laptops: lessons fro... by komali2 on Thursday April 05, 2018 @04:55PM (#16768715)
The "short" answer to your question is in the last paragraph of this tired and long post, sorry about that, when I reminisce, I wax.

I went from being an introvert with anxiety so bad I cried in front of everyone when giving an assigned speech to speech class, to an A-type with endless external confidence, marketable public speaking skills, no shame, and almost no inhibition. This change occurred sometime towards the end of highschool (with a fresh dose of "know-it-all-asshole") and matured throughout college. I regularly try to figure out just what the fuck happened. Who is responsible for this shift? I want to condense it so that others like me can change if they want to. Best I can do is point out a couple memories that I think were "turning point."

1. In middle school I was called "gay" all the time because I was quiet. Back then this was an unacceptable insult and socially ruinous for a 13 year old. I somehow made great friends with a guy who once said "Are you actually gay?" I said "no." He said "who fucking cares anyway?"

2. Freshman year I gave a speech and cried at the beginning from nervousness, the teacher quietly put his hand on my shoulder and made me finish the speech, quietly giving me encouragement, telling me I was doing a great job.

3. Sophomore year I was at my friends' place for an all-night LAN WoW binger. His bathroom's lock was broken downstairs so I'd been using the upstairs one. His older brother (A-type sure-of-himself guy that I admire to this day) went to use the bathroom, announcing he "had to take a dump." I said "oh, use the upstairs one, this one's lock is broken." He said "so?" I asked, "what if someone walks in on you?" He said "I'd say, 'get out of here, I'm taking a dump!'"

4. In highschool we read a book about a little girl that died and was allowed by... god or something... to view certain portions of her life again. She noticed that she wasn't "awake" in any of those memories - nobody was expressing their love for eachother, or appreciation of the moment, everyone was "sleepwalking." I'm sorry, I don't remember the title.

So to sum up my absurdly long post, I would say the things that helped me fill in the social gaps are having supportive people in my life that help me put things in perspective, and a very early introduction to the concept of "mindfulness," though I didn't call it by that name back then. Also, an early introduction to my mortality.

So I guess, support your friends, invite them out even if they don't come (they might eventually), and when they do come out, iron out their faults (I would lash out and be an asshole, and my friends would be so so patient with that, showing me "they right way." Think classic neckbeard arrogant ass.)

Re:How kids in a low-income country use laptops: lessons fro... by Born_Again on Friday April 06, 2018 @01:23PM (#16775129)
Thanks. I'll definitely invite them out more.
Re:How kids in a low-income country use laptops: lessons fro... by arvinsim on Thursday April 05, 2018 @07:29PM (#16769708)
The book might be "The Lovely Bones"
Re:How kids in a low-income country use laptops: lessons fro... by komali2 on Thursday April 05, 2018 @08:52PM (#16770107)
Oh, I do remember that, but it wasn't that book. Ours was a short story, and small enough to fit alongside other short stories inside our assigned English textbook.
Re:How kids in a low-income country use laptops: lessons fro... by sgc on Thursday April 05, 2018 @11:03PM (#16770591)
There is an interesting alternative behind this story. Perhaps let them play, with some content and time checks in place, but also require them to be active in other things, like swimming, gymnastics, outdoor pursuits, things that require community engagement.
Re:How kids in a low-income country use laptops: lessons fro... by johnny313 on Thursday April 05, 2018 @12:20PM (#16766273)
This is a hard problem. I have three kids, we let the oldest (7) play on an old laptop running Ubuntu, with no internet access. He goes through fits ant starts writing some basic python, learning how to navigate in the terminal, etc - but its hard for him to focus for too long on any one thing. We CONSTANTLY talk about new game ideas, but have not yet been able to channel that into making things.

We restrict access to screens to an hour a week otherwise - my kids will always choose a game on the iPad (of any quality) over unstructured time on the linux box. We have tried hard to follow the "set a good example and love and support them in whichever directions they want to go" philosophy.

Re:How kids in a low-income country use laptops: lessons fro... by zeta0134 on Thursday April 05, 2018 @01:32PM (#16766967)
Recommendation: Python might be too advanced of a start.

Seriously.

Check out some simler frameworks that are geared more strongly towards game development. Even as an experienced programmer, I still gravitate towards the Love2D framework for getting an idea on screen quickly, (for 2D stuff anyway) because it handily masks away all of the libraries and support hardware. So long as I can navigate the Lua programming language, I can have moving characters onscreen responding to keyboard input in about an hour.

https://love2d.org/

Point being here, don't underestimate the value of instant gratification. As much as that sounds like what you're trying to avoid, since that's exactly what YouTube and social media feel like to an outside observer, that instant gratification loop of "change code, run game, see results" is crucial for the early developmental stages. Let your kid learn through experience how fun it can be to program the basics, and then stumble on something more complex that he wants to do organically, or bump into a limit of the framework, and at that point he'll know enough about the tools to be nudged towards tackling the harder stuff.

Re:How kids in a low-income country use laptops: lessons fro... by johnny313 on Thursday April 05, 2018 @02:39PM (#16767729)
Thats a great idea. We started in python mostly because of a book he found at the library. Love2D looks like a great option, thanks for sharing!
Re:How kids in a low-income country use laptops: lessons fro... by rbanffy on Thursday April 05, 2018 @07:32PM (#16769722)
> Python might be too advanced of a start.

I have that feeling. I learned BASIC on an 8-bit computer where the command prompt was a BASIC REPL.

That's probably the best abstraction level for learning to program.

Re:How kids in a low-income country use laptops: lessons fro... by zeta0134 on Friday April 06, 2018 @01:16AM (#16771052)
Funny you mention that! My first programming language was TI-BASIC, on an old TI-83 Plus. That language is wonderfully simple, slow enough to watch the execution happen almost in realtime, and tolerant enough that for the longest time, I didn't know what the "End" token did, and my programs would crash after a while, infinitely recursing into If blocks because I simply didn't know any better. Good times!

After a while, I figured out that all the best games were written in this mystical "Assembly" stuff, which ran a lot faster and could, with some wizardry, do greyscale! I taught myself z80 programming without ever stopping to think that it might be difficult. Later, I realized this is a Junior level college course in a great many degree programs. Who knew? For me, it was just another step on the path to making games instead of doing my math homework.

Re:How kids in a low-income country use laptops: lessons fro... by rbanffy on Monday April 09, 2018 @12:04PM (#16794208)
The kind of BASIC that did fit on 8-bit computers is a non-intimidating low-level programming language. All variables are global, you have jumps and subroutines, but no named (multi-line) functions and conditionals most of the time end in jumps that go over a segment of code.

Conceptually, it's incredibly simple and I think this is its most important contribution.

Re:How kids in a low-income country use laptops: lessons fro... by grahamburger on Thursday April 05, 2018 @02:24PM (#16767555)
My son started with Scratch (stratch.mit.edu) and had tons of fun with that. He's kind of moving on to Python now. I had him play a little bit of Zork to show him that games could be fun with just text and then made him a very very simple text game engine in Python. It's been loads of fun to see the stuff he comes up with. (You start on a deserted island in the pacific ocean. You go east and find a boat and you're in New York!)
Re:How kids in a low-income country use laptops: lessons fro... by spc476 on Thursday April 05, 2018 @09:57PM (#16770346)
I think the best way to get kids interested in computers is to have them in the 1980s. Pre-internet, and the computers were simple enough to be completely understood by a single person. It also didn't hurt that they nearly all came with BASIC built in and available in under a second when the machine was turned on.

Also, it wasn't unheard of to have a 15 year old making a hit game.

So yes, if at all possible, have your kids in the 1980s.

Re:How kids in a low-income country use laptops: lessons fro... by mysterydip on Thursday April 05, 2018 @10:22PM (#16770452)
What about giving them something like pico-8? https://www.lexaloffle.com/pico-8.php
Re:How kids in a low-income country use laptops: lessons fro... by megaman22 on Thursday April 05, 2018 @03:54PM (#16768320)
Seven is young. Many children can't even read, let alone navigate a command-line interface and dabble at programming at seven. Give it time.

The whole cult among parents these days about limiting screen time is worrisome to me. The only way I ever got into programming seriously was through gaming, and eventually, modding. An hour a week would never have given me enough time to get into that, however.

Re:How kids in a low-income country use laptops: lessons fro... by khedoros1 on Thursday April 05, 2018 @08:06PM (#16769927)
My screen time was somewhat limited as a child, but to probably an hour or two a day (that is, by the time I was 9 or 10 and knew how to navigate DOS on my own). Games made me learn how to configure the computer. My first programming book was a book of late-70s BASIC games for microcomputers (which I used on my early 90s DOS machine).

I only ever did some light modding, but when I had a chance to take some programming classes in high school, you'd better believe that games were on my radar. Writing emulators is still a hobby of mine.

My parents monitored what I did, like I do with my kid now, and there are the "mysterious" times when the TV stops working (couple hours? OK. All day? No.) So I suppose that my wife and I are taking a kind of hybrid approach: Give kiddo the chance to be familiar with the technology around us, but regulate the time so that an obsession in the wrong direction never develops.

Re:How kids in a low-income country use laptops: lessons fro... by komali2 on Thursday April 05, 2018 @01:47PM (#16767149)
Have you considered "screen time" not being totally un-regulated? I.e. separating "ipad time" and "ubuntu time?"

Same philosophy as dessert choices - give a kid a choice between an apple and a chocolate for dessert, they're going to choose the chocolate every time. They'd eat pails of sugar by the spoonful if you let them. But if the choice is between apple and nothing, well...

EDIT: This comment by jerf explains the idea far far better than I have, and they're doing it right now with their own children: https://news.ycombinator.com/item?id=16766756

Re:How kids in a low-income country use laptops: lessons fro... by bluedino on Thursday April 05, 2018 @02:29PM (#16767605)
He's 7.
Re:How kids in a low-income country use laptops: lessons fro... by johnny313 on Thursday April 05, 2018 @02:36PM (#16767689)
For sure. This is not a big thing, just something we are trying to be thoughtful about. Most of the time we talk about Pokemon and do mazes.
Re:How kids in a low-income country use laptops: lessons fro... by JamesLeonis on Thursday April 05, 2018 @02:42PM (#16767769)
I started playing video games at an early age with high quality titles (8/16-bit era), and didn't learn to program until my mid-teens.

Looking back, my introduction to computers came from (a) having a PC game I couldn't run a game, and (b) a Dad that was technical enough to replace components in said PC. We had a "pop the car hood" moment where he showed me what each component did, how to change a processor, check the BIOS was registering the changes, etc.

Leading up to programming I became deeply engrossed with game tools. Modding was all the rage, and I did a bunch of map making with Quake, Unreal, and Starcraft. Startcraft in particular, with it's scripted events system, were some of the first exploration I did in structuring statements to get a desired result.

At the same time, my parents had a pretty strict no-videogame policy on school nights, which effectively meant Fri-Sun were my game times. This did not translate in restrictions of general computer use though, so I could still use it as a power user. Game tools were my clever way to subverting that rule, because I wasn't "actually" playing a game.

> But when it comes down to spending time making things, he inevitably chooses to play an interesting game rather than learn coding.

Let's be very honest with ourselves, the Mean Time To Reward for video games is laughably small and non-competitive. This is powerfully true for beginners of programming. To cross that chasm, you need two things: reduce the MTTR and inspire a thirst for knowledge that video games can't quench. Two birds for one stone, use your own game development experience and build a small game in Unity yourself and ask their advice and bug testing. When they spy you working in Unity, and how quickly you are developing, I bet it will inspire that thirst for something more than video games (and structured content in general) can provide.

> he's very curious, he's a super user of the OS's he has access too...

He sounds like he's perfectly on track.

Re:How kids in a low-income country use laptops: lessons fro... by PeterStuer on Thursday April 05, 2018 @01:51PM (#16767180)
Rather similar. When they where realy young we introduced them to First Lego League ( http://www.firstlegoleague.org/ ), created a team of 6-12 yo's, organized crafting and experimentation sessions teaching them about programming and engineering in general. But as they get older, the barrage of entertainment online, games, YouTube etc. just steamrolls across them. Like many parents you start the endless grind of 'limiting computer time' to stop them turning into complete addicts (like most of their peers), but it is a relentless uphill battle.
Re:How kids in a low-income country use laptops: lessons fro... by solarkraft on Thursday April 05, 2018 @06:21PM (#16769279)
At 11-13 or so I played a then popular Minecraft mod package from a collection called Feed the Beast [0] which included a mod called ComputerCraft [1] - That was my introduction to Lua and basic Unix concepts.

Now that I think about it that seems pretty similar to what you experienced with DOS&BASIC on a "real" computer.

Except the game mod also provides simple & powerful programmable robots called turtles that work similarly to scratch, but are way more fun and feel more useful. Using them was a really good introduction to computing for me.

The "interesting game" your son plays could well be one that integrates programming to advance in it, there are a lot nowadays.

[0]: https://www.feed-the-beast.com/ [1]: http://computercraft.info/wiki/Main_Page

Re:How kids in a low-income country use laptops: lessons fro... by jerf on Thursday April 05, 2018 @01:09PM (#16766756)
My oldest is mildly autistic and current best practices suggest limiting "screen usage", so we have. We've followed up with the youngest as well, both to keep the inevitable "fairness" arguments down, and because I've really come to believe it's a good idea. There's been a lot of articles lately about how some of the people most likely to limit "screen time" are people in tech, and I fit that trend.

That said, I scare-quote "screen time" because I believe it promotes weak thinking about the problem. The problem, in my somewhat considered opinion, is not simply the screen. My concerns have been more about effort expended and the real vs. perceived (by the brain) results that are received. Video games, movies, and a lot of apps (even putatively educational ones!) have the problem that you exert little to no effort and you get these superficially amazing results. You click a few buttons and holy cow, you're playing Beethoven's Fifth Symphony! My objection to this is that it trains your brain at a very deep level, very early, to the idea that such results come from very little expended effort of any kind, not cognitive, not physical, not any effort. This is basically a lie. That is not how the world works. In the real world, you need to work. (Put aside the details of how much for a moment; there is no forseeable future in which life is as easy as these "screens" present.)

I think "addiction" is not the core problem, but a secondary effect of the above; you get addicted to the "screen time" because your brain very rationally decides that the best way to get rewarded in a given period of time is to put its effort into the "screen". And it's really hard to override the lower parts of your brain when they make what is, from their perspective, such a rational decision. I'm not even convinced it's a good idea in general.

(As the conscious "part" of me, I find there's much more mileage in learning how my foundational brain systems are making their decisions, and arranging it so that they receive the input that will produce the output I want, rather than berating them for producing the wrong output.)

My oldest is now 9. At that age, yes, I did get a lot of "screen time", but it wasn't on the internet, and playing games on the Commodore 64 has its own lessons to teach about patience, and even if it did reward my brain, it couldn't keep up with modern video games and often lost out even to just reading a book, so it's not like it is today. So I have, without shame, limited my children's "screen time" even beyond what limits I had as a kid, because of those differences. Also they have zero access to the internet, again without shame. (There's plenty of adults who frankly can't handle the modern Internet, to be honest.)

Now, I'm still in the early days of this, but recently my oldest has been getting into Scratch. I picked up the Humble Bundle Makerspace bundle [1] (4 more days!) and he's been working his way through the "Super Scratch Programming Adventure" at a decent pace, without much prodding from me. And now the payload of what I'm setting up here: When he's doing that, as long as he's making reasonable effort and progress (as opposed to just screwing around endlessly in the paint editor; there is a difference between exploring and trying to make pictures and trying out the tools, and just aimlessly scribbling, etc.), I don't count it as "screen time", because I don't think it has the characteristics of "screen time" that harm children.

Our kids are 9 and 7 right now, and the message I've been giving them lately is "I want you to have something you're doing, unrelated to school. It can be soccer. It can be piano. It can be learning about programming or learning to draw or anything else. You don't have to stick with it forever, in fact I want you to try lots of things out over time, but you have to be doing something not related to school." Early results are promising. This week they're learning about the pets they are about to get from library books.

Of course other parents with other kids may have other problems; perhaps your kid needs to be encourage to stick with things a little longer, perhaps you need to remind your kid after 3 years of the same thing that they should probably spread their wings a bit. But that's my experiences, I don't have any others. :)

I do plan on loosening up over time. I do expect that there will be troubles in the future with too much access. I'm hoping the foundation I'm laying now will help me point out to them the consequences of what is happening. Ask me again in 10 years. I'm sure it won't go swimmingly, but who knows how it will actually go.

[1]: https://www.humblebundle.com/books/makerspace-books?hmb_sour...

Re:How kids in a low-income country use laptops: lessons fro... by ratsimihah on Thursday April 05, 2018 @07:54PM (#16769853)
Restriction is an excellent idea I admire.

I recently saw bright and social kids from relatives get into YouTube addictions, and I feel like it’s numbing their brains.

If it’s already hard for adults to show self-control when it comes to device addiction, it would be foolish to expect that kind of maturity from kids.

Re:How kids in a low-income country use laptops: lessons fro... by konschubert on Thursday April 05, 2018 @02:09PM (#16767380)
> Making sure they have time where they're bored and don't have access to high quality and structured entertainment choices at all times currently seems like a good idea to me.

Absolutely. And this doesn't just apply to kids :)

Re:How kids in a low-income country use laptops: lessons fro... by jcoffland on Thursday April 05, 2018 @01:46PM (#16767127)
Start your kids on Scratch and take them to a local coder dojo. I volunteer at one at our library. It's a lot of fun.

http://scratch.mit.edu/

Re:How kids in a low-income country use laptops: lessons fro... by hsivonen on Thursday April 05, 2018 @03:54PM (#16768324)
Even before something like Scratch, Scottie Go is a great way to teach kinds algorithmic thinking. The game on a mobile device gives an assignment and the player programs it by arranging cardboard instructions and then takes a photo of the cardboard pieces. The software recognizes the instructions using OpenCV and interprets the program.

https://scottiego.com/en/

Unfortunately, the home edition is hard to buy outside Poland and the U.K. but the version meant for schools ships more widely from Germany (in English).

Re:How kids in a low-income country use laptops: lessons fro... by jcoffland on Friday April 06, 2018 @04:27AM (#16771799)
A paid app is impractical.