What ‘is’ coding?
This post is merely an explanation of a point I was trying to make on Twitter last night, but 140 characters just wasn’t enough.
Matt Hill raised the point that HTML and CSS skills are not actually coding skills as they are fairly intuitive and quite easy to start learning. I agreed with this point and consider actual coding to be core JavaScript and languages such as PHP.
Later that evening, Matt Hamm suggested that a lot of PHP could be considered as HTML. Again, this was something I agreed with and so made the point that I consider PHP, in the context of coding certain parts of a WordPress theme to be dynamic HTML.
This point is easy to misunderstand as I didn’t actually mean coding a WordPress theme is not also programming, it’s somewhere in-between. When you write some code to dynamically change anything then that is programming, but the chances are it will also be wrapped in HTML and therefore becomes what I consider to be dynamic HTML.
So, to conclude, this is all just my opinion and yours will no doubt be completely different. I’m more than happy for you to add your opinion in the comments.
Matt said on 3rd Jan, 2012:
I’d disagree that “a lot of PHP could be considered HTML” — even if you’re only writing some simple code to generate basic HTML, PHP is still a separate language and a programming language at that.
I know I’m being overly picky about the semantics, but it’s borne out of frustration. There are too many web designers who say they “code” when they barely understand HTML and CSS and would not have a clue what to do with a multi-dimensional array if it bit them on the bum.
Add to that the current movement to get people coding this year, and I’m just concerned that this varying understanding of what coding means (in a web development context) is actually more confusing than helpful — for newbies anyway.
The term coding comes directly from the history of writing computer code for programming purposes. Web-devs have appropriated it somewhere along the line to mean any sort of code, including HTML. HTML is not code in that sense, it’s a document markup language and can’t *ever* be considered programming, so I just find calling it “code” to be both misleading and an over-inflation of its complexity and purpose.
Anny said on 3rd Jan, 2012:
I was drawn into the orbit of this discussion with Matt above earlier today but the distinction sounds pretty clear to me: “coding” is the writing of code (regardless of how it is later executed or interpreted), while “programming” is the writing of a program. If I were to call myself a “coder” and only wrote HTML, that would be semantically correct; how else should I refer to myself? A markupper? Please.
@ Matt: your view seems based on a confused (maybe just outdated, and faintly elitist?) understanding of the verb “to code”. Perhaps it is your understanding of the language involved, or lack thereof, at fault rather than that of lightweight developers.
Matt said on 3rd Jan, 2012:
I understand what you’re saying, and why “coding” has become this catch-all phrase, but I think it’s misleading.
If you say you’re “coding”, web industry types will most likely assume you’re a developer, and “developer” is most commonly understood to mean programmer, is it not?
You would not employ a programmer who could only “code HTML”.
I write HTML, CSS and some jQuery in the course of most projects. I also write a bit of PHP. This doesn’t make me a programmer; I’m first and foremost a designer. I therefore don’t see that “coder” is an appropriate label for my skillset, because for me personally it implies a level of programming that I neither understand nor am interested in.
My view is that “coding” simply doesn’t accurately reflect what is being undertaken when we write HTML. It’s markup, it’s document description, it’s translation. But it’s not code.
Steve Rydz said on 3rd Jan, 2012:
Thanks for commenting guys!
You both make some valid points here.
I guess designers that can write HTML and CSS want to draw attention to it because, although I certainly think they are essential skills for a web designer, there are many out there who never really venture outside of Photoshop and Illustrator.
I myself have become victim of the ‘I can code’ problem. I can write HTML and CSS to what I consider to be a high standard, and my jQuery skills are about average, and I know my way around WordPress, however when it comes to programming talk like arrays, integers and what-have-you, I’m lost.
It is my intention to become at least average at core JavaScript this year, but I would still call myself a designer over a developer any day.
Anny said on 4th Jan, 2012:
@ Matt: again, it sounds like you’re extrapolating too far from the basic meaning of the verb “to code”. Whatever you call a length of code, it is still ultimately code. So self-identifying as a coder remains semantically correct even without programming knowledge, and is only misleading if your interpretation makes it so. You ARE a coder. You’re just not a programmer.
Ultimately, the meaning of “coder” isn’t going to change for some time now it’s been adopted by 99% of the industry as a catch-all, especially amongst the significant non-technical proportion of that who wouldn’t know their OOP from their ASCII. Whatever you call yourself isn’t going to make a shred of difference to them, and people who need more detail than a noun are going to press you for it anyway. Your argument is a rejection of standard vocabulary in some sort of attempt to be recognised more definitely, which seems to me rather… not pointless, but I don’t really see the advantage in it.
Feel free to coin & popularise a term for “coder that doesn’t program” though. If everyone else starts using it, inevitably I will too. Mainly in a derogatory sense ;)