Sitter på tunnelbanan på väg hem ifrån en konferensen multicore day i Kista, där de pratade om hur hårdvaran håller på att förändras och att mjukvaru-utvecklingen nu måste hänga med.
En faktor i den framtida serverhallen är att man måste se på hur mycket TCO (Total Cost of Ownership) är för en server och då inkluderar detta även elen som behövs för att hålla igång servern. Hårdvarutillverkarna vet detta, men gör vi som utvecklar de program som körs på den?
Många av de program som vi skapar tänker sig bara att de kör på en processor eller på en kärna. Det gör att man ofta inte utnyttjar kraften som finns i datorn och det gör att programmen tar längre tid att köra och därför drar mer el.
Det var detta som slog mig när jag satt och lyssnade idag. Det handlar inte endast om att göra coola program som kan göra flera saker “samtidigt”. Det handlar om mer än så. På samma sätt som bilindustrin har blivit tvungen att tänka på hur de utvecklar bilar så att de utnyttjar bensinen bättre, så måste vi börja tänka på samma sätt när vi utvecklar program.
Tänk er följande scenario om några år. Staten lägger in som ett skallkrav att programmen som stat, myndigheter och landsting skall använda måste utnyttja datorkraften maximalt. Om så inte är fallet får den leverantören inte ens vara med och lägga anbud på nya affärer. Detta ligger inte så lång bort.
Vi behöver hjälp för att göra detta. Vi behöver verktyg, språk och ramverk. Ett steg på vägen är det som görs i Visual Studio. Så, nu är det dags för oss att rädda några jordklot.
Men hur kan man egentligen mäta detta och vem är en utvecklare? Ivar Jacobson vann och jag tror inte att han har utvecklat någon kod på länge. Men å andra sidan tycker jag att vi skall omforma begreppet utvecklare till att gälla alla som är med i ett projekt för att utveckla en lösning. Utvecklare är alltså inte lika med en programmerare. Testare är också utvecklare, likaledes projektledare och byggingenjörer.