
Ask HN: Programmer satisfaction by field - lgieron
Have you ever wondered if it&#x27;s true that that devs in field X in general are miserable, while the people in field are having a great time? Me too, and I&#x27;ve decided to make a survey about it! Let&#x27;s gather data on this!
Please take 30 seconds to answer this one question survey:<p>https:&#x2F;&#x2F;www.surveymonkey.com&#x2F;r&#x2F;3LSJMB7<p>The results are publicly available at any time:<p>https:&#x2F;&#x2F;www.surveymonkey.com&#x2F;results&#x2F;SM-GVHWDLNR&#x2F;
======
treehau5
Hey all you happy systems programmers, I have always been interested. Can you
enlighten me? I currently do fullstack web / data monkey stuff

~~~
simmons
What aspect of systems programming would you like to be enlightened about? I
do a lot of consumer electronics programming, which I think falls into that
category.

I grew up learning programming on a Commodore 64, where getting anything done
meant twiddling bits and writing to registers of various hardware devices.
Writing device drivers today can provide the same sort of thrill, since the
work is quite similar. A lot of my time in high school and college in the 90's
was spent learning all about UNIX and Linux, so it feels very natural today
when I develop user-space tools that bring value to the user. Outside of
nostalgia, there's plenty of bleeding-edge work to keep things interesting --
audio/video processing, extending platforms such as Android, security, etc.

~~~
geekam
Sounds exciting. I want to know how to make a switch, if one can. I am in the
same position (mostly webdev) as the gp. I do understand that "systems
programming" is very broad.

~~~
simmons
I get the impression that most people I've worked with in the CE world come
from non-CE programming backgrounds, so I doubt there are major obstacles. The
biggest help would be familiarity with C/C++ programming, and being
comfortable with the practices needed to use these languages properly (e.g.
explicit memory management in C, RAII idioms in C++). (Next-generation systems
languages like Rust can't come fast enough, in my opinion.)

------
lgieron
You can stop responding now - apparently the surveymonkey has a limit of 100
responses on their free plan, and upgrade would cost me hundreds of dollars.
Anyone with a paid account is willing to redo this survey later? (we're
already at 205 responses after less than 12 hours, of which only a 100 is
shown).

------
lgieron
For much nicer formatted results, see here:

[https://www.surveymonkey.com/results/SM-
VT2RQJNR/](https://www.surveymonkey.com/results/SM-VT2RQJNR/)

(Sorry, the original post is too old and I cannot edit it anymore).

------
cheshire137
The results are confusing. I can't tell which bar is which number, 1-5.

~~~
lgieron
Indeed, thanks for pointing out. I've reconfigured the results page, I think
the visibility is pretty good now. You need a new link to see it though:

[https://www.surveymonkey.com/results/SM-
VT2RQJNR/](https://www.surveymonkey.com/results/SM-VT2RQJNR/)

------
simmons
I was a little unsure of which category to choose for my work as a developer
of consumer electronics software. "Embedded" means different things to
different people -- some people reserve the term for microcontroller-level
devices. "Systems programming" seems closer, but the "/ Desktop apps" bit had
me running back to the embedded category.

For what it's worth, I think it's a great part of the programming world to be
in. :)

~~~
vonmoltke
I picked multiple, based on what I have to do. I write NLP software, so I
ticked front-end (make GUIs in Angular), back-end (make REST/WebSocket APIs
for gluing our software together), AI/ML (that is the core of most advanced
NLP software), and systems/desktop (since we need to package and deploy our
software in self-contained packages).

I hope I didn't screw up the metrics. :/

~~~
jventura
I did the same as you. For instance, when I do webdev I'm mostly unhappy (web
frontend sucks big time for me!), but when doing desktop or other, I change my
"happiness" numbers.. Don't know if it screws the metrics as well..

------
an_ko
I see numerous problems.

Shouldn't there be 2 separate questions? "What field are you in?" and
"Disregarding salary, how happy are you with your field?" Would prevent
confusion.

How did you come up with this list of fields? Where does academia fit in? Why
are systems programming and desktop apps in the same category?

~~~
lgieron
If I made it into two separate questions, I doubt I'd be able to make a
meaningul report out of it with survey monkey. Plus, I don't think it's that
confusing really - if you give your answer for a given field, it means that
you're working in it.

There is no academia (as in academic career track) - I am only asking about
programmers, not researchers. If you work in academia as a programmer (say
implement stuff at CERN), you can answer according to the nature of your job -
ex. if you help scientists write simulations, you select "scientific/numeric",
if you mainly work on massive data pipelines, you select "big data" etc.

As for coming up with a list - I compiled it myself, trying to bundle together
work that seems close enough in nature. For me, desktop programming looks
similar to systems programming - i.e. it's mostly C++/C/other compiled
languages, working against OS APIs, no garbage collection, expectation of
reasonably low latency.

------
bdavisx
I'd be interested in a satisfaction by industry - or better, a combination of
industry and field.

