Live data from Hacker News

Elm changed my mind about unpopular languages

blog.realkinetic.com

291–300 of 321 posts

Re: Elm changed my mind about unpopular languages

#291
post #73

This is common reaction to Elm and especially to Elm. I also use Elixir and it has great community and everything, but somehow Elm is even more. All the concerns about 'unpopular' languages, lack of tooling, I feel it is quite the opposite. Elm formatter changed how I work and now I started using it in other languages, Elixir and JS are using it more, or maybe I just started paying more attention. There are other sma…

When you say smarter programmer I understand what you mean. But the way I look at it, Elm allows me to relax and be a dumber programmer. I commit my smarts up front to the type design and interfaces between types and then I can relax as the project grows from there because the compiler will enforce the invariants I've encoded into the types. Pure Bliss.

> Elm allows me to relax and be a dumber programmer

Yes, this! I don't feel smart enough to write programs well in JavaScript. Elm brings clarity and confidence without having to second-guess myself all the time (thanks to the compiler and fantastic error messages).

Re: Elm changed my mind about unpopular languages

#292
post #103

Earlier quoted context omitted.

datomic has both soft delete (retraction) and hard delete (excision).

He was working in a health startup and this was something like a couple of years ago. He said that datomic was immutable so actually deleting things to HIPPA standards was not possible I think. They might of fixed it by now.

Having installed a medical records system for live-fire use by an optometry practice, I can say that it's exceedingly rare that you ever want to delete anything that is logged in a medical records environment. It's so rare that it's never been done on the four or so years I've been maintaining the system.

Re: Elm changed my mind about unpopular languages

#293
post #92

Earlier quoted context omitted.

But are language enthusiasts really better hires in general? I've known many of them who loved the theory and toying with a language but were not any better at producing actual value than the average joe.

> But are language enthusiasts really better hires in general? I've known many of them who loved the theory and toying with a language but were not any better at producing actual value than the average joe. I think they may be safer hires, anyway. They will be able to program themselves out of a wet cardboard box, which is more than you can say about the average Joe who may just be good at bluffing the interview.

Aren't you just as likely to get people who excel at hyping and hello-worlding new languages but can't actually make applications? Or people who just read the python paradox (with python scribbled out and Elm written over it) who think they can look like a great developer who understands the value of Elm but really don't?

Re: Elm changed my mind about unpopular languages

#294

Earlier quoted context omitted.

Worth noting that in our experience, hiring has gotten way easier for us since we became an Elm shop. We really struggled to hire React engineers (who have a zillion positions to choose among - why would they pick ours?), whereas there seem to be a lot more great programmers who want to use Elm than there are companies hiring for Elm positions. Here's a verbatim quote from a cover letter (one I happened to be reading…

Specifically with respect to the hiring advantage it’s a little disingenuous to not explicitly state that the creator/designer of the language works there. That’s a significant enough reason to pick one shop over another and also a reason to opportunistically apply. “You get to work with Evan/Guido/dhh/Gosling” is a different sell than “we use Elm/etc”.

Part of the reason we hired Evan was because the hiring advantage had been so great already, we started to ask the question "how do we maintain this hiring advantage as Elm gets more popular and the Python Paradox eventually wears off?"

I don't think we're especially close to that happening yet, though. Obviously the opportunity to work with Evan is a big differentiator for us among Elm shops, but the cover letter I quoted exemplifies a person whose reason for leaving their current position was that they wanted to work with Elm, not React.

There are plenty of opportunities for companies to attract people like that. :)

Re: Elm changed my mind about unpopular languages

#295
post #57

Earlier quoted context omitted.

F# is a bit surprising, since it’s already on top of a mainstream platform. If all else fails you can glue in C# if you ever find that you really can’t do something with F#.

Isn't Elm built on top of maybe the most mainstream "platform"? JavaScript? If all else fails you can glue in some JavaScript via its ports system[1]. [1]Languages like PureScript provide a much more convenient FFI for this glue, but the glue and escape hatch is still there with Elm.

That's an apples to oranges comparison...

F# and C# compile to the same intermediate language, are interpreted on the same runtime, and are produced by the same organization for the same IDE... Their libraries are compatible and they rely on shared access to the common .net ecosystem.

Your absolute worst case scenario would involve decompiling your F# source as C#. More realistically you would use dependency management to gracefully transition out of one of the languages.

Transitioning piecemeal works exceptionally well: it's exactly how I've transitioned numerous projects away from C# onto F# ;)

Re: Elm changed my mind about unpopular languages

#296
post #220

Earlier quoted context omitted.

Worth noting that in our experience, hiring has gotten way easier for us since we became an Elm shop. We really struggled to hire React engineers (who have a zillion positions to choose among - why would they pick ours?), whereas there seem to be a lot more great programmers who want to use Elm than there are companies hiring for Elm positions. Here's a verbatim quote from a cover letter (one I happened to be reading…

You really ought to disclose that you also hired the language's BDFL when you make comments like these. With that said, I sort of agree with the sibling comment here. Most other people involved with a language that I've seen are still able to make objective criticisms about it.

[deleted]

Re: Elm changed my mind about unpopular languages

#297

Earlier quoted context omitted.

I definitely disagree that java is looking like - or even starting to - python did in 2004, it still has a huge market share, even compared to python. Yes python is definitely more popular now, enough so that the python paradox doesn't even apply, but it will probably never apply to java, or at least not in the current computing paradigm.

Yes sorry, I worded that badly and didn't intend to mean that Java was in any way like Python was in 2004. Only that Python is no longer something you'd consider someone smart for using.

The Python-Paradox-Paradox.

Re: Elm changed my mind about unpopular languages

#298

Earlier quoted context omitted.

> The general rule of thumb that a larger active community leads to faster software development is more or less still true. There is no reason to suspect this is not the case with Elm. Yes, and not only because the volume of copy-paste source code on StackOverflow. I suspect Elm is slower to get a feature out, but once it is out you spend less time fixing bugs in feature A caused by adding feature B silently changing…

> The community tends to have smarter on average people in it. Simply because all the less smart people are put off. Sounds elitist? Maybe. Have you thought about the possibility that it's actually a community of people who first and foremost _consider_ themselves as being smarter than the rest? Maybe this is what's really off-putting to equally smart, but more humble developers?

Not with elm. Its a nice intersection of smart and down-to-earth / helpful types. And "smart" here means "conscientious, passionate developer smart" not "born with 200 IQ". I don't get any impression that elmers "_consider_ themselves as being smarter than the rest" from talking on the reddit etc. Haskellers though, I think it's a different story, but YMMV.

Re: Elm changed my mind about unpopular languages

#299

Earlier quoted context omitted.

> The general rule of thumb that a larger active community leads to faster software development is more or less still true. There is no reason to suspect this is not the case with Elm. Yes, and not only because the volume of copy-paste source code on StackOverflow. I suspect Elm is slower to get a feature out, but once it is out you spend less time fixing bugs in feature A caused by adding feature B silently changing…

> There is a community. The community tends to have smarter on average people in it. Simply because all the less smart people are put off. A community shouldn't be judged based on how smart everyone is (quite a difficult measure), a more useful metric would be how many useful community libraries there are. For example, if I can choose between 50 carousels implemented in React vs. 2 in Elm, and I'm an average develope…

> This is a big problem with 2007 JavaScript and jQuery. React/Vue and other declarative VDOM frameworks bring the Elm philosophy to the masses.

But ... in addition to npm/babel etc. you need a wetware constraint checker. React says "human: make sure your data is immutable - please don't forget or something might break later in production". Elm says "I guarantee immutability"

Re: Elm changed my mind about unpopular languages

#300

Earlier quoted context omitted.

> A community shouldn't be judged based on how smart everyone is (quite a difficult measure), a more useful metric would be how many useful community libraries there are That seems more of a metric for an ecosystem than a community.

It's presumptuous to assume "community A is smarter than community B". It's just not even the right question to ask. Better questions to ask are "what are third party libs like?", "how active are people in this community?", "how active is the SO and other forums?". These are actionable questions. "People who use Elm are smarter" is simply not actionable information. What does it even mean? It's meaningless.

> It's presumptuous to assume "community A is smarter than community B"

You can e.g. Rocket scientists VS. Janitors.

Note what I am not saying (which people might take offense to) is "you use Vue not Elm, so you are dumb". Nope of course that isn't true!. I am saying in aggregate, due to selection biases etc, Elm attracts smart people. A lot of really smart people will stick to popular frameworks and not use Elm. Some bad programmers might use Elm for some reason. Aggregates are what I am talking about.

> "what are third party libs like?", "how active are people in this community?", "how active is the SO and other forums?". These are actionable questions.

These are good questions.

Another question though is: how much do I trust another library to not have bugs? Given Elm's design vs. vanilla JS, I'd go for Elm. That confidence extends to "How much do I trust a Library I knocked up over the weekend to solve an previously unsolved problem in Elm".

Post reply on HN