I am not a developer or cs engineer, but my thought is for him to change majors if tinkering doesn't come naturally.
On a more personal note, I don't believe this is any of your business. Your son is a grown adult. Perhaps he's getting a degree on your dime, but he needs to make his own choices in his education, and you aren't living his experience. You're very focused on "tinkering" as a tell for whether he's in the right degree, but only he can know if he's happy in his major.
My wife had a father who was very involved in her choice of majors, and it left her with anxiety and a sense that her college years were wasted. She was left feeling like getting his approval was more important than reasoning through her own decisions. The best thing you can probably do for him long term is let him make decisions, even if you think they're wrong.
I eventually became a software developer, and it took years of catching up and self education alongside working shitty jobs.
OP is talking about a full grown adult. Not a child.
Maybe we have to reprioritize your focus.
Sigh, you know, it's the same old story like back in kindergarten.
OTOH, I've seen many White students raised by liberal parents with too much student debt (and depressed).
So, unless there is data to prove that "letting 18 years old to make their own life changing decisions" on their own, we need to stop this overly progressive method.
I think it's a matter of degree. Many in the west could have more involvement in their children's education and see better outcomes. Many outside the west could give their children a little more freedom and see better outcomes. Neither is perfect.
There is tremendous pressure on students from both parents and society. This is because of the competition. The population is so huge, the infrastructure bad and opportunities far less. So it becomes a rat's race.
Lol, ask most South Asian Americans or Asian Americans how they feel about their parents.
I do think there’s a risk, if he doesnt also pursue programming as a hobby, of being out-competed by those who do. But not to point of it not being a viable career, just maybe not being like top-of-the-heap. Which is fine, it’s a big industry, not everyone needs to be the best.
The other thing I’ll note is that programming is definitely a career that requires ongoing professional development. Tech changes, you gotta keep up with it to stay relevant to some degree. A lot of that ends up being on-the-job, but like other jobs some it inevitably isn’t.
With those caveats addressed: if he’s doing well and continues to do well, I think it’s entirely possible to have a career programming without also treating it as a hobby.
Coding seems to be a minority career where there is expected to have an extracurricular interest in it.
I wouldn't expect someone who's 35 with 10 years of professional experience to tinker outside of work, but I'd raise an eyebrow at someone looking for a programming job straight out of college who doesn't have a single side project to share, no matter how small or insignificant.
To me that says that they don't enjoy programming, it would be like hiring a mechanic who's never worked on their own car. Programming can be hard and stressful so you need to enjoy it to persevere through problems that leave you scratching your head, otherwise you'll quickly burn out and be out looking for another job.
I'm not advocating for people to sit in a dark room 12 hours a day and grind through Leetcode problems, or to spend all of their free time programming to prove themselves and "get ahead of the competition". However I've never met a programmer who's never showed interest in tinkering at any stage of their life.
And even with "passion projects", self-promotion is most of the "objective success" if that's what one cares about
Some of my biggest regrets are being heads down in the lab for most of undergrad, being heads down in hackathons programming instead of walking around bullshitting with the other attendees etc. - Really just mechanisms to avoid the "hard work" of socializing as an introvert while feeling superior about it
Politics is an inescapable aspect of success in 'meatspace'. Socializing and being able to build a network easily is absolutely valuable and it's not something that comes easily in this industry (surprisingly enough). Combining that with passable technical skills will carry his son much farther than if he was a shut-in who could spit out algos in Rust on command.
If he was studying accounting would you worry if he wasn't having fun doing people's taxes at night? If he was studying chemistry would you worry if he didn't have a mad scientists lab going on?
Let your son live his own life.
Lol what?
Literally most people I know not from the us are either living with or strongly financially supported by their families. Often are buying their first home before their 30s
Americans were sold out and now they think 7 years before the brain fully developed a person should have picked themselves up by their bootstraps…
If a child is financially dependent on their parents, they are not capable of living independently. A parent who isn't providing support, has no right to dictate or interfere.
Personally, independence defines adulthood.
A lot of mental coding goes on inside the mind first, and some people have an inner coding voice / logical internal monologue.
In such a case he's definitely coding all the time. So social life might even be therapeutic in quieting the inner monologue, so to speak. And that's just one example...
Good luck and always a good idea to let him know you are available to listen whenever.
I don't think this is a bad thing at all. To each their own.
Is there anything wrong if he wants to stick with it for now? As long as he knows that he can always switch majors if he wants to, there is nothing wrong with preferring to socialise over tinkering outside class. You can't force it, until it clicks.
Coding as a hobby doesn't guarantee you'll be a quality engineer and not coding as a hobby doesn't preclude it.
The absolute best in any domain will normally involve living and breathing your profession. The difference now is that the hyper majority of software projects do not require anywhere near absolute best in technical ability.
Honestly, ability to socialize gets you further than technical ability nine times out of ten. And in the one in ten where you need the technical chops then being able to socialize means you can find and organize the talent you require.
And to all the people stating "they're and adult not a child". Dude, I wish my parents would have had the ability to critically think about my school and major other than that blanket statement that "college good". They cared but didn't know enough to think about the specifics. Could have saved me a lot of cash and/or post education study.
That and they're always your child no matter how old they are. You'll always be invested. You'll always have unsolicited advice. It's totally a parents business. You can express concerns without breathing down their necks or being a control freak.
Perhaps your son is in the latter category?
Addendum:
Speaking from experience, the single biggest gift parents can make to 20-somethings is to give them time to explore. I’m sure it’s unnerving because it often looks like aimlessness, but it’s important. Exploration takes time — lots of it — and finding a meaningful career path requires exploration (and some risk). Please don’t smother that. I promise your son will be forever grateful.
PPS: I suspect I have an educational and professional history so full of meandering and exploration that the mere thought would give you an ulcer. It worked out beautifully for me, both financially and in terms of personal fulfillment. If you think it might be helpful, I am happy to chat about it, and share my perspective.
Wanna connect?
So you're saying you're less qualified than your son when it comes to determining whether someone might do well in CS?
For a fresh out of college grad new hire/interview they're going to care much more about grades and school prestige than hobbies or side projects. At least for the major FAANG companies. Something like "deans list BS computer science from Berkeley" or "masters in CS with specialization in AI/machine learning from Stanford" on the resume is going to matter much more for easily getting hired in today's market than "I.. uhh.. like to tinker in my spare time".
In my experience it is exactly opposite of that. Especially for FAANG companies.
You don't have to eat sleep and breathe programming to pay the bills with it.
Have you considered talking to your son about his goals and dreams?
as others have said, nobody expects accountants to do maths in their free time, or biologists do dissect things, or teachers to teach, etc.
and as a personal anecdote: i’m not great at maths, not the smartest at coding, never coded much for personal fun. i did a little bit of coding, and mostly played with OSes, linux, stuff like that. and i worked in several countries around the world, and now am a staff engr at a FAANG, so … it doesn’t matter.
Few degrees are vocational but my feeling from your post is that you think it's a waste to study something don't plan on doing for the rest of your life. Kids don't see it that way. They see something they have a faint interest in, or something they're good at, not a 40 year career at the end of it.
It might be worth a discussion with your son, but it won't go well if you make it about what you want or what you think they should want. Manage your own expectations. Try and be conscious that parenting transference ("my parents always want me to do the best I could") or overcompensation ("my parents couldn't afford me these opportunities") are both as harmful as each other. Kids are generally good. Don't be afraid to trust their judgement.
Plenty of new CS grads go straight into Product/Program Management, and there are plenty of other roles such as consulting and sales that really value being able to combine people skills with technical skills. Having been in that world, the right combo of people skills and technical knowledge is both hard to find and remunerative.
It drove me insane. Zomg your wasted potential!
Honestly coding really sucks. Like I don’t know why anyone celebrates it. You barely get to do it in big companies, where you are sort of stitching a bunch of crap together.
On the flip side, the engineers I know who became super prolific were all ultra creative. Many have multiple creative hobbies while also being top open source contributors.
The most prolific open source developers I know have tons of random interests. The weirder ones, who like doing things like curing weird meat in their fridge and brewing weird alcohol drinks in their bath tubs turned out to be the best.
So I don’t know.
It’s actually the case where if you told me he sort of does code and has extremely exotic and strange hobbies, then you might have a super star.
Programming to me didn’t make sense until I was immersed in a context where it was useful.
I didn’t feel the urge to program until I was working on things where protramming helped me go faster.
No amount of yelling would have made me into coding in college because there was no use for it.
If he goes to work and encounters situations where code helps him go faster he may get into it.
In college - coding just often may not make sense or feel a relevant tool.
So idk.
If he is getting broad exposure to a lot of technology then that is great. Couldn’t tell you.
I have a million things I want to do and programming can help me do them faster or better. Or it can help me explore different aspects of ideas in novel ways. I can generate art, automate a hydroponic garden, point my telescope at planets and stars automatically, program a fermenting chamber, make games, visualize data in interesting ways, and generally enrich my life.
The fact that I can do it well professionally is mostly a byproduct of using it to explore my hobbies and interests. The worst thing that can happen to me is work which doesn’t further personal interests in some way or another. Fortunately I can be creative about finding ways in which solving arbitrary problems can be interesting in other contexts where I might want to apply what I learn some day, and I can stave off potential burn out here and there.
But yes, I do a lot of stuff. Too many projects at any given time. The fact that I can program is an afterthought, and although I like it, it’s a means to an end and not the other way around.
Then I did a two week project to build a little game. That little game taught me more in two weeks than the whole semester.
I took the tests and passed them no problem after doing that one little self directed game.
If you find something that lights your fire, you learn 10,000x.
Especially if you have ADHD or Aspergers or whatever.
If I can trigger my interests I will put perform everyone by years in a few weeks.
But I can’t always reliably find ways to trigger my interests.
There’s a ton of programmers that don’t tinker on their own time. Especially in university. Socializing and being a healthy, well-rounded human is probably a more valuable use of his time.
As for the answer, I would agree with the others that this is certainly not a "red flag", you can be a successful programmer without being a hobbyist programmer, and you can build a non-programming career on a CS degree. That said, I do find it unusual for a CS undergrad to have no interest in programming outside of coursework. It can be hard to distinguish between "no interest" and "interested in other things" though. It's worth understanding more, but if he's doing well in his classes he very likely knows what he's doing.
If he might end up working in computing, I think it's even more valuable to explore other interests and activities in college and beyond; he'll spend more than enough time sitting at a keyboard for work.
The comments that we don't criticize other professions for not devoting enough leisure time to their work discipline are also spot on.
Edit: chops, not jobs
Smart enough to graduate but either didn’t want to code all day or got pulled into other aspects of the business
Is he generally pretty active about driving decisions in his life or does he just roll with things in a passive manner?
I wouldn't worry about that. Not everyone that studies CS loves programming, a lot do it because it's a way to have a good career, and that's fine.
> He had a few classes in js and C++ and did very well, but its not something he continues to do on his own.
You have to give a bit more details about how much he writes code and his general situation (which year, classes, etc.).
One thing that is a guarantee, is that people that do their own projects on top of school and get internships will be light-years ahead of someone that does neither, in terms of skills.
From my personal experience, I did a class with people in their last semesters that were literally unable to write any code beyond the basic exercices they had seen in class. They had basically never written and ran an actual project, and it was obvious that they wouldn't have a good time getting a job.
It tore me up to go to friends homes and see a Mac or Commodore 64 sitting on a desk collecting dust. When I got my first used computer in the early 90s, (a Commodore 64) I dove into learning how to program. Back then I didn't know anyone who knew how code. I started buying books in the 90s and still have most of them.
So I think you've got a great point about "if tinkering doesn't come naturally".
Coding something is often times designing the logic to do something you can't copy and past a solution for. It's that kind of challenge that makes it interesting (and frustrating), but if that doesn't intrigue and inspire you than it might not be a good career choice.
Personally what I like is solving business problems and delivering excellent solutions to happy customers. Coding is a means to an end for me. I originally learned to code as a teenager in order to build websites in an attempt to make money from them (with some success here and there). It wasn't because coding itself was particularly intriguing or fun, but it was a pathway to building a product that could generate income. I didn't hate it either, I found/find it somewhat fun, but there are many more things I would prefer to spend time on if my goal is pure recreation. The idea that I could sit at home with a keyboard and generate wealth for myself was what encouraged me to pursue this career.
Right now, if I didn't have customers or start ups to launch I would spend precisely zero time "tinkering" about with code for personal fun, the fun part for me is designing, delivering and selling the solution. I'm not obsessed with coding for the sake of the technology like a lot of people are, yet I love my "job" and I'm highly motivated and effective at what I do.
In short the domain has become just another office job for most of these people rather than something they love.
With that being said, maybe your son is not interested in becoming the next Bill Gates. It is ok to not be the best. Average developers make a fair living. And even if he has high hopes but no chance of succeeding - maybe let him learn that lesson on his own? Learning to make decisions about one’s own future is much more valuable than anything they teach in college. Let him give up or succeed on his own.
I'm not a parent or an expert on life, but I sure do see a lot of programmers who love tinkering, but hate their job, hate tech in general, and spew nonsense micro services, constant rewrite, and reinvent js framework wheels endlessly, trying their best to treat work like a throwaway weekend project, as if playing with ideas mattered more to them than being a part of a quality product.
If I had to guess, just based on my increasingly biased view of the tech scene at the moment, he'll either hate programming and get bored, or be exactly the kind of dev I'd absolutely love to work with.
I'm a firm believer that it's not a requirement for people to enjoy the thing they do for work so much that they want to do it in their spare time. Do people who frame houses build frames for fun off the clock? Do garbagemen go around the neighborhood emptying cans just for the hell of it? No, and no one thinks that's weird.
If he's doing well in his classes, he's probably just fine. I didn't start programming on the side until well after I started my actual career. To me in college, it would have been like doing math in my spare time - programming was homework, not something I did for fun.
One other comment I'll make is that when I was in school I did not yet have the skills I'd have needed to build satisfying side projects. I was learning the basics of syntax and logic, wrapping my head around the concepts behind coding. It wasn't until I was further along in my career that I had enough experience to actually build anything I wanted to build. I found my mid-level programming classes pretty difficult too, and definitely wasn't interested in further "punishment" in my free time!
tl;dr - I don't think you have anything to worry about. If your son is doing well in his classes, that's good. Let him enjoy his hobbies and social life.
I've never "tinkered" or written code outside school or work. Ever. Not before college, nor after.
It's also incredibly weird you're complaining your son is socializing. Socializing is normal and healthy, spending all your free time working is not.
To something else that he won't tinker with either, and in which he doesn't have a track record of doing well like he does in CS?
If it aligns with his hobbies, then ask him to take humanities/liberal arts as major and CS as minor; or do a business degree.
Also change to what? Granted I went to a top school, but I remember people with engineering or CS degrees even getting finance jobs, etc... over other majors.
Not everyone has personally-inspiring projects/problems in the back of their head.
Is it that beneficial to screw around with not-very-useful toy project where - because you aren't invested - you aren't going to be doing the hard work of figuring out if you're doing it the best way anyway?
The more important thing is what does he like? I agree with the top comment though that on some level, he is an adult now and your ability to direct his life is more diminished now.
Coding is a truly painful experience at the beginning. It will exhaust every ounce of your passion. Give it time but also let him do whatever he wants?
I have periods of my life where I don't code at all in my free time but I still really enjoyed studying CS.
Coders are well served having smart people around them who have other skills and can still speak tech. He’ll probably do better than a run of the mill engineer.
the CS background can be very helpful for understanding computer-related tech.
Most professional programmers would rather spend time on hobbies than working, too.
Don't worry, he'll make MUCH more money writing powerpoint and requirements docs...