30. mars 2009

Geotagging

Geotagging av bilder innebærer å legge til geografiske koordinater i metainformasjonen i bildene. Om det gjøres, kan en se på et kart hvor ulike bilder er tatt, men det er også andre bruksområder (nederst i dette innlegget). Geotagging kan gjøres tungvint ved å skrive inn koordinatene, enklere ved å klikke på et kart for hvert bilde, eller helautomatisk ved å la en GPS gjøre jobben. Det nye iPhoto 09 (programvare for bildeadministrasjon som følger med Mac) støtter geotagging. Antar at flere andre programmer på både Mac, Windows og Linux gjør det samme.

Overordnet om prosessen

Inspirert av blant annet Martin Bekkelund, Eirik Solheim og en kollega, gikk jeg i forrige uke en runde i Kristiansund med GPS og kamera for å gjøre mine egne erfaringer. Det er mulig å bruke hvilken som helst GPS så lenge denne kan lage en logg av hvor en har beveget seg. Jeg brukte iPhone sin innebygde GPS, hadde denne i bukselommen og tok bilder med speilreflekskameraet (Canon 450 EOS). Etterpå overførte jeg bildene til maskinen, brukte et 3.parts program til å legge inn GPS-informasjonen i hvert enkelt bilde, og lastet til slutt bildene opp på Flickr. Det morsomme er at bildene som har geotagget informasjon i seg kan vises på et kart hos Flickr - og hvis jeg vil kan jeg også laste opp til Google Maps og/eller Google Earth. Dermed ser en nøyaktig hvor hvert bilde er tatt. Se selv.

Geotaggede bilder vises på kart på Flickr

De to siste bildene viser også hvor nøyaktig GPS-en til iPhone er. Det ene bildet er tatt fra den andre siden av veien mot den kataloske kirken i byen, mens det neste er tatt etter å ha krysset veien (altså står jeg på selve kirketrappen). Dette reflekteres på kartet (zoom gjerne inn på kartet før du klikker rundt på bildestripen).

Meta-informasjonen for hvert bilde avslører for eksempel at den katolske kirken er på 71,39 meter over havet (nederst). Dette kan stemme, men om det er helt nøyaktig, tør jeg ikke si, fordi Klippfiskdamen er i følge iPhonen på hele 49.86 meter over havet. Jeg tror nok at 2 meter ville vært mer riktig for hennes vedkommende. Uansett - koordinatene som angir posisjon fungerer, selv om høyden er litt upålitelig. Vet ikke om GPS-er generelt eller bare iPhone-GPS-en er unøyaktig på høyde?

Detaljert fremgangsmåte

Her er fremgangsmåten jeg brukte:

  • Jeg startet med å stille klokken på kameraet slik at den var på sekundet lik klokket på iPhonen. Absolutt nøyaktighet er viktig dersom en kjører bil, ikke når en står i ro/går til fots, men det skader ikke å være presis. Tidspunktet er nemlig nøkkelen til suksess.
  • GPS-applikasjonen MotionXGPS kjørte (på min iPhone) for å spore hele ruten. Programmet kjører selv om jeg "slår av" telefonens skjerm, og virker bra selv om den er i bukselommen.
  • Tok bilder underveis med Canon 450 EOS. Kameraet vet ingenting om at iPhonen sporer ruten, men siden jeg har begge med meg, er grunnlaget tilstede for å koble riktig sted opp mot riktig bilde i ettertid.
  • MotionXGPS lager en GPX-fil med alle koordinater. GPX er en XML-fil, og du kan se bilde (klikk for stor versjon) til høyre. Denne filen sendte jeg via e-mail til meg selv fra iPhonen når jeg kom hjem, og åpnet filen på Mac-en.
  • Overførte bilder til Mac-en. Disse kommer rett inn i iPhoto. Problemet er at bildene ikke har geo-data knyttet til seg enda. For å løse dette kan en gjøre om slik at ikke iPhoto startes automatisk, og heller overføre til en mappe først via programmet ImageCapture (følger med Mac, lagd av Apple). Eventuelt kan en, som jeg gjorde, importere som vanlig til iPhoto og så eksportere ut bildene, slette dem fra iPhoto, legge inn geo-dataene og så importere igjen. Det høres slitsomt ut, men er gjort i en håndvending. Jeg skulle likevel gjerne sett en løsning som kunne operere direkte på kildefilene i iPhoto for å automatisere prosessen ytterligere. Optimalt sett skulle det vært mulig å importere en GPX-fil inn i iPhoto. Mulig Apple kommer med slik funksjonalitet i en fremtidig oppdatering.
  • For å få riktig geo-informasjon inn i meta-beskrivelsen til hvert bilde (den såkalte Exif-informasjonen) er det lurt å bruke et program som automatiserer jobben. Jeg brukte GPSPhotoLinker (gratis) for å flette inn GPS-informasjonen i Exif-informasjonen i hvert bilde i en batch-jobb (dvs at alt gjøres automatisk i en jafs).
  • Når bildene var geotagget (4 sekunder) så dobbeltsjekket jeg at selve originalfilene faktisk var metatagget ved å åpne i Preview (samme program som viser PDF-filer, dobbeltklikke bildefilen) og så se på informasjon om bildet (Cmd+I). Under Exif-tabben ligger det GPS-informasjon dersom det ble vellykket.
  • I visshet om at bildene nå var beriket med mer meatinformasjon, lastet jeg alle bildene inn i iPhoto og slettet de jeg ikke ville ha. La i tillegg til passende nøkkelord, beskrivelser og titler. For eksempel at "klippfiskdamen" er en "statue". Jeg synes slik manuell tagging har mye for seg og er vel anvendt tid.
  • Bladde gjennom bildene i kartmodus i iPhoto og så hvordan prikken flyttet seg i takt med hvert bilde. Dette funket!
  • Trykket på knappen i iPhoto: "Last opp til Flickr". Forutsetningen er at en har konto på Flickr og denne må settes opp første gang. I tillegg må du på Flickr eksplisitt akseptere geotagging. Dette gjøres i en av innstillingene hvor du tillater at geoinformasjon i Exif vises på Flickr. Utover det er slik deling superenkelt! Resultatet ser du over.

Oppsummert er denne prosessen veldig enkel. Den ser komplisert ut, men alt du trenger å gjøre er egentlig: Slå på GPS-enheten du bruker i sporingsmodus og ta bilder som normalt. Vel hjemme laster du over GPX-filen til datamaskinen. Last over bildene og bruk et program for å koble GPX-filen med bildene, da vil alle bildene geotagges. Last så bildene inn i bildeprogrammet du bruker.

iPhoto + Flickr

Når det gjelder Flickr, så observerer jeg med glede at alle nøkkelord, beskrivelser, titler jeg skriver inn i iPhoto, ikke bare lastes opp til Flickr, men også omvendt! Hvis jeg endrer noe på Flickr, så endres det tilsvarende i iPhoto på Mac-en. Internett og Mac-en er altså i synk. Kun jeg kan endre på mine bilder. Alle andre kan derimot se. Jeg bestemmer selv hvilke bilder jeg deler via Internett. Genialt, enkelt og ikke minst morsomt!

Hva er for øvrig min motivasjon for å få til å geotagge mest mulig? Med iPhoto 09 (Mac) som har innebygget støtte for geotaggede bilder, kan en søke på et stedsnavn og så få ut alle bilder som er tatt på dette stedet. Jeg har tidligere tagget noen bilder med steder som "hjemme", "Trondheim" og så videre, men du verden hvor tidkrevende dette er, og det går bare å gjøre dette på noen få utvalgte steder. Med geotagging gjøres det for alle steder, automatisk. Det samme gjelder for øvrig iPhoto sin nye ansiktsgjenkjenning som behjelper jobben med å tagge ansikter betraktelig. Før gjorde jeg også dette manuelt for noen utvalgte personer. Nå finner iPhoto alle ansikter automatisk. Det jeg fortsatt gjør manuelt, er å tagge gode (men bare gode) bilder med informasjon som "fjell", "sol", "natt", "severdighet" og så videre. I sum gjør taggingen min og den automatiske geotaggingen det mulig å lett filtrere ut gode bilder av "Ole" som er tatt i "England" i nærheten av en "severdighet", for eksempel - da er det bare å lage et smart album/søk som har som kriterium både "Ole" og "England" som geotagget informasjon og "severdighet" (som tagg jeg selv har lagt inn). Dette gir mening når en har 10.000 bilder, og det er også morsomt å se bilder på nye måter. En kan slik lage temaserier, for eksempel "engelske broer" eller "norske vinduer". Geotagging gir grunnlag for langt mer enn å bare se hvor på et kart et bilde ble tatt! Jeg har forresten skrevet om smart tagging før, og det kan være verdt å lese.

Har du noen tips til andre ting en kan bruke geotaggede bilder til? Hvilke muligheter åpner seg?

Fins det bedre løsninger?

Jeg slo av visning av kartdata i programmet MotionXGPS for det er ikke noen vits i å bruke Internett-tilkobling under sporingen. Derfor vises bare en hvit kartbakgrunn på bildene under. Kartvisning kan slås på om en trenger å se veier og liknende under selve sporingen. Har du erfaring med andre GPS-sporeprogrammer på iPhone enn MotionXGPS, som du heller vil anbefale?

Programmet MotionXGPS i sporingsmodus.

Min observasjon er at det ikke er helt gunstig å bruke iPhone som GPS på lengre turer, fordi det krever mye batteri. I tillegg blir iPhonen liksom opptatt med GPS-sporing i stedet for å kunne være iPhone fullt ut (kan ikke plutselig ta fram kalenderen, ringe noen etc). Har du tips til en mer egnet GPS-enhet for bruk sammen med kameraer? Lett vekt er viktig for meg, og det er ikke nødvendig med skjerm (fordi skjerm gjør den unødvendig tung og batterikrevende). Altså søker jeg etter en dings for å ha i sekken, og som kun skal logge hvor jeg er og etterpå overføre loggen som GPX-fil til Mac-en. Jeg vet at slike enheter fins, men skulle gjerne hatt konkrete erfaringer og tips til hva som fungerer bra i praksis.

26. mars 2009

todo-tipset i it´s learning

Her er et tips som fungerer utrolig bra for min egen del, i min undervisningssituasjon. Kort fortalt mangler læreren et viktig redskap i it´s learning, nemlig en todo-liste. Jeg presenterer her en metodikk/opplegg som kan brukes for å spare tid og sette fokus på faglig utviklingsarbeid og veiledning, i stedet for administrativt rutinearbeid. Først får du lese om bakgrunnen, så kan du se en video som demonstrerer todo-listesystemet. Enjoy!

Et problem med LMS er at administrative og pedagogiske oppgaver tar tid for læreren. Det er slitsomt å holde orden og vite hva en skal gjøre til enhver tid, hvor det en skal gjenbruke er, og så videre. Her om dagen fikk jeg bekreftet at det ikke bare er jeg som sliter med at digitale undervisningsaktiviteter tar tid. Som en kursdeltaker sa: "når skal vi få tid til å gjøre alt dette? Gjenbruk er jo ikke så enkelt i praksis" (kurs om bruk av it´s learning i undervisningen, på Steinkjer).

Alle snakker om gjenbruk, men hvordan gjenbruke i praksis? Jeg har funnet løsningen for min egen del, og tror flere kan ha nytte av dette. Jeg tar utgangspunkt i egne fag - hvor jeg bruker it´s learning som utgangspunkt for aktiviteter (det være seg via innebygde verktøy i it´s learning og Web 2.0-tjenester). Hvert semester får jeg (automatisk) et nytt, tomt fagrom. Jeg starter med å kopiere alt fra forrige semester faget ble kjørt, og setter alle elementer inaktive. Tanken er å gjenbruke ved å aktivere elementene gradvis. Dette fungerer greit for innhold (mapper med lærestoff og øvinger og tester), men det fungerer dårlig med tanke på diskusjonsforum og informasjon og en del andre ting. Det blir så mye klikking, og enormt mye tid går med til å lete etter hva jeg skal gjøre når, hvor den informasjonen jeg skal gjenbruke ligger, og så videre. For å lage en god løsning, startet jeg med å identifisere noen egenskaper for fagene mine:

  • Forumene fra forrige semester kan ha nyttig informasjon, gode svar som jeg kan ha bruk for, men ikke nødvendigvis.
  • Jeg starter alltid mine fag med å skrive en velkomsthilsen på oppslagstavlen. Fort gjort, men det går litt tid på å formulere en god melding som har med alt jeg bør informere om. Dersom jeg slettet oppslaget i forrige semester, må jeg skrive på nytt. Hvis jeg deaktiverte, kan jeg lete i det gamle faget og klippe ut teksten. Det tar tid.
  • Mitt nye fag skal ha et forum for presentasjoner (evt. en tråd i det generelle forumet). For å få aktivitet må jeg skrive et startinnlegg hvor jeg presenterer meg selv og instruerer dem om hva de skal gjøre.
  • En del foruminnlegg egner seg godt i tilknytning til bestemte faglige tema/blokker. Når jeg er kommet til tema 7, må jeg lete gjennom det gamle forumet etter innlegg som egner seg. Jeg finner som regel disse etter litt leting og kan da klippe/lime.
  • Mange aktiviteter ligger i mapper der de naturlig skjer. Disse er det ikke noe stress med, de ligger der, inaktive, og er bare å aktivere. Likevel kan det være nødvendig å minne studentene på om viktige aktiviteter (tester, undersøkelser, frister, obligatoriske aktiviteter) i det generelle forumet eller som melding/oppslag. Jeg må tenke aktivt gjennom hver uke om det er noe som må varsles fra om eller ikke.

Dette er da ikke noe problem, kan en tenke. All informasjonen ligger jo der, digitalt, klar til å bli gjenbrukt. En lærer må jo ha oversikt - selv om en har 4-7 fag hvert semester å holde styr på. Joda, men det er sikkert ikke bare jeg som spør meg hver uke: Hva skal gjøres når, og nøyaktig hvor ligger det? Det er en del leting og unødvendig administrasjon knyttet til alle punktene over. Jeg trenger et redskap. Jeg trenger en liste. Jeg trenger en todo-liste (gjøremålsliste). Hvor er denne? Hvorfor er det ikke et todo-verktøy i it´s learning? Hjeeeelp, jeg må ha en slik, men det fins ikke!

Jeg har prøvd ymse strategier, men først nå i januar oppdaget jeg den løsningen som for meg er optimal. Jeg må rett og slett selv lage meg en gjennomtenkt og funksjonell todo-liste - i it´s learning! Etter litt prøving, feiling og justeringer, har jeg kommet fram til et opplegg som fungerer helt utmerket for min bruk, og jeg tipper at det vil fungere tilsvarende bra for veldig mange lærere. For å forklare, lagde jeg rett og slett en film av todo-listen. Her er løsningen min (se gjerne i fullskjerm for maks kvalitet)

Trikset har virkelig gjort meg mer effektiv og sikrer at jeg gjør det jeg skal til riktig tid, ikke glemmer viktige ting, kan gjenbruke ting effektivt, og frigjør tid til faglig utvikling i stedet for administrative rutineoppgaver. Jeg merker at jeg har endret praksis på alt jeg gjør av faglig aktivitet som følge av innføringen av todo-listesystemet i mine fag. Dersom jeg tror at nye ting jeg lager kan gjenbrukes, legger jeg umiddelbart en generell versjon inn i todo-listen. Dermed ligger det klart til neste semester, og jeg har fått det ut av tankene - som en bør vekk fra skuldrene! Siden alle undersøkelser og forum fra tidligere semestre er kopiert inn i "Gamle..."-mappene, er informasjonen lett tilgjengelig ved behov. Akkumulering av stadig flere aktiviteter i todo-listen kan være et mål, men en må selvsagt også vurdere hvorvidt det en gjør virkelig egner seg. Spørreundersøkelser kan gi nyttige svar på dette.

Nå spørs det om du er enig i at dette med en slik todo-metodikk var et bra tips? Det har jo bare med administrasjon å gjøre, hva er det innovative i det? En skal ikke kimse av slike administrative triks og beste praksiser. Ved å frigjøre tid som ellers måtte gå til administrativt dummy-arbeid, får en tid til å utvikle nye faglige ting, opplegg etc. Line Kolås har skrevet et paper om nettopp dette: Gjenbruk - for da frigjør du tid til å lage nye aktiviteter og mer lærestoff. Jo mer du lager, jo flere ulike læringsstiler kan du imøtekomme. Når administrative rutineoppgaver ikke lenger blir noe tema, frigjøres også krefter og lyst til å lage nye ting. Hva tror du?

21. mars 2009

Observasjoner fra en forfatter

Før og etter jul har jeg brukt mye tid på å lage ny 3. utgave av "Webprogrammering i PHP" (http://phpbok.no). Det var en lang, men lærerik prosess sammen med Gyldendal. Det er slitsomt å komme i gang, for det er et aldri så lite fjell å bestige. Hva innebærer prosessen med å skrive bok, og vedlikeholde den i ettertid? Hvordan kommunisere korrekturfeil på en effektiv måte? Fins det tips og triks for å skrive bedre norsk?

Disclaimer: Dette blogginnlegget kan inneholde grammatiske feil. I en eventuell 2. utgave av dette blogginnlegget vil trolig korrekturleseren ha oppdaget de fleste, og språket være ytterligere perfeksjonert.

STEG 0. Snart tomt for bøker:

Gyldendal følger med i timen og varsler fra når det nærmer seg tomme lagerhyller. Det er da, så vidt jeg har skjønt det, tre valg:

  • Trykk opp på nytt, men nytt opplag (jeg må endre teksten på kolofonsidene først i boka om trykkeri, ISBN-nr etc)
  • Trykk opp på nytt, men som ny utgave (jeg må gjøre litt større endringer som gjør at sidetall forskyves og tekst byttes ut)
  • Levetiden er over, salget er for dårlig og boka fjernes fra sortementet

For min del var det alternativ to som slo til. Ny utgave, masse jobb og bare å bygge seg mentalt opp. Det er lurt å få en endelig sluttdato, og det er lurt å starte i god tid før denne sluttdatoen (men lett er det ikke).

STEG 1. Installasjon av programvare:

Før du får gjort noe som helst med skriveprosessen, må skriveprogramvaren installeres og fungere som det skal. Adobe FrameMaker brukes av forfattere hos Gyldendal/TISIP. Det er et enormt stabilt program som støtter 100 % godt opp om skriveprosessen, men et problem for mange er at bruksterskelen er noe høyere enn Word. Manglende fonter (skrifttyper) kan også være et problem, men jeg har alt i en mappe: Programvare, fonter, kildefilene til boka og også hjelpeinstruksjoner jeg selv lagde tilbake i 2004 da boka ble skrevet første gang. Det var noen år siden sist jeg lærte meg FrameMaker. Jeg ble overrumplet av mine egne fingre som automagisk gjorde noen hurtigtast-kommando-kombinasjoner, og vips, var stilen "2 punkts dummy" satt inn over en ny figur - akkurat slik den skulle i henhold til den profesjonelle Gyldendal-malen. Boka består av 14 kapitler, og hvert kapittel er lagret som én fil. Alle bilder og figurer er for øvrig lenket inn i hver kapittelfil. Figurer med piler, bokser og liknende er laget i Microsoft Powerpoint, og som følge av lenkingen er det bare å dobbeltklikke på en figur, så spretter Powerpoint opp og jeg kan endre figuren som ønsket, lagre, og alt er oppdatert i boka. Heldigvis slapp jeg unna feil i selve FrameMaker-oppsettet.

STEG 2. Planlegge endringer:

Jeg har samlet kommentarer både fra tilbakemeldinger (skjema på websidene mine), fra lærere rundt om i landet som bruker boka i undervisning, og som jeg har pønsket ut selv. Jeg lagde meg en gjøremålsliste som et eget dokument. Denne ble to A4-sider lang. Jeg har aldri helt skjønt vitsen med funksjonen "gjennomstreking" i vanlige tekstbehandlere, men nå fikk den mening: strek gjennom ting etterhvert som de gjøres, for da ser jeg hva som er gjort. Det er også motivasjon i dette. Endringene mine var i grove trekk:

  • Oppdatere installasjonsrutinene for hvordan PHP, MySQL og Apache installeres.
  • Endre all HTML-kode til XHTML-form. Det skulle vært gjort fra starten av, men er i hvertfall på plass nå.
  • Fjerne stoffet om register_globals.
  • Ta med litt mer om MySQLi.
  • Rette feil.

Todo-listen er vist i figuren under og gir et visst inntrykk av hva en slik ny utgave kan innebære av arbeidsoppgaver.

STEG 3. Ta inn over seg ikke-planlagte endringer:

Deretter viste det seg at det var behov for en ny korrekturrunde, da "et par kommaleifer" i de forutgående versjonene var oppdaget på tross av en grundig vask i 2004. Begrepet "et par" kan bety "2" (dette visste jeg) men også "1500" (det vet jeg nå). Med mellom 3-5 kommafeil per side i snitt, og 400 sider totalt i boka, er det ikke overdrevent å si at det var minst 1500 kommafeil som måtte rettes ...

STEG 4: Just do it:

1500 kommafeil og ymse skrivefeil... For en jobb! Den beste metodikken når du er kommet så langt, er "just do it". Sett i gang, og det går gradvis fremover.

STEG 5: Lær deg å lese korrekturspråket:

Jeg vil påstå at jeg behersker følgende språk: Norsk, nynorsk, engelsk, tysk, fransk og korrektur. Korrekturspråket er trolig ukjent for de fleste. Det har en spennende syntaks og er et språk som kan læres relativt lett. Jeg lærte det av meg selv, mens jeg leste, ved å tenke meg til hva som var riktig og hva som var galt. Tegnene er snedige, men de er faktisk ganske smarte. La oss gå gjennom anmerkningene i figuren under for å forklare hvordan profesjonelle korrekturlesere formidler sine funn til forfatterne:

I rekkefølge ser vi følgende kommunikasjon fra korrekturleseren uti margen til høyre:

  • fjern kommaet
  • komma etter "r"
  • komma etter "8"
  • slå sammen e og s og sett bindestrek mellom
  • fjern kommaet
  • komma etter "n"
  • punktum etter "g"
  • fjern komma etter "dagen"
  • komma etter "h"

Legg merke til hvordan korrekturleseren på en kompakt, presis og unison måte klarer å formidle hva som er feil og hvordan det kan rettes opp. Det er altså tegn for å slå sammen bokstaver, koder for å legge til og for å slette. En uerfaren skribent kan tro at det er forskjell på andre og tredje kommafeil (ref listen over og i figuren), men det at vinkeltegnet foran "r," og "8," går ulik vei, har faktisk bare å gjøre med at korrekturleseren har behov for å skille de to fra hverandre. Det er her snakk om samme type feil, men likevel to instrukser. Det blir viktig å knytte instruksene til riktig feil i tilfelle det er forskjellig type feil i nær avstand. Videre har jeg funnet ut at det krøllete tegnet visstnok står for "delur", eller var det "delatur", som uansett betyr å slette (nesten som delete på datamaskinen).

STEG 6: Skjerp deg til neste gang:

Det er gunstig for egenmotivasjonen å betrakte korrekturleserens tilbakemeldinger som noe positivt, for eksempel "mulighet for læring". Jeg har unektelig lært en hel del av korrekturen og håper nå å aldri se en kommafeil og andre flaue formularer igjen i mine kommende produksjoner. I god delingsånd avsløres noen av mine tips og triks som kan være til nytte for alle som skriver bøker eller andre mer seriøse tekster:

  • Kommaet skal med stor sannsynlighet være stikk motsatt av det du selv tror. (Hvis du bytter om, så er det antakeligvis stikk motsatt da også, så det er kanskje like greit å gi opp først som sist :-)
  • Husk at det ikke skal være komma foran ordet "og". Bare av og til. Plasser derfor et komma foran "og" med jevne mellomrom, men ikke overdriv.
  • Jeg bruker trolig orddeling med binde-strek altfor mye i mine skriblerier. Et ord som "sekund-delen" skal ikke deles, har jeg erfart, men for å forsvare meg selv tror jeg at jeg tenderer mot å dele ord som jeg selv legger inn pause i når jeg uttaler det muntlig. Mulig det er fordi jeg er nordlending at det blir pause når jeg sier "sekund-delen" muntlig? Altså at palataliseringseffekten slår ut i slutten av "sekund" og dermed ødelegger noe? For å gjøre det hele mer komplisert, skal ord som hash-funksjon vitterlig deles med bindestrek. Det er mulig at dette skyldes at de uttaler slike ord nokså "tregt" nedpå Østlandet ;-)
  • Ordet "automagisk" passerte heldigvis språkvasken også i denne korrekturrunden! Jeg antar det er fordi Gyldendal har innlemmet ordet i sitt vokabular etter at det med viten og vilje ble snik-innført i min 1.utgave (eller skal det være "snikinnført"?)
  • "Webprogrammering i PHP" er ei bok om programmering, mer nøyaktig om å lage dynamiske og interaktive, solide websider/systemer. Boka har mange eksempler på programkode som forklares og drøftes i teksten. Språkvaskeren (som for øvrig var meget dyktig) - gikk grundig til verks og rettet språkleifer i selve programkoden! Det er ikke bare imponerende, men viser også at webprogrammering er i ferd med å ta av og når ut til stadig nye målgrupper (nå også korrekturlesere). Fra spøk til alvor: Problemet er bare at disse leifene også reflekteres i skjermbildene mine. Hvis en kodesnutt har kode for å oppsummere valgt flyreise etter en flybestilling, og jeg i output-teksten har skriveleifer - så hjelper det lite å rette feilene i programkoden fordi da må jeg også ta nytt bilde av skjermen/websiden. Det må være samsvar mellom figurene og programkoden. Grammatiske feil i koden er altså ikke-trivielle å rette. Skjermbilder må nemlig lagres som TIFF og behandles i Photoshop slik at de får riktig fargerom - noe jeg husket lite av fra 2004. Resultat: Programkoden i boka er visse steder preget av programmeringslærer-norsk, mens teksten i boka bærer form av norsklærer-norsk.
  • Det å "gjentegne" er ikke noe ord. Når jeg nå ser at det står alene, og ikke i kontekst, er jeg faktisk ganske enig. Hva skulle vel "gjentegne" bety? Hmmmm.
  • Vær konsekvent. Når korrekturleseren (eller du) oppdager et ord som er feil, så søk gjerne opp alle forekomster av dette ordet og erstatt først som sist. Ikke fall for fristelsen å kjøre så effektivt som mulig ved å velge "erstatt alle". Det kan få uforutsette konsekvenser hvor du mister tekst eller får nye rare ord som resultat. Jeg prøvde denne snarveien uten å tenke på endelser som ville bli feil, og resultatet ble at jeg fikk 3 timers ekstra ryddejobb. Småkjedelig, men en fin erfaring.
  • Jeg lukter forresten at hele denne punktlisten trolig vil måtte omskrives med tanke på orddeling, kommaets plassering og tungt språk hvis en korrekturleser får snus i den :-)

STEG 7: Lag ordliste over dine terminologiske uvaner underveis:

Dine feil er deg allerede tilgitt, men du har samtidig en gyllen mulighet til å unngå å falle tilbake til gamle synder. Vil du skrive godt i alle sammenhenger, bør du vende gamle vaner først som sist. Her er mine vanligste feil som jeg heretter skal prøve å få riktig i all skriftlig kommunikasjon:

Punktlisten tar formen: Det heter ikke ... men ...

  • anderledes ... annerledes
  • etterhvert ... etter hvert
  • adskilt ... atskilt
  • syv ... sju
  • inni ... inne i
En korrekturleser har allerede fått snusen i dette blogginnlegget før det er publisert, og skriveprosessen avbrytes derfor av en il-melding fra Gyldendal med følgende opplysning: Syv/sju og inne i /inni representerer valgfrie former. Har man først valgt den ene formen, bør den gjennomføres konsekvent. Ok, da forstår jeg og er faktisk litt lettet. La oss fortsette listen:
  • forklaring til ... forklaring på
  • mulighet til ... mulighet for
  • tilslutt ... til slutt (ok, den kjøper jeg)
  • i det ... idet (noe skjer)
  • forståelse for ... forståelse av
  • ettersom ... etter som
  • tungvindt ... tungvinn
Hepp, hepp, hepp... Ikke så fort nå! Ny oppklaring fra Gyldendal: Forståelse for / forståelse av er begge gangbare uttrykk, men de betyr forskjellige ting. Forståelse for uttrykker gjerne en slags empati, mens forståelse av gjerne brukes i betydningen ”oppfatte/skjønne” Det samme gjelder ettersom (= da/siden) og etter som (= etter hvert som). Tungvinn brukes når det står til et hankjønnsord; tungvint når det står til intetkjønn. Observasjon til deg som leser fra meg: La du merke til den elegante bruken av semikolon fra Gyldendal her?!! La oss fullføre listen:
  • potensiale ... potensial
  • tvert i mot ... tvert imot
  • priviligert ... privilegert (den er vrien og jeg tipper at de fleste skriver dette ordet feil. Tenk på "et privilegium")

Siden jeg har skrevet bok om webprogrammering, tenker jeg umiddelbart at jeg ikke bør skrive en slik ordliste på papir og heller ikke i et digitalt dokument. Jeg bør rett og slett lage en database og et tilhørende web-grensesnitt hvor brukeren kan legge inn ord som staves feil i ett tekstfelt, og ordets riktige form i neste tekstfelt. Dette var en god idé! Søk etter ord er en viktig funksjonalitet å lage. Systemet kan utvides med flere brukere, og da bør innlogging på plass og validering av inngangsdata for å unngå hacking er et must. Fordelen med å tillate flere brukere i et slikt system, er at da kan en dele ord med andre, se på andres ordlister, stjernemerke favorittord, bli venner med andre som har samme ord på sin liste, og så videre. Hmmmm, dette skal jeg gjøre - det blir jo en slags Facebook for språkinteresserte, og det er meget lett å realisere når en kan PHP!
Nei, forresten, dette blir vel for nerdete! Nå tar jeg helt av og bør heller prioritere det som må gjøres av forsømte oppgaver fremover. Men kanskje du som leser boka vil lage et slikt system? I så fall vil jeg gjerne registrere meg som bruker!

STEG 8: Puh, endelig ferdig ...

... eller bare nesten. Du er riktignok ferdig med bokskrivingen, men får skriveabstinenser og har et par timer senere skrevet et lengre blogginnlegg om prosessen.

STEG 9: Blogginnlegg publiseres:

Av gammel vane sendte du blogginnlegget til Gyldendal for korrekturlesing. Det kommer i retur med et par anmerkninger, og først nå kan du publisere det.

STEG 10: Etterarbeid:

Det meste begynner på 0 i programmering (indeksverdier i arrays/tabeller/matriser for eksempel). Den oppmerksomme leser ser at også denne listen starter på 0, så dette er faktisk det ellevte steget. Selv om en tilsynelatende er ferdig, vil forfatteren gå inn i en langtekkelig fase der neste utgave av boka planlegges mentalt, gradvis. Tanker modnes og en følger jevnlig med på utviklingen av fagfeltet på jakt etter nye ting som må oppdateres. Ambisjonen om å skrive noe bonusmateriell og lage noen filmklipp som legges ut på bokas ressursside (http://phpbok.no/) skal realiseres, men bare ikke akkurat nå. Kanskje i morgen.

Slik var altså min bokprosess. Jeg kan dessverre ikke garantere mot verken kommafeil eller orddelingsregelbrudd i dette innlegget, men håper det var litt nyttig å få vite hva som kreves av vedlikehold i forbindelse med en bokutgivelse. Vil du skrive bok, så er oppfordringen min: Gjør det! Du lærer enormt mye både faglig, av skriveprosessen og av kommunikasjonen med forlaget. Det tar tid, men du kan søke om stipend (jeg fikk ikke) eller kanskje få aksept av en oppegående arbeidsgiver om at det er nødvendig med sammenhengende tid til å skrive (det fikk jeg). Du vil aldri angre, så ikke nøl, og lykke til!

5. mars 2009

Gode passord

Spotify er blitt hacket. Dette er meget alvorlig fordi mange bruker samme brukernavn/passord flere steder på web. Det er lurt å bytte passord hos Spotify (gjelder de som laget konto før 19.des 2008). Jobben blir tidkrevende fordi du også bør bytte alle andre steder hvor du har brukt samme passord. Hendelsen understreker også hvor sårbare vi blir når vi legger våre data på web, og stoler blindt på systemene. Dette blogginnlegget vil ta opp litt mer i dybden om passord. Jeg har tidligere skrevet en veileder om passord men den tror jeg ikke så mange har oppdaget, så derfor har jeg tatt en del av teksten derfra i dette blogginnlegget.

Mange passord er ikke sikre nok

Bruce Schneier er en guru på sikkerhet og det månedlige nyhetsbrevet hans Crypto-Gram anbefales på det sterkeste. Han skriver ofte om folks forhold til sikkerhet. Mange tror for eksempel at det er lurt å erstatte teksten -en på slutten av et passord med et 1-tall, men det er ikke godt nok. Passord-knekke-programvare prøver slike substitutter. Schneier skriver blant annet (et stykke ned i artikkelen) at bare ved å ta 1000 vanlige ord som "password", "1234" og liknende, og så kombinere med 100 vanlige endelser som "1", "@", "4u", årstall og så videre, vil en finne 24 % av alle passord (i følge hans studier). Et program kan gjøre dette lynraskt.

Hvordan lage gode passord?

Hvordan skal en så tenke angående sine passord? Jeg har ikke nødvendigvis noen fasit, men her er noen tips til hva du kan tenke på i valget av passord, og noen eksempler på slike. Egenskaper ved et godt passord:

  • Lett å huske. Du bør ikke skrive opp passordet noen steder.
  • Lett/raskt å skrive. Det reduserer sannsynligheten for at noen ser over skulderen din hva passordet er.
  • Ha minst ett siffer i seg. Unngå bare sifre, eller å repetere enkelte tegn for mange ganger. Da blir oppgaven å knekke passordet lettere.
  • Bestå av minst 8 tegn, gjerne flere, og helst en miks mellom store, små, sifre og spesialtegn.
  • Byttes regelmessig. Hva som er regelmessig er relativt. Byttes det for ofte, medfører det at passordene går i surr, og folk starter å skrive ned passordene - noe som er dødssynd nummer én.
  • Ikke inneholde vanlige ord som fins i ordlister.
  • Unngå enhver form for informasjon som kan knyttes til deg, for det er gjerne det første som en angriper forsøker seg på. Deler av navnet ditt + familie, fødselsdatoer, adresser, telefonnumre, brukernavn og liknende må unngås. Det hjelper ikke om du staver baklengs, med store/små bokstaver, dobbelt opp og andre basisteknikker.

Det kan synes vanskelig å oppfylle kriteriene fra forrige punktliste. Hvordan skal du gå fram for å lage et godt nok passord? Her er noen tips:

Tips 1: For å få mer enn 8 tegn, så tenk i form av setninger. Slike husker du mye lettere enn tilfeldige tegn og de kan gi tilnærmet like gode passord. Du kan stokke om på setninger, kombinere strofer fra to sanger, ta en bestemt bokstav fra hvert ord i setningen, eller liknende. En ofte brukt teknikk er å velge første bokstav fra en kjent sang, et dikt eller en setning du selv lager. "Det snør, det snør - tiddelibom sa Ole Brumm" kan da gi passordet Ds,ds-tsOB. Legg merke til at komma brukes i passordet. Det er ikke bare lov, men gjør det til et bedre passord. Passordet er dessuten lett å huske og består tilsynelatende av tilfeldig valgte tegn.

Tips 2: En annen teknikk er å slå sammen to eller flere ord, og så knytte disse sammen med et eller flere spesialtegn. Hvis du ser på passordet tull-geit:house finner du en blanding av engelske og norske ord. Det er også lett å huske, lett å skrive, har 15 tegn, men bare små bokstaver, og ingen sifre. Likevel et sterkt passord

Tips 3: Passordet Berg1 er en fin by 03 har 21 tegn, og det er mer enn nok. Det er lett å huske og lett å skrive, og har spesialtegn (mellomrom), store og små bokstaver og sifre. En kan også sette opp slik at dette passordet gjelder for mars måned (nr 03 tilsvarer mars). Når april kommer, og du logger inn, vil du fort oppdage at du skriver inn 03. Slik får du automagisk en påminnelse om at det er på tide å bytte passord. Det enkleste er å bytte til "Berg1 er en fin by 04", men det skader ikke å være mer kreativ. Det er sunt å bytte hele passordet. Hvis du heller vil bytte hvert år, så bruk 09 for 2009, 00 for 2010, 11 for 2011 og så videre.

Tips 4:La oss se på en litt mer avansert konstruksjon: Berg1 by@Vestland1.no. Her kombinererer du ting som naturlig hører sammen (evt. som du later som at hører sammen). Bergen ligger på Vestlandet i Norge (no). Det er likevel nesten umulig å gjette et slikt passord, skjønt veldig lett å huske for deg. Oppbygningen som en e-postadresse fører til at du får brukt flere spesialtegn, og gjør det lett å huske, siden @ kan leses som engelske "at". Dermed betyr altså ola@adresse.no det at ola hører til hos (at) adresse.no. Denne tankemåten kan du bruke til å lettere bygge opp gode passord.

Tips 5: Det kan bli en utfordring dersom du har mange ulike passord. En god regel er å ikke bruke samme passord på mange steder, fordi dersom passordet ditt blir kompromittert (dvs at andre får tak i det) på ett sted, kan det brukes til å logge inn på andre steder. Det kan være lurt å benytte kategorier med middels, sikkert og meget sikkert nivå på passordene dine. Da trenger du tre passord å holde styr på, og hvis ett passord avsløres (som nå var tilfelle med Spotify) trenger du ikke endre mer enn de tjenestene som er på samme sikkerhetsnivå.

Alternativt kan du ha ett passord for hvert eneste sted du skal logge inn på:

  • arbeidRliv1@work.yes - brukes på jobben. Arbeid er livet for mange. En slik setning gir store og små bokstaver til dette passordet. R kan leses "er" og 1 kan leses "et". Med andre ord: Lett å huske og teknisk sett et sterkt passord.
  • famili1Rliv1@home.jippi - brukes på hjemmemaskinen. Familien er viktig. Lett å huske.

Et passord er mer enn bare passordstyrken

Passordets styrke er bare en liten del av sikkerheten knyttet til et passord. Tenk over viktigheten av følgende:

  • Del aldri ut passordet til andre, og må du det, så bytt det etterpå (selv familiemedlemmer).
  • Tenk over hvor og hvordan du bruker passordene dine. Ser noen over skulderen din? Går det an å lese på leppene dine hva du skriver? (hvor mange sier vel ikke pinkoden inni seg ved betaling med VISA i butikken... :-)
  • Memorer passordet, ikke skriv det opp. Skriv eventuelt opp tilstrekkelig informasjon til at du, og bare du, klarer å resonnere deg fram til riktig passord.
  • Kategoriser de passord du har. Det beste er å ha unike passord for hvert system. Dersom du har mange, kan du dele inn i kategorier for grad av sikkerhet, for eksempel "viktig", "middels" og "usikkert". Du kan for eksempel klassifisere slik at passord relatert til jobben, brukes også i nettbank (siden begge er viktige systemer som bare du skal ha tilgang til). For å logge inn på din brukerkonto hos diverse Internettjenester som Facebook, Twitter, bloggen din, gmail/hotmail, etc. bruker du passord fra en annen kategori.
  • Ringer noen til deg og spør om passordet ditt, med begrunnelse i at de er IT-personell som må sjekke opp diverse ting? Sannsynligheten for at du blir utsatt for "Social Engineering" er stor. Dvs noen som prøver å lure deg til å oppgi passordet ditt.
  • Passord skal byttes regelmessig. Et problem er å komme på passord, noe helt annet er å vite hvordan en faktisk kan få utført skiftet. Enhver virksomhet/bedrift/institusjon bør ha en sikkerhetspolicy og/eller veiledere som forklarer hva som må til for å bytte passord på for eksempel e-post, ansatt-PC, felles dataområder, nøkkelkort og liknende. I tillegg har du mange egendefinerte steder hvor du bruker passord. Det kan være lurt å notere seg disse stedene, og fremgangsmåte for å bytte (hvis det er vanskelig å huske). Prøv å skrive slike ting på en slik måte at ikke uvedkommende forstår informasjonen.
  • Hvor skriver du inn passordet ditt (i hvilke systemer)? Har du klikket på en lenke i en e-post eller på en hjemmeside du ikke kan si 100% at du vil stole på? Du kan bli utsatt for phishing, en form for "Social Engineering" hvor noen prøver å lure deg til et falskt nettsted. Den som har laget det falske nettstedet ønsker å "fiske til seg" passord og opplysninger som han/hun egentlig ikke skal ha. Dersom du prøver å logge inn på det falske nettstedet (i god tro), vil personen som lagde det falske nettstedet ha mottatt denne informasjonen og vil kunne bruke den på det ekte nettstedet, og slik klare å logge inn, identifisert som deg. Fiskes ditt e-postpassord opp, kan den andre lese e-posten din. Fiskes ditt nettbank-passord opp, kan du tape penger. Phishing er ekstra skummelt dersom du bruker det samme passordet ditt flere steder. I så fall kan "en uskyldig surfetur (du klikker på lenke i phishing-angreps-e-post) ende i en stor fisketur hvor angriperen får notet fullt av mange fisker".

Mer om passord

Jeg har laget en liten passordgenerator i programmeringsspråket PHP hvor du kan få generert forslag til et passord ved å skrive inn navnet ditt. Ikke verdens beste løsning, men småmorsomt. Det er for øvrig ikke noe hemmelig som skjer bak kulissene, ingen loggføring og ingen lagring av det som skrives inn, så det er bare å leke seg!

Hvis du lurer på hvor sterkt et passord er, så kan du teste det hos svenske Post og Telestyrelsen (PTS). Merk: SSL brukes i det du skal skrive inn selve passordet ditt. Du kan dermed være trygg på at ingen avlytter linjen og snapper opp de passord du vil analysere. Vær kritisk ved bruk av slike webbaserte verktøy, fordi det kan jo være "slemme" personer som har laget tjenesten og bare ønsker å snappe opp alle passord som skrives inn. PTS i Sverige er nok en rimelig seriøs og trygg aktør.

Hvilken strategi bruker du for å lage passord?

3. mars 2009

Noen finurlige mac-snarveier

Her er noen småfinurlige, men dog nyttige snarveier for Mac-brukere:

  • CTRL+F3: Aktiverer Dock, kan bla med piltastene eller skrive bokstav på program som en vil åpne
  • CTRL+F2: Aktivere menylinjen i toppen
  • Cmd+Alt+w: Lukk alle vinduer i gjeldende applikasjon
  • Cmd+Shift+m: Minimér alle vinduer
  • Ctrl+Alt+Eple+8: Inverter skjermfarger
  • Ctrl+Shift+Eject-tasten: Gjør skjermen helt svart, umiddelbart

Litt uten mål og mening, disse tipsene, men flere triks kommer senere og jeg skal også rydde opp snart og lage et stor-innlegg med alle tipsene. Har du for øvrig noen finurlige triks på lur?