SlideShare ist ein Scribd-Unternehmen logo
1 von 24
Downloaden Sie, um offline zu lesen
TapiJI
Smart I18N assistance and resource translation tools




          INSO - Industrial Software
          Institut für Rechnergestützte Automation | Fakultät für Informatik | Technische Universität Wien
Outline



1   The TapiJI project

2   I18N Tool Suite

3   Stand-alone translation apps

4   Whats next / Future work

5   Links / References / Documentation




                                         2
Outline



1   The TapiJI project

2   I18N Tool Suite

3   Stand-alone translation apps

4   Whats next / Future work

5   Links / References / Documentation




                                         3
The TapiJI project - Vision

Make I18N more convenient for agile software development
  ▪ Consider I18N as integral part of initial development
  ▪ Reduce effort of corresponding tasks
  ▪ Reduce the risk of bugs in the initial translation
  ▪ Highlight missing Internationalizations and provide Quick Fixes


Assist process of resource translation
  ▪ Provide application for resource translation
  ▪ Allow to edit Resource-Bundle without file format conversion
  ▪ Integrated into the dev tool landscape and process
  ▪ Assist cooperative translation work


                                                                      4
The TapiJI project - Timeline

06/2010 Starting work on TapiJI
10/2010 Sources are hosted on EclipseLabs
11/2010 Presenting I18N tools and RCP-based translation
         application at the DemoCamp in Vienna
02/2011 Article in the German Eclipse Magacine
06/2011 TapiJI provides an extensible architecture
11/2011 Presentation of new features at the DemoCamp in Vienna
08/2012 Finalized I18N refacotring support & RAP translator
10/2012 Contribution to the Eclipse Babel project
11/2012 Today‘s presentation




                                                              5
Architecture – Tool Suite

TapiJI Tool Suite
  ▪ Extends the Eclipse IDE with smart Internationalization helps
  ▪ Integrates with the existing Babel Messages Editor
  ▪ Assists developers during day-to-day coding work
  ▪ Provides an extensible architecture

                    Java ext.   RB ext.   JSF ext.    …

                         TapiJI Tools Core plug-ins


                           Editor Enhancements
                       Eclipse Babel Messages Editor


                                Eclipse IDE




                                                                    6
Architecture - Babel contribution

Parts have been contributed to the Eclipse Babel project:
  ▪ TapiJI specific enhancements of Messages Editor
  ▪ The Tool Suite‘s core plug-ins
  ▪ Java and RB extension plug-ins



                    Java ext.   RB ext.   JSF ext.    …

                         TapiJI Tools Core plug-ins


                           Editor Enhancements
                       Eclipse Babel Messages Editor


                                Eclipse IDE




                                                            7
Architecute – RCP/RAP Translator

TapiJI Translator
  ▪ Standalone application for translation of Java Resource-Bundles
  ▪ Implementation for multiple target platforms
      RCP based single-user translator
      RAP based translator for cooperative resource translation


                    RCP Translator        RAP Translator


                          TapiJI Generic Translator


                           Editor Enhancements
                       Eclipse Babel Messages Editor


                     Eclipse RCP           Eclipse RAP




                                                                   8
Outline



1   The TapiJI project

2   I18N Tool Suite

3   Stand-alone translation apps

4   Whats next / Future work

5   Links / References / Documentation




                                         9
I18N Tool Suite

Avoid typical problems of Java Internationalization
  ▪ Export of culture-neutral configuration strings
  ▪ Hard-coded UI literals
  ▪ Incomplete export of constant string literals


These problems are addressed by IDE-integrated assistance
  ▪ Present I18N tasks more transparent
  ▪ Highlight I18N errors
  ▪ Provide Quick Fix resolutions for reported problems
  ▪ Supports refactoring of resource keys




                                                          10
I18N Tool Suite

Refactoring support
  ▪ Refactoring of Resource Bundle keys
      Proposal Context menu of Resource Bundle view
      Context menu in Babel Messages editor
      Short cut


  ▪ Consistently modifies resource references


  ▪ Provides preview for inspecting refactoring changes


  ▪ Cal10n Refactoring support




                                                          11
Live Demo




            12
Openness

 Builder allows to register additional resource parsers



                        C     parse resources
                        O
Modified resource       R
 Modified resource
   Modified resource    E
    Modified resource
                        B
                                                Extension plug-in
                        U
                        I
                        L
                        D     Internationalization errors
                        E
                        R    Quick-fix resolutions




                                                                13
Outline



1   The TapiJI project

2   I18N Tool Suite

3   Stand-alone translation apps

4   Whats next / Future work

5   Links / References / Documentation




                                         14
TapiJI Translator

Assists translation personell


Stand-alone application for editing Resource-Bundles
without the knowledge of a programming language


Generic translator with two platform specific
implementations
  ▪ RCP based single-user translator
  ▪ RAP based multi-user translator




                                                       15
RCP Translator




                 16
RAP Translator

Additional features in contrast to RCP translator
  ▪ Web application
      No local installation required
      Always up-to-date
      Multiple users
  ▪ Upload & Download of Resource-Bundles
  ▪ Simple user management
  ▪ Resource-Bundles are stored and maintained on the server
  ▪ Each user has an overview of his bundles
  ▪ File sharing
      Simultaneous translation of Resource-Bundles




                                                               17
Live Demo




            18
Outline



1   The TapiJI project

2   I18N Tool Suite

3   Stand-alone translation apps

4   Whats next / Future work

5   Links / References / Documentation




                                         19
Future Enhancements


Internationalization workflow
  ▪ Development and Evaluation of a best practice I18N process
  ▪ Adapt tool suite for supporting the developed workflow


Mylyn integration
  ▪ Allow the creation of Internationalization tasks
  ▪ SCM/Diff integration to communicate change sets


Integration of mobile frameworks
  ▪ Allows the Internationalization of mobile Applications
  ▪ Planned for Android and iOS


                                                                 20
Future Enhancements


Cal10n Support
 ▪ Enhance Tool Suite with support for Compiler assisted L10N
 ▪ Resource keys are mapped to enum entries

RAP Translator enhancements
 ▪ Optional GIT integration for user and storage management
 ▪ Event-driven user notification




                                                                21
Questions & Answers




                      22
Outline



1   The TapiJI project

2   I18N Tool Suite

3   Stand-alone translation apps

4   Whats next / Future work

5   Links / References / Documentation




                                         23
Links / References / Documentation


Project page @EclipseLabs
  ▪ http://code.google.com/a/eclipselabs.org/p/tapiji/wiki/Overview
  ▪ Demo Video: http://www.youtube.com/watch?v=9gDQeeIR5eU
  ▪ User & development documentation:
    http://code.google.com/a/eclipselabs.org/p/tapiji/wiki/Overview


Project page @Babel
  ▪ http://www.eclipse.org/projects/project.php?id=technology.babel
  ▪ Messages Editor: http://www.eclipse.org/babel/messages_editor/




                                                                      24

Weitere ähnliche Inhalte

Was ist angesagt?

Introduction to domino_global_workbench_8.5
Introduction to domino_global_workbench_8.5Introduction to domino_global_workbench_8.5
Introduction to domino_global_workbench_8.5hepeiwei
 
Zarafa sc 2012_ogg
Zarafa sc 2012_oggZarafa sc 2012_ogg
Zarafa sc 2012_oggEmiel Brok
 
Zararfa SummerCamp 2012 - Fedora update & PAM-MAPI Zarafa Ready certified com...
Zararfa SummerCamp 2012 - Fedora update & PAM-MAPI Zarafa Ready certified com...Zararfa SummerCamp 2012 - Fedora update & PAM-MAPI Zarafa Ready certified com...
Zararfa SummerCamp 2012 - Fedora update & PAM-MAPI Zarafa Ready certified com...Zarafa
 
Os Koziarsky
Os KoziarskyOs Koziarsky
Os Koziarskyoscon2007
 
Building a Language Server for Eclipse MicroProfile
Building a Language Server for Eclipse MicroProfileBuilding a Language Server for Eclipse MicroProfile
Building a Language Server for Eclipse MicroProfileYK Chang
 
Code, ci, infrastructure - the gophers way
Code, ci, infrastructure - the gophers wayCode, ci, infrastructure - the gophers way
Code, ci, infrastructure - the gophers wayAlex Baitov
 
Translating Apereo Software: A Case Study using Sakai and Transifex
Translating Apereo Software:  A Case Study using Sakai and TransifexTranslating Apereo Software:  A Case Study using Sakai and Transifex
Translating Apereo Software: A Case Study using Sakai and Transifexyuji tokiwa
 
UI5 Tooling & Ecosystem
UI5 Tooling & EcosystemUI5 Tooling & Ecosystem
UI5 Tooling & EcosystemPeter Muessig
 
JDD2015: Towards the Fastest (J)VM on the Planet! - Jaroslav Tulach
JDD2015: Towards the Fastest (J)VM on the Planet! - Jaroslav TulachJDD2015: Towards the Fastest (J)VM on the Planet! - Jaroslav Tulach
JDD2015: Towards the Fastest (J)VM on the Planet! - Jaroslav TulachPROIDEA
 
Localization Project Management
Localization Project ManagementLocalization Project Management
Localization Project Managementbarakdanin
 
Resume - ERF - 2015-12-15
Resume - ERF - 2015-12-15Resume - ERF - 2015-12-15
Resume - ERF - 2015-12-15Eric Foertsch
 
Programmatic Load of the Oracle Clinical Global Library
Programmatic Load of the Oracle Clinical Global LibraryProgrammatic Load of the Oracle Clinical Global Library
Programmatic Load of the Oracle Clinical Global LibraryPerficient
 
Julia vs Python 2020
Julia vs Python 2020Julia vs Python 2020
Julia vs Python 2020Devathon
 
Software development made serious
Software development made seriousSoftware development made serious
Software development made seriousDanilo Pianini
 
Building Good Containers for Python Applications
Building Good Containers for Python ApplicationsBuilding Good Containers for Python Applications
Building Good Containers for Python ApplicationsAll Things Open
 

Was ist angesagt? (20)

Introduction to domino_global_workbench_8.5
Introduction to domino_global_workbench_8.5Introduction to domino_global_workbench_8.5
Introduction to domino_global_workbench_8.5
 
Zarafa sc 2012_ogg
Zarafa sc 2012_oggZarafa sc 2012_ogg
Zarafa sc 2012_ogg
 
Zararfa SummerCamp 2012 - Fedora update & PAM-MAPI Zarafa Ready certified com...
Zararfa SummerCamp 2012 - Fedora update & PAM-MAPI Zarafa Ready certified com...Zararfa SummerCamp 2012 - Fedora update & PAM-MAPI Zarafa Ready certified com...
Zararfa SummerCamp 2012 - Fedora update & PAM-MAPI Zarafa Ready certified com...
 
Introduction to Kotlin
Introduction to KotlinIntroduction to Kotlin
Introduction to Kotlin
 
Os Koziarsky
Os KoziarskyOs Koziarsky
Os Koziarsky
 
Building a Language Server for Eclipse MicroProfile
Building a Language Server for Eclipse MicroProfileBuilding a Language Server for Eclipse MicroProfile
Building a Language Server for Eclipse MicroProfile
 
Code, ci, infrastructure - the gophers way
Code, ci, infrastructure - the gophers wayCode, ci, infrastructure - the gophers way
Code, ci, infrastructure - the gophers way
 
Since the release of c
Since the release of cSince the release of c
Since the release of c
 
Translating Apereo Software: A Case Study using Sakai and Transifex
Translating Apereo Software:  A Case Study using Sakai and TransifexTranslating Apereo Software:  A Case Study using Sakai and Transifex
Translating Apereo Software: A Case Study using Sakai and Transifex
 
UI5 Tooling & Ecosystem
UI5 Tooling & EcosystemUI5 Tooling & Ecosystem
UI5 Tooling & Ecosystem
 
JDD2015: Towards the Fastest (J)VM on the Planet! - Jaroslav Tulach
JDD2015: Towards the Fastest (J)VM on the Planet! - Jaroslav TulachJDD2015: Towards the Fastest (J)VM on the Planet! - Jaroslav Tulach
JDD2015: Towards the Fastest (J)VM on the Planet! - Jaroslav Tulach
 
Embarcadero RAD server Launch Webinar
Embarcadero RAD server Launch WebinarEmbarcadero RAD server Launch Webinar
Embarcadero RAD server Launch Webinar
 
Localization Project Management
Localization Project ManagementLocalization Project Management
Localization Project Management
 
Resume - ERF - 2015-12-15
Resume - ERF - 2015-12-15Resume - ERF - 2015-12-15
Resume - ERF - 2015-12-15
 
Programmatic Load of the Oracle Clinical Global Library
Programmatic Load of the Oracle Clinical Global LibraryProgrammatic Load of the Oracle Clinical Global Library
Programmatic Load of the Oracle Clinical Global Library
 
Julia vs Python 2020
Julia vs Python 2020Julia vs Python 2020
Julia vs Python 2020
 
Software development made serious
Software development made seriousSoftware development made serious
Software development made serious
 
LabDocumentation
LabDocumentationLabDocumentation
LabDocumentation
 
resume
resumeresume
resume
 
Building Good Containers for Python Applications
Building Good Containers for Python ApplicationsBuilding Good Containers for Python Applications
Building Good Containers for Python Applications
 

Andere mochten auch

Andere mochten auch (8)

The primary research pictures
The primary research pictures The primary research pictures
The primary research pictures
 
Lets Localize Your Plugins
Lets Localize Your PluginsLets Localize Your Plugins
Lets Localize Your Plugins
 
Evaluation 4
Evaluation 4 Evaluation 4
Evaluation 4
 
Horror sub genre locations pictures
Horror sub genre locations pictures Horror sub genre locations pictures
Horror sub genre locations pictures
 
Evaluation 3 3 3
Evaluation 3 3 3 Evaluation 3 3 3
Evaluation 3 3 3
 
Storyboard
Storyboard Storyboard
Storyboard
 
Machine Translation Tools webinar
Machine Translation Tools webinarMachine Translation Tools webinar
Machine Translation Tools webinar
 
Multilizer Enterprise - Quick Introduction
Multilizer Enterprise - Quick IntroductionMultilizer Enterprise - Quick Introduction
Multilizer Enterprise - Quick Introduction
 

Ähnlich wie Smart I18N assistance and resource translation tools

Building Eclipse Plugins and RCP applications with Tycho
Building Eclipse Plugins and RCP applications with TychoBuilding Eclipse Plugins and RCP applications with Tycho
Building Eclipse Plugins and RCP applications with Tychojsievers
 
Odo improving the developer experience on OpenShift - hack & sangria
Odo   improving the developer experience on OpenShift - hack & sangriaOdo   improving the developer experience on OpenShift - hack & sangria
Odo improving the developer experience on OpenShift - hack & sangriaJorge Morales
 
Internationalisation In Rails
Internationalisation In RailsInternationalisation In Rails
Internationalisation In RailsRishav Dixit
 
Flutter vs react native – from developer point
Flutter vs react native – from developer pointFlutter vs react native – from developer point
Flutter vs react native – from developer pointBOSC Tech Labs
 
Introduction to Python GUI development with Delphi for Python - Part 1: Del...
Introduction to Python GUI development with Delphi for Python - Part 1:   Del...Introduction to Python GUI development with Delphi for Python - Part 1:   Del...
Introduction to Python GUI development with Delphi for Python - Part 1: Del...Embarcadero Technologies
 
The Best Python IDEs and Code Editors.pdf
The Best Python IDEs and Code Editors.pdfThe Best Python IDEs and Code Editors.pdf
The Best Python IDEs and Code Editors.pdfAppdeveloper10
 
Revamping Mailjet API documentation @ ParisAPI meetup
Revamping Mailjet API documentation @ ParisAPI meetupRevamping Mailjet API documentation @ ParisAPI meetup
Revamping Mailjet API documentation @ ParisAPI meetupMailjet
 
4.LanguageProcessors and language Processing Activities.pdf
4.LanguageProcessors and language Processing Activities.pdf4.LanguageProcessors and language Processing Activities.pdf
4.LanguageProcessors and language Processing Activities.pdfSwapnaliPawar27
 
Drupal 7 vs. Drupal 8: A Contrast of Multilingual Support
Drupal 7 vs. Drupal 8: A Contrast of Multilingual SupportDrupal 7 vs. Drupal 8: A Contrast of Multilingual Support
Drupal 7 vs. Drupal 8: A Contrast of Multilingual SupportAcquia
 
Programming tools for developers
Programming tools for developersProgramming tools for developers
Programming tools for developersBBVA API Market
 
The Ring programming language version 1.5.2 book - Part 5 of 181
The Ring programming language version 1.5.2 book - Part 5 of 181The Ring programming language version 1.5.2 book - Part 5 of 181
The Ring programming language version 1.5.2 book - Part 5 of 181Mahmoud Samir Fayed
 
15 Top reasons to choose Java for Backend Development
15 Top reasons to choose Java for Backend Development15 Top reasons to choose Java for Backend Development
15 Top reasons to choose Java for Backend DevelopmentYour Team in India
 
Building a fully managed stream processing platform on Flink at scale for Lin...
Building a fully managed stream processing platform on Flink at scale for Lin...Building a fully managed stream processing platform on Flink at scale for Lin...
Building a fully managed stream processing platform on Flink at scale for Lin...Flink Forward
 
Should you choose react native or swift for i os app development
Should you choose react native or swift for i os app development Should you choose react native or swift for i os app development
Should you choose react native or swift for i os app development MoonTechnolabsPvtLtd
 
Tycho - Building plug-ins with Maven
Tycho - Building plug-ins with MavenTycho - Building plug-ins with Maven
Tycho - Building plug-ins with MavenPascal Rapicault
 
Cloud Foundry at Rakuten
Cloud Foundry at RakutenCloud Foundry at Rakuten
Cloud Foundry at RakutenPlatform CF
 
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...Heiko Voigt
 

Ähnlich wie Smart I18N assistance and resource translation tools (20)

Building Eclipse Plugins and RCP applications with Tycho
Building Eclipse Plugins and RCP applications with TychoBuilding Eclipse Plugins and RCP applications with Tycho
Building Eclipse Plugins and RCP applications with Tycho
 
Odo improving the developer experience on OpenShift - hack & sangria
Odo   improving the developer experience on OpenShift - hack & sangriaOdo   improving the developer experience on OpenShift - hack & sangria
Odo improving the developer experience on OpenShift - hack & sangria
 
Internationalisation In Rails
Internationalisation In RailsInternationalisation In Rails
Internationalisation In Rails
 
Flutter vs react native – from developer point
Flutter vs react native – from developer pointFlutter vs react native – from developer point
Flutter vs react native – from developer point
 
OpenNTF Essentials
OpenNTF EssentialsOpenNTF Essentials
OpenNTF Essentials
 
Introduction to Python GUI development with Delphi for Python - Part 1: Del...
Introduction to Python GUI development with Delphi for Python - Part 1:   Del...Introduction to Python GUI development with Delphi for Python - Part 1:   Del...
Introduction to Python GUI development with Delphi for Python - Part 1: Del...
 
The Best Python IDEs and Code Editors.pdf
The Best Python IDEs and Code Editors.pdfThe Best Python IDEs and Code Editors.pdf
The Best Python IDEs and Code Editors.pdf
 
Revamping Mailjet API documentation @ ParisAPI meetup
Revamping Mailjet API documentation @ ParisAPI meetupRevamping Mailjet API documentation @ ParisAPI meetup
Revamping Mailjet API documentation @ ParisAPI meetup
 
4.LanguageProcessors and language Processing Activities.pdf
4.LanguageProcessors and language Processing Activities.pdf4.LanguageProcessors and language Processing Activities.pdf
4.LanguageProcessors and language Processing Activities.pdf
 
Drupal 7 vs. Drupal 8: A Contrast of Multilingual Support
Drupal 7 vs. Drupal 8: A Contrast of Multilingual SupportDrupal 7 vs. Drupal 8: A Contrast of Multilingual Support
Drupal 7 vs. Drupal 8: A Contrast of Multilingual Support
 
Programming tools for developers
Programming tools for developersProgramming tools for developers
Programming tools for developers
 
Top 6 php framework
Top 6 php frameworkTop 6 php framework
Top 6 php framework
 
Sling IDE Tooling
Sling IDE ToolingSling IDE Tooling
Sling IDE Tooling
 
The Ring programming language version 1.5.2 book - Part 5 of 181
The Ring programming language version 1.5.2 book - Part 5 of 181The Ring programming language version 1.5.2 book - Part 5 of 181
The Ring programming language version 1.5.2 book - Part 5 of 181
 
15 Top reasons to choose Java for Backend Development
15 Top reasons to choose Java for Backend Development15 Top reasons to choose Java for Backend Development
15 Top reasons to choose Java for Backend Development
 
Building a fully managed stream processing platform on Flink at scale for Lin...
Building a fully managed stream processing platform on Flink at scale for Lin...Building a fully managed stream processing platform on Flink at scale for Lin...
Building a fully managed stream processing platform on Flink at scale for Lin...
 
Should you choose react native or swift for i os app development
Should you choose react native or swift for i os app development Should you choose react native or swift for i os app development
Should you choose react native or swift for i os app development
 
Tycho - Building plug-ins with Maven
Tycho - Building plug-ins with MavenTycho - Building plug-ins with Maven
Tycho - Building plug-ins with Maven
 
Cloud Foundry at Rakuten
Cloud Foundry at RakutenCloud Foundry at Rakuten
Cloud Foundry at Rakuten
 
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
 

Kürzlich hochgeladen

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 

Kürzlich hochgeladen (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 

Smart I18N assistance and resource translation tools

  • 1. TapiJI Smart I18N assistance and resource translation tools INSO - Industrial Software Institut für Rechnergestützte Automation | Fakultät für Informatik | Technische Universität Wien
  • 2. Outline 1 The TapiJI project 2 I18N Tool Suite 3 Stand-alone translation apps 4 Whats next / Future work 5 Links / References / Documentation 2
  • 3. Outline 1 The TapiJI project 2 I18N Tool Suite 3 Stand-alone translation apps 4 Whats next / Future work 5 Links / References / Documentation 3
  • 4. The TapiJI project - Vision Make I18N more convenient for agile software development ▪ Consider I18N as integral part of initial development ▪ Reduce effort of corresponding tasks ▪ Reduce the risk of bugs in the initial translation ▪ Highlight missing Internationalizations and provide Quick Fixes Assist process of resource translation ▪ Provide application for resource translation ▪ Allow to edit Resource-Bundle without file format conversion ▪ Integrated into the dev tool landscape and process ▪ Assist cooperative translation work 4
  • 5. The TapiJI project - Timeline 06/2010 Starting work on TapiJI 10/2010 Sources are hosted on EclipseLabs 11/2010 Presenting I18N tools and RCP-based translation application at the DemoCamp in Vienna 02/2011 Article in the German Eclipse Magacine 06/2011 TapiJI provides an extensible architecture 11/2011 Presentation of new features at the DemoCamp in Vienna 08/2012 Finalized I18N refacotring support & RAP translator 10/2012 Contribution to the Eclipse Babel project 11/2012 Today‘s presentation 5
  • 6. Architecture – Tool Suite TapiJI Tool Suite ▪ Extends the Eclipse IDE with smart Internationalization helps ▪ Integrates with the existing Babel Messages Editor ▪ Assists developers during day-to-day coding work ▪ Provides an extensible architecture Java ext. RB ext. JSF ext. … TapiJI Tools Core plug-ins Editor Enhancements Eclipse Babel Messages Editor Eclipse IDE 6
  • 7. Architecture - Babel contribution Parts have been contributed to the Eclipse Babel project: ▪ TapiJI specific enhancements of Messages Editor ▪ The Tool Suite‘s core plug-ins ▪ Java and RB extension plug-ins Java ext. RB ext. JSF ext. … TapiJI Tools Core plug-ins Editor Enhancements Eclipse Babel Messages Editor Eclipse IDE 7
  • 8. Architecute – RCP/RAP Translator TapiJI Translator ▪ Standalone application for translation of Java Resource-Bundles ▪ Implementation for multiple target platforms  RCP based single-user translator  RAP based translator for cooperative resource translation RCP Translator RAP Translator TapiJI Generic Translator Editor Enhancements Eclipse Babel Messages Editor Eclipse RCP Eclipse RAP 8
  • 9. Outline 1 The TapiJI project 2 I18N Tool Suite 3 Stand-alone translation apps 4 Whats next / Future work 5 Links / References / Documentation 9
  • 10. I18N Tool Suite Avoid typical problems of Java Internationalization ▪ Export of culture-neutral configuration strings ▪ Hard-coded UI literals ▪ Incomplete export of constant string literals These problems are addressed by IDE-integrated assistance ▪ Present I18N tasks more transparent ▪ Highlight I18N errors ▪ Provide Quick Fix resolutions for reported problems ▪ Supports refactoring of resource keys 10
  • 11. I18N Tool Suite Refactoring support ▪ Refactoring of Resource Bundle keys  Proposal Context menu of Resource Bundle view  Context menu in Babel Messages editor  Short cut ▪ Consistently modifies resource references ▪ Provides preview for inspecting refactoring changes ▪ Cal10n Refactoring support 11
  • 12. Live Demo 12
  • 13. Openness Builder allows to register additional resource parsers C parse resources O Modified resource R Modified resource Modified resource E Modified resource B Extension plug-in U I L D Internationalization errors E R Quick-fix resolutions 13
  • 14. Outline 1 The TapiJI project 2 I18N Tool Suite 3 Stand-alone translation apps 4 Whats next / Future work 5 Links / References / Documentation 14
  • 15. TapiJI Translator Assists translation personell Stand-alone application for editing Resource-Bundles without the knowledge of a programming language Generic translator with two platform specific implementations ▪ RCP based single-user translator ▪ RAP based multi-user translator 15
  • 17. RAP Translator Additional features in contrast to RCP translator ▪ Web application  No local installation required  Always up-to-date  Multiple users ▪ Upload & Download of Resource-Bundles ▪ Simple user management ▪ Resource-Bundles are stored and maintained on the server ▪ Each user has an overview of his bundles ▪ File sharing  Simultaneous translation of Resource-Bundles 17
  • 18. Live Demo 18
  • 19. Outline 1 The TapiJI project 2 I18N Tool Suite 3 Stand-alone translation apps 4 Whats next / Future work 5 Links / References / Documentation 19
  • 20. Future Enhancements Internationalization workflow ▪ Development and Evaluation of a best practice I18N process ▪ Adapt tool suite for supporting the developed workflow Mylyn integration ▪ Allow the creation of Internationalization tasks ▪ SCM/Diff integration to communicate change sets Integration of mobile frameworks ▪ Allows the Internationalization of mobile Applications ▪ Planned for Android and iOS 20
  • 21. Future Enhancements Cal10n Support ▪ Enhance Tool Suite with support for Compiler assisted L10N ▪ Resource keys are mapped to enum entries RAP Translator enhancements ▪ Optional GIT integration for user and storage management ▪ Event-driven user notification 21
  • 23. Outline 1 The TapiJI project 2 I18N Tool Suite 3 Stand-alone translation apps 4 Whats next / Future work 5 Links / References / Documentation 23
  • 24. Links / References / Documentation Project page @EclipseLabs ▪ http://code.google.com/a/eclipselabs.org/p/tapiji/wiki/Overview ▪ Demo Video: http://www.youtube.com/watch?v=9gDQeeIR5eU ▪ User & development documentation: http://code.google.com/a/eclipselabs.org/p/tapiji/wiki/Overview Project page @Babel ▪ http://www.eclipse.org/projects/project.php?id=technology.babel ▪ Messages Editor: http://www.eclipse.org/babel/messages_editor/ 24