I’m an elm lover. I’m using elm in my developer life, as both for my personal projects and for consulting or industrial projects. I think it’s one of the best language in those past years, and I globally agree on the design decisions of the language.
I strongly think that closing native/kernel code is a good idea (and that’s how it should be since the beginning). I’m not writing V8 bytecode when writing JavaScript, why should we when writing elm? But, in the last post about Native Code in 0.19, one point bothered me. I got the feeling that @evancz is alone writing, developing, designing elm. OK, he’s delegating some work to others (mainly in elm-community and elm-explorations), but when looking at elm-lang in github, Evan is the main contributor for the majority of the packages. I feel that Evan is the guarantee that elm is working. We’re all dependent of a software written by one person. (Have a look at GitTrends is you have some doubts.)
What about the bus factor? And what about the time that Evan can spend to both maintain elm, develop new features, think about technical debts, etc. and having a happy life? In the last post of Evan, he said:
I can focus on any web platform libraries that are show stoppers for people.
That reinforces the growing feeling I got since the beginning. Evan is working for everyone, and will one person be sufficient for supporting the entire community? What will happen when the community will be larger than today?
In another language, you can do what you want when jumping in, and if you disagree with the leadership, well, you can always write what you want on your own. In elm you will not be able to do it. So if you really need some thing and can’t deal with the actual solution (i.e. ports, for good reasons), you can only ask the community and hope that Evan will take care of your problem (or maybe elm-explorations will be able to solve your problem?).
I really would like to open the discussion (and not ended up in trolling), to get a better overview of the elm state today, how it will evolve, etc. It is a real question for me those days. I feel that people could be angry about Native Code interdiction because it feels like an arbitrary choice ; because the “Tell me what you need to do, I’ll tell you how to get by” is not a correct answer ; and because the people able to solve the problem once and for all (and not trying to easily solve it with ports) will not respond (because he doesn’t have time for this, I think). I feel like we could do things better, maybe by involving more persons in the elm team, maybe another way I don’t know.
Once again, I don’t exactly know where to post this? I don’t know if it’s the good place or if it resides on Slack or on Google Groups, but I think that posting it here publicly could be good to reassure people and showing that the community is aware of its problems and tries to fix it the best way possible!
If I’m wrong about those feelings, I think it would be so cool to have a place which can easily be found be everyone, exposing the elm development philosophy, and how it is planned to evolve.