(public draft) I've notice several people mentioning something like "Matz is nice and so we are nice" (MINASWAN). MINASWAN - Sounds like Japanese. Japanese, like Mr. Yukihiro Matsumoto (Matz), the ruby language designer is. - And so I started wondering about this here: MIDASWAD - Matz is Dumb and so We are Dumb - If "Matz" would act like a Moron (in context of language-design), would this mean that the "We's" would act like moron's, too? An example: If Mr. Matsumoto applies "Design by Egoism", then he is "Dumb" (in context of language-design, not as an individual of course). The reasoning is simple: you cannot design a consistent OO language if you apply "Design by Egoism". If you ignore logic and reason, just because it happens that you have some warm feelings for a construct (or person), and cold feelings for another one, then you apply "Design by Egoism". And this will slowly degrade the language. If the so called "We's" (whatever this is) would follow this paradigm, then they would be "dumb", too - (again, in context of language- design, not as individuals of course). Does Mr. Matsumoto apply "Design by Egoism"? - I am not sure yet, although some issues indicate this. [1] It's his language, one will say, he has the right to do so. Well, it's possibly his language, but there is something more: Honour! It's a matter of honour to respect the people which depend on the language. If the main design goals are directed by Egoism, then soon or later, the language system will collapse. It will not be able to withstand the requirements of modern applications, and will slowly fade away. It's a matter of honour, to use the "Reality of Logic" for design decisions, if people depend on you. This can be one small individual, which feeds his family based on the work with the language. This can be a large language-subsystem, like a web-framework implemented on top of the language. - Rails. Ruby on Rails has brought many people to ruby. It pop's around in my mind as "The Windows 3.1x of Web-Development-Frameworks". I don't know exactly why. Now, it seems that the "Ruby on Rails" framework has raised the requirements to the language system ruby. It seems that it tries to achieve more than ruby can provide. The possible reasons are: * Rails is so powerful * Rails is badly designed * The designer has simply chosen the wrong language to place "on Rails". What is clear is, that this framework *requires* much from ruby - and the Main Ruby Implementation (MRI, Matsumutos Ruby Implementation) starts buckling. Several new interpreters "pop out of nowhere". There's a "professional edition" of ruby, other companies implement specialized versions with new garbage-collectors, and who knows how many "hidden" ones. Others make the "scalability dictated" move to the beloved Java Language. And others take the "in between solution": Ruby On Java On Rails. What a contradiction! Shouting on Java, and then using Java as the foundation to execute the "better" language, JRuby, and the "better" web-framework. Anyway. - Diversity. People say "Ruby encourages diversity". This is of course nonsense. The people around ruby always manage to serve a weakness as something positive, as something special. And this happens sometimes with professionalism (possible due to the advertisement/design companies/ people which came in touch with ruby). But I say "Ruby encourages diversity" means in reality "they *fail* to coordinate efforts into one project". I say that ruby has started to degrade long time ago, and will continue to degrade, that's why companies build custom versions of the interpreter. It's most possibly a matter of "Design by Egoism" - either that of Mr. Matsumoto's, or that of the "New Implementation of the Ruby Language" side (or perhaps both). They may should take a look at: Oracle & IBM & Others - large scale companies, which manage to cooperate (because they realize they *have* to join efforts). Not that the eclipse-project is a masterpiece of liberality, but at least there are processes. The companies surrounding ruby *fail* to do so. They do not cooperate efficiently, the do not focus efforts into main-line-ruby, they do not organize and strengthen the development processes, they to not criticize and judge in the way they should, to encourage evolution. In the Ruby and the Rails domain, you see "big" names in the sponsor list of conferences and events. But you don't see those companies *collaborate* efficiently where it is most important: on the language level. It seems like egoism is valued more the collaborative achievement and technical excellence. And of course Politics. Politics everywhere, throughout the language system, an even the "Rebels" (see e.g. "Rails is a Ghetto") are finally nothing else the egocentric politicians, which just shouted out stuff when they left - instead of staying, shouting and fighting when they were part of the language-system. This is what ruby is about: Egoism and Politics. - And then this "Community Myth". I know that the people which write here publicly are *not* the so called "community". The population of the language-system "Ruby" consists first of all from the thousands of users which do *not* write here. They use the language, e.g. to write glue-code for their applications, to control a small part of a film-production, a pre-processor, a quick- prototype or something that I can't even imagine. They are far to busy to get distracted by writing on public media and dealing with the... Freak-Show! The "freak-show" (a few regulars on a list, which give the impressions that they *are* the community). A few regulars, which have no sense for their own limits. And a few spineless followers which have not personal opinion at all. A few regulars and some followers, personalities which are weak down to the bones, which gain strength only in an herd - like hyenas, which do not respect the *rights* of an individual, the freedom of expression, the freedom of choice (e.g. to *not* read, to filter) and which do not realize that they are both, a shame and a *damage* to the language-system. - This is *not* the community. This is just the "Freak-Show", which every language system has, more or less. - Professionals. So, where are the professionals, which focus on the technical essence and which know that language-evolution has not much to do with politics and "freak-shows" or "liking each other" and all this nonsense? Professionals which know, that giving to much priority to such values will degrade the language-system. Professionals which know, that a major part of core-level software- development is about analysing and abstracting things. - If you like to confirm my sayings, but you don't want to do it publicly, please feel free to contact me with private email. - [1] Literal Instantiation breaks Object Model http://redmine.ruby-lang.org/issues/4893 Provide Class#cb_object_instantiated_from_literal(object) http://redmine.ruby-lang.org/issues/4845 Unify Variable Expansion within Strings http://redmine.ruby-lang.org/issues/4877 . -- http://lazaridis.com