6 ms·
The Difference Between Programmers and Coders (2013)
- yawz 13y agoPotato - Potahto.
- jedmeyers 13y agoIt's from the same side of the argument as the "Software Engineer is not really an Engineer" phrase.
- ericHosick 13y agoI think it is important to distinguish between the two. It is possible to program a computer without coding. Currently, the tools to do this are very domain specific. I think, in the future, there will be domain agnostic development tools that will let people program software without the need to write code.
- jedmeyers 13y agoWhy do you think that it's important to distinguish between the two? The fact that it sometimes possible to program a computer without coding does not relay the "importance" of distinguishing, since it's not done on a regular basis and usually is called "configuring", or "defining workflow" but not "programming".
- ericHosick 13y ago> Why do you think that it's important to distinguish between the two? It is important because programming doesn't always involve coding. It is important because language can limit or expand our thinking and definitions play a role in that. I think it is important to strive for moving away from coding as the primary means of programming a computer so we can democratize software development. So, we should not redefine the definition of programming to be "coding a computer". > since it's not done on a regular basis I don't think this is a very good litmus test. > usually is called "configuring", or "defining workflow" but not "programming" We used to say "program a VCR". The word is even defined as "the action or process of writing computer programs." There is no mention of coding as being a required aspect of the programming process.
- chrismcb 13y agocoding is a synonym for programming. No need to distinguish the two. If you can program you can code, if you can code you can program. Talking about software design or architecture is something different.
- ericHosick 13y ago> If you can program you can code, if you can code you can program. If you consider people who use scratch (http://scratch.mit.edu/ http://scratch.mit.edu/) as coders, then I would agree with you. But, to me, it doesn't look like they are coding. It looks like programming using something other than coding.
- dschiptsov 13y agoOh, come on.) btw, the first chapter of The Programmers Stone explained almost everything about two decades(?) ago. All this could be summarized in one sentence: Programmer is a writer, like Orhan Pamuk, coder is a translator from Turkish. Or, according to the classic - programmers are "mappers", they are inveting abstractions. Coders are "packers", they are writing piles of Java classes for a paycheck. Even simpler. Coders are Georges. (Those who have seen SICP lectures would understand instantly). Update: my two cents to what it is to be a writer. Look, there are a standard qwerty keyboard in front of you. All required symbols (letters and digits) are here. You know the rules how to compose them into words of English, and how to chain words info sentences. So, go ahead, open a notepad, or even Emacs, and write, say, 1984. It will be much better than any silly startup, you don't have "to Java", you need no AWS and Docker, you don't have to hide the fact that you cannot grasp Design Patters, etc. All you need is in front of you, all the knowledge is available since secondary school. You could even apply some agile practices. It also could be that you are esthetically sophisticated person, so you may would like to use a fountain pen and paper, or a pencil and a notebook - just go ahead. We are not asking about poetry or, god forbid, classic music composition, which is even closer to what programming is.
- btilly 13y agoI remember The Programmer's Stone. It fell into that dubious genre of essays that draws a false dichotomy that there is no particular reason to believe is real, then puts all of the positive characteristics on one side, so that readers have a new label to apply to themselves so that they feel good, and a corresponding label to apply to everyone they don't like. I wasn't impressed by that addition to the genre at the time, and I've seen nothing since to make me think that I should have been.
- dschiptsov 13y agoI think that you somehow did an analysis of writing style instead of the meaning. The distinction is quite simple, some people are interested in how things work and why, others just use them (usually in a wrong way). I suggest you to read Zen and Art of Motorcycle Maintenance, it is about exactly the same segregation, but in a much more poetical wording. And then at least a half of Atlas Shrugged, to complete enlightenment.)
- umsm 13y agoI believe the author merged the responsibilities of a "programmer" with an "Technical architect". To become a good programmer, all you need to do is enjoy reading books, enjoy coding, and work at a moderately sized company. An architect is different. You have to understand the picture as a whole. You have to understand that one stupid decision can affect the entire product or company's future. Hurrying to implement excellent code (as a programmer) won't could cost the company many weeks or months or effort to redo.
- Rumudiez 13y agoI like this distinction, because to me almost every coder is a programmer, but there are still more theoretical positions such as technical architects who don't necessarily even touch the code.
- jamestomasino 13y agoThe difference is a matter of arbitrary semantics. The quote in the beginning is nothing more than a setup of an argument from authority (http://en.wikipedia.org/wiki/Argument_from_authority http://en.wikipedia.org/wiki/Argument_from_authority). The only takeaway of value is that, yes, there can be a functional difference between designing logic and implementing it. This in no way means you can only do one or the other, or that any specific job or title dictates that you'll do one or the other. This might as well have been titled, "The difference between a senior developer and a junior one."
- vertis 13y agoI would consider most of the points as the difference between a senior "Programmer" and a junior "Programmer" rather than "Coder".
- spacehome 13y agoThe difference is hubris.
- longtimeranon 13y agoWith the media coverage of code.org, Leo the Homeless Coder, and the code schools and bootcamps springing up everywhere, the message the general public is getting is that whatever "coding" is and whatever "coders" do doesn't really take a whole lot of skill or effort. If anyone can apparently do it with a few weeks of training, why should they be paid $80-100+k? Either coders=programmers and we should expect increasing competition and decreasing wages, or self-described programmers need to somehow distinguish themselves from the unskilled "coder" masses. Yet in these very comments, every response I've seen is essentially endorsing the "coding is easy and anyone can do it" message. It's strange to see so many otherwise intelligent people advocating for their own marginalization. Doctors would never say things like "everyone should learn medicine" or "anyone can be a doctor." Instead they erect barriers to entry to eliminate competition and force you to pay for their services, driving up the cost of health care, and the stupid general public loves them for it. What is wrong with programmers? Are we simply too egalitarian for our own good?
- zedshaw 13y agoNo, this isn't really the case. What I see, as the guy who wrote the book that tells people that learning to code is hard but possible, what people are realizing is that programming is hard, but possible. Programmers are simply confusing the fact that people are attempting to learn it and succeeding in greater numbers than before with the idea that all these new entrants all think it's easy. The truth is I see them all say it's damn hard, but if they put the work in they can learn it. Another thing they realize after getting through my book is just how long it'll take to get good. They don't take what they've learned lightly, and they don't think it was trivial to learn. What this ends up doing is giving everyone who attempted it a healthy dose of respect for what we do. I'm a coder. I've been a coder a huge chunk of my life. This attempt to label "coder" as some kind of idiot is really pissing me off, especially when I see it coming from programmers who don't realize that more people learning an introduction to code means more people will appreciate and understand what they do. Now, the site is down so I haven't read the article, so take my comment as only replying to what you said, not the article.
- longtimeranon 13y ago
- m_mueller 13y agoIn German we use a different terminology for the whole field. It's called 'Informatik', as in the science of processing information. The people doing this are thus called 'Informatiker'. This alone helps, I feel, in making people understand that there is some degree of formal training behind it, that 'Informatiker' aren't just code monkeys. Granted, many still use the term Software Engineer today, simply because Engineer degrees have a higher entry barrier and thus have a better sound to them (you can get 'Informatiker' degrees without a higher education by doing an 3-4y apprenticeship at 16, a very common way of how education works in Germany and Switzerland). In any case I think that the English speaking CS pioneers have failed to coin a good term for their field - CS just isn't right, especially regarding the English definition of 'Science'. It also leaves non-CS-degree holders who practice this job in a sort of vacuum about what to call themselves.
- deleted 13y ago[deleted]
- ggchappell 13y ago> ... I think that the English speaking CS pioneers have failed to coin a good term for their field - CS just isn't right, especially regarding the English definition of 'Science'. Definitely. And even the "Computer" part causes confusion. I'm a C.S. professor. The man on the street thinks I teach people to use MS Word. Alas, so do many textbook publisher reps, along with the occasional prospective student.
- vellum 13y agoGoogle cache text version: http://bit.ly/1gZj3kQ http://bit.ly/1gZj3kQ
- gdiocarez 13y agoHmm, The site takes too long to load.
- CmonDev 13y agoIt's good for us, developers, to know the difference between you :).