4 ms·
> I wouldn't hire a JS programmer who was afraid or unwilling or unable to learn Elm. Would you hire an Elm programmer who was afraid or unwilling to learn pr
by orange8 7y ago
> I wouldn't hire a JS programmer who was afraid or unwilling or unable to learn Elm.
Would you hire an Elm programmer who was afraid or unwilling to learn proper JS?
- busfahrer 7y agoAlso I want to throw in that learning a new paradigm (Elm) is something else entirely than going from one imperative language to another one.
- 0_gravitas 7y agoIn all fairness the functional paradigm isnt exactly all too hard to grasp (when it comes to what you need to be effective at least, you dont need to understand what a monad is, I still dont!). I started learning Clojure completely cold going through Exercism and it took me maybe 2 weeks of doing a problem a day (not much work at all) before I felt like I started to "get" FP. In fact, I would say it's even easier in a lot of cases because FP is a much "purer" skill set- any imperative language still uses functions, and arrays, and switch statements, and overloading. In FP, you have all of those familiar concepts (just presented in a possibly different way) but you dont need to worry about how classes work at all, or even loops in some cases!
- orange8 7y agoWhat most people do not realize, is JavaScript was designed as a functional language, with a C-like syntax. When I talk about learning proper JS, I mean getting back to its functional roots, because that where it really shines.
- carapace 7y agoWell... If you started with Elm then JS/CSS/HTML+Frameworks|Transpiled-langs et. al. would, I imagine, seem like a massive amount of stuff to learn, eh? I think the Elm-first programmer would be right to ask, "What's the payoff? What awesome new powers do I gain, impossible with Elm, as reward for all this blood sweat and tears?" (Elm is wildly easier to debug than the status quo stuff. The compiler is awesome for that. So the hypothetical Elm-first programmer has to learn not just the status quo stack but also how to debug it!) So, again, it seems to me like it behooves the cost-conscious programmer to carefully examine the cost/benefit ratio of non-Elm-implementable features in light of the availability of Elm. I am presupposing, like I said above, that you can take pretty much any member of the Sudoku-solving public and train them up in Elm in a few weeks. Even paying them at parity with JS devs, the time and effort savings of Elm vs. JS et. al. would be substantial, I believe. (Personally, I would want at least two or three people on the team who knew what was going on under the hood.)
- orange8 7y agoSo you're ok with an elm programmer not willing to learn JS, but not ok with the reverse. That just sounds like good old fashioned tribalism; and personally I'd never hire a tribal programmer, whether that tribalism is about a great language, or the latest coolest JS framework. What I'd look for is an open, sharp mind. Willing and happy to learn new things and paradigms, even those that go beyond their comfort zones, whether it is JS, Elm or Java. Someone to whom programming languages, frameworks and libraries are just TOOLS to accomplish a certain goal, and not part of their identity.
- frenchy 7y agoI'm not sure where you're coming from, but when I'm looking for a job, I pay attention to the tools that companies have picked, and if I get the chance to ask them, why. A company that picks good tools is a lot more attractive to me. All other thigns being equal, if I had to choose between a company that used JS, and one that used JS and one that used Elm, I would prefer the Elm one. I've never written a line of Elm before. I'm willing and happy to learn new tools. I'm happy with hiking in flip-flops if that's all that's available, but I'd certainly choose hiking boots if given the choice. I suspect most "good" developers have the same attitude.
- orange8 7y ago> I'm not sure where you're coming from, but when I'm looking for a job We are discussing the flipside of that: looking for an employee/teammate. And I agree, a company that uses better tools is always more attractive. > would prefer the Elm one. I've never written a line of Elm before If you've never written a line in it before,how did you decide that its a better tool?
- carapace 7y ago> So you're ok with an elm programmer not willing to learn JS, but not ok with the reverse. That's not exactly the spirit of what I meant, but, yes. > That just sounds like good old fashioned tribalism I can't really control what it sounds like to you, can I? My whole point is that Elm is (or one day soon will be) much superior to JS et. al. This is a cost/benefit analysis, not tribalism. (I'm not an Elm fanboy. I don't actually like it that much, in fact.) It's puzzling that more JS programmers don't adopt Elm. It's reasonable for an Elm developer to ignore JS to the extent possible. That's the point of Elm, eh? > What I'd look for is an open, sharp mind. Willing and happy to learn new things and paradigms, even those that go beyond their comfort zones, whether it is JS, Elm or Java. Someone to whom programming languages, frameworks and libraries are just TOOLS to accomplish a certain goal, and not part of their identity. Sure! Me too. But now I can make the scarcity argument, no? And you've got to pay those folks well, eh? I'm postulating that you can take normal people (smart enough to solve Sudoku) and have them productive in Elm within a month or so. You probably would not have to pay them as much as an equivalently-productive JS programmer, and certainly not as much as the kind of person you described. Again, I'm talking about the business value of a given software production tool not the entertainment value or the personal-growth value for the devs.