English: http://www.infoworld.com/d/data-center/dont-want-mix-programming-languages-you-already-do-239907
I have been in a blog post on the issue of multi-language development, this week many friends sent comments and emails, which naturally there is no lack of support and opposition to the voice. In fact, this is also early in the expected, such controversial topics will always bring two different camps, the two sides of the word is a quarrel.
I can't really figure out why things are going to be this way, and maybe it's been a long time since we were a child: kids who preferred the Chevrolet brand would pee on Ford, and the Ford-branded kid would be happy to use dirt to paste a Chevrolet bear face. Perhaps as we grow older, we will not be obsessed with Superman and Batman who are more powerful, but similar debates are still recurring and continuing to come around us.
We tend to be overly dependent on our "most favored" language, and it is difficult for anyone to break away from what they know and step into uncharted territory. We all like to hide in our chosen shell (shell) to live in peace. The shift from the general bash shell to Zsh does allow us to come into contact with a new world that is quite different from the past and break the inertia of thought, but the strangeness, the sense of loss and the valuable time that the learning process has to devote to it can be annoying, and sometimes we even prefer to throw it all away. Go back to Bash's arms again. It is not difficult to understand that, after all, not everyone has enough time to overturn the experience gained over the past few decades, determined to learn from the beginning-no matter how tempting the final outcome, the cost is too high.
However, cruising between different programming languages is an ideal way for developers to improve themselves, which is always a irrefutable truth. Whether it is a programming language, a shell, or an application, we always choose the commands and practices that we are most familiar with, and once we have established our basic work habits, we never want to leave this warm and comfortable nest.
For example, today when using the VI editor, I still habitually hit three "w" Keys to push the cursor forward to three words, or press "0" to move the cursor directly to the end of the bank; I certainly know that more concise operators such as "3w" or ")" can be used, but the power of habit is so horrible. Similarly, when it is necessary to move up to the top of the file, I will always instinctively use "1G" rather than "GG". These intuitive reactions have been dissolved in my blood.
This kind of situation is equally common in the development work. We have our own accumulated functional cognition, proven and stable processing methods, but also in their favorite language to grasp the use of the operating module. Although we understand the use of other languages, we still have a sense of fear of entering uncharted waters when we really face these functional elements.
Interestingly, in most cases, the time wasted in using the inherent method over and over again is enough to help us learn and master the more scientific processing mechanisms that other languages provide. Once we have dozens of written experiences of the same content, we lose the desire and reason to observe the logic behind it. We only know that we can add these functions and fill them in, and they will naturally give the correct answers. So, youth is in the repetition away from us. But if we take a different approach and look at the same functions in various languages, we will often find more space for optimization than we had ever realized. Looking at old code from a new perspective is both fresh and frightening, but that's what it means.
Reluctant to mix a variety of programming languages together? Maybe you're not aware of it.