Following most of the comments I've read I fall in the generalist population.
But I'm trying to have a more nuanced perspective. My goal is to be a specialist in a couple of practices less likely to change not in the tools that are more likely to change.
For example, as a developer I would want to become a specialist in Object Oriented Design, not in Java/PHP/etc. I might not understand all the nooks and crannies of Java and the JVM but I understand enough to get the work done in 90-95% of cases and I'm comfortable enough to get my hands dirty with the official documentation in order to deliver good work in the rest 10% of cases. Yes it's quite probable that a Java specialist will be more effective than me in those 10%, but having a wider breadth of knowledge makes up for it in other areas of the project.
In my experience I can cover most of my lack of knowledge in a certain tool much quicker if I already have previous experience in switching tools. I'm becoming better in understanding what I can take and apply from my less-specialized expertise and what I need to learn quickly in order to minimize the impact of my "generalism".
Another interesting thing I noticed is a cross-pollination effect, I can bring experience from other tools and provide a completely fresh perspective in solving problems compared to specialists that otherwise wouldn't have even considered some of the new possibilities.
But I'm trying to have a more nuanced perspective. My goal is to be a specialist in a couple of practices less likely to change not in the tools that are more likely to change.
For example, as a developer I would want to become a specialist in Object Oriented Design, not in Java/PHP/etc. I might not understand all the nooks and crannies of Java and the JVM but I understand enough to get the work done in 90-95% of cases and I'm comfortable enough to get my hands dirty with the official documentation in order to deliver good work in the rest 10% of cases. Yes it's quite probable that a Java specialist will be more effective than me in those 10%, but having a wider breadth of knowledge makes up for it in other areas of the project.
In my experience I can cover most of my lack of knowledge in a certain tool much quicker if I already have previous experience in switching tools. I'm becoming better in understanding what I can take and apply from my less-specialized expertise and what I need to learn quickly in order to minimize the impact of my "generalism".
Another interesting thing I noticed is a cross-pollination effect, I can bring experience from other tools and provide a completely fresh perspective in solving problems compared to specialists that otherwise wouldn't have even considered some of the new possibilities.