Computer: Translation: Integration
Translate software online   (+2)  [vote for, against]
Instead of QT linguist, IUpdate and IRelease

A website that allows any project in any programming language, to do i18n (internationalization) translation of the user interface and experience to various (human) languages, including the graphics and locations of objects for BIDI code.

The output is source code that the project managers and programmers can use to immediately have a translation out of the box.

Since it will be open source and free, all the programs in any environment will be happy to use it.

Since it will be working with many programs, many of the words can be automatically translated with an initial translation. [thanks scad]

A dynamic "screenshot" of the messages, and the software itself with translated parts inserted in it will be available to the manager as well, and code to run the program and have it tested for language readability and intuitiveness.
-- pashute, Nov 11 2014

What started me off on this... https://trac.videol...wiki/HowToTranslate
[pashute, Nov 11 2014]

// words can [be] automatically translated //

I'm not 100% sure what the flow you intend to use is. My first impression was that the translations would be made real time by the application querying for the desired translation, but on a second reading I don't think that's what you meant.

Is it a system of tools for translation that requires the tools to be run online? The advantage would be that the translations made by users end up being stored online, forming a database so that future software translation with similar text can be translated somewhat automatically.

Also, if the tools are used to generate several "official" translations included with the software package, a user in a non-supported language could request an auto-translation from the online system. The auto-translated version probably wouldn't be "good", but might be marginally usable, and users could tweak the automatic translation, fixing grammar, adjusting graphics positions, etc. the modified auto-translations could be stored online for the benefit of other users. There would of course need to be some kind of voting system and a way to suggest changes to an existing translations (branch translation and modify, then send a message). The software author could branch a good user- submitted translation (branching will automatically give credit to the contributors), set it as the default translation for a particular language, and include it in future releases. The author would have the option to flag (but not remove) translations that were deemed to not be serious translations. That would allow people to have their fun, but avoid causing trouble for people who actually want to find a usable translation to get work done. Maybe the rating system needs a five star rating for quality/usefulness and a separate 5 star rating for humor.
-- scad mientist, Nov 11 2014


I can imagine automated translation of source code between different languages. However, I'm not convinced that the result would be very easy to understand, update or maintain.
-- MaxwellBuchanan, Nov 11 2014


Aha. So if I had a program I'd written in C++, and wanted it in Python or Silkworm or Ptarmigan or whatever, would I get back something I could understand?
-- MaxwellBuchanan, Nov 11 2014


It's easy enough to do a dynamic translation including character sets, and pretty much impossible to get it so that they'll all look right, on the page.

//program written// nah, human languages: auto-translating programs from one computer language to another never work with any semblance of sanity.
-- FlyingToaster, Nov 11 2014


In fact I have to the best of my knowledge a deep understanding of internationalization in software. I lead internationalization of the first VOD Phone in the world, at IBM, and then participated in translation of several open source packages. I also was part of the giant effort of translation of Google Translate, and of Facebook.

And no, I was not proposing programming language conversion such as conversion from ADA to COBOL, or from java to C# (just change the capital letters to lowercase and vice versa).

There are various ways to achieve internationalization. Most software is "closed" in DLLs etc. so that the user cannot easily change the foundations such as the menus, the texts and the warning messages. The "strings" are usually kept in a "hardcoded" table or in a database and loaded dynamically into the program. Translators are given a table with the words to translate, and the graphics.

Things start getting really complicated when dealing with BIDI (bi-directional) languages written from right-to-left, with English or other left-to-right languages inserted in between. Some BIDI languages are Japanese, Hebrew and Arabic.

For example, in an online two page book, the cover of a RTL book is on the BACK of the book with LTR. But the cover page is printed in one peace (for the cover, the back and the side). So all graphics have to be re- aligned. The size of the text is also a consideration. The font and the shape are many times part of the graphic...

And the worst part is that literal translation is not always what is desired. When the unfortunate PM of Argentine visited Brasil in an historical event, he translated from his native Castillian to Portuguese and said: "We've had our ups and downs". Only to hear the hundreds of thousands of Brazilians burst out laughing.
-- pashute, Nov 17 2014


so umm "wouldn't it be nice if..."
-- FlyingToaster, Nov 17 2014



random, halfbakery