The Coding Brain

Learning a coding language, in my opinion, is very similar to learning a spoken language. You need to learn how to read and write it well (perhaps not fluently, but well) in order for yourself, as well as others, to understand what you’re communicating. The way a server or browser might not be able to fully interpret poorly-written, broken code, it’s often difficult to understand someone who perhaps speaks broken English (and they’re likely frustrated that they’re unsure their message has gotten across as well).

But, what has really intrigued me over the years is that it tends to seem that our minds differ in our comprehension and capability to learn one language and yet not the other, regardless of complexity. I’m a web designer, not a programmer. I can read, write, and understand HTML and CSS pretty much fluently. Yet, when it comes to say JavaScript and PHP (though I can work comfortably with and around them and have learned at least the basics over the years), is still utter Japanese to me (for someone who only knows how to count to ten in Japanese).

Through tutorials, I can accomplish quite a bit with JS and PHP, but since I can’t actually read it, I’m often concerned about quality. For example, I might accomplish something, but I don’t know how eloquently I’ve done so. For example, say you’re in an unfamiliar country for the first time and you manage to translate a basic message “Bathroom”. Sure, they’ll get the gist of it and point you in the right direction. But, I’d much rather say: “Excuse me sir, do you happen to know where the nearest restroom is? Thank you.” See the difference? That’s why I’ll often ask questions on expert forums or hire a professional programmer to validate and improve my work. It’s still my work, my original idea and creation, but it just got a new paint job with quality assurance.

Over the years, I’ve worked with, consulted, communicated, supported, hired, been hired by, and a million other scenarios, thousands of people all over the world on all different kinds of projects. One of the many things I learned in that time is that no two people see the same language (coding or otherwise) the exact same way. Not just in perspective, comprehension, or quality, but in interpretation of complexity. While I consider HTML and CSS to be very simple (anyone can learn it in my opinion) and consider JS and PHP to be quite complex, it turns out that many programmers feel the same, but in reverse. Many programmers can read, write, and understand all sorts of programming languages, but actually find CSS design to be complex and confusing!

I was astonished to learn this. I’d always assumed that anyone that could program in complex languages would find HTML and CSS to be child’s play, incredibly simple. And that’s really not the way it is at all. Granted, there are some people that can simply read, write, and understand any language they set their mind to with little learning curve at all, but that’s not as common as I once thought. So, it really comes down to every individual’s brain and how they learn and what they can comprehend, intelligence and complexity in this case, really have no relevance because there is no standard. Everyone is basically seeing it differently.

I would’ve liked to of taken a poll, but there are simply too many different coding languages out there. Instead, I’d like to ask you what you consider to be the easiest code language and which you find to be the most difficult. It doesn’t matter whether it’s server-side programming or client-side scripting or whatever. I’m simply talking about code of any kind.

  • Jason

    so far I can only say HTML is the simplest language I know

  • I tend to agree that HTML is the simplest of all. But perhaps some don’t quite understand the closing tags and hierarchy, especially with menus and lists.

  • My experience is quite the same as yours, Bryan – I am also very familiar with HTML and CSS, I can deal “somehow” with PHP and JS, but I can’t fluently read the latter.

    And indeed, I also found many programmers are very unfamiliar and also uncomfortable especially with CSS.

    First of all, there’s a very important difference between HTML/CSS and PHP/JS: While the latter are “real” programming languages, with control structures, loops, cases, etc., nothing of this exists in HTML, which is a markup language – and CSS, which is purely declarative.
    However, CSS never works on its own, but only in connection with its HTML or more precise, the DOM that is built from it. And long, specific selectors can be confusing indeed (that why programmers love preprocessors like SASS to write CSS, while I consider it “nice to have” at best).

    In the end, I guess that pure web workers and pure programmers have indeed different ways of thinking (though recently, I’ve met a growing number of folks that are brilliant in both).