13
AleCx04
4y

i really wish Python would not have the presence it has on Machine Learning. I can think of a handful of languages that would be better suited for it and even though I don't hate Python it has a lot of things that just make me say uuuuuuugh when writing it. It al comes down from this: treating syntactic whitespace in a special way is fucking retarded.

Comments
  • 3
    I like how simple it is, but I dislike very, very much the idea that for any outcome, the authors of python believe there should be ONE way to accomplish it. It's an impotent approach.
  • 3
    @AleCx04 Yeah syntactic whitespace is stupid. The only thing that is even dumber is to make space and tab mean different things - looking at you, make!

    @bahua It's a good approach because if you get a new dev on board, he can get up to speed much quicker exactly because there aren't dozens of different ways to achieve the same thing.
  • 1
    I used to hate on it earlier, but honestly, I see the advantages of python's ability to write quick and dirty scripts that can later be redone in something else for production grade stuff, especially for ML where you want to spend more time on ML and less on programming.

    I don't mind whitespace, Haskell and the ML family have that too and it looks quite neat. It's quite nice after you get used to it (having said that I do prefer braces).
  • 1
    @RememberMe Looking neat is fine, but not with vomiting in syntactic meaning. I can make C code looking neat by running it through a beautifier with any arbitrary style settings without fucking up the syntax.
  • 2
    @Fast-Nop the core idea is to not have to bother with formatting per se, it should look decent by default. Python's whole design is that you focus on getting stuff running *somehow*, not in fancy code, and it should not look like an arcane incantation with weird symbols littered all around. I think it actually gets the job done. We might prefer braces style with the flexibility to format how we want (and believe me, I do) but the non programmers I've talked to who use python to automate and script their work (eco, bio, informatics, etc.) vastly prefer the python approach.
  • 1
    @RememberMe I won't object as long as Python is only used for quick & dirty throw-away-shit by noobs who have no idea of how to develop software.

    It's just that this is probably not quite the take that the Python community has. ^^
  • 1
    @RememberMe the difference between ml languages and python is that ml languages dont restrict the fucking maintainers from implementing feature in their own language

    Im looking at you, lambda in python
  • 1
    Like the code im probably most proud of, is 1 line of ocaml that scrapes a fuel price website and publishes the result in a rest api, it has like 20 pipes and shit
  • 4
    I think the thing that bugs me the most is how non-portable python is.

    Moving environments around is a pain in the ass.

    Using go?

    You just compile it with any respective dependencies. Boom, one folder. One executable.

    Everyone complaining about whitespace is just butthurt coming from a language with say, braces and wants to make python something it's not.

    Plenty of businesses run on and develop professional grade software using python.

    The genius of it is that the barrier to entry is nothing for the unskilled, python excels at quick and dirty and favors convention over configuration. And when you're ready for something more serious, python creates a sort of implicit contract among developers by strongly encouraging idiomatic code, creating a certain set of common standards and practices.

    It's a very smooth development experience, all except for the type system, but you can't have everything you want!
  • 2
    Well python have long history of being used by scientists.

    Starting from projects like numpy, scipy, matplotlib.
    When almost no one cared about science python supported complex numbers out of the box.

    There are other places when python is used in science like chempy, biopython etc.

    Python looks almost like pseudo code so people who barely know how to write anything else then complex math equations can use it out of the box.

    In real world no one cares about fancy syntax or type system but want to get shit done and work out any performance / architecture problems later or even pay more for machines then people time ( k8, docker, cloud )

    It’s only we developers who care about future but we’re only 23 million compared to 8 billion people out there.
    Peace.
  • 1
    @Wisecrack i wouldn't call it butthurt since it's not like if the language offends me or anything. More like genuine dislike over a feature that an otherwise great technology has.

    Amd I will never say that a low barrier of entry into a language is necessarily a good feature. I pay for that in multiple tech stacks, but those that have the "easy to code, entry level" deal are the ones that seem to hurt the most.
Add Comment