{"id":1226,"date":"2019-04-24T15:41:11","date_gmt":"2019-04-24T15:41:11","guid":{"rendered":"https:\/\/2019.montclair.wordcamp.org\/?post_type=wcb_session&#038;p=1226"},"modified":"2019-04-29T23:12:24","modified_gmt":"2019-04-29T23:12:24","slug":"css-is-a-programming-language","status":"publish","type":"wcb_session","link":"https:\/\/montclair.wordcamp.org\/2019\/session\/css-is-a-programming-language\/","title":{"rendered":"CSS Is A Programming Language"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">CSS can be a source of deep frustration for developers, both new and experienced. Over time, this has resulted in a portion of the web community with a fundamental misunderstanding of CSS \u2013 not only of how to write it well, but of what CSS is in the first place: a domain-specific, declarative programming language.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Familiar programming concepts are all over our style-sheets&#8230;but you must learn how to see them! This talk will examine the overlaps between CSS and traditional programming concepts \u2013 such as conditional logic, algorithms, and OOP \u2013 to help us better understand CSS.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>CSS can be a source of deep frustration for developers, both new and experienced. Over time, this has resulted in a portion of the web community with a fundamental misunderstanding of CSS \u2013 not only of how to write it well, but of what CSS is in the first place: a domain-specific, declarative programming language. [&hellip;]<\/p>\n","protected":false},"author":7627115,"featured_media":0,"template":"","meta":{"_crdt_document":"","jetpack_post_was_ever_published":false,"_wcpt_session_time":1559386800,"_wcpt_session_duration":3000,"_wcpt_session_type":"session","_wcpt_session_slides":"","_wcpt_session_video":"","_wcpt_speaker_id":[1181],"footnotes":""},"session_track":[1102072],"session_category":[],"class_list":["post-1226","wcb_session","type-wcb_session","status-publish","hentry","wcb_track-downstairs"],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p9HzQy-jM","session_date_time":{"date":"June 1, 2019","time":"11:00 am"},"session_speakers":[{"id":"1181","slug":"lara-schenck","name":"Lara Schenck","link":"https:\/\/montclair.wordcamp.org\/2019\/speaker\/lara-schenck\/"}],"session_cats_rendered":null,"_links":{"self":[{"href":"https:\/\/montclair.wordcamp.org\/2019\/wp-json\/wp\/v2\/sessions\/1226","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/montclair.wordcamp.org\/2019\/wp-json\/wp\/v2\/sessions"}],"about":[{"href":"https:\/\/montclair.wordcamp.org\/2019\/wp-json\/wp\/v2\/types\/wcb_session"}],"version-history":[{"count":1,"href":"https:\/\/montclair.wordcamp.org\/2019\/wp-json\/wp\/v2\/sessions\/1226\/revisions"}],"predecessor-version":[{"id":1227,"href":"https:\/\/montclair.wordcamp.org\/2019\/wp-json\/wp\/v2\/sessions\/1226\/revisions\/1227"}],"speakers":[{"embeddable":true,"href":"https:\/\/montclair.wordcamp.org\/2019\/wp-json\/wp\/v2\/speakers\/1181"}],"author":[{"embeddable":true,"href":"https:\/\/montclair.wordcamp.org\/2019\/wp-json\/wporg\/v1\/users\/notlaura"}],"wp:attachment":[{"href":"https:\/\/montclair.wordcamp.org\/2019\/wp-json\/wp\/v2\/media?parent=1226"}],"wp:term":[{"taxonomy":"wcb_track","embeddable":true,"href":"https:\/\/montclair.wordcamp.org\/2019\/wp-json\/wp\/v2\/session_track?post=1226"},{"taxonomy":"wcb_session_category","embeddable":true,"href":"https:\/\/montclair.wordcamp.org\/2019\/wp-json\/wp\/v2\/session_category?post=1226"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}