From: Chris White Date: 2011-10-28T01:06:27+09:00 Subject: [ruby-core:40458] Attitude Matters As the future of Ruby progresses and discussion around Ruby 2.0 increases, I'd like to take a chance to warn of a potentially troubling trend that could cause damage to our community. Emotion is a large part of open source software development, yet many do not wish to acknowledge it. Software development is quite objective in nature. You put code in and it runs accordingly unless you come across a bug. When compiling code, we don't have to consider whether or not gcc is in a good mood or not. However open source software development is not just about software development, it's also about communication within a community. This has the potential to foster positive intellectual conversations, but it also has the potential to lead heated debates. Editor and OS wars are a solid example of this. With this in mind I'd like to bring up a few items that we as the Ruby community (myself included) need to be careful of. = Approaching Debate = When approaching someone with a point of discussion, it's important to consider your frame of thought going in. There are two main ways discussion can be approached. The first is to prove a point. In this case the objective is to fight for what you believe in to the bitter end, and often leads to long winded, and in some cases, heated arguments. There is also the potential of one sided arguments which in the end lead to nothing more than personal attacks. Another approach is that of obtaining an alternative viewpoint. You go in with the perspective of trying to reach agreement with the opponent's viewpoint. I believe this approach is more productive, as it will either lead to an agreement, or possibly a compromise. = Passion = Open source software is often developed with a goal in mind that the developer is very passionate about. This has the benefit of motivating development and further progressing the evolution of the software. On the other hand, passion also has the potential to foster excessive emotion, causing things to appear to have far deeper meaning than they actually have. If you find yourself replying to something or posting something in an extremely state of mind, please just walk away from the keyboard and take a break. Come back and state your point when you're able to articulate things in a calm and composed manner. = Loaded Words = There is often cases where discussion are laced with borderline passive-aggressive comments or "getting the last word in." These are unnecessary to proving a point and cloud the logic of the discussion with aggression. The point of a discussion should be to foster ideas and state logic, not to attack the other side. Continuation of this just leads to a point to where meaningful discussions no longer occur because those taking part don't want to deal with the baggage that comes with it. = Comparison = I've seen a tendency of different projects to compare themselves to each other, creating a never-ending "my software is better than yours" debate. Focus on improving your software. If it's good, people will come. If you attempt to constantly compare your project to others, people will come under the mentality of "Oh this is just another X". Drawing users to a project is a lot about creating identity. Without this identity it is extremely difficult to pull more users in. The "my software is better than yours" debate also creates an environment of tension between projects. This can lead to a lack of collaboration between great minds, preventing potentially great ideas from solidifying. I'll leave my points here so as not to create to long a post. My hope is that it will build awareness that open source is more than just software development, it's also about community. Destroy the community part and all you have is code. - Chris ( @cwgem )