Ok, so my 12 year old daughter wants to out do Bill Gates, Steve Jobs, and Lord knows who else...
Ok, a little history first...I'm 31. I've been around computers my whole life, (thanks to my grandpa who insisted) starting out with the commadore Vic 20, then 40, then 64. I taught myself to program in BASIC when I was 7. I've since forgotten.
I've always made sure my daughter has had access to technology. She started pointing and clicking at 2(ish). She's now 12, and her passion dwarfs my knowledge.
That is to say, I know a great deal more than the average bear about computers, but besides basic repairs (hardware replacement, virus/adware/malware fixes and software/glitches) I've not gone any further than my 7 year old BASIC lessons as far as programming goes...not for lack of wanting, but simply, life has gotten in the way (do the math on our ages real quick, you'll see why, then factor in, I was a single mom for a good portion of that time)
So...on to the title...Yes, you read it right. My 12 year old daughter wants to out do Bill Gates, Steve Jobs, and Lord knows who else.
She wants to build the next big operating system. She doesn't want it to be Windows, or Apple, or Linux. She wants it to be the best of all of them, without the worst. She wants it to be (I think) open source, intuitive, and what ever else her precious brain comes up with. When I mentioned most super computers only really being able to use Linux she was pretty agitated, and wanted to change that also.
I want to foster this passion in her in any way possible. Suggestions? Thoughts? Things you'd like to see in an operating system?
She currently does not have her own computer. We have some prefab deals, and my 12 year old rig with xp that was retired a few months ago for the prefab deals. Note, the prefab deals are only because I couldn't afford a complete overhaul at the moment, and the prefabs were better than the 12 year old rig, which was a monster in it's time. I'm most likely going to need to save up for it. I'm thinking about basing a system around the Asus fx9590. The one that if cooled properly will clock at 5 gigs, not overclocked. The ultimate goal being the fastest clocked without over clocking available to consumers, and hopefully the largest number of cores as well.
I also plan on having her do things on the old rig, because part of her annoyance was that people constantly HAVE TO upgrade or things won't run, or won't run properly. She was very agitated that xp is no longer supported, and that most os's suck for various reasons. Security, intuitiveness, stability, etc.
That being said, for what she will need to do and learn, what are suggestions on what I need to build her that will allow her to test under very heavy conditions, and where should I have her starting her education?
This is obviously not something every 12 year old has aspirations to do, so classes are out. I will teach her, and she will teach herself, so I'm looking for advice from vets, guides, books, etc.
Help!
An excited, proud, ohmygodmydaughterwantstodosomethinghugeandflipthetechworldonitsheadsmackitsassandcallithowthingsshouldbeandnowarebecauseofher!, mom
Posted Apr 25, 2015, 6:42 AM UTC
Hum.
TL;DR: Do not buy a fancy computer. Get her into some classes or something.
Please don't waste your $$$ on high CPU clock speeds. If you want to know why, please ask me.
Extra RAM is nice if you're working on bigger open source projects.
Tutors in this field tend to be really shady - I would be really careful with tutors - try to find a camp, school, or program near-ish to you and enroll her in it - the most critical things are to get her able to work on open source projects(she'll learn a ton), and to get her able to write a little code. The more time she can spend writing code, the better.
There's a website called code school - it kinda sucks, but the free lessons they have are a decent way to get working on something immediately.
After she has been working on programming for a year or so, do the following . . .
The following will be hard for you:
After she has done a little ittle bit of work on open source and has been programming for a year with you, you should start working with her to find her own medium-sized project (most projects until now should be SMALLER THAN 1000 LINES) a medium sized project may take up to six months and accomplish something significant that she has been wanting to understand or work on.
Following the completion of the medium sized project and the in-parallel open source work, you'll want to work with her to learn Data Structures and Algorithms. I recommend Steven Skiena's algorithm design manual to start with. When her mathematical skills mature she can move on to CLRS (just google CLRS).
After she has worked through and consumed all the material in skiena's book and finished her medium sized project, she should have been programming for at least two, maybe three years. She will be 15 or so, maybe 16. I do not have a good plan for you regarding high school. Find a high school that is strong in CS - find a local community college and use the money you saved on the computer to enroll her in a few classes for after school. Try to take the classes with her - you will have an extremely hard time keeping up with her ability now, and you will have to take a more managerial role in her education.
DEFINITELY help her to apply for internships at major tech companies during the summer!! put her open source project experience and her projects on the resume - FOCUS on the outcomes she achieved! like, "reduced scheduling time of mesos job scheduler by 5% during periods of high load" - I'm talking companies like monetate, google, quora, stackexchange, facebook, whatever - keep trying for these internships and do not get discouraged! Eventually, she should be able to get an internship (still 15-16 years old) do this every summer - put the internship experience on her university application and talk about it with university recruiters (hi I'm jenny I'm 17 and I worked at google last summer can I go to your school please? yes.) until she is a junior at university - then try to get a spring&summer internship - the longer term internship means she can request larger projects or more project ownership -
finally she'll graduate, and she can move back in with you - you and her can live off of your job and her savings from the internships until she finishes writing her new operating system.
I encourage you to try and understand the massiveness of the undertaking she is suggesting, and asking yourself whether you are prepared to patiently and encouragingly wait ten years or more for her to realize even the smallest, most basic part of her dream.
If you can do this, then you must do it, and fear nothing except what may slow her down.
This sounds like a good plan. She is impatient and will probably want to take on the world all at once, but this gives me someplace to start at least. I appreciate the guidance.
All this talk about "taking on the world" and what not is a bit much. Take the tech advice you can, but realize she should literally be having this conversation, not you. As a mom the best thing you can do for her is to teach her patience and persistence.
Yeah, I was thinking the same thing. The whole thing has a little bit of a "Precious Child"/ helicopter-parent vibe.
I doubt that Bill Gates' mom set up a bunch of classes for him and found a way for him to learn computers. If she's as into the idea as her mom says, she would already be spending 8 hours a day on any free computer she could find and reading every book available on programming.
Well, considering what I'm concerned about her getting into on the internet, and reddit specifically, I figured I'd start out this conversation here, she can read comments, comment back on my name as necessary and what not. She keeps coming to me asking me to teach her to do things, and I don't know anything about programming anymore. I never learned anything besides BASIC, and I forgot all that now. She literally comes to me every day asking me to teach her. I'm going this route, because I'm concerned that if I don't give her any guidance, and just leave her to her devices, she has friends who are unhealthily interested in illegitimate and illegal tech activities, and if they are the only ones teaching her things, where do you think her skills will develop? I'm trying to give her, upon her insistent request a form of guidance, rather than throw her to the wolves so I don't "appear" to be a "Precious Child/Helicopter Parent" to someone I don't even know on the internet.
Yah, it'll be a shock to her when she starts programming. Having so much 'passion' for something you've never done is a bit weird. It'd wait to see if the kid even liked it, let alone making her think she'll be the best ever to do it.
I'm not making her think anything. She's telling me what she's going to do. I've taught her her entire life that there will always be someone better and smarter than her in the world at something, but that doesn't mean she should ever stop trying or learning, or that she's not good. If this is what she wants to do, I'm going to do my damnedest to make sure she isn't hindered in any way.
Where are you located? Have a look at http://hackerspaces.org and find a non-profit one near you.
We sure would be delighted at the sight of a young girl wanting to learn. There's a lot of effort going on in the hacker community to make tech accessible to girls, and one that takes it as natural would immensly serve not just as a new member/contributor to the community, but for other women as a role model.
I've said it below already, but really really really consider finding a hackerspace. If you're in doubt about the people there, go with her, talk to them. Despite the "neckbeard" stigma (which really doesn't fit the hackerspace community at all) we're a super accepting bunch, eager to share with likeminded people!
meshugga, I'll def look into this. My biggest issue is, I don't really have any way to currently guide her myself. I've gotten some great resources to look into before setting her loose on them though.
Do companies really take interns at the age of 15?
The best way is to find out from them. The number if times I've asked for something unusual from work/university and they've said 'we've never done that, but Ok' ... Patience and persistence.
Hell yea. The vast majority of software engineering firms are meritocratic; they care way less about how long you've been doing something or what companies you've worked for, and way more about whether you're capable of producing value.
[deleted]