Bugs of honor, bugs of shame

Det er flaut med bugs. Noen bugs gjør meg flauere enn andre. Andre bugs er helt akseptable. I prosjektet mitt er vi stolte av at såpass få feil finnes av testere (eller av brukere), men det er noen som faller gjennom sikkerhetsnettet vårt. Her er noen av bugsene vi har hatt i det siste, fra den minst ydmykende til den verste:

Les mer »

Posted in Programmering | Tagged , , | 3 kommentarer

Kom igang med JavaScript!

Stadig mer programvare utvikles som rike webapplikasjoner, og brukere og kunder stiller stadig høyere krav til disse løsningene. JavaScript er derfor i ferd med å bli et av de viktigste verktøyene våre for moderne applikasjonsutvikling.

Språket blir dessverre behandlet som den stygge andungen av mange utviklere fordi det tradisjonelt oppleves som knotete, skjørt og lite vedlikeholdbart. Slik trenger det ikke være!

Vi i Steria har utviklet et gratis, nedlastbart kurs som oppdaterer deg på dette området. Denne workshopen introduserer ferdighetene, teknikkene og verktøyene som gjør JavaScript-utvikling langt mer overkommelig enn tidligere. Alt materiale i kurset er fritt tilgjengelig til din egen bruk. Les mer »

Posted in Frontend, Programmering | Tagged , , , , | 1 kommentar

Hvor er dine passord?

En studie om vaner i forbindelse med webpassord publisert av Microsoft i 2007, avdekker at en person i gjennomsnitt har tjuefem forskjellige passord å forholde seg til. Tallet er definitivt et høyt tall hvis man legger til grunn at det i en ideell verden bør være et visst innslag av unikhet. Som konsulent stopper ikke antall passord på tjuefem. Her er tallet betydelig høyere. Personlig var tallet nærmere tresifferet sist jeg sjekket.

Les mer »

Posted in Sikkerhet | Tagged , , | Skriv kommentar

Kundens smidige manifest

Hvordan ville det smidige manifestet ha sett ut dersom det var blitt skapt av kunder?

Det smidige manifestet ble skapt av en gruppe svært talentfulle mennesker. Men alle sammen kom fra leverandørsiden av utviklingsprosjekter, noe som er tydelig allerede i den tredje av de fire verdiene:

Samarbeid med kunden framfor kontraktsforhandlinger

- som implisitt sier at “vi” ikke er kunden.

For å få ut de største gevinstene av smidige filosofier, må kundesiden også jobbe på en smidig måte. Dette betyr mer enn å skaffe en Produkteier som utviklerteamene kan jobbe med eller for. Kundesiden av prosjektet må jobbe ikke bare med utviklerne, men også med sin egen organisasjon og andre interessenter. Spesielt viktig er det at kundesiden av prosjektet må finne ut hvilke mål produktet må nå for å skape virkelig verdi for interessentene.

Så derfor lurer jeg på: Hvordan ville det smidige manifestet ha sett ut hvis det hadde blitt skapt av kunder i stedet for leverandører?

Les mer »

Posted in Samhandling, Smidig | 3 kommentarer

Gi bedre feedback

Forskjellen på god feedback og dårlig feedback er enorm. Jeg og min kollega Ram holdt i dag et kurs i presentasjonsteknikk. For at alle skulle få mulighet å trene, delte vi kurset i grupper. For at alle skulle få god feedback, ga vi noen tips om hvordan man kan gi bedre feedback. Her er fire gode tips:

Les mer »

Posted in Uncategorized | Tagged , | 1 kommentar

Smaker sjokolade bedre enn passordet ditt?

Informasjon er verdifull. Enten det er av ren nysgjerrighet eller om det er industrispionasje så er det alltid noen som ønsker å lese “utilgjengelig” informasjon om deg eller ditt firma. Kanskje vil de også stikke kjepper i hjula for å ødelegge informasjonen din, eller sette deg i ett dårlig lys. Informasjonstyveri er svært utbredt og vi har så langt bare sett starten innen nettbasert kriminalitet. De tre hovedformene for angrep er uautorisert inntrengning, uautoriserte endring eller ødeleggelse og bruk av ondsinnet kode.
Passordangrep er en av de vanligste metodene for å oppnå tilgang. Hensikten er å finne brukernavn og passord slik at angriperen kan logge inn på ett system eller en tjeneste og benytte brukerens rettigheter. På den måten kan det enkelt gjøres informasjonsuthenting eller de vil bruke din brukerident som plattform for videre angrep. Passordangrep kan for eksempel forgå gjennom passord sniffing, passord gjetting (directory eller brute force), trojansk hest eller tastelogger.

Les mer »

Posted in Infrastruktur | Tagged | 1 kommentar

Galls lov og erstatningsprosjekter

“If A System Is Working, Leave It Alone. Don’t Change Anything!”
- John Gall, Systemantics (1975)

Planen

Det gamle systemet hadde blitt uholdbart. Leverandøren ga ikke lenger support på maskinvare eller programvare, det var umulig å oppdrive kompetanse for å videreutvikle og det var ikke lenger vedlikeholdbart siden det var så kompleks.

Vi skulle derfor erstatte systemet med et nytt et. Bygget fra bunnen med moderne teknologi. Det burde bli enkelt, siden dagens system kan fungere som kravspesifikasjon. Vi hadde estimert arbeidet til 83 511 timeverk.

Vi ville naturligvis ikke investere store mengder arbeid i det gamle, døende systemet. Og dessuten var det umulig å integrere med. Så vi måtte bygge det nye systemet med all funksjonalitet, og så, en spennende helg om noen år, sette det i produksjon.

Slik høres introduksjonen til mange erstatningsprosjekter ut. I disse prosjektene har man et eksisterende system som typisk er kritisk for virksomheten. Av gode eller dårlige grunner har man valgt å gjennomføre et prosjekt som skal erstatte hele den gamle systemet med et nytt system som oppfyller samme målsetning.

Les mer »

Posted in Smidig, Strategi | Tagged , , , , | 4 kommentarer

Hvordan komme i gang med blogging

Det kan være vanskelig å komme i gang å blogge, men noen enkle tips kan gjøre det litt mer overkommelig.

Hvem?

Det viktigste når du skriver en blogpost er å være bevist på hvem dine lesere er. For denne artikkelen gjorde jeg meg følgende tanker:

  • Hva er leserens forhold til tema? Jeg regner med at du som leser blogger litt eller tenker på å starte å blogge.
  • Hva tenker leseren om tema? Jeg regner med at du synes det er vanskelig å komme i gang med bloggingen.
  • Hva får de ut av å lese blogposten? Etter å ha lest posten vil jeg at du skal føle deg mer i stand til å skrive dine egne blogposter.

Hva?

Når du vet hvem du henvender deg til, er det viktigste å jobbe med innholdet og strukturen.

  • Struktur: For hvert avsnitt vil du miste 5% av leserne (for å trekke et tall ut av lufta). Skriv det viktigste først
  • Språk: Bruk aktivt språk som henvender seg direkte til leseren. Et eksempel på aktivt språk er: “Bruk aktivt språk som henvender seg direkte til leseren”
  • Eksempler: Det er vanskelig å formidle abstrakte ideer. Eksempler er enklere.

Hvordan?

Når jeg starter med en blogpost, starter jeg nesten alltid med å kladde på papir. Jeg skriver strukturen ned, river i stykker papiret og skriver den ned på nytt. For meg fungerer det veldig godt å skrive på papir for å bearbeide tankene. Når jeg tar fram datamaskinen, blir jeg distrahert av verktøyene.

Mine mest populære artikler er de som der jeg har fått mye innspill av andre før jeg har publisert artiklene. Send utkast til artikkelen til folk du stoler på og be om konstruktiv tilbakemelding. Konstruktiv tilbakemelding er konkret og spesifikk: For eksempel: “Dersom blogposten hadde brukt punktlister også i siste avsnitt hadde den virket mer helhetlig uttenkt”. Personlig liker jeg best å dele utkastene mine med andre via Google Docs, framfor å maile vedlegg frem og tilbake.

Spre ordet via de kanalene du kommuniserer med: Pass på at bloggen har en RSS-feed. Bruk twitter, yammer, facebook, linkedin etc for å spre ordet. Ikke glem den gamle traveren email, heller (men for guds skyld, ikke spam folk!)

Hvorfor?

Som mennesker ligger trangen til å kommunisere i vårt DNA. Når jeg er entusiastisk om noe, føles det riktig å dele det. Å nå andre bekrefter vår egen eksistens.

Blogito, ergo sum!

Posted in Samhandling | Tagged | 5 kommentarer

Se foredragene fra TED-at-Steria 3

Med jevne mellomrom arrangerer vi fredagspils med faglig inspirasjon i Steria. Da ser vi etter foredrag som er utenfor IT-verdenen eller som på andre måter kan inspirere, underholde og få oss til å se verden med litt andre øyne. Som regel har vi vist foredrag fra TED-konferansen, en konferanse der verdensledende fagfolk forteller om sitt arbeid på en lettfattelig måte.

Fredag 5. februar viste vi følgende foredrag:

Les mer »

Posted in Uncategorized | Tagged | 3 kommentarer

Smidig brukervennlighet

Lunch #60, Copyright: Børge Lund. Bilde brukt med tillatelse fra opphavspart.

Lunch #60, Copyright: Børge Lund. Bilde brukt med tillatelse fra opphavspart (klikk for større versjon).

Vi lo godt da vi leste denne stripa. Den setter fingeren på både sannheter, usannheter og fordommer.

Alle som har jobbet i systemutviklingsprosjekter vil nok kjenne seg igjen her. Vår påstand er at de som kjenner seg mest igjen er de som ikke har jobbet med brukersentrerte designere eller smidige utviklere.

Les mer »

Posted in Brukervennlighet, Smidig | 3 kommentarer

Ned fra gjerdet!

Jeg gratulerer Steria med lansering av bloggen Sterk blanding! Med det beveger Steria seg enda lenger bort fra gjerdet hvor mange bedrifter i følge Sterias undersøkelse fortsatt sitter og er avventende i forhold til bruk av sosiale medier.

Les mer »

Posted in Samhandling | Tagged , , , | 3 kommentarer

Hemmeligheten bak gode spesifikasjoner

Mange prosjekter har startet å ta i bruk verktøy som FitNesse eller Cucumber til å automatisere funksjonelle tester. Disse verktøyene gjør det lett å skrive akseptansetester, men det er opp til oss som bruker dem å sørge for at disse testene blir til en god spesifikasjon av systemet som skal utvikles, og ikke bare testscript. Her er noen tips for å forbedre dine spesifikasjoner.

Les mer »

Posted in Programmering, Smidig | Tagged , , , | 1 kommentar

Ny definisjon av Scrum?

Nyttårsaften postet Ken Schwaber en melding på Yahoo! Scrum Development group som han kalte Confusion about Scrum. Der tar han opp at det eksisterer to definisjoner av Scrum: En som vedlikeholdes av Jeff Sutherland og ham selv på www.scrum.org, og en “gammel kopi” som ligger hos Scrum Alliance (men den ligger ikke der lenger nå).

Les mer »

Posted in Smidig | Tagged , , | Skriv kommentar

Smidig utvikling er ikke i mål

Smidig metodikk har inntatt Norge. Derfor må vi slutte å bare reklamere for de positive sidene, og åpne opp for å diskutere og løse reelle utfordringer knyttet til smidige prosjekter.

Les mer »

Posted in Smidig | Tagged , , , , , | 2 kommentarer

Scrum – “Det var dyrt”-øyeblikket

Hva skjer når kostnaden i utviklingsprosjektet plutselig blir veldig tydelig? Man kan ha en ærlig dialog.

Les mer »

Posted in Smidig | Tagged , , , , | 2 kommentarer

Hvordan endre en statisk klasse til en dynamisk singleton

Har du arvet kode fra noen andre? Er det ingen tester på kodebasen? Er all koden limt fast sammen med kall på statiske metoder som ikke lar seg erstatte med mocker i testene dine?
Posted in Programmering | Tagged , , | Skriv kommentar

Min første katacast

Etter at jeg så noen artige eksempler på programmere som jobbet med øvelsesprogrammering på KataCasts, bestemte jeg meg for å spille inn min egen video. Jeg er rimelig fornøyd, men jeg feilberegner bakgrunnsmusikken med cirka ett minutt. (Det gikk fortere på innspillingen enn på generalprøven).

Les mer »

Posted in Programmering | Tagged , , , , | Skriv kommentar