Josh Harrison has been the best 2B in the NL this year by WAR. If you look at Baseball Reference, he's the 18th best player in the NL overall and the highest ranking second baseman by WAR by a decent margin. Fangraphs has Harrison first as well. Throw in his positional versatility and I think he's an obvious candidate to make the All-Star Game and should undoubtedly be the starter for the NL.
Unfortunately, fans get to vote on players and Harrison isn't even in the top 5. Compare him to Javier Baez, the second leading vote getter and his 0.4 WAR, and you're likely to be angry. The All-Star Game is stupid because of the selection process; rather than representing an opportunity for the best players to showcase themselves, it turns into a silly popularity contest among players from the teams in the largest markets, which is a less fun even to watch.
I understand Harrison will likely make it as the Pirates representative (Ivan Nova will likely join him as well), but it's still frustrating that guys like Harrison don't get consideration immediately simply because of a fan vote that favors larger teams and players who get media coverage despite not actually playing well.