Iâm new to this language. But I think I also have other insights as well. I did look into why this wasnât used that much and I came to the following. Much of the initial roadblocks are things that arenât bad in the long run and in fact good, but they do hit you in the face the first time.
I can inadvertently sound like an asshole so please just take what I say based on the direct meanings. I read all the responses and waited a day or two to make my response to see if I had anything to add, and I think that this covers most of the bases.
I cover the whys of why Ada isnât used in the first 9-10 points. Then after that section I give a long write about what should be done and other opinions. I tried to shorten this but I think that this really gives a good overview of everything the way it is. Please make any disagreement known so that I donât continue to make blunders unknowingly. 
TLDR: Giant post explaining all the whyâs I could think of. LLM/AI was not used to edit or write this post. I painfully typed it.
- âlongerâ syntax. ââend functionname;â instead of ; or }
- âmalformed strangersâ I am not namecalling just yet, please read the elaboration below.
- Visually old websites.
- Lack of youtube tutorials.
- Adacore. I know Irvise already talked about it not being their purpose but I have opinions!
- Lack of âfunâ or âclevernessâ.
- Peer pressure, âno one uses that so why should you?â.
- Slander.
- Industry conditions.
Now anyone that actually gets thrown away by these things probably isnât someone you want in a programming community because many of these things are surface level indeed.
1:
The longer syntax for some reason will anger many. For simple example: Personally I prefer the ends over the curlies.
}} // C ending or whatever
VS:
end Input;
end Handler;
While it does provide more information and makes things easier, many programmers will initially get uncomfortable because autism is prevalent.(change in schedule or programming style is painful for (most) autistics) This then will initially lead to an initial dismissal, or to the next outcome.
2:
A malformed stranger would be someone who takes part in arguments such as, âpython is better because it doesnât have semicolons!â. But in what way is that better?
No semicolons?
Faster to write? Sure.
Easier to maintain? Modern IDEs could show you what section your mouse is on belongs to, but can you get that information just by glancing at it? No.
What if your formatting somehow goes away? Unlikely but disastrous.
All the above matters, in my personal opinion maintenance ease is far better than how fast it can be written. Yet a malformed stranger will only discuss how FAST and EASY it is to not have semicolons.
3:
The visual age to some ada websites will drive some away as well, as we all know, many decide EVERYTHING based off of first impressions. If that is âbadâ then some of these people will then look for any reason to justify their dislike of it. They already disliked it because many do not like to be told that there is a better way. They already disliked it because it is not something that they sought out for themselves, but instead something that was told to them to be the better way. Most people donât like to be told that they are wrong, but when you do, and you are also right, this will cause them to then come against the first two sections, differing syntax and malformed strangers, they will then latch onto this to then call you wrong and go back to what they were doing before, because in their own mind they are smarter and can never be wrong.
It does sound arrogant to say many programmers believe themselves to be infallible, but I canât find a better way to explain so much of why certain things happen. Saying that, âin their own mind they are smarter and can never be wrongâ, is an extreme opinion, but the two initial roadblocks will provide them an âeasy outâ where they can throw it back in your face.
4:
The lack of youtube tutorials, I was used to searching on youtube and getting a spoonfed tutorial that was most likely written by a youtuber who did nothing but youtube as a career. It makes me sound old and angry but manuals and written tutorials are far better. learn.adacore very nice! Barnes 22 very nice too! Though it wouldnât hurt to just have a fast-paced tutorial series about ada. It should be fast-paced to condense as much information as possible, while still being a tutorial. Condensing is good because it would be trying to sell a ânewâ language. Selling it is the first part, the more in depth and longer tutorials can be relegated to written content, or later in time. A point of contention I have for many youtube tutorials, a bad microphone.
Small bit for anyone making written or video tutorials or content: You should provide anti-cases as well. When making a political speech for example the speaker should also touch on the opponent and âhow bad they are!â. Ex: end Nameofwhatever; is better! Yes, but HOW is it better, show a large example of 20+ or so curly ends in c and show what it would look like in ada. People and programmers largely are average and half of them are below average, you must do their thinking for them. Many in Ada expect people to do what is right or more correct or more maintainable, if people did that on their own there would be utopia. Utopia is in fact impossible.
I guess the above section is just another way of saying what Kazakov did. âpeople enjoy it[garbage]!â
5:
Adacore. I disagree with Irvise. You are a company. Ada is a large part of your earnings(I am assuming that, maybe not?). Almost every language is sponsored by companies/corporates or is then pushed internally for adoption. See: Mozilla/google and r*st. Mozilla pushes rust, google pushes rust. Adacore alone using Ada is not going to change anyoneâs mind. Google/Mozilla just saying that they use rust is going to change many minds. Both of those companies have many employees, just google alone having a small section of programmers using rust could immediately add 100s of programmers to it. You are not mozilla, you are not google.
In my opinion there is no future for Adacore amongst rust. Bigger companies(google) will most likely eat your lunch. But I am no risk analyst.
Now someone might say that NVIDIA uses Ada/SPARK in their driver safety thing? But who actually gives a damn? The only people I ever saw posting that were Ada programmers looking for any and ANY source of âhey we are alive!â. No one else cared. I thought it was cool, but someone who doesnât use Ada/SPARK is just going to look at that and go, âHuh. Whatever.â. Now if NVIDIA came out and said that they were moving much of their code to Ada/SPARK and it is what they are going to be heavily using in the future, now some people are going to learn just while in their job search. More would probably go to it because if it had that level of adoption by NVIDIA then theyâll think itâs good enough for me! But what would really drive the adoption would be a large corporation saying that Ada/SPARK is responsible for *Financial* savings due to decreased maintenance costs. Now every shareholder just drooled.
It doesnât have to be Adacoreâs responsibility to market Ada. And it shouldnât be either. But that is another case of what âought to beâ instead of what is. You will probably have to spend money if you want to make money. Largely in part Adacore is already doing fine with this. With resources like learn.adacore being very nice. But they should go farther than just that. Fast paced video tutorial too. But it better be someone with a good microphone and good speaking voice, otherwise it will revolt. In-person events for languages like Ada with a small community arenât good for marketing. In-person events are for communities that already exist and a small part wants to get together to keep the fire alive or whatever. Though, itâs bad for marketing Ada in my opinion.
6:
Lack of fun and/or cleverness. Most of this opinion comes from an old website that I was reading. Ada - AdaPower.com - The Home of Ada That is probably over 20+ years old at this point. The language doesnât really let programmers do clever things. Many people like dirty and quick. I await the nightmare that is their âquickâ codebase. But the demographic of people that value dirty and quick are not the same people who would value Ada or planning or maintenance until it either bites them so hard they have to reconsider or they just donât ever have to deal with the fallout.
Lack of fun/cleverness is in no fault of Adaâs engineering in my opinion.
7: Peer pressure.
Self-explanatory. No one likes being different. Some donât have a choice. But when they can choose, they will choose to conform.
8: Slander
You donât see it that often but I have seen things where someone will make a claim that is undeniably false. âdesigned by big government!â âtoo old!â âit sucks!â(in which ways?) etcâŚ
9: Industry conditions
This is a large one. Most programmers donât get to choose their language of choice unless they are on a small team, a freelancer, or the manager who is responsible for deciding what language to use. Of course that goes for every language everywhere else, but every other roadblock mentioned above will grate on the manager, will make the freelancer want to choose something that advertises itself as fast and simple, and will make the small-teamers want to do what everyone is familiar with anyways instead of most of them relearning their programming paradigms.
All of that already doesnât look that good right? But that wasnât even assuming the general employment duration for employees. Combine what is the âaverageâ for most computer programmers/webdevs/whateverthefk. And I bet this average wonât be above 5 years at one company. Much less 5 years on the same projects. None of these programmers will have to deal with the fallout of a badly maintained codebase. If they do they wonât be the ones that wrote it and still wonât give a damn about what they are doing, because realistically why should they care? They shouldnât. And most likely they will not have to.
I myself am a newbie âenthusiastâ, but I keep finding myself focusing on what ought to be instead of what is. Reality sucks, and no one cares about writing something that is good. I myself have shot myself in the foot purposefully to learn Ada because I can see it benefiting me in the long run, but I am currently limping. It hurts. But Iâll go on with that anyways. Most wonât even want to shoot themselves in the foot if it is a long run benefit, and they honestly shouldnât.
So what to do to fix these things, or do they even need fixing? In my opinion larger adoption is NOT a good goal. In fact large adoption is HELL. You donât want to go to hell.
A simple way to make the point about large adoption being hell would be linux. Letâs say everyone uses linux. msft collapses. Yay. Now linux has more viruses. The amount of people that contribute to linux climbs a few percent, but now bandwith costs for people having to host open source websites and update servers has now increased 1000x because most people are useless to anything.
Adoption for Ada should only aim at small niches. I donât care if anyone believes if it should be âwidelyusedâ AND HEREâS xyz WHY. It should be, but it wonât be.
I donât think that any amount of alire updates or crate functionality would be any good for something thatâs not webdev/startupsh*t material. I am extreme in my opinions. There are some who would benefit from this, yes. But it wonât âsaveâ Ada.
What could save Ada? What is the point of a writeup this damn long if I canât even have concepts of a solution? Proof of concept. Proof of concept is the only thing left. The engineering is there, some basic crate (personally hate it) stuff for alire is there, the language is solid, the community is skilled (not me), and the learning materials are there too. Ada/SPARK struggles with several things listed in the points above, through no engineering fault of its own. It will appeal to the people who are right for it. No one else will care, and that is fine. But that will only happen if there are cool things to point at. Something that people can see. Flashy and looks cool.
Once the attention is there then you can make them take a closer look. That is how I discovered Ada. I saw something cool that was in rust, not in Ada. I was unhappy with rust. But it grabbed my attention. I then went looking for better. I then found Ada. Now I am trying to do the cool thing that I saw in Ada. If that cool thing was in Ada originally I would have stayed and had it to begin with. This is the way. Not utilities where no one looks at the source, no xzy, no random events, just cool stuff. Everything else will come once there are more programmers that naturally come into it. The existing community of Ada cannot lift the world or do everything on its own.
1: The longer syntax is a boon in my opinion. No âfixingâ needed.
2: Malicious arguments canât be defeated. Nothing to do here.
3: Visually old websites are fine. It drives away eyejudging programmers. Those who judge by âfeelâ instead of by merit. You really donât want those kinds anywhere.
4: Youtube tutorials. This one is easy. Keep the actual tutorials to the learn.adacore, and the Ada books.
Youtube videos should ONLY be either a fast paced overview of Ada benefits, and a proof of concept. âLetâs make a fluid simulation in Ada!â(along the way show comparisons to other languages in passing etcâŚ) âProgramming basic enemy fps AI in Ada!â (many new programmers will watch tutorials like that as they try to make their one-of-a-kind-vr-rpg-jrpg-mmo-mmp-totally-will-not-fail-at-making-overly-complex-project, but that is where many get their footing, everything starts with starry eyes and hope, then delusion, but Ada needs the starry eyes first)
5: Adacore, as said above. Nothing more to add in this section.
6: Lack of fun or cleverness is due to the language being more solid and not letting you shoot yourself in the foot in some ways. Changing that would be changing the foundations of Ada. No âfixingâ needed.
7: Peer pressure. Canât fix that.
8: Canât win internet flamewars/slander. No one can.
9: Industry conditions. It always sucked, but worse since every posturing social butterfly decided that CS was a good career to make a quick buck. Continue hating people who do more socializing than programming, no fix that the Ada community can do to fix that.
Why is Ada not popular? What are we missing? I think this is exhaustive. I donât expect anyone to read this, but if thereâs anyone who doesnât have any knowledge on the situation I hope this provides you with a decent overview.
These are most of the thoughts I have come across and have had about why Ada is not popular.
If you have anything to correct me on or anything to add, your response is welcome. I would like to discuss further if anything more could be done. If anyone wants to work together on some youtube âcool stuffâ that I listed above that would be great. Together, not alone.