1. In for the money, no love for the job
2. In for the money, but also love the job, codes on spare time
3. Category 2, but no more free time (family, older parents)
I was in Category 2 but now on category 3. I show up to work early, work intensely, do not waste any time, and try to leave at a normal hour. On weekends, instead of open source projects, I'm spending the time with my mom who is getting much older and requires help and emotional support from the family. That does not mean I have poor ethic or lack of interest, it just means I have a lot of family commitments. I am very productive at work, I love it, but there are clear boundaries unless there is some major deadline or production issue. Speaking of Production issues, I write very very good code to ensure I dont have Prod issues and/or I can quickly do a root-cause-analysis of issues that pop up. My personal needs focus me like a laser on productive time at the office.
Embrace the time you have left with your mother. Work will always be there, and there is no job more important than your family. Do not give on your boundaries.
I spent the last 2.5 years of my mother's life (she passed away suddenly last month at the age of 59 from a brain hemorrhage) working for a startup, not making more time to spend with her because I thought I'd have at least another 5-10 years with her, and my heart hurts every day thinking about how I didn't spend more time with her. Do not make my mistake. It's just code, you're not saving the world.
This isn't always true, of course. Some developers can have excellent skill and have no interest in programming outside of work. I have a coworker that does virtually nothing outside of work, doesn't keep up with current events outside of what our group discusses, but she is a great programmer and picks up on things very quickly. She shows genuine interest in the work she does at work. She's been with us for nearly nine years. Culturally, she's different than me and another one of our co-workers in a more fundamental sense, but as part of our _team_, she is a perfect fit.
I don't agree. Interest in doing a good job (i.e. work ethic) usually correlates with this, but I do not think work ethic corresponds very well with interest in the field.
> If you have a team of interested developers/hackers, then the lack of enthusiasm can drag the team down, both in knowledge and culturally.
I think part of my problem with the statements in this thread is that I would never put together a team of hackers to run a business. Your statement implies a team that is interested in tehcnology for technology's sake rather than as a tool to solve a business problem.
The discussion is whether someone who is just in it "for the paycheck" will be able to solve those business problems as effectively as someone who has a deeper interest in technology for technology's sake. By itself, that's obviously not enough signal to say one way or the other. There certainly are extremely valuable people who don't code outside of work, follow new language and tool discussions online, etc. I think it's equally obvious though that such an interest is a positive signal. If you told me nothing else about two potential hires except person A writes Java at work and has no interest in the field beyond that, and person B writes Java at work, but has a Github page full of utilities she wrote in Go, Lisp, Haskell, whatever, I'd bet a small amount that person B is probably better at solving technical problems. You can't say that for sure, and any of the myriad other factors that actually do matter could break the other way and make person A the better hire for an actual business, but outside interest is a positively correlated trait.
I wasn't expressing a 1:1 relationship. I also expressed an example where this wasn't the case: interest in the position and the work we do, but not a personal interest outside of work.
> Your statement implies a team that is interested in tehcnology for technology's sake rather than as a tool to solve a business problem.
I just happen to be a hacker that was hired by a business. That wasn't why I was hired---I was hired because of certain qualities that so happen to be a consequence of my being a hacker, and because of fundamental interest in certain topics (which also included side projects).
I'm certainly not interested in technology for technology's sake: I'm the author of a large system on which one of the core parts of my company (the company I work for, not a company I own) is based (raters for an insurance agency), and it was made using practical, business-conscious decisions. My coworker (he doesn't identify as a hacker) is Technical Director.
Many programmers who enjoy programming will have a preference for hiring other programmers who also enjoy it. That doesn't mean they can't hire dispassionate programmers but that still doesn't erase the preference for passionate programmers.
>This industry needs to stop using "passion" as a lazy signal for work ethic.
There's definitely a place for dispassionate programmers (as that's probably the majority of programmers who just think of it as a "job"). However, it's wrong to vilify programmers-that-love-their-craft having a preference for other programmers-that-love-their-craft.
Exactly, and it isn't just 'Work Ethic', I wanna work with these guys [1] in 'Silicon Valley' tv show who would go around doing a Jerk off calculation just because it is a fun calculation to do. Not just people with strong 'Work ethic'.
If they're content with where they are, there are numerous problems:
• as the business case becomes more complex, they won't adapt
• as you grow and progress, you'll be promoted and they won't. No one wants to work in an atmosphere of resentment.
• you want to learn from your coworkers while they learn from you. If it's one way, you're just slowing yourself down.
I don't want to work at a place filled with guys who want to do the same job for the next ten years. That workplace is going to be commoditised. They'll eventually find themselves on the Internet complaining about H1-Bs and outsourcing and how git is hard to use and technical interviews are evil because they have ten years of experience.
No thanks. This field is privileged in that there are lots of us who like our job a lot. Life's too short to settle for boring coworkers.
People usually call those types of qualities "passion," "love of job," or "interest."
You keep trying to work around definitions to suit your narrative when people are just trying to have an honest conversation. You are shoving intent into the OPs post that isn't there. Simply put, what they are saying is that those from bootcamps are there doing the what they think is the bare minimum in order to keep getting a paycheck at that moment.
You might think, "Hey, just raise the minimum and they'll raise with it, it's your fault for having low expectations!" However, when those expectations are raised, you rail against them. You can't have it both ways.
You can't argue for someone lacking drive, ambition, and work ethic, and at the same time bemoan people for demanding that.
Instead we should precise terms like drive, interest in technology, motivation to learn, etc. These make sense and don't bring any emotional baggage with them.
I want to learn from my coworkers. Making decisions that require evaluating new software or new techniques is difficult and risky, having more than one damn person who can contribute to that process makes a huge difference. Plus, I just like learning things from people.
Sure, it's very good for the business if they keep up with new developments in a rapidly changing field, but personally it's most important to me that my coworkers and I are helping each other sharpen our skills and make tech decisions responsibly (being fad driven is worse than being out of touch, I don't mean just knowing about what's "hot right now").
Computer programming as a self-motivated hobby is not unique in this. Many electrical engineers started playing with electronics as kids (e.g. disassembling radios, wiring up homemade amps, etc). Many mathematicians "play" with math as kids before they go to college and get a teaching/research position. (E.g. Andrew Wiles was 10 when he was captivated by Fermat's Last Theorem.) Many biologists and zoologists when they were kids had a keen interest in nature and animals (beyond the typical children's "dinosaurs are cool" stage). Same for astronomy.
No one expects a chemical engineering 1st year student to have mastered organic chemistry already. Just as no one expects a 1st year mechanical engineering student to thoroughly understand rigid body dynamics at age 10.
Yea maybe they built an RC plane or did some home experiments, but if anyone is doing these things at a young age they are clearly far above their peers.
> Andrew Wiles
Example here-this man is extremely intelligent, it's like using Einstein as an example that anyone can be a genius physicist that changes the world. No, they can't.
We need to just call it what it is: arrogance and gating. "If you didn't do what I did, you must certainly not be any good." Which is an absolute shame
Then you are not aware of the toxic comments from your peers who agree with you.
To recap...
Group 1: programming-is-just-a-job -- the majority -- The programmers who want to compartmentalize their programming strictly to 40-hours work week so they can have a life outside of computers. Programming is just a means to an end. Programming is just the paycheck that feeds my family. Great! There's nothing wrong with you! You outnumber the programmers who view it as an artistic endeavor and self-actualization.
Group 2: programming-is-my-vocation -- the minority -- The programmers who got into as kids and find joy in side projects after hours & the weekends.
It's not enough for these 2 groups to peacefully coexist. It's also not enough that Group 1 outnumbers Group 2. It's also not enough that most cog-in-wheel corporate programming jobs don't even value Group 2's enthusiasm for programming.
No, Group 1 is not satisfied with the above advantages. Group 1 is very annoyed if Group 2 programmers prefer working with other Group 2 programmers. G1 derides G2 as psychologically defective or unbalanced. E.g see HN poster (gyardley)[1] describing them as an "obsessive wretch" and "not an asset". Toxic indeed.
Also This mindset eventually can backfire on even your group 2 people because life happens and just because you have the free time, energy and motivation today to work on projects outside of work doesn't mean you will later when you have a family or health issues or any of the myriad other things that can come up.
Well, G2 people have an affinity for other G2 people. That's human nature! That's not toxic. Look at the various reasons given by G2 posters in this thread: they enjoy a work environment with other G2 people. Just as one can prefer having a comfortable chair or closed office, a G2 can state honestly that they would be happier with other G2 colleagues. Just because that has an effect of G1 not getting hired does not mean it's toxic.
The analogy I like to use is a music band. If they're looking for a guitarist who's passionate about his instrument and music, the guitarist-just-a-job who has apathy about the music will not get invited to join the band. Maybe the apathetic guitarist can technically strum a C chord as well as the passionate guitarist. That's not enough. The band having a preference for the passionate guitarist is not being toxic.
Yes, for many G2 programmers who started as kids... programming/playing with the computer is a very similar intellectual high to a teenager exploring a guitar. Programming feels like fun artistic expression and not "work" or a "job". I think many G1 programmers really don't understand that. If they could view G2 programmers as band musicians, maybe they would have more empathy for the passionate programmers having a preference for like-minded people.
I'm not going to think of programmers as musicians because they're not. They are employees of whatever company. They are there to do a job. It's great that you want to work with like minded people but if that desire means that qualified G1 people can't get hired at your company that's a problem. If your desire means that g1 people can't get promoted that's a problem.
As a thought experiment replace like-minded people, with people of the same race. Or people of the same gender. Or people of the same religion. Do you see the problem now? A mindset that excludes some large percentage of people based on arbitrary standards that has nothing to do with their ability to do a job is always going to be problematic.
Side note if you lead with "looking for passionate" you're already misconstruing the issue, because what a company should be looking for is "able to do the job to whatever standard we've set"
Nobody in this thread has said this. Maybe your misunderstanding of the other side is part of your frustration on this topic?
Some have said that the self-taught programmers were better. Some have said passionate programmers were more driven to stay relevant in a changing field. Some have said they learn more from coworkers that developed interest in programming outside of college and work.
You may disagree with all 3 of those statements but none them are about dispassionate programmers not being able to succeed.
>It's an issue when you're desire pushes all the G1 people out of the work place.
This has never happened. In fact, the opposite has happened. G1 is the overwhelming norm at most businesses. To repeat -- most programmers do not view coding as a vocation. G1 programmers already fill most jobs slots.
The idea that the minority of G2 programmers want a work environment with other G2s and this is hurting G1?!? That is a complaint that's way out of proportion to reality. Literally.
Also, I'm not sure why hiring heuristics that negatively affect G1 somehow has a higher moral standing than heuristics that negatively affect G2 programmers. What about the opposite situation? E.g. G1 people say being well-balanced with non-programming activities helps them be a "better programmer". Great! Let that belief be a guide and don't hire G2 programmers since their excessive interests in computers actually makes you believe they perform worse. They are not assets. (See my previous cite to HN thread for example of this.) In those cases, G1 wins over G2 in getting the job.
>They are employees of whatever company. They are there to do a job.
The founders and many programmers would like the daily effort to be "more than a job" if possible. Sometimes, that's not possible (e.g. Walmart cashier). However, with programming, some do try to optimize for a better work environment.
>with people of the same race. Or people of the same gender. Or people of the same religion. Do you see the problem now?
Those race/gender examples weaken your argument. Having a preference for people with similar intellectual dispositions in programming is very aligned with Martin Luther King's "not being judged by the color of their skin, but by the content of their character."
>arbitrary standards that has nothing to do with their ability to do a job
Then this discussion has no resolution because in this thread, many have written about experiencing the opposite. Instead of it being an "arbitrary standard", it's been a positive correlation with performance on the job.
>what a company should be looking for is "able to do the job to whatever standard we've set"
Ok, many programmers in this thread said they prefer colleagues who enjoy computers+programming as outside interests. That's the standard that's been set. Many companies want to attract those programmers by hiring G2.
Neither ghaff nor I wrote anything about kids "mastering" the STEM topics before college or the first job. Therefore, that higher standard stated by you is a strawman.
I thought ghaff was talking about STEM side projects which is certainly something within the abilities of teenagers without mastery of programming. That's what my reply to him/her was about and how "playing with science" is not unique to programming.
No one would be expected to do meet those high standards, as you say. No one would be expected to be experts in basic chemistry by their first year of college.
Yet in this very post, there are countless examples of people saying the best programmers were the ones that knew it all before college, who didn't need college, who put in the time to learn before college, etc.
No other field is this expected. That's the point.
Playing with science and doing small little cute fun experiments is a lot different than me teaching myself productive front end development at age 16. I don't expect other 16 year olds overall to do as I did. Nor do I judge people if they didn't.
Nobody in this thread has said that programmers should "know it all" before college. You're injecting conditions and standards (like "mastery") that no poster actually wrote.
>No other field is this expected. That's the point.
This isn't true. You can see coaching advice for electrical engineers to update their resume with any DIY (do-it-yourself) electronics projects that would demonstrate self-motivation, passion, etc to potential employers. In that respect, it's not much different than computer programming. Do electrical engineers get jobs without any personal side projects?!? Yes, of course. Same as computer science -- many programmers get jobs without side projects.
In both scenarios, it isn't absolutely necessary but it's a way to stand out from the crowd.
> As a mechanical engineering major undergrad, I can assure you that I had no particular experience in the area prior to college.
I'd say this is true of most people entering college. Hence we have introductory courses to learn there.
It's a shame that so many people on here and elsewhere simply want to discourage people from following an interest simply because they discovered it later.
I'm not sure about "passionate" programmers, but programmers who enjoy programming are generally always on the lookout for new trends, new tech, new libraries, and even if you aren't using those things, being aware of them is massively useful. If you're relying on the business and your coworkers to drive your skill improvements, then you're going to stagnate, guaranteed, because the business doesn't care at all about new technology and has no desire to improve or change anything, and your coworkers will only care if (shock) they enjoy programming.
When you put together a team of 9 to 5 only in it for the paycheck programmers, what you get is a snapshot, their combined skills and technical knowledge will be the sum total of exactly what all of them know when you hire them and it will never improve. Putting together a team of programmers that enjoy programming and are doing it not just for the paycheck but because they enjoy the craft gets you a constantly improving team. Their skills stay fresh and they're motivated to improve and keep your tech relevant and modern, which ultimately saves you in the long run from having to face massive rewrites of old creaky systems, or ending up stuck trying to hire massively expensive developers to work on ancient deprecated technologies.
It is a rare person who has enough work ethic to force themselves to use their own free time to improve in a field they don't have any passion for. If that weren't so, we'd see a lot more self-taught physicists, mathematicians, and other STEM people.
> The vast majority of people, including those who excel at their respective fields, don't love their jobs.
People who excel in their fields don't love their jobs? As kids nowadays say, "[citation needed]".
I've hired good developers who had this type of passion, and good developers who lacked it. But I've yet to hire a truly great developer from the latter camp.
It seems to me this is true in just about every industry, those who have devoted the most time and energy to a skillset tend to be the best at it.
I fell into IT and struggled with feeling overwhelmed the first year or two but once I found the things within that field that fit my personality, that's when I felt more comfortable and could push myself more and ignore the BS that I didn't really like.
I completely agree about the "passion" thing. You can develop curiosity and interest about anything.
Me.
Who cares? Can they do the job or not? Do they have the work ethic and professionalism to continue to do so?
The vast majority of people, including those who excel at their respective fields, don't love their jobs. This industry needs to stop using "passion" as a lazy signal for work ethic.
> The most boring developers I work with, the the ones who only learn to code while in college and never developed any interested to learn before that.
Again, who gives a shit if they are "boring"?