1,262 karma · joined March 27, 2019
Wow, do you really equate long prose with "generated content"? Long prose is novels, deep non-fiction books, long letters, and much more. You can like them or not. In comparison "generated content" is sugar-coated garbage, like way too many social media posts. There was never any point in reading such "generated content".
I've been an assistant to a professor teaching introductory programming at a university. And we chose ML (later Haskell), as the first programming language, exactly because of this reason. Weaker students with no programming experience can build their knowledge on top of their mathematical knowledge from school. Whereas stronger students, with lots of programming experience, were challenged to reconsider their assumptions. Both groups did learn significantly.
> Your math department doesn't begin with addition
Well, ... actually, ... "Mathematik für Informatiker I" (mathematics for computer scientist I) did start with groups, then abelian groups, i.e. addition.
Very well said, at the university where I studied, there was a pre-semester math repetition course. It was a week long and started with addition of natural numbers. After two days, everything I learned in 13 years of school had been repeated. That was a brutal resetting of expectations. But it made everybody clear, that this is not school anymore. That a different kind of work and focus would be necessary.
How do they learn biology?
In closed-world, system-software, or low-level software you want to have your kind of knowledge about everything you call. Even more: can it block?
In open-world, business-software, or high-level software it is often impossible or impractical to know all the ways in which a function or method can fail. What you need then, is a broad classification of errors or exception in the following two dimensions: 1. transient or permanent, 2. domain or technical. Those four categories are most of the time enough to know whether to return a 4xx or 5xx error or to retry in a moment or to write something into a log where a human will find it. Here, unchecked exceptions are hugely beneficial. Coincidentally, that is the domain of most Java software.
Of course, these two groups of software systems are not distinct, there is a grey area in the middle.
As far as I understand, Erlang has one heap per actor. The cost is that messages have to be serialized to pass from one actor to another. But it means there are lots of independent, often tiny heaps which don't need very complicated GCs.
Consider this example:
def someFunctionName(Int firstParameter, Boolean secondParameter, String thirdParameter)
Let's say, that line is too long. We could format it like this: def someFunctionName(Int firstParameter, Boolean secondParameter,
String thirdParameter)
Or we could format it like this: def someFunctionName(Int firstParameter, Boolean secondParameter,
String thirdParameter)
Or event his def someFunctionName(Int firstParameter,
Boolean secondParameter,
String thirdParameter)
In the second two variant the indentation depends on the length of someFunctionName, so it is not necessarily a multiple of four or whatever your tab width is.There are other similar situation when aligning in multiple columns, etc.
> But requiring user permissions for apps to do shady shit is a good thing.
Can you name one professional software developer?
Probably, you can. But I don't want to limit myself to that sub standard environment. I love my iPad for some activities, for others iOS is just impractical.
Btw, "Labor" cannot be in charge, outside the UK at least, because Labor is an abstract concept. In Marxist societies people are in charge that pretend to have the laborers best interest in their hearts. But as they "Some are more equal than others."