I have a small grain farm and also develop software professionally. I find software development is the easier of the two, personally.
Problems in software all go back to the rules of computational theory. It's not exactly easy, but the space is fairly limited and can be understood with some effort.
Problems in farming are all over the map. Sometimes you have to engineer a new piece of equipment to get you out of a jam, other times you're dealing with biology, medicine, mechanical work, sales, you name it, you probably have to deal with it. And you need a solution now. By tomorrow, your profits for the year will be gone.
True, although, technically speaking, that work still exists. The programmer just delegates it to the computer instead of having people do it. There is no reason why you couldn't have an assembly line of humans hand-compiling your programs, if you really wanted to. Once you give them the basic rules, they can set forth and complete any task that you ask of them. It is just repetition at that point.
Farming is quickly going in the same direction. The delegatable jobs are, more and more, being done by machines.
Then you look at the code of the people who are attracted to coding, and 'capable' of it and pale in fear of how bad the code is (even if it works).
Not everybody back then were smiths though, just like not everyone today will be programmers. Programming definitely has a great impact on society (like smithing did), but if you consider the incredibly important impact that farmers have, they hardly even compare.
Common, have you ever tried to plant something?
THAT is difficult!
Any profession could become a mass profession.