Personally, I don't think that having healthy relationships as a developer is much different than having healthy relationships as anyone else. As with any other technical job, it can be hard to explain exactly what your job is, but a bit of humor and an ELI5-style explanation goes a long way.
One thing specific to programmers is the ability to whip up a little program to help people. Someone spends an hour every day retyping lower-case data in uppercase? Take ten seconds and write them a program. Someone complains how they always forget to shut down their computer and waste electricity? Write them a widget to shut it down at 1am each night.
When I take a bit of time to write programs for people I care about, people are usually very grateful and vastly overestimate the difficulty of whatever I just did. As always, relevant xkcd: https://xkcd.com/1425/
Author here, I agree to an extent. As I said in the "Spend Time With Them" section, a lot of developers also program as their hobby. In fact, you pretty much have to program in your free time in order to keep up with all the new paradigms and frameworks.
Jobs that have been around a lot longer, like construction or accounting, allow you to just leave your work when you go home.
In that way I think developers face a unique challenge. We all know how prevalent burn out is in the industry, it's tough making sure relationships don't burn out as well.
In fact, you pretty much have to program in your free time in order to keep up with all the new paradigms and frameworks.
And this is problem with our industry. I have friends that are mechanical or electrical engineers, very good ones, and they do not spend their non-working hours doing engineering. If their work requires them to learn something new, their employers actually give them the time and money to learn that skill, rather than just expecting them to learn it in their spare time.
When I first came into software 16 years ago, I did do a lot of "programming for fun" in my off hours, but I also came into the industry with no formal education in software engineering. Once I got out of the start-up world about 10 years ago, I discovered that my employers would allow me keep up with industry trends on company time, and while I still may hack a bit on things outside of work if something interesting intrigues me, I generally avoid doing any programming in my off hours and instead investment my time in other things.
>In fact, you pretty much have to program in your free time in order to keep up with all the new paradigms and frameworks
Lol no. If I'm coding it's not free time, and if I'm coding to learn it's professional development, not recreation. "Coding is a lifestyle" is such a scam.
User name xkcd-sucks. Not a fan of coding for fun.
Hackathons?
Have you ever just wanted to write a web scraper in a new language to see how it is different from your usual?
Never coded a small video game?
Do you ever find yourself interacting with a carpenter and asking him why he doesn't build additions to his house, or his friend's homes in his free time?
What about an accountant? Ever quiz them or deride them for not going out of their way to balance budgets and crunch numbers for family & friends?
Why is programming this anomaly to people where there's a necessity for you to want to spend your personal hours doing what you do for 40 hours a week (or more for many) professionally? If you don't make your life entirely centered around your career you're obviously not a real programmer despite many people having lives outside their career still being extremely talented and successful.
I think it's a lie we tell ourselves and perpetuate. People who sold their lives to programming expect to surround themselves with others who've done the same. You end up on the hiring side of an interview and you want the candidates to have a portfolio of personal projects to show off because that's what shows dedication. I get along best with the coworkers I have that have a wide variety of interests because they're not a bore to talk to and get a beer with. Jobs in the middle of nowhere are far more tolerable with those who you can stand to be cramped in a room with for two weeks rather than the guy who can only relate with RocketLeague anecdotes.
First of all, a lot of carpenters do in fact work on side projects in their free time. My dad certainly does.
We need to recognize that programming is a creative craft and the norm for those is to do it as a hobby.
Most musicians, including "professional" ones, play for fun as well. As do dancers, poets, writers, artists, etc.
Do you think most academics leave "work," go home and never think about their research again?
I have no problem with people who somehow decided to program despite not enjoying it enough to do it in their free time. But they shouldn't attack those of us who do for daring to spend our free time in a pleasurable way. And they should accept that there's a simple reality that those of us who enjoy it are going to spend more time at it and thus level up more quickly.
>Do you ever find yourself interacting with a carpenter and asking him why he doesn't build additions to his house, or his friend's homes in his free time?
What about an accountant? Ever quiz them or deride them for not going out of their way to balance budgets and crunch numbers for family & friends?
These make no sense. There's a huge, huge difference between building an addition to your house and building additions on all your friends' houses. I like to do all the maintenance on my own car, and I'll do it on my spouse's car, but I'm not about to volunteer to do maintenance on all my friends' cars too unless they're having a real hardship and need a little help to get out of a bind. I may know how to work on cars, but that doesn't mean I have infinite time to help everyone I know with theirs; there's other stuff I'd like to do with my spare time. If a carpenter has no interest in doing any carpenter-ing on his own personal house, that doesn't sound like a top-notch carpenter to me. I knew a guy not too long ago who was a carpenter/woodworker, and he absolutely did have a bunch of stuff in his house that he had made himself.
For an accountant, I would really hope that a decent accountant would want to do a great job balancing their own personal household budget for their family. If you're an accountant but you can't manage your own family's finances, then I wouldn't want to hire you. But that again doesn't mean you have infinite time to balance budgets for all your friends and extended family.
If a guy is a plumber but then calls another plumber when he has a leaky pipe, instead of just fixing it himself, what does that say about his professional abilities? If someone is an auto mechanic but doesn't even do his own auto maintenance and repair, what does that say about his abilities?
If someone is a professional and passionate about their career and work, then I absolutely do expect them to carry that into their off-hours to some extent. I would not expect them, however, to spend all their free time doing free work for all the people in their life. But I absolutely do expect them to make use of their skills for themselves and their own household. I'll make an exception for dentists, however (just for themselves).
I'm a programmer because I enjoy it, my employer seems to value the results and I am relatively well compensated for my time.
We should really make an effort to try to accommodate the people in the programming profession who do not want to spend their free time coding on projects. Programming is very, very enjoyable (to me), but I have a family with which I want to spend as much time as possible. Do I want to write a web-scraper in rust in my free time? Sure it sounds like a nice exercise. Would I rather spend that time with my kids? Yes.
I don't think we should accommodate anybody with the handle 'xkcd-sucks', much less anybody so flippantly derisive of people who do code because they like to code.
They weren't derisive of people who like to code, they were simply pushing back against the idea that you must do it as a lifestyle rather than just a profession. I love xkcd (and that username is clearly just trolling people who wrap up too much of their identity in the things they like), program for fun sometimes, and love to read computer science books for fun, but I completely agree with the sentiment that the common view that programming must be your lifestyle in order to thrive in the industry is unfortunate and problematic.
>Hackathons? Have you ever just wanted to write a web scraper in a new language to see how it is different
That stuff can be as fulfilling as cleaning the house/having sex/shooting guns/dancing but it's only happening on company time-- Especially when the terms of my contract essentially give my company ownership of anything I write. Also, 8-12h per day of any one activity is enough
Not OP and personally I love XKCD. But, I can answer a little.
I don't usually "code for fun". Sure, I like the feeling of accomplishing a task or solving a problem, but overall I don't generally enjoy programming enough that I would want to try something just "to see how it is different from your usual". I won't say I never write small programs or try new techniques; that's an exaggeration.
I call this job my "bronze handcuffs": other jobs pay substantially less, are more physically dangerous, and are more susceptible to being consumed by automation. So it makes sense to keep doing what I'm doing.
Almost any crafting profession involves practice outside of work; for example: painting, photography, sculpting, etc.
I also suspect many academic professions fall into this trap as well: mathematician, physicist, etc.
As a developer myself, I don't think this particular aspect is unique, instead I think it's a matter of perspective and what we value in life.
For example, many individuals if they see someone reading a phone as they're walking may look unfavourably upon them thinking something like "people glued to their phones, bleargh". However, if the same individual was walking reading a paper book instead, many would simply shrug it off as "that person is a studious individual / bookworm".
Almost any crafting profession involves practice outside of work; for example: painting, photography, sculpting, etc.
Well, if I'm an artist, there's probably not a clear line between "work" and "hobby" unless you are regularly commissioned to create specific works (and even then, unless you're painting portraits, you probably have some freedom in your choices). Photography might be an edge case, as you may do journalism by day and some form of art photography by night.
I suspect, however, that other engineers (mechanical, electrical, chemical, etc) don't have to spend their evenings doing engineering work to stay sharp.
Agreed. It's known that one can program outside of work for a hobby (like many other jobs), but treating it like it's special probably creates the rift some may experience
>Our brains automatically group similar memories together in order to save space. As developers, years can feel like weeks if we don’t actively pursue different experiences.
This hit me hard. Feels like the years have just slipped on by since I graduated university.
Not particularly sure how to stop it though...maybe a few more years and I can just take a few months off and travel or something?
Try going analogue, find a hobby that doesn't involve a computer (music, cooking, hiking etc.). I find if I do even a small amount of a few different activities in a day, it feels a lot more full. A day spent coding, then going home to cook dinner and read a book always feel better than a day spent coding, then going home to browse the internet or even work on a coding side project (if I get around to those, they're restricted to the weekend).
I would too. But that doesn't mean you can't take up a hobby that is done alone but shared with a club. I got into car work and joined my local auto club. We do meets, drives, and grab beers every once in a while and share experiences or things we've done. EDIT: Not to mention the social point of "I fucked up, who knows what they're doing and wants to share a case and fix this mess"
I've been hired by a few friends-of-friends to build automation and although the coding and electrical is done at my little workstation there's a local maker group that I like to share my works with.
I always recommend picking up a hobby that has tangible products. Gaming and Reading are all mind exercises. Doing something with your hands helps work the body and when you've worked at something for long enough its much more visual for how you've honed your craft. Its a different type of reward than coding is. I don't know if I can describe the feeling it gives but it's different somehow, and it's a good feeling to look down upon a physical creation with pride.
Or rephrased, you're doing it wrong if those three normally group activity examples don't involve other people and you're an extrovert looking for relationships.
That's odd, because in the martial arts I do (aikido), I've always been amazed by how similar of a state it puts you into: trying to get into the zone, concentrate on what you're doing right now, and block any other distractions.
I'm doing silat. Many of our trainings are kinda "clocked", meaning you do the movements in a certain pace, so you don't have time to get distracted in the first place.
> Feels like the years have just slipped on by since I graduated university.
If it can make you feel better, I don't think that's related to development as much as "getting a job and growing up". Most people feel the same, which is why the "school reunion" trope is a staple of modern cinematography.
> maybe a few more years and I can just take a few months off and travel or something?
How about, say, a month from now, take 3 weeks off to go somewhere you haven't been, or go be with your family. Or maybe next week, take Monday off, or maybe Thursday and Friday and just have a nice quiet weekend away from the computer. You don't need to be able to take a bunch of months off in order to get some quality down time in. Don't let great be the enemy of good. Sure it may be great to take a few months off at a time, but it's good to take a couple days or weeks off here and there.
My wife and I are both programmers, and as a bonus we also work at the same company :) We may have an easier situation as our specialties are different (I'm a mobile developer and she works server side) but we have never really had any issues at all. As long as both sides keep open minds to information and drop any defensive attitudes, it works out great. Basically, when talking about programming and work, we treat each other as a resource and colleagues rather than a romantically involved couple. It has also made us better programmers as we have any extra point of view when tackling our problems.
It's pretty OK for my wife and me. The pros are we can easily talk about work, questions and issues. It's nice, that we can go deep into details and we don't need to try to explain what we do like to a 10 y.o. person. We can share some practices. I am backend focused, and my wife is a frontend developer so we can learn something new from each other. We can both understand that we we sometimes to code at home.
Another pro is we don't have a big gap in salaries being more or less well paid (in Germany).
The drawbacks are that you are quite limited in scope, you don't learn something new outside of your programming domain. The mindsets are pretty similar: sometimes I think my wife is too logical, and we have a similar way of thinking after many years in the profession, which can be a bit boring.
It's both a blessing and a curse. As a bisexual man in a relationship with another male software developer the way I understand my partner is something that trumps my wildest dreams. On the other hand, it's very easy to let software development get the upper hand in the relationship, especially when your day consists of waking up, going to work together, literally working back to back at the same startup for 9 to 14 hours, and then going home to sleep. I do feel knowing what my partner does all day makes me connect to him better on an emotional level as well, which is a really nice bonus.
I'd say in general it helps the relationship, but it does not come without pitfalls.
I can tell you from experience that if you do not put effort into remaining cooperative peers, then it can get pretty ugly with each person attempting to earn respect in a more competitive way (that turns out looking like braggadocio to the other party). I am sure that isn't everyone's experience, but it was mine and I am trying my damnest to never fuck that up again because when your significant other(s) are programmers (especially in your domain), you can express yourself fully and the points in this article are essentially moot.
Hinders. What you're trying to find is someone who's got similar goals/ambitions for how they want to live their life in future, and who has a good sized surface area overlap with you on how to spend their free time now.
Dating someone in the same field gives greater likelihood of finding that, but there's other ways to do it too. People who went to similar schools, people in related fields, people who hang out at similar social events...
Your work is one field where you can find overlap, but there's lots of others. My fiancé works in a completely different field, but we have similar preferences in how we spend our spare time. I'd have never met her if I restricted myself to programmers (she's in conservation and events; an odd mix to say the least).
My wife and I are both devs. It's, for the most part, no different than any other relationship; you get out of it what you put into it. One thing I did (am still trying to?) learn is that sometimes she wants me to be a rubber duck instead of actually helping her solve a problem. I try to anticipate a point in the conversation when I can ask which I'm supposed to be.
By experience, the answer is quite easy: when both have the same occupation it gets boring very fast. It's much more enriching having the opportunity to learn about a different field than coming home and continue to listen about the same.
Rationally I would never pick somebody from the same field as me.
That strikes me as a very general and blanket assumption. To me the correct answer, as so often, seems to be...it depends. Mostly on how both parties handle the situation of having very similar interests, which might as well be a blessing.
yes and no... my fiancee is an internal doctor, and let me tell you, we have it damn easy behind the desks and computers. nothing really important at stake, no risk of killing somebody and ending up in jail because of some simple mistake under heavy stress, after 10 hours at work, say at 5 am.
seeing people dying and suffering will change you, especially the young ones. a lot of those stories is not something you actually want to listen to after hard day at work...
My fiance works in a t-shirt printing shop and I work as a developer. I enjoy hearing about his work, he enjoys hearing about mine but we know neither of us could do what the other does.
If the occupations are so alien to each other probably you wouldn't be attracted by that person to start with. If your SO is eg. an hairdresser probably it is boring but if her occupation is something you would like to know more about, it's not. As an anecdote, my ex was making a thesis in International Relations and at the same time she was taking a Spanish Philology course. I can say to you that I learnt a LOT just by being nearby.
Both my wife and I are scientists (neither of us are working as scientists) and I love this. It is fantastic to be able take a background knowledge base for granted.
While I do love that my wife is a smart, I think her being a scientist is more than just this. I have a base of assumed knowledge that makes conversations much more enjoyable.
from the responses it sounds like there is no one answer for everyone with this. It depends on the person that you are and the person that your partner is.
I don't think this problem is unique to programmers. Everyone who works a lot can get into this situation. If you spend 60h a week doing anything, whether you code, or manage people, or lay pipes or sell houses or cut hair, you'll be so absorbed in your work that you can't imagine other people will understand all the intricacies of what you do; and frankly, in the time that's left of the week, one might just be too exhausted to spend quality time with friends and family...
LPT though: have friends at work but don't flirt with them.
I had a really good friend at work for a while but it always had this flirty undercurrent. We both had SOs, but enjoyed the "office wife/husband" thing (my real wife actually knew about it and was not jealous). Anyway, the flirtationship thing makes you as vulnerable to criticism as an actual relationship, so the occasional sarcastic tirade or bad mood day really hurts. Long story short, we're not only no-longer-friends (this happen, I've worked at the same place for so long some friendships are cyclical); we can't talk to each other or work in the same open plan office. It's a small wonder no one's been fired. Ultimately the drama/good feeling ratio doesn't work out.
I would say your caution shouldn't only apply only to flirtatious relationships, but rather any interpersonal relationship at work that becomes too casual.
I work in a small shop and was hired as the third developer, about 4 months after developer number two. Of course, Number 2 and I became friends pretty quickly and we would hang out outside of work on occasion. That is, until one day when some totally insignificant disagreement resulted in threats of physical violence against me. Needless to say, I didn't enjoy that, we never hung out again. I brought the comment up with management (the company owner) and as far as I can tell nothing came of it.
Now, as our company and development staff has grown the owner has put this same guy in a managerial role that I have to answer to, and because of our history, it's becoming more difficult to stay productive in our interactions.
In other words, friends in the workplace can be a good thing, but if it backfires, and especially if you're both candidates for advancement in the same department, the repercussions could have you polishing your resume.
Let me try again: try night clubs that play music you like; that helps a lot in winnowing the playing field and showing women of the type you'd enjoy dating.
But hey, we're talking flirting, right? Finding fuck-friends is probably easier with dating apps; and maybe one of those even converts into a sweetheart. Flirting is really fun though.
Music I like? I've never heard of a night club that plays 80s thrash metal, 70s hard rock, etc. It's always some horrible dance or pop music, or country. I also don't drink (except maybe a half-glass of wine on rare occasion with a nice meal at home), so I really don't see how the nightclub scene is any better at finding someone I'd enjoy dating than a dating app, in fact at least with the dating app I have a chance to find women who aren't alcoholics who listen to shitty music.
So instead, I've been trying (during better weather than current conditions) hiking groups on Meetup.com, since I do like hiking a lot, and would like to find a woman who also enjoys hiking. That hasn't gone all that well; it seems most of the people in these groups are retirement aged. I do see age-appropriate women out hiking, but they're usually with a husband/boyfriend, not in one of these groups. AFAICT, the single women in the age range I'm interested in (30-45) in this area (DC) are not into hiking at all, but they are into getting drunk from what I've seen of them downtown. And from what I've seen on dating apps and OKCupid, the ones who aren't downtown socialites are mostly Trump voters who spend their weekends at the gun range.
I strongly disagree with this one, although I'm not sure if my reasoning is broadly or only personally applicable. The last thing I want to do at the end of a long day of work is recap what I did. Even in the best-case scenario of a day full of victories, it's just exhausting to try to relive all of them with the added burden of explaining the decade-plus knowledge base you'd need to understand why Problem X was so hard to solve. I'm much happier with a base of other interests to talk about after work with a non-programmer instead.
I understand your frustration but I disagree. You should try explaining your work to a non-programmer. It's a challenge to 'dumb it down' and you only succeed if you truly understand your work. Sometimes the non-programmer is successful in suggesting a very possible solution which turns out to be a fun conversation.
Yeah, I find that when I take the "implementation details" out and explain the general problem, my fiancée both loves hearing about how my day went, and sometimes has good ideas how to solve it (and sometimes she doesn't, but the process of distilling the "essence" of the problem helps me to see the problem myself more clearly). By stripping out the technical details, I explained to someone who thinks that the monitor is the computer and the tower is the "CPU" what the Maybe monad is and why it's needed.
That being said, I also find that some problems are strictly-technical in nature, and can't really be distilled to anything informative (e.g. Ionic's livereload dev server randomly serves up an old build rather than the most recent build due to weird interactions with gulp watch). In those cases, sometimes it's okay to just say something like "our tools were being frustrating."
The goal, at least with my fiancée, is to make an effort to communicate with her how my day went, because on a deeper level what I'm communicating is that I want to share my life with her, and that we're a team.
There's a lot of implicit emotional elements to human communication, and sometimes to communicate one thing implicitly, you have to work really hard to communicate something seemingly-unrelated explicitly.
I think it's hard for someone else to actually understand the problem when you two are not in the same knowledge framework. Cause then she/he will be perpetually asking the why and how question and being not satisfied.
Nevertheless Feynman made many successful lectures to the public and undergraduate students and was able to explain things as complex as quantum electrodynamics in layman terms. Recently I tried explaining how Akka clusters work and what partitions are to a completely non-technical colleague. Not only was I able to explain the parts I understand well in a way that she understood, I also quickly found out there are parts that I don't understand at all.
I know that my wife appreciates hearing some about how my day went. I don't go into any really deep detail, but talking about how hard a problem was and how good it feel to solve it, or venting about something stupid that a coworker did are things I've come to enjoy.
The technical details and why it was hard to solve aren't the parts that matter.
> I know that my wife appreciates hearing some about how my day went.
I believe that. My girlfriend really pushes me occasionally about my day, and I think it's because she knows that talking about her day really helps her. I'm happy to listen for her, but I've just come to the conclusion that trying to recap things I've done makes me more stressed out, and the fifteen seconds of "no, I really don't want to talk about it" is worth it.
And for what it's worth, having read back over that, I am not in a high-pressure job. I consult about thirty hours a week or so.
That's a classic male-female issue. Women, for whatever reason, are conditioned to need to talk about things to process them. Men are more likely to brood in silence instead.
When I come home, I too would really rather not relive the last eight hours of fighting with broken hardware, broken tools, broken networks, and broken customers. Its time to put it out of mind, as best as can be done. I'd rather play with the dog, water the garden, and cook dinner.
"trying to recap things I've done makes me more stressed out"
Its about the same in low pressure full time work.
So to my annoyance at work my happy sea of happy freebsd has gained two unavoidable ubuntu, and ansible worked on them precisely once after initial install and then never again. Incredibly frustrating. Obviously must be a problem with our standard sshd config although ssh into the boxes works fine... Turns out ansible does NOT just use ssh, but speaks sftp which is a subtle difference in protocol and is handled completely differently inside openssh and I never use sftp other, apparently, than every time I ansible-playbook something (all scp here for generic file transfer) so I never noticed it. To make a long story short sftp is implemented in a loadable subsystem module located in /usr/libexec/sftp-server which is specified by FULL PATH in sshd_config on a unix-like OS but on Ubuntu its in /usr/lib/sftp-server. Thanks Ubuntu, wish you were a unix! Also if sshd tries to access its sftp loadable module and fails because of wrong path in sshd_config, there is no error logged to any file and running the client in verbose mode tells you nothing other than connection dropped, almost like a firewall dumped a RST packet on us. There is no way to indicate the problem, the only symptom even if you run the client -vvvv option is the connection just drops, nothing in syslog on the server side, nothing auth.log, nothing. Once the problem was found all I need to do is have ansible provide /etc/ssh/sshd_config with slightly different OS specific paths based on specific OS which is a good 30 seconds of work. So no small amount of my work time is pounding head on desk swearing and annoyed until I isolate the problem and then the fix takes about 10 seconds. Actually given that I'm pretty good at this stuff and highly experienced and I know the business problem domain very well and I know my toolset, the easy stuff is all automated or avoided or well known and all I do all day is pound head on table for hours until truly obscure problem is isolated, then implement fix in about a minute, repeat. Figuring out the correct solution is about 99% of my day and endless judgment calls takes a lot out of a brain.
After that end of workday I had no interest in talking about SSH or ansible or any of that, in fact it took near 24 hours to cool off from that one and write this post, went home, ate an awesome homecooked meal, took whole family to hiking trail and tried to catch pokemon, generally hung out and had a good time and enjoyed the nice park and nice weather. My wife used to program PBXes and did something with ACD call routing on an old fashioned physical PBX (don't remember the language, its all obsolete now replaced by VOIP and doesn't matter) but even back when we had similar-ish jobs I think we both just need time to chill out away from work. If work is stress, I don't need constant stress or constant work, no interest in talking about work outside of work.
It's not about what you want it's about what others may like to hear from you. And if you're doing something all day long and you can't talk about it, what do you talk about? you'll be like a foreign object to others
When I look back, good times with family and friends brings happiness. :)
When I look back at the bad program written, feel like 'Did I write this so studpidly?' brings sadness. :(
Is this really true for everyone? I sacrificed my relationship because I prioritize my projects and I've never been happier. I can't imagine getting into another since it would mean compromises I'm not willing to make.
I'm not trying to convince you otherwise, but exercise caution with this mindset.
Your projects might feel more important now, but that may not always be the case in the future.
Speaking from my experience, as a younger guy I actually kinda enjoyed the 80+ hour weeks during crunch times on my projects and I was always supremely motivated and had the mental energy to basically abandon a social life and concentrate almost entirely on the work, including the time when I had my sister banging on my door one day in tears wondering if I was even still alive since my family had not heard form me for so long.
As I've got older and got more experience, those attitudes have changed.
Work and projects are important, but don't throw everything else away to pursue them. Projects can fail (often for reasons outside of your control), and companies will often show zero loyalty when it comes to redundancies or bankruptcies. Don't pin your life and your future (financially or emotionally) on these things - the money and success will come regardless of the hours you work if you're worth it.
tl;dr - For me companionship is more important than pouring my entire self into projects or work. It wasn't always the case, but as I've got older and more experienced, the importance of my work vs my life has only decreased and I'm richer now than I've ever been.
That's a good tip to discuss the work with family when working at home on weekends especially, as they have no idea of the problems a developer faces when working remotely on weekends.
I don't think I really get how to have relationships. It seems a lot of developers fail bad at relationships.
I see beauty in math and algorithms. I'm sick of people, who just see such things only in dollar terms.
However, I think there is a greater cultural attack on technological professionals. I feel like we are devalued as some sort of machine that cranks out code. Many play into this as well. I don't think it is healthy.
> I'm sick of people, who just see such things only in dollar terms.
This statement is more accurate if you remove the comma. What you wrote makes a blanket claim about all people (which is highly unlikely to be true for even a majority). Without the comma, it's a useful heuristic for what kinds of people you should avoid so that you can have a more fulfilling circle of friends.
There is some evidence that developers are better at relationships. When it comes to marriage they have a relatively low divorce rate of around 10%. It can be partly confirmation bias that the worse relationship outcomes are most obvious to us.
There is nothing wrong with seeing beauty in math and algorithms, because it's certainly there. But taken too far, it can become self-validating by judging other people as lacking value, and refusing to see beauty in other people with different interests.
This might be part of what you view as an attack on technological professionals, where we're stereotyped as people with only an interest in computers/math and have no interest in actual people.
I see beauty in math and algorithms. I'm sick of people, who just see such things only in dollar terms.
Try seeking out people who also see beauty in maths and algorithms and you might have a better experience. Finding people who have similar values to you goes a long way in having good relationships (as long as you don't entirely limit yourself to like-minded people).
I read articles like this and always find it fascinating that none of them suggest simply stop doing what you do for work (or at least limit to a certain extent) and enjoy other things in life. You want to have a healthy life? Get away from the monitor and get outside. It's that simple no matter what you do.
> Call your grandma, friend, dad, girlfriend, anyone
A bit offtopic, but the author seems to assume you are a straight coder guy. This was probably not his intention though. Why not replace "girlfriend" by something more neutral, like "your better half"? Being inclusive doesn't cost much, really.
I think everybody got the point. The dude was writting blog about keeping healthy social life, not sexuality. If we keep splitting it to atoms, it would be pretty distracting experience for writter of any blog post. Being a little bit inclusive doesn't cost much, but it could cost a lot if you go by your logic for every other thing...
Is there a book or a list of ways to brush an issue under the carpet? This is one of them, one of the most pernicious.
The language we use, especially the language we use casually, defines how we appear. To those outside the predominantly straight white male clique of programming, repeated exposure to these casual assumptions of stereotype pile up and create a sense that those not fitting the stereotype are unwelcome. Imagine if, every single day you had to drive around the same pothole in the road into coming traffic: eventually, you'd find a different route.
You're right. The point is that it's not a covert form of oppression, it's de facto.
There is a straight, white male clique-iness to the programming world. Most blog posts assume the reader is a straight, white male. These are turn offs to some people, whether conscious or not.
Nope. Repeating the message in different ways is the only way to get it across, unfortunately. Throwaway assumptions really are death of a thousand cuts for people who don't fit those assumptions.
If you get used to writing in inclusive terms, these changes don't cost anything. They're just how you naturally express ideas, and exclusive terms feel unnaturally specific.
After giving it a second thought you are right. But what struck me about initial comment was that I read the blog post first, which I think was pretty straight forward, just to find out that somebody was giving shit to OP for not including something that wasn't even remotley close to the subject. Statistics are what's holding the whole thing back. I have friends that are gay and I am totally open minded about anything, but sincerely I would forget to include them If I was writing blog post like this. Not because I don't like them or anything but because I would be telling experiences from my perspective, trying to tell a story from my point of view, and I am white male clique. So I will pay attention and work on that, but sometimes those things are not the point and you don't think about it...
Are they really "giving shit to OP" though? I feel like the criticism was presented pretty politely. They pointed out that it's offtopic and that it's not intentional, and they provided an alternative.
That said, I can understand people being touchy about this, as these issues have become very polarised. PC should be about helping people choose to use inclusive language, but some people choose to shame people for getting wrong.
No. I actually thought it, but I assumed the author would refer to straight guys as an audience. I might be wrong though. I didn't not make any assumptions about his actual audience, only about the author's perception.
I sometimes wonder how much my life would be different if I never got into this. Programming is such a big part of my life now. I frequently consider how much of my brain power goes to programming; and I have to say it's about 20%. If there were five of me, one of them would basically be a computer.
I wonder what that fifth of my brain would have been thinking about for the past 10 years, if not programming. Maybe it would have been dancing, or painting, or soccer. Instead of context switching into thinking like a computer, it'd be how to move my body around or how to meld colors together. I feel like that would lead to a much more fulfilling life.
I used to program for fun in middle school. It was probably halfway through high school when I stopped programming for fun. It was always that little nagging voice in the back of my head: Play it safe. Programming is an in-demand field! You're good at it! Look at all of that awesome shit you made.
At this point, the only "hobby" I have is programming. I don't even know what else I like anymore.
Keep trying new hobbies until one of them sticks! There will come a point where you find a hobby that will fulfill you in ways that programming can not.
For me that is writing poetry and making music for myself, which I randomly stumbled upon after having had so many other hobbies in the past besides programming
Don't think about it as sacrificing programming, but as an extension or alternative to your favorite hobby. As for concrete suggestions:
- sports is an obvious one. Bonus points for team sports where you'll get a different community / social circle for free
- as others suggested music is great way of playfully easing into different activities. A fun start would be Melodics ( https://melodics.com ). If you'd like to keep it close to programming take a look at Max/MSP. Play around with a software synth, or get a hardware one like Korg's entry level offerings. If you'd like to move up to advanced levels, take a look at Ableton Live + Push, which is a very play- AND powerful way of learning a DAW.
It is also good to acknowledge to yourself, who you are, and stop looking around at others, feeling guilty and making excuses. If you want to code 12 - 18 hours a day, and you are not neglecting other responsibilities, then go for it. Don’t apologize to yourself that you aren’t into biking, marital arts, cooking, or skydiving.
I’m speaking to myself, BTW. I have spent a good portion of my life of explaining it to others and questioning it myself. I started programming in the 80’s though, and I had to fight through a wall of people with the mindset that computers were inherently “evil” and treated with high suspicion because they were not commonly understood. Yes, I grew up in a backwater.
Do all people who paint water colours also have some other totally different unrelated hobby they are just as passionate about, like motorcycle restoration? I'd wager not.
For me, running became a sort of "hobby" as such - I guess you could call that "sport". What were the other things you were thinking about at school when you "played it safe"? Never too late to learn/relearn things.
This is well put. I've thought the same many times, and it is so hard to reason. Programming, at it most basic, is an expression of creativity. Lacking programming i would crave another outlet. But programming for years quite literally changes the way you think about problems, so it is hard to say what you would be like without it.
I suppose cooking might have actually been the best avenue. I find that the more i cook the more i draw parallels. It's quite associative and borderline object-oriented. I watch cooking shows where a dish is mentioned and the chef immediately starts building a menu in his head. It reminds me of when someone asks a programmer to design a blog/website/etc.
In what other field do you have so much control and freedom to create?
No matter how much someone directs you on how to program something, you always have that little bit of wiggle room to add your own creativity to it.
Programming is like art. The coding is the medium. The thoughts and solutions, when it all works together, just feels right.
My job when it goes into stuff other than programming, I find myself coding at night to feel that structure, control, creativity and freedom all rolled into one.
Listening to the little nagging voice of career sensibility stops being a good idea if you're not going to then turn that quality salary and employment security in to a base for a fun life.
If not programming, that 20% of your brain would have been thinking about whatever else it is you did for a job.
I think it would be a lot less than 20%. It's so much easier to context switch into and out of the "work" mindset in other fields.
By default, this "computer brain" of mine is carried with me when I leave work. I have to make a concentrated effort to context switch back into "real life" mode (similarly how I have to context switch into "computer" mode). I think that's why so many of the good programmers are a little weird and introverted, because they don't bother to context switch back.
I think it's easy to imagine that we could have been something else; but I suspect that programming, or something substantially similar to it, is probably the only thing you'd be happy with.
Personally, I always felt that if I'd been born 50 years earlier law, architecture, and mathematics would have been good alternatives. I've also been taking painting classes for a couple years and have found great logical structure and consistency in it despite the creative freedom it provides.
I couldn't imagine consistently working 60+ hour weeks. Occasionally for deadlines which nearly always are big presentations I'll work up to around 50 hours, but its rare and definitely not sustainable.
One thing specific to programmers is the ability to whip up a little program to help people. Someone spends an hour every day retyping lower-case data in uppercase? Take ten seconds and write them a program. Someone complains how they always forget to shut down their computer and waste electricity? Write them a widget to shut it down at 1am each night.
When I take a bit of time to write programs for people I care about, people are usually very grateful and vastly overestimate the difficulty of whatever I just did. As always, relevant xkcd: https://xkcd.com/1425/