Is Java still a thing?

Why do people still use it when there’s C#, python, ruby, etc?

Attached: B2C14029-AABF-4B0C-8E5F-C2EDC0127B3E.jpg (1024x768, 53K)

Theres better head than ur mom but i still unload in hers anway.

>C#
Stay away from Microshit
>Python, Ruby
No static typing, bad for anything that's not a script

Shitskin hindu cope.

There’s nothing you can do with Java that you can’t do with python.

Multithreading.

Modernizing cobol.

Legacy code, some good frameworks, many people are experienced in Java.
Even if you don't like Java would you rather have someone who wrote Java for 20 years write a new java software or force him to use C#?

high frequency trading

minecraft plugin/mods

fpbp

Runescape

but isnt this true for all turing complete programminglanguages?

what am I missing?

Attached: Homo_erectus_new.jpg (288x360, 39K)

Not quite. Javascript might be Turing complete but good luck writing an device driver with it. Or a kernel.

>C#
Because until .NET Core, which is very recent, C# was Windows only.
Companies are not going to throw out all of their Linux infrastructure.
Don't get me wrong, I like C# - it's like an improved Java - but cross-platform support is basically nonexistent.
We have a mixed environment at work - some of our servers are Windows, some are Linux.
We had considered using .NET Core for some utilities that would run on Linux but almost every release of .NET Core is a breaking release and that is unacceptable for production use.

>Python
Java is strongly typed, Python is not. When you have a large number of object-oriented libraries and "business logic" code, strong typing is essential.
There's also the performance benefit. Java is significantly faster than Python.

>No static typing, bad for anything that's not a script

Tell that to AirBnB, Github, Intercom, Stripe, Groupon....

why yes, I exclusively use ActionScript and R

Attached: gigaaa.jpg (1242x1394, 185K)

why not just use C++ for everything? it even has muh classes and multithreading and fast performance + memory management is easy with RAII

Attached: 1556067102043.jpg (655x527, 36K)

>memory management is easy with RAII
typical frogposter

>ActionScript
That was my teen nightmare

Doesn't Java support that

Because web is the majority of development now.
Python has Flask and Django, Java has JSP and Spring, C# has ASP.NET.

So all of your web applications can be C#/Java. All of your desktop applications can be C#/Java. All of your utilities and scripts can be C#/Java
It lets you have a complete ecosystem in one language for better interactions.

Yes, Python is the one that does not, which was the point.
I'm not sure if any interpreted language allows parallelism without bindings. JS seems to have added this feature last year, but it's still experimental and have some shortcomings.

everything in this thread is ok but replace JAVA with Koltin

Can I fully learn the web-based part of C# on linux only?

of course

Because people used it for a live and there is tons of stuff.
Google dropped it for kotlin
>C#
Mkey, not exactly the reason why people use java
>python
It is not a valid alternative, come on, it is more a meme language.
It is good just because in American college teach it an many smart people know only python and code in python, therefore they produce libraries for python.
>ruby
...
Ok you are a troll.

Ok if Java is so good how come the newest technologies (blockchain, AI, machine learning etc) are all being written with python?

Because it works

It's still widely used in enterprise software, so there's plenty of jobs that use it. However new projects are avoiding it since Oracle is shit and Java is deprecated.

A programming language is not a trending thing. Pyhton is a scripting language, you can't compare that with Java or C# or C or C++ Get a job instead of opening senseless threads.

because python can invoke C/C++ libraries easily and no one want to use JNI?

Enterprise. and the JVM itself isn't bad, Java is just disgusting.

Modern Java is ok.
The problem is tons of legacy code.

You could write a program that writes the machine instructions for any task to a file :^)
Call it something cool like equivalence.js

Finally a good reply.

I write everything in c and c is also good for web development

That doesn't mean that Python is better in all (or even most) cases...

java has way better libraries than c# and if you need more features you just use other jvm langs
python and ruby are entirely different

Godly amounts of effort has been poured into making the JVM very fast. People have years and years of experience building on the JVM. It's a known quantity, people are comfortable with the reliability they can expect from it. Don't delude yourself with Stack Overflow meme surveys about the hottest language of 2019. Most of the world is doing "boring" work in "boring" languages for a reason.

At the end of the day programming languages are just manipulating data. Java is simply one that a lot of people and companies prefer to use to achieve that goal because of the above. That's all.

There's great newer JVM languages which make use of Java's libraries. I choose them over C#.

It's use is deeply entrenched within the enterprise world. You have a world of enterprise Java developers who are good at what they do.

There is nothing wrong with Java.

Just like every language, it's not perfect for every use. But, why not use it for the cases where it is acceptable?

That's not to say that C# isn't good too, and has its uses.

Ultimately, all languages have their uses. Lets face it, we all work with a toolbox of various tools. One may be named Java. Another may be named assembly. Etc. And each tool has its specific use. Don't use a screwdriver to hammer in a nail. Don't use a hammer to loosen a hex bolt. Etc.

Millions of pajeets are trained in it and you must already know that there's no way to train them to copy anthing else from stackoverflow.
Also, existing programs that are written in it must be maintained.

This.
I'm 100% sure that Java is meant for pajeets and third worlders.

Still, I'm sure it's a good language to learn the basics.

my old feature phone has java on it. I use it to play java games like dynamite fishing.

>However new projects are avoiding it since Oracle is shit and Java is deprecated.

can someone redpill me on this? isn't like OpenJDK under the GPL and with the FLOSS fixup projects around it you don't even have to pay a penny? + there are tons of alternative commercial implementations supposedly

OpenJDK has also been the reference implementation for nearly a decade now (starting with java 7). Java = Oracle is basically a meme at this point.

Build a reliable backend also oop. Inb4 python has oop it doesn't even have brackets

> Great for 3rd worlders and basics
> Every important company relies on it for their backend

Pick one

Because data scientists don't want/need to worry about software engineering practices. Python is an excellent glue language if you want to patch together different technologies like pandas, tensorflow, et al. and run the results in a Jupyter Notebook.

If you want to create a complex system with a ton of business rules, then Java (actually Kotlin nowadays) is the way to go. Also don't fall for the C# meme. It's a less performant, less portable ripoff that's only being kept alive by Microsoft's pajeets.

Attached: ms_pajeet.png (892x564, 65K)

>And not native to North America
Kind of ambiguous desu

because of one crazy little thing called financial services
it's basically powered by ancient cobol spoken only by angels in their 40's and 50's, java and spring.

Attached: 1558230504805.png (566x528, 138K)

Big companies like FAANG also use openjdk because they don't want to fuck with Oracle.

This poster is employed. Listen to them.

gotta maintain old ass shit, it predates C# and there's a lot of legacy codebases people still gotta support using it

I agree user, but it doesn't look pretty and that turns a lot of people off, it's kinda one of those things you gotta have extreme turbo autism to get into and you'll never understand the appeal until you're already down the rabbit hole, C++ is like competitive melee

true but at the same time, all the major web browsers are C++, most of the professional media software is C++, for game development C++ is the industry standard, etc.. you could argue there's always a way to implement these things using C# but at that point I think picking the language just comes down to measuring the specific pros/cons for your project, there's no be all end all

based

> C++ is like competitive melee
Best comment in the entire thread.

Ok so this is what I got from the thread:
> Java is used to maintain a shirt on of legacy code
> Java is mostly used/best for enterprise software, not necessarily the coolest/newest Technologies
> faster, more reliable than python and C#
Thanks

>Hadoop
>Spark
>Storm
>HDFS
>ZooKeeper

every company with +10tb data runs on java or scala

>tfw your legacy code is naked

>Cassandra

Android and minecraft /thread

>C#, python, ruby, etc
We've had Lisp for even longer, yet almost every "innovation" in programming languages nowadays consists in catching up to 1958.

"Scripting language" is a meaningless term used by autists to discredit what they arbitrarily believe is not "real programming".

so there's no difference between how python, C#, and C++ are typically converted to machine instructions?
There is an obvious difference, and just because academic retards separate the language from the implementation doesn't changed the fact that most languages have features that lend themselves to a specific kind of implementation, and have one implementation that is primarily used
go fuck yourself

So... Web services? Okay nice
OP you labeled yourself a retard not only with your question but especially with the alternative options you listed

>python is not compiled
>javascript is not compiled
>they are interpreted!
Ask me how I know that you never coded as a pro in your life.

> just because academic retards separate the language from the implementation doesn't changed the fact that most languages have features that lend themselves to a specific kind of implementation, and have one implementation that is primarily used
thank you for your reading comprehension, no, cython or whatever javascript has doesn't count

vanilla python is compiled, genius, same shit goes for vanilla js.
I bet you are one of those guys who claim that there are not linux distros but gnu/linux distros, right?

not the previous guy but they're compiled to bytecode which is then interpreted so still interpreted after all

then java and kotlin are interpreted too, as 3/4 of other "programming not scripting" languages.

Java language < C# language
JVM ecosystem > .NET ecosystem
The second one is more important that the first.

Attached: java_tan.jpg (752x1063, 186K)

Yea dotnet core actually works pretty well on linux and VS Code handles code completion for it just fine

This. Just replace Java with Kotlin and Scala and C#/.NET Core is obsolete.

Because Java is objectively the best language
>C
Good luck with security
>C#
Not even gonna bother insulting this one
>Python
How do you do fellow 12 year old script kiddie
>Ruby
See Python

C# + .NET Core is godly, but for small stuff Dart is more than enough(for me).

this

also, c-cute..

Dart is good for sniffing Googles anus

Bbbbb F#!!!!

If I tell you I use Windows 10, Android, Chrome, Gmail, Google Docs, and Google Calendar, will you cry?

I will hold my nose

for you

This, ISO C++ Core guidelines compliant C++ 17+ is the language of the gods themselves

Attached: bjarne_long.jpg (603x324, 105K)

>>C#
>Not even gonna bother insulting this one

please do, otherwise your argument is invalid (since there isn't any)

All you need is rust

not yet
not until metaclasses
the entire concept of boilerplate will be obliterated

No private and protected inheritance.

No const methods. In C++ you can slap “const” keyword on a method, and this will effectively prevent the method from trying to modify class field. No such thing in C#.

No const references. If the reference type is mutable, then the function can screw it up however you want. That’s why immutability apparently became a popular concept.

Generics are signficantly less powerful than C++ templates.

Handling of equality in general. It is recommended to define Equals(), operator== and GetHashCode. Apparently there’s no expected default beahvior for Equals as well (i.e. whether it should bail if objects are different, or if all their fields are different - apparently this is for programmer to decide).

API is quite messy and smells like COM.

No multiple inheritance. Why would you want multiple inheritance? Why, to provide default blank implementation for interfaces. Extra useful with protected inheritance.

No proper control over object lifetimes. IDisposable requires manual babysitting via using, and if the class doesn’t implement it, you can’t delete it, only null it and wait for garbage collector to pick it up someday. Stuff like this makes me seriously miss C++ behaviour where destructors are called when a variable goes out of scope.

Not possible to write default constructor for structs. Only parametric one.

No “var” for class member variables. Only on method level.

No MACROS. Why would you want macros? Well, to make declaration of member variables more compact and and shorten writing of getters/setters. I hate List list = new List(), because default(T) for list is null. In C++ I can make this stuff auto-initialzie just by decalring it. ONCE.

“new” everywhere (“new Vector3…….” Sigh). Confusing after C++ especially, because C++ makes distinction between created on stack(or in-place) and values created on heap and that distinction is new.
TLDR pick a better language

Everything you wrote here is a comparison to C++, not to Java. What makes it worse than Java?

Are you retarded? You said
>Because Java is objectively the best language
in the first line and I asked you to tell why C# sucks and now you go on about a comparison to C++???

At 1/100th speed

Seething Clets angry that no one uses their obscure shit language anymore

>Generics are signficantly less powerful than C++ templates.
interface IFoo
{
void foo(T t);
}
Not possible in C++.

retarded poojeet answering a question nobody asked

>Don't get me wrong, I like C# - it's like an improved Java - but cross-platform support is basically nonexistent.

Mono has been a thing for like 13 years...companies use far worse FOSS shit everyday just to save a buck.

Mono is only used for 2d video games. I mean how many apps use mono

holy shit you're fucking retarded we're not even talking about C or C++ here but pointing out how that faggot while praising Java and dissing C# actually starts making comparisons to the UNRELATED C++

learn to read fucking autist

Your comment makes no sense. First of all no one uses Java for "apps" Oracle doesn't give a fuck about client side and OpenJDK is busted in a lot of ways since a lot of the source code and contributors were just dropped from core client technologies. But if you do want to talk apps, there are more apps using mono then there are Java apps. Second of all mono is used on server side for CRM, source control, Wikis, patient records, point of sale devices, etc just like Java.

Didn’t you know that c/c++ is the ultimate programming language and you would be retarded for using any of the inferior brainlet-tier languages? May as well neck yourself already or become a rust tranny friend.

Attached: 91C28055-C3DB-486E-B074-5BC154267C09.jpg (720x724, 29K)

You're not talking about languages here.
You're talking about implementations.
You've got some balls to come at me and tell me to go fuck myself when you fail to grasp basic computer science principles.

The virgin brainlet

>there are not linux distros but gnu/linux distros
This one is true, though.