Also, generalist-vs-specialist depends on your perspective. To your clients, you are a specialist. :-)
Personality-wise I'm really a generalist, but I've started thinking of myself as a specialist in full-stack Rails development. I don't think that's as oxymoronic as it sounds. I've done web applications for 15 years, and Rails for a long time. Besides Rails I can go deep on Postgres, Chef, and AWS, which I think all hangs together very nicely, and I can go broad on Javascript, machine learning, and Java/Python/C/iOS. You don't want me in charge of buying your routers or architecting your Django app, but it's not like all I do is Postgres performance tuning. HN folk would call me a generalist, I'm sure, but for a lot of clients, I'm specialized enough. Anyway, a generalist with 15 years experience might know more about x than a specialist with 2. :-)