Speaking as a Fancy Computer Science Professor at a Fancy Institution of Higher Education who teaches the course on Programming Languages:
-
@inthehands @nikclayton and I’ll date myself here but wordprocessors since WordPerfect lost out to Microsoft Word have made it very hard to actually see what formatting/codes are applied where within your text. Often hiding formatting changes in what looks like white space but really hides a change from heading to subheading to body text or from one font to another etc. And to get the text to do what you want means knowing how the final doc is created from the elements (page format etc)
-
@dpnash @nikclayton
All that. I really appreciate all these historical on-ramps — Applesoft BASIC was mine! — that allow a random curious human’s machine interactions to progressively become more and more programming-shaped. -
@inthehands Not sure why you thought that was sarcastic. Trying to form a mental model of how Word interprets formatting instructions ("Why does the formatting change when I collapsed two paragraphs into one?") and then giving instructions to Word based on that mental model meets the definition.
Contrast that with pounding on the keyboard trying to get it to do what you want without understanding what's going on.
-
@nikclayton
I misinferred the sarcasm. Apologies! We seem to be on the same page here, very much so. -
@dpnash @inthehands @nikclayton exactly this.
And removing this from “modern” word processing tools I think was a deep mistake. It makes the whole fixing formatting a point and click nightmare
-
@inthehands I am still partially agreeing with you. I've referred to spreadsheet gurus as the largest stealth group of functional programmers in the world.
But conversely, if you're defining virtually any interaction with a microprocessor as programming, then the word means everything, and thus nothing. There is a qualitative difference between writing C++ or CSS and playing win-solitaire. How to capture that if not the word "programming"?
-
@inthehands @Crell probably worththile at this point to resurrect https://www.youtube.com/watch?v=uNjxe8ShM-8
-
@Crell
Please study the thread’s invitation to think of this term as a continuum, a quality that some activity may possess in greater or lesser quantity, rather than a boundary with an inside and an outside -
@thinkMoult @Crell
This video never gets old.Also in the same general spirit: https://www.youtube.com/watch?v=xP5-iIeKXE8
-
@inthehands @vkc personally, I'd consider "programming" the intention to formulate an algorithm (yes I study CS at a uni with a strong focus on theory how could you tell?)
However, in this context, it's hardly relevant: when you take away an asshole's argument, they're just gonna find a new one. And if someone says "HTML isn't programming" with the intent to belittle someone, they're just an asshole and need to be told so. -
@inthehands @vkc additionally: Java is interpreted by the JVM and therefore a scripting language, while Perl is compiled and thus a """real""" programming language. Tell that the next person who tries to belittle "scripting languages".
-
@datarama @inthehands functional languages are not Turing complete? Do you have a link explaining that?
-
This post is deleted!
-
This post is deleted!
-
@qsx
(Java is compiled too — JIT-compiled, yes, but it does run as native machine code — unless you disable the JIT compiler and force the JVM to interpret it. But I like the larger spirit of your heckle!) -
Tim Ward ⭐🇪🇺🔶 #FBPEreplied to Paul Cantrell last edited by
@inthehands Go on, then, let's see a noughts and crosses game coded purely in HTML - if it can't be done it's not a programming language.
-
Paul Cantrellreplied to Tim Ward ⭐🇪🇺🔶 #FBPE last edited by
@TimWardCam
Jesus fucking christ, man, it's OK if you fail to read/understand the thread’s argument, but you don't have to reply to •tell• me that you failed to understand it -
An anecdatum for the thread above:
I’m in the process of reworking my personal web site. (It’s better now! It will be betterer soon!) To do this, because I am a fool, I wrote my own static site generator. The new site has thus involved:
- implementing what’s effectively an in-memory nosql database
- that supports and merges multiple data file formats
- with a flexible data transformation layer
- and an interactive data explorer
- and a data-driven presentation layer that that supports multiple template languages
- with scripting support
- and partials support
- that keeps related script, template, and style fragments together using a custom syntax
- and assembles them dynamically
- and scopes CSS fragments to their related component
- and provides good stack traces that give template line numbers
- with a comprehensive regression test suite
- with a custom test harness
- and RSS feeds
- that gather items from heterogeneous data sources
- and support audio attachments (podcasts)
- all of the above basically done more or less FROM SCRATCH
- with a dev web server
- with live updates on change
- and dynamic metadata retrival for audio files
- and dynamic generation of raster previews of PDFs…and do you know what the hardest part of the web site project has been, •by far•?
Writing the CSS.
Paul Cantrell (@[email protected])
@[email protected] …let's be honest: a •lot• of the code that we write in things that are •clearly• programming languages is in fact not that complicated. As one reply pointed out, you can create DOM elements from literals in JS or in HTML; is one programming and the other not? These line-drawing questions are always an express train to Stupidtown. Instead of “Is it programming, YES OR NO?,” a better question to ask is “In what ways is this programming? What problems does that imply?”
Hachyderm.io (hachyderm.io)
-
To be clear, it is •not• the case that being hard is what makes something programming.
I mean, if this is some kind of social hierarchy pissing contest about who’s “technical” and who’s doing “real work” and whatever, then yes it matters. But being hard isn’t what makes it programming.
The question is: what’s made the CSS hard?
- achieving design goals with the available building blocks
- dealing with unexpected semantics
- balancing reuse with abstraction overload
- testing across devices and contexts
- adjusting scope and goals based on implementation difficulty
- preventing and detecting breaking changes, esp in distant code
- taming complexity
- maintaing clarity about larger goals while in the technical weedsI could go on.
-
Per @aubilenon’s excellent post above, a key factor for “Is it programming?” or “Is it art?” or “Is it a game?” is •how• the human(s) are engaging with it.
Well, the previous post tells you how I’m engaging with this thing. If I gave you that list but didn’t tell you the language, would you say it sounds like programming? I sure would.