5 ms·
> I really don't get the confusion around JOINs Nearly all programmers get locked into thinking in terms of sequential, imperative programming, and the big dif
by da_chicken 5y ago
> I really don't get the confusion around JOINs
Nearly all programmers get locked into thinking in terms of sequential, imperative programming, and the big differences are procedural vs OOP. They think that's always what programming looks like. They never learn to think in any other terms. They think functional programming is a weird outlier and looks like Lisp.
It's not entirely their fault. This is all they're typically taught in school. They're taught they don't need to think any other way than how Java, C, or C# tells them they should.
So they're not used to thinking in terms of sets. They're not used to declarative programming. Indeed, they'll often argue that anything other than general purpose, imperative programming isn't "real" programming. That's why Professor Brailsford from Computerphile got so much flack for saying that HTML was a programming language.
- bruce343434 5y agoTo be fair, I wouldn't consider HTML (or Markdown) a programming language. It's in the name, [] Markup Languange
- deleted 5y ago[deleted]
- da_chicken 5y agoYes, that's just what the YouTube comments insisted. I'm not really interested in the argument, but all you've said so far is "it's domain specific" or "it's not Turing complete", neither of which are actually requirements for programming languages as a whole. It's not particularly difficult to devise a sufficiently loose definition of "program" that HTML fits into, too. Or, rather, it's difficult to envision a definition that LaTeX fits into and HTML+CSS fits into and SQL fits into and LISP fits into and so on, but HTML does not without your argument simply restating "it's domain specific" or "it's not Turing complete". However, it's also not a particularly interesting discussion, either, because the only purpose behind such categorization is to assign value judgements like "a 'real' programming language can be used for systems programming".
- shrikant 5y ago> [...] because the only purpose behind such categorization is to assign value judgements like "a 'real' programming language can be used for systems programming". And the other unstated purpose is gatekeeping. Oof, for such a relatively risk-free, comfortable and privileged profession, we're such an insecure lot.
- paulddraper 5y agoBut CSS is a programming language because it's Turning complete*? And Regex isn't a programming language because it's not Turning complete? It's natural to for me to say that writing a regular expression is programming a state machine. * https://stackoverflow.com/a/5239256/1212596 https://stackoverflow.com/a/5239256/1212596