
JavaFX 11 is released - ristem
http://mail.openjdk.java.net/pipermail/openjfx-dev/2018-September/022475.html
======
shock
Does anyone know if font rendering on Linux respects the OS hinting settings?
I've long wanted to create GUI apps in Java, but stayed away because the font
rendering was what I consider _ugly_.

EDIT: Why on earth would someone downvote this?

~~~
foobarrio
I don't use Netbeans and to some extent IDEA just because the fonts don't look
right. _Tons_ of work went into the font rendering of Windows and OSX/macOS.
Java apps that use the Java font rendering bypass all that work look like
horse-shit.

True Type Fonts need a little VM in them for processing hints that was
patented by Apple. FreeType got around this issue by implementing automatic
hinting instead of executing the manual hints.

* [https://en.wikipedia.org/wiki/TrueType#Linux_and_other_platf...](https://en.wikipedia.org/wiki/TrueType#Linux_and_other_platforms)

Windows simply acquired a proper license for TTF rendering. I think these
patents caused issues for Swing. The Java font rendering in Swing components
was 100% Java and did not use any of the OS font rendering. IIRC these patents
have long expired so I don't see why the fonts couldn't look better. I only do
Java on the backend so I have no idea how Java guis look these days.

~~~
pjmlp
This was only an issue for those that are ideologically against installing
Sun/Oracle's JDK versions or any other commercial JDK like IBM's, as the
rendering code was never part of OpenJDK, hence why InteliJ started bundling
their own variant of OpenJDK.

Meanwhile with the transition to OpenJDK as official JDK the code has been
merged into OpenJDK.

[http://mail.openjdk.java.net/pipermail/discuss/2017-November...](http://mail.openjdk.java.net/pipermail/discuss/2017-November/004630.html)

------
L0stLink
I highly recommend checking out Gerrit Grunwald's work in JavaFX he has made
some very nice JavaFX based controls which you an checkout on github[0], there
are also demos on his youtube channel[1].

[0] [https://github.com/HanSolo](https://github.com/HanSolo) [1]
[https://www.youtube.com/channel/UCCPbe_sGZuimJUyd2rdR7kA](https://www.youtube.com/channel/UCCPbe_sGZuimJUyd2rdR7kA)

------
grandinj
Now that Oracle has withdrawn resources from the project, I wonder what its
future is going to be.

I was really hoping it would become a Swing replacement, but so far there are
still too many unfilled gaps for it to replace our (fairly extensive)
production usage of Swing.

~~~
pvg
What are the gaps, in your case?

------
floatboth
> The recommended workaround is to use the Xorg server instead of the Wayland
> server when running JavaFX applications. Note that Wayland is not supported
> by JDK 10 or JDK 11.

Even with the switch to GTK 3, there's no native Wayland support? WTF

------
lambdadmitry
Are there any examples of _great_ desktop apps done in recent-ish JavaFX?
Something comparable to native MacOS apps like Pixelmator or Sketch?

~~~
saagarjha
> Pixelmator or Sketch

These apps have had a lot of time put into their design–it's not just "we
slapped Cocoa on this and now it's beautiful". Native apps being better is
selection bias, since people who spend time on design aren't going to settle
for Java messing up the UI or UX–so they just all use AppKit.

~~~
lambdadmitry
That's not exactly true or those people won't settle for Electron either.
Obviously that's not the case and I wonder why. Is it just that Electron apps
are easier to do, native apps look and feel better, so JavaFX is a sort of no
man's land?

~~~
toyg
The point of Java on the desktop was cross-platform compatibility, but
electron now occupies that same space — and decent JS developers are cheaper
and easier to find than decent Java-desktop developers.

If cross-platform support is not a requirement, desktop Java is not even in
the running.

------
iamcreasy
If I want to build fully custom GUI is it better to start at Swing(Learning
from book: Filthy Rich Client)? or JavaFX has made it easier to build custom
GUI components.

------
e12e
Wait, wasn't JavaFX dead? Or maybe that was just webstart? I just seem to
recall looking.. A year ? Back and not finding any recommended, "this will
continue to work" gui for Java?

~~~
toyg
If i remember correctly, webstart has been deprecated together with pretty
much anything that had anything to do with browsers and plugins. JavaFX is a
bit more generic in its applications, I believe (not really my field of
expertise).

~~~
tinustate
Note that webstart is plugin less for quite a long time. The java installer
registers a mime type. This way the browser simply offers to open (or save)
the startup file, using the default save dialog, with the webstart executable.

------
pjmlp
With lots of nice fixes.

------
commandlinefan
> JavaFX 11

Is that the version number, or how many people are using it?

~~~
zombie2
thats cold man

~~~
jillesvangurp
Harsh but fair. I've been doing java for about 25 years and consider myself an
expert in that language. I know absolutely nobody that does desktop
applications in Java these days (swing or javafx) at this point and that has
been true for well over a decade. I get approached by recruiters for lots of
shit I would never do but Java desktop aint one of those things. The last time
I did anything swing related must have been 15 years ago and it was a
questionable choice then already. The only popular swing applications I know
of are developer tools like intellij. I've never encountered anything javafx
in the wild.

~~~
L0stLink
Hi, there are a few things I have wanted to ask from someone who is working
with Java professionally as it is the programming language I know best (for
context: I am a student who will be graduating in a year).

What is Java still being used for? is it mostly Spring work and Android apps
or are there still other use cases?

What do you use Java for? or What is the nature of work that you do which
makes use of Java?

It would be very helpful if you could answer these.

~~~
nambit
As someone else who uses java professionally a lot, let me weigh in.

Most large services are backed by web servers in the backend. What do you
imagine most people use for web/http servers? Java. What other language can
you use? C++? Large scale services are too error prone, especially if not
maintained by experienced devs and besides, no one codes restful services in
C++. NodeJS? It's weakly typed and is javascript. I know it's really popular
but rarely used in large backends not fronting a UI.

Java is still king almost everywhere.

~~~
pjmlp
> What other language can you use?

On my line of work, .NET is the only alternative, when customer is not up to
using Java for whatever reasons.

On both cases, C++ just has a tiny integration role to some libraries or OS
APIs than we might eventually need to access to.

------
Marazan
It's perverse that after Flash/Flex are 'dead' that Sun's mutant attempt to
compete in the space is still going.

~~~
dxxvi
Flash/Flex need a browser to run, don't they?

~~~
Matthias247
No. AIR was a runtime for desktop environments. You could implement standalone
applications (and mobile apps) with it. I also worked on a few embedded
systems which utilized a user-interface on top of Flash/Flex/AIR.

As far as I can recall it was pretty good, and mostly fun to work with. The
framework was quite powerful, and allowed us to write lots of highly
interactive code in a short timeframe. At that point of time (maybe 2011?), it
was far ahead of anything based on Javascript/HTML, and I think only more
recently the more powerful web frameworks might have caught up.

~~~
Jach
I really enjoyed Flex and look back at it fondly, when I tried Angular 1 it
felt like the first thing on the JS/HTML side that could come close to
matching the productivity of Flex (albeit with no helpful IDE). It was good
enough to whip out a MVP demo in 48 hours. I've mostly been out of UI
development since, occasionally extending stuff written in a NIH corporate
framework or some Backbone things. Occasional experiments with the
ClojureScript tooling (Reagent-based) seem like the next way forward that
maybe the rest of the world can use in another 5+ years.

