But that got me thinking. Say they did it different. Realistically.
3 alienated schlubs. Fat. Bad skin. Brilliant and driven.
Would the show have worked with that? I mean, realistically?
Do people like that have camaraderie? And society? Is that realistic?
I mean of course I like to think they do. But maybe they don't. Maybe it would be like 3 Pak Protectors pinging each other across lightyears.
And maybe it would still work showwise.
The demographic would be like 10 people. I'd probably watch it.
Also, there's some good music. Was that Dead Kennedys?
I feel like if you are a programmer that game will resonate with you heavily, making it possibly addictive. I set myself a goal of building the rocket, and then stopping. I know people however who went off the deep end with mods etc hah!
The thing I remember most however was how it invaded my dreams. I found myself dreaming at least a few times of conveyor belts, pickers and trains. I think possibly this was some low level version of the aforementioned effect.
These days I still enjoy arranging and packing my own groceries when shopping, to the infinite exasperation of my partner. I also enjoy the same thing with the dishwasher...
It's just so mind-numbingly boring and frustrating in itself so turning it into a challenge helps me cope and even enjoy it.
Especially after intense bouts of focusing on particularly complex problems, I might experience thoughts and have dreams in strange logic / programming kind of modes, unlike normal linguistic thought patterns.
And non physically real things, like dreaming about wanting a drink in strange logic. Or if I'd been working on something very multithreaded, thinking in fragmented parallel modes.
Very hard to describe it with normal language. Can be almost disturbing when you wake and get back into normal thinking mode as it is difficult to relate to the previous mode.
My brother and I call this "dream algebra"
I don't know if my mindset is what lead me to programming or if this is a virtuous circle, but I value how I approach concepts, ideas and people interactions in life, thinking clearly and consciously about problems and situations, including people problem, and I'd not be surprised to learn these things could be linked. There is also some creativity through out-of-the-box thinking to come up with solutions to random problems.
This stuff can be trained through other (analytical) activities than programming too, of course.
I do a lot of programming in my spare time and I don't see clear drawbacks specific to programming.
Approach life positively, be open-minded, be patient, your opinion is not necessarily the right one, don't be over-confident, spend energy into understanding the perspective of other people, etc. All this should be applied to programming too as soon as you work with other people anyway.
Programming does not make you antisocial in itself, and can certainly actually help if you leverage and transpose the rights skills at the right time. If you are the kind of people who are very analytical, even in interactions with people, that's a strength that can make you a very lovable, trusty person if you don't make it creepy. It can help you provide balanced, reasonable, valuable insight to someone who is confiding in you for instance. People may trust you for avoiding saying pleasant but false things, which makes your pleasant feedback more trusty. You'll find pleasant but true stuff to say anyway, thanks to your problem-solving mindset.
I also spend a lot of time with various people (most of them not being programmers) and going outside, and that's also a very important aspect of who I am. Programming does not prevent this.
1) Programming is a sedentary job, if you don’t take care of yourself (some sport, weight lifting, something keeping you active) you will feel physical strains over time.
2) Burnout is a possibility, I’ve seen programmers that had burnout, not self diagnosed but actual burnout. It was not pretty. Ever since I try to watch out for my mental healthy. It is easy to be put under enough pressure to break or even put yourself under that pressure (imposter syndrome …)
3) General negativity and naysaying. Part of the job is finding problems, debugging and generally poking holes in ideas so you don’t waste a lot of time implementing stuff that is impossible to begin with. Don’t let this become a part of you, don’t even let this take over in your job. It will rob you of the joy of programming.
That is what I gather from articles I’ve read over time and from myself. I am not aware of any research, just anecdotal evidence.
I've noticed myself really shrinking into a negative attitude lately -- not sure how to prevent myself from becoming the stereotypical jaded senior engineer (I do certainly feel like I have quite a bit management-wise to be jaded about though, which is part of the problem).
By all means, don't bury your head in the sand. But some things aren't productive to talk about. Functionally, you get the same results whether or not you slight that other team / manager / process in a conversation.
Everything is always broken. But we get to choose if we only have conversations complaining about broken things.
How you talk changes how you think.
Ages ago, desperate to stop being angry, and completely out of any other ideas, I decided "Fine, I'll just fake being happy, positive."
Shockingly, after about 3 years, what started out as mostly sarcastic, actually mostly worked. From my reading since, I stumbled onto techniques known to academics, practitioners.
To get a sense of the mechanics, imagine having the habit of swearing all the time, and wanting to stop. Habits can be replaced, not unlearned. So I literally scripted responses, practiced saying them, tried to use the new script in place of my old script, and caught myself when I goofed. Both in my head (internal dialog) and interacting with others.
It got easier over time.
Backsliding is super easy. Even now, decades later. You can't dwell on that. Just acknowledge it and get back to the program. (Get back on the horse.)
It helps to have "positive" people in your life that you don't want to disappoint. For instance, I'm mostly able to avoid trolling here on HN because I really value u/dang's approval and efforts and it'd kinda hurts me emotionally to disappoint him. Find people IRL to serve in that role.
And avoid other people displaying the habits you're trying to not do yourself.
Forgive yourself. Choose to become the best version of yourself. Be kind to yourself.
Good luck.
It'd be great if we could put together a list/gist.
It was a great deal of effort to monitor myself, flag the negative stuff, dig down to determine my actual root goal, and then figure out some kind of alternate positive framing.
Complimentary to this was learning that all negatives can be stated as a positive. (Something I got from an in-house corporate communications seminar, if you can believe that.)
My go to example from parenting is to say "Please walk" instead of "Don't run!". It was super effective!
(Transformed my parenting. Used my son as my guinea pig. I hadn't yet learned about positive reinforcement, which is really too bad.)
So. I'll start journaling expressions, as I remember them.
Thanks.
At a minimum, carpal tunnel can be considered neurological.
Basically a huge issue is that a normal keyboard and mouse force you to completely pronate your arms. That puts stress on your joints and isn’t healthy to do for an extended time (the bones in your arm are not a rigid system and actually move independently as you rotate them). The keyboard and mouse I recommend reduce significantly the amount of pronation required.
[0]: https://www.amazon.com/Microsoft-Ergonomic-Keyboard-Business...
[1]: https://www.amazon.com/Logitech-Vertical-Wireless-Mouse-Rech...
Most people naively assume there are not any.
I told them poor health due to a sedentary lifestyle, depression, and social isolation.
Some people get their daily dose of excercise, social interaction and dopamine hits from their work. In our field, we don't, so we need to find complementary activities for that.
I am guilty of this, and I've never thought about it as a problem, just as how my mind is wired. That comment was a bit of an epiphany for me so thanks!
I take a leave of absence when the force is strong.
Not really though.
Have you ever enjoyed solving a puzzle or solving a problem? We do that daily, even if we didn't decide which puzzles to solve.
Do you find satisfaction in fixing things or making them better?
How about designing or building things from scratch? Do you find that rewarding?
Flexible schedule? Remote work? Higher pay than XXX?
I think the point is that there are downsides people often overlook, not that there aren't any upsides.
The Idea Factory: Bell Labs and the Great Age of American Innovation
To broaden your horizons, consider diversifying your interests. Don't use ALL your time programming. Devote some of the free time you might be using to program for others things that broaden the mind. Try good literature (classics), good philosophy (approachable in the way its written unless you want to become a scholar of this stuff), and leisure. Literature helps you break out of the prejudices of your own culture. Philosophy lets you develop a clearer grasp of the big picture and ultimate reality. Leisure (NOT recreation) entails the passive absorption of the world around you and allows it to enter into your mind without you running your gears all the time. Contemplation is perhaps the purest form of leisure. It dissolves our alienation from reality. Turn those gears off and you have a better chance to break out of your mental rut.
Over time, you will put programming in its place.
If you can stop yourself from finding faults with everything, thinking about life in terms of complex systems is not a terrible idea.
When you spend a lot of time concentrating your attention (as we do when solving our engineering puzzles) you tend to stay concentrated. It becomes a lifestyle.
And when you spend a lot of time concentrating on ideas, you tend to stay concentrated on ideas. Ideas are your world.
But ideas are not the world. The world is infinitely larger.
And concentration is brother to blindness. Which is to say, concentrating on X leads to ignoring Y, Z and Q.
Pardon me if this is vague.
Wow, I feel that this describes me perfectly. I've never considered it before, but I tend to think in hypotheticals, generalized broad solutions or abstract concepts. I rarely spend brain power thinking of practical or tangible things. Maybe this is a consequence of (or reinforced by) programming since an early age.
It has certainly taken it's toll. I'm always the one that forgets social occasions, leaves a mess and have sub-par social skills. My mind is always "in the clouds" so to speak.
As a solution, everyone will find different things that work for them, but doing things that have no relation physically/mentally to work (screen time, high logic use, software related problems, sitting) and essentially are on the opposite end of the spectrum, like hiking, swimming, tennis have helped for me.
- How do I know that this is true?
- What would otherwise have to be true for this conclusion to follow?
- How can I bisect this process to test a hypothesis?
So much wishful thinking and jumping to conclusions could be avoided if programming (and debugging more specifically) is a training to viscerally understand the scientific method.There is probably also a virtuous cycle which reinforces how the scientist and engineer view their code, so it may be hard to untangle how much of that thought pattern was "innate" vs learned.
I think your question is interesting and I wonder if it may depend (in part) on one's motivations for writing software.
This makes sense when you consider why they're writing the code. Scientists use code as an electronic brain to answer scientific questions that are too complicated to answer mentally or with pen and paper. Engineers create services that don't necessarily answer scientific questions, but do useful work and need to be reliable.
There is a substantial intersection though: for example, Google provides services that answer interesting/scientific questions, like "what are people saying on the internet" and "the frequency of words in books over time", while also being thoroughly engineered for performance and reliability.
I went to an all boys school. I believe it was terrible for social development and made it hard to relate to women. When I see that same-sex education is on the rise I feel we're making a big mistake.
Problem solving is dominant in my way of thinking which can be good or bad depending on the context. It's helpful for giving advice but terrible from an empathetic and listening standpoint.
On the negative side, I have hard time reading emotional tone in text.
It does not aid in communication nor soft/social skills.
Check the "References" section on the above for a list of papers.
So, again, not a known neurological effect of programming, but an interesting correlation I've observed between many of the best programmers I've known and the condition of aphantasia.
[0] https://web.archive.org/web/20160416064610/http://psychclass...
There's also an effect on couples - my mother became radically more rational thanks to living with my father, an ME.
The other aspect: you don't put up with bullshit as readily especially of the propaganda/lying forms so common today.