I'm talking about on the order of ~1Gb data used in the view. I have data
from scientific instruments, when an interactive view is fully zoomed out
showing all of the data at once I basically have to have it all in memory
to maintain decent performance. Here's a video of the app in use:
https://www.youtube.com/watch?v=EY9wvd6ckb0

In an ideal world it'd be cool if one could make a TopComponent with an
instance of Chromium or whatnot inside and be able to use cool stuff like
D3.js inside.

I also constantly find myself struggling with creating forms in swing that
are just used to represent parameters for command line programs, it's
always tricky for me to make everything aligned and resize nicely. Form
validation is yet another pain in the ass, especially when it comes to the
visual part of notifying the user what's wrong in which part of the form.
It would be so nice if all of this could just be rendered as a simple html
table with my choice of js validation framework and that I didn't have to
think about layouts etc too much.




On Thu, Mar 15, 2018 at 1:08 PM, Jaroslav Tulach <[email protected]>
wrote:

> Hello Dmitry,
> thanks a lot for trying it out!
>
> 2018-03-15 2:50 GMT+01:00 Dmitry Avtonomov <[email protected]>:
>
> > I find it incredible that Jaroslav is saying "... people aren't willing
> to
> > dedicate 10minutes of their personal time to try HTML/Java API in action
> > ...". How are they supposed to discover that?
> >
>
> To be fair, I also mentioned "... do you have recent version of NetBeans
> 9.0..." - e.g. the build time doesn't count.
>
> Let's try it out with time logging:
> >
> > 15:33 - Setting out to search for NetBeans on google, landed on
> > https://netbeans.org/, latest version 8.2
> > 15:34 - Search for "netbeans apache" (only did this because I knew what
> to
> > search for), landed on https://netbeans.apache.org/
> > 15:34 - Go to downloads (https://netbeans.apache.org/download/index.html
> )
> > - no binaries
> > 15:35 - I've already built v9 once, just deleting it took several minutes
> > 15:41 - Start clone `git clone https://github.com/apache/
> > incubator-netbeans.git` <https://github.com/apache/
> incubator-netbeans.git>
> > 15:44 - Clone + checkout done
> > 15:44 - `ant` (i had ant 1.10 installed, jdk - oracle 1.8, core i7
> 6700hq)
> > ...
> > compilation took 24 minutes 29 seconds
> > ...
> > `ant tryme`. Popup message:
> >
> > "Java features limited":
> > - install nb-javac library (highly recommended)
> > - run NetBeans on JDK 9 or later
> >
> > Click button to install nb-javac plugin.
> > Warnings about unsigned plugins.
> > Restart IDE.
> >
>
> Alas, this is the nb-javac licensing problem, that will be hard to mitigate
> anytime soon.
>
>
> > That's already quite some trouble that would stop 99.5% of people who
> > might have wanted to try it out.
> >
> >
> > Select: File -> New Project -> JavaFX -> Java HTML5 Application (again,
> > only because I knew from this thread where to click)
> > Read description: "Generates a WebView based DukeScript application".
> >
> > DukeScript? WebView based?... huh...
> >
>
> Geertjan also suggested to make the wizard more prominent. I noticed that
> Toni is currently thinking of some adjustments... personally I would split
> the wizard into few: "Java Desktop App", "Java iOS App", "Java Android
> App", "Java SPA App", etc. That would promote that NetBeans does support
> development/deployment to all important platforms of these days.
>
>
> > Click, wizard opens. Font is different, project type selector radio
> > buttons not aligned to text (image):
> >
> > Select "Visual HTML/Java example", project opens, immediately get warning
> > about project problems (Export-Package/Provate-Package contains packages
> > from dependencies) (image):
> >
> > It did run, but not that I understand the structure of 5 projects that
> got
> > created or how to use it. I can start "... Client for Web" project from
> the
> > IDE, but how do I build a runnable application? (image)
> >
>
> This is a great usability study. Toni has written a [getting started
> tutorial and a book](https://dukescript.com/documentation.html), but yes,
> it would be better if the system was usable without reading anything. I
> always advocate supporting "cluelessness" (and I hope I did support it when
> designing the HTML/Java API), but I never verified whether people building
> on top of it (e.g. Toni and his projects and wizards) do the same thing.
>
>
> > So yeah, I totally understand people googling for "Java Vaadin Electron
> > tutorial". As a matter of fact I was one of those people just 2 weeks
> ago,
> > even though I have built NB 9 previously.
> >
> > The samples I was able to run were running either in my default browser
> > (so it depends on system browser) or in, presumably, javafx webview
> > window(?), which lacked significantly in performance (the examples ran,
> > judging visually, at 10-20fps, while in the browser it was smooth, so I
> > couldn't tell the frame rate). I guess something like electron can be
> used,
> > but I have no idea how to achieve this.
> >
> > It needs:
> > - basic documentation
> >
>
> I am trying to make the Javadoc entertaining
> http://bits.netbeans.org/html+java/, but +1 - more is needed
>
> - geertjan style tutorials
> >
>
> +10, Geertjan, do you hear it?
>
> It needs examples of:
> > - how to feed large amounts of data from Java to JS running the view
> >
>
> Yes, this is often needed and I and Toni did some experiments with it. In
> fact we even proposed a paper about it to ManLang conference. The trick to
> improve throughput of Java -> JS communication would be:
> http://bits.netbeans.org/html+java/1.5/net/java/html/js/
> JavaScriptBody.html#wait4js()
>
> Btw. how much data you are talking about?
>
>
> > - how to communicate data back from the view into the java program
> >
>
> The low level API is here:
> http://bits.netbeans.org/html+java/1.5/net/java/html/js/
> package-summary.html
>
>
> > - how to build and run the application outside of the ide
> >
>
> I am not sure if Toni described that somewhere, but I remember there was a
> blog about "redeploys" done from outside of the IDE...
>
> https://dukescript.com/best/practices/2015/04/12/no-redeploys.html
> and maybe
> https://dukescript.com/update/2017/01/14/trybuypresenter.html
>
>
> > - preferably show how to create an application not from an archetype
> >
>
> That is easy: clone an existing one: https://github.com/jtulach/
> minesweeper
>
> However I guess you mean from scratch. I am afraid that would be too
> complex. The configuration of various maven plugins to work in
> orchestration among each other on different platforms is something I admire
> on Toni's work the most. I wouldn't like to reproduce that from scratch
> myself. The best is to start with empty archetype and remove things that
> you don't want, at least that is what I do.
>
>
> This project template does get close to being a nice starting point and
> > it'd be great to see it grow, but it's a stretch to expect anyone to know
> > about it at this point.
> >
>
> That is too nice conclusion. However thanks for trying and providing your
> comments, they form an excellent usability study. I can try to improve the
> Javadoc & co. and Toni can improve the archetypes and wizards. Geertjan
> could start a tutorial (or series of tutorials), right ;-?
>
> Thanks and please continue to push us forward!
> -jt
>

Reply via email to