Tool as label
I've recently noticed a fun thing happening in technical circles. Especially among professionals part of it, where guys to what business what them to do. I call it “labeling”.
As I see, people identify themselves with technology they use at work. Like, “I am a Ruby Developer”, or “I am a Java Architect” and so on. And people, who tell such things, tend to put labels other people as well. It sounds like if some person works with one part of tech, he can't learn other parts. Backend Web developer can't get working with Frontend Web, or FullStack Node Developer can't learn python.
It frustrates sometimes, because is very stupid. It's like a cook that chooses to use knife and only knife. He can achieve truly perfection with the tool, but he may still cook röt dishes, because he can't stove, or choose spices correctly. Similarly, every single programming language and utility set is just part of toolbox of good developer or engineer.
Moreover, even if some language didn't fit into your toolbox – you can learn from any language you learn a lot. Half a year ago I've learnt Scala programming language, and learnt a lot from it. I've learnt, how strong enough typing system can make life way easier and simpler, what is FRM and more. Although it seems that it will not stick in my toolbox for now, but this experience showed me about such thing as Abstract Algebra and Category Theory. Otherwise I could learn about it way later or even never.
Please, stop labeling yourself to the tool. You deserve better just to be a servant of programming language.
If you have some thoughts on subject, feel free to contact me any suitable way