It's complex vs complicated. A compiler may be very difficult to build but it is largely complicated.
Human issues are often complex and may not even have a real solution. Consider human issues like Brexit and the Good Friday Agreement - at face value they are a contradiction and yet a solution must be found.
Coding is absolute - trying to build software that can handle all these edge cases, let alone adapt to environmental changes like the law changing around you, when the decision makers have no insight (or interest) in the details is what makes software difficult.