Søg på DotNyt:

lørdag den 10. april 2010

Denne blog er flyttet

skrevet af Niels Brinch


Denne blog findes nu på http://www.nielsbrinch.com/. Du sendes automatisk videre om 30 sekunder, eller du kan klikke her.

0 kommentarer

Oprindelsen af varen vi sælger

skrevet af Niels Brinch

Som softwareleverandører er det svært at pege på den vare vi sælger. Man kan pege på skærmen, på brugergrænsefladen, men hvad med alt det inde bagved, som i virkeligheden er langt størstedelen? Den kan man ikke pege på.

I virkeligheden er den vare vi sælger vores hjerner, som er finindstillet til at tænke logisk og opbygge et kæmpe spindelvæv af forbindelser og kombinationer, som ender ud i den brugergrænseflade som slutbrugeren kan se. Analogien med spindelvævet er ikke tilfældig – ikke fordi det har noget med “world wide web” at gøre, men fordi der også i et spindelvæv er en tydelig orden i opbygningen. De mange logiske overvejelser skal stilles pinligt ordentligt op, for at det kan overskues og der kan arbejdes videre med det senere. Det kræver, foruden selvfølgelig tilstrækkelig logisk indsigt, en høj grad af disciplin at opretholde den orden.

Det kræver med andre ord et godt hovede. Jeg har besøgt et af de steder hvor hovederne starter deres færd, på vejen mod at blive gode hoveder. Billedet herunder viser et klasselokale.

image

Der kan sidde 5 børn på hver bænk – det vil sige der typisk er 50 børn i et klasseværelse som dette. Her lærer de formentlig, om ikke andet, disciplin, for det må kræve nogle mægtig stille børn at få undervisningen til at fungere, når der er så mange samlet på så lidt plads.

Og her er de heldige børn så. De klogeste børn, som samtidig har forældre der har råd til at hjælpe, fortsætter skolen efter fjerde klasse og bliver måske endda sendt på college og universitetet - hvis en prøve vel at mærke viser, at de er blandt de 50 bedste blandt 2000 ansøgere. (tallene er ukritisk videregivet fra vores guide, som lod til at have et lidt lemfældigt forhold til nøjagtigheder)

image

Men hvis de 50 bedste er valgt ud af 2000 ansøgere, må de 50 logisk set være overordentligt dygtige. Desværre er niveauet på de offentlige universiteter generelt temmeligt lavt. Børn af rige forældre kan naturligvis betale for at komme på privat universitet, hvor niveauet er højere, men hvor der er nok pladser til at alle kan komme ind.

Herunder er et eksempel på nogle mindre heldige børn, som lever og arbejder i en murstensfabrik. Det virker usandsynligt at de børn vokser op og kommer til at arbejde som softwareudviklere for mig.

image

Alligevel, på trods af ovenstående lidet flatterende billede af det bangladeshiske uddannelsessystem, er det et land med 160 mio. mennesker og det giver trods alt en hel del mennesker som får alle forudsætningerne for at bringe Bangladesh videre i den udvikling som allerede er godt i gang.

0 kommentarer

fredag den 19. marts 2010

Hurtige prototyper

skrevet af Niels Brinch

Enhver softwareudvikler har hørt påstande som lyder noget i retningen af, at det tager 10 gange længere tid at rette en fejl end det tager at forhindre den. Der er en række andre variationer af påstanden, men pointen er overordnet set, at man skal tænke sig om først i stedet for senere.

Et af de områder man skal sikre er så korrekt som muligt inden man går i gang, er kravene der er til den software man skal udvikle. Kravene stilles typisk af en kunde som er specialiseret inden for sit eget forretningsområde, som ikke er softwareudvikling. Det kræver meget stor abstraktionsevne at opstille krav. Man skal kunne se det endelige produkt for sig og vurdere om det er det man har brug for, uden at kunne se det.

Måske har den primære opgavestiller en meget høj abstraktionsevne, men så kan der være andre interessenter som også har indflydelse, men som ikke har samme egenskaber eller ikke har brugt så lang tid på at definere kravene. Det scenarie man bevæger sig hen imod er et hvor software-leverandøren leverer det som er aftalt i kravene, men det var ikke det som kunden havde håbet at modtage.

Slutresultater er en utilfreds kunde, uanset hvor nøjagtigt kravene er opfyldt.

Hurtige prototyper kan hjælpe. Man kan udarbejde en prototype på en brøkdel af den tid det tager at udvikle det endelige produkt. Alle er ofte ikke enige om at der skal laves komplette prototyper, specielt hvis der er et meget begrænset budget, for prototypen har ingen værdi i sig selv. Når projektet er slut, bliver prototypen smidt ud. Men når man har prototypen kan den præsenteres for kunden og ikke bare giver det klarhed overfor den primære opgavestiller og sikkerhed om forståelse af kravene for leverandøren, men det giver også de mindre engagerede kunderepræsentanter mulighed for at deltage aktivt, kommentere på prototypen og være med til at fjerne misforståelser. Det giver dem også mulighed for at ændre kravene.

Det er et stort arbejde at ændre krav, for i mange tilfælde skal aftalen også ændres. Men, med reference til min indledende sætning, er det bedre at ændre krav baseret på en prototype, end baseret på det endelige produkt.

---

Jeg anvender værktøjet ForeUI til prototyper. Det er et tegneprogram specielt velegnet til prototyper. Det har linjer og rektangler til at lave simple tegninger og dertil en række standard-elementer, såsom knapper, rullemenuer og afkrydningsfelter. Formålet er ikke at skabe noget der er vellignende, men bare noget som viser det essentielle. Her er f.eks. en prototype af Googles forside.

image

Men det er meget mere end et tegneprogram. Programmets styrke ligger i muligheden for at sætte hændelser på alle elementer. F.eks. kan jeg opsætte en regel der siger, når der tastes i feltet, skal der komme et rektangel med tekst frem, akkurat som Googles egen forslagsfunktion. Jeg opsætter den til at dukke frem hvis jeg skriver ‘dot’ i feltet.

image

Endnu vigtigere er det at man ved klik på diverse elementer, kan få vist en ny side, hvilket betyder man kan opbygge alle produktets sider og illustrere hvordan man navigerer ved hjælp af prototypen.

Programmet har nogle svagheder. Betingelserne er ikke altid lige logiske. F.eks. er der kun en “Key Down”-betingelse til indtastning, hvilket betyder jeg er nødt til at lave betingelsen på ‘do’ i stedet for ‘dot’, fordi den kigger på feltets indhold på Key Down, men det indtastede bogstav først kommer på Key Up.

Desuden er håndteringen af etiketter ret ringe. Specielt linjeombrydning fungerer dårligt. Jeg indsætter en etiket og giver den en specifik størrelse.

image

Når man indtaster teksten i etiketten, viser den det ikke som det bliver vist, men med en horizontal scrollbar, umuligt at overskue. Man kan indsætte sine egne linjeskift, men det er der lidt for meget skrivemaskine over, synes jeg.

image

Når jeg er færdig med at skrive, er etikettens størrelse ændret.

image

Alt i alt alligevel et anbefalelsesværdigt værktøj, som er hurtigt at komme i gang med og gør det særdeles hurtigt at lave prototyper.

Nogen der kan anbefale andre værktøjer?

2 kommentarer

fredag den 12. februar 2010

Computerkøb i Bangladesh

skrevet af Niels Brinch

Der er hundredetusindvis af dygtige universitetsuddannede it-professionelle i Bangladesh, men den generelle befolkning er ikke dygtige til IT.

Jeg skulle købe computer og valgte at tage til BCS Computer City, som er et 5-etagers butikscenter med hundredevis af computerbutikker. Der var både godt udvalg, god kvalitet, ekstremt fair priser og god service. Sælgerne var dog ikke lige kvalificerede på alle punkter.

Når man køber computer her, samler de den og gør den klar på en times tid. Undervejs bliver jeg spurgt om jeg bare vil have de normale 4 partitioner, navngivet Windows, Documents, Games og Applications. Ok, det giver mening at adskille Windows på sin egen partition, men hvad kunne være idéen med de øvrige? – jeg kan kun komme på én grund: Det ligner der er flere harddiske på computeren, så kan man rigtig hævde sig overfor vennerne. Jeg synes jeg svagt kan huske vi gjorde den slags i slutfirserne.

Da computeren var klar, skulle den sættes op i butikken. Det er ret normalt at kunder skal se at det de køber virker. Når man køber en forlængerledning med 4 stik, bliver den taget ud af pakken og en lampe bliver på skift sluttet til hvert stik, så man med sine egne øjne kan se de alle virker. På samme måde bliver det også demonstreret at computeren virker.

Der var dog tilsyneladende problemer med det trådløse tastatur. Han havde sørget for at sætte batteri i, men det virkede stadig ikke. Jeg foreslog diskret om vi skulle sætte USB-modtageren i. Da han gjorde det kunne jeg se Windows genkendte tastaturet, men sælgeren var ikke overbevist. Ingen programmer var åbne og sælgeren blev ved med at trykke ESC på tastaturet. Intet skete der – men det ville der ikke gøre uanset om tastaturet virkede eller ej.

Sælgeren tyede nu til et middel som kan løse næsten ethvert IT-problem i Bangladesh. Nej, det er ikke en genstart, som ellers bliver brugt på samme måde i Danmark. Det er at højreklikke på skrivebordet og trykke “Refresh”. Funktionen opdaterer visningen af de mapper og filer som er på skrivebordet – men de vises alligevel, så reélt har funktionen ingen effekt.

Alligevel bliver funktionen brugt her til at løse enhver art af problemer - f.eks. kan det bruges til at løse midlertidige netværksproblemer. Årsagen er selvfølgelig at mens der er et netværksproblem, er der en anden person der løser problemet, f.eks. ved at genstarte routeren – det varer lige 10 sekunder før routeren kommer i gang igen, i mellemtiden trykker medarbejderen på “Refresh” og 5 sekunder senere virker det. Den mirakuløse universalløsning har vist sit værd igen.

Nå, det er vist blevet tid til at udgive indlægget. Jeg genstarter lige. Mit internet virker ikke.

3 kommentarer

mandag den 18. januar 2010

Køb lodsedler hvis du vil vinde lotteriet

skrevet af Niels Brinch

imageLivet er fyldt med spændende oplevelser. Det er efter min mening noget det vigtigste ved det at le ve - at opleve. Det er både de små og de store oplevelser. Det kunne være at at finde en spøjs sten, at have en inspirerende samtale, at blinke til hende den søde, at hun blinker igen, at lære en ny leg, at opdage en ny tanke – og alt det som er umuligt at komme i tanker om nu, fordi ingen har oplevet det før.

Men hvordan opnår man så at opleve alt det? Især må alt det som man slet ikke er kommet i tanker om at man kan opleve endnu, være svært at planlægge sig til … det er i ikke noget du har kontrol over.

Den slags oplevelser kommer til dig. Nogle vil sige man selv kan opsøge dem, men det har jeg en anden vinkel på. For hvordan kan man opsøge noget som man ikke ved hvad er? Man kan opsøge konkrete ting. Hvordan kan man opsøge de fuldstændig uventede oplevelser?

Man skal købe en lodseddel for at kunne vinde lotteriet. I livet er der et lotteri, hvor gevinsten er en spændende, uventet oplevelse. For at have chancen for at vinde netop det lotteri, er du også nødt til at købe lodsedler.

Jeg skal f.eks. ud og se Sundarbans i weekenden. Det er en skov med vand omkring, så man kan tilbringe et par dage i en både med at se skoven. Det er også en lodseddel. Det kan være jeg oplever en masse spændende – det kan også være en nitte. Det kan være jeg går ombord i en båd og stiger ud 2 dage senere uden at have set noget som helst andet end træer. Men jeg går ind til det med den viden at det er en lodseddel og at man nogle gange ikke vinder på en lodseddel. Selvom jeg ikke vandt sidst, køber jeg gerne flere lodsedler. Ellers får jeg jo aldrig gevinsten.

3 kommentarer

fredag den 25. december 2009

Tag kredit for dit arbejde – og debit

skrevet af Niels Brinch

Magellan er kendt for at være den første der sejlede rundt om jorden. Det er en præstation som er helt unik, den kan vitterligt aldrig blive overgået – ingen andre kan være den første. En 13-årig pige ville gerne være den yngste, men fik ikke lov at tage afsted.

Her er indledningen fra artiklen om Magellan i Den Store Danske:

Fernando de Magellan, (port. Fernão de Magalhães, sp.Fernando de Magallanes), ca. 1480-1521, portugisisk søfarer, leder af den første jordomsejling.

Det er nævnt længere nede i artiklen, i en bisætning, at Magellan blev dræbt i kamp under jordomsejlingen. Han gennemførte aldrig! Magellan er ikke den første til at sejle rundt om jorden! Det er en fyr som hedder Elcano som ingen nogensinde har hørt om.

imageSå hvorfor fik Magellan kredit for det i folks bevidsthed? Jeg vil hævde det er fordi han var lederen.

Man kan tolke dette på flere måder. Det jeg gerne vil fortælle med det er, at det er en god idé at tage ansvar for sit arbejde. Det skal man bestemt ikke være bange for. Det bliver værdsat af dem omkring én. Men ikke alle er villige til at tage ansvar.

Jeg går ud fra grunden til nogle er bange for at tage ansvar for sit arbejde er, at det også betyder man får skylden hvis det går galt. Vær ikke bange for at tage skylden for noget (specielt hvis det er din skyld). Det viser du tager ansvar, også selvom det er ubehageligt – og alle forstår at man begår fejl engang imellem.

Der er selvfølgelig en grænse. Hvis du hele tiden tager ansvar for opgaver og fejler hver gang og tager skylden, er det ikke godt.

Men løsningen er ikke at undlade at tage skylden når du fejler. Løsningen er at finde et job du kan bestride.

1 kommentarer

tirsdag den 1. december 2009

Positiv særbehandling

skrevet af Niels Brinch

image Jeg har lige været i “GrameenPhone Customer Care” i Dhaka for at få aktiveret internet og hævet kreditgrænsen på mit nye simkort. Butikken var som en tilfældig TDC-butik i Danmark, med forskellige telefoner til salg og et elektronisk nummersystem, så man kan trække et nummer og i ro og mag kigge sig omkring indtil tavlen viser at det er éns tur næste gang.

Da jeg kom ind var der en sælger der blev lettere befippet og da han så jeg gik hen mod den maskine som uddeler numre til køen, skyndte han sig hen og trykke på knappen lige før mig og gav mig så nummeret i hånden. Jeg sagde tak for den betænksomme gestus, noterede mig at der var 10 i køen foran mig og satte mig i en sofa.

Cirka 10 sekunder senere kom den samme venlige herre hen til mig og spurgte om der var noget han kunne hjælpe med. Jeg fortalte jeg var kommet for at få aktiveret internet på min telefon. Straks tilkaldte han en medarbejder fra baglokalet, fik åbnet en ekstra kasse og snart efter havde jeg fået hvad jeg var kommet efter.

Jeg kan ikke vide med sikkerhed hvorfor jeg var så heldig at få så god service, men jeg kan fortælle et faktum, som måske kan få en Sherlock Holmes derude til at lægge 2 og 2 sammen:

Jeg var den eneste blege 2 meter høje skandinav med lyst hår og blå øjne i butikken.

Jeg siger som sagt ikke det er derfor jeg fik positiv særbehandling. Det kunne være fordi jeg havde et Hugo Boss-bælte på eller fordi jeg var kunde nummer 100.000.000 (ikke utænkeligt).

Af andet nyt kan jeg fortælle at Hitler’s Mein Kampf er meget populær i Bangladesh. Ironien bliver ikke mindre af at de teenagere som sælger bogen i trafikken er fattige, mørke i huden og handicappede.

Og det er ligesom systemudvikling fordi … nææh, det er det nok ikke.

0 kommentarer


 
Til forsiden

Niels Brinch