3 ms·
I think as developers we are so used to pain that we forget how "easy" development can be if we allow people the right tools. If any language had the tooling a
by gravypod 10y ago
I think as developers we are so used to pain that we forget how "easy" development can be if we allow people the right tools.
If any language had the tooling and development Java did it would hold the market share. It's my opinion that if Rust makes a similar IDE experience (even just using Eclipse's platform) with every feature like code completion, formatting, debugging, the hole 9 yards and integrate Cargo into it they'll win. But, here's the caveat: It needs to be FLAWLESS integration.
I've been a java developer for my entire programming career. Java was my first language when I was 12 and I'm 19 now. I still can't use javac without looking at a compiler guide since I never use it. Eclipse does the business and I don't ever even need to think about what's going on outside my code. Not once.
- pjmlp 10y agoJava like tooling already existed before Java was born. We had it in the form of Common Lisp, Smalltalk, Delphi and Visual Basic, IBuilder (for those rich enough), CA Objects, C++ Builder.
- reitanqild 10y agoTo add to this: in school I found Java a complete waste of time. Started working and someone showed me how to productively use eclipse and suddenly it was acceptable.
- javajavaj 10y agoThat you need an IDE to make a language bearable speaks volumes to the design of the language. Go is doing well because it realizes we can strip so much away, stay with the standard lib, and get real work done quickly. That's not to say that Java, in particular the JVM, isn't an impressive piece of engineering, but more that we should be careful when we choose our tools so as to not overly complicate things.
- aninhumer 10y agoWhile Java may be somewhat verbose, good tooling is not just about "making the language bearable". Things like being able to jump to a definition, rename it throughout the project correctly and jump back without even thinking about it are hugely valuable in any language. And maybe you have ways of doing that in your workflow too, in which case great, you too appreciate the value of good tooling.
- javajavaj 10y agoSure, agreed, but I think you misunderstand my point. If I took away your Java IDE would you be able to get very far?
- sdegutis 10y agoThanks for your comment. It inspires me to write a blog post on why Java is my new favorite language, especially in comparison to Go.
- rpeden 10y agoRather than looking at it as a language that needs an IDE to be bearable, it might be more helpful to look at it as a language that is most pleasant to use in concert with well build tools. I look at it similarly to the way I look at Smalltalk. It's possible to use it as just a series of text files (with GNU Smalltalk), but using it with tools that understand the language (such as Visualworks or Squeak/Pharo) turns it into a very different experience. I know that a Smalltalk dev environment feels alive in a way that Java doesn't, but using Java with a tool like IntelliJ is a nice experience. Using something like JRebel or HotSwapAgent to swap code changes into a running application also improves the dev experience significantly.