The development community is great for most parts. However, there is a constant need for some developers to tell others that they are wrong and their tools are bad. They might be right but the way is said is not the way that we should approach helping others. Attacks of all kinds are directed toward other developers just because they use a different development environment or a different stack.
I remember when some developers were all building applications with Ruby on Rails and telling others how superior Ruby was over PHP. Also, explaining how PHP was dead and people should migrate to other programming languages. Then, PHP people argued that Ruby did not scale. But also, some PHP developers were very critical of “enterprise” development with .NET or Java. Ten years ago, other developers said that React was better than Angular. Others say how much better is working with Vue over React, … you get the point. This is not productive and not all programming or business problems should and can be solved with one tool.
Using one framework or programming language as a hammer is neither realistic nor professional. Each problem is different and comes with different requirements and needs that include the budget, resources, and customers. I am not trying to attack the tools or languages. It is the way we communicate online with one another. Again, we need to understand that the tools are used based on the needs. You cannot shape the needs of your tools.
When somebody asks a question in a forum about programming or framework X for instance, people who haven’t used this tool in more than 15 years start commenting about how bad it is and that it should be replaced with language X. (I see this with PHP for instance when people who haven’t worked with it in a decade complain about it.) In this case, the people replying to the question are not helpful because they are not answering the original question. We all know that programming languages and their frameworks evolve over time. If you haven’t used a programming language nor kept up with the news about it in years, how can you feel confident about your reply?
Even after years of Prototype, YUI, and Mootools stopped development, you still can find people using them in their jobs. The same applies to jQuery, AngularJS, and in the future React or Vue. They are maintaining applications and they are not able to upgrade because the company does not allow it or it is not required. Any question posted online is legitimate and the accuracy of the answer is important to the ones asking. If you are going just to reply “Use stack Y”, it is better if you don’t reply at all. There are businesses still using AngularJS because developers are forced to use it. Businesses don’t want developers to be rewriting entire applications just for fun because rewriting usually does not create value. You don’t fix what is working.
When we use open-source code for example, we need to think about the effort and time put by those developers to release something for free and help us to become more efficient. Attacking other people’s work is not the way to do it because releasing code to the community comes with a lot of late nights that could have gone to personal time with their families. These developers creating tools that some might “hate” should be encouraged instead of being slammed. Most of the jobs we have right now, and the evolution of the web is due to these people giving their time away for free.
One thing that I learned in my career is that the tools stay and it is difficult to upgrade. Companies are not building an application because a new programming language appeared or there is a shiny new framework. They are building applications to solve the needs and reacting to the market. It is impossible to migrate to a new language or new paradigm just because now there is a “new and better” way. You can see an example of Cobol, there have been a lot of financial entities using Cobol since the 60s and it is still going strong. In fact, the demand for Cobol is high and well-paid. A friend of mine still works at a bank with Cobol and there are no plans to change it.
Thus, if we take this into consideration when a question about Cobol is asked, don’t jump to say that Cobol is dated and they should use the “most super upper shiniest thing” on the market. It is not possible and it is not needed.
To conclude, when providing feedback or answering a question, think about the tone because the words used will be used as a reflection of yourself.