Neither of my kids have any interest in programming or computer science or engineering at all. I sometimes wonder if i could have done something different to spark their curiosity. Welding, working on cars, stupid arduino tricks, lasers, 3d printers, hacking, rockets, robot clubs, computers everywhere...I’ve tried a lot, but nothing really stuck.
One’s just got an undergrad in healthcare and the other likely headed for art. I’m stoked they found things they love and I’m sure we’ll still have lots to talk about over the years... just probably won’t be vi vs emacs lol
My Dad was in the RCMP. Growing up, I briefly considered following his footsteps but in the end, I just wasn’t the right kind of person. I was more into science, math and computers than sports and gravitated towards computers, programming and general mischief making. Along the way, I got heavy into security and privacy.
My Dad retired 17 years ago and since then, he’s gotten heavy into computers. He knows more about Mailchimp than anyone I know. And though I ended up with a marketing degree, he’s become my de facto email marketing consultant.
Now that he’s heavy into computers, I see all the neat ways he’s influenced me (and vice versa). Security, particularly opsec is a passion we both share. After many conversations, I’m starting to realize that he’s actually the one who got me into the field way back in the late 1980s and early 1990s.
Now when we talk about his career, it’s clear that he instilled the idea of hacking into me. He wasn’t into software systems, but he was into human systems and he was relentlessly resourceful when it came to solving their problems.
Looking back with 43 years of experience, I realize how much of an influence my Dad had over me. I don’t know that we’ll ever have a vi versus emacs debate, but holy hell, do I ever feel lucky that I got to know my Dad on this level.
I hope to live long enough to get to know my daughter on that level. And friend, I wish the same for you!!!
This is a sweet, sweet message man, and makes me feel good. Ultimately I think your last couple sentences really is the root of what I'm feeling. Just want them to look back on our time together in good light.
Thanks for your kind words, friend. I don't know you as a person, but I know how you write. It takes one hell of a beautiful Dad to make me come out with a story about my own beautiful Dad. And it takes a wonderful, thoughtful man to inspire me to be that same kind of beautiful dad to my own little girl.
I capitalize the word 'Dad' when people deserve it. You get the capital D because you most certainly do. If my gut and instinct is anything to go by, you've already succeeded and they most certainly look back on your time together in a good light.
Heck, you raised a child with enough love to get into healthcare. I'm not nearly strong enough to get into a system like that. And you raised a child with enough self confidence to get into art.
Frankly, you have joined the ranks of my Dad heroes. If I'm lucky enough to raise my daughter to be the person that your children are, I will be very proud of myself.
Now give yourself a massive pat on the back because you deserve it.
In my haste to reply, I didn't even realize that you wrote and submitted the original article. Thank YOU for your beautiful message that inspired all of this thought, reflection and tears.
Your nephews are lucky to have you in their lives. I'm lucky to have been able to read something so beautiful that inspired so much more beauty.
Take good care, stay healthy and thanks for being genuinely good. People like you have enriched my life throughout the years and that's a debt I will never be able to repay.
You know friend, give yourself a huge pat on the back. It takes a really beautiful Dad to think the way that you do and to be so focused on helping your boys find their own passions and strengths.
You deserve the capital 'D' for Dad. I don't capitalize that word lightly - I'm an obsessive fuck when it comes to language and grammar. But you truly deserve it.
Thank you for your kind words!! And most importantly, thank you for being the kind of beautiful Dad who inspires me to be just as beautiful a Dad as you are.
You can't use external motviation to create a passion in people. You can spark motivation by having it 'rub off' from your own passion, you can give people freedom of expression and choice, and you can use authority to keep them doing something when they are in a slump.
It can be a bit frustrating because love from small kids feels very unconditional, although they just learn that if they please you, they get food, shelter and (hopefully) positive emotions. And if you get very excited for them coding, it might motivate them to do more (since it feeds them to please you). This sounds more harmful than it is, just something to bear in mind.
Now there are various ways to appeal to intrinsic interests in kids to have them pick up something, but if it just doesn't ring with them, you can't force it.
The cool thing about computer science/engineering is, that your kids will most likely have lots of contact points in their life with CS fields. Health is getting more and more high-tech, and art is using arduinos, microcontrollers, ... for installations and various effects, depending on the direction the artist goes. So don't give up hope yet, you might be doing a project together before you know it :)
Totally agree with everything you've said and share the philosophy you've outlined 100%. We're just at the end of that childhood run and I just have a wee bit of sadness about it for some reason. Not for them, they are very confident in their lack of interest haha, but just that I feel less prepared to help them navigate their career paths. The human parts will be similar of course and I can help with that, but that's about the extent of it.
That said, the total surface area of the family's (hopefully positive) influence on the world will be a bit larger, so it will also yield good things I'm sure.
GP didn’t state the gender of kids, maybe they are daughters. Then given what research found about typical difference in interests by each gender, the end result here wouldn’t be surprising.
Every time I hear about someone changing careers into "tech" I feel like I'm running out of options. There is nothing wrong with my current career right now but what about the future? If everyone is running away from their old career to tech then what is the guy who started out in tech going to do once it's his turn to run?
Look at it as opportunity. As I said elsewhere, there are many industries and vocations that could truly benefit from the skills and practices honed in the technology world (this is obviously true in both directions as well). Pick a domain that you are interested in and start investigating. Look for the little sidebar discussions about what practitioners hate about their day jobs and go from there.
Lately I wonder if I would be better socialized at young age (I went to a kindergarten just for a one year before school), would I pick up something else. I find now in myself much more extroversion, some art sensibilities, but still with a problem solving drive. I think I possibly would struggle financially for longer, but eventually I would be at a happier place. Probably it's a classic the grass is greener on the other side situation.
Nowadays I don't wish this trade to my young child. Programming is a very good skill, but it's better tied with something entirely different to not be a blue collar worker in a golden cage. I want to study now something totally outside of technology to see if I can marry it with being a very proficient computer user.
>Nowadays I don't wish this trade to my young child. Programming is a very good skill, but it's better tied with something entirely different to not be a blue collar worker in a golden cage. I want to study now something totally outside of technology to see if I can marry it with being a very proficient computer user.
I feel like there is massively untapped potential in this. Pick any industry or vocation and examine it closely. Get a job for a few years...become a member of the community and understand what really would improve their lives and outcomes...then start applying that tech skill. You won't become the next Zuck or Bezos helping zoos use ML to help detect sick animals, for example, but you'll do just fine financially and have a very rewarding career as well.
IMO this is really the purpose of software engineering. It's a support for other jobs. I got my start in professional software engineering by making tools for my job in customer support. I've since talked to friends in food service and non-profit marketing about the challenges they have which could potentially be solved with code (if I was willing to give up my job, actually working alongside them would be preferable so I could experience it firsthand).
People say software's eating the world, but we haven't seen anything yet.
That's the luxury of first world countries - one can enjoy a comfortable life outside tech, being a school teacher or an artist. In most countries that would mean starvation.
Something I've been thinking about is what happens once the market for software developers becomes saturated. I think the answer is something along the lines of blending traditionally off-line skills (illustration, etc), domain knowledge, and software together. The ability to leverage the scale of the internet is still a form of tech-thinking, even if the software engineering part is not the main focus.
I think software alone has relatively fewer problems left to solve compared to solutions that require multi-domain thinking. So for the situation you've outlined, I think there is tremendous value in blending healthcare and software, or art and software. There are people who have found a niche in blending these ideas together [0], and I think the trend will continue.
So you shouldn't despair that your kids are not interested in "tech" now. It could be that once they are comfortable with their first domain choice, they will recognize the value in tech-enabled growth. You can then be there to help them realize that value by introducing system and algorithmic thinking, as well as tooling like vi or emacs.
How about LEGO? I think playful introductions might inspire the best. I doubt tuning kids to certain interest really works, but they might be inspired by what they like. Computer games could work too. Kids love them but parents often don't. Even those that completely disregarded their own parents on the exact same issue.
I feel your pain. I have similar challenges, my kids are not as old, so I still hold hope, but wonder where did my genes end up and what to do to fire them up.
The most successful kid/adult/human is the one who loves others and brings happiness to them, while being loved himself. It doesn't matter if he's a Nobel laureate or a Walmart cashier. Likewise, a person like this https://en.wikipedia.org/wiki/John_Robert_Schrieffer who killed someone while driving on a suspended license, is a zero in my book.
I agree with the core of your message. But the suspended license isn’t the problem here. He fell asleep. Do you think that if his license weren’t suspended that he wouldn’t have fallen asleep?
I'm not sure this is a fair take. In regards to his conviction, his colleagues described Schrieffer as a cautious person.
"This is not the Bob I worked with," said Brown University (search) professor Leon Cooper, who with Schrieffer and John Bardeen was awarded the Nobel in physics in 1972. "This is not the Bob that I knew."
Based on what I've read, it sounds like he had some kind of psychiatric or medical issue at an advanced age that changed his personality, perhaps Alzheimer's. People rarely change personality that much for non-medical reasons.
I don't have enough evidence to make a strong case, but if my hypothesis is valid, it seems unfair to sum up his entire life as a "zero".
It is the individual who is not interested in his fellow men who has the greatest difficulties in life and provides the greatest injury to others. It is from among such individuals that all human failures spring.
Dale Carnegie, How to Win Friends and Influence People
That all rings pretty true for me. I wasn't a fan of math as a kid, or anything I associated with school really. I got into programming through Game Maker, because video games were something I legitimately cared about and liked. It pretty much changed my life and gave me something to aspire to.
Now that I've grown up, my primary interests lie in virtually all aspects of computer science, and I no longer consider making games to be much more than a hobby and passion project to spend my free time on. I only wish I'd have had a mentor of some kind in the world of CS, so that I could have gotten into it earlier in my childhood. Major props to you for being an awesome uncle :)
Dude, hell yeah. Game Maker changed my life. I was so proud to be able to script my own stuff and be able to hang with the older kids in the irc channel. None of them believed an 11 year old was writing his own pure-GML games!
Now, decades later I’m finally pursuing that little dude’s dream, although games also lost their luster for me on the intervening years...
> although games also lost their luster for me on the intervening years...
Yeah. I still like writing small games from time to time, mainly just to serve as programming exercises or for fun if I'm bored. I had to accept at some point that I don't have the wide variety of skills needed to make my any of my dream games on my own (and also the time commitment to make a whole game by yourself can be insane). If I were to make a serious effort to do so, I'm pretty sure I would just be disappointed and feel as though I'd wasted my time because the final product wouldn't live up to my fantasy. To realistically do it, I'd need to either sacrifice a lot of creative control by collaborating with people, or wait until I've eventually acquired enough skill in the areas of art and music et cetera to pull it off by myself.
100% in the same boat, finally coming back to a bit of personal game dev. Just do a little every day (or a few times a week). Try sketching a couple things. Play D&D or any other more creative game to learn design. You're wayyyy more likely to make a good game if you set out to make 10, then waiting forever to make the one "good" one. Just keep trying and practicing.
Thanks, that's good advice. I do oftentimes get arrogant and overestimate my ability, when I get the game dev itch. As with anything, there are some things you can only learn from experience. I think I have a pretty good amount of experience in the "playing games" department, but I sometimes erroneously assume that it will directly translate into my ability to make a good game. I can't count the number of times I've spent like a week straight working on a game project I'm passionate about, only to be met with the sobering realization that I've set my sights too high. You're absolutely right that I'll be more likely to make a good game if I set out to make ten of them. I need to get better at planning projects I'll actually be able to finish.
> Eventually, he wanted to make the news site do dynamic things: How can you hide and show content? How can you make buttons work? Well, time to learn a little bit of javascript.
It's amazing how much you can do with only CSS nowadays. From simple interactive visual elements[1] to whole mini-games[2] with only HTML and CSS. I think kids would appreciate the notion that it's all there, possible - if they take the time and hack it up.
Kinda like Montessori except with code? When I see kids build things in Minecraft I wonder if those skills translate to programming later in life. I believe I was lucky in that when I was in grade school even websites by professionals were so janky and amateurish (in a charming way) I felt like there was no barrier and anybody with a text editor could figure it out.
Seymour Papert was a pioneer of constructionist theory and contributed to the Logo programming language as well as writing the book "Mindstorms: Children, Computers, and Powerful Ideas" which became the namesake of the LEGO robotics line which it inspired.
"Minds in Play: Computer Game Design As A Context for Children's Learning" is another book that uses game design (and Logo) as a platform for constructionist education.
Constructionism has been important to the development of computer interfaces as well since it inspired Alan Kay and his Dynabook concept (which inspired the iPad), which was designed with the intent of making a child-friendly computer.
I'm certain Minecraft is a gateway to developing technical thinking, especially if kids start wanting to mod the game (and maybe even make their own mods, at which point they have to reason about the underlying system).
I remember reading an old research paper (pre-minecraft) that tracked long-term effects of kid-friendly languages like logo and scratch-like languages vs textual-based programming like basic. It found that the former got more kids engaged but there was minimal lasting impact (none of those tracked became programmers or stated any interest in learning more as adults). The later got fewer kids interested initially but those who did get interested had a high chance of carrying those skills into programming careers. The results would probably be very different now, but that paper really colored my thinking when I first read it.
I'm a grown professional, and this is still the way I learn. I think this is just the way some brains work.
My office and hard drives are filled with half finished projects, and I've probably forgotten how half of them work. I'll reinforce my learning when I pick it back up.
I only recently realized the joy of allowing myself to switch books when I feel like it. I've always loved reading, but sometimes I can't sit through the whole thing without something else catching my eye.
My environment as a kid allowed me to work that way and I will be forever grateful for that. It is the reason I now love what I do for a living. If your child's brain works this way, I feel that allowing this type of learning is the best thing you can do for them.
Glad to see this post and read all of other comments. Currently as a senior designer, I always wanted to be an engineer when I was a kid, so deep into computers and electronics. But my environment didn't allowed me to become one, and I always resent this.
So this summer I started a "Summer Code Camp" with my nephew (14), bright kid, also into computers but also living hard times to learn stuff at school, fails at math, and not properly aligned with current education system to learn. So we started from the beginning, I only know HTML, CSS and basic Javascript. Using freecodecamp.org for our lessons, at first we started physical, I go to him couple of times each week for our sessions, to warm things up, once he get used to the website and basic structure of the code, we build a Discord channel for video meetings, sharing screens, and channels for resources, inspirations, docs and archive. He plays basketball at school team and really into the game, NBA fan, of course a gamer. So we are keeping our conversations around them, building stuff for these topics. Installed Visual Studio Code to his computer so he can use the code he learned offline and build stuff from there. His interest is growing each day, but of course as a kid he lacks of disipline. Which is not important at that point actually, because we're having fun. Hope to take this to the next level once we started Javascript and build more dynamic stuff.
As the schools are opening next week, I'll teach him how to deploy stuff and show off to his friends. Also thinking this can be good way to make things stick more deeply. Kids like to show off.
I was self directed as apparently are many software engineers so I've always assumed that the best way to teach would be to let kids direct themselves and they can ask questions if they get stuck.
Well, this video claims I'm wrong. Self directed study doesn't fit most students according to the research presented in the video.
I think that self-directed and self-motivated learning for _programmers_ is critical. All the best programmers I know are almost entirely self taught. I think the best way to go about it is first motivation (they have to really want to be able to make things) and then an introduction (here's a REPL, type 2+2, hello world, here's a function, here's Google, stackoverflow) and then provide help when needed.
Every time I've seen kids take this path, it's very black and white - either they quickly learn to learn on their own, and succeed, or they need guidance/lack motivation and fail.
For non-programming, I think learning on your own is far less critical.
I think maybe things are being conflated here. (1) being motivated (2) being self directed (3) being made to figure things out on your own
The video above basically says vast amounts of research show that showing people the answers with explanations is far more effective than saying "figure out on your own". Not only are people given the answers with explanations more able to solve the problems they are more able to apply them to future problems.
It also seems to say being directed (being given lessons) is usually better than leaving it up to the student what to study (of course there are exceptions for some students)
I know for me I didn't invent link lists, hash tables, sorting algorithms. One way or another I was taught the solutions. But I was often self motivated. Still, I was taught via assignment how to open a file, and read and write to it. As well as how to implement a bubble sort. Enjoying programming I enjoyed learning those topics but it might have been much longer for me to apply them if a teacher hadn't taught me both by choosing what to teach (so not self directed) and explaining it (so I didn't have to invent sorting). I had no idea I wanted to know about those topics until after being taught.
Sure, I'm not going to argue with the research's applicability to learning in general, but I think that programming is a clear exception. The majority of the best programmers in the world learned what they did in a mostly self-directed way. This is unique in comparison to the vast majority of other fields. For a while, there was a counterargument to be made that that was because of the relatively modern invention of programming, but this is clearly not the cause anymore - the first CS diploma was awarded in 1953, and now in 2020 you can get a CS bachelor's everywhere from liberal arts colleges to online. Go to those CS bachelor's students and you'll find that of the best, the majority were competent programmers before starting their degree.
> I was taught via assignment how to open a file, and read and write to it. As well as how to implement a bubble sort.
And I learned those, as millions of programmers, on my own - through documentation, and Google, and so on.
That said, I certainly don't think that the _only_ way to be good is to be self taught. I have met people who went to university with zero prior CS knowledge, and they ended up excellent programmers. But to be entirely honest, that is a small population. It's an uncomfortable topic for universities - nobody wants to sell an expensive degree to become a programmer, with the prerequisite that you're already a programmer - but my university did admit that the students that were already programmers before starting did significantly better in every way.
I used to volunteer to teach elementary and middle school kids computer engineering. I believed we had better engagement when we stuck to "real world" tools (such as breadboards instead of littleBits, Arduino instead of Scratch)
Games can be an especially good path to explore for teenagers. There are many disciplines that come together to create something. Even while focusing on one aspect of game development, you can build a desire to pursue another.
For me, it was 3D art that got me hooked. Followed by programming to make my art do something.
I'm not web IT but games started my IT career, though perhaps differently to how people would expect.
Dad got a computer when I was 8. I played games.
At uni, while studying other things, I played games and had no money.
In those days having a LAN party and getting people on the same game, same version, same mods, different OSs, different specc'ed machines etc was an effort!
Eventually ended up Application Packaging to earn a living. And I've moved on from there.
Games were may path into tech too. Though I don't think it's generally applicable. Having tried with nephews and other kids I think it takes a certain combination of desire to create, grit, and community feedback. And/or I'm just a bad teacher.
Problem with games is that you need to have actual artistic inclining to produce something decent.
It looks cool and is a good attraction, but people who could be actually good tech programmers will be offputted by reality of making games - which involves a lot of drawing, making sure it looks good and slowly iterating on boring gameplay till it is not boring.
Any ideas or platforms for game development for a nine years old kid without any real programming background?
My kid is finishing Blocky Games from Google. I think it was a good start, he isn't hooked into programming but at least he had some fun and learned some concepts, like loops. Now I have no idea on where should I guide him to now. I was thinking about Python Turtle, but he will probably get bored. Will take a look at Game Maker, but looks too much for a kid, good for teenagers perhaps.
Great article and the two most important things to really go forward with are to take notice of what they like and take interest in it. I’ve had to talk to my wife about it, because she doesn’t care for video games at all, but as I tell you she doesn’t have to like them just show interest and ask questions. Just like the author mentions it can chain together to spark other important interests (reading and other skills). I don’t enjoy a lot of these games my kids like, just don’t have much depth or are obvious ploys to get you to spend real money to play to win. But instead of complaining about it I play with them and introduce them to other games.
my mother let me pull apart VCR's and TV's because it reminded her father (deceased) my granddad, the rule was I could break anything I wanted but I had to repair it or pay to get it repaired. until the day the I.T guy found my stash of porn.
Hello @stopachka :) Thanks for sharing, that was a really nice to read the story. I was wondering if the state of "He began designing apps with paper and pencil." was also inspired by your influence?)
I have been teaching my daughter with Scratch 3. I taught a few classes at her school back in December. I posted my lessons online so the kids could go back and review them.
The kids really enjoy it, especially 4th and 5th grade.
I got a cutebot and interfaced it with a microbit. My daughter and I made an obstacle avoidance and track following program using the block based programming this past week. She had a blast. I think if you make it fun for the kids, they really get into it.
I don't practise programming because, so far, I've found more valuable and enjoyable things to spend my time on, and my computers do what I want of them for the most part. I know anything I would be interested in programming would involve a steep learning curve (many layers of existing software to wrap my head around), so it's on the back burner for now.
I’d just keep in mind that there are no guarantees that kids will share our passions, even with the best approach. Humans are complex systems - it is very hard (and you would need need a lot of data) to make any general statement about things like this.
11yr old has a successful Youtube channel about unreal mods. I'm a prog but I can't catch up with his skills cos he's working in a completely different medium to me (VR, Sound?). 15 year old is a silly sod buying 'gaming' hardware to play click games. His only hope is girls I'm afraid.
One’s just got an undergrad in healthcare and the other likely headed for art. I’m stoked they found things they love and I’m sure we’ll still have lots to talk about over the years... just probably won’t be vi vs emacs lol