how to learn all about Linux and programming
To use it as a regular user (like my 73 year old mother or my non-tech savvy wife), it's NOT hard at all to learn how to use any GNU/Linux OS from nowadays.
For an advance user who might want to do more advance stuff, is tricky to get used to the 'new *nix' world (as in location of files/directories, procedures, etc) but the upside of that, is that you would be using an OS with the best online community of them all.
There's practically no single answer you would NOT be able to find online with the appropriate time invested into the search of your question.
In regards of programming, I'm not a programmer so I could not answer that portion.