Abstract: Spin systems model the interactions between neighbors on graphs. An important special case is when there are only 2-spins. For 2-spin systems, the problem of approximating the partition function is well understood for anti-ferromagnetic case, while the ferromagnetic case is still not clear. We study the approximability of ferromagnetic 2-spin systems on bounded degree graphs, and make a new step towards the open problem of classifying the ferromagnetic 2-spin systems. On the algorithmic side, we show that the partition function is zero-free for any external field in the whole complex plane except a ring surrounded by two circles with respect to the degree bounds. Especially, for regular graphs, the two circles coincide, and the partition function vanishes only when the external field lies on the circle. Then using Barvinok's method, we obtain a new efficient and deterministic fully polynomial time approximation scheme (FPTAS) for the partition function in the zero-free regions. On the hardness side, we prove the #BIS-hardness of ferromagnetic 2-spin systems on bounded degree graphs. There exists an interval on the real axis so that this problem is #BIS-hard for any external field in the interval. Especially, the upper bound of the interval coincides with the boundary of the zero-free regions, which implies a complexity transition at the point.