Translog-II: a Program for Recording User Activity Data
for Empirical Reading and Writing Research
Michael arl Copenhagen Business School, Dalgas Have 15, 2000 Frederiksberg, Denmark Email! mc"isv#cbs"dk A!stract $his paper presen%s a novel implemen%a%ion o& $ranslog''" $ranslog'' is a (indo)sorien%ed program %o record and s%ud* reading and )ri%ing processes on a compu%er" 'n our research, i% is an ins%rumen% %o ac+uire ob,ec%ive, digi%al da%a o& human %ransla%ion processes" -s %heir predecessors, $ranslog 2000 and $ranslog 200., also $ranslog'' consis%s o& %)o main componen%s! Translog-II Supervisor and Translog-II User, )hich are used %o crea%e a pro,ec% &ile, %o run a %e/% produc%ion e/perimen%s 0a user reads, )ri%es or %ransla%es a %e/%1 and %o repla* %he session" $ranslog produces a log &iles )hich con%ains all user ac%ivi%* da%a o& %he reading, )ri%ing, or %ransla%ion session, and )hich can be evalua%ed b* e/%ernal %ools" (hile %here is a large bod* o& %ransla%ion process research based on $ranslog, %his paper gives an overvie) o& %he $ranslog'' &unc%ions and i%s da%a visuali2a%ion op%ions" "ey#ords: $ransla%ion 3rocess 4esearch, 5e*board logging, E*e%racking $%Introd&ction Human %ransla%ion process research anal*ses %he %ransla%ion behaviour o& %ransla%ors such as proper%ies o& reading and %e/% produc%ion rh*%hms, men%al memor* and search s%ra%egies, %*pes o& %e/%ual uni%s %ha% %ransla%ors &ocus on, e%c" '% inves%iga%es %he %emporal and con%e/%ual s%ruc%ure o& %hose ac%ivi%ies and describes in%er and in%ra personal varia%ion in %erms o& %ransla%ion compe%ence and %ransla%ion per&ormance" 'n order %o ac+uire ob,ec%ive da%a abou% human %ransla%ion processes, %he program $ranslog has been designed" $ranslog can be used %o s%ud* %ransla%ion processes, hence %he name $ranslog, bu% i% can be e+uall* used &or o%her kinds o& compu%erbased reading or )ri%ing" Since i%6s &irs% concep%ion in 1775, $ranslog has gone %hrough several reimplemen%a%ions" 4igh% &rom i%s beginnings, $ranslog had %)o main componen%s, originall* called Writelog and Translog, 0Schou e% al 20071 %he &ormer componen% )as designed &or recording )ri%ing processes in %ime, )hile %he la%%er componen% served &or pla*back" $hese componen%s are no) re&erred %o as %he Translog-User and %he Translog-Supervisor )hich are %)o in%erdependen% programs" - ma,or e/%ension )as in%roduced in %he con%e/% o& %he E8 pro,ec% E*e%o'$ in 200. )hen a ne) version Translog-2006 could connec% %o e*e%racker %hrough %he 9(: module 0Sparkov, 200;1 so as %o record bo%h, ke*board and ga2e behaviour in %ime" $ranslog200. )as a comple%e reimplemen%a%ion in C<, suppor%ing 8nicode and =:>" Ho)ever, %he communica%ion )i%h %he e*e %racker %hrough 9(: 1 %urned ou% %o be %oo in&le/ible and so a &ur%her developmen% o& $ranslog'' no) communica%es direc%l* )i%h %he e*e%racker" $his paper describes %he purpose and usage o& %he $ranslog'' so&%)are" Similar programs such as Scrip%>og 0h%%p!??)))"scrip%log"ne%?demo"asp1, and 'npu>og 1 )hich )ere Borland C@@ implemen%a%ions communica%ing )i%h $ranslog %hrough CA: B 0h%%p!??)))"inpu%log"ne%?do)nload"h%ml1 are mainl* in%ended &or logging and anal*2ing )ri%ing processes, )hile $ranslog is speciall* designed &or %he ac+uisi%ion o& da%a &or %ransla%ion process research, and is )idel* used in %he %ransla%ion process research communi%*" Schou e% al 020071 coun% more %han ;0 publica%ions making use o& $ranslog, &or %ransla%ion process research o& linguis%ic phenomena, 0e"g" %he %ransla%ion o& me%aphors, cogna%es, idioms, e%c"1 as )ell as %ransla%or behaviour and cogni%ive processes 0e"g" %ransla%or6s a)areness, memor* cons%rain%s, 0sel&1revision e%c"1, %ransla%ion e/per%ise, %ransla%ion under %ime pressure, and machine %ransla%ion pos%edi%ing" $ranslog is also used &or %ransla%or %raining, %eaching and learning purposes" $ranslog'' records user ac%ivi%* da%a 08-D1, %ha% is, all %he ke*s%rokes and ga2e movemen%s 0i& an e*e%racker is connec%ed1" '% classi&ies %he ke*s%roke da%a as 11 inser%ion, 21 dele%ion 0dele%e and backspace1, C1 naviga%ion 0cursor movemen%s1, D1 cop*?cu%andpas%e, 51 re%urn ke* or .1 mouse opera%ions" Since %he ke*logger runs in %he background, %he recording does no% in%er&ere )i%h %he )ri%ing or %ransla%ion process" $ranslog'' logs %he e/ac% %ime a% )hich each ke*s%roke opera%ion is made" '& connec%ed %o an e*e%racker 2 , $ranslog'' also records E1 ga2esample poin%s, ;1 compu%es &i/a%ions 0i"e" clus%ers o& ga2esamples1 and 71 mappings o& &i/a%ions %o %he closes% charac%er on %he screen" $his la%%er opera%ion per&orms a mapping &rom %he spacial loca%ion o& %he ga2e on %he screen %o a charac%er o&&se% in %he %e/%" $ha% is, an =?F coordina%e o& a &i/a%ion cen%er is mapped on%o a charac%er posi%ion o& %he %e/% %ha% is being looked a%" Since %here is some noise in %he recordings o& ga2esample poin%s, %he represen%a%ion in %he log &ile is such %ha% &i/a%ions and %o a cer%ain e/%en% also mappings can be recompu%ed o&&line" $he ga2e and %he ke*s%roke in&orma%ion can %hen be 2 Curren%l* connec%ion %o $obii e*e %racker is suppor%ed, bu% o%her in%er&aces are planned" 4108 correla%ed, as %he* bo%h re&er %o %e/%ual posi%ions" $he in&orma%ion is s%ored in an =:> &orma% and can be repla*ed or anal*2ed )i%h $ranslog'' or anal*2ed in e/%ernal %ool" 'n Carl and :Gller 020111 and Carl and Hakobsen 020071 is given more in&orma%ion on %he =:> represen%a%ion" Here )e describe %he &unc%ions o& %he da%a ac+uisi%ion so&%)are Translog-II. '% (&nctions of Translog-II $ranslog'' has %hree main &unc%ions! 1" crea%e a pro,ec% &ile! de%ermine %he si2e and orien%a%ion o& a source and a %arge% )indo) on %he screen &or reading and )ri%ing permission respec%ivel*" produce %e/%s &or %he source and?or %he %arge% )indo), %heir la*ou%, %e/% &on%, si2e, color, line spacing e%c" de%ermine )hich da%a are %o be logged, ke*board and e*e%racking 2" run and record a $ranslog'' session! load a pro,ec% &ile calibra%e e*e%racker 0i& connec%ed1 record and log 8-D C" repla* and anal*2e a recorded log &ile! s%a%is%ics! &igures abou% %e/% produc%ion? elimina%ion? naviga%ion even%s user vie)! repla*s %he %ransla%ion session in %ime 0Figure 11 linear vie)! plo%s a %e/%ual represen%a%ion o& %he 8-D 0Figure 21 pause plo%! sho)s a 2D represen%a%ion ho) %he %e/% emerge in %ime 0Figure C1 $he $ranslog'' Supervisor program implemen%s %he &unc%ions 1" 0crea%e a pro,ec% &ile1 and C" 0repla* a log &ile1, $ranslog'' 8ser is onl* used %o record a $ranslog session and %o s%ore %he 8-D in a log &ile" - $ranslog'' pro,ec% &ile can be con&igured &or a reading e/perimen%, )here onl* %he Isource )indo)J )ill be visible during %he recording session, i% can be con&igured &or a )ri%ing e/perimen%, )here onl* %he I%arge% )indo)J is visible in )hich a %e/% can be %*ped, or &or a %ransla%ion e/perimen%, in )hich bo%h )indo)s are visible 0as in &igure 11" 'n &ac% $ranslog'' also allo)s &or pos%edi%ing %e/%s, i& a pre de&ined %e/% is en%ered in %he %arge% )indo)" $ranslog'' allo)s %he source and %he %arge% )indo)s %o be hori2on%all* or ver%icall* orien%ed and %he source or %arge% )indo)s %o be le&% or righ%, or bo%%om or %op" -s in previous $ranslog versions, %e/%s can be displa*ed in smaller por%ions, e"g" one sen%ence a% a %ime" Each por%ion can be displa*ed &or a cer%ain number o& prede&ined Figure 1 $he screen sho% o& a $ranslog'' Supervisor repla* session sho)s a &ragmen% o& a %ransla%ion e/perimen% )i%h %he source %e/% 0%op1 and %he beginning o& a %ransla%ion 0bo%%om1 in %he %arge% %e/% )indo)" '% also sho)s %he ga2e movemen% during %he %ransla%ion o& %he pas% ; )ords" 4ed and green do%s are ga2esample poin%s 0sampling ra%e .0H2"1 &or %he righ% and le&% e*e respec%ivel*, and %he blue circles represen% &i/a%ions" :uch more ga2e ac%ivi%* is %akes place on %he lo)er %arge% )indo) during %ransla%ion" 4109 seconds, or %he )ri%er ma* decide %o go on %o %he ne/% por%ion o& source %e/% )hen read* %o do so" )% Translog User $he $ranslog'' 8ser program is an in%er&ace &or displa*ing and %*ping %e/% and &or logging 8-D" $o s%ar% a %ransla%ion session, a pro,ec% &ile mus% be loaded" -ccording %o %he se%%ings in a pro,ec% &ile, %he e*e%racker needs be calibra%ed, %hen $ranslog'' 8ser opens a source and?or a %arge% %e/% )indo), plo%s %he prede&ined %e/%s in %he source )indo), and )ai%s &or %he %ransla%or %o %*pe a %ransla%ion in%o %he %arge% )indo)" -s %he si2e, orien%a%ion and rendering o& %he )indo)s and %he &on% is de&ined in %he pro,ec% &ile, i% is no% possible %o resi2e %he )indo)s in $ranslog'' 8ser, %o change %he &on%" '% is possible %o use $ranslog'' 8ser as a pos%edi%ing, b* providing 0machine1 %ransla%ion in %he %arge% )indo) and %o record %e/% modi&ica%ions during pos%edi%ing" *% Translog-II replay mode $he mos% in%eres%ing &ea%ure in $ranslog is %he repla* mode" $ranslog'' Supervisor compu%es some s%a%is%ical &igures on %he number o& ke*s%rokes, bu% more in%eres%ing are cer%ainl* %he possibili%ies %o repla* %he log &ile" -s men%ioned above, %here are %hree di&&eren% )a*s %o visuali2e %he 8-D, %he user vie), %he linear vie), and %he pause plo% )hich are respec%ivel* presen%ed in &igures 1, 2 and C" $he user vie) 0a screen sho% is sho)n in Figure 11 repla*s %he %*ping process in real%ime, and radio bu%%ons can be used %o accelera%ed or decelera%ed, %o pause %he repla*, re)ind or &or)ard i% e%c" 'n addi%ion %o %he ke*s%rokes, $ranslog'' also plo%s %he ga2esample poin%s, &i/a%ions, and &i/a%ed )ords" 'n Figure 1, ga2e sample poin%s and &i/a%ions )ere collec%ed over a period o& appro/" C0 seconds illus%ra%ing %he ga2e pa%h and %he coordina%ion o& reading and )ri%ing ac%ivi%ies" '% is possible %o selec% or unselec% )he%her ga2e and &i/a%ion in&orma%ion should be plo%%ed" $he linear vie) represen%s %he 8-D in a %e/%ual 0linear1 manner" Each ke* and mouse ac%ivi%* C has a represen%a%ion in %he linear vie), and pauses are ei%her indica%ed as 3 '% is also possible %o visuali2e ga2esamples and &i/a%ions in %he linear vie), )hich is omi%%ed here" Figure 2 $)o linear vie) screen sho%s o& %he same %e/% )i%h di&&eren% %emporal resolu%ion" $op! each do% represen%s 1 second pause" Bo%%om! a do% represen%s 0"1 seconds be%)een successive ke*board ac%ivi%ies" Figure C" Screen sho% o& %he pause plo%! Blue do%s indica%e %he accumula%ion o& pauses during a %ransla%ion session 0in seconds1" 4110 as%erisks, and?or numeric value indica%ing %he dura%ion be%)een successive ac%ivi%ies" $he granulari%* o& %he pause displa* can be selec%ed s%ar%ing &rom 1ms up %o an* amoun% o& %ime" $his gives %he possibili%* %o ge% an overvie) over %he coarse %emporal s%ruc%ure o& a %ransla%ion session, reducing %he %emporal in&orma%ion %o a minimum 0Figure 2, %op1, or %o 2oom in%o a se+uence %o s%ud* pausing behaviour as small as a &e) hundreds o& seconds 0Figure 2, bo%%om1" $he %hird $ranslog'' repla* mode is %he pause plo%" - pause plo% represen%s essen%iall* %he same in&orma%ion as %he linear vie) does, %his %ime in as 2D graph" 5e*board ac%ivi%ies are indica%ed on %he hori2on%al =a/is, )hile %he ver%ical Fa/is sho)s %he accumula%ion o& %ime 0pauses1" Figure C sho)s a segmen% o& a %ransla%ion session" '% is possible %o scroll %hrough %he pause plo%, %o 2oom in or ou%" $ranslog'' also allo)s %o s*nchroni2e all %hree visuali2a%ion me%hods" $ha% is, all %hree )indo)s 0user and linear vie) as )ell as pause plo%1 can be opened a% %he same %ime, and b* clicking %he s*nchroni2a%ion i%em %he cursor in all %hree )indo)s )ill be posi%ioned a% %he same %ime" $he op%ion in %he user vie) )ould %hen %rigger a s*nchronous repla* in %he %hree )indo)s" +% Translation Progression ,raphs and Prod&ct Data Alignment (hile %he visuali2a%ion op%ions in $ranslog'' 0Figures 1 C1 %race ho) %he target text emerges in %ime, )e have also developed more po)er&ul visuali2a%ion possibili%ies %ha% sho) ho) %he translation 0ie" %he rela%ion be%)een %he source and %he %arge% %e/%1 evolves" Figure D plo%s %he rela%ion be%)een %he )ord posi%ions in %he source %e/% 0ver%ical a/is1 and %he %ransla%ion ac%ivi%* in %ime on %he hori2on%al a/is" $he &igure presen%s a %ime segmen% o& ca" 10 seconds 0&rom secs" 51 %o .11 in %he s%ring I&ik en &Kngselsdom pL livs%id i dag &or a% slLJ is produced, )hich is 0par% o&1 %he Danish %ransla%ion o& I)as imprisoned &or li&e %oda* &or %he killingJ" Each ke*s%roke is mapped on%o %he source %e/% segmen% o& %he %ransla%ion %o )hich i% con%ribu%es" $hus, line 11 sho)s all ga2e and ke*board ac%ivi%ies %ha% rela%e %o %he produc%ion o& %he %ransla%ion &or English I)as imprisonedJ, line 1C &or %ha% o& I&orJ, line 1D o& Ili&eJ e%c" $he graph also sho)s ga2e ac%ivi%ies in rela%ion %o source segmen%s" $he blue do%s are &i/a%ions on %he )ords in %he source %e/%, )hile %he green do%s represen% &i/a%ions in %he %arge% )indo), mos% o& %he %ime on %he )ord0s1 %ha% are curren%l* being %*ped" $ransla%ion progression graphs re+uire addi%ional alignmen% kno)ledge o& %he source and %he %arge% %e/%s, and are %here&ore no% suppor%ed inside $ranslog''" - se% o& addi%ional %ools are used! 1. %o align %he %ransla%ion, 2. %o compu%e %he ke*s%roke%osource %e/% mapping 3. %o visuali2e %he graph" Carl and Hakobsen 020071 describe a general me%hod and rulebased &ormalism %o map ke*s%rokes on source %e/% )ords" 'n %heir me%hod, %he* i%era%ivel* re%rieve all ke*s%rokes )hich con%ribu%e %o %he crea%ion o& a %arge% %e/% segmen% $i" 9iven alignmen% in&orma%ion &or %he %arge% %e/% segmen% $i %o a source segmen% S,, %he re%rieved ke*s%rokes can be mapped via $i %o source segmen% S," (i%h an e/haus%ive &ragmen%a%ion o& %he %arge% %e/% in%o n nonoverlapping %e/% segmen%s $1...n, and a comple%e alignmen% o& %he source and %he %arge% %e/%s, ever* ke*s%roke can be associa%ed )i%h a source segmen% S," -s illus%ra%ed in Figure 5, )e have reimplemen%ed %his algori%hm in a more e&&icien% )a*! From %he alignmen% o& %he %ransla%ion produc% 0%op in Figure 51 )e kno) )hich source )ords are linked %o )hich cursor posi%ions in %he %arge% %e/%" $he %e/% processing opera%ions can %hen be mapped on %he %arge% %e/% posi%ions and &rom %here &ur%her on %he source )ord0s1" Figure 5 illus%ra%es ho) %he ke*s%rokes )hich produced %he correc%ion o& I%rial Figure D" $he graph visuali2es %he %ransla%ion progression o& %he ; English )ords! I)as imprisoned &or li&e %oda* &or %he killingsJ in%o Danish! I&ik en &Kngselsdom pL livs%id i dag &or a% slLJ" $his %ransla%ion segmen% corresponds %o %he accumula%ed ga2e movemen%s in Figure 1, )hich las%ed appro/ima%el* 10 seconds" Blue do%s represen% &i/a%ions on %he source %e/%, green do%s &i/a%ions on %he %arge% %e/%, %he black charac%ers are inser%ions and %he red charac%ers are %e/% dele%ions" 4111 sen%enceJ in%o I%es% sen%enceJ in %he %arge% %e/% can be mapped on %he source %e/% )ord 5 I$es%sa%2J" From %he alignmen% o& %he produc% da%a, )e kno) %ha% I%es% sen%enceJ is %he %ransla%ion o& I$es%sa%2J, and %ha% I%es% sen%enceJ occupies cursor posi%ions 11 %o 2C in %he &inal %ransla%ion" $he idea is %o look back)ards in%o %he process da%a and collec% all ke*board ac%ivi%ies be%)een posi%ions 11 and 2C, )hich are %hen iden%i&ied %o con%ribu%e %o %he produc%ion o& %he %ransla%ion &or I$es%sa%2J" Figure 5 sho)s %ha% %he &our las% le%%ers IrialJ o& %he )ord I%rialJ )ere dele%ed and %hen subs%i%u%ed b* Ies%J" -s all dele%ion and inser%ion ac%ivi%ies %ake place be%)een cursor posi%ions 11 and 2C, %hese ke*s%rokes are par% o& %he opera%ions %ha% con%ribu%e %o %he %ransla%ion o& I$es%sa%2J" $o compu%e %hese mappings, %he algori%hm looks back)ards in%o %he ac%ivi%* da%a and decides &or each opera%ion )hich )ord i% produces" $he las% opera%ion in Figure 5 is %he inser%ion o& %he le%%er I%J a% %ime $&1 )hich %ook place a% cursor posi%ion 1D" -ccordingl*, %he %e/% leng%h )as one charac%er shor%er be&ore %ha% inser%ion %ook place and %he %ransla%ion o& I$es%sa%2J consis%ed onl* o& %he charac%ers 11 %o 22" 'nser%ion opera%ions lead %o a shor%ening o& %he %e/% )hile dele%ions e/%end %he %e/%, as is %he case &or %he opera%ions $&D %o $&E" $he algori%hm keeps %rack o& %he leng%h and posi%ion o& each )ord during all %imes %o correc%l* map %he ke*board opera%ions on %he )ords" $he collec%ed ke*s%rokes can %hen be linked %o %he source %e/% )ords and plo%%e%, %oge%her )i%h %he ga2e da%a, as sho)n in &igure 5" - &ree version o& $ranslog'' and au/iliar* %ools can be do)nloaded &or academic use upon re+ues% %o %he au%hor o& %his paper" - base con%aining appro/ima%el* 200 sessions o& %ransla%ion process da%a is being cons%ruc%ed and released soon" -% Ac.no#ledgements $he implemen%a%ion o& $ranslog'' )ould no% have been possible )i%hou% previous )ork on %he various $ranslog versions in %he developmen% o& )hich )ere involved >asse Schou, -rn% >*kke Hakobsen, :or%en >emvigh and Hakob Elming" /% References :ichael Carl and -rn% >*kke Hakobsen, 2007" $o)ards S%a%is%ical :odeling o& $ransla%ors6 -c%ivi%* Da%a" 'n International Journal of Speech Technology!olu"e 12 #u"$er % 12&-1'( :ichael Carl and Henrik HMeg :Gller" 2011" C4'$$ N>3 4esources &or $ransla%ion 4epresen%a%ion o& 8ser -c%ivi%* Da%a in $ranslog'', in 3roceedings o& >$C, 3o2nan >*kke Hakobsen, -" 1777" >ogging %arge% %e/% produc%ion )i%h $ranslog" 'n Hansen, 9" 0ed"1, )ro$ing the process in translation* "etho+s an+ results, ,openhagen Stu+ies in -anguage, volume 2D" Copenhagen! Sam&undsli%%era%ur" 3ages 7O20 >asse Schou, Barbara Drags%ed P :ichael Carl 020071, $en *ears o& $ranslog" Copenhagen S%udies in >anguage 0CE1, pages CE51 Qpakov, A" 0200E1" 9(: O %he 9a2e%o(ord :apping $ool, available online a%! h%%p!??)))"cs"u%a"&i?Roleg?g)m"h%ml 0abgeru&en am 21" Huni 20111" Figure 5" $he mapping algori%hm %raverses %he process da%a agains% %he %ime line, &rom %he &inal %ransla%ion produc% %o)ards %he s%ar% o& %he %ransla%ion session" $he arro) on %he le&% indica%es %he %ime &lo) in %he process da%a" (hile %raversing %he process da%a, all opera%ions are associa%ed )i%h a %arge% %e/% posi%ion, and hence a source sen%ence number" 4112