I believe there is at least one other thing I got from the post: that he shouldn't have to abandon Scala, perhaps because doing so is to give in to a sort of injustice (in his mind)?
Cops experience professional deformation. Most of the other humans they see at work have been bad or have been involved in something bad. This eventually has an effect on anyone. It's not a good effect. They start to expect it in other people, they start to assume the only folks they can trust are the ones they usually see doing the "right" thing (other cops). This turns them into bad people.
The effects only get more pronounced in a society where literally every lunatic could have a gun and could therefore murder you at the drop of a hat. Trusting a strange situation will mean your death, eventually. It's inevitable.
This is therefore not a matter of distrust, because you don't need faith or trust to know certain things about the transformative effect this would have on people. They live under mortal threat every second they're outside in uniform. They're going to be monstrous.
Exactly. I've worked for cops (taking care of police orphans/half orphans) for three summers when I was younger.
They're ultimately good guys (well, as good as any random guy is, not worse not better) but their experience of the society turns them into distrustful, clanic semi-sociopaths. The fear of other people reactions is ingrained.
The one that marked me is that they were afraid of local teens chatting up with our teens and learning they were police children, and passed that fear to all kids by saying extremely weird and violent shit they probably believed, but were ultimately lies. They wanted the children, most of them orphans, to avoid talking to regular kids outside of the camp, and lie if they did.
Not bad guys inherently, but clearly fucked up by their job.
I think Double Categories [1] would be a more appropriate setting: In a double category, the vertical and horizontal arrows are of different types. In usual commutative diagrams, they are of the same type.
I agree about no filter*, I disagree with your reasoning. Scala (2) as a language is quite simple. The complexity came from the incredible power of its building blocks (e.g. implicits and path-dependent types). The lack of filter, as I felt, was moreso on how different two Scala codebases could be. That was part of the point though -- a scalable language, which means changing to the needs of each team.
Which also means less transferable knowledge. That killed it for me. If you muscle through it you'll get there, sure, but in the meantime I found languages that have smaller surface, are just as (or more) productive, and you can be onboarded in a project in half an afternoon.
reply