- Kimpan i rampljuset
-
För lite sen fick Kim, min norska kollega, besök från hemlandet. En reporter från Aftenposten tittade förbi med lite spörsmål om lokalisering och andra ting & tang. Resultatet står att läsa på: http://forbruker.no/digital/nyheter/data/article1621048.ece
(Lite tjalur blir man va. Jeg skjönner ikke hvorfor de ikke ville snacke med meg - jeg er skicklig greit på å snakke Norsk! Eller nåt.)
- Vad händer eller sker?
-
Tja, inte så mycket just nu. Nästa stora projekt har inte riktigt börjat ännu, så vi passar på att utvärdera vad som kan förbättras i våra processer & verktyg. Samtidigt vet vi att en omorganisation är på gång ganska snart och det verkar som förändringarna kommer att bli ganska omfattande. Man känner sig lite tveksam till att ta tag i större saker innan man vet vilken roll man kommer att spela framöver.
De goda nyheterna är att jag idag äntligen har klarat av den sista MCP-tentan jag behövde för att bli MCSD på .NET. Jag försökte bli klar redan 2003, men flytten till USA kom emellan... känns gött att ha det gjort nu.
- Ny release, nya buggar...
-
Svensk IE7 nådde massorna strax före jul och svensk Windows Vista är på väg ut till butikerna - vissa kan redan hämta Vista från MSDN. Detta är alltså ett bra tillfälle att börja söka efter kommentarer från de användare som inte kunde delta i betaprogrammet.
Än så länge är det givetvis svårt att hitta feedback om svensk IE7/Vista, men jag snubblade över den här bloggposten: http://slammastera.blogspot.com/2006/12/bugg-i-ie7.html.
Problemet är följande: Om man startar svensk IE7 och öppnar menyn Sida ser man att kommandot "Nytt fönster" har acceleratorn Ctrl+W. Detta stämmer dock inte; Ctrl+W stänger aktuell flik (eller hela IE-instansen, om endast en flik är öppen). Rätt kommando för att öppna ett nytt fönster är istället Ctrl+N.
Jag har forskat i problemet, och så här ligger det till:
Detta rör sig om ett menyalternativ som även visar vilken accelerator som kan användas för att nå samma funktion. Som vi alla vet definieras den accelerator som visas i menyn helt separat från den accelerator som faktiskt leder till funktionen.*
Mitt favoritlokaliseringsverktyg har en funktion för automatöversättning, vilket innebär att vi kan översätta en strängresurs en gång och sedan återvinna översättningen när samma källtext förekommer igen. Den här funktionen är smart nog att identifiera och ignorera acceleratorer när den söker efter matchningar, men korkad nog att den i vissa fall kan resultera i en sträng där acceleratorn i översättningen skiljer sig från källtexten och från den accelerator som faktiskt fungerar.
Just den här strängen förekommer flera gånger i filen ieframe.dll, en av huvudfilerna för Internet Explorer 7. En av förekomsterna av strängen är den som visas i Arkiv-menyn, en annan förekomst används i Sida-menyn. Båda strängarna har följande källtext: "&New Window\tCtrl+N". Den första förekomsten översattes helt korrekt till "&Nytt fönster\tCtrl+N". På morgonen den 2006-03-15 automatöversatte sedan undertecknad den andra förekomsten - men av något skäl blev resultatet "&Nytt fönster\tCtrl+W". Varför? Ingen aning, faktiskt. Acceleratorerna i IE7 ändrades rätt ofta runt den här tiden, kanske användes tidigare Ctrl+W i källtexten och kanske innehöll den databas jag automatöversatte från en tidigare översättning med Ctrl+W... svårt att veta nu.
(Det är värt att notera att vi inte har någon funktionell bugg här, utan "bara" en ganska missvisande översättning. Acceleratorerna Ctrl+N och Ctrl+W fungerar som det är tänkt, men en av översättningarna kan lura användaren att använda fel accelerator. Ungefär som om man hade råkat översätta "OK" till "Avbryt" och "Cancel" till "OK". Kanske verkar detta som hårklyverier, men skillnaden innebär att det är lätt och säkert att fixa.)
Nu tänker kanske Vän av ordning att om acceleratorer är så vanliga och om Holmberg ska skylla på verktygen, borde inte detta problem finnas på fler ställen? I så fall har Vän av ordning helt rätt. Man kan hitta liknande miss på ytterligare ett halvdussin ställen i svensk Vista. Det tydligaste exemplet är i Kungen. Menyalternativet för funktionen "Ångra" visar att F10 är en giltig accelerator, men i själva verket är det Ctrl+Z som gäller.
I det här fallet kan jag tydligt se vad som skedde. Tidigt under Vista användes faktiskt F10 som accelerator för "Ångra". Vid något tillfälle ändrade utvecklaren accelerator till Ctrl+Z; vi såg att strängen i uppdaterats; vi automatöversatte och automatöversättningen återanvände glatt den tidigare acceleratorn.
Jag har kontrollerat ett dussin andra språk, och det verkar som om de flesta har en handfull sådana här problem. Mönstret börjar bli ganska tydligt; det rör sig ofta om situationer då acceleratorn har uppdaterats under projektets gång.
Ok, så nu har vi hyfsad förståelse för hur problemet uppstår. Vad gör vi åt det?
1) Jag har lagt in en bugg om just Ctrl+W-buggen i svensk IE7 och ska hoppas kunna fixa den strängen i Vista SP1. Det bör ta hand om just den här förekomsten.
2) Vi håller på att bygga på våra kvalitetskontrollverktyg så att de i framtiden kan fånga upp sådana här problem. Det bör innebära att vi tidigt kan upptäcka om detta sker igen, oavsett språk.
3) Vi ska försöka få automatöversättningsfunktionen fixad så att den hanterar acceleratorer bättre. Det bör dramatiskt minska risken att felet över huvud taget uppstår.
Om du använder svensk Vista, IE eller Media Player och hittar något översättningsfel, ser nåt som ser knas ut, eller bara har några frågor eller synpunkter på översättningsarbetet får du hemskt gärna kontakta mig. Stort eller litet spelar ingen roll - allt som kan leda till att vi levererar en bättre produkt är av intresse!
* se http://blogs.msdn.com/jesperh/archive/2007/01/09/vad-r-skillnaden-mellan-snabbtangenter-och-acceleratorer.aspx
- Vad är skillnaden mellan snabbtangenter och acceleratorer?
-
Snabbtangenter (kallas även "hotkeys") har till syfte att gör det lättare att navigera runt i användargränssnittet med tangentbordet. Detta är viktigt för användare som inte kan eller vill använda musen.
Snabbtangenter definieras i enskilda kontroller, och att trycka ner en snabbtangent är jämförbart med att ge fokus till eller klicka på den kontroll där snabbtangenten är definierad. Exakt vad som sker beror på vilken slags kontroll det rör sig om.
Snabbtangenter kan nås genom att man trycker ner Alt-tangenten följt av den tangent som motsvarar den kontroll man vill aktivera. Alt+A brukar öppna menyn Arkiv, för Arkiv har snabbtangenten A. Alt+N kan ta dig till nästa sida i en guide, för knappen Nästa har snabbtangenten N. Dock, om det fönster som har fokus inte har någon aktiverad och synlig kontroll med t.ex. Alt+A, då sker ingenting när man trycker ner den tangentkombinationen.
Snabbtangenter inkodas i kontrollernas text genom att utvecklaren eller lokaliseraren använder ett &-tecken före den bokstav som ska fungera som snabbtangent. Menyalternativet "Arkiv" har alltså texten "&Arkiv" och knappen "Verkställ" har texten "&Verkställ". Snabbtangenter för ett givet alternativ brukar skilja sig markant mellan olika språkversioner, eftersom det inte finns någon garanti för att min översättning ens innehåller samma bokstav som används som snabbtangent i källtexten. "&Verkställ" är på engelska "&Apply", "&Arkiv" är "&File".
Som standard visas inte vilken snabbtangent som har definierats för olika kontroller, för tydligen har forskning visat att användare blir förvirrade när de ser att vissa bokstäver är understrukna. Den som vill kan dock ändra en inställning i Windows så att snabbtangenten alltid visas - Michael Kaplan förklarar hur på http://blogs.msdn.com/michkap/archive/2006/09/28/774885.aspx.
Acceleratorer å andra sidan har till syfte att låta användare direkt nå vanliga eller viktiga funktioner utan att alls behöva navigera runt i användargränssnittet.
Acceleratorer brukar inte vara direkt bundna till enskilda kontroller och de definieras i Win32-filer genom en acceleratortabell som är helt separat från användargränssnittet. Acceleratorer brukar nås genom att man trycker ner någon F-tangent eller en kombination av Ctrl och någon eller några andra tangenter.
Acceleratorer är inte direkt bundna till en viss översättning så de har inte samma behov av att skilja sig mellan olika språkversioner. Ctrl+O brukar betyda "Öppna" oavsett språkversion. Vissa undantag finns dock. Ett svenskspecifikt exempel är att man för länge sedan beslutade sig för att "översätta" Ctrl+B (bold) till Ctrl+F (fet) och Ctrl+I (italic) till Ctrl+K (kursiv). Personligen tycker jag att det var ett misstag, men nu är det som det är...
Acceleratorer är inte direkt bundna till några kontroller, men givetvis är det käckt om det finns någon text som låter användaren upptäcka vilka acceleratorer som är tillgängliga. Det är därför vanligt att någon annan kontroll - t.ex. ett alternativ i en meny - visar vilken accelerator som kan användas för ett visst kommando. I menyer görs detta genom att menyns text och acceleratorn avgränsas med en tabb. Menykommandot kan givetvis även ha en snabbtangent, så det här är en vanlig syn: "&Öppna...\tCtrl+O" (\t betyder tabb)
Användning
De vanligaste funktionerna kan oftast nås på flera sätt. I Anteckningar kan man öppna en fil genom att:
1) Klicka på menyn Arkiv och sedan på alternativet Öppna
2) Trycka ner snabbtangenten Alt+A för att öppna &Arkiv-menyn och sedan trycka ner Ö för att välja alternativet &Öppna
3) Trycka ner acceleratorn Ctrl+O
Detta är bara en kortfattad förklaring av normalfallen. Mycket kan skilja sig i specialfall - man kan t.ex. använda en accelerator så att användaren uppfattar den som en snabbtangent; Winforms-program implementerar acceleratorer annorlunda än Win32-program; jag vill inte ens tänka på HTML... Syftet här är bara att ge bakgrund inför nästa bloggpost.
- Höststorm
-
Lite kallt och blåsigt på sistone. Så här har det funkat:
Torsdag, runt 15-snåret:
Det börjar snackas om den stundande stormen. Det ska bli den värsta i mannaminne, tydligen. Äsch, tänker Holmberg, mycket snack också... Lite blåst kan väl inte vara så farligt.
Torsdag, runt 17-18-snåret:
På väg hem börjar det regna. Å hej vad det regnar! Värsta jag har sett! Man stannar till vid den lokala matbutiken, lika bra att bunkra upp med lite soppor, korv & brö, potatismos, frukt & juice, frukostvaror, batterier, dasspapper och öl. Bara det nödvändigaste.
Torsdag, exakt 19:00:
Det verkar blåsa lite också. Kanske dags att börja med middagen innan strömmen går (nästan alla elledningar i delstaten är luftburna; strömmen går ner bara man nyser, rapar eller fiser).
Torsdag, exakt 19:02:
Oj då, vad svart allt blev. Hela byn är visst mörklagd. Dax att tända stearinljus. Lika bra att stänga av mobiltelefonen med för att spara batteri. Lite tur i alla fall att man har gasspis; efter att ha tänt den med en tändsticka är det inga problem att steka upp ett par varmkorvar och värma upp potatismosen. Mmm, halv special!
Torsdag, senare på kvällen:
Man sitter och ser ut mot vägen och märker att en bil tvärnitar, backar tjugo meter och sedan fortsätter köra, fast nu på fel sida om en refug. Ett par minuter senare sker precis samma sak. Ytterligare några minuter senare ser man en bil som inte stannar, utan i stället kör på något och helt oväntat befinner sig på tvärställ, hamnar nästan i diket. Ok, man drar på sig vinterjackan och knatar ut med en yxa i ena näven och en ficklampa i den andra. Hur ser man ut? Hoppas ingen ringer snuten nu... Gött i alla fall att det har slutat att regna, men hoppsan vad det blåser.
Man kommer ner till vägen och ser att, visst, ett mindre träd har brutits av och ligger över vägen. Stammen är inte mer än en decimeter tjock, men det är tydligt att det orsakar problem för bilarna. Man stoppar den bil som nu kommer med en manlig högerhandflata, pekar ut trädet så att föraren förstår vad som är på gång, och börjar slita bort virket från vägbanan. Så fort man börjar dra i trädet, börjar bilen köra. Rätt in i trädet, drar nästan omkull mig. Tackar.
Efter att ha rensat upp på vägen finns det inte så mycket att göra. Bara att knyta sig.
Torsdag, natt:
Frugan väcker mig för att det viner och tjuter i huset. Det låter som inget jag har hört innan, antagligen är vinden så stark att huset delvis böjs och nu gnisslar olika delar av ytterväggen mot varandra. Fattar inte vad jag kan göra åt det just då, så jag vänder mig om och fortsätter sova.
Fredag, 05:45:
Värst vad kallt det är. Ingen el alltså. Undrar hur det är i Redmond, är det värt att gå till jobbet? Man halar fram mobilen och loggar in på Outlook Web Access för att kolla mailen. Se där, verkar som om jobbet är strömlöst med. Frugan tror att hon ska kunna åka till jobbet ändå, men jag övertalar henna att lugna sig lite, i alla fall tills det ljusnar.
Fredag förmiddag:
Nu är det ljust. Man går ut och kollar hur det ser ut i området. Flera hus har skadade tak, inklusive vårt. Skadorna är inte så omfattande, men om man går upp på vinden kan man se rätt ut i himlen på några ställen. Lite tur att det slutade regna innan det började blåsa för mycket. Nu är man förvisso ingen licensiserad takläggare, men nåt måste göras. Vi drar ut mot Redmond, där Home Depot finns.
Fredag lunch:
Det är nästan omöjligt att ta sig någonstans alls. Strömmen har gått precis överallt, inklusive trafikljus, så trafiken är helt knas. Radion säger att i runda slängar en miljon kunder har förlorat strömmen. Säg 2-3 personer per hushåll. Inte illa. Ok, till Home Depot kommer man inte. Hem igen.
Snackar med grannen; han ska försöka ta sig till en annan Home Depot och köpa material för att reparera taket. Jag ber honom skaffa prylar för oss med.
Fredag, ett par timmar senare:
Hm, vi kommer bara att ha dagsljus i några timmar till. Vet inte när grannen kommer tillbaka eller om han lyckades hitta någon öppen butik. Frugan och jag hoppar in i bilen och tar oss ner till den lokala verktygsbutiken. De har en elgenerator så de är faktiskt öppna, men de har inte precis vad vi behöver. Man köper en kartong galvaniserade spikar och en presenning. På vägen hem åker vi förbi min finska kollegas hus för att se om de behöver hjälp, men de är inte hemma.
Tillbaka på sina egna ägor igen börjar man fundera på hur det är tänkt att man ska komma upp på taket. Huset vårt har två våningar; stegen når precis till andra våningen, men pga att taket över verandan som går runt hela huset sticker ut, kan man inte ställa upp stegen så att den når dit man måste ta sig. Själva taket är fortfarande blött och helt glashalt. Det slutar med att man packar presenning, hammare, spik, sax och kamera i den gamla persedelpåsen, slänger påsen över ryggen och beger sig upp: man klättrar upp på garaget, därifrån upp mot sidan på huset, häver sig över en meterhög gavel, klättrar runt en ventil modell större, och befinner sig nu högst upp på taket. Jag tar foton för försäkringen och sliter bort halvt bortblåsna brådbitar. Jag klipper till en lagom stor del av presenningen och spikar fast den noga så att vinden inte kan komma in under den. Det är bra halt häruppe och det blåser fortfarande en del. Efter en och en halv timme är jag i stort sett klar, och precis nu kommer grannen hem. Grannfrun vågar inte titta när jag klättrar ner, hon är övertygad om att jag ska ramla ner med huvet före. Bra att man inte är ensam om att tro det.
Fredag kväll:
Vi ligger påklädda under dubbla täcken i sovrummet, men stearinljus tända runtom rummet. Jag loggar in på Outlook Web Access via mobilen igen och skickar ett mail till polarna på jobbet för att rapportera hur vi har det. Slocknar ganska tidigt.
Lördag morgon:
Hej vad kallt det är. Man går ner och sätter sig i bilen för att lyssna på AM-radio. Fortfarande saknar sjuhundratusen kunder el; åttio huvudledningar är fortfarande kapade. Man varnar för att det kommer att ta flera dagar innan allt är återställt. Kollar mailen igen och en av kompisarna, en norrman, säger att han aldrig förlorade strömmen, så vi kan bo där om vi vill. "Bara att ringa" säger han. Fast han ger oss inte numret, och jag nollställde mobilen i torsdags morse så kontaktlistan är tom. Jag pingar tillbaka och ber honom SMS:a sitt nummer till oss. Jag fick även svar från kollegan som nu är på semester i Sverige; han erbjöd sig att kontakta sin hyresvärd och ordna fram en nyckel till deras lägenhet. Jag svarade givetvis "ja tack" på det med.
Lördag förmiddag:
Vi bestämmer oss för att åka till en större mataffär (typ B&W) och köpa fler stearinljus. Lite för att vi knappt har några stearinljus kvar, men mer för att vi är kalla och uttråkade. Innan vi lämnar vår by tittar vi förbi finnarnas hus igen för att fråga om de behöver nåt. Finnarna är vid gott humör, sisun bara strålar! De har ingen el, ingen värme, ingen spis, men humöret är på topp! Dagen innan var de i en grannby en liten bit norr om vår, och där fanns det el minsann. "Bådar gott, kanske får vi elen tillbaka snart med", tänker Holmberg. Jag och frugan åker till grannbyn och handlar.
I mataffären får jag SMS med norrmannens telefonnummer. Väl hemma igen ringer jag upp honom och får adressen till hans hus (jag hjälpte honom att flytta in i somras, men kommer inte ihåg hur man tar sig dit). På kvällen flyttar jag och frugan in i hans gästrum. Vi sover på golvet, men nu är vi i alla fall varma och mätta, och man har fått laddat mobilen igen.
Söndag morgon:
Kollegan i sverige ringer upp; han har fått kontakt med hyresvärden och vi kan hämta upp nyckeln till lägenheten under förmiddagen. Sagt och gjort, vi packar upp bilen igen och åker iväg mot Bellevue. På vägen ser vi att situationen börjar normaliseras lite; stora delar av Redmond och Bellevue har nu el, och allt fler bensinstationer är öppna. Trafiken är dock fortfarande rätt knas, så vi åker hem till vår by först för att hämta smutstvätt. Samvetet gnager lite, så vi åker förbi finnarnas hus igen för att se om de är ok. De är fortfarande rätt nöjda och glada, men vi säger till dem att vi har fått tag på en varm lägenhet och att vi gärna låter dem sova där; vi kan bo kvar hos norrmannen. "Nejdå, inga problem", säger finnarna. Det stora problemet är att de inte kan laga mat, annars är allt ok. Jag ger dem nyckeln till vårt hus där grillen och gasspisen funkar; vi åker hem och hämtar smutstvätt och sedan ut till Bellevue och en varm lägenhet.
Nu har vi hört från alla i teamet förutom en familj. Dansken svarar inte i telefon, och de har en nio dagar gammal dotter. Jag och frugan åker ut för att titta till dem. De är frusna och de saknar vatten (ett träd svajade i vinden så att rötterna drog sönder vattenledningen på deras tomt), men de är vid god hälsa och är precis på väg till en granne som har el. Gott. Tillbaka till Bellevue, äntligen får man sova ordentligt.
Måndag:
Både jag och frugan är ganska risiga. Hosta, feber, ont i hals och bröst. Frugan pingar sin läkare och får avtalat en tid till eftermiddagen. Vi åker ut och käkar frukost, därefter ut till huset igen för att växla tvätt. Det är kallare inne än ute, och nu har vi en mindre vattenläcka i ett av badrummen. Under handfaten finns två kranar för att stänga av varm- eller kallvatten upp till själva handfatet; kranen till kallvattnet fick man byta i somras pga läckage, och nu när det blev kallt har den andra kranen börjat läcka med. Inte mycket att göra åt det just nu, förutom att stänga av vattnet till hela huset.
Man lyckas inte hitta försäkringspapprena direkt och det är för kallt för att leta ordentligt, så vi åker mot Redmond igen, till banken där försäkringsmäklaren sitter. Tyvärr är just den filialen stängd eftersom den fortfarande saknar el. När vi väntar på att det ska bli dags för frugan att gå till läkaren ringer finnen. De är beredda att kasta in handduken nu, så de undrar hur man får tag på nyckeln till lägenheten. ...dags att flytta igen...
Efter läkarbesöket sticker vi till jobbet och lämnar den ena nyckeln till lägenheten (vi har två kopior) och en lapp med portkod osv på finnens skrivbord, och sedan åker vi ut till Bellevue för att hämta vår pinaler igen. Vi packar upp, käkar en snabb middag, och åker ut till norrmannen igen och sover återigen på golvet.
Tisdag:
Vaknar kvart i sex av alarmklockan. Frugan börjar jobbet klockan sju, men bestämmer sig för att skippa arbetet. Vaknar kvart i sju, snabb dusch och iväg till jobbet. Och här sitter jag nu, försöker få tag på försäkringsbolaget. Senaste nytt är att vi kanske får el igen till helgen.
God jul.
- My latest pet peeve
-
It seems that absolutely everyone at Microsoft feels that they need to keep me informed about what they're up to. Why else would I get dozens of newsletters and status reports every week, from all kinds of teams and people, about all sorts of projects and products? As much as I appreciate the opportunity to be kept in the loop, I really don't read any of these unsolicited mails. Not a one. I don't have time, and I'm not interested.
Today I had enough. I decided to go one step further: stop ignoring, start unsubscribing. The latest newsletter I received actually had an "unsubscribe" link at the bottom. Great, all I need to do is to leave a distribution list that someone added me to. Only... no...
Of course it turns out I'm not a direct member of this distribution list. Instead, I'm member of an alias that's member of another alias that's included in some other alias that's included in the alias that the news letter is sent to. Also, the alias that I'm a member of is also member of a different alias that's included in some other alias that's a member of another alias that's also a recipient of the newsletter. And the alias that I'm actually a member of isn't something I should leave.
I contact the sender. Predictably, I'm advised to just treat the mail as spam: "...create a deleting rule in Outlook for everything sent on the alias".
But why should I have to? Why send me crap that I'm not interested in? Can't someone stop the madness!!! And it's not just me; this particular newsletter reaches several thousand people. I bet the sender doesn't even know who actually gets it. I bet very few recipients know why they receive it. The distribution list chain to some of the recipients is ridiculously complex; for some people there are a dozen possible paths!
Still, it's kinda cool that Exchange can cope with this endless stream of junk mail.
- Lucia på Microsoft
-
Jag hade helt glömt bort att det var lucia idag - ända tills jag råkade se följande i köket:

Pepparkakor minsann! Tippetippetipptapp!
(Lessen för bildkvaliten; taget med lånemobilen)
- Telefontestning
-
Trots att Microsoft är ett ganska stort företag och trots att mer än hälften av de pengar som dras in kommer från andra länder än USA, har vi ganska få svenskar som arbetar i lokaliseringsbranschen och som befinner sig här i Redmond. Så vitt jag vet kan de i stort sett räknas på ena handens tumme och lillfinger. Och lillfingret är just nu på väg till Sverige för en lång och välförtjänt ledighet.
Att det finns så få svenskar här innebär att man ges många tillfällen att hjälpa andra grupper med svenskspecifika frågor. I somras letade en av produktgrupperna efter nån som kunde hjälpa till med svenska språkverktyg, och jag fick möjlighet att intervjua flera kandidater. Som tack fick jag gratis Starbucks-kaffe i en vecka. Jag har aldrig varit så vaken.
I höstas hjälpte jag gruppen bakom Windows Genuine Advantage med några sistaminutenändringar i de svenska filerna. Inget avancerat förstås, men tydligen hjälpte jag till att rädda deras schema - några dagar senare hittade jag en t-shirt och ett USB-minne i postfacket, båda med WGA-logo. Inga stora grejer, men både oväntat och uppskattat.
Det bästa hittills är det jag arbetar med just nu: teamet bakom SmartPhone gav mig en chans att hjälpa till att testa operativsystemet på svenska. Fokus är givetvis på lokaliseringen: jag försöker hitta stavfel, kontextfel, kosmetiska fel, terminologifel, inkonsekvenser osv. Rätt kul är det; mycket för att man lär sig en hel del om produkten och problemen med att lokalisera för såna här små pjäser, men även för att man tydligt ser att testningen ger effekt. De flesta buggar jag har hittat hittills har bara varit småsaker, men varje grej som fixas gör produkten en gnutta snyggare och efter ett tag blir det ganska många gnuttor... (gnuttar?)
Fast det göttaste med hela grejen är att jag har varit för lat/snål för att skaffa mobiltelefon innan, men nu har jag fått en telefon med tillhörande abonnemang. Jag kan behålla telefonen så länge som jag fortsätter hitta buggar...
- Skeppat och klart
-
I onsdags förra veckan gick svensk, norsk (Bokmål), dansk och finsk Vista iväg till DVD-pressarna, helt enligt planerna. Vista kommer därmed att bli tillgängligt för allmänheten på våra språk samtidigt som den amerikanska versionen och de andra språk som redan har skeppats. Gött.
Detta innebär även att IE7 för Windows XP SP2 är klappat och klart; det kommer att gå upp på Windows Update och Download Center inom kort. Gissningsvis tidigt nästa vecka.
- Rätt eller fel? #2
-
Jag fortsatte stavningskontrollera nu på morgonen, och hittade den här strängen i pdh.dll. Precis som strängen igår har denna ett motord:
Engelsk text:
The SQL database does not contain a valid set of tables for Performance Monitor; you need to use PdhCreateSQLTables. Use the ODBC Data Source Administrator to create a SQL Server system data source name to let Performance Monitor correctly create a database for counter logging.\r\n
Översättning:
SQL-databasen har inte en giltig uppsättning tabeller för Prestandaövervakaren. Du måste använda PdhCreateSQLTables. Skapa system-DSN för SQL-server med hjälp av administratören för OBDC-datakällor och låt Prestandaövervakaren skapa databasen för motloggning.\r\n
Vad tror du, är detta rätt eller fel översatt? Varför? Hur kan den förbättras?
- Rätt eller fel? - Fel!
-
Igår* frågade jag om en viss översättning verkade ritktig. Tre svar kom in, och alla hade rätt i att översättningen var fel:
Kristoffer verkar ha bakgrund som programmerare; han visste direkt vad källtexten rörde sig om och gav ett förslag på en bättre översättning. David gick ett steg längre och visade varför strängen blev felaktigt översatt - ordet "callback" kan ha en alternativ översättning när det rör sig om telefoni, men iomed att det rör sig om en del av kärnan i Windows är det mindre troligt att strängen har med telefoni att göra. Svante försvarade översättaren genom att ifrågasätta värdet i att över huvud taget översätta strängen.
Bra kommentarer från alla tre, uppskattas! Jag håller med om allt, förutom en sak: förslaget att översätta "callback" till "återanrop". Prefixet "åter-" gör det enkelt att förstå översättningen som "upprepat anrop". Jag skulle hellre säga "motanrop", för att göra det lite tydligare att det rör sig om dubbelriktad kommunikation. Vad tros om mitt resonemang här? (Just nu är vi dock lite inkonsekventa med detta i Vista, men kanske kan jag fortfarande styra upp det om jag snabbar på...)
* http://blogs.msdn.com/jesperh/archive/2006/11/07/r-tt-eller-fel.aspx
- Rätt eller fel?
-
Det är inte alltid lätt att lokalisera. Som regel arbetar man utan kontext. Utan god förståelse för systemet, erfarenhet i branschen och vild fantasi är det lätt att översättningen blir felaktig.
Idag tänkte jag testa nåt nytt. Jag publicerar en översättning som jag hittat i Windows, så får ni kära läsare kommentera om det är rätt eller fel, och även varför. Förslag på en bättre översättning är också välkommen.
När jag satt och stavningksontrollerade idag, hittade jag följande i filen ntdll.dll:
Källtext: The provided callback is already registered.\r\n
Översättning: Motringningen som angavs har redan registrerats.\r\n
Vad tror du, är detta rätt eller fel översatt? Varför?
- Svämövning
-
Det finns en flod mellan den by där jag bor och Redmond där Microsoft finns. För en vecka sen var floden c:a 15 meter djup, vilket i sig är ganska högt. Idag är den tjugo meter djup. För en vecka sen var flödeshastigheten 1 700 kubikfot per sekund. Idag är det närmare 60 000 kubikfot per sekund*. Hela dalen är översvämmad.
Ett par foton av den väg jag för omväxlings skull inte körde på imorse. "Vatten på vägbanan". Bra skylt.

Det verkar som om bron över floden har klarat sig. Undrar hur det är med vägen under floden. Och nu fattar inte jag hur det är tänkt att man ska göra 45 knyck, verkar finnas risk för vattenplaning:

* om jag förstår detta rätt: http://ahps2.wrh.noaa.gov/ahps2/river.php?wfo=sew&wfoid=18678&riverid=204020&view=1%2C1%2C1%2C1%2C1%2C1&pt%5B%5D=144580&allpoints=143334%2C144580&data%5B%5D=all&submit=Make+my+River+Page%21
- Bobba
-
Någon frågade mig vad det är för en liten brungrå bobba man ser i övre vänstra hörnet bl.a. på fliken Säkerhet i dialogrutan Internet-alternativ i Internet Explorer 6:

Det är en bugg. Men inte vilken slags bugg som helst, utan en bugg som orsakas av mitt favoritlokaliseringsverktyg.
Den här fliken råkar ha en kontroll av typen NativeFontCtl*. Denna kontroll ska vara osynlig och borde därför ha storleken 0x0 DLU:er, vilket den också har i de filer vi har som bas när vi lokaliserar.
I mitt favoritlokaliseringsverktyg har jag en dialogruteeditor som påminner om den du kan se i Visual Studio. I denna editor kan jag flytta runt och ändra storlek på kontroller precis som jag vill. Om jag i den här editorn markerar en kontroll som har storleken 0x0, så ändras storlek automatiskt till 6x6. Jag vet inte varför, men detta är tydligen minimistorleken på alla kontroller, för man kan inte göra någon kontroll mindre än just 6x6 DLU:er (däremot kan man återställa de binärdata som finns i basfilen, så det går att få tillbaka kontrollen till 0x0).
Bobban du ser i den här dialogrutan uppstod alltså helt enkelt genom att någon råkade markera den här kontrollen och inte märkte att dess storlek ändrades. Lätt hänt, eftersom kontrollen inte har mycket till utseende och vi tidigare inte hade något enkelt sätt att upptäcka detta på. Nu i Vista har vi dock ett verktyg som rapporterar kontroller som är 0x0 i basfilen men större i den lokaliserade filen.
* http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/faq/localization.asp
- Mer om svensk IE7
-
En kompis skickade en länk till IDG där man diskuterar svensk IE7 (http://www.idg.se/2.1085/1.79973?renderMode=listpostings). Ett par frågor ställs:
Albo säger "Det är ju dock lite udda att de inte lyckats plocka fram en svensk version ännu. Hur lång tid kan det ta att översätta?" Dekoder tillägger "Kanske Microsoft kan börja lära sig att släppa språken samtidigt som Firefox boysen istället?" Nån annan slår fast att "Skärpning. Jag har kört IE7 sen RC1 och så jävla mycket nya funktioner som det behövs en svensk etikett på har inte tillkommit sen IE6."
Kanske finns det värde i att jag förklarar lite mer om hur vi arbetar och det här projektets omfång.
För det första gör vi mer än bara översätter programmet; det måste förstås ske vissa anpassningar av utseende och funktionalitet (t.ex. rätt standardlänkar) också. Sen ska den lokaliserade versionen testas ordentligt så att det inte bara är funktionellt sunt, utan även språkligt och kosmetiskt acceptabelt. Testningen har pågått länge, men det är givetvis svårt att slutföra testningen innan den engelska versionen är helt klar. Detsamma gäller även för hjälpfiler, vilka ofta består av 50 %-100 % större ordvolym än programvaran.
Till saken hör även att vi arbetar med hyfsat komplexa projekt. Som slutanvändare kan man lätt se Windows Media Player, Internet Explorer 7, Windows Defender och annat som fristående produkter, men eftersom alla dessa även ingår i Windows Vista finns det givetvis stora beroenden mellan de fristående versionerna och hela Windows. Även om vi till viss mån ser på IE7 som ett delprojekt, försöker vi så långt som möjligt behandla det som bara en del av Vista. Om vi inte gör så, blir det helt enkelt för tidskrävande att hantera projektet.
(Förr om åren har vi försökt att behandla vissa komponenter som skeppas i Windows som helt separata projekt (t.ex. NetMeeting), men erfarenheter visar att det inte är skalbart. Med olika scheman för den fristående komponenten (kanske flera varianter för olika tidigare operativsystem) och den version som ingår i nästa Windows-version, har vi hamnat i en situation då vi har flera kopior av samma fil (en för varje release), så varje buggfixning måste göras flera gånger, ofta vid olika tidpunkter; detta kan leda till att buggar återuppstår eller bara fixas i vissa instanser; ett par år efter att vi skeppat är det svårt att hitta "rätt" variant av filer mm. Överlag blir det helt enkelt för komplext att hantera situationen.)
Till saken hör även att mängden ändringar från IE6 och Windows XP är större än vad man kan tro. Vi mäter ofta arbetsbörda i antal ord som ska lokaliseras. I Windows Vista har vi c:a 1,7 miljoner ord uppdelat på över 250 000 resurser och nästan 1 900 filer. Detta är en dramatisk ökning från Windows XP, som bestod i runda slängar en miljon ord. Dessutom har många strängar som skeppades i Windows XP helt skrivits om (i vissa fall flera gånger under projektets gång), och vi har själva ändrat i strängar där källtexten inte har ändrats (t.ex. för att rätta till gamla felöversättningar eller införa terminologiändringar).
Jag vet inte hur många lokaliserbara ord och dialogrutor FireFox består av, men gissningsvis arbetar vi på en helt annan skala...
Slutligen kan jag förstå frustrationen över att svensk IE7 inte är tillgänglig ännu, och tro mig - detta överväldigande intresse för vårt arbete är vad som motiverar oss att leverera nåt i toppklass; det är er entusiasm som driver oss att sitta in i småtimmarna och finputsa. Personligen tycker jag faktiskt att det är rätt bra att vi har lite tid kvar, för nu har vi verkligen möjlighet att leverera den kvalitet som vi strävar efter och som ni kräver och förtjänar.
Svensk IE7 - värt att vänta på.