Developers do not like technology in the company and want to do something in a new, cool, modern language and ... And? III? Dig a story. It is useful to remember how it all began. Mathematics turned out to be needed by people far from curiosity: state expansion, construction, military technology, and business — they were one of the first to experience a deep thirst for quick and correct calculations. Square and cubic equations
learned how to solve correctly only when they turned out to be necessary ... for merchants and artillerymen. Sines and cosines, too, were
invented not because of a big mind - with their help it became possible to build ... normal houses that do not fall :-)
And logarithms ... there is generally an interesting story. They turned out to be merchants (and after him sailors and pirates) and the military so necessary that some mathematicians of the Middle Ages spent their lives only on drawing up their tables! Look in the eyes of the heroes -
John Napier :

It is visible and indisputable that in fact only the state and business have always moved science forward!
')
The volume of calculations increased, and steam, lamp, transistor, and then "arithmometer" on large integrated circuits replaced manual arithmometers.

But the essence remains - the state and business need it, they really need fast calculators and brains, which they are well aware of = programmers. Where the “calculators” will be directed to the service personnel does not depend on us. Someone on the creation / improvement of modern weapons, and someone - for the mass razvlekalovki: the development of social networks. Someone will develop algorithms and technologies to effectively fight cancer, while others will develop drone control in Iraq.

Yes, and the Internet itself owes its appearance to
the US Department of Defense , and everyone's favorite TCP / IP protocol was designed as a means of communication during nuclear bombardment.
And it is unlikely that something has changed now. The same Google, in fact, a “untwisted banner banner with a reverse index — a search engine,” hired the light of mathematics to work and scientists day and night serve the interests of advertisers. Deep Learning and word2vec are made instead of the bomb, and competitors are replaced by the enemy instead.
It is well and clearly visible that the created IT-technologies, in their essence, were born - for victory and in battle. Born to the whistle of bullets, blown in by a fresh wind in the field, with a taste of blood on the lips and a nearby groaning fellow. They serve as auxiliary add-ons to “steam adding machines” and are intended primarily to
kill quickly and solve problems effectively, simply and quickly :-)

Well, it will probably be interesting to recall that Napoleon, a great man and commander, adored mathematics.
Pacifism
I do not understand what it is. If strangers begin to break into the neighbor-grandmother and threaten her - any man will take the weapon at hand, starting with his fists and eliminate the situation, and if he cannot, he will help in the form of police. Similarly, if robbers and murderers come to your small homeland, a man must stand up for his relatives and protect them. Therefore, pacifism is either fiction or not about men in general.
Materiel
It’s not easy to handle weapons and “steam adding machines” - they are controlled by programming languages, which are becoming more and more common. And if at first languages ​​were created for quick and effective
shooting work: assembler, C, C ++, then over time pacifism and anxiety began to penetrate more and more deeply into the minds of fighters and tools appeared to outrage “fast calculators”: Basic, Perl, Bash, ...
But seriously, dynamic weakly typed interpreted languages, of course, appeared because of the needs of the business to quickly get a working realization of the idea
and throw it at the rival . It is reasonable, if the task is solved by a script on Bash in a day, why at the output get the same thing on C in a month. But suddenly, the developer will say, it will be necessary to use the solution in the high-load in 5 years - but everyone understands that the battle can end for the company in an hour, and for this, the developers even faster and do not need to build a house in the middle of the minefield in the interval between shelling: )
We repeat that there is already a finished weapon and how and when it is best to use it:
- C - well suited for machine guns, shoots quickly, accurately, in long bursts. One drawback - to make weapons for quite some time.
- C ++ is essentially C, but if there are many fighters and everyone starts to make weapons at the same time, it is not bad to introduce modularity and object-oriented programming.
- bash, awk, unix tools, go is auxiliary equipment. If you can throw a pot of porridge and destroy the enemy's unit of combat power - why make a heavy machine gun for this? Well, you understand.
- php, python, ruby, closure, perl, javascript is a very effective weapon that is created in minutes, hours, sometimes days. It is becoming more and more popular. One drawback is that it cannot shoot long bursts of 2000 shots per minute at 8 barrels at a time during the week without overheating. But agree - this is not always necessary.
- Java, C #, Rust is a strategic missile, accurate and powerful. It is not created very quickly, it does not shoot very often - but it doesn’t make a mistake either.
They say that in their free time the fighters are engaged in creative work, they are looking for harmony in the world, they write poetry and even sometimes programming languages. This is how instances like Haskel, Scala, F # were born - how wonderful it is to shoot up multicolored fireworks in the form of hearts and a rainbow in the lull between fights. And yet - you can calculate the factorial in a functional way and without recursion - the girls like it very much! But seriously - many ideas from poems were still embodied in combat copies - for example, the most popular weapon against large data Apache Spark is written on Scala.
Writing poetry is often dangerous. Recall what the
great creators of the relational theory from IBM have been going through.
Efficiency
I hope everyone understands that if you can hit the enemy behind a nearby bush with a shoe (bash) right now, then you do not need to build a tank for this for 2 weeks. But from the history it is useful to remember what the complication led to. During World War I, at one time, huge, useless huge tanks were actively built (they speak with billiards inside), which did not have time to get to the rival's trenches and broke along the way:

The Kursk Arc, when brisk T-34s drove into the flank of heavy, but powerful Tigers and punched them into vulnerable spots:

And the story of the sunset of the
battleships after the Second World War - with which pipets came from aircraft from aircraft carriers, remember?

History teaches us that often simple technological solutions defeat complex and cumbersome. But not always - in this case, 100% project coverage with unit tests would certainly help:

Front line behavior
Here we are, warming up with images and metaphors, come to the essence of the post. What to do if developers are not interested in using the available technologies - writing code in PHP, javascript, HTML - and pulling towards Haskel, Rust, Scala, Go? ;-) Why is this happening?
I think the point is in incorrectly formed values: what is cool and what is not cool. Correct values ​​breaks a long stay in social networks, video games and other forms of mental masturbation. A lack of regular exercise reduces control over the hormonal component. Translating needs into the language of war, they mean something like the following:
- I do not like, nasty, to fire a pistol, but for ideological reasons I only shoot from a hand-held grenade launcher
- If you throw a grenade, you can stretch the arm. Can I look through binoculars?
- And let's build a tank with a height of 5 floors and scare the residents of the neighboring village?
It is clear that the correct business answer here is to choose the most effective weapon and use it. And this is not a fully realized problem! It is good to know several technologies and programming languages ​​- not everyone can, it doesn’t advertise this, you need to learn, make efforts, often in your free time. And often this is why technological fights and religious wars begin. Machine gunners argue with the cooks - the better to throw into the tank: a pan or machine gun from a machine gun, mix a smoker on the side of a grenade thrower.
An experienced fighter will immediately select the right weapon and use it to solve the problem on time, with guaranteed defeat of the target and the project will have time for release as a cucumber.
We conclude - it's cool not to shoot a bow at planes, and - well-versed in weapons. And to argue during the battle about the color of the cartridges, the advantages of the pistol over the machine gun and the taste of borscht, because of which the fighter lost his mood, is a matter close to pacifism and origami with rainbow flags. And here without raids - women, too, can fight perfectly, the question is in the desire and inner attitude "for coolness".
Conscience
Which is better to answer the catapulted pilot to the question: "Where am I?". “You are in the square A12 in the location of part B3 of company B12, welcome, do you want tea?” Or “You are on the surface of the planet Earth” :-) In combat, decisions are made quickly and they must be as efficient as possible. Unfortunately, there are spies sent by the enemy who, instead of a simple answer to a question, answer a question in an ancient Klingon dialect: “in the light of additive functors and monads, it is better to use a monoid”. To shoot on the spot, but the fighter is a pity, the children are waiting for him at home.
Internal training
It turns out that it's cool - it is not to bang into the plane with a slingshot, but to choose and use the tool. But how to know them all? Training within the company and communication. It is also known that over the years, developers are mixed with knowledge of sysadmins and analysts. The movement takes place in the direction of special forces - a person knows more and more from adjacent areas and, most importantly, applies knowledge in practice.
As a result, we get the second component of “coolness” - possession of different techniques that are adequate to the tasks being solved. Even in a simple area of ​​web development, in fact, to get a black belt of coolness, you need to understand well:
Dynamic languages: php, ruby, python, javascript
Layout: html, css
How it lives on the server: apache, mysql, nginx
Operating system: unix, tcp / ip, mail
Believe me, years go by with an intensive exchange of knowledge. And in the middle of the working day, he doesn’t bang a poisonous boom out of the pipe along a flying cruise missile - although, in principle, you can get there if you design and carry out load tests for a month :-)
Results
The developer's twist is not high-mindedness or originality. Cruelty is the adequacy and ability to
kill quickly and a lot with one shot to solve the problem quickly and easily. Cruelty is to help solve the problem and a clear simple statement of your thoughts, so that it is understandable to others (and not to enjoy the bewilderment, bulging eyes and thoughts - what a clever fighter, probably writing poems, too). Developing better in the direction around and with the number of tasks to be solved is professional growth, good experience, and knowledge that can be applied in one's own and in other companies, especially result-oriented ones. Good luck, success and Happy New Year!