Snakes, why did it have to be…
The year 2016 is here! *Deep refreshing breath*
I love the smell of IT on a fresh year, and this year is no exception. So as I go about my work today, I find a reason to write a script. This leads me of course to the choice of language. I could do a simple bash script, but in this instance I feel that the greater power of something like python/perl would be preferable, as this script could end up growing and becoming a more powerful mini-application in my life. Python being my “slightly better than a script but not quite a full programming language” language of choice, I of course fire up my vim on scriptname.py, I shabang in my /bin/python…and it hits me.
It’s 2016. I, like many lovers of that snake-y language have stubbornly stuck to using the 2.x variant of python. Why? because its what I first learned, and when I learned it people were saying that it was the best choice. I’ve been putting off learning the new subtle nuances of python 3.x for years because of :
Of course, being an admin in the enterprise world, the bread and butter of my servers are RHEL based systems. Ok, I say “of course” as though its a no brain-er, but I’m sure there are a few people out there screaming “Debian for life”, and that is OK too. I’m not a Debian fan-boy, its not “my thing” in a work environment, but I think we can all agree that as long as you aren’t stuck using Windows server 20XX, life is good.
Anyway, back on topic: I check my available versions of python…find that I have 2.6.x and 2.7.x installed. No problem, I call upon the ancient power of the package manager for python3…aaaaaaannnddddd….Nothing. In the enterprise world of Redhat… Python3 isn’t even a package. I have a brand new, systemd using, RHEL 7 install…And even with the EPEL repositories added, I cant issue a basic ‘sudo yum install python3’ to install the package. I have to download and compile source code, and for the record I’m not some snob that is afraid to compile something from source, but for a scripting language that will automate your world: I feel that its a bit rediculous of a step. THAT THING SHOULD BE INSTALLED BY DEFAULT, OR AT LEAST A PACKAGE!. Further more, even in Debian, py3 isn’t the default python version, its included sure, but its not the default interpreter.
As I mentioned before, this is RHEL 7… RHEL 7 is using systemd, and while I wont turn this into a rant about systemd vs sysvinit, or upstart or something: Systemd was first released in 2010…Meanwhile python3, was released to the public first in 2008. So what your saying is that in 5 years, we were able to gain enough faith in systemd to switch our MAJOR SYSTEM CONTROLLING FUNCTIONALITY over to it at an enterprise level… But in 12 years, we can’t even have python3 available as a package? (yes yes Debian, you have it as a package, but having every software known to man as a package in your repositories is kind of your thing, you still don’t have it as the default interpreter.)
I find this whole situation fundamentally twisted. IT IS 2016, FOR CRYING OUT LOUD! This is the time, we should be making the switch to bigger and better things! WE LIVE IN A WORLD WHERE THE HOVER BOARD EXISTS *cough* and burns down your house…and also isn’t even a real hover board, BUT IT EXISTS DAMNIT! we’ve officially passed the time line in back to the future 2, and we don’t even have python3 as the standard yet. I know, a LOT of things use python2.x that are nifty and important and there isn’t backwards compatability in python3…But come on guy’s, if we don’t make it happen the problem only gets worse. Python2 is out of development, its done: it’s DEAD. We’re basically necrophiliacs right now, beating off to a dead horse like its still cool or something. We’re past the HALFWAY point to 2020… and if we don’t draw a line in the sand, guess what. In 2020, the developers of python will finally abandon development of py3, and pick back up development of py2.x, not because its a good idea, but because we STILL wont be done with py2.x…
I’m honestly ashamed to be a linux admin right now… Good job…Fuck….I might as well just go install server 2016r5 or whatever Microsoft has out right now, and program something in C-flat or something…. fml. ITS 2016!!!!!!!! JEEEEZZZZUSSSSS