Oracle Java SE is a programming language and gives customers enterprise features that minimize the costs of deployment and maintenance of their Java-based IT environment.
N/A
Scala
Score6 out of 10
N/A
Scala in Malvern, PA offers their digital signage software which provides Designer for content design, Content Manager for content organization and control, and Player for content viewing. Notably the software supports a wide array of digital signage including touchscreen kiosks and service for direct customer engagement and interaction.
N/A
Pricing
Oracle Java SE
Scala
Editions & Modules
No answers on this topic
No answers on this topic
Offerings
Pricing Offerings
Oracle Java SE
Scala
Free Trial
No
No
Free/Freemium Version
No
No
Premium Consulting/Integration Services
No
No
Entry-level Setup Fee
No setup fee
No setup fee
Additional Details
—
—
More Pricing Information
Community Pulse
Oracle Java SE
Scala
Considered Both Products
Oracle
Verified User
Chose Oracle Java SE
Java is the backbone of Scala. Lots of the improvements of the newer version of Java have been based on the improvements Scala introduced (functional programming features, among others). In this way Java and Scala are very symbiotic.
A de minimis incentive was given to thank the reviewer for their time. The incentive was not used to bias or drive a particular response, nor was the incentive contingent on a positive endorsement. TR verified that a representative sample of customers was invited. More Info
Professor at King's College London (Research, 1001-5000 employees)
Chose Oracle Java SE
Many other languages could be used for initial programming. However, simplicity of concepts, static type system and available tool support in combination made Java come out top for us. Especially Python has become very popular recently. I think this is a step backwards, due to …
A de minimis incentive was given to thank the reviewer for their time. The incentive was not used to bias or drive a particular response, nor was the incentive contingent on a positive endorsement. TR verified that a representative sample of customers was invited. More Info
Oracle Java SE is well suited to long-running applications (e.g. servers). Java Swing (UI toolkit) is now rather outdated, lacking support for modern UI features. JavaFX, the potential replacement for Swing, has now been separated out of Java core. Ideally, there would be a path to migrate a large application incrementally from Swing to JavaFX, but due to different threading models and other aspects, it is difficult. At this point, it is probably better to use an embedded web browser (e.g. JxBrowser) to provide a modern UI in HTML/Javascript and keep just the business logic in Java.
A de minimis incentive was given to thank the reviewer for their time. The incentive was not used to bias or drive a particular response, nor was the incentive contingent on a positive endorsement. More Info
If you are in the data science world, Scala is the best language to work with Spark, the defacto data science data store. I think that is really the main likely reason I would ever recommend Scala. Another reason is if you already have a team of programmers familiar with functional programming, e.g. they all have years of Haskell experience. In that case, I definitely think Scala is a superior and faster-growing language than Haskell and that picking up Scala after Haskell should be quick.
A de minimis incentive was given to thank the reviewer for their time. The incentive was not used to bias or drive a particular response, nor was the incentive contingent on a positive endorsement. More Info
A de minimis incentive was given to thank the reviewer for their time. The incentive was not used to bias or drive a particular response, nor was the incentive contingent on a positive endorsement. More Info
A de minimis incentive was given to thank the reviewer for their time. The incentive was not used to bias or drive a particular response, nor was the incentive contingent on a positive endorsement. More Info
Commercial Licensing in 2019. Oracle will charge commercial organizations using Java SE for upgrading to the latest bug fixes and updates. Organizations will now need to either limit their implementation of Java SE or may need to drop it altogether.
Slow Performance. Due to the all of the abstraction of the JVM, Java SE programs take much more resources to compile and run compared to Python.
Poor UI appearance on all of the major GUI libraries (Swing, SWT, etc.). Through Android Studio, it is easy to get a native look/feel for Java apps, but when it comes to desktops, the UI is far from acceptable (does not mimic the native OS's look/feel at all).
A de minimis incentive was given to thank the reviewer for their time. The incentive was not used to bias or drive a particular response, nor was the incentive contingent on a positive endorsement. TR verified that a representative sample of customers was invited. More Info
The built-in compiler, scalac, is sssssssssslllllooooowwwwww. I mean like, if you thought the Java compiler was slow, try Scala! The default compiler on my 12k line codebase takes 4 minutes to compile from scratch on my i7 quad-core machine. This can be mitigated through the paid solution of Hydra which compiles your code in parallel. Unfortunately, it's quite expensive and your legal department or finance department may not approve of it. But if they do, for me, it reduced my compile time down to 80 seconds, much more manageable.
Scala is not going anywhere and support for it is slowly dying. This is the main reason I would not choose Scala for my next company or project. Important Scala libraries such as secure social (which is used for OAuth, a major requirement of every web app) are hardly maintained. Another library that suffers from lack of updates is Slick, the database mapper. There aren't enough engineers working on it to even provide support for the new features that came out in Postgres 9.0 (e.g. JSONb). There is simply not enough of a community to drive Scala forward and keep 3rd party libraries up to date as Java world does it.
As a corollary of a stagnant community, hiring Scala developers is hard as well. Of the 30 backend engineers we've hired, only 3 came in already knowing Scala. And as I will mention below, this is a BIG problem because learning Scala is really tough.
The learning curve for Scala is very, very steep. Anecdotally, I came into my current company with strong Java experience. Java is the closest language to Scala but it took me 6 months before I stopped needing to pair program on easy tickets. It doesn't help that Scala has some weird syntax like Map[A, +B] and that it forces you to do functional programming.
A de minimis incentive was given to thank the reviewer for their time. The incentive was not used to bias or drive a particular response, nor was the incentive contingent on a positive endorsement. More Info
Oracle Java SE provides the new features along with timely security patches. New features like Record patterns and pattern matching for switches are very useful. With every new release of Java, it is getting better. Sequenced collections are also an interesting feature added to Java. With all these new features, backward compatibility is also maintained.
A de minimis incentive was given to thank the reviewer for their time. The incentive was not used to bias or drive a particular response, nor was the incentive contingent on a positive endorsement. More Info
Java is such a mature product at this point that there is little support from the vendor that is needed. Various sources on the internet, and especially StackOverflow, provide a wealth of knowledge and advice. Areas that may benefit from support is when dealing with complex multithreading issues and security libraries.
A de minimis incentive was given to thank the reviewer for their time. The incentive was not used to bias or drive a particular response, nor was the incentive contingent on a positive endorsement. More Info
The customer service team is very responsive and usually returns calls or emails within a couple of hours of placing a request or inquiry. Just about every rep I've spoken to has been very thorough and helpful, walking me through each problem and explaining the solutions in a way that's easy to understand.
A de minimis incentive was given to thank the reviewer for their time. The incentive was not used to bias or drive a particular response, nor was the incentive contingent on a positive endorsement. More Info
Chose to go with Java instead of Python or C++ due to the expertise on the ground with the technology, for its ease of integration with our heterogeneous setup of production servers, and for the third party library support which we've found was able to address some challenging aspects of our business problem.
A de minimis incentive was given to thank the reviewer for their time. The incentive was not used to bias or drive a particular response, nor was the incentive contingent on a positive endorsement. More Info
The different versions make it harder to work with other companies where some use newer versions while some use older versions, costing time to make them compatible.
Licenses are getting to be costly, forcing us to consider OpenJDK as an alternative.
New features take time to learn. When someone starts using them, everyone has to take time to learn.
A de minimis incentive was given to thank the reviewer for their time. The incentive was not used to bias or drive a particular response, nor was the incentive contingent on a positive endorsement. TR verified that a representative sample of customers was invited. More Info
Negative: slow engineer onboarding. As I mentioned before, it took me 6 months to get up-to-speed on Scala and didn't need to bother more senior Scala engineers anymore for help with every ticket. That's hundreds of hours I wasted of myself and other engineer's time.
Positive: thread safety, no concurrency bug. The ROI on this one is really hard to calculate, but I do believe Scala has saved me hundreds of hours over the past few years by allowing me to never have to worry about deadlocks or race conditions. Scala is simply so safe we've never had race conditions within the JVM before.
Negative: third-party libraries aren't maintained so we have to fork and update them ourselves. As I mentioned before, we use Securesocial but it stopped receiving updates and there is simply no alternative to it. So, we forked it and put an engineer on it for a month to get it back up-to-date. What a waste of his time!
A de minimis incentive was given to thank the reviewer for their time. The incentive was not used to bias or drive a particular response, nor was the incentive contingent on a positive endorsement. More Info