SlideShare ist ein Scribd-Unternehmen logo
1 von 25
Downloaden Sie, um offline zu lesen
THE DEVELOPMENT AND
FUTURE OF GLOTPRESS
WORDCAMP HAMBURG 2014 - MARKO HEIJNEN
What we discuss today
Who I am

What is GlotPress

History behind it

Tools we use

The future / Roadmap
Marko Heijnen
Founder of CodeKitchen

WordPress specialist for 1&1

Lead developer of GlotPress

Core contributor for WordPress

Helping out the minority
PART OF THE DUTCH, SERBIAN AND
I GUESS NOW THE GERMAN
COMMUNITY
What is GlotPress
GlotPress is a collaborative,
web-based software
translation tool.
USED ON WORDPRESS.ORG
WITH IT’S OWN HEADER AND FOOTER
USED ON WORDPRESS.COM
WITH THE DEFAULT THEME
ON MY OWN PROJECT
WITH A COMPLETE DIFFERENT THEME
Features
Different roles: Translators, Validators and Admins.

Translate strings.

Validate strings.

Manage strings by reject/approve them.

Having a glossary with common words.

Import/Export different formats.
History behind it
Started in April 2008 by Nikolay Bachiyski.

Uses BackPress as a framework.

And it’s OOP developed.

March 2013 I started managing GlotPress.

March this year Yoav Farhi has commit access.

This year we have our first GSoC project.
Commits during the year
2008: 32

2009: 341

2010: 223

2011: 58

2012: 79

2013: 91

2014: 106 and counting
OOP
Uses BackPress which has a lot of classes.

And we build on top of that our features like
routers, formats and things.

Those three objects always need to extend a
generic class.

This class has shared functionality or has abstract
methods the derived class needs.
OOP
Because of the generic classes we can make our
code better.

You can define in a thing which fields are required
to create a new item.

A thing is a project, user, translations etc.

GP_Glossary file has only 42 lines of code and has
all validations in place.
Functions
We still use them a lot like WordPress does for in
themes.

A lot of them are copied over from WordPress

This is a great thing cause if you are using
GlotPress yourself you can “easily” add a feature
to GlotPress because the hook system is in place
and so many other great features.
CLI
GlotPress has a lot of scripts that you can or must
use.

Like adding a new admin is a must due missing
user management. Will have an add user script
soon.

Or things like import/export originals or
translations.
Tools we use
We do have a certain amount of Unit tests

Travis to run our unit tests

https://scrutinizer-ci.com/g/GlotPress/GlotPress/
for Code quality scans

https://coveralls.io/ for code coverage history and
stats
THE FUTURE / ROADMAP
HOW SHOULD IT LOOK LIKE? AND HOW SHOULD IT BEHAVE?
Future problems
Currently we only have a limited amount of
projects on translate.wordpress.org

~10.000 plugins are translatable

The UI needs a different approach

Managing translations will become key
How to translate strings
Is the current approach still the best.

Do we need a different flow that could speed
things up.

Does it show you the information needed?

How to display the history of the translations and
comments.

Is comments a high priority since we got
glossaries?
Personal dashboard
What are the projects you have worked on?

And are the new translations for it?

Or do you even need to approve strings

It’s part of the GSoC this year :)
E-mail notifications
You can’t keep up what cores does. Stand alone if
there are more projects you contribute too.

Sending out automatically e-mail is a key for this.

Obviously you should not get to much

Also part of GSoC.
Better string management
Be able to keep original translations and have
them still approved or the string need to be
approved again.

Better history of translations.

Indication when locales don’t have validators.

Be able to delete suggestions.
Better search/filter
Currently there are a lot of options to filter.

We should rethink this and check what the
common cases are.

Like only searching on original or translation.

I would also say that it needs to be more obvious.
Do we need a new theme?
With all this ideas and more do we need to rethink
the whole theme?

Adding new features to the existing UI can be
tricky depending on the feature.

I tried to put everything in Bootstrap and see how
it looked.
QUESTIONS?
THIS WAS A BIT MY
BRAINSTORM ABOUT THE
FUTURE,

Weitere ähnliche Inhalte

Was ist angesagt?

DITA and Translation Best Praticices
DITA and Translation Best PraticicesDITA and Translation Best Praticices
DITA and Translation Best Praticices
Andrzej Zydroń MBCS
 
Web designp pt
Web designp ptWeb designp pt
Web designp pt
Bizzyb09
 

Was ist angesagt? (18)

Chapter 2 introduction to html5
Chapter 2 introduction to html5Chapter 2 introduction to html5
Chapter 2 introduction to html5
 
MJML presentation - PHP User group Sofia
 MJML presentation - PHP User group Sofia    MJML presentation - PHP User group Sofia
MJML presentation - PHP User group Sofia
 
Javascript
JavascriptJavascript
Javascript
 
Being Lean Agile
Being Lean AgileBeing Lean Agile
Being Lean Agile
 
Everyday Functional Programming in JavaScript
Everyday Functional Programming in JavaScriptEveryday Functional Programming in JavaScript
Everyday Functional Programming in JavaScript
 
Raju
RajuRaju
Raju
 
BASIC HTML PRESENTATION
BASIC HTML PRESENTATIONBASIC HTML PRESENTATION
BASIC HTML PRESENTATION
 
html5.ppt
html5.ppthtml5.ppt
html5.ppt
 
Xml and JavaScript
Xml and JavaScriptXml and JavaScript
Xml and JavaScript
 
DITA and Translation Best Praticices
DITA and Translation Best PraticicesDITA and Translation Best Praticices
DITA and Translation Best Praticices
 
Few minutes To better Code - Refactoring
Few minutes To better Code - RefactoringFew minutes To better Code - Refactoring
Few minutes To better Code - Refactoring
 
Html (hypertext markup language)
Html (hypertext markup language)Html (hypertext markup language)
Html (hypertext markup language)
 
Web designp pt
Web designp ptWeb designp pt
Web designp pt
 
Force Academy LA Trigger Framework
Force Academy LA Trigger FrameworkForce Academy LA Trigger Framework
Force Academy LA Trigger Framework
 
How to write better tests with Test Driven Development
How to write better tests with Test Driven DevelopmentHow to write better tests with Test Driven Development
How to write better tests with Test Driven Development
 
The Art of Giving and Receiving Code Reviews
The Art of Giving and Receiving Code ReviewsThe Art of Giving and Receiving Code Reviews
The Art of Giving and Receiving Code Reviews
 
Approval Tests in Action: A LEGO Exercise and an Experience Report
Approval Tests in Action: A LEGO Exercise and an Experience ReportApproval Tests in Action: A LEGO Exercise and an Experience Report
Approval Tests in Action: A LEGO Exercise and an Experience Report
 
Html 5 Features And Benefits
Html 5 Features And Benefits  Html 5 Features And Benefits
Html 5 Features And Benefits
 

Andere mochten auch

Andere mochten auch (20)

WordCamp Toronto 2015- API Simple Talk
WordCamp Toronto 2015- API Simple TalkWordCamp Toronto 2015- API Simple Talk
WordCamp Toronto 2015- API Simple Talk
 
How to A/B Test with WordPress: Conversions Aren’t Just for Landing Pages
How to A/B Test with WordPress: Conversions Aren’t Just for Landing PagesHow to A/B Test with WordPress: Conversions Aren’t Just for Landing Pages
How to A/B Test with WordPress: Conversions Aren’t Just for Landing Pages
 
A Noob's Journey to the Core
A Noob's Journey to the CoreA Noob's Journey to the Core
A Noob's Journey to the Core
 
Here Be Dragons - Debugging WordPress
Here Be Dragons - Debugging WordPressHere Be Dragons - Debugging WordPress
Here Be Dragons - Debugging WordPress
 
Ecomm 101
Ecomm 101Ecomm 101
Ecomm 101
 
Using Actions and Filters in WordPress to Make a Plugin Your Own
Using Actions and Filters in WordPress to Make a Plugin Your OwnUsing Actions and Filters in WordPress to Make a Plugin Your Own
Using Actions and Filters in WordPress to Make a Plugin Your Own
 
Building and Maintaining A Remote Workforce - A Startup Story
Building and Maintaining A Remote Workforce - A Startup StoryBuilding and Maintaining A Remote Workforce - A Startup Story
Building and Maintaining A Remote Workforce - A Startup Story
 
Systematic Unit Testing
Systematic Unit TestingSystematic Unit Testing
Systematic Unit Testing
 
Best Friend || Worst Enemy: WordPress Multisite
Best Friend || Worst Enemy: WordPress MultisiteBest Friend || Worst Enemy: WordPress Multisite
Best Friend || Worst Enemy: WordPress Multisite
 
Writing Secure Code for WordPress
Writing Secure Code for WordPressWriting Secure Code for WordPress
Writing Secure Code for WordPress
 
Speeding up your WordPress Site - WordCamp Toronto 2015
Speeding up your WordPress Site - WordCamp Toronto 2015Speeding up your WordPress Site - WordCamp Toronto 2015
Speeding up your WordPress Site - WordCamp Toronto 2015
 
Managed WordPress Demystified
Managed WordPress DemystifiedManaged WordPress Demystified
Managed WordPress Demystified
 
Information Architecture has everything to do with your theme!
Information Architecture has everything to do with your theme!Information Architecture has everything to do with your theme!
Information Architecture has everything to do with your theme!
 
Sweet Child O' Themes
Sweet Child O' ThemesSweet Child O' Themes
Sweet Child O' Themes
 
Comunidade. Abuse e use dela com moderação e inteligência.
Comunidade. Abuse e use dela com moderação e inteligência.Comunidade. Abuse e use dela com moderação e inteligência.
Comunidade. Abuse e use dela com moderação e inteligência.
 
Como enviar newsletters no WordPress
Como enviar newsletters no WordPressComo enviar newsletters no WordPress
Como enviar newsletters no WordPress
 
WordCamps and how you can make the most of it
WordCamps and how you can make the most of itWordCamps and how you can make the most of it
WordCamps and how you can make the most of it
 
WordCampBH 2015 - O mínimo essencial para o bom desempenho do seu projeto em ...
WordCampBH 2015 - O mínimo essencial para o bom desempenho do seu projeto em ...WordCampBH 2015 - O mínimo essencial para o bom desempenho do seu projeto em ...
WordCampBH 2015 - O mínimo essencial para o bom desempenho do seu projeto em ...
 
Fuja do ciclo vicioso do conteúdo sem valor
Fuja do ciclo vicioso do conteúdo sem valorFuja do ciclo vicioso do conteúdo sem valor
Fuja do ciclo vicioso do conteúdo sem valor
 
Clean code: programando com WordPress de forma profissional
Clean code: programando com WordPress de forma profissionalClean code: programando com WordPress de forma profissional
Clean code: programando com WordPress de forma profissional
 

Ähnlich wie The development and future of GlotPress

EPUB Boot Camp: Best Practices
EPUB Boot Camp: Best PracticesEPUB Boot Camp: Best Practices
EPUB Boot Camp: Best Practices
BookNet Canada
 
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
hepeiwei
 
HTML 5 – Let’s Make Progress [eduWeb 2011]
HTML 5 – Let’s Make Progress [eduWeb 2011]HTML 5 – Let’s Make Progress [eduWeb 2011]
HTML 5 – Let’s Make Progress [eduWeb 2011]
Shahab Lashkari
 
LibGuides Presentation at iCON 2011
LibGuides Presentation at iCON 2011LibGuides Presentation at iCON 2011
LibGuides Presentation at iCON 2011
Linscheid Library
 

Ähnlich wie The development and future of GlotPress (20)

GlotPress aka translate.wordpress.org
GlotPress aka translate.wordpress.orgGlotPress aka translate.wordpress.org
GlotPress aka translate.wordpress.org
 
Markdown - friend or foe?
Markdown - friend or foe?Markdown - friend or foe?
Markdown - friend or foe?
 
EPUB Boot Camp: Best Practices
EPUB Boot Camp: Best PracticesEPUB Boot Camp: Best Practices
EPUB Boot Camp: Best Practices
 
Introduction to Go
Introduction to GoIntroduction to Go
Introduction to Go
 
[drupalday2017] - Behat per Drupal: test automatici e molto di più
[drupalday2017] - Behat per Drupal: test automatici e molto di più[drupalday2017] - Behat per Drupal: test automatici e molto di più
[drupalday2017] - Behat per Drupal: test automatici e molto di più
 
Berry 10 years_of_dita
Berry 10 years_of_ditaBerry 10 years_of_dita
Berry 10 years_of_dita
 
Google's Go Programming Language - Introduction
Google's Go Programming Language - Introduction Google's Go Programming Language - Introduction
Google's Go Programming Language - Introduction
 
A First Look at Google's Go Programming Language
A First Look at Google's Go Programming LanguageA First Look at Google's Go Programming Language
A First Look at Google's Go Programming Language
 
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
 
HTML 5 – Let’s Make Progress [eduWeb 2011]
HTML 5 – Let’s Make Progress [eduWeb 2011]HTML 5 – Let’s Make Progress [eduWeb 2011]
HTML 5 – Let’s Make Progress [eduWeb 2011]
 
Full-Stack Agile - What is DevOps?
Full-Stack Agile - What is DevOps?Full-Stack Agile - What is DevOps?
Full-Stack Agile - What is DevOps?
 
Creating a compiler for your own language
Creating a compiler for your own languageCreating a compiler for your own language
Creating a compiler for your own language
 
Advantages of golang development services & 10 most used go frameworks
Advantages of golang development services & 10 most used go frameworksAdvantages of golang development services & 10 most used go frameworks
Advantages of golang development services & 10 most used go frameworks
 
10 localization mistakes pm slide deck
10 localization mistakes pm slide deck10 localization mistakes pm slide deck
10 localization mistakes pm slide deck
 
Behavior driven development (bdd)
Behavior driven development (bdd)Behavior driven development (bdd)
Behavior driven development (bdd)
 
How and When to Switch to Structured Content - Workshop
How and When to Switch to Structured Content - WorkshopHow and When to Switch to Structured Content - Workshop
How and When to Switch to Structured Content - Workshop
 
Joomla tempates talk
Joomla tempates talkJoomla tempates talk
Joomla tempates talk
 
Single sourcing to the max
Single sourcing to the maxSingle sourcing to the max
Single sourcing to the max
 
LibGuides Presentation at iCON 2011
LibGuides Presentation at iCON 2011LibGuides Presentation at iCON 2011
LibGuides Presentation at iCON 2011
 
Engaging a Developer Audience: Documentation and More
Engaging a Developer Audience: Documentation and MoreEngaging a Developer Audience: Documentation and More
Engaging a Developer Audience: Documentation and More
 

Mehr von Marko Heijnen

Bootstrapping your plugin
Bootstrapping your pluginBootstrapping your plugin
Bootstrapping your plugin
Marko Heijnen
 

Mehr von Marko Heijnen (20)

Custom coded projects
Custom coded projectsCustom coded projects
Custom coded projects
 
Security, more important than ever!
Security, more important than ever!Security, more important than ever!
Security, more important than ever!
 
My Contributor Story
My Contributor StoryMy Contributor Story
My Contributor Story
 
WooCommerce & Apple TV
WooCommerce & Apple TVWooCommerce & Apple TV
WooCommerce & Apple TV
 
The moment my site got hacked - WordCamp Sofia
The moment my site got hacked - WordCamp SofiaThe moment my site got hacked - WordCamp Sofia
The moment my site got hacked - WordCamp Sofia
 
Mijn site beveiliging
Mijn site beveiligingMijn site beveiliging
Mijn site beveiliging
 
The moment my site got hacked
The moment my site got hackedThe moment my site got hacked
The moment my site got hacked
 
My complicated WordPress site
My complicated WordPress siteMy complicated WordPress site
My complicated WordPress site
 
Node.js to the rescue
Node.js to the rescueNode.js to the rescue
Node.js to the rescue
 
Protecting your site by detection
Protecting your site by detectionProtecting your site by detection
Protecting your site by detection
 
Writing clean and maintainable code
Writing clean and maintainable codeWriting clean and maintainable code
Writing clean and maintainable code
 
Extending WordPress as a pro
Extending WordPress as a proExtending WordPress as a pro
Extending WordPress as a pro
 
Let's create a multilingual site in WordPress
Let's create a multilingual site in WordPressLet's create a multilingual site in WordPress
Let's create a multilingual site in WordPress
 
Bootstrapping your plugin
Bootstrapping your pluginBootstrapping your plugin
Bootstrapping your plugin
 
Why Javascript matters
Why Javascript mattersWhy Javascript matters
Why Javascript matters
 
The code history of WordPress
The code history of WordPressThe code history of WordPress
The code history of WordPress
 
Building plugins like a pro
Building plugins like a proBuilding plugins like a pro
Building plugins like a pro
 
Perfect your images using WordPress - WordCamp Europe 2013
Perfect your images using WordPress - WordCamp Europe 2013Perfect your images using WordPress - WordCamp Europe 2013
Perfect your images using WordPress - WordCamp Europe 2013
 
Dealing with media
Dealing with mediaDealing with media
Dealing with media
 
The awesome things you can do with images inside WordPress
The awesome things you can do with images inside WordPressThe awesome things you can do with images inside WordPress
The awesome things you can do with images inside WordPress
 

Kürzlich hochgeladen

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
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
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 

The development and future of GlotPress

  • 1. THE DEVELOPMENT AND FUTURE OF GLOTPRESS WORDCAMP HAMBURG 2014 - MARKO HEIJNEN
  • 2. What we discuss today Who I am What is GlotPress History behind it Tools we use The future / Roadmap
  • 3. Marko Heijnen Founder of CodeKitchen WordPress specialist for 1&1 Lead developer of GlotPress Core contributor for WordPress Helping out the minority
  • 4. PART OF THE DUTCH, SERBIAN AND I GUESS NOW THE GERMAN COMMUNITY
  • 5. What is GlotPress GlotPress is a collaborative, web-based software translation tool.
  • 6. USED ON WORDPRESS.ORG WITH IT’S OWN HEADER AND FOOTER
  • 7. USED ON WORDPRESS.COM WITH THE DEFAULT THEME
  • 8. ON MY OWN PROJECT WITH A COMPLETE DIFFERENT THEME
  • 9. Features Different roles: Translators, Validators and Admins. Translate strings. Validate strings. Manage strings by reject/approve them. Having a glossary with common words. Import/Export different formats.
  • 10. History behind it Started in April 2008 by Nikolay Bachiyski. Uses BackPress as a framework. And it’s OOP developed. March 2013 I started managing GlotPress. March this year Yoav Farhi has commit access. This year we have our first GSoC project.
  • 11. Commits during the year 2008: 32 2009: 341 2010: 223 2011: 58 2012: 79 2013: 91 2014: 106 and counting
  • 12. OOP Uses BackPress which has a lot of classes. And we build on top of that our features like routers, formats and things. Those three objects always need to extend a generic class. This class has shared functionality or has abstract methods the derived class needs.
  • 13. OOP Because of the generic classes we can make our code better. You can define in a thing which fields are required to create a new item. A thing is a project, user, translations etc. GP_Glossary file has only 42 lines of code and has all validations in place.
  • 14. Functions We still use them a lot like WordPress does for in themes. A lot of them are copied over from WordPress This is a great thing cause if you are using GlotPress yourself you can “easily” add a feature to GlotPress because the hook system is in place and so many other great features.
  • 15. CLI GlotPress has a lot of scripts that you can or must use. Like adding a new admin is a must due missing user management. Will have an add user script soon. Or things like import/export originals or translations.
  • 16. Tools we use We do have a certain amount of Unit tests Travis to run our unit tests https://scrutinizer-ci.com/g/GlotPress/GlotPress/ for Code quality scans https://coveralls.io/ for code coverage history and stats
  • 17. THE FUTURE / ROADMAP HOW SHOULD IT LOOK LIKE? AND HOW SHOULD IT BEHAVE?
  • 18. Future problems Currently we only have a limited amount of projects on translate.wordpress.org ~10.000 plugins are translatable The UI needs a different approach Managing translations will become key
  • 19. How to translate strings Is the current approach still the best. Do we need a different flow that could speed things up. Does it show you the information needed? How to display the history of the translations and comments. Is comments a high priority since we got glossaries?
  • 20. Personal dashboard What are the projects you have worked on? And are the new translations for it? Or do you even need to approve strings It’s part of the GSoC this year :)
  • 21. E-mail notifications You can’t keep up what cores does. Stand alone if there are more projects you contribute too. Sending out automatically e-mail is a key for this. Obviously you should not get to much Also part of GSoC.
  • 22. Better string management Be able to keep original translations and have them still approved or the string need to be approved again. Better history of translations. Indication when locales don’t have validators. Be able to delete suggestions.
  • 23. Better search/filter Currently there are a lot of options to filter. We should rethink this and check what the common cases are. Like only searching on original or translation. I would also say that it needs to be more obvious.
  • 24. Do we need a new theme? With all this ideas and more do we need to rethink the whole theme? Adding new features to the existing UI can be tricky depending on the feature. I tried to put everything in Bootstrap and see how it looked.
  • 25. QUESTIONS? THIS WAS A BIT MY BRAINSTORM ABOUT THE FUTURE,