I'm not quite sure how I'm meant to feel about this. Some of the things on this list are truly trivial: I don't care if you use a mouse. I don't like to use one, but it's not because I'm a programmer.
Other things on the list are kind of unfortunate. "I don't know how to use awk". I mean, that's totally fine. Lots of people don't. I kind of feel like this is a celebration of ignorance. You don't have to know awk to be a programmer, but awk is useful (even if you aren't a programmer)!
I'm not sure if the author is working through their own imposter syndrome and trying to feel better about themself, or if they are admonishing others who value things that they don't value. I mean it's both OK that you don't know CSS as a front end developer and OK if you think that CSS is important to know as a front end developer (it really is, by the way ;-) ). You don't go from knowing nothing to knowing everything in a day. Where you are is where you are and there is nothing to apologise for. However it's important not to plant yourself there and say "I'm alright Jack. I don't have to go any further. All this other stuff is not important", because some of it is (or can be, if you want it to be).
I couldn't have summarized it better... On one hand, don't feel imposter syndrome. You're paid, you can produce output, good!
We definitely shouldn't be ashamed of ignorance, but celebrating it is not gonna get us anywhere either. Analyze knowledge gaps, study, apply knowledge... Rinse and repeat.
I'm also kind of ambivalent about the post. Wish the author all the best though.
I think this is a ... bad take? Ambiguous and confusing(ed)? I mean - I guess there are people who believe in some stereotype of "real programmers", but this post kind of buys into this stereotype by arguing with it, and then does it in a way to comes of as ... lazy and envious? In this post - some points are straw-man/stereotype and some seem ... to deny worthiness of in-depth expertise, skill and experience.
I'd compare with ...
I like playing soccer, but I'm nowhere near skills of even minor-minor-league or even a skilled amateur, and there might be people that would totally make fun of me if I tried to describe myself as "a soccer player", but it doesn't make me bitter, or discouraged. I just do what I can, it works for me and I feel OK about it. I can still appreciate skills of people better than me and don't deny that they are useful and great to have, and in a way I wish I could have them, but I know it's just will not happen, not because I'm somehow worse human being, but because I have invested my time into different things and my priorities/predispositions are different.
It's unfortunate that I've found it on HN - because it will get a lot of negative publicity, and it seems the author might need actually some positive encouragement?
Honestly, the negativity in the comments so far has me flummoxed. What I see is a person, in a development role, posting about how they have been made to feel inadequate or unsuitable for their role, because they don't know things that aren't necessary for said role.
If someone is succeeding, who cares whether they know Awk? If someone is doing the job and getting paid, who is anyone to make them feel inadequate, call them whiny, etc. What do we gain, both as people and as a community, for snubbing people who post things like this?
Note that I didn't mention whether those things would make them better at their role. They probably would, but it matters less than the bulk of the comments seem to think.
> If someone is succeeding, who cares whether they know Awk?
I'd 100% agree with this (and the following) statements. I think what rubs commenters the wrong way is that the article seems to be almost celebrating the ignorance.
It is of course a pure conjecture on the readers' side, but I think that's mostly what people object to. Not knowing things is OK. Being proud that you get paid despite not knowing things is not accepted in a subculture that prides itself on self-improvement.
I think the impression I had from the article is the author was somehow proud of not knowing things. It's fine not to know things, and it's good to understand there will be countless things you'll never know, and probably even better to be comfortable with understanding that you don't need to know everything, but something about being proud of not knowing something - where it is a badge of honor? - feels weird.
I wish I had a more of a drive to learn new things, more often than I do now. I don't like feeling like I'd be okay with never wanting to learn new things.
I think how you process the article really depends on whether you made it through to the first postscript.
> PS - Don’t forget to be nice to your less nerdy co-workers. Don’t show surprise when they could be about to have a learning opportunity. Make them feel welcome and valued no matter their background and methods.
Without that postscript, I think it is fairly easy to arrive at the interpretation that the author actually celebrates their ignorance (which I also don't think they do).
Personally, I think they make a fair point: a bunch of work places for programmers/software engineers/whatever are dominated by "nerd" culture, such that "outsiders" can feel marginalized, and some of us nerds might do well to acknowledge that fact and remember the times when the roles were reversed.
I can't understand why this upsets me.. I mean, this is obviously a person not interested in computers, and, that's really okay. But somehow, I'm left upset, maybe by the choice of ignorance? Maybe I feel offended by this person not caring how to learn the basics..
And, that's entirely my problem.. If they're fine with it, then that's all that should matter.
Damn, I was 13 years old when I ran my first webserver, I started by installing the OS and configuring Apache (got a lot of help on IRC) and I remember having to find a place, physically, to put it.. I was eventually allowed to place it in a room in the school, they arranged a static IP, and the trade was that they could also use it for hosting some image files..
I got my first domain back then, had to fax forms, on paper, with signatures, in ink, to hostmaster :D
Anyway, I guess, I'm offended because the things this person does not find interesting enough to learn, is the stuff that got me hooked.. Even in recent times, when, a few years ago, I discovered the awesomeness that is JQ.. And this person, they've not bothered to learn it, even though it's so damn good and can do so much for them...
Maybe I'm annoyed on their behalf.. But I've no right.
If they're happy, that's all that matters, and all I can do is rant, and wish the world was more like I wanted it. ;-)
Maybe I'm upset because this person tells me that they don't care enough to learn all the things I think are cool and that people should learn, because I like them.. My problem, entirely.
They have programming as a career first while you have it as a hobby first. I wouldn't consider them wrong for doing this, but your annoyance at someone using your passion as a tool for their ends also is not unfounded.
That's actually a good point, I didn't think about that, for me, it is my hobby, my passion and my career, and it does just rub me, when people are doing it without the passion part. Again, I can't defend that emotion, it just does. It's like seeing this thing you care about, not receiving the care you feel it deserve I guess.
I have lots of friends in the industry who never care to do things correctly. It always bothered me. Not that I'm perfect - or even that I always do things better than they would - but often their solutions to problems are only the 'beginning' of what I'd call the software development process: getting it working (or worse, apparently working).
I think this is exactly the difference between a programmer and a software engineer. A (successful) software engineer should understand how memory works, what a server is, how to plan a project and predict the obstacles, and a lot of other stuff said in the article.
But if you don't wanna bother with that, and just want to make some cool websites, that's totally fine. You are still definitely a programmer, just not a software engineer.
Ohh and in most cases, don't expect to be paid like a software engineer.
There is no hard definition of a server. I think OP finds the fact that people use the word all the time when it doesn't mean anything confusing - they feel there is a load of secret knowledge that other people have that they don't. But a lot of the time people just use terms without worrying about whether they actually know what these words mean or not.
Any network enabled machine responds to network packets with other network packets. Is that a server? Does it have to encapsulate a 'service' in some way? What is a service? Is this a higher level concept than tcp? Maybe it has to be something useful to someone, whatever that means. So OK my client machine starts running iis, is it a server now? I just use iis to test my Web page as I develop it, no one else connects to it, well apart from Steve who helps me with testing, he connects to my machine and it serves up the pages. We could go on.
When someone says they don't understand something, make sure you do before telling them they should.
If anyone took a second to read any of this lady's other content, she seems like quite the special flower. Not saying that I disagree with her that you don't need to know everything to be a programmer but she also blatantly lies in the article.
I poked through her github and she definitely knows how to write css. Articles like this make people feel alright with complacency, it's fine to be an okay or new programmer but you should always be trying to improve what you are doing.
Maybe this is just one of the majority of journal entries in the world that aren't particularly interesting. The author was feeling insecure about some things and decided to write them down. It just so happens her journal is public. There wasn't a lot of thought or research put into this, it's just a feelings dump that reflects her mood at the time. Maybe she's a capable developer that just feels disconnected from the rest of the huge world of software and is hard on herself sometimes. Maybe she does like learning new things and getting better at her job. Maybe she has other interests outside of development, and that's fine too. Her company pays her to stick around and do work, and it's been working out for them. Overall, I think some of the comments are overly harsh and judgmental -- not that they're not welcome, but let's be thoughtful.
Define 'Real programmers™'. I couldn't care less of what 'Real programmers™' use. Use what ever you want to get the work done quicker, to generate more cash that pays everyone's bills on time. So to me, whatever these Real programmers™ use is irrelevant unless it makes the most cash.
But if your choice of experimental tools on your workstation are affecting the quality of the work negatively or if you're too busy for weeks configuring your dotfiles to work with that shiny editor, then I would just give you a MacBook Pro or just get rid of you.
In fairness, we are all just learning. I've been at this a long time and a lot of this comes down to personal choices and using the right tools to be productive in your environment.
Mouse or no mouse? your call. RTFM? your call. Plan or no plan, your call (although if someone else is paying the bills then this may not be your choice).
There is no right or wrong way, its whatever helps you be productive. If we all followed everyone else we would still be flicking switches on an Altair. So if everyone around you wants to wear a hat while they code, that's cool but it does not mean you need to. Fashion is for fools.
List as a whole is already summarized in other comments, but one item attracted my attention because it is commonly held attitude: many programmers express scorn for shell scripting and bash in particular (probably the only shell they heard about).
As a result we have a vicious cycle: programmers refuse to learn shell scripting. When they have to write a shell script they produce a crappy one. Problems caused by badly written shell scripts only confirm their belief, that the shell scripting should not exists.
(The article started fairly reasonable laughing off some cliches about mac and mouse and whatnot, but when I got to the part of "I don't like planning" or "What is server" or lots of other _super_basic_ stuff it became clear that it is just a celebration of ignorance: she doesn't know some stuff and she is proud of it. "I don't like reading" - after these words I decided that either she is a murky troll or just sadly proud-to-be-dumb person.)
Other things on the list are kind of unfortunate. "I don't know how to use awk". I mean, that's totally fine. Lots of people don't. I kind of feel like this is a celebration of ignorance. You don't have to know awk to be a programmer, but awk is useful (even if you aren't a programmer)!
I'm not sure if the author is working through their own imposter syndrome and trying to feel better about themself, or if they are admonishing others who value things that they don't value. I mean it's both OK that you don't know CSS as a front end developer and OK if you think that CSS is important to know as a front end developer (it really is, by the way ;-) ). You don't go from knowing nothing to knowing everything in a day. Where you are is where you are and there is nothing to apologise for. However it's important not to plant yourself there and say "I'm alright Jack. I don't have to go any further. All this other stuff is not important", because some of it is (or can be, if you want it to be).
Edit: grammar and clarity