Re: Strategies for dealing with large number of languages?

2024-01-04 Thread Leon Pennings
All,

Same as Ralph, we've always been using a custom Translator class (since 
2009/2010 or so).
so for instance .setText(Translator.translate("Submit"))

The Translator loads all labels and puts them in mem based on the language 
preference of the user. So only 1 set of language labels in mem.
Works like a charm and never had a problem.
The translations are on the server side in the db so that a superuser can 
manage translations.

rg,

Leon.

Op donderdag 4 januari 2024 om 09:55:26 UTC+1 schreef Ralph Fiergolla:

Hi! 
Since a big part of our string content comes from database records anyway, 
we decided to go without any static texts but use dynamic labels. Initial 
concerns about performance and memory footprint have proven to be 
unfounded. That is, despite working in the context of European Institutions 
we go with a single static language and avoid the compile time performance 
bottleneck of having a large number of permutations. 
Cheers,
Ralph 

On Thursday, January 4, 2024 at 1:29:08 AM UTC+1 Alexander Bertram wrote:

Hi there,
We have been using GWT to build our product for a very long time. Recently, 
we've faced a new challenge as we've steadily been increasing the number of 
supported translations of the application to support a global audience. 
We're up to 24 languages, and could conceivably hit 40 in the coming year.

With all of these languages, come more permutations! We've stripped away 
browser-specific permutations, but we do have a mobile version of the app, 
which means that we have 2 x 24 permutations = 48.

So far, we've addressed this problem by increasing the size of the VM that 
builds the app, but even with 16 vCPUs it takes 10-12 minutes to build the 
app. I'm experimenting with increasing to 32 vCPUs, but so far I can't get 
the build time to drop linearly.

Anyone else out there using alternate strategies? Is it worth trying to 
create some sort of distributed cache from the intermediate files the 
compiler writes out? Load translations dynamically at runtime instead? Or 
just through more hardware at it :-)

Just curious to hear what others are doing?

Best,
Alex

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/40e79634-d41e-4ddb-8f5c-0d702bcbd1f1n%40googlegroups.com.


Re: Strategies for dealing with large number of languages?

2024-01-04 Thread 'Frank Hossfeld' via GWT Users
The strings of our application are located on the server. At applicaiton 
start, the client loads the constants from the server and load it into a 
factory. The factory has a method that accepts a key and return the value. 

benefits: 
- no new permutations
- change language without reloading the application
- adding a language is just adding an new property file on the server

drawback:
- a little bit longer start up time
- no support from the IDE
Ralph Fiergolla schrieb am Donnerstag, 4. Januar 2024 um 09:55:26 UTC+1:

> Hi! 
> Since a big part of our string content comes from database records anyway, 
> we decided to go without any static texts but use dynamic labels. Initial 
> concerns about performance and memory footprint have proven to be 
> unfounded. That is, despite working in the context of European Institutions 
> we go with a single static language and avoid the compile time performance 
> bottleneck of having a large number of permutations. 
> Cheers,
> Ralph 
>
> On Thursday, January 4, 2024 at 1:29:08 AM UTC+1 Alexander Bertram wrote:
>
>> Hi there,
>> We have been using GWT to build our product for a very long time. 
>> Recently, we've faced a new challenge as we've steadily been increasing the 
>> number of supported translations of the application to support a global 
>> audience. We're up to 24 languages, and could conceivably hit 40 in the 
>> coming year.
>>
>> With all of these languages, come more permutations! We've stripped away 
>> browser-specific permutations, but we do have a mobile version of the app, 
>> which means that we have 2 x 24 permutations = 48.
>>
>> So far, we've addressed this problem by increasing the size of the VM 
>> that builds the app, but even with 16 vCPUs it takes 10-12 minutes to build 
>> the app. I'm experimenting with increasing to 32 vCPUs, but so far I can't 
>> get the build time to drop linearly.
>>
>> Anyone else out there using alternate strategies? Is it worth trying to 
>> create some sort of distributed cache from the intermediate files the 
>> compiler writes out? Load translations dynamically at runtime instead? Or 
>> just through more hardware at it :-)
>>
>> Just curious to hear what others are doing?
>>
>> Best,
>> Alex
>>
>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/2498f396-b504-4d3a-8e15-63936ef37b64n%40googlegroups.com.


Re: Strategies for dealing with large number of languages?

2024-01-04 Thread Ralph Fiergolla
Hi! 
Since a big part of our string content comes from database records anyway, 
we decided to go without any static texts but use dynamic labels. Initial 
concerns about performance and memory footprint have proven to be 
unfounded. That is, despite working in the context of European Institutions 
we go with a single static language and avoid the compile time performance 
bottleneck of having a large number of permutations. 
Cheers,
Ralph 

On Thursday, January 4, 2024 at 1:29:08 AM UTC+1 Alexander Bertram wrote:

> Hi there,
> We have been using GWT to build our product for a very long time. 
> Recently, we've faced a new challenge as we've steadily been increasing the 
> number of supported translations of the application to support a global 
> audience. We're up to 24 languages, and could conceivably hit 40 in the 
> coming year.
>
> With all of these languages, come more permutations! We've stripped away 
> browser-specific permutations, but we do have a mobile version of the app, 
> which means that we have 2 x 24 permutations = 48.
>
> So far, we've addressed this problem by increasing the size of the VM that 
> builds the app, but even with 16 vCPUs it takes 10-12 minutes to build the 
> app. I'm experimenting with increasing to 32 vCPUs, but so far I can't get 
> the build time to drop linearly.
>
> Anyone else out there using alternate strategies? Is it worth trying to 
> create some sort of distributed cache from the intermediate files the 
> compiler writes out? Load translations dynamically at runtime instead? Or 
> just through more hardware at it :-)
>
> Just curious to hear what others are doing?
>
> Best,
> Alex
>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/d483e663-1aa5-4bc7-a841-0660073c8a69n%40googlegroups.com.