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 <[email protected]> wrote:

>
>
> On Sun, 10 May 2020 at 07:18, [email protected] <[email protected]>
> 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 <[email protected]>
>> wrote:
>>
>>>
>>>
>>> On Sun, 3 May 2020 at 04:17, [email protected] <
>>> [email protected]> 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 <[email protected]>
>>>> 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, [email protected] <
>>>>> [email protected]> 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 <[email protected]>
>>>>>> 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, [email protected]
>>>>>>> <[email protected]> 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
>

Reply via email to