Is knowing HTML & CSS considered programming?
Hypertext Mark-up Language or HTML, is a form of defining the structure of webpages. It is a form of language that gives authors the means to communicate with online browsers. Cascading Style Sheets (CSS) is also a similar form of language to assist HTML. The difference is that HTML is to communicate the structure of the webpage and CSS tell the browsers how to style these structures.
Although these two may be considered as a form of code, there has been debate about whether HTML & CSS are considered as programming languages. Some people may consider this as declarative programming; a type of programming that tells the machine what you would like to happen and lets the computer figure out how to do it. However many argue that HTML is essentially a data format which can be compared to writing text in a word processor. CSS however, may be classified into this type but is usually grouped with HTML in the debate.
So why do programmers disregard them as programming languages? The main argument is that programming is written to solve a problem with an algorithm. HTML & CSS do not have this element as they are merely declaring the structures and styles for different browsers. There is also a different mindset required when jumping from declarative to imperative languages which can be described as entering a new world. Imperative programming requires a specific reasoning to indicate with the computer how things happen. This mindset is what sets a programmer apart as they are used to describing how to make things happen rather than whatwe want to happen.
Thus, to declare yourself as a programmer from merely learning HTML and CSS will probably be frowned upon by many programmers. Learning these two languages certainly assist with working towards the imperative mindset and may consider you as a beginner in the programming world. However, it is important to remember that it should not be confused with imperative coding.
Kalin, J. (2015). Thoughts on Declarative and Imperative Languages. Thinkful.com. [ONLINE] https://www.thinkful.com/blog/thoughts-on-declarative-and-imperative-languages/ [Date Accessed 25.09.2015]
John  Not Real Programming. Web Directions. https://www.webdirections.org/blog/not-real-programming/ [Date Accessed 25.09.2015]
HTML & CSS (2015). W3C. [ONLINE] https://www.w3.org/standards/webdesign/htmlcss [Date Accessed 25.09.2015]
Romy, B. (2015). Why HTML is Not a Programming Language. School of Information Studies. [ONLINE] https://ischool.syr.edu/infospace/2012/04/05/why-html-is-not-a-programming-language// [Date Accessed 25.09.2015]