{"id":179,"date":"2009-09-18T22:47:00","date_gmt":"2009-09-18T22:47:00","guid":{"rendered":"http:\/\/sdi.thoughtstorms.info\/?p=179"},"modified":"2009-09-18T22:47:00","modified_gmt":"2009-09-18T22:47:00","slug":"179","status":"publish","type":"post","link":"https:\/\/sdi.thoughtstorms.info\/?p=179","title":{"rendered":""},"content":{"rendered":"<p>To return to a theme I <a href=\"http:\/\/www.nooranch.com\/synaesmedia\/wiki\/wiki.cgi?DecompositionByLanguageIsProbablyAModularityMistake\">started<\/a> many years ago, I commented on <a href=\"http:\/\/glyph.twistedmatrix.com\/2009\/09\/oh-atangled-web-we-weave-from.html\">this excellent article<\/a> about why web-site development has got so damned hard. (And remember when we all thought of web-apps as lighter and simpler than desktop apps? What happened?)<\/p>\n<p>Anyway, here&#8217;s my comment.<\/p>\n<p>I think the problem is less the multiplicity of programming languages, than our insistence that we should always be separating our languages in different places.<\/p>\n<p>This goes against the basic tenets of cohesion and coupling. We cluster unrelated activities together because they happen to have the same syntactic sugar, while separating tightly-coupled activities because half of them happen on the client and the other on the server. Why the hell should this implementation detail have to be reflected in our architecture?<\/p>\n<p>What I&#8217;d like, controversially, is to be able to mix-and-match the languages within the same source file, grouping together the python, javascript, html and sql that actually has to work together in one place. I have no trouble dropping into regular expressions or similar DSLs from inside my main code, why should dropping into a layout or query language be different?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>To return to a theme I started many years ago, I commented on this excellent article about why web-site development has got so damned hard. (And remember when we all thought of web-apps as lighter and simpler than desktop apps? What happened?) Anyway, here&#8217;s my comment. I think the problem is less the multiplicity of [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[287,496],"class_list":["post-179","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-modules","tag-web-apps"],"_links":{"self":[{"href":"https:\/\/sdi.thoughtstorms.info\/index.php?rest_route=\/wp\/v2\/posts\/179","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sdi.thoughtstorms.info\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sdi.thoughtstorms.info\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sdi.thoughtstorms.info\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sdi.thoughtstorms.info\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=179"}],"version-history":[{"count":0,"href":"https:\/\/sdi.thoughtstorms.info\/index.php?rest_route=\/wp\/v2\/posts\/179\/revisions"}],"wp:attachment":[{"href":"https:\/\/sdi.thoughtstorms.info\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=179"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sdi.thoughtstorms.info\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=179"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sdi.thoughtstorms.info\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=179"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}