223 karma · joined October 9, 2012
Uh, interesting take… I think many would say he was silenced/disappeared by the CCP for daring to openly speak against it.
Really, OCaml’s syntax is beautiful, unless you’re one of those people who loves to show off how adept they are at typing matching braces, parentheses, commas, and semicolons. Writing a little lambda in C++ is an impressive display of manual dexterity… [&](…,…){… return …; }; Who would rather write that than let f x y = … in?
The only way I’d improve OCaml syntax would be to add something like python style list comprehension.
I feel that conflating tariffs with some sort of negotiation tool to bring about positive global change is disingenuous, because the real aim is clearly protectionism.
The part about giving a competitive advantage to local producers is true, though…
I sometimes think it’s useful to think of myself as a mental athlete. My job is to perform intellectual feats of strength in controlled efforts. The rest of my time I spend preparing for those efforts by relaxing.
I really hope the typed-vs-not-typed debate is over... types > no types. However... I used to believe that types were essential. I now believe that they are more like a luxury. Good tools are a luxury, not fundamental—it’s way more important to have good software design, and the core of good software design is really tool-independent. It requires deep understanding of whatever problem you’re trying to solve, not a deep understanding of software tools—-unless you’re unlucky enough to be building some horrible middleware.
I also like to dabble in photography, where you see a similar phenomenon. When I take a really great photo, people sometimes remark, “wow, you must have a really great camera!” No, actually, that’s the least important part of the equation. There’s a reason why Canon’s top-of-the line lenses are the “L” series—the L is for luxury. They make the job a little easier, but they’re not really essential.
So, similarly, SWEs are engineers to the extent that they use widely accepted models to solve design problems. People building compilers, databases, or OS schedulers might be called engineers, because there are relatively well accepted (but evolving) models of the performance and capabilities of those things—-although those models are perhaps less universally accepted than say, Newton’s laws. Hacking, on the other hand, is not engineering, because it is not backed by something like a well-understood model. It therefore tends to command less respect, as the output of such activity is less certain—since there is no good predictive model to judge whether that activity will achieve the goal.
This makes me believe it is actually just memorizing the movie script, which is probably in its corpus. As pointed out here, the model has enough parameters to straight-up memorize over 1/3 of its gigantic training set.
Although this is somewhat of an extreme example, I'd say most of my tensorflow models take at least several minutes to build a graph. Anything that reduces the possibility of runtime errors would therefore speed up my development cycle dramatically. I'll also note that the OCaml compiler is lightning-fast compared to say, gcc.
There was a bug in Donohue and Levitt's code which, combined with other factors, makes the effect go away, supposedly: https://www.economist.com/finance-and-economics/2005/12/01/o...
Instead of administering thinly-veiled intelligence tests, interviewers should hire based on two factors: technical skill, and more importantly, the ability to acquire it (i.e., learn). You don't want to hire (or be) a person who believes in the fiction of genius. You want to be and hire the kind of person who believes and demonstrates that ability is a deterministic function of practice, not genes.