I'm Australian, and we have compulsory voting. We also have compulsory education, as one of the basic requirements for democracy is a body informed voters.
I think one of the positive effects of it is that it forces everyone to think about it. I know people who I can guarantee would not vote were it not compulsory, but since it is they have looked into both parties and have formed some opinions which they then use to guide their votes. I think that anything that increases the overall political knowledge of the population is a good thing.
Another positive effect is that politicians don't need to spend any time getting people to the polls - this is something I see American politicians and citizens waste an absurd amount of time on.
Anyway, the fines in Australia are pretty small - I missed a state election once (moved and forgot to update the electoral roll) and it was around $20.
You should definitely learn Python 2. Almost all libraries still are on 2, so if you tried to go straight to 3, you'd have to struggle your way around most newbie documentation on the internet - Especially if you're planning on doing Django work.
Anyway, there isn't a whole lot of difference between python 2 and 3, really. The "proper" way of coding in python2 is very similar to python3.
I wish this weren't true. We all need to be pushing towards 3, and I think introducing people to 2 isn't helping the community in general -- but it is the right thing on an individual level.
I open up my Macbook and it's instantly on. You don't need to turn it off when you're finished using it - it really doesn't take that much power in standby.
It doesn't seem to make sense to say that voting for a 3rd party is a waste of time if half of the population who agree with you...