{"id":52,"date":"2014-02-23T20:53:01","date_gmt":"2014-02-23T20:53:01","guid":{"rendered":"https:\/\/margotdarby.com\/news\/?page_id=52"},"modified":"2014-03-19T01:37:17","modified_gmt":"2014-03-19T01:37:17","slug":"devblog-page","status":"publish","type":"page","link":"https:\/\/margotdarby.com\/news\/devblog-page\/","title":{"rendered":"Devblog Page"},"content":{"rendered":"<p>This isn&#8217;t really a devblog, friends.<\/p>\n<p>It&#8217;s more of a scratchpad for draft versions of articles and essays. I used to be a writer, but writing got too hard for me, so I dug clams and collected driftwood for a while.<\/p>\n<p>A couple of dev-related drafts that I am poking away at are:<\/p>\n<p><strong>1) How Programmers Are Ruining the Web.<\/strong> The back-end people have moved into the front-end, and brought their video-game-boy culture with them. Process-oriented outlooks, black-hole projects, multiple layers of abstraction, obscurantist jargon, conference fads. Too many scripts and preprocessors and remote links. (&#8220;Dependencies,&#8221; as we say in dev cant.) Pages go down and <em>no one can fix them because they were generated by kidneystone.js and webmangler, and nobody here now can do that, and anyway the servers got migrated so we&#8217;re not sure where this code lives<\/em>. Ten years ago if you had a broken link it usually meant nothing worse than a missing image or a bad URL. Now it often breaks the entire page.<\/p>\n<p><strong>2) Slacker Jobs Have Vanished.<\/strong> <strong>This Is a Bad Thing.<\/strong> A tangential backstory to the foregoing. Artistic and technological progress both depend upon an ample supply of easy-to-get &#8220;day jobs&#8221; for our creative risk-takers. (They are not really &#8220;slacker&#8221; jobs, but I call them that here because that is how they are often regarded, inasmuch as they are not career-oriented.) Golden Age was 1980-2000. Steady decline since then. Bad for business, bad for society, bad for culture.<\/p>\n<p>[ADDENDA 18 mar 2014:]<\/p>\n<p><strong>3) Dev-Tech Jargon is wrongheaded, misleading, obscure. Why?<\/strong> Particularly noticeable in web development.<\/p>\n<p>Big example: The pieces of a webpage are collectively called the DOM. But what does DOM mean? <em>Document Object Model<\/em>? That\u00a0is as clear as mud, and\u00a0probably less useful. There&#8217;s a <em>Document<\/em> here, certainly; but there&#8217;s no <em>Object<\/em>, not in the programming sense. (Object is another near-meaningless term\u2014see below.) And <em>Model<\/em>? It&#8217;s not a Model; it&#8217;s the final result, the end-product, the actual real-life thing that shows up on your screen. Alternative phrases for DOM are <em>Presentation Layer <\/em>and<em>\u00a0Page Markup <\/em>and<em>\u00a0Source Code with related assets. <\/em>These all have slightly different meanings, but they aim in the same approximate direction as DOM, and they are user-friendly besides.<\/p>\n<p>Then you have API, supposedly for <em>Application Programming Interface<\/em>. Ask ten developers what an API is, they&#8217;ll give you fourteen different answers. So far as I can tell, an API is a set of shorthand instructions that the site programmers create and make available to the general public, in order to enable outside developers to come up with add-ons and customized implementations. Isn&#8217;t there something else we could call this? How&#8217;s about <em>Toolbox<\/em>?<\/p>\n<p><em>Closure<\/em>. Does anyone know what a closure in Javascript is? Lots of people think they do. They don&#8217;t.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"thumbnail alignright size-medium wp-image-94\" alt=\"peas\" src=\"https:\/\/margotdarby.com\/news\/wp-content\/uploads\/2014\/02\/peas-236x300.png\" width=\"236\" height=\"300\" srcset=\"https:\/\/margotdarby.com\/news\/wp-content\/uploads\/2014\/02\/peas-236x300.png 236w, https:\/\/margotdarby.com\/news\/wp-content\/uploads\/2014\/02\/peas.png 250w\" sizes=\"auto, (max-width: 236px) 100vw, 236px\" \/>Then you&#8217;ve got the ever-popular\u00a0<em>var<\/em>. <em>What <strong>is<\/strong> a var?<\/em> The term \u00a0is apparently short for variable. However, a var is\u00a0<em>not<\/em> a variable. &#8220;It&#8217;s sort of like a container,&#8221; an instructor once told me. I thought of a can of peas, only without the peas, and with the label removed. This didn&#8217;t help me a bit. Because a var is <em>not<\/em>\u00a0a container, and it&#8217;s not <em>like<\/em> a container; it&#8217;s more like the thing in a container\u2014a pea, say. A single pea that you name <em>Fred<\/em>, or <em>myPea<\/em>. It&#8217;s a single identifiable instance of something, and it&#8217;s identifiable because you give it a name. And why do you give it a name to make it identifiable? So you can write code to tell it what to do. <em>Here, Fred, roll across my screen\u2014back and forth, back and forth\u2014and double in size every five seconds! Attaboy, Fred!<\/em><\/p>\n<p>I can&#8217;t tell you why Dev-Tech jargon is so awful, but I sense these problems go back a long way. Back at least to the early days of OOP, or object-oriented programming. Before my time. Maybe it all began with OOP. Do you know what object-oriented programming means? It just means modular programming. You try to design each section of your code as a separate, reusable building-block. So why didn&#8217;t they call it building-block programming, or prefab programming, or modular programming? Because then it would be too easy to understand?<\/p>\n<p>Yes, I think that could very well be part of it.<\/p>\n<p><a class=\"thumbnail\" href=\"https:\/\/margotdarby.com\/news\/wp-content\/uploads\/2013\/01\/margotdarby.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone  wp-image-7\" alt=\"margotdarby.png\" src=\"https:\/\/margotdarby.com\/news\/wp-content\/uploads\/2013\/01\/margotdarby.png\" width=\"576\" height=\"150\" srcset=\"https:\/\/margotdarby.com\/news\/wp-content\/uploads\/2013\/01\/margotdarby.png 960w, https:\/\/margotdarby.com\/news\/wp-content\/uploads\/2013\/01\/margotdarby-300x78.png 300w, https:\/\/margotdarby.com\/news\/wp-content\/uploads\/2013\/01\/margotdarby-624x162.png 624w\" sizes=\"auto, (max-width: 576px) 100vw, 576px\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This isn&#8217;t really a devblog, friends. It&#8217;s more of a scratchpad for draft versions of articles and essays. I used to be a writer, but writing got too hard for me, so I dug clams and collected driftwood for a while. A couple of dev-related drafts that I am poking away at are: 1) How [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":1,"comment_status":"open","ping_status":"open","template":"","meta":{"jetpack_post_was_ever_published":false,"footnotes":""},"class_list":["post-52","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/P6KTdR-Q","_links":{"self":[{"href":"https:\/\/margotdarby.com\/news\/wp-json\/wp\/v2\/pages\/52","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/margotdarby.com\/news\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/margotdarby.com\/news\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/margotdarby.com\/news\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/margotdarby.com\/news\/wp-json\/wp\/v2\/comments?post=52"}],"version-history":[{"count":9,"href":"https:\/\/margotdarby.com\/news\/wp-json\/wp\/v2\/pages\/52\/revisions"}],"predecessor-version":[{"id":55,"href":"https:\/\/margotdarby.com\/news\/wp-json\/wp\/v2\/pages\/52\/revisions\/55"}],"wp:attachment":[{"href":"https:\/\/margotdarby.com\/news\/wp-json\/wp\/v2\/media?parent=52"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}