3 ms·
I think there are a lot more of excellent Python devs than excellent Haskell devs.
by neolog 5y ago
I think there are a lot more of excellent Python devs than excellent Haskell devs.
- zelphirkalt 5y agoWhile that may be true and does not actually oppose what I wrote, I think we are talking about 2 different kinds of excellency. One kind of excellency is to be able to quickly solve problems in one given language. For example an excellent Python developer. There are many of those. The other kind of excellency, in my opinion, goes much further than that. A very solid background in CS, a deep understanding of programming concepts of not only one but many programming languages, some knowledge in programming language theory, knowledge about various programming paradigms, their concepts and how to apply them in problem solving and daily programming tasks. The second kind of excellency I am quite sure to find within a developer, who got a background with Haskell and some proper work done in that on their CV. I would be less sure, to find that in just any good Python developer. Why do I think so? I think so, because Python is becoming more and more popular and is an "easy language to learn" and kind of follows the mainstream OOP approach. So people learning it get some exposure to the other things I count under the second type of excellency, not too bad, but not really that much, unless they are special cases and actively make an effort to get that exposure. In Haskell you are thrown into another not so mainstream programming paradigm, you are learning a not so mainstream language, and you touch on many programming concepts, which you might not necessarily get in touch with using Python. (Don't get me wrong, I write a lot of Python code myself, but exposure to and frequent usage of some other languges, including mostly functional programming ones and strongly statically typed ones, make me miss a lot of things in Python and make me see the language's shortcomings.) That second kind of excellency is learned by studying hard or years of experience, and requires you to dip your toes into unfamiliar waters. This kind of excellency enables you to quickly learn about the power of alternative systems or languges and grasp what they can do for you. In the end it is all about getting to know and understanding lots of concepts. The more exposure you have to different (!) things, the more knowledgable you will be. So even better chances to find an excellent developer of the second kind, if that person happens to have experience in Haskell and Python or whatever other languages you come up with, which are significantly differnt from whatever others one already knows.
- neolog 5y agoSuppose there are 20x [1] more Python developers, though that seems really low to me, I would've guessed more like 500x. Suppose skill is distributed exponentially. How much better is the average haskeller than pythonista? 1.1x? 2x? 10x? Given those assumptions, how many developers at each level of quality are there? I got curious so https://i.imgur.com/kEkmAsf.png https://i.imgur.com/kEkmAsf.png . I think that means average Haskellers have to be a lot better than average Pythonistas before there start being more 5x-quality developers in Haskell than Python (because there are so many Python developers). [1] https://insights.stackoverflow.com/survey/2020#technology-programming-scripting-and-markup-languages https://insights.stackoverflow.com/survey/2020#technology-pr...