Speaking as a Fancy Computer Science Professor at a Fancy Institution of Higher Education who teaches the course on Programming Languages:
-
@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.
-
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.
-
The point of all my table-thumping is that when machines are involved, lots of things turn into programming — complete with all the challenges and pitfalls that entails.
We have strategies for dealing with those challenges and pitfalls. Recognizing programming wherever it emerges can help us meet those challenges, or change the problem to avoid them.
Drawing bright lines about what is and is not programming is actively harmful in those situations. We’d damn well better recognize programming when it comes up and bites us.