Showing posts with label API. Show all posts
Showing posts with label API. Show all posts

Jan 22, 2014

memoQ cloud: a team server "on tap"

This afternoon, Kilgray CEO István Lengyel held one of the best webinars I've seen him do yet to describe the convenient new hosted server facilities known as memoQ cloud, which I reviewed recently.

In the webinar, he explained the company's evolution of thought for online computing and how concerns about security were finally resolved to create a more sustainable offering than the more support-intensive "honeymoon" server solution.


He made it clear how existing desktop licenses for the Project Manager and Translator Pro editions can be used in combination with concurrent access licenses (CALs) for the server, as well as how cloud services can be suspended for periods in which they are not needed, saving considerable costs for those with only occasional needs to work in a coordinated online team.


Backing up the server configuration can be done quickly and easily from a Language Terminal account, so if cloud service is dormant for more than three months (after which data are deleted from the server), everything can be restored quickly when needed.

The webinar also included a demonstration of the integrated translation in web browsers, memoQ WebTrans. This is one way of providing access to the server for others who do not have installed copies of memoQ or working on your server when using other computers. Of course this interface also works in web browsers under other operating systems, such as MacOS or Linux. (Click on the graphic below to get a full-sized view of the web translation interface.)


Access to Kilgray's premium terminology server qTerm and memoQ server APIs is also available for an additional subscription fee. Subscribed services can be changed at any time as your needs evolve.

In the webinar, István showed how in about the same time it takes to enjoy a cup of coffee, one can get a free Kilgray Language Terminal account and register with a credit card for a month's trial of the memoQ cloud server (with any services available) for just €1/$1. If you are trying out services which you will not want beyond the trial period (like the API, qTerm or extra licenses), these can be set to cancel at the end of the trial period to avoid unwanted charges.

The embedded video below is a 20-minute tour of how simple it is to set up and manage projects in memoQ cloud. Use the icon at the lower right of the video frame to watch this on your full screen.


This is a good overview of the process, although the licenses aren't explained very well, and the project type recommendation is bad advice in many cases, as I pointed out in my post on server projects on segmentation and projects with desktop documents. Everything else in the video is good, but it's often very important to allow segmentation to be changed or corrected, particularly if the segmentation rules used in the project do not cover abbreviations which may split sentences in very unfortunate ways. If you need to have instantaneous access to work from other team members by using online documents, the the segmentation will need to be checked very carefully and corrected before the project begins to avoid difficulties.

Those testing the memoQ cloud server or using desktop editions of memoQ may also want to check out various free configuration resources on Language Terminal. These include special QA profiles, AutoCorrect files, import filters that are not part of the shipping product and auto-translation rules for easier translation of number and date formats, etc. Language Terminal offers other facilities which may be of interest even to those who do not use memoQ, such as the free InDesign server, which can create PDF previews of InDesign documents (very useful for reviews before delivery) or convert InDesign files of any type to XLIFF for translation in many different environments.

UPDATE:
The memoQ cloud webinar is now available to watch on Kilgray's page for recorded webinars; it can be accessed directly here or viewed in the embedded video below.

Oct 2, 2012

Update on the OTM integration with SDL Trados Studio

Since I learned earlier this year about plans to integrate LSP.net's Online Translation Manager (OTM) - the workflow solution I use for secure data transmission in my projects - and SDL Trados Studio I have kept track of the progress of this effort with some interest and satisfaction. Although it is unlikely to be of immediate benefit to me, an occasional user of SDL Trados desktop applications, I have followed the combinations of business process tools with their translation implementation counterparts for many years, and this seems to be one of the few efforts that really deserves the label "integration". Too often that word is used to describe reading a text file with an analysis of files and applying a scoping grid to ensure that one's profits remain suitably modest or non-existent.

When I contacted OTM's architect this week to get the latest news before heading to Warsaw for the translation management conference, he described the development and testing over the past month and the probable completion of the middleware component next week. By the end of October, the OTM workflow system should have a new range of features to complement the Trados workflows for analyzing and testing the viability of files for translation processes, applying customer-specific weighting tables to matches and more.

The release of the new version of OTM and the SDL Trados integration features is expected in November after testing with a pilot group is completed. Given the good record of LSP.net for releasing stable versions of its software over the past three years, I expect a well-tuned, useful advance of functionality. The integration will be available for testing and use free of charge for some months in its rollout phase to ensure that potential users have every opportunity to master its application to their business processes. Several licensing models are being considered afterward to allow users flexibility.

Contact LSP.net for further details on this product. When the test phase is completed, I hope to interview some of the current group of companies working with this solution and find out the best and the worst of its implementation.

Sep 6, 2012

Fun with the memoQ 6 Client API!

The release of Build 55 of memoQ version 6 included a client application programming interface (API) for the first time. It is currently available only in the project manager edition of memoQ, which is really a shame, but I look at this as a good start nonetheless. I have wanted this API for years, and a mere 6 months before it was released Kilgray's chief developer swore that it would never happen, because the work involved was monumental and the effort had no perceived payoff. Well, events unanticipated on that cold February night in Budapest changed that perception, and this is an excellent start for a great tool that was never supposed to happen. The current scope is pretty much limited to project preparation, analysis and TM manipulation, but even there much can be found to simplify the lives of some translators and corporate users with automation.

A simple snippet of script code for exporting a TM to TMX has been circulating for a while now as a VBA macro to run from Microsoft Word, for example. Personally, I object to running something in MS Word that has nothing to do with that program, so I recoded it as an executable script and added a few extra tweaks:
tmFolder = InputBox("Which TM should be exported?")
if tmFolder <> "" then

' The path where all my memoQ TMs are stored
standardTMpath = "C:\ProgramData\MemoQ\Translation Memories\"

'build absolute paths
outputTMXfile =  ".\" & tmFolder & "_" & date() & ".tmx"
tmFolder = standardTMpath & tmFolder

Set fact = CreateObject("MemoQ.ClientService.ServiceFactoryScripting")
Set tmService = fact.CreateTMService
Set createTMRes = tmService.ExportToTMX(tmFolder, outputTMXfile)
if createTMRes.Success = False then
   MsgBox createTMRes.ShortErrorMessage
else
   MsgBox "The TM was exported."
end if

end if
Just copy that script into a text file, rename the extension to *.vbs and you have a double-clickable script to export a TM without opening memoQ. The TMX export is placed in the same folder where the script is executed and tagged with the date of the export.

Encouraged by this little test, I went on to tackle one of my pet peeves: the lack of muliti-file import capabilities in memoQ TMs. Trados Studio has no problem importing a folder full of TMX files to a TM in one go, but with memoQ one must import each TMX file - painfully - one at a time. The pain is felt quite severely if, for example, you are a former OmegaT user with a legacy of 300+ TMX files from your old projects.

So I wrote another little script which allows me to drag and drop any number of TMX files onto its icon and have them all import to the specified TM. This is a rather crude example for just one set of had-coded sublanguages (DE-DE and EN-US). The API currently does not allow sublanguages to be ignored for the import. Adapt this to use your relevant sublanguages if you like:
'
' memoQ TMX import macro
' drag & drop TMX files onto the script icon
'
tmFolder = InputBox("To which TM should the TMX file(s) be imported?")
If tmFolder <> "" Then

' The path where all my memoQ TMs are stored
standardTMpath = "E:\Working databases\MemoQ\TMs\"

'build absolute path
tmFolder = standardTMpath & tmFolder

' Create the ServiceFactoryScripting object and TM service
Set objSFS = CreateObject("MemoQ.ClientService.ServiceFactoryScripting")
Set svcTM = objSFS.CreateTMService

' Set import options parameters
Set objImportOptions = CreateObject("MemoQ.ClientService.TMImportOptionsScripting")
objImportOptions.TMXSourceLanguageCode = "ger-de" 
objImportOptions.TMXTargetLanguageCode = "eng-us"  
objImportOptions.TradosImportOptimization = False
objImportOptions.DefaultValues = Null
objImportOptions.DefaultsOverrideInput = False

  Set objArgs = WScript.Arguments
  For I = 0 To objArgs.Count - 1
    tmxfile = objArgs(I)
    logFileName = tmFolder & "_" & date() & "_" & "importlog." & I & ".txt"

    Set returnvalue = svcTM.ImportFromTMX(tmFolder, tmxfile, objImportOptions, logFileName)
    If returnvalue.Success = False Then
        MsgBox returnvalue.ShortErrorMessage
    Else
        MsgBox "No errors in the import of " & tmxfile & ". See the log file at: " & logFileName
    End If
  Next

end if

Since I once wasted a full day importing a big load of TMX files to memoQ (before I got the bright idea to use The Other Tool as an intermediate step), I was so delighted to get this script working that I just kept making new test TMs and running it long past the point where there was anything left to prove. It's just a thrill to know that consolidating my TMs is now much, much simpler!

These are just a few of the myriad simplifications that are possible for one's processes with the new API. I expect most of its applications will be in "real" programs with real programmers using "real" languages and not wimpy, half-baked scripts like I've thrown together and shown here. This API has potential benefits to a great number of ordinary memoQ users, I think - especially if little productivity tips like these here are shared. So I do hope that, at some point, access to the client API is expanded to include the memoQ Translator Pro edition!

Sep 4, 2012

memoQ 6.0.55: The Great Leap Forward with a Client API

Yesterday in the Yahoogroups forum, Kilgray's COO quietly announced the release of a new build of memoQ, which contains some very significant additions and improvements.
Important: memoQ 6.0.55 released 
Mon Sep 3, 2012 12:12 pm (PDT). Posted by: "Istvan Lengyel" 

Hi All, 

Sorry for the long silence since the previous memoQ build - we had something in the making. memoQ 6.0.55 was uploaded to our website today, you can download and install it. This build now supports 64-bit installation, however, we have an issue with AutoUpdate which we may or may not be able to solve (it's third-party software), so for the time being you have to install 6.0.55 yourself from the website, and it may remain so in the future if we can't fix this. Therefore AutoUpdate is not available for an indefinite amount of time. Besides numerous bugfixes, there is new functionality added: 
  • - the long-awaited SDLXLIFF filter
  • - a client-side API - only for users of the project manager edition (hello Paul :)), 
  • - on the server side, the possibility to use FirstAccept from content-connected projects. 
We did not release this as a new version as the number of features does not qualify for a full new upgrade. I hope it will meet your expectations. 

István 
There were actually many other improvements; a great number of fixes to bugs in the concordance and LiveDocs, which were driving me nuts. Also, the performance for importing very large XLIFF files (think EU DGT scale!) was improved by an order of magnitude, though to see the full benefit one needs a 64-bit operating system and lots of RAM.

The SDLXLIFF filter should be helpful to the many memoQ users who translate files created in SDL Trados Studio. It has been possible to read this format since it first appeared using thestandard XLIFF filter, but this new filter offers better results.

I am particularly excited by possibilities offered by the new client application programming interface (API). This will enable certain functions of memoQ to be run from other applications, even when memoQ is not active. Available features include analysis and TM functions; I've seen three simple lines of macro code in Microsoft word that will export a memoQ TM to TMX, for example. I think this will lead to many interesting extensions of memoQ functionality and automation. Note that the API is only available in the Project Manager edition, but the additional cost of that version is less than I paid for my Déjà Vu X Workgroup upgrade years ago, and for those who work with multiple target languages or who need additional features for outsourcing and collaboration, an upgrade to memoQ Project Manager makes sense anyway.

And who knows? With rumors of SaaS resources for memoQ on the horizon, I can imagine more reasons to upgrade from memoQ Translator Pro.

Addendum: The documentation for the Client API is found at C:\ProgramData\MemoQ\SDK

Polish colleague Marek Pawelec also commented in the Yahoogroups list:
I'm happy to report that in version 6.0.55 you can import .sdlxliff files with mapping segment states without any hassle (see SDLXLIFF tab in filter settings) and if appropriate option is selected (States tab, Map memoQ states to XLIFF states on export, select SDLXLIFF in Source drop-down), memoQ states are properly mapped back to Studio states.

Oct 11, 2010

Kirtee's TAUS review and the SDL APIs

Kirtee Vashee recently posted an interesting summary of the TAUS annual conference which he attended. I myself have a hard time getting behind the TAUS goal of sharing massive amounts of data; it's sort of like asking your neighbors to swap garbage cans and contents. As many are discovering (sometimes painfully late), data quality actually matters. The amount of garbage I see in supplied TMs give me about the same enthusiasm for sharing on a large scale that a swim in the Danube would inspire right now. Predictably, MT was also a big focus at the conference this year. Those who believe that MT will soon displace the professional translator might enjoy the recent post on Machine Translation and the Philosopher's Stone.

Some of Kirtee's comments referred to the "walled garden" of SDL technology and the lack of openness and high cost of its API. I was a bit puzzled by this, as I had heard other things for a while from different sources, and my comment (in which discerning readers will note that my "n" key still hasn't been fixed)
was met with a invitation to SDL to clarify the issue. I think this clarification is forthcoming. As I have been given to understand
All that is needed is a license and then you have access to the API’s and the fully documented, and regularly updated, online SDK.  Just apply to the developer program, free of charge, and you’ll get the details.  This applies to desktop and server. 
Being out of the development game for about 8 years now, I can't comment on the quality or versatility of anyone's APIs except in the most general way. Nowadays I feel a sense of victory if I waste a day writing a WSH script for a data transformation that should reasonably have taken me an hour. But I think it is still fair to say that all tool vendors have a long way to go for interoperability and that even the best APIs need to be expanded. I won't be satisfied until I see Open Source clients capable of connecting to and working with the Ontram, SDL, Kilgray, Atril and other servers. The alternative is that those of us working with those servers will have to deal with the nonsense of keeping track of the functions and changes in all these environments. This is certainly not in the spirit of Saint Ludd, the patron of today's frustrated technovictim translators.