Ranter
Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Comments
-
Parzi86635yPython.
For HTML.
To both host a server...
and run Python snippets inline.
dude i have wanted this since age 10 and still do sign me the fuck up -
gat0r485yI love the changelog for PyOP.
added some new bugs to hunt later.
made commits with "unhelpful" messages. -
@12bitfloat nah just you fam. But I am curious as to what mega large software have you built with python that makes you constantly complain about it. Cuz you would be hard pressed to find other people thst dislike it just as much as you.
-
@AleCx04 Most people also like Justin Bieber or McDonalds. Doesn't mean it's good
-
@12bitfloat exactly ! Like how so many folks love java in spite of it being a flaming pile of excrement
-
@codebanana I don't think I have ever seen anyone claim to like Java beside me. In fact everybody always seems to hate on it because they can't do proper software engineering
-
@12bitfloat right. But this is the thing, nothing about Python makes it not a proper language for software development. Am I supposed to take your biased opinion of it as truth over the combined effort of all the people that constantly use it for data analysis, research, web development, machine learning, task automation and many more? Your opinion is better than all of academia, MIT, Harvard, ASU, Stanford everyone?
There is a difference between a 12 year old girl liking Justin Bieber and a +30 year old phd holder writing software my dude. -
@12bitfloat java's style of oop doesn't encourage software engineering. Quite the opposite.
-
@codebanana that is just adding to the complete opposite direction of the spectrum here. Can't combat a biased opinion with another one. There is nothing wrong with Java that would call for someone saying that it does not encourage software engineering.....
-
@AleCx04 My point is that Python just isn't great. Ask the PHP fanboys, they have been saying the same thing for close to two decades now: "Yeah but if Facebook uses it then obviously it's the great solution". Besides a bucket full of little annoyances, some of which are obviously subjective ("some" being the important word), one of the major downsides is dynamic typing. This is something you can't get around and no amount of excuses will make it better. Dynamic typing is inherently worse than a static typesystem with inference. It's not statically analyzable for one, it's less efficient performance-wise and it's a huge pain in the ass for programmers because it's almost impossible for an IDE to give proper auto complete results or check whether something exists. Countless times I have been shown completely irrelevant methods and fields that *may* be part of the object in question because it just can't tell whether they really are. That's bad
-
@12bitfloat Look man these items are valid to me because like you, I tend to prefer an actual static type system much like in Java or C#. At the same time, those points you made are the cons that would-of-could-of make it annoying if you didn't know what you are doing. You seem a smart lad from your other posts, you really gonna tell me that you would not be able to properly set out the Python development tools(linter, docs etc etc) in an editor to have that working for ya? It ain't a hard thing, but I suspect that your bias for it would prevent you from working with it.
I ain't saying its perfect, it ain't and syntactical whitespace makes me puke. But it is not a bad language, not an unusable language and certainly not one that can just be dismissed as garbage. Would I pick it over Java, depends, Python is more comfortable for experimental programming and research and many other things. -
@AleCx04 To be fair my first post was mostly a meme. I wouldn't call Python garbage. It has some advantages like how it allows for very quick scripting. But dynamic typing is just something I can't get over. I use PHPStorm as my IDE which is probably about as good as they come but it just doesn't feel as good as Java. It's not that Python is unusable. I just can't get over this wall of positive things being said about it
-
@12bitfloat Python is actually quite rigid when it comes to its typing. Other than for example js or java a + will never output a type you didn't explicitly expect. Sure you can reassign a type but so can you by casting to object and recasting in java, you just shouldn't.
This is why I hate the idea of python being a 'beginner language' because, even if it abstracts it away quite successfully, if you don't understand data types and structures it will hurt in the long run.
I agree that IDEs tend to cope with that rather poorly which in turn to me only encourages coherent interface design, which I always felt to be a good thing. In Java for example I can lean on my IDE, in python I need to be sure that methods that do similar things have logical names. Much more arguing if you're working with other people but that's how I like it.
In the end I always favored the approach of using the tool dependent on the job and arbitrary 'hate walls' just limit the selection. -
@Godisalie It's true that Python is strongly typed instead of weakly and thank god for that. It's the dynamic typing (which isn't the same as weak typing) I have a problem with. I agree that Python shouldn't be seen or taught as a beginner language. But as you admit the type system is too lose to be considered good. That's exactly my problem. My hate doesn't come from the fact that Python is popular, it comes from the fact that I have and do use dynamically typed languages and they are always a bad experience. All of my rants about python are direct results of using it at work
-
@AleCx04 Alright, it's true that I might be biased, but let me step back a little and elaborate briefly.
Java's oop implicitly encourages 2 things:
1) encapsulation of state
2) object taxonomy
Neither of which scale well. In mid to large "enterprise" codebases, you'll often find those 2 used and extended in ways that make you question your sanity.
Then to tame the beast, you will *have* to use software engineering "techniques" (typically called "design patterns") to actively manage the complications that inevitably arise because of what the language itself encourages. -
@codebanana I disagree. I believe encapsulation of private state is the *only* way to actually build robust, flexible and scalable systems. Other approaches only work when you know the scope and architecture beforehand. The fact that enterprise codebases are bad has nothing to do with this. Have you seen C, Basic or Fortran codebases? Apart from Fortran, fully procedural and still massive shit shows. The real issue is that either most programmers in big companies aren't competent enough or that software engineers aren't good enough to make up for the fact that the programmers aren't competent
-
@12bitfloat state encapsulation in objects is a bad idea when taken to extremes. As the application grows, you're gonna end up with a huge object graph, with each object containing mutable state.
The complexity just explodes at some point. Who changed this state to what when? -
@codebanana by heavens that was eloquent and precise, you are the best banana I have ever had the pleasure to speak to. Very valid criticism in terms of state management. At the same time, I would venture to say that such Java was designed in the way it follows OOP to follow the set of design patterns that we have to manage private state. Wouldn't you say that it is preferable to other more popular ways of doing it i.e global state management in JS? I love JS, actually love most programming languages, but it is precisely that JS has global state that we have all these frameworks that help dealing with it i.e Redux and whatnot. I for one find it easier to deal with it in the way that C# and Java do it. But that is me actually being biased on my preference.
-
0o
"But I found that Django has a steep learning curve, You can't just use it to build web-applications after learning python, you have to watch and read tutorials on Django too."
No shit sherlock, at least praise Django for having proper documentation available! Not to mention the security framework Django provides and such. Yes, I use Django on an almost day to day basis at work. The tutorial they provide can actually get you started quite quickly, it even got me through an assignment I had to do for a job interview (while being honest I never used the framework). -
@gaaraDev Thanks but I'll pass. Might aswell just use a language I like more instead of dicking around with something that I don't like in the first place
Related Rants
I'm a programmer, I don't have life
joke/meme
language
python