Explain to me why this isn't the worst programming language to ever be created

Explain to me why this isn't the worst programming language to ever be created.

cause java exists

cause ruby exists

At least Java has some structure to it that resembles other programming languages; can't say the same about Python!

that's not how you spell javascript

Dynamically typed programming languages are so tough for me coming from a statically typed language.

In Java if I see: public int myfunc(myObject obj), i know accessor, return type, and parameter type. I know I can call the method after I instantiate the object. I know it takes a myObject object and I can open myObject.java to know more. I know itll return an int.

In python: func myFunc(obj). What the fuck does that tell me? What is obj? I need to look in the function code to figure out what obj, if something is returned, etc.

I dont even want to get into why I can change any class variables can be changed along with instance variables. I dont give a shit that I can write 10 lines of python to do 40 lines in java. When something breaks, I like to understand the code, not rely on "syntactical sugar"/"magic"/whatever the fuck python/ror devs call it.

php is fucking dogshit

sounds like you are afraid that 16 year old girl coders are going to take away your job soon ;)

Dynamic typing was a mistake

It's a scripting language.
No one should do serious work with Python.

It mixes paradigms.

>No one should do serious work with Python

hahahahaha

>pic related

Wait so it's normal for that to be confusing? I'm a complete noob and I was learning Java at first. Someone told me to stop and learn Python instead because it's easier, but I found it confusing for that same reason.

you're dogshit

It's one of the better scripting languages though.

found a web-monkey who started in 90-00s

I started with python also 7 years ago. Starting with python abstracts all of the "confusing" stuff I mentioned that java has. As a beginner, you want to focus on the logic and just writing code that works. As you grow and have to work with thousands of files and complex codebases, youll want all of that "confusing" stuff to help you.

Its like learning to drive a car. No one recommends you start in a manual or learn about car parts. Just learn to drive the thing. But when you get better, not knowing how gears work or how to change your oil will hurt you.

I develop in java and python so I dont hate python. Im up to hearing any arguments in favor of python in large complex codebases. And no, I dont give a shit that I can make a web app with django in 5 min.

Only shit devs worry about losing their jobs to bootcamp grads, pajeets, and "everyone can code" agenda pushers ;)

It just werks.

>i-i-m not shit!! im so valuable! m-m-my boss would never fire me!!

this is what code monkeys really believe

ONE WORD

THE FORCED INDENTATION OF CODE

THAT IS ALL

It sounds like you need to get better or find a better place to work. Theres plenty of se jobs if youre competent. No idea why youre trying to insult me though, have a good night. Or afternoon if youre a pahjeet.

I did a special entry university program that was only available to people with prior experience in programming before they entered university. Every single person this program has pumped out, except for me, primarily or only programs in Python or Javascript. Head over to the CS degree and it's even worse (they program in Java or Python only, but many of them couldn't build anything of size). Everyone Can Code people are a step worse again, they can often only write HTML/CSS.

As the only competent C/C++ developer for several miles in any direction, I'm really not concerned about Everyone Can Code people when CS graduates aren't even a threat.

You could always do type hinting with comment documentation, which results in your IDE giving warnings if there's incorrect type usage.

keep dreaming lol

code monekys are so delusional ... most of you ancients are going to end up unemployed and too old to get back into the workforce cause you despise the direction this whole 'coding' thing is going to take

its going to be 'normalized' and all you socially inept autists are going to get replaced by actual human beings with social media presence etc ... they did the same for every other department.

Dont think for a second that you are safe.

Autistic Engineers (non software) will stay in the game longer but even they will get replaced by quirky liberals that come with a more complete package ;)

I know my European bias is showing here, but you should start to drive in a car with manual.
Young people are not likely to buy a car with cruise control and automatic gear shifting and stuff like that.
And even if they do, learning how to live without those things is not a bad thing.
You shouldn't be on the road if you don't know how to check for oil and how to fill the tank.

It should be perfectly fine for a person that is learning to know that they are still learning. By separating tasks into basic and advanced stuff, you are making the student think that some of the advanced stuff is hard and thus fine to not know about.
Static types are easier for new people because they need to know that they make a choice on what the data should be.

...

Python is great. Let's me do proper work quickly rather than having to spend ages on mundane shite that has nothing to do with what I actually want to achieve for the task at hand.

And fuck Fortran for this reason.

import X
X.dothething()

Why would you want it to be more complicated?

t. NEET

yeah, you aint shit if you wrote your first line of code after 1985.

and no switch case statements
and white-space, closing functions,
python is odd.

This. I wouldn't use it for anything big (I have been burnt by this before) but for quick bits of duct tape to hold other bigger software together or automate some small task it's great.

Because Ruby exists.

>and no switch case statements
You can sort of fudge something together with a dictionary but yeah, it's weir.d

>In python: func myFunc(obj). What the fuck does that tell me? What is obj? I need to look in the function code to figure out what obj, if something is returned, etc.

And God created the docstring.

See . If your Python code is more confusing than Java code, you're a fucking shitstain Pajeet "developer" and should off yourself.

Python code is readable and elegant, if you look at something and you don't know what it is/does, then you've failed at one or more of: good variable naming (understandable if you're coming from the pile of shit that is Java), proper documentation (comments, docstrings) or sensible code structure.

I'm with this guy: JavaScript has eclipsed C++ in my mind as the most poorly designed (popular) language.

I said I was open to hearing pros of python you autist no need to get triggered. You assume proper naming and documentation is present in large codebases which its not in most cases. I didnt say python is shit and I work in both languages equally. Its just harder to navigate code when things are not statically typed and you need to use "context clues" in the code to figure out what exactly is being passed around. Writing code in python is easier than java but debug time is where it comes back to bite you. Or are you going to tell me all code should work all the time and always have docstrings?

fpbp

The unimaginative and unintelligent always need structures to guide them otherwise they get lost.

It's okay though, Java was invented exactly for this reason.

At least, its standard library doesn't suck for the most part.

Not really, though. It's at best mediocre tier.

...but that's not even programming. that's just calling something someone else has already programmed.

What are libraries and what's their function?

>No one recommends you start in a manual
Was with you up to this point. Fucking Amerifats who are too retarded to drive a real car..

There is always php to take the throne of shit language design.

Python has its niche and that is prototyping around libraries. I wouldn't use it for anything safety critical or with a big code base.

Of all the scripting languages, python is the most intuitive.

Really the main reason, is because you create this post, you realize, that python is used in many fields on the industry. soon or later you will have to accept it. Don't be scared boy, you just need to leave the "dark side" of the force.

It's an interpreted language, and as such is pretty useful.

For some projects it's fine to sacrifice performance for easier readability and development speed.

Every language thread is the same here. Use the right tool that accomplishes your job well and move on, jesus.

>large codebases
>in python
Nigger, what the fuck are you doing? Python is a scripting language. That's the whole reason of it being dynamically typed rather than statically typed.
You're using the wrong tool for the job and complaining about the tool.

>b-b-b-b-but muh performance

this

Because Paamayim Nekudotayim exists.

You guys dont start with a manual where you live? What

QUADRUPLE INDENTATIONS LMAO

It's too bad I have to work with Python now. It's like all the worst of OOP. You can clearly see whoever developed it completely misunderstood OOP. Give me Ruby any day.

For example check this python code:
result = []
my_list = [a,b,c,d]
for n in my_list:
result.append(n % 2 == 0)
print(all(result))


in ruby
my_list = [a,b,c,d]
print my_list.all? {|n|n%2==0}

perl is worse
even perl6 is wtf tier.

python ain't got shit on perl in terms of how shit its grammar spec is.

it isn't supposed to be fast

it's a scripting language and a damn good one

WHO DID OOP BETTER, PYTHON OR RUBY????

PYTHON
len(my_list) #this is non-intuitive aids and not OOP


Ruby
my_array.length #clean and readable, intuitive and good use of OOP

that's not an excuse in 2017 anymore.

obviously ruby but no one uses ruby

>OOP in a scripting language

Never understood why people used this crap over superior languages

[print (n % 2 == 0) for n in [a,b,c,d]]


ruby is for retards.

>I don't know how to use the language so it must be bad
print all(n % 2 == 0 for n in my_list)

yes it is

Not that python is even that slow.

It's fast considering you don't even have to think about memory

B T F O

If you share what/how you use other language, maybe we understand. Share your experience, stop complaint

no it really isn't

CPython is dog shit just like your shitty language.

being a scripting language has nothing to do with being slow, just having shitty virtual machines and JIT

Pythin is super useful as a scripter for administration. That's all I ever use it for.

of course the example was simplified because that only works if it can be done in one line

show me an example that's not simplified then

The point is why would you want to?
Python strength is that the code is very human readable. In a time where source file size is irrelevant why would you like to condense powerful abstractions into hard to understand one liners or smallest possible code block. Learn to python and produce functional code that runs but is also human readable at a glance.

I love Python, but everyone at work is now moving to Golang, so I have to start over learning a language and Golang is so annoying. At least it's not Ruby though!

To check for a checkmate in chess for example
>iterate over pieces
>iterate over allowed moves
>return all?

return pieces.all? {|piece|
piece.allowed_moves.all?{|move|
board.move_piece(move).king_is_check?

forgot }}

you cannot do this in python because lambdas are oneline only

to be fair the list comprehension in python could do this as well.

not if checking if the king is in checked position requires more than one line, that is the problem.

and even then it would look like
for x in [for x in my_list if condition]

I agree Cpython isn't any good. But Cpython isn't python you dumb fuck.

It's excuse for being slow isn't that it's interpreted. It's a design decision that was made to serve Python's intended purpose as a scripting language for automating tasks and one-off programs.

Pros:
> easy and fast to write
> portable
> No compile time
Cons:
> not fast

>
> t. dumbfuck memelord who cares about syntax

here you go
return all(board.move_piece(move).king_is_check
for piece in pieces
for move in piece.allowed_moves)

>But Cpython isn't python you dumb fuck.

given that it's the only implementation
that fully covers the spec, yes it is and its shitty.

also pypy is not nearly as slow but lacks a lot of spec and other features making it less useful and less general.

You have to go out of your way to find a car with a manual transmission in the US.

They've almost gone the way of the dodo because there's no reason to have a manual when most driving in the US is either hours on the highway where you sit in one gear or stop/start city driving where it's just a distraction.