1. 20
  1.  

  2. 5

    He describes a more general tendency - the one to apply the expectations raised by well-funded corporate-sponsored open source projects to smaller hobby projects. And to the ones stuck somewhere in between, like Elm.

    1. -2

      Language design is a vanity project. Why would anybody fund somebody else’s vanity project when they could use the money to fun their own vanity project?

      If somebody enjoys designing and implementing their own language, then good for them for being able to do something they are passionate about.

      The vanity (or strategic marketing, depending on your point of view) language development of corporate languages are invariably going to be better funded than individual, or group, projects.

      The world does not owe anybody a living. Be thankful for having the resources to spend time on a vanity project.

      1. 18

        Why would anybody fund somebody else’s vanity project when they could use the money to fun their own vanity project?

        Because you find value in it. The same reason people pay subscriptions to Netflix or their favorite YouTuber, or have subscriptions to Patreon’s of game modders or anyone else.

        The world does not owe anybody a living. Be thankful for having the resources to spend time on a vanity project.

        Where does this sentiment come from? I didn’t read anything about anyone owing anyone anything in the linked post.

        1. 9

          Can you define “vanity project” here? It seems you are making a value judgment, the phrase implies that such projects have little value aside from stroking one’s ego. I wonder what has value, in your eyes.

          Are you saying that because computer languages already exist, there is no value to having new languages?

          Do humans already communicate perfectly with computers? Do computers perfectly meet humanity’s needs? Are computer programs free of bugs and vulnerabilities? Are all programs fast and efficient, user-friendly, and easy+quick to develop properly? Is there no room for improvements over existing languages that might help address these issues?

          1. 9

            For elm specifically its designers seem to have very strong opinions on how to do things “right”, to the detriment of users (see e.g. https://dev.to/kspeakman/elm-019-broke-us--khn)

            A major way to have a software project create a steady income flow is to get companies on board (they’re much less cost sensitive than individual users) but pulling the rug under their feet is a sure way to make sure that this won’t happen.

            So for elm specifically, I think “vanity project” is an apt description.

            1. 3

              Agreed, and “getting companies on board” doesn’t necessarily mean compromising design decisions like he describes. If people are willing to invest in your alternative language that means that they largely agree with your design principles and values. But it does mean providing the kinds of affordances and guarantees that allow an organization to be in control of their own destiny and engineer a robust and maintainable system. Elm has had almost no energy invested into these concerns.

            2. 1

              I see nothing wrong with a project whose purpose is enjoyment, that includes some amount of stroking of ego.

              Finding out which language features have the greatest amount of some desirable characteristic requires running experiments. I’m all for running experiments to see what is best (however best might be defined).

              Creating a new language and claiming it has this, that or the other desirable characteristics, when there is no evidence to back up the claims, is proof by ego and bluster (this is a reply to skyfaller’s question, not a statement about the linked to post; there may be other posts that make claims about Elm).

              1. 9

                How would a person establish any evidence regarding a new language without first designing and creating that new language? I agree that evidence for claims is desirable, but your original comment seems to declare all new language design to be vanity (i.e. only good for ego-stroking), and that’s a position that requires evidence as well. Just because a language has not yet proven its value does not mean it has no value. Reserving judgment until you can see some results seems a more prudent tactic than, well, prejudice.

                1. 0

                  First work out what language features are best, then design the language. There are plenty of existing languages to experiment with.

                  Design/implement language, get people to learn it, write code using it, and then run experiments is completely the wrong way of doing things.

                  1. 2

                    How do you work out which features are best if the ones you’re trying don’t exist yet? Wouldn’t that require designing and implementing them and then let people use them?

                    1. 1

                      To be able to design/implement a language feature that does not yet exist, somebody needs to review all existing languages to build a catalogue of existing features; or, consult such a catalogue if it already existed.

                      I don’t know of the existence of such a catalogue, pointers welcome.

                      Do you know of any language designer who did much more than using their existing knowledge of languages?

                      1. 3

                        You wouldn’t have to know all existing language features to invent a new approach, and the only way to test a new approach would be to build it and let people use it.

                        I think I’m lost as to where your argument is headed.

            3. 5

              Why would anybody fund somebody else’s vanity project when they could use the money to fun their own vanity project?

              Because they realise that there’s greater benefit in them having the other project with increased investment than in their own project. The invisible hand directs them to the most efficient use of resources.

              Because they realise an absolute advantage the other project has in producing a useful outcome, and choose to benefit from that advantage.

              Because they are altruists who see someone doing something interesting and decide to chip in.

              Because they aren’t vain.