You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openmeetings.apache.org by "seba.wagner@gmail.com" <se...@gmail.com> on 2020/04/27 08:20:44 UTC

How long until we break away the conference room JavaScript from the rest of the Wicket application :)

Hi,

how about we start to plan how to break away the conference room from the
rest of the application ?

It is already a lot of pure JavaScript. And writing it would be probably
easier.
As well as you constantly need latest JS features.
Compile it stand-alone with Npm or yarn.
use a package.json
create and use node_modules
Run webpack for dev and hot reload the Javascript
use babel to cross compile for different platforms
use ES5/ES6
use eslint

Doesn't mean it has to be React.

But all those classes/prototype functions like raw-video.js => could be
node_modules.

But I just struggle to see how this dev-cycle we do will attract new devs
from the JavaScript world.

Or how about start with a PoC style: Just create a sample for Mobile Apps.
Just audio/video. That is the only thing they can do anyway on that small
screen realistically. Instead of trying to break the current application
into a form factor of 600x400px.

And then maybe grow from there.

Cheers
Seb


Sebastian Wagner
https://www.linkedin.com/in/sebastianwagner/

Re: How long until we break away the conference room JavaScript from the rest of the Wicket application :)

Posted by Maxim Solodovnik <so...@gmail.com>.
On Wed, 13 May 2020 at 03:36, seba.wagner@gmail.com <se...@gmail.com>
wrote:

> Yeah I like meant: We are not so far apart in what we think are options.
>
> there is no need to create lot's of small JS modules
> => I didn't suggest that. I would say a balance is needed. This thing
> around "network/chatter" when having too many JS files: It is true if you
> have 100++. But its also true that if you have only 1 JS file: It is likely
> to be >2MB. And then you need to show loading animations or similar.
> So most apps divide it into smaller chunks of JS or dynamically load it
> when needed.
>

Actually I planned to create one big js file as a first step
This also will fit the concept one maven-module-one-js-artifact :)
But this is not blocker so far

I believe it worth to release "M-less" 5.0.0 then do such refactoring
Maybe I can add HTTP/2 to speed-up initial load


>
> draggable/droppable/resizable
> => Yeah that is the main issue. So I tend to think if you can have 4-5
> different JS apps in the conference room page: You may have a chance to
> tackle areas one by one. And isolate those effects above into certain
> legacy JS that you can tackle when ready.
>

We already have jquery-ui.js and bootstrap.js as dependencies as well as
some other js files comes from wicket/wicketstuff/webjars etc.

I usually start the battle then checking how to win :)


>
> Thanks,
> Seb
>
> Sebastian Wagner
> https://www.linkedin.com/in/sebastianwagner/
>
> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>
>
> On Tue, 12 May 2020 at 00:48, Maxim Solodovnik <so...@gmail.com>
> wrote:
>
>>
>>
>> On Sun, 10 May 2020 at 07:18, seba.wagner@gmail.com <
>> seba.wagner@gmail.com> wrote:
>>
>>> I think our ideas are not so far apart.
>>>
>>> Your argument around not using npm/yarn and other JS tools is bit funny
>>>
>>
>> I never told npm shouldn't be used
>> My points are
>> 1) there is no need to create lot's of small JS modules
>> 2) there is no need to add NPM to create lots of small JS scripts
>> 3) there is no need to use React
>>
>> Currently Maven creates 5-6 bigger JS files using
>> 1) 3rd party JS modules we need to have in our code base
>> 2) raw-*.js files
>>
>> This can be improved by using NPM
>> it can
>> 1) manage 3rd party dependencies
>> 2) create on huge JS file for the project
>>
>>
>>> :) It sounds like arguing that using Java without Maven/Ant/Gradle is a
>>> good idea cause "I could also write my own script doing that just fine" :):)
>>>
>>
>> Wicket can successfully serve small JS files as-is as well as currently
>> being used Maven modules do its job as expected
>> but this can be improved by using NPM and it's dependency management
>>
>>
>>>
>>> With "draggable/droppable/resizable" alternatives
>>> => It will require quite a bit of re-write I'm afraid. What alternatives
>>> do you have in mind ?
>>>
>>
>> There was a typo in my text:
>>
>> From jquery-ui we are using
>> 1) draggable/droppable/resizable - seems to have to alternatives
>>
>> should be
>>
>> From jquery-ui we are using
>> 1) draggable/droppable/resizable - seems to have NO alternatives
>>
>>
>> "re-write" is something I would like to avoid ...
>>
>>
>>>
>>> Cheers,
>>> Seb
>>>
>>> Sebastian Wagner
>>> https://www.linkedin.com/in/sebastianwagner/
>>>
>>> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
>>> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>>>
>>>
>>> On Sun, 3 May 2020 at 16:21, Maxim Solodovnik <so...@gmail.com>
>>> wrote:
>>>
>>>>
>>>>
>>>> On Sun, 3 May 2020 at 04:17, seba.wagner@gmail.com <
>>>> seba.wagner@gmail.com> wrote:
>>>>
>>>>> I guess I'm bit more creative on how I think it could work.
>>>>>
>>>>> We are already using JS-only components. So I would hope most would
>>>>> just stay as-is.
>>>>>
>>>>> For example: https://github.com/webrtc/adapter
>>>>> => we are using this, but instead of having a package.json and
>>>>> reference the script we copy n paste it.
>>>>>
>>>>
>>>> NPM will also copy/paste it while `npm run build`
>>>> But dependencies will be managable
>>>>
>>>>
>>>>>
>>>>> Many of those raw-xyz classes could be converted into one or many NPM
>>>>> modules imho.
>>>>>
>>>>
>>>> This can be done without NPM
>>>> I spend some time to pack small JS files into one big JS file to minify
>>>> the number of web requests and reduce load time
>>>>
>>>>
>>>>>
>>>>> You could probably also easily do this in stages and an initial stage
>>>>> could be:
>>>>>  - Leave the Apache Wicket header and Page component, but load one or
>>>>> many standalone JavaScript apps into it (that is pretty much what we do)
>>>>>
>>>>
>>>> This was my plan
>>>> extract all our js files into `openmeetings-js` Maven module
>>>> And build single JS out of it
>>>>
>>>> Only small `preloader` js will stay in `openmeetings-web`
>>>> (this need to be investigated)
>>>>
>>>>
>>>>>  - Bundle each of those standalone JavaScript apps using webpack,
>>>>>
>>>>
>>>> there is no need to create multiple js apps
>>>>
>>>>
>>>>> you can trigger that from Maven easily with:
>>>>> https://github.com/eirslett/frontend-maven-plugin
>>>>>
>>>>
>>>> yes, i do remember i have shared the link to this plugin before
>>>>
>>>>
>>>>>  - Reference the produced JS file from the various places in the code
>>>>>
>>>>
>>>> It will be one reference (maybe 2 :)))
>>>>
>>>>>
>>>>> Having those separated JS apps would make it much easier to develop
>>>>> them.
>>>>>
>>>>
>>>> As I wrote earlier in this email: separate JS can be created with wicket
>>>> but this will increase request count and will slow down initial load
>>>>
>>>>
>>>>> Obviously from tooling perspective. But you can just load them into a
>>>>> page in isolation. You don't need the entire room, but you can just
>>>>> concentrate on 1 section.
>>>>> It brings all the advantages of separation of concerns. But also
>>>>> doesn't mean a big rewrite.
>>>>>
>>>>> And you can replace fragment by fragment of the website. One by one.
>>>>>
>>>>> Cheers
>>>>> Seb
>>>>>
>>>>> Sebastian Wagner
>>>>> https://www.linkedin.com/in/sebastianwagner/
>>>>>
>>>>> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
>>>>> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>>>>>
>>>>>
>>>>> On Sat, 2 May 2020 at 16:53, Maxim Solodovnik <so...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Hello Sebastian,
>>>>>>
>>>>>> From jquery-ui we are using
>>>>>> 1) draggable/droppable/resizable - seems to have to alternatives
>>>>>> 2) dialog - can be replaced any time due to we are using basic
>>>>>> functionality only
>>>>>>
>>>>>> Touch events are now works for room
>>>>>>
>>>>>> I still don't see why we need to rewrite everything ...
>>>>>>
>>>>>> On Sat, 2 May 2020 at 11:31, seba.wagner@gmail.com <
>>>>>> seba.wagner@gmail.com> wrote:
>>>>>>
>>>>>>> I'm just not sure how long it will take for jquery-ui to stop
>>>>>>> working.
>>>>>>>
>>>>>>> There has been literally no update to jquery-ui since 2016:
>>>>>>> https://jqueryui.com/changelog/1.12.1/
>>>>>>> For jquery Mobile there hasn't been any since 2016 either:
>>>>>>> https://github.com/jquery/jquery-mobile/commits/master
>>>>>>> jquery itself has 30 commits in the last 6-12 months:
>>>>>>> https://github.com/jquery/jquery/commits/master
>>>>>>>
>>>>>>> As for Apache Wicket, they may come up with some other JS code or
>>>>>>> framework over time. So the back end and administration part. It will work
>>>>>>> and continue to do so. There is also no strong requirement to make that
>>>>>>> work across Mobile and other platforms.
>>>>>>>
>>>>>>> But for coding the conference room UI Front End, we are bit stuck.
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Seb
>>>>>>>
>>>>>>> Sebastian Wagner
>>>>>>> https://www.linkedin.com/in/sebastianwagner/
>>>>>>>
>>>>>>> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
>>>>>>> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>>>>>>>
>>>>>>>
>>>>>>> On Mon, 27 Apr 2020 at 21:55, Maxim Solodovnik <so...@gmail.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Hello Sebastian,
>>>>>>>>
>>>>>>>> I haven't planned to "brea away the conference room" and re-writing
>>>>>>>> anything
>>>>>>>> My goals were to
>>>>>>>> 1) simplify JS dependency management
>>>>>>>> 2) simplify Maven build
>>>>>>>> 3) clean-up "manual polyfilling" and some hacks
>>>>>>>> 4) use latest MathJax
>>>>>>>> https://github.com/mathjax/MathJax/issues/2414
>>>>>>>>
>>>>>>>> 5*) optionally benefit from normal classes and inheritance
>>>>>>>>
>>>>>>>> above can be started any time :)
>>>>>>>>
>>>>>>>> p.s. you have too much energy :))) I'm buried with emails :)
>>>>>>>>
>>>>>>>> On Mon, 27 Apr 2020 at 15:20, seba.wagner@gmail.com
>>>>>>>> <se...@gmail.com> wrote:
>>>>>>>> >
>>>>>>>> > Hi,
>>>>>>>> >
>>>>>>>> > how about we start to plan how to break away the conference room
>>>>>>>> from the rest of the application ?
>>>>>>>> >
>>>>>>>> > It is already a lot of pure JavaScript. And writing it would be
>>>>>>>> probably easier.
>>>>>>>> > As well as you constantly need latest JS features.
>>>>>>>> > Compile it stand-alone with Npm or yarn.
>>>>>>>> > use a package.json
>>>>>>>> > create and use node_modules
>>>>>>>> > Run webpack for dev and hot reload the Javascript
>>>>>>>> > use babel to cross compile for different platforms
>>>>>>>> > use ES5/ES6
>>>>>>>> > use eslint
>>>>>>>> >
>>>>>>>> > Doesn't mean it has to be React.
>>>>>>>> >
>>>>>>>> > But all those classes/prototype functions like raw-video.js =>
>>>>>>>> could be node_modules.
>>>>>>>> >
>>>>>>>> > But I just struggle to see how this dev-cycle we do will attract
>>>>>>>> new devs from the JavaScript world.
>>>>>>>> >
>>>>>>>> > Or how about start with a PoC style: Just create a sample for
>>>>>>>> Mobile Apps. Just audio/video. That is the only thing they can do anyway on
>>>>>>>> that small screen realistically. Instead of trying to break the current
>>>>>>>> application into a form factor of 600x400px.
>>>>>>>> >
>>>>>>>> > And then maybe grow from there.
>>>>>>>> >
>>>>>>>> > Cheers
>>>>>>>> > Seb
>>>>>>>> >
>>>>>>>> >
>>>>>>>> > Sebastian Wagner
>>>>>>>> > https://www.linkedin.com/in/sebastianwagner/
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Best regards,
>>>>>>>> Maxim
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> Best regards,
>>>>>> Maxim
>>>>>>
>>>>>
>>>>
>>>> --
>>>> Best regards,
>>>> Maxim
>>>>
>>>
>>
>> --
>> Best regards,
>> Maxim
>>
>

-- 
Best regards,
Maxim

Re: How long until we break away the conference room JavaScript from the rest of the Wicket application :)

Posted by "seba.wagner@gmail.com" <se...@gmail.com>.
Yeah I like meant: We are not so far apart in what we think are options.

there is no need to create lot's of small JS modules
=> I didn't suggest that. I would say a balance is needed. This thing
around "network/chatter" when having too many JS files: It is true if you
have 100++. But its also true that if you have only 1 JS file: It is likely
to be >2MB. And then you need to show loading animations or similar.
So most apps divide it into smaller chunks of JS or dynamically load it
when needed.

draggable/droppable/resizable
=> Yeah that is the main issue. So I tend to think if you can have 4-5
different JS apps in the conference room page: You may have a chance to
tackle areas one by one. And isolate those effects above into certain
legacy JS that you can tackle when ready.

Thanks,
Seb

Sebastian Wagner
https://www.linkedin.com/in/sebastianwagner/
<https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
<https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>


On Tue, 12 May 2020 at 00:48, Maxim Solodovnik <so...@gmail.com> wrote:

>
>
> On Sun, 10 May 2020 at 07:18, seba.wagner@gmail.com <se...@gmail.com>
> wrote:
>
>> I think our ideas are not so far apart.
>>
>> Your argument around not using npm/yarn and other JS tools is bit funny
>>
>
> I never told npm shouldn't be used
> My points are
> 1) there is no need to create lot's of small JS modules
> 2) there is no need to add NPM to create lots of small JS scripts
> 3) there is no need to use React
>
> Currently Maven creates 5-6 bigger JS files using
> 1) 3rd party JS modules we need to have in our code base
> 2) raw-*.js files
>
> This can be improved by using NPM
> it can
> 1) manage 3rd party dependencies
> 2) create on huge JS file for the project
>
>
>> :) It sounds like arguing that using Java without Maven/Ant/Gradle is a
>> good idea cause "I could also write my own script doing that just fine" :):)
>>
>
> Wicket can successfully serve small JS files as-is as well as currently
> being used Maven modules do its job as expected
> but this can be improved by using NPM and it's dependency management
>
>
>>
>> With "draggable/droppable/resizable" alternatives
>> => It will require quite a bit of re-write I'm afraid. What alternatives
>> do you have in mind ?
>>
>
> There was a typo in my text:
>
> From jquery-ui we are using
> 1) draggable/droppable/resizable - seems to have to alternatives
>
> should be
>
> From jquery-ui we are using
> 1) draggable/droppable/resizable - seems to have NO alternatives
>
>
> "re-write" is something I would like to avoid ...
>
>
>>
>> Cheers,
>> Seb
>>
>> Sebastian Wagner
>> https://www.linkedin.com/in/sebastianwagner/
>>
>> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
>> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>>
>>
>> On Sun, 3 May 2020 at 16:21, Maxim Solodovnik <so...@gmail.com>
>> wrote:
>>
>>>
>>>
>>> On Sun, 3 May 2020 at 04:17, seba.wagner@gmail.com <
>>> seba.wagner@gmail.com> wrote:
>>>
>>>> I guess I'm bit more creative on how I think it could work.
>>>>
>>>> We are already using JS-only components. So I would hope most would
>>>> just stay as-is.
>>>>
>>>> For example: https://github.com/webrtc/adapter
>>>> => we are using this, but instead of having a package.json and
>>>> reference the script we copy n paste it.
>>>>
>>>
>>> NPM will also copy/paste it while `npm run build`
>>> But dependencies will be managable
>>>
>>>
>>>>
>>>> Many of those raw-xyz classes could be converted into one or many NPM
>>>> modules imho.
>>>>
>>>
>>> This can be done without NPM
>>> I spend some time to pack small JS files into one big JS file to minify
>>> the number of web requests and reduce load time
>>>
>>>
>>>>
>>>> You could probably also easily do this in stages and an initial stage
>>>> could be:
>>>>  - Leave the Apache Wicket header and Page component, but load one or
>>>> many standalone JavaScript apps into it (that is pretty much what we do)
>>>>
>>>
>>> This was my plan
>>> extract all our js files into `openmeetings-js` Maven module
>>> And build single JS out of it
>>>
>>> Only small `preloader` js will stay in `openmeetings-web`
>>> (this need to be investigated)
>>>
>>>
>>>>  - Bundle each of those standalone JavaScript apps using webpack,
>>>>
>>>
>>> there is no need to create multiple js apps
>>>
>>>
>>>> you can trigger that from Maven easily with:
>>>> https://github.com/eirslett/frontend-maven-plugin
>>>>
>>>
>>> yes, i do remember i have shared the link to this plugin before
>>>
>>>
>>>>  - Reference the produced JS file from the various places in the code
>>>>
>>>
>>> It will be one reference (maybe 2 :)))
>>>
>>>>
>>>> Having those separated JS apps would make it much easier to develop
>>>> them.
>>>>
>>>
>>> As I wrote earlier in this email: separate JS can be created with wicket
>>> but this will increase request count and will slow down initial load
>>>
>>>
>>>> Obviously from tooling perspective. But you can just load them into a
>>>> page in isolation. You don't need the entire room, but you can just
>>>> concentrate on 1 section.
>>>> It brings all the advantages of separation of concerns. But also
>>>> doesn't mean a big rewrite.
>>>>
>>>> And you can replace fragment by fragment of the website. One by one.
>>>>
>>>> Cheers
>>>> Seb
>>>>
>>>> Sebastian Wagner
>>>> https://www.linkedin.com/in/sebastianwagner/
>>>>
>>>> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
>>>> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>>>>
>>>>
>>>> On Sat, 2 May 2020 at 16:53, Maxim Solodovnik <so...@gmail.com>
>>>> wrote:
>>>>
>>>>> Hello Sebastian,
>>>>>
>>>>> From jquery-ui we are using
>>>>> 1) draggable/droppable/resizable - seems to have to alternatives
>>>>> 2) dialog - can be replaced any time due to we are using basic
>>>>> functionality only
>>>>>
>>>>> Touch events are now works for room
>>>>>
>>>>> I still don't see why we need to rewrite everything ...
>>>>>
>>>>> On Sat, 2 May 2020 at 11:31, seba.wagner@gmail.com <
>>>>> seba.wagner@gmail.com> wrote:
>>>>>
>>>>>> I'm just not sure how long it will take for jquery-ui to stop working.
>>>>>>
>>>>>> There has been literally no update to jquery-ui since 2016:
>>>>>> https://jqueryui.com/changelog/1.12.1/
>>>>>> For jquery Mobile there hasn't been any since 2016 either:
>>>>>> https://github.com/jquery/jquery-mobile/commits/master
>>>>>> jquery itself has 30 commits in the last 6-12 months:
>>>>>> https://github.com/jquery/jquery/commits/master
>>>>>>
>>>>>> As for Apache Wicket, they may come up with some other JS code or
>>>>>> framework over time. So the back end and administration part. It will work
>>>>>> and continue to do so. There is also no strong requirement to make that
>>>>>> work across Mobile and other platforms.
>>>>>>
>>>>>> But for coding the conference room UI Front End, we are bit stuck.
>>>>>>
>>>>>> Thanks,
>>>>>> Seb
>>>>>>
>>>>>> Sebastian Wagner
>>>>>> https://www.linkedin.com/in/sebastianwagner/
>>>>>>
>>>>>> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
>>>>>> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>>>>>>
>>>>>>
>>>>>> On Mon, 27 Apr 2020 at 21:55, Maxim Solodovnik <so...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> Hello Sebastian,
>>>>>>>
>>>>>>> I haven't planned to "brea away the conference room" and re-writing
>>>>>>> anything
>>>>>>> My goals were to
>>>>>>> 1) simplify JS dependency management
>>>>>>> 2) simplify Maven build
>>>>>>> 3) clean-up "manual polyfilling" and some hacks
>>>>>>> 4) use latest MathJax https://github.com/mathjax/MathJax/issues/2414
>>>>>>>
>>>>>>> 5*) optionally benefit from normal classes and inheritance
>>>>>>>
>>>>>>> above can be started any time :)
>>>>>>>
>>>>>>> p.s. you have too much energy :))) I'm buried with emails :)
>>>>>>>
>>>>>>> On Mon, 27 Apr 2020 at 15:20, seba.wagner@gmail.com
>>>>>>> <se...@gmail.com> wrote:
>>>>>>> >
>>>>>>> > Hi,
>>>>>>> >
>>>>>>> > how about we start to plan how to break away the conference room
>>>>>>> from the rest of the application ?
>>>>>>> >
>>>>>>> > It is already a lot of pure JavaScript. And writing it would be
>>>>>>> probably easier.
>>>>>>> > As well as you constantly need latest JS features.
>>>>>>> > Compile it stand-alone with Npm or yarn.
>>>>>>> > use a package.json
>>>>>>> > create and use node_modules
>>>>>>> > Run webpack for dev and hot reload the Javascript
>>>>>>> > use babel to cross compile for different platforms
>>>>>>> > use ES5/ES6
>>>>>>> > use eslint
>>>>>>> >
>>>>>>> > Doesn't mean it has to be React.
>>>>>>> >
>>>>>>> > But all those classes/prototype functions like raw-video.js =>
>>>>>>> could be node_modules.
>>>>>>> >
>>>>>>> > But I just struggle to see how this dev-cycle we do will attract
>>>>>>> new devs from the JavaScript world.
>>>>>>> >
>>>>>>> > Or how about start with a PoC style: Just create a sample for
>>>>>>> Mobile Apps. Just audio/video. That is the only thing they can do anyway on
>>>>>>> that small screen realistically. Instead of trying to break the current
>>>>>>> application into a form factor of 600x400px.
>>>>>>> >
>>>>>>> > And then maybe grow from there.
>>>>>>> >
>>>>>>> > Cheers
>>>>>>> > Seb
>>>>>>> >
>>>>>>> >
>>>>>>> > Sebastian Wagner
>>>>>>> > https://www.linkedin.com/in/sebastianwagner/
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Best regards,
>>>>>>> Maxim
>>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> Best regards,
>>>>> Maxim
>>>>>
>>>>
>>>
>>> --
>>> Best regards,
>>> Maxim
>>>
>>
>
> --
> Best regards,
> Maxim
>

Re: How long until we break away the conference room JavaScript from the rest of the Wicket application :)

Posted by Maxim Solodovnik <so...@gmail.com>.
On Sun, 10 May 2020 at 07:18, seba.wagner@gmail.com <se...@gmail.com>
wrote:

> I think our ideas are not so far apart.
>
> Your argument around not using npm/yarn and other JS tools is bit funny
>

I never told npm shouldn't be used
My points are
1) there is no need to create lot's of small JS modules
2) there is no need to add NPM to create lots of small JS scripts
3) there is no need to use React

Currently Maven creates 5-6 bigger JS files using
1) 3rd party JS modules we need to have in our code base
2) raw-*.js files

This can be improved by using NPM
it can
1) manage 3rd party dependencies
2) create on huge JS file for the project


> :) It sounds like arguing that using Java without Maven/Ant/Gradle is a
> good idea cause "I could also write my own script doing that just fine" :):)
>

Wicket can successfully serve small JS files as-is as well as currently
being used Maven modules do its job as expected
but this can be improved by using NPM and it's dependency management


>
> With "draggable/droppable/resizable" alternatives
> => It will require quite a bit of re-write I'm afraid. What alternatives
> do you have in mind ?
>

There was a typo in my text:

From jquery-ui we are using
1) draggable/droppable/resizable - seems to have to alternatives

should be

From jquery-ui we are using
1) draggable/droppable/resizable - seems to have NO alternatives


"re-write" is something I would like to avoid ...


>
> Cheers,
> Seb
>
> Sebastian Wagner
> https://www.linkedin.com/in/sebastianwagner/
>
> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>
>
> On Sun, 3 May 2020 at 16:21, Maxim Solodovnik <so...@gmail.com>
> wrote:
>
>>
>>
>> On Sun, 3 May 2020 at 04:17, seba.wagner@gmail.com <se...@gmail.com>
>> wrote:
>>
>>> I guess I'm bit more creative on how I think it could work.
>>>
>>> We are already using JS-only components. So I would hope most would just
>>> stay as-is.
>>>
>>> For example: https://github.com/webrtc/adapter
>>> => we are using this, but instead of having a package.json and reference
>>> the script we copy n paste it.
>>>
>>
>> NPM will also copy/paste it while `npm run build`
>> But dependencies will be managable
>>
>>
>>>
>>> Many of those raw-xyz classes could be converted into one or many NPM
>>> modules imho.
>>>
>>
>> This can be done without NPM
>> I spend some time to pack small JS files into one big JS file to minify
>> the number of web requests and reduce load time
>>
>>
>>>
>>> You could probably also easily do this in stages and an initial stage
>>> could be:
>>>  - Leave the Apache Wicket header and Page component, but load one or
>>> many standalone JavaScript apps into it (that is pretty much what we do)
>>>
>>
>> This was my plan
>> extract all our js files into `openmeetings-js` Maven module
>> And build single JS out of it
>>
>> Only small `preloader` js will stay in `openmeetings-web`
>> (this need to be investigated)
>>
>>
>>>  - Bundle each of those standalone JavaScript apps using webpack,
>>>
>>
>> there is no need to create multiple js apps
>>
>>
>>> you can trigger that from Maven easily with:
>>> https://github.com/eirslett/frontend-maven-plugin
>>>
>>
>> yes, i do remember i have shared the link to this plugin before
>>
>>
>>>  - Reference the produced JS file from the various places in the code
>>>
>>
>> It will be one reference (maybe 2 :)))
>>
>>>
>>> Having those separated JS apps would make it much easier to develop
>>> them.
>>>
>>
>> As I wrote earlier in this email: separate JS can be created with wicket
>> but this will increase request count and will slow down initial load
>>
>>
>>> Obviously from tooling perspective. But you can just load them into a
>>> page in isolation. You don't need the entire room, but you can just
>>> concentrate on 1 section.
>>> It brings all the advantages of separation of concerns. But also doesn't
>>> mean a big rewrite.
>>>
>>> And you can replace fragment by fragment of the website. One by one.
>>>
>>> Cheers
>>> Seb
>>>
>>> Sebastian Wagner
>>> https://www.linkedin.com/in/sebastianwagner/
>>>
>>> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
>>> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>>>
>>>
>>> On Sat, 2 May 2020 at 16:53, Maxim Solodovnik <so...@gmail.com>
>>> wrote:
>>>
>>>> Hello Sebastian,
>>>>
>>>> From jquery-ui we are using
>>>> 1) draggable/droppable/resizable - seems to have to alternatives
>>>> 2) dialog - can be replaced any time due to we are using basic
>>>> functionality only
>>>>
>>>> Touch events are now works for room
>>>>
>>>> I still don't see why we need to rewrite everything ...
>>>>
>>>> On Sat, 2 May 2020 at 11:31, seba.wagner@gmail.com <
>>>> seba.wagner@gmail.com> wrote:
>>>>
>>>>> I'm just not sure how long it will take for jquery-ui to stop working.
>>>>>
>>>>> There has been literally no update to jquery-ui since 2016:
>>>>> https://jqueryui.com/changelog/1.12.1/
>>>>> For jquery Mobile there hasn't been any since 2016 either:
>>>>> https://github.com/jquery/jquery-mobile/commits/master
>>>>> jquery itself has 30 commits in the last 6-12 months:
>>>>> https://github.com/jquery/jquery/commits/master
>>>>>
>>>>> As for Apache Wicket, they may come up with some other JS code or
>>>>> framework over time. So the back end and administration part. It will work
>>>>> and continue to do so. There is also no strong requirement to make that
>>>>> work across Mobile and other platforms.
>>>>>
>>>>> But for coding the conference room UI Front End, we are bit stuck.
>>>>>
>>>>> Thanks,
>>>>> Seb
>>>>>
>>>>> Sebastian Wagner
>>>>> https://www.linkedin.com/in/sebastianwagner/
>>>>>
>>>>> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
>>>>> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>>>>>
>>>>>
>>>>> On Mon, 27 Apr 2020 at 21:55, Maxim Solodovnik <so...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Hello Sebastian,
>>>>>>
>>>>>> I haven't planned to "brea away the conference room" and re-writing
>>>>>> anything
>>>>>> My goals were to
>>>>>> 1) simplify JS dependency management
>>>>>> 2) simplify Maven build
>>>>>> 3) clean-up "manual polyfilling" and some hacks
>>>>>> 4) use latest MathJax https://github.com/mathjax/MathJax/issues/2414
>>>>>>
>>>>>> 5*) optionally benefit from normal classes and inheritance
>>>>>>
>>>>>> above can be started any time :)
>>>>>>
>>>>>> p.s. you have too much energy :))) I'm buried with emails :)
>>>>>>
>>>>>> On Mon, 27 Apr 2020 at 15:20, seba.wagner@gmail.com
>>>>>> <se...@gmail.com> wrote:
>>>>>> >
>>>>>> > Hi,
>>>>>> >
>>>>>> > how about we start to plan how to break away the conference room
>>>>>> from the rest of the application ?
>>>>>> >
>>>>>> > It is already a lot of pure JavaScript. And writing it would be
>>>>>> probably easier.
>>>>>> > As well as you constantly need latest JS features.
>>>>>> > Compile it stand-alone with Npm or yarn.
>>>>>> > use a package.json
>>>>>> > create and use node_modules
>>>>>> > Run webpack for dev and hot reload the Javascript
>>>>>> > use babel to cross compile for different platforms
>>>>>> > use ES5/ES6
>>>>>> > use eslint
>>>>>> >
>>>>>> > Doesn't mean it has to be React.
>>>>>> >
>>>>>> > But all those classes/prototype functions like raw-video.js =>
>>>>>> could be node_modules.
>>>>>> >
>>>>>> > But I just struggle to see how this dev-cycle we do will attract
>>>>>> new devs from the JavaScript world.
>>>>>> >
>>>>>> > Or how about start with a PoC style: Just create a sample for
>>>>>> Mobile Apps. Just audio/video. That is the only thing they can do anyway on
>>>>>> that small screen realistically. Instead of trying to break the current
>>>>>> application into a form factor of 600x400px.
>>>>>> >
>>>>>> > And then maybe grow from there.
>>>>>> >
>>>>>> > Cheers
>>>>>> > Seb
>>>>>> >
>>>>>> >
>>>>>> > Sebastian Wagner
>>>>>> > https://www.linkedin.com/in/sebastianwagner/
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Best regards,
>>>>>> Maxim
>>>>>>
>>>>>
>>>>
>>>> --
>>>> Best regards,
>>>> Maxim
>>>>
>>>
>>
>> --
>> Best regards,
>> Maxim
>>
>

-- 
Best regards,
Maxim

Re: How long until we break away the conference room JavaScript from the rest of the Wicket application :)

Posted by "seba.wagner@gmail.com" <se...@gmail.com>.
I think our ideas are not so far apart.

Your argument around not using npm/yarn and other JS tools is bit funny :)
It sounds like arguing that using Java without Maven/Ant/Gradle is a good
idea cause "I could also write my own script doing that just fine" :):)

With "draggable/droppable/resizable" alternatives
=> It will require quite a bit of re-write I'm afraid. What alternatives do
you have in mind ?

Cheers,
Seb

Sebastian Wagner
https://www.linkedin.com/in/sebastianwagner/
<https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
<https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>


On Sun, 3 May 2020 at 16:21, Maxim Solodovnik <so...@gmail.com> wrote:

>
>
> On Sun, 3 May 2020 at 04:17, seba.wagner@gmail.com <se...@gmail.com>
> wrote:
>
>> I guess I'm bit more creative on how I think it could work.
>>
>> We are already using JS-only components. So I would hope most would just
>> stay as-is.
>>
>> For example: https://github.com/webrtc/adapter
>> => we are using this, but instead of having a package.json and reference
>> the script we copy n paste it.
>>
>
> NPM will also copy/paste it while `npm run build`
> But dependencies will be managable
>
>
>>
>> Many of those raw-xyz classes could be converted into one or many NPM
>> modules imho.
>>
>
> This can be done without NPM
> I spend some time to pack small JS files into one big JS file to minify
> the number of web requests and reduce load time
>
>
>>
>> You could probably also easily do this in stages and an initial stage
>> could be:
>>  - Leave the Apache Wicket header and Page component, but load one or
>> many standalone JavaScript apps into it (that is pretty much what we do)
>>
>
> This was my plan
> extract all our js files into `openmeetings-js` Maven module
> And build single JS out of it
>
> Only small `preloader` js will stay in `openmeetings-web`
> (this need to be investigated)
>
>
>>  - Bundle each of those standalone JavaScript apps using webpack,
>>
>
> there is no need to create multiple js apps
>
>
>> you can trigger that from Maven easily with:
>> https://github.com/eirslett/frontend-maven-plugin
>>
>
> yes, i do remember i have shared the link to this plugin before
>
>
>>  - Reference the produced JS file from the various places in the code
>>
>
> It will be one reference (maybe 2 :)))
>
>>
>> Having those separated JS apps would make it much easier to develop them.
>>
>
> As I wrote earlier in this email: separate JS can be created with wicket
> but this will increase request count and will slow down initial load
>
>
>> Obviously from tooling perspective. But you can just load them into a
>> page in isolation. You don't need the entire room, but you can just
>> concentrate on 1 section.
>> It brings all the advantages of separation of concerns. But also doesn't
>> mean a big rewrite.
>>
>> And you can replace fragment by fragment of the website. One by one.
>>
>> Cheers
>> Seb
>>
>> Sebastian Wagner
>> https://www.linkedin.com/in/sebastianwagner/
>>
>> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
>> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>>
>>
>> On Sat, 2 May 2020 at 16:53, Maxim Solodovnik <so...@gmail.com>
>> wrote:
>>
>>> Hello Sebastian,
>>>
>>> From jquery-ui we are using
>>> 1) draggable/droppable/resizable - seems to have to alternatives
>>> 2) dialog - can be replaced any time due to we are using basic
>>> functionality only
>>>
>>> Touch events are now works for room
>>>
>>> I still don't see why we need to rewrite everything ...
>>>
>>> On Sat, 2 May 2020 at 11:31, seba.wagner@gmail.com <
>>> seba.wagner@gmail.com> wrote:
>>>
>>>> I'm just not sure how long it will take for jquery-ui to stop working.
>>>>
>>>> There has been literally no update to jquery-ui since 2016:
>>>> https://jqueryui.com/changelog/1.12.1/
>>>> For jquery Mobile there hasn't been any since 2016 either:
>>>> https://github.com/jquery/jquery-mobile/commits/master
>>>> jquery itself has 30 commits in the last 6-12 months:
>>>> https://github.com/jquery/jquery/commits/master
>>>>
>>>> As for Apache Wicket, they may come up with some other JS code or
>>>> framework over time. So the back end and administration part. It will work
>>>> and continue to do so. There is also no strong requirement to make that
>>>> work across Mobile and other platforms.
>>>>
>>>> But for coding the conference room UI Front End, we are bit stuck.
>>>>
>>>> Thanks,
>>>> Seb
>>>>
>>>> Sebastian Wagner
>>>> https://www.linkedin.com/in/sebastianwagner/
>>>>
>>>> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
>>>> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>>>>
>>>>
>>>> On Mon, 27 Apr 2020 at 21:55, Maxim Solodovnik <so...@gmail.com>
>>>> wrote:
>>>>
>>>>> Hello Sebastian,
>>>>>
>>>>> I haven't planned to "brea away the conference room" and re-writing
>>>>> anything
>>>>> My goals were to
>>>>> 1) simplify JS dependency management
>>>>> 2) simplify Maven build
>>>>> 3) clean-up "manual polyfilling" and some hacks
>>>>> 4) use latest MathJax https://github.com/mathjax/MathJax/issues/2414
>>>>>
>>>>> 5*) optionally benefit from normal classes and inheritance
>>>>>
>>>>> above can be started any time :)
>>>>>
>>>>> p.s. you have too much energy :))) I'm buried with emails :)
>>>>>
>>>>> On Mon, 27 Apr 2020 at 15:20, seba.wagner@gmail.com
>>>>> <se...@gmail.com> wrote:
>>>>> >
>>>>> > Hi,
>>>>> >
>>>>> > how about we start to plan how to break away the conference room
>>>>> from the rest of the application ?
>>>>> >
>>>>> > It is already a lot of pure JavaScript. And writing it would be
>>>>> probably easier.
>>>>> > As well as you constantly need latest JS features.
>>>>> > Compile it stand-alone with Npm or yarn.
>>>>> > use a package.json
>>>>> > create and use node_modules
>>>>> > Run webpack for dev and hot reload the Javascript
>>>>> > use babel to cross compile for different platforms
>>>>> > use ES5/ES6
>>>>> > use eslint
>>>>> >
>>>>> > Doesn't mean it has to be React.
>>>>> >
>>>>> > But all those classes/prototype functions like raw-video.js => could
>>>>> be node_modules.
>>>>> >
>>>>> > But I just struggle to see how this dev-cycle we do will attract new
>>>>> devs from the JavaScript world.
>>>>> >
>>>>> > Or how about start with a PoC style: Just create a sample for Mobile
>>>>> Apps. Just audio/video. That is the only thing they can do anyway on that
>>>>> small screen realistically. Instead of trying to break the current
>>>>> application into a form factor of 600x400px.
>>>>> >
>>>>> > And then maybe grow from there.
>>>>> >
>>>>> > Cheers
>>>>> > Seb
>>>>> >
>>>>> >
>>>>> > Sebastian Wagner
>>>>> > https://www.linkedin.com/in/sebastianwagner/
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Best regards,
>>>>> Maxim
>>>>>
>>>>
>>>
>>> --
>>> Best regards,
>>> Maxim
>>>
>>
>
> --
> Best regards,
> Maxim
>

Re: How long until we break away the conference room JavaScript from the rest of the Wicket application :)

Posted by Maxim Solodovnik <so...@gmail.com>.
On Sun, 3 May 2020 at 04:17, seba.wagner@gmail.com <se...@gmail.com>
wrote:

> I guess I'm bit more creative on how I think it could work.
>
> We are already using JS-only components. So I would hope most would just
> stay as-is.
>
> For example: https://github.com/webrtc/adapter
> => we are using this, but instead of having a package.json and reference
> the script we copy n paste it.
>

NPM will also copy/paste it while `npm run build`
But dependencies will be managable


>
> Many of those raw-xyz classes could be converted into one or many NPM
> modules imho.
>

This can be done without NPM
I spend some time to pack small JS files into one big JS file to minify the
number of web requests and reduce load time


>
> You could probably also easily do this in stages and an initial stage
> could be:
>  - Leave the Apache Wicket header and Page component, but load one or many
> standalone JavaScript apps into it (that is pretty much what we do)
>

This was my plan
extract all our js files into `openmeetings-js` Maven module
And build single JS out of it

Only small `preloader` js will stay in `openmeetings-web`
(this need to be investigated)


>  - Bundle each of those standalone JavaScript apps using webpack,
>

there is no need to create multiple js apps


> you can trigger that from Maven easily with:
> https://github.com/eirslett/frontend-maven-plugin
>

yes, i do remember i have shared the link to this plugin before


>  - Reference the produced JS file from the various places in the code
>

It will be one reference (maybe 2 :)))

>
> Having those separated JS apps would make it much easier to develop them.
>

As I wrote earlier in this email: separate JS can be created with wicket
but this will increase request count and will slow down initial load


> Obviously from tooling perspective. But you can just load them into a page
> in isolation. You don't need the entire room, but you can just concentrate
> on 1 section.
> It brings all the advantages of separation of concerns. But also doesn't
> mean a big rewrite.
>
> And you can replace fragment by fragment of the website. One by one.
>
> Cheers
> Seb
>
> Sebastian Wagner
> https://www.linkedin.com/in/sebastianwagner/
>
> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>
>
> On Sat, 2 May 2020 at 16:53, Maxim Solodovnik <so...@gmail.com>
> wrote:
>
>> Hello Sebastian,
>>
>> From jquery-ui we are using
>> 1) draggable/droppable/resizable - seems to have to alternatives
>> 2) dialog - can be replaced any time due to we are using basic
>> functionality only
>>
>> Touch events are now works for room
>>
>> I still don't see why we need to rewrite everything ...
>>
>> On Sat, 2 May 2020 at 11:31, seba.wagner@gmail.com <se...@gmail.com>
>> wrote:
>>
>>> I'm just not sure how long it will take for jquery-ui to stop working.
>>>
>>> There has been literally no update to jquery-ui since 2016:
>>> https://jqueryui.com/changelog/1.12.1/
>>> For jquery Mobile there hasn't been any since 2016 either:
>>> https://github.com/jquery/jquery-mobile/commits/master
>>> jquery itself has 30 commits in the last 6-12 months:
>>> https://github.com/jquery/jquery/commits/master
>>>
>>> As for Apache Wicket, they may come up with some other JS code or
>>> framework over time. So the back end and administration part. It will work
>>> and continue to do so. There is also no strong requirement to make that
>>> work across Mobile and other platforms.
>>>
>>> But for coding the conference room UI Front End, we are bit stuck.
>>>
>>> Thanks,
>>> Seb
>>>
>>> Sebastian Wagner
>>> https://www.linkedin.com/in/sebastianwagner/
>>>
>>> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
>>> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>>>
>>>
>>> On Mon, 27 Apr 2020 at 21:55, Maxim Solodovnik <so...@gmail.com>
>>> wrote:
>>>
>>>> Hello Sebastian,
>>>>
>>>> I haven't planned to "brea away the conference room" and re-writing
>>>> anything
>>>> My goals were to
>>>> 1) simplify JS dependency management
>>>> 2) simplify Maven build
>>>> 3) clean-up "manual polyfilling" and some hacks
>>>> 4) use latest MathJax https://github.com/mathjax/MathJax/issues/2414
>>>>
>>>> 5*) optionally benefit from normal classes and inheritance
>>>>
>>>> above can be started any time :)
>>>>
>>>> p.s. you have too much energy :))) I'm buried with emails :)
>>>>
>>>> On Mon, 27 Apr 2020 at 15:20, seba.wagner@gmail.com
>>>> <se...@gmail.com> wrote:
>>>> >
>>>> > Hi,
>>>> >
>>>> > how about we start to plan how to break away the conference room from
>>>> the rest of the application ?
>>>> >
>>>> > It is already a lot of pure JavaScript. And writing it would be
>>>> probably easier.
>>>> > As well as you constantly need latest JS features.
>>>> > Compile it stand-alone with Npm or yarn.
>>>> > use a package.json
>>>> > create and use node_modules
>>>> > Run webpack for dev and hot reload the Javascript
>>>> > use babel to cross compile for different platforms
>>>> > use ES5/ES6
>>>> > use eslint
>>>> >
>>>> > Doesn't mean it has to be React.
>>>> >
>>>> > But all those classes/prototype functions like raw-video.js => could
>>>> be node_modules.
>>>> >
>>>> > But I just struggle to see how this dev-cycle we do will attract new
>>>> devs from the JavaScript world.
>>>> >
>>>> > Or how about start with a PoC style: Just create a sample for Mobile
>>>> Apps. Just audio/video. That is the only thing they can do anyway on that
>>>> small screen realistically. Instead of trying to break the current
>>>> application into a form factor of 600x400px.
>>>> >
>>>> > And then maybe grow from there.
>>>> >
>>>> > Cheers
>>>> > Seb
>>>> >
>>>> >
>>>> > Sebastian Wagner
>>>> > https://www.linkedin.com/in/sebastianwagner/
>>>>
>>>>
>>>>
>>>> --
>>>> Best regards,
>>>> Maxim
>>>>
>>>
>>
>> --
>> Best regards,
>> Maxim
>>
>

-- 
Best regards,
Maxim

Re: How long until we break away the conference room JavaScript from the rest of the Wicket application :)

Posted by "seba.wagner@gmail.com" <se...@gmail.com>.
I guess I'm bit more creative on how I think it could work.

We are already using JS-only components. So I would hope most would just
stay as-is.

For example: https://github.com/webrtc/adapter
=> we are using this, but instead of having a package.json and reference
the script we copy n paste it.

Many of those raw-xyz classes could be converted into one or many NPM
modules imho.

You could probably also easily do this in stages and an initial stage could
be:
 - Leave the Apache Wicket header and Page component, but load one or many
standalone JavaScript apps into it (that is pretty much what we do)
 - Bundle each of those standalone JavaScript apps using webpack, you can
trigger that from Maven easily with:
https://github.com/eirslett/frontend-maven-plugin
 - Reference the produced JS file from the various places in the code

Having those separated JS apps would make it much easier to develop them.
Obviously from tooling perspective. But you can just load them into a page
in isolation. You don't need the entire room, but you can just concentrate
on 1 section.
It brings all the advantages of separation of concerns. But also doesn't
mean a big rewrite.

And you can replace fragment by fragment of the website. One by one.

Cheers
Seb

Sebastian Wagner
https://www.linkedin.com/in/sebastianwagner/
<https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
<https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>


On Sat, 2 May 2020 at 16:53, Maxim Solodovnik <so...@gmail.com> wrote:

> Hello Sebastian,
>
> From jquery-ui we are using
> 1) draggable/droppable/resizable - seems to have to alternatives
> 2) dialog - can be replaced any time due to we are using basic
> functionality only
>
> Touch events are now works for room
>
> I still don't see why we need to rewrite everything ...
>
> On Sat, 2 May 2020 at 11:31, seba.wagner@gmail.com <se...@gmail.com>
> wrote:
>
>> I'm just not sure how long it will take for jquery-ui to stop working.
>>
>> There has been literally no update to jquery-ui since 2016:
>> https://jqueryui.com/changelog/1.12.1/
>> For jquery Mobile there hasn't been any since 2016 either:
>> https://github.com/jquery/jquery-mobile/commits/master
>> jquery itself has 30 commits in the last 6-12 months:
>> https://github.com/jquery/jquery/commits/master
>>
>> As for Apache Wicket, they may come up with some other JS code or
>> framework over time. So the back end and administration part. It will work
>> and continue to do so. There is also no strong requirement to make that
>> work across Mobile and other platforms.
>>
>> But for coding the conference room UI Front End, we are bit stuck.
>>
>> Thanks,
>> Seb
>>
>> Sebastian Wagner
>> https://www.linkedin.com/in/sebastianwagner/
>>
>> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
>> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>>
>>
>> On Mon, 27 Apr 2020 at 21:55, Maxim Solodovnik <so...@gmail.com>
>> wrote:
>>
>>> Hello Sebastian,
>>>
>>> I haven't planned to "brea away the conference room" and re-writing
>>> anything
>>> My goals were to
>>> 1) simplify JS dependency management
>>> 2) simplify Maven build
>>> 3) clean-up "manual polyfilling" and some hacks
>>> 4) use latest MathJax https://github.com/mathjax/MathJax/issues/2414
>>>
>>> 5*) optionally benefit from normal classes and inheritance
>>>
>>> above can be started any time :)
>>>
>>> p.s. you have too much energy :))) I'm buried with emails :)
>>>
>>> On Mon, 27 Apr 2020 at 15:20, seba.wagner@gmail.com
>>> <se...@gmail.com> wrote:
>>> >
>>> > Hi,
>>> >
>>> > how about we start to plan how to break away the conference room from
>>> the rest of the application ?
>>> >
>>> > It is already a lot of pure JavaScript. And writing it would be
>>> probably easier.
>>> > As well as you constantly need latest JS features.
>>> > Compile it stand-alone with Npm or yarn.
>>> > use a package.json
>>> > create and use node_modules
>>> > Run webpack for dev and hot reload the Javascript
>>> > use babel to cross compile for different platforms
>>> > use ES5/ES6
>>> > use eslint
>>> >
>>> > Doesn't mean it has to be React.
>>> >
>>> > But all those classes/prototype functions like raw-video.js => could
>>> be node_modules.
>>> >
>>> > But I just struggle to see how this dev-cycle we do will attract new
>>> devs from the JavaScript world.
>>> >
>>> > Or how about start with a PoC style: Just create a sample for Mobile
>>> Apps. Just audio/video. That is the only thing they can do anyway on that
>>> small screen realistically. Instead of trying to break the current
>>> application into a form factor of 600x400px.
>>> >
>>> > And then maybe grow from there.
>>> >
>>> > Cheers
>>> > Seb
>>> >
>>> >
>>> > Sebastian Wagner
>>> > https://www.linkedin.com/in/sebastianwagner/
>>>
>>>
>>>
>>> --
>>> Best regards,
>>> Maxim
>>>
>>
>
> --
> Best regards,
> Maxim
>

Re: How long until we break away the conference room JavaScript from the rest of the Wicket application :)

Posted by Maxim Solodovnik <so...@gmail.com>.
Hello Sebastian,

From jquery-ui we are using
1) draggable/droppable/resizable - seems to have to alternatives
2) dialog - can be replaced any time due to we are using basic
functionality only

Touch events are now works for room

I still don't see why we need to rewrite everything ...

On Sat, 2 May 2020 at 11:31, seba.wagner@gmail.com <se...@gmail.com>
wrote:

> I'm just not sure how long it will take for jquery-ui to stop working.
>
> There has been literally no update to jquery-ui since 2016:
> https://jqueryui.com/changelog/1.12.1/
> For jquery Mobile there hasn't been any since 2016 either:
> https://github.com/jquery/jquery-mobile/commits/master
> jquery itself has 30 commits in the last 6-12 months:
> https://github.com/jquery/jquery/commits/master
>
> As for Apache Wicket, they may come up with some other JS code or
> framework over time. So the back end and administration part. It will work
> and continue to do so. There is also no strong requirement to make that
> work across Mobile and other platforms.
>
> But for coding the conference room UI Front End, we are bit stuck.
>
> Thanks,
> Seb
>
> Sebastian Wagner
> https://www.linkedin.com/in/sebastianwagner/
>
> <https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
> <https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>
>
>
> On Mon, 27 Apr 2020 at 21:55, Maxim Solodovnik <so...@gmail.com>
> wrote:
>
>> Hello Sebastian,
>>
>> I haven't planned to "brea away the conference room" and re-writing
>> anything
>> My goals were to
>> 1) simplify JS dependency management
>> 2) simplify Maven build
>> 3) clean-up "manual polyfilling" and some hacks
>> 4) use latest MathJax https://github.com/mathjax/MathJax/issues/2414
>>
>> 5*) optionally benefit from normal classes and inheritance
>>
>> above can be started any time :)
>>
>> p.s. you have too much energy :))) I'm buried with emails :)
>>
>> On Mon, 27 Apr 2020 at 15:20, seba.wagner@gmail.com
>> <se...@gmail.com> wrote:
>> >
>> > Hi,
>> >
>> > how about we start to plan how to break away the conference room from
>> the rest of the application ?
>> >
>> > It is already a lot of pure JavaScript. And writing it would be
>> probably easier.
>> > As well as you constantly need latest JS features.
>> > Compile it stand-alone with Npm or yarn.
>> > use a package.json
>> > create and use node_modules
>> > Run webpack for dev and hot reload the Javascript
>> > use babel to cross compile for different platforms
>> > use ES5/ES6
>> > use eslint
>> >
>> > Doesn't mean it has to be React.
>> >
>> > But all those classes/prototype functions like raw-video.js => could be
>> node_modules.
>> >
>> > But I just struggle to see how this dev-cycle we do will attract new
>> devs from the JavaScript world.
>> >
>> > Or how about start with a PoC style: Just create a sample for Mobile
>> Apps. Just audio/video. That is the only thing they can do anyway on that
>> small screen realistically. Instead of trying to break the current
>> application into a form factor of 600x400px.
>> >
>> > And then maybe grow from there.
>> >
>> > Cheers
>> > Seb
>> >
>> >
>> > Sebastian Wagner
>> > https://www.linkedin.com/in/sebastianwagner/
>>
>>
>>
>> --
>> Best regards,
>> Maxim
>>
>

-- 
Best regards,
Maxim

Re: How long until we break away the conference room JavaScript from the rest of the Wicket application :)

Posted by "seba.wagner@gmail.com" <se...@gmail.com>.
I'm just not sure how long it will take for jquery-ui to stop working.

There has been literally no update to jquery-ui since 2016:
https://jqueryui.com/changelog/1.12.1/
For jquery Mobile there hasn't been any since 2016 either:
https://github.com/jquery/jquery-mobile/commits/master
jquery itself has 30 commits in the last 6-12 months:
https://github.com/jquery/jquery/commits/master

As for Apache Wicket, they may come up with some other JS code or framework
over time. So the back end and administration part. It will work and
continue to do so. There is also no strong requirement to make that work
across Mobile and other platforms.

But for coding the conference room UI Front End, we are bit stuck.

Thanks,
Seb

Sebastian Wagner
https://www.linkedin.com/in/sebastianwagner/
<https://www.youracclaim.com/badges/da4e8828-743d-4968-af6f-49033f10d60a/public_url>
<https://www.youracclaim.com/badges/b7e709c6-aa87-4b02-9faf-099038475e36/public_url>


On Mon, 27 Apr 2020 at 21:55, Maxim Solodovnik <so...@gmail.com> wrote:

> Hello Sebastian,
>
> I haven't planned to "brea away the conference room" and re-writing
> anything
> My goals were to
> 1) simplify JS dependency management
> 2) simplify Maven build
> 3) clean-up "manual polyfilling" and some hacks
> 4) use latest MathJax https://github.com/mathjax/MathJax/issues/2414
>
> 5*) optionally benefit from normal classes and inheritance
>
> above can be started any time :)
>
> p.s. you have too much energy :))) I'm buried with emails :)
>
> On Mon, 27 Apr 2020 at 15:20, seba.wagner@gmail.com
> <se...@gmail.com> wrote:
> >
> > Hi,
> >
> > how about we start to plan how to break away the conference room from
> the rest of the application ?
> >
> > It is already a lot of pure JavaScript. And writing it would be probably
> easier.
> > As well as you constantly need latest JS features.
> > Compile it stand-alone with Npm or yarn.
> > use a package.json
> > create and use node_modules
> > Run webpack for dev and hot reload the Javascript
> > use babel to cross compile for different platforms
> > use ES5/ES6
> > use eslint
> >
> > Doesn't mean it has to be React.
> >
> > But all those classes/prototype functions like raw-video.js => could be
> node_modules.
> >
> > But I just struggle to see how this dev-cycle we do will attract new
> devs from the JavaScript world.
> >
> > Or how about start with a PoC style: Just create a sample for Mobile
> Apps. Just audio/video. That is the only thing they can do anyway on that
> small screen realistically. Instead of trying to break the current
> application into a form factor of 600x400px.
> >
> > And then maybe grow from there.
> >
> > Cheers
> > Seb
> >
> >
> > Sebastian Wagner
> > https://www.linkedin.com/in/sebastianwagner/
>
>
>
> --
> Best regards,
> Maxim
>

Re: How long until we break away the conference room JavaScript from the rest of the Wicket application :)

Posted by Maxim Solodovnik <so...@gmail.com>.
Hello Sebastian,

I haven't planned to "brea away the conference room" and re-writing anything
My goals were to
1) simplify JS dependency management
2) simplify Maven build
3) clean-up "manual polyfilling" and some hacks
4) use latest MathJax https://github.com/mathjax/MathJax/issues/2414

5*) optionally benefit from normal classes and inheritance

above can be started any time :)

p.s. you have too much energy :))) I'm buried with emails :)

On Mon, 27 Apr 2020 at 15:20, seba.wagner@gmail.com
<se...@gmail.com> wrote:
>
> Hi,
>
> how about we start to plan how to break away the conference room from the rest of the application ?
>
> It is already a lot of pure JavaScript. And writing it would be probably easier.
> As well as you constantly need latest JS features.
> Compile it stand-alone with Npm or yarn.
> use a package.json
> create and use node_modules
> Run webpack for dev and hot reload the Javascript
> use babel to cross compile for different platforms
> use ES5/ES6
> use eslint
>
> Doesn't mean it has to be React.
>
> But all those classes/prototype functions like raw-video.js => could be node_modules.
>
> But I just struggle to see how this dev-cycle we do will attract new devs from the JavaScript world.
>
> Or how about start with a PoC style: Just create a sample for Mobile Apps. Just audio/video. That is the only thing they can do anyway on that small screen realistically. Instead of trying to break the current application into a form factor of 600x400px.
>
> And then maybe grow from there.
>
> Cheers
> Seb
>
>
> Sebastian Wagner
> https://www.linkedin.com/in/sebastianwagner/



-- 
Best regards,
Maxim