Pelle Söderling

Hvordan sikrer du data i forbindelse med outsourcing af udviklingsprojekter?

Jeg siger bare good luck med at sikre at professionelle udviklere ikke kan kopiere data... :-)

9. september 2014 kl. 16:45
Estimere? mig?

Ja, det er jo den gode gamle med, at de andres job, det er let. Men mit job det er vildt svært. Tro mig, det er derfor IT folk altid har problemer med forretningsfolk, for de synes også at IT, det er da nemt, men deres job voldsomt kompliceret.</p>
<p>Grunden til at andre professioner ser så simple ud er generelt, at man ikke ved noget om dem. Derfor synes jeg også at IT udviklere burde have en smule mere respekt for andres professioner, hvis de vil have respekt for deres.

Som software-udvikler ved jeg mere om andre professioner end de fleste gør - jeg har bl.a. designed løsninger til at assistere regnskabsafdelinger, revisorer, lagermedarbejdere, butiks-konstruktører, marketingsfolk, HR og leveret Business Intelligence løsninger til top-ledelsen i Enterprise-organisationer og jeg har også arbejdet som projektleder, arkitekt, selvstændig konsulent og drevet 3 virksomheder selvstændigt med ansatte (så jeg ved også lidt om hvad det vil sige at være entreprenør). Jobbet som udvikler handler i høj grad om at kunne sætte sig ind i andre mennesker (og professioners) arbejdsgange og forretningsområder. Jeg tror faktisk ofte det undervurderes hvor meget udviklere faktisk ved om andre professioner fordi vi udvikler de softwareløsninger som de sidder og bruger dagligt til at udføre deres arbejde.

Udviklere har også patterns, standard libraries og allehånde ting som pakker kompleksiteten ind. De sidder ikke i dag og skriver maskin kode, så hvis en entreprenør kiggede på IT udvikling ville han se det samme, som du gør når du kigger på entreprenører: en masse standardting som bare lige skal kombineres og 98 -98% kan genbruges.

At pakke kompleksitet ind gør det ikke mindre komplekst - tværtimod, det skjuler den blot i et ekstra lag. Jeg kender ingen Enterprise-udviklere der arbejder på den måde du beskriver, ihvertfald ikke som er successfulde med det de foretager sig.

Udviklere i dag sidder ikke og laver storebæltsbroer den ene dag og rumraketter den næste, så det synes jeg er en forkert analogi.

Nej, det gør vi selvsagt ikke - det er en analogi og som med så mange andre analogier der forsøger at beskrive software-udvikling med real-life referencer er den ikke specielt god (hvilket i sig selv siger lidt om hvor abstrakt software-udvikling er) - men det ændrer ikke på det faktum at man som software-udvikler beskæftiger sig med rigtig mange områder som har meget lidt tilfælles og der konstant skabes nye teknologier som ændrer forudsætningerne.

der er i dag ingen udviklere som den ene dag sidder og roder med noget objective C, den næste lidt konfiguration af en CentOS server og så noget assembly kode og derefter lidt PROLOG til at gå hjem på. Det er de færreste udviklere i dag som laver noget som er meget forskelligt.

Som andre nævner så er det ret præcist hvad vi gør, omend teknologierne, sprog etc. self. varierer. Efter 20 år med software-udvikling beskæftiger jeg mig stadig med nye ting jeg aldrig har beskæftiget mig med tidligere i min karriere stortset hver eneste dag - hvor mange andre professioner gør dette sig gældende indenfor?

Hvis man synes at software skulle være det mest komplicerede menneskeheden skulle have beskæftiget sig med, siger det mere om den viden, man har om, hvad menneskeheden har beskæftiget sig med.

Istedetfor at være sarkastisk, kan du så ikke blot nævne et par eksempler? Det eneste jeg kan pege på der er i samme kategori er som tidligere nævnt forskning (som iøvrigt oftest assisteres af ganske kompleks software idag).

9. september 2014 kl. 15:45
Estimere? mig?

Lige præcis - godt skrevet. Jeg synes faktisk ikke udvikling er specielt relaterbar til andre traditionelle erhvervs-fag - jeg ser det relateret tættere til forskning og måden man her arbejder på.

Det samme gør sig nemlig lidt gældende at det i høj grad er erfaring og intuition der giver kvantespringene og en dygtig forsker kan opnå resultater mange gange hurtigere end en knap så dygtig forsker der kan forske i årevis uden at nå nogen vegne. Og man behøver blot at kigge overfladisk på polsag for at se hvordan det er muligt for en masse udviklere at lave noget hvor det hele tiden er 1 skridt frem og 2 tilbage. Den slags ser man altså ikke ret tit når det gælder f.eks. kloakering eller endda at bygge en bro eller en rumraket - de folk der står for den slags har ofte opbygget erfaring på meget lignende projekter og har kunnet genanvende den erfaring 98-99%.

Det er let at kalde software-udvikling simpelt og hvis det man laver er tilpas simpelt så er det da også sandt nok - men når software-udvikling bliver komplekst, så er det noget af det mest komplekse vi som mennesker endnu har kastet os ud i - det er abstraktionslag ovenpå abstrakstionlag ovenpå abstraktionslag.. og der er lang vej til at forstå alle de lag en vilkårlig operation går igennem i form af både software og hardware og hvilke konsekvenser det kan have når man har brug for f.eks. at presse grænserne for ydelse. Og så er det ikke usædvanligt at du den ene måned bygger en rumraket og den næste bygger en storebæltsbro, man opbygger selvfølgelig noget generel anvendelig erfaring - men vi taler ikke om at 98-99% kan overføres direkte fra tidligere projekter, sådan som det ofte er tilfældet indenfor mere tradtionelle erhverv.

9. september 2014 kl. 08:40
Estimere? mig?

Der er massere mere eller mindre kreative metoder oftest baseret på divide and conquer princippet og det virker fint hvis man f.eks. er en virksomhed der har specialiseret sig i at udvikle små kunde-websites eller lign. hvor det meste er kendt stuff.

Prøv tilgengæld at skulle estimere implementeringen af et Business Intelligence eller ERP-system i en større virksomhed og så vil jeg ønske jer held og lykke.

8. september 2014 kl. 16:43
Estimere? mig?

hvor lang tid det tager at estimere handler i høj grad om hvor høj præcision du er ude efter. Det er ikke ulig problematikken omkring outsourcing - hvis du helt ned på metode-niveau har brug for at dokumentere og udspecificere det som skal implementeres, så tager det ofte længere tid end blot at skrive koden. Men jo højere et abstraktions-niveau du vælger at gå op på jo større risiko er der involveret, for djævlen gemmer sig i detaljerne.

Det lyder som om du er en af dem som betragter software-udvikling som en ingeniør-diciplin, hvor man bare kan måle og opstille processer for det hele indtil det går op i en højere enhed - sådan var jeg selv tilbøjelig til at tænke engang, men efter mere end 20 år som software-udvikler er min konklusion at software-udvikling snarere i høj grad er en kunst-form og jeg er ikke længere istand til at forklare de processer der gør at jeg kan udvikle software på det niveau jeg idag er istand til - det handler i meget høj grad om erfaring, intuition, motivation, psykisk balance og mange andre faktorer.

De bedste dage er ikke hvor man producerer 1 dags arbejde - det er hvor man sparer sig selv eller andre betydelige mængder arbejde i både implementering og fremtidig vedligehold fordi man så en bedre vej til målet. I software-udvikling på en god dag kan den rigtige beslutning spare flere mandeår væk og de bedste udviklere er istand til at gennemskue disse scenarier dagligt baseret på store dele erfaring og intuition. Det betyder også at en udvikler kan være næsten uendelig meget mere værdifuld/produktiv end en anden udvikler - for det er ikke samlebåndsarbejde der er tale om her. Der er tværtimod tale om intellektuelle udfordringer på et ekstremt højt abstraktionsniveau - og ja det er forfærdelig komplekst, med al ære og respekt for B.S.

8. september 2014 kl. 15:18
Estimere? mig?

Problemet med estimering er ikke at udviklerne er dovne - problemet er at det er tidskrævende og dyrt og ingen gider betale prisen for det.

Hvis du vil planlægge din gåtur på B.S. niveau så vil det måske tage 14 dage at få styr på alle de her detaljer og finde frem til alle de problemer du måske vil rende ind i og finde ud af hvordan du vil komme udenom dem - det er en betydelig andel af den tid det vil tage at gennemføre selve turen også selvom du godt er klar over dit oprindelige estimat er i den optimistiske ende.

Hvis du er B.S. og har gennemført en lignende tur hundredevis af gange tidligere, så ved du self. i høj grad hvilke udfordringer du kan ske at rende ind i og så kan du måske gennemføre en ret præcis estimering på en halv dag for sådan en tur, men vi kan ikke alle være B.S. og her er udvikling lidt mere abstrakt end en gåtur - det er sjældent man gentager den samme form for udvikling igen og igen, man bevæger sig derimod konstant ind på nyt terræn med nye udfordringer. Pludselig er din kyststrækning erstattet med overfladen på Mars og du skal så til at finde ud af hvordan man gennemfører en gåtur i dette terræn.

Det er igen ikke fordi det ikke kan lade sig gøre - heck NASA har formået at sende robotter på gåtur deroppe - men det er en tidskrævende og dyr process. Og de fleste kunder (eller chefer) har meget lidt forståelse for at estimeringen koster penge at gennemføre - for små projekter ofte næsten lige så meget som reelt at gennemføre dem. Derfor giver det ofte ikke mening når projekterne er små nok - istedet binder man an på erfaring til at give et hurtigt overslag - med den usikkerhed det involverer og det er der sådanset ikke noget galt i hvis hverken kunde eller chef har lyst til at betale omkostningerne for at gennemføre estimeringen som det selvstændige projekt det reelt er.

Det vigtigste at forstå er at det er et ledelsesproblem hvis man føler sine udviklere skyder i øst og vest når det kommer til estimering - det er fordi man sætter en forventning om et hurtigt overslag og ikke er villig til at betale det som det koster at gennemføre en reel estimering.

8. september 2014 kl. 12:03
CSC-mistænkts computer angrebet med trojaner

Det problematiske i denne retssag er:

  1. Kan det nogensinde bevises hvem der har udført et angreb såfremt maskinen er inficeret med trojanere eller andre på anden vis har fuld remote adgang? Hvis ikke, er der så tale om carte blanche hvis man har en trojan installeret på sin computer? Det vil være dybt problematisk.

  2. Men det vil også være dybt problematisk hvis man kan dømmes for noget hvor det langt fra kan udelukkes at andre har haft remote adgang til maskinen og kan have stået bag angrebet. Så bliver det pludselig enormt farligt at eje en computer tilkoblet internettet.

Det er ikke nogen let situation at skulle repræsentere retssystemet i.

5. september 2014 kl. 16:58
Slut med lønfest i danske it-virksomheder

Mit indtryk er nemlig at trenden snarere går den anden vej - nemlig at flere og flere indser problemerne ved outsourcing til lande som Indien, Pakistan, Kina, Ukraine etc. og hiver projekterne hjem igen (tilsyneladende tager det bare en del tid før alle MBA'er har brændt nallerne på det).

At outsource udviklingen er generelt torske-dumt. For mange virksomheder er udviklingen deres forretning - at outsource sin udvikling er derfor i høj grad at outsource ansvaret for sin forretning, det kommer der sjældent noget godt ud af.

Ved inhouse udvikling er man tæt på problemerne, processerne og de mennesker det direkte vedrører - det har så mange synergi-effekter og fordele at de eneste der reelt kan have gavn af outsourcing er virksomheder der er så store at "inhouse" ikke findes (kontorer og afdelinger spredt over det meste af verden). Dette gælder dog ikke for de fleste danske virksomheder og efterhånden som det går op for dem at hvad der giver mening for store multinationale virksomheder ikke nødvendigvis giver mening for en mellemstor dansk virksomhed, tror jeg vi kommer til at se meget af denne form for udvikling vende hjem igen.

Derudover kommer så at når vi taler udvikling, så er det altså muligt for én person at være mere effektiv end 20 andre udviklere. Det er ganske unikt og betyder at en udvikler altså ikke bare er en udvikler. Og det betyder også at det er farligt at tro at bare fordi en person koster 10x mindre i løn at man så har sparet 9 mand væk (hvis vi ser bort fra al det andet overhead der er ved outsourcing af udvikling der somregel æder den formodede besparelse op anyway)

2. september 2014 kl. 12:02
Er du på vej mod nirvarna?

Den største fejl jeg ser folk begå er at følge modeller slavisk enten fordi man tror andre må vide bedre eller fordi det er blevet dikteret oppefra af ledelse eller investorer at sådan skal man gøre (fordi de tror andre end deres medarbejdere må vide bedre).

Det eneste der giver mening er at studere modellerne, forstå hvad det er for nogle problemer de forsøger at løse og forholde sig til om det er noget der giver mening i forhold til ens virksomhed, projekt, team og virkelighed.

Cherry-pick det som giver mening og ignorer al det hvor tradeoff'et ikke er besværet værd. Sig 100x oftere nej end ja til at tilføje mere overhead til udviklingsprocessen og når det er nødvendigt at tilføje overhead så sørg for at involvere hele teamet i beslutningsprocessen - sørg for alle forstår hvad det er for et problem der skal løses og er enige i at det her er måden at løse det på - træk aldrig rigide processer ned over hovedet på intelligente mennesker som de ikke kan se meningen med, det giver aldrig et godt resultat.

2. september 2014 kl. 08:41
Nu melder Dropbox sig i priskrigen: 1 terabyte for 75 kroner

Forskellen er at de er en virksomhed der lever udelukkende af det her - Google, Microsoft og de andre store spillere kan tillade sig at underminere markedet og køre med underskud derfor kan de presse prisen så voldsomt.

Derfor er det eneste Dropbox har at overleve på at de er tvunget til at være bedre på features, platforms- og device-uafhængighed etc. og det håber de så på folk er villige til stadig at betale ekstra for.

Men det er ikke ligefrem nogen let situation de er i med Google og MS der basicly kan tillade sig at gå helt ned til gratis, hvis det er det som skal til for at vinde brugerne - jeg kan godt forstå de ikke har travlt med at forsøge at matche deres priser.

28. august 2014 kl. 22:19
Sådan blev dansk web-applikation om navne hærdet til viral succes

Det er jo ikke flere data end at det hele kan mappes på forhånd og lagres i RAM - men alting skal jo helst lyde af Big Data efterhånden ...

28. august 2014 kl. 19:05
Nu melder Dropbox sig i priskrigen: 1 terabyte for 75 kroner

Jeg betaler gerne "overpris" - jeg mener rent faktisk de gør det bedre end både Google og Microsoft, sådan er vi jo så forskellige.

28. august 2014 kl. 15:55
Programmering kommer til folkeskolen uden plan for efteruddannelse

En anden ting som det er værd at bemærke er at vi groft sagt designer user interfaces efter laveste fælles-nævner idag. Hvis laveste fællesnævner er en person som til nøds kan bruge Word på basalt niveau og ellers mest ved hvor tænd- og sluk knappen sidder - så må de nødvendigvis også blive derefter.

Som et tanke-eksperiment så prøv at overveje hvilke interfaces der ville blive mulige i en verden hvor alle forstod programmering- og scriptingssprog, basale datastrukturer og havde en grundlæggende ide om hvordan en computer virker. Og for at gøre det realistisk så overvej det først og fremmest til interne virksomhedssystemer hvor brugerne typisk vil have en eller anden videregående uddannelse og målrettet forskellige faggrupper.

Det er svært at forestille sig de præcise konsekvenser, men jeg tror vi ender et helt andet sted end idag hvis det blev virkelighed. Programmering i folkeskolen er første spæde skridt på vejen mod det fremtidsscenarie.

Jeg tror vi kan nå op på helt nye niveauer i forhold til brugen af IT end nogen er istand til at forestille sig idag, hvis vi hævede bund-niveauet markant.

27. august 2014 kl. 16:28
Programmering kommer til folkeskolen uden plan for efteruddannelse

Torben: Det kan godt være vi ikke er helt enige omkring hvordan programmerings-undervisningen bør tilrettelægges i detaljerne, men ros for ovenstående forklaring - det kunne ikke være sagt meget bedre!

Jeg vil dog godt tilføje at chancen for at stortset alle unge der uddannes idag kommer til at arbejde ihvertfald delvist foran en computer er ekstremt stor og muligheden for at automatisere opgaver der løses på en computer er ekstremt meget størrer hvis man har nok indblik i programmering til at kunne anvende diverse former for scripting-sprog.

En af mine drømme i forhold til at alle folkeskoleelever bør have basal forståelse for programmering er netop muligheden for at alle kan optimere og automatisere opgaver i deres hverdag - uagtet hvad deres arbejdsområde er - uden at det er noget der skal involvere IT-folk eller sågar udviklere. Prøv at forestil jer hvor effektive folk pludselig kunne blive hvis alle og enhver havde forståelse for at effektivisere og automatisere computer-assisterede opgaver af vilkårlig art.

Rigtig mange programmer idag understøtter Macroer, Scripting og andre løsninger til automatisering (selv traditionelle programmer i MS Office) - problemet er blot at de er alle forbeholdt os "nørder" idag - almindelige mennesker står somregel af så snart det involverer en smule manuel scripting at opnå resultatet. Istedet har alle afdelinger i større virksomheder jeg er bekendt med en såkaldt Excel-, Word- eller bare "IT"-wizard som resten af kontoret så render til hver gang der er noget (oftest pinligt simpelt) de ikke kan finde ud af. Det er edderrødme ineffektivt og uddannelse er måden at undgå at det også kommer til at stå så grelt til for de kommende generationer af kontor-medarbejdere.

27. august 2014 kl. 16:12
Snævert teknisk fokus på it-uddannelser holder kvinder væk

Kender flere kvinder der har gennemført en Datamatiker-uddannelse. Jeg tror ikke problemet er indholdet, så meget som måden man sælger (eller rettere ikke sælger) de her uddannelse på - der er nok stadig lidt for meget hvide tennissokker og fordomme forbundet med de mere tekniske uddannelser set fra et kvinde-perspektiv.

25. august 2014 kl. 15:28
Obama søger it-folk – og de må gerne kode uden slips

Hvorfor det? Vi har da massere dygtige IT folk herhjemme der kan løfte den opgave for det offentlige, men vi lider lidt under samme problem, nemlig at arbejdsvilkårene for dygtige IT folk ofte er langt bedre i det private erhvervsliv samtidig med at det også er en hel del mere lukrativt.

Det samme problem gør sig gældende for de fleste offentlige stillinger og det er også lidt af samme årsag at de fleste dygtige ledere ender med topposter i det private erhvervsliv istedetfor en ministerstol på Christiansborg.

Sålænge vilkårene i det offentlige ikke kan matche det private erhvervsliv, så er det op ad bakke at tiltrække eliten.

25. august 2014 kl. 09:14
Microsoft: Nu rydder vi op i Windows Store

De kan ikke påstå de ikke var advaret - vi er mange der har kommenteret (også i de pågældende artikler) på problemet og deres lidt for store fokus på kvantitet fremfor kvalitet - specielt i form af deres konkurrence-regler.

F.eks. ideen om at 3 apps giver dig en Lumia 820 - så beder man selv om det!

Det er ikke interessant om et appstore har 100.000 eller 10 mio. apps - det interessante er om det har de højkvalitets-apps de fleste forventer til en moderne smartphone.

Bedre app-udvalg != større app-udvalg

22. august 2014 kl. 14:54
Nyslået NBA-ejer Steve Ballmer forlader Microsofts bestyrelse

Jens: Beklager, det er ikke let at holde styr på alle de Steves :-) Dermed ikke sagt at dit indlæg ikke stadig er i flamebait kategorien :)

21. august 2014 kl. 16:54
Nyslået NBA-ejer Steve Ballmer forlader Microsofts bestyrelse

Jens: Trolls som dig kan sige hvad I vil - problemet er når der er tale om journalister på v2 der bevidst vælger at lægge en EB-vinkel ind - det hører ikke til på et tech-medie.

Morten: Jeg har sendt dig en mail.

21. august 2014 kl. 15:44
Nyslået NBA-ejer Steve Ballmer forlader Microsofts bestyrelse

Det største problem ved vinklingen i artiklen er at det ligesom insinueres at han er pigesur over at Satya skulle have droppet hans strategi og at han derfor går i vrede - det er altså næppe tilfældet.

Hvis nogen interesserer sig for et mere nuanceret billede så kan man læse hans email omkring beslutningen her: http://mashable.com/2014/08/19/steve-ballmer-resigns-microsofts-board/

20. august 2014 kl. 14:35