Saying “X is weird” is equivalent to saying “I don’t understand X, and I blame X for it.”
I often have to make this point in discussions of programming languages. I enjoy writing in Haskell, and I’ve taught it to a number of developers. People who are accustomed to imperative programming languages are quick to term Haskell “weird”. When I ask what they mean by this, it usually boils down to the fact that it’s different from what they’re accustomed to, and they don’t understand why the differences are necessary or useful.
A “weird” language feature is one that seems gratuitous because, almost by definition, you don’t yet understand why the language authors would’ve designed it that way. Once you understand the reasoning behind it, the weirdness evaporates. Of course, you might still reasonably hate the design, but it’s impossible to give a fair critique without a proper understanding.
For instance, criticising Go for its lack of generics misses the point of what Go is for—to be a simple, boring language, with minor improvements on the status quo, that admits good tooling. And Go does this admirably. It’s not going to advance the state of the art in the slightest. It’s not going to shape the future of programming. It is going to be a language that people use for writing regular old code right now.
To shamelessly misappropriate a quote from Tim Minchin: “Throughout history, every mystery ever solved turned out to be not magic.” If you find yourself thinking that something is weird or magical, that’s not an excuse to dismiss it out of hand—rather, it’s an excellent opportunity to dig in and learn something enlightening.
Thanks, this is generally helpful.
ReplyDeleteStill, I followed step-by-step your method in this Python Online Training
Python Online Course
Thanks for sharing this in here. You are running a great blog, keep up this good work.
ReplyDeleteOnline degree courses
Distance education
Nice article with valuable information. Thanks for sharing.
ReplyDeletePython Online Training
Artificial Intelligence Online Training
Data Science Online Training
Machine Learning Online Training
AWS Online Training
UiPath Online Training
Good blog. Keep sharing. I love them Are you also searching for Cheap assignments? we are the best solution for you. We are best known for delivering writing services to students without having to break the bank
ReplyDeleteAppreciate your sharing this one. A must read article!
ReplyDelete토토
프로토
안전놀이터
I found your site perfect for me. It comprises of brilliant and valuable posts. Keep up the good work..
ReplyDelete스포츠중계
스포츠토토티비
토토사이트
토토
ReplyDelete배트맨토토
먹튀검증
Goodd site you’ve got here.. It?s difficult to finnd good quality writing like yours these days. I seriously appreciate peoplle like you! Take care!!my blog