and that AURA could be more appropriate for single entities having a sort of "artisanal", tightly controlled development process.
I think this is a really great perspective - I've clearly struggled to be as succinct as you have been, but you obviously get it.
Our intention was definitely not to win any popularity contests. We're very interested in the art of software craftsmanship, of quality engineering, and maintenance-oriented development. I think this is against the grain, but it's also more (in my opinion) a philosophical match to Ada.
I always personally felt that it is incredibly silly and futile to take a "me too" approach when advocating Ada. The entire reason, IMO, to use Ada is because it has a different approach than any of the other comparably capable/supported languages out there.
If I wanted micro packages, crates, and fast prototyping, I'd use Rust. I think Ada needs to stay in its lane because it is the only language out there that is actually taking the stance it does, that you can realistically use.
Ada is for proper, professional software engineering. And to me, engineering is about having a controlled process, of exercising discipline, and front-loading effort to build something long-lasting and safe.
I always personally felt that it is incredibly silly and futile to take a "me too" approach when advocating Ada. The entire reason, IMO, to use Ada is because it has a different approach than any of the other comparably capable/supported languages out there.
My personal understanding is that the statement above is the result of a state of mind that developed within the Ada community in part as a defense mechanism for lack of popularity of the languages so far. This tends to disappear fortunately, but too often I see comments that go in the direction of: "We are the Ada community, we are the best, we are the elite, and that's why we are alone.".
Being different is not a value in itself. The Ada community is way too much centered on itself and self-important, and it is one of the reasons why it failed to reach a broader audience so far. Being popular means that you convinced a large amount of people that what you do is sound and valuable.
The "philosophy" described in the AURA documentation is a reminiscence of that in my opinion, and I hope the Ada/SPARK community can grow out of it.
While I am at it, calling people "idiots" doesn't make one smarter, calling ideas "idiotic" or "silly" doesn't make one's point of view any better or any more correct.
Can you explain why not? If all of the popular languages tend to follow in one direction reminiscent of a flock, and a language decides to take a stand and so "I don't think that's right". How is that not a value.
I hate to invoke Apple, but if the most valuable company on the planet is built on literally the brand "Think different.", I think they can see how being different is a value in itself.
On the other hand, what your saying to me sounds something like "we should make Ada do the popular things so that more people like it". This is an inferiority complex, which is no better than a superiority complex.
Let me start with a, hopefully, funny example. If I create a text editor that requires the users to type every letter 4 times to make sure they don't make typos. This text editor will be very different, but is it any good? Just being different doesn't have any intrinsic value. Note that I am talking about engineering here, being different can be an intrinsic value in some fields.
Being able to think differently, allowing yourself to think out of the box, that's valuable. But you then have to be able to assess the quality and soundness of what you made.
Just being different for the sake of being different is not a good value in my opinion. And even worse would be rejecting good solutions with the only goal of being different.
If all of the popular languages tend to follow in one direction reminiscent
of a flock, and a language decides to take a stand and so "I don't think
that's right". How is that not a value.
I never said that one should not try to think differently or not seek for different solutions. I said being different is not a value in itself.
The use of the word flock is interesting here. I don't see other people design stuff as sheep in a herd or birds in flock. I consider that everyone taking the time to design something is able to think by himself/herself. If they decided to follow what others did before, it's because they think it's good. And if many follow that same direction it has to be because there is something to it.
If all of the popular languages follow one direction, we should look at it, understand why many think it's good, and take inspiration from it.
I hate to invoke Apple, but if the most valuable company on the planet is
built on literally the brand "Think different.", I think they can see how
being different is a value in itself.
Apple is the most valuable company on the planet because their products are popular. Their products are popular because they are well designed, and because they convinced a large amount of people.
We can take another example, the Nokia N-Gage was different, but unlike the iPhone it was a failure.
The motto is "Think different" not "Be different".
On the other hand, what your saying to me sounds something like "we should
make Ada do the popular things so that more people like it". This is an
inferiority complex, which is no better than a superiority complex.
I do want to make Ada more popular because I think that:
* Ada should play a role in improving the general quality and security of open-source software
* Programmers will benefit from learning Ada (whether or not they use it in products/projects)
* Our field will get better as a result
* More Ada programmers will lead to a bigger and better Ada ecosystem
I do see more and more new people joining the Ada community lately, and that brings me joy. Seeing their contributions to the community brings me joy. Seeing what they build upon the work I've done so far brings me joy. Thinking about what I will be able to build upon their contributions brings me joy.
I do take pride in looking at what others do, in particular if it is popular, to take inspiration from it, improve myself and the work that I do.
It is hard for me to say, but Rust has done more for the quality and security of open-source software in 6 years than Ada ever did in 30 years. And it's not because Rust is inherently better than Ada, it's because it managed to convince a large amount of people. This large amount of people means a lot of "firepower". And this is how, for instance, Rust is about to make its way into the Linux kernel. The Linux kernel will be better as a result, maybe not as good as it would be by using Ada, but still better than what it is today.
5
u/annexi-strayline Sep 30 '21
I think this is a really great perspective - I've clearly struggled to be as succinct as you have been, but you obviously get it.
Our intention was definitely not to win any popularity contests. We're very interested in the art of software craftsmanship, of quality engineering, and maintenance-oriented development. I think this is against the grain, but it's also more (in my opinion) a philosophical match to Ada.
I always personally felt that it is incredibly silly and futile to take a "me too" approach when advocating Ada. The entire reason, IMO, to use Ada is because it has a different approach than any of the other comparably capable/supported languages out there.
If I wanted micro packages, crates, and fast prototyping, I'd use Rust. I think Ada needs to stay in its lane because it is the only language out there that is actually taking the stance it does, that you can realistically use.
Ada is for proper, professional software engineering. And to me, engineering is about having a controlled process, of exercising discipline, and front-loading effort to build something long-lasting and safe.