John W. Shaffer, nicknamed Cannon Ball, (February 18, 1864 â November 21, 1926) was an American baseball player. He played for the 1886 and 1887 New York Metropolitans. He continued to play in the minor leagues through 1897.