Earlier quoted context omitted.
This kind of leadership gave us Go. It's not necessarily bad. If everyone gets their way with the language specs, then all languages will look like a weird dialect of C++ :)
How are the Go leadership style and what OP described even remotely the same? Language safe-guarding, maybe. Imagine having your production code hostage to your relationship with the language authors... Go leadership makes me feel like the language is safe and reliable. The Elm leadership, as described by OP, just triggers my "its a sect" alarm
Why I’m Leaving Elm
311–320 of 450 posts
Re: Why I’m Leaving Elm
#312Earlier quoted context omitted.
Maybe this extreme limitation is necessary in the Elm's author vision. It's open source. You can always fork and implement your own vision. In fact, you're encouraged to do so.
Did you read the blogpost? Apparently you're not encouraged to do so.
It looks like an open source project. I don't get your point.
Re: Why I’m Leaving Elm
#313After reading a large number of the responses here, I feel like I've noticed a pattern - two types of comments: 1) I've used the language and agree with the conclusions of the post even if I don't necessarily agree with every point. 2) I haven't used the language, but I believe open source projects must be maintained by their maintainers as they see fit. I actually agree with both of these positions, but, having used…
I think there’s also a third category, which is “I’m interested in Elm / have dabbled in it but all this puts me off ever using it for anything serious”. If the comments in this thread aren’t ringing red alarm bells for the Elm leadership I don’t know what will, frankly.
It showcases an interesting architecture and has lessons for Haskell-style languages in how to make compiler error messages that aren't hideous
Re: Why I’m Leaving Elm
#314After reading a large number of the responses here, I feel like I've noticed a pattern - two types of comments: 1) I've used the language and agree with the conclusions of the post even if I don't necessarily agree with every point. 2) I haven't used the language, but I believe open source projects must be maintained by their maintainers as they see fit. I actually agree with both of these positions, but, having used…
> But, as many others have pointed out, if one has to maintain a project over the years, the breaking changes in the language would have caused great bouts of teeth gnashing. This isn't just a problem for Elm but for front-end development in general. Not so much because of JavaScript the language, but because of the libraries and, to a much lesser extent, the browser APIs. In the library and framework space many take…
Re: Why I’m Leaving Elm
#315Earlier quoted context omitted.
Out of curiosity, what keeps you from pinning elm version in your projects unless you are a library developer?
Not the OP, but I can think of a few reasons: * security patches * browser compatibility changes * build tooling compatibility (unless you pin that too, but that never works for long)
Re: Why I’m Leaving Elm
#316This criticism is spot on; it is exactly what I observed in late 2018, early 2019 as well. It's an awesome language, but there is basically a big case of 'vendor lock-in'. Certain compiler features are only available to the maintainers, nor is there any way to use alternative package sites. I don't want to know what would ever happen if the Elm developers decide to take https://package.elm-lang.org offline. That will…
That's not correct, you can just inline any package into your vendor folder in your project. And the package website is just an index, the sources need to be on github in the first place (this has some problems too), but if the website is down, you can still grab them from github.
Re: Why I’m Leaving Elm
#317Earlier quoted context omitted.
That's what many people (myself included) have done. Unfortunately by not sharing our experiences, others will have to learn things the hard way. If Evan is entitled to run Elm however he wants, Luke is entitled to post whatever criticism he wants on his own blog. If nobody ever speaks up, do you think things will actually ever get better?
To be clear, I don't have a problem with Luke posting his experience, but there's a difference between reporting the news and reporting your feelings. I think about half that article could be deleted, and it would still hold content of "why I'm leaving," but without building this huge drama oriented narrative.
Re: Why I’m Leaving Elm
#318There are trade offs that they are making that I totally understand. There is one way to do things. There is one path to fix things. Everything works one way and works incredibly well.
But those trade offs come at a cost. It is very hard to take Elm into production having to put all of your trust in Evan and the few in his company. There are going to be times that your bugs are not considered bugs by the core team. There are going to be times when your required features are considered harmful to Elm by the core team. Other projects allow you the freedom to work around those sorts of things. Elm has tightened things so this is very hard to do. Elm has made huge wins by doing that. But it makes Elm in production a much harder sell.
I love Elm I want to use it production. But I don't want to have to front to my manager trying to explain we can't do X because I picked a technology that met my needs as a developer but not failed to meet the needs of the business.
Evan has every right to build Elm as he sees fit but it's painful to sit here as a dev and see something so perfect yet have to go for something so terrible for commercial considerations.
Re: Why I’m Leaving Elm
#319I've been working in Elm for a few years, and I feel like I can answer some of the questions. 0.19 introduced a new restriction on Native code (javascript), previously you could compile kernel code in your own projects, now you can't. You've never been able to publish a package using native code to the package site (only packages under the elm or elm-explorations github namespace can). If you feel strongly about it t…
Who's questions? The author didn't have questions about those things.
And I'm quite certain that the author is well aware of being able to edit a shell script to get around that restriction—and even if they don't, that doesn't change the content of the post.
> The 0.19 upgrade was fairly large, but manageable ..
For _you_, but not for everyone. Can you discount all of the experiences for those whom it wasn't manageable, and for those for whom it was impossible?
> .. an Elm package that hasn't received any updates in a year probably isn't abandoned ...
This wasn't always true. It's one of the reasons why the community forked several packages that authors had abandoned.
> .. most Elm code looks similar due to using the elm architecture ...
Oh dear. There's still so many approaches, and packages, about the different ways that people approach it.
* I wrote Elm professionally for 3 years from 2017-2019
Re: Why I’m Leaving Elm
#320Earlier quoted context omitted.
I used elixir for the backend and its paid off in dividends. That said, I had a year of experience working with it so it was boring technology for me at that point.
I use Elm on two large websites in production with users. Elm helps me come back to these projects after months and, in two cases, a whole year, and get immediate work done without recredentializing in the whole codebase (which I have to do with my React projects to a greater extent). You definitely can't be a fragile developer to use Elm, and I think the small community size makes people feel like others are obligat…
This innocent line has a lot behind it, and probably a lot of PTSD for Elm developers.
The Elm compiler has a --debug flag that would compile with a useful debugging window. It was fundamentally broken for how long? A year?
There were many, many posts about it in that time, several community forks etc. There was little comment on this from Evan or the inner circle.
The debug flag being broken, and seemingly ignored, is a horribly beautiful example of the blog post. Imagine having effectively the only debug tool broken for your main programming language