8

I hate python.

Who thought that creating a language that doesn't provide any backwards compatibility whatsoever without a way of managing versions is a good idea?

Comments
  • 3
    having to constantly upgrade and downgrade the whole interpreter just to use a specific package or software is annoying.
    Especially when pip is used for user-facing applications and not libraries
  • 11
    Python 2 is dead for good. Let it go.
  • 6
    @Oktokolo I agree, but this happens between versions going 3.X

    Which is why I 100% absolutely despise Python as the leading language in Data Science and A.I and would gladly use anything else over it.

    Quick scripts and glue shit in Python (as well as pen-test tools) sure, ok, why not. The leading language on the most revolutionizing technology of our time? no plz no. I get this from time to time when doing even basic analytical work.
  • 1
    @AleCx04 Sure, the deprecation cycle is definitely too fast and they really love that tiny breaking changes which really wouldn't be neccessary to begin with. But it isn't like any still-maintained product would have a hard time to keep up.

    So while there is a point, it definitely would still easily fit in a young Python3's mouth.
  • 1
    @griffi-gh

    Well, this is what virtual envs were made for, and Linux python sources make it easy to do sudo make altinstall so you can have several v versions at once without conflicts.
  • 1
    @AleCx04 perl ftw! 😁

    but srsly, why did perl die? Only bcz it looks cryptic?
  • 1
    @griffi-gh
    For fuck Sake.

    Stop developing on windows. Move to linux, and wrap your python runtime in a docker container. Makes shit easier to ship/deploy to production correctly as well. No need to play around with virtenv as well.
    Just open the debug port on the container. for advance use, mount your code into the running container.
  • 3
    @magicMirror if a script language requires you to specifically use linux and docker just to keep your sanity, then it certainly deserves the criticism.
  • 0
    Python likes to pretend that it knows __future__, but quickly forfeits the past that made it up.
  • 1
    @Lensflare
    Well. Yes. But also, Yes.
  • 0
    I hated this about it as well in the beginning, but my pain was alleviated when I found out about Poetry: awesome dependency manager.
    And of course venvs are always the way to go...
  • 1
    Most of the problem stems rather from the core problem of dependency management done wrong.

    Python has a large stdlib - too large for some people's taste.

    Most of the time the functionality doesn't get used, instead some <arcane thingamabob I found on pip> is used instead.

    There were discussions on Python handling dependency management recently, but a unified dependency manager seems to be out of reach.

    I'm completely against PIP. Mostly because PIP is the best way to break stuff... I love Poetry despite some shortcomings because it's simple.

    I entirely forbid compiling Python or other shenanigans for having the version fuckup one has e.g. with tools like NVM.

    The word "NO" is a good guide when it comes to "but I need this specific version".

    It's enough to e.g. support only even version numbers, top to two of them (e.g. 3.8 and 3.10). With a clear goal of transition to 3.10 fully when 3.12 is released.

    Don't try to support everything. NO is a perfect answer.

    E.g. httpx and request have near identical Interfaces - don't have both in your dependency graph, use only one (probably httpx).

    Same goes for linting, QA tools etc.

    If you have 5 linters - you're doing it wrong TM.

    ...

    Check your dependency graph.

    You might be surprised to find out what is actually in it.
  • 3
    @netikras As someone that loves Perl, I would say that it was because a simpler language came through, which appealed to the masses. Perl is known as a tool in which programmers can get things done. Whereas Python was made as a language for beginners to learn programming. To be real with you, the only thing that really makes me shit on Python besides the compatibility of modules etc is that horrid significant whitespace, so I can see the beginner's appeal.

    Perl will continue to be our secret weapon though
  • 0
    @AleCx04

    Honestly... Perl died because it's community commited cannibalism.

    At least that's how I remember it.

    The whole steering council mess... Raku... Etc.
  • 0
    @IntrusionCM from my side none of us really cared about perl 6/rakudo or whatever weirdness is going with it, we cared just about 5.x continuing to work.

    I still see them fairly active in our usual forums
  • 1
    @AleCx04 same here. I'd love python if not for those whitespaces... Well that, and breaking changes between versions.
  • 1
    @Oktokolo I worked at a company that still used Python 2, with no plans of ever upgrading.

    They would rather fork Python 2 and maintain it themselves than upgrade.

    They would rather rewrite the project from scratch than upgrade.

    Python 2 is far from dead.
  • 0
    @YADU Well, have fun in the Cobol mines then.
  • 1
    @Oktokolo workED at a company
  • 0
    @YADU Grats for escaping the Cobol mines then.

    But yeah: "It's dead Jim".
Add Comment