Tyrfing

Kong Svarflame henter sverdet Tyrfing fra Durin og Dvalin. Dramatisk gjengivelse.
Kong Svarflame henter sverdet Tyrfing fra Durin og Dvalin. Dramatisk gjengivelse.

Tyrfing er et magisk sverd smidd av dvergene Dvalin og Durin. Altså ikke dvergene fra Hobbiten, men fra den norrøne diktningen (som Tolkien forøvrig var veldig inspirert av). Det er antagelivis få som vet at Tyrfing er navnet på et sverd, men før nå visste ingen at det også er navnet på en nettapplikasjon vi har utviklet i forbindelse med faget INF219 (Informatikkprosjekt I).

Navnet Tyrfing kommer helt ærlig av fem minutter med desperat søking på Google etter ett seriøst navn på programmet vi utviklet. Veilederne våre mente at det midlertidige navnet «UiB supersøk» ikke var bra nok. Det var ingen av oss på prosjektet som hadde hatt noen fag som kunne hjelpe oss i navngivingsprosessen. Det var heller ingen av oss som hadde hatt noen emner om norrøn mytologi. Om det hadde vært tilfellet, hadde vi kanskje visst nok om Tyrfing til å vite at sverdet også er forbannet og vil forårsake tre store ugjerninger. Vi skulle kanskje brukt mer enn fem minutter på Google allikevel.

Men bloggposten skal ikke handle om norrøn mytologi, den skal handle om hvorfor ingen på gruppen har hatt tatt emner hvor vi kunne lært mer om norrøn historie.

I vårt prosjekt ville vi gjøre det mulig for studenter å søke blant emnene UiB tilbyr, og samtidig se om timeplanen for fagene kolliderer.  Vi har tatt inspirasjon av to tidligere INF219-prosjekter «Kvast» og «Emnesjekkeren» utviklet av henholdsvis Kjetil Golid og Kristian Nøstdal, og Thomas Lie. Kvast har gjort det lettere for studenter å søke etter og finne informasjon om emner ved UiB. «Emnesjekkeren» har gjort det mulig for studenter å fort se om emner kolliderer. Vår store plan var å kombinere tankene bak både «Kvast» og «Emnesjekkeren» slik at man fikk en mer helhetlig tjeneste. Vi kan starte med å se på hvorfor en slik tjeneste har livets rett.

Jeg ønsker å finne et emne å studere til høsten. Hva gjør jeg?

image07

uib.no/emne er UiBs nettside hvor man skal kunne finne emner og informasjon om disse emnene. Søket gir kun muligheten til å filtere ut på studiepoeng, grad og fakultet, og muligheten for å søke etter fag på nøkkelord og fritekst er den største mangelen. Man må da potensielt måtte trykke seg gjennom 2340 emner om man ikke på forhånd vet på hvilket fakultet, størrelse eller grad emnet man ser etter befinner seg i.

Derfor var noe av det første vi gjorde å lage ett fritekstsøk. Det vil si at man har mulighet til å søke etter hva man vil enten det er en emnekode, emnenavn eller noe man bare tror beskriver det man er ute etter. I vårt tilfelle er det «norrøn».

image08

Her ser vi at UiB tilbyr mange emner som involverer norrøn på en eller annen måte. Man kan kanskje hevde at et slikt søkefelt gjør det lettere for studentene å finne emner de ellers aldri ville ha funnet. Dette gjelder spesielt emner på andre fakulteter enn det man går på selv.

Hvorfor har ikke UiB utviklet en slik søkemotor selv?

Vi lar det være opp til kommunikasjonsavdelingen å svare på, men en av grunnene er nok måten emner er beskrevet på hos UiB. Det er slik at nettsiden til UiB og all informasjon som ligger på den skal være på nynorsk. Dette er dessverre (?) ikke tilfelle. Derimot så kan man finne en god blanding av nynorsk, bokmål og engelsk.

La oss se på noen eksempler (trykk på bildet for å forstørre):

Når vi søker etter engelske ord og uttrykk på Google forventer vi ikke å finne norske sider. Det samme gjelder om man skal lage en søkemotor for UiB. Hvis man søker etter etter ord på nynorsk, vil det være vanskelig for søkemotoren å finne emner som er skrevet på bokmål selv om det kanskje er disse brukeren så etter.

Det er altså ett stort problem at UiB ikke har konsistente emnebeskrivelser.

Når de har klart å ordne opp i emnebeskrivelsene sine, burde UiB prøve seg på en søkemotor. Det kan umulig se verre ut enn vårt førsteutkast.

image03
Ett ikke helt seriøst førsteutkast av designen

Jeg har funnet noen interessante emner jeg vil ta. Hva nå?

Når en student nå har funnet emner hun eller han er interessert i å ta, vil man gjerne at disse emnene er mulig å ta samtidig. Forelesninger og seminargrupper bør ikke kollidere. UiB tilbyr per dags dato ingen enkel måte å finne ut dette på. Vår løsning av dette kan man se på bildene under:

Noen lesere vil kanskje mene at det ikke spiller noen rolle om grupper og forelesninger ikke kolliderer, så lenge eksamensdatoen er på samme dag. Vi er helt enige! Problemet vårt gjennom prosjektet er at UiB ikke legger ut eksamensdatoer som åpne data. Dette har gjort det vanskelig å bruke disse datoene i vårt prosjekt.

Så hva er åpne data?

Åpne data er informasjon som er lagt ut i et maskinlesbart format og åpent tilgjengelig. Med maskinlesbart mener man at en datamaskin må kunne lese og tolke informasjonen. Notater fra biologiforelesningen du har scannet inn og lagt ut på Facebook er altså ikke åpne data. Selv om alle dine venner kan lese det, er det ikke åpent for alle og vanlige dataprogrammer kan ikke lese teksten.

Vårt prosjekt har hatt som mål å bruke åpne data fra UiB. Det passer derfor utmerket at UiB er det universitetet i Norge som har kommet lengst i å legge ut åpne data og gjøre det lett å bruke. Informasjon om UiB sine åpne data og hvordan man bruker det kan dere lære mer om på http://data.uib.no/.

Men kanskje er ikke alt så perfekt likevel?

Alt er likevel ikke rosenrødt med UiBs åpne data. Selv om det kanskje er relativt lett å få ut data fra UiB, burde de tatt en titt på kvaliteten til dataene de legger ut. Gjennom vårt arbeid har vi funnet mange morsomme små kuriositeter. En ting er, som vi allerede har vist, at de ansatte ved UiB ikke er enige om man skal bruke nynorsk, bokmål, engelsk eller en god blanding av alle tre når man skriver emnebeskrivelser.

Vår personlige favoritt er omvendte spørsmålstegn (¿). Et av emnene som virkelig har utmerket seg i bruk av av omvendte spørsmålstegn er RELV233. Det må riktignok tas et lite forbehold om at det faktisk kan være noen som foretrekker bruk av omvendte spørsmålstegn fremfor punktlister. Men mest sannsynlig stammer dette fra noe feil langt nedi UiB sine datasystemer.

image06
Ekstrem bruk av omvendte spørsmålstegn

Det eksisterer nok også litt uenighet innad på UiB om hvordan man skal fylle ut informasjon om en gruppeaktivitet. Nedenfor kan vi se to forskjellige måter man kan gjøre det på ved henholdsvis MAT111 v15 og INF101 v15.

"INFO101": {
    "description": "INF101 Gruppe 3",
    "activity": "grupper"
},
"MAT111": {
    "description": "gruppe",
    "activity": "MAT111"
}

Konklusjon

Etter å ha jobbet med dette prosjektet, mener vi i gruppen at UiB må jobbe videre med sin bruk av åpne data. Det er nå relativt enkelt å hente ut data. Men man mister noe av formålet når mye av denne dataen ikke holder høy nok standard. Det burde ikke være vanskelig for UiB å sørge for at man oppretter standarder på hvordan og på hvilke språk emneinformasjon er fylt ut.

De av dere som har hengt med så langt vil kanskje være interessert i den 36 siders lange rapporten fra prosjektet. For de av dere som også kanskje kunne tenkte dere å teste ut applikasjonen vår er den tilgjengelig på sok.pew.no. Applikasjonen vil også bli lagt ut som åpen kildekode så fort som mulig – se institutt for informatikk sine nettsider.

Det må riktignok tas et stort forbehold om at applikasjonen er ment som ett prøveprosjekt og burde ikke stoles på. Best informasjon får man nok fortsatt ved å ta kontakt med studiekonsulenter ved de ulike instituttene. Enn så lenge.

Hvorfor velge åpen kildekode? – Del 2 av 3

Open source som strategi hos IT-avdelingenUiB logo

Dette er del 2 av 3 om open source-programvare. Del 1 finner du her, del 3 finner du her.

IT-avdelingens strategi for 2010-2015 sier blant annnet:

  • «1.2. Teknologiløsninger skal baseres på åpne og veldokumenterte standarder.»
  • «1.3. Åpen kildekode skal foretrekkes.»

Dette er et strategisk valg som er tatt basert på at vi mener vi kan yte bedre tjenester til brukerne hvis vi velger åpne standarder og open source. Innlåsing i proprietære løsninger og ikke-dokumenterte standarder låser oss til én leverandør, gir oss mindre synergier mellom forskjellige tjenester og er veldig utsatt for endringer hos denne ene leverandøren. Åpne standarder og open source setter oss derimot i stand til å integrere forskjellige systemer sammen, gjøre lokale tilpasninger, gjenbruke data og ikke minst sikre oss at vi kan bytte system uten å ha problemer med flytting av data.

Mange ansatte og studenter ved UiB blir kanskje først introdusert til open source-programvare når de bruker klientdriftede maskiner på campus, fordi IT-avdelingen har vært bevisst på å velge open source-alternativer i sine standard programvarepakker og tilbyr som en av de få universitetene i landet klientdriftet Ubuntu Linux. IT-avdelingen har med jevne mellomrom promotert åpen og fri programvare gjennom nettsider og nyhetsbrev, med intensjon om å gjøre både ansatte og studenter oppmerksom på fordelene ved å velge open source, og hvilke open source-alternativer som finnes til proprietære løsninger. Det kan imidlertid tenkes at fokuset har vært litt feil når open source presenteres utenfor fagmiljøene: Å presse open source tekstbehandlingsverktøy eller Linux på en passelig interessert UiB-ansatt eller student som ikke ser hvordan dette tjener han på noen som helst måte, er kanskje ikke den beste måten å skape begeistring og engasjement for open source. Noen får til og med negative assosiasjoner, og forbinder det med noe uvant, komplisert eller et billig alternativ til «ordenlig programvare», selv om disse assosiasjonene i mange tilfeller skyldes manglende kunnskap. Kanskje er det mer interessant å vise hva som ligger i kulissene hos IT-avdelingen; tjenester alle ansatte og studenter bruker hver eneste dag, som fungerer så bra som de gjør nettopp fordi de er basert på open source-programvare.

Open source i kulissene

Eposthåndteringen til UiB er et utmerket eksempel. UiB har siden 1997 brukt EXIM Exim Logosom såkalt message transfer agent, utviklet ved Universitetet i Cambridge allerede i 1995. All epost som går inn og ut av UiB håndteres av EXIM. Etter 19 år er programvaren fremdeles under aktiv utvikling, og UiB er slett ikke alene om å bruke verktøyet: En undersøkelse fra 2013 viser at rundt 48 % av alle offentlige eposttjenere på verdensbasis bruker EXIM1. Vi var imidlertid tidlig ute med å implementere systemet og har lagt til en god del egen funksjonalitet for å tilpasse det til våre behov (for eksempel integrering mot spamhåndteringsverktøy). Vi har også gitt kode tilbake prosjektet og noe av dette er i dag en del av den offisielle programvaren. Dette er mye av grunnen til at EXIM har fungert så bra, så lenge: det blir utviklet i fellesskap av de som har interesse og nytte av systemet – enten det er bedrifter, offentlige institusjoner eller privatpersoner – fremfor én produsent som først og fremst ønsker maksimal profitt. EXIM har dessuten hatt få alvorlige sikkerhetshull i sin lange levetid2 og at disse har blitt så raskt oppdaget og rettet er nettopp fordi de synliggjøres i en åpen og fritt tilgjengelig i kildekode.

Majoriteten av alle servere IT-avdelingen drifter (fysiske og virtuelle) kjører open source-operativsystemer. Det meste av programvaren som kjører på disse serverene (på både høyere og lavere nivå) er også open source. Dette utgjør mye av kjernen av IT-avdelingens virksomhet. Noen eksempler på tjenester basert på open source-programvare:

  • UiBs eksterne websider er basert på publiseringssystemet Drupal
  • Mi side er basert på .LRN og OpenACS
  • DNS er basert på BIND (DNS er kort forklart det som gjør at du kan skrive google.no i adressefeltet i stedet for 173.194.65.94)
  • Digital undervisning er basert på Opencast Matterhorn
  • prosjekt.uib.no, verktøy for prosjektstyring, er basert på Redmine
  • blogg, IT-avdelingens bloggtjeneste, er basert på WordPress (noe UiBeta også er).
  • Issue-Tracker, sakshåndteringsverktøyet ansatte og studenter bruker når de rapporterer inn problemer til IT-avdelingen og andre administrative avdelinger. Det brukes også til håndtering av en rekke andre arbeidsprosesser. Verktøyet er i veldig stor grad videreutviklet internt på IT-avdelingen tilpasset våre behov.
  • Klientdrift på Unix-baserte operativsystemer (Mac OS X og Ubuntu Linux) er basert på bl.a. Puppet og Munki
  • UH-sky er et samarbeidsprosjekt mellom Universitets- og høyskolesektoren i regi av UNINETT som UiB deltar i. Infrastrukturen er bygd rundt OpenStack og er gjennomgående basert på open source-programvare.

Og dette er bare et utvalg.

I neste del vil vi vise hvorfor utdanningsinstitusjoner og det offentlige generelt har mye igjen for å velge open source.

Hvorfor velge åpen kildekode? – Del 1 av 3

Dette er del 1 av 3 om open source-programvare. Del 2 finner du her, del 3 finner du her.

Vi vil vise hvilke fordeler det i svært mange tilfeller gir å velge open source fremfor lukkede, proprietære løsninger. Vi vil så fortelle hvordan IT-avdelingen bruker open source-programvare til å levere tjenester til ansatte og studenter og hvorfor særlig offentlig sektor har mye igjen for å bruke, utvikle og bidra til open source-prosjekter.

Artikkelforfatterene jobber begge i Faggruppe Unix, Seksjon for infrastruktur ved IT-avdelingen. Meningene som fremkommer her er våre egne og må ikke tas som IT-avdelingens eller UiBs offisielle synspunkter.

Open Source Software er programvare utviklet med en fri lisens som betyr at alle kan se hvordan den virker og gjøre endringer og forbedringer hvis de ønsker det. Hvem som helst kan også redistribuere programvaren på vilkårene til lisensen. Dette er en stor fordel sammenlignet med proprietær programvare, der en er låst til en leverandør og står dårlig stilt om leverandøren går konkurs eller slutter å støtte programvaren.

Det er en vanlig misforståelse at open source-programvare velges først og fremst fordi den er gratis. Selv om dette kan være et argument, er det ofte andre fordeler som veier tyngre. Det er heller ikke all open source-programvare som er gratis.

For de som ikke jobber med IT profesjonelt assosieres open source-programvare gjerne med kontorprogramvare som LibreOffice, nettlesere som Firefox og operativsystem som Linux og for enkelte fremstår nok open source som noe for spesielt interesserte. De fleste vil jo bare ha noe som virker. Det som imidlertid mange ikke er klar over er at det ligger open source-programvare bak flere av de viktigste tjenestene IT-avdelingen og Universitetet i Bergen leverer til sine ansatte og studenter, og at open source-programvare i stor grad har muliggjort tjenestetilbudet vi har idag.

xkcd 743
xkcd – Infrastructures

En lyninnføring i open source-historie

Free Software Movement ble lansert i 1983 av Richard Stallman for å støtte sitt GNU-prosjekt, ofte regnet som det første formaliserte open source-prosjektet. Utgangspunktet for bevegelsens filosofi kom fra 1960- og 70-tallets hackerkultur[1], hvor fri deling og samutvikling av programvare var normen og å frata noen denne retten ble sett på som direkte umoralsk. I takt med mikrodatamaskinenes utbredelse ble det imidlertidig mer og mer vanlig å anse programvare som produkter underlagt opphavsretten, og programvareprodusenter begynte således å ta seg betalt for programvarelisenser. Det ble hevdet (blant av annet en ung Bill Gates[2]) at dersom en ikke kunne ta seg betalt for programvare ville ikke utviklere motiveres til å investere tid og penger i å lage produkter av høy kvalitet. Den nye trenden førte til en eksplosiv vekst i programvarebransjen, som senere skulle gjøre programvareentreprenører til verdens rikeste mennesker. For Richard Stallman var dette en katastrofe. I hans øyne var det nærmest en menneskerett at en skulle ha frihet og kontroll over egne datamaskiner og formålet med Free Software-bevegelsen og GNU-prosjektet var å sikre forbrukernes rett til å kjøre, dele, studere og endre programvare som de selv ville. Denne retten ble gitt gjennom en lisens, GNU General Public License, som idag er den mest utbrette frie programvarelisensen. Lisensen gir sluttbrukeren full frihet til å bruke, endre og redistribuere programvaren i den form hun selv ønsker, så lenge lisensvilkårene forblir de samme. (Det finnes også andre frie lisenser som BSD-lisensen, som tillater å redistribuere med andre lisensvilkår, men de skal vi ikke omtale her.)

GNU-prosjektet står bak noen av de mest utbredte IT-verktøyene i bruk idag og distribuert sammen med Linux-kjernen utgjør de et av de mest brukte operativsystemene. Stallman og hans disiplers fanatiske forhold til fri programvare har imidlertid virket avskrekkende på deler av IT-bransjen, som har sett open source som en trussel. Andre har rett og slett ikke tatt det seriøst; open source var noe skjeggete IT-hippier holdt på med i de mørke datahulene sine, fjernt fra det virkelige liv hvor det er «big money» som skaper gode team og god programvare.

Open Source Initiave
Open Source Initiative sin logo

Et vendepunkt kom imidlertid i 1997 da Netscape slapp kildekoden til nettleseren Netscape Navigator, noe det ble mye blest rundt. I 1998 ble Open Source Initiative grunnlagt, et samarbeid mellom flere foregangsmenn i open source-miljøet, der en prøvde å «re-brande» begrepet free software til noe som kunne være mer spiselig i forretningsverdenen. Organisasjonen oppfordret til å misjonere for open source-prinsipper, men ble ikke utelukkende mottatt med entusiasme. Blant andre Microsoft følte seg truet av initiativet, og uttalte i 2001: «[…] open source is an intellectual property destroyer. I can’t imagine something that could be worse than this for the software business and the intellectual-property business».[3]

userfriendly.org
userfriendly.org

Hovedprinsippene bak Open Source Initiative viser en strategiendring, hvor en vektla tekniske og økonomiske fordeler fremfor moralsk og sosialt ansvar:

  • Security
  • Affordability
  • Transperency
  • Perpetuity
  • Interoperability
  • Flexibility
  • Localization

Denne strategiendringen har hatt stor betydning for at IT-bransjen i dag er mer mottakelig for og delaktig i open source. Open source gir rett og slett bedre programvare, hevdes det. Mange bedrifter promoterer sine produkter som open source og bruker det aktivt i sin markedsføring.

Octocat - GitHub
Octocat – GitHubs maskot.

Nettsteder som GitHub har gjort det enklere enn noensinne å starte, dele og bidra til open source-prosjekter ved å kombinere versjonskontrollsystemet Git med social networking-funksjonalitet. GitHubs enorme popularitet har gitt en felles plattform for utviklere, hvor svært mange av dagens open source-prosjekter ligger tilgjengelig.[4]

Mange tenker på open source-programvare som gratis, men at det er gratis er altså ganske underordnet mange av de andre fordelene. Det viktigste er at man har tilgang på kildekoden og dermed kan se hvordan det virker, utføre forbedringer eller tilpasse det til andre systemer man bruker.

I del 2 skal ta vi for oss open source-programvare på IT-avdelingen, med eksempler på hva som ligger bak i kulissene hos oss. Følg med!


  1. Her menes en bestemt programmererkultur som ikke må forveksles med datakriminalitet.  ↩
  2. Bill Gates skrev i 1976 et åpent brev til legendariske Homebrew Computer Club, hvor han skarpt kritiserte klubbens manglende respekt og forståelse for opphavsrett knyttet til programvare.  ↩
  3. «Microsoft raps open-source approach, CNET, 03/05/2001»  ↩
  4. Til og med UiBeta ligger på GitHub. Red.  ↩