Panu Kalliokoski, Solita “Why Custom Software Should Be Open Source” - Mindtrek 2017

26
WHY CUSTOM SOFTWARE SHOULD BE OPEN SOURCE Panu Kalliokoski, senior software developer, Solita Oy Mindtrek 2017, Tampere

Transcript of Panu Kalliokoski, Solita “Why Custom Software Should Be Open Source” - Mindtrek 2017

Page 1: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

WHY CUSTOM SOFTWARE SHOULD BE OPEN SOURCEPanu Kalliokoski, senior software developer, Solita OyMindtrek 2017, Tampere

Page 2: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

INTRODUCING: ME

› Programmer, activist, IT admin, manager› Procurements as both buyer and seller› Project lead / product owner in both closed and open source

development projects› Software development and operations experience in new product

creation, maintenance, and phase-out

Page 3: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

Over

600professionals

Offices in

5cities

Turnover 2016

59million euros

Over

20years

Growth

18%in 2016

Over

1000projects

THIS IS SOLITA

The Employer of the Year

1.in 2017

Recommended by

94 %of our customers

Page 4: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

CAVEATS / RESTRICTIONS

› Chosen point of view: owners and developers of custom software.› Custom software: software developed for a specific, in-house need.› Software: anything that makes machines behave in a well-defined,

specific way.

TL;DR: Open source focuses effort where it has most impact

Page 5: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

SO WHY INDEED?

I’m gonna prove it to you, as far as I can!

Page 6: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

WHAT YOU ARE ABOUT TO HEAR

› Software ROI assessment is misfocused• hard facts to show this

› Benefits of opening source• soft facts to show this

› No harm in opening source• only anecdotal evidence

Page 7: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

WHAT IS THE BIGGEST ASSET YOU GET WITH DEVELOPMENT MONEY?

(in the sense that it will cost you the most to replace if you lose it)

Page 8: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

ANSWER:A few people skilled at using and fixing your tools; they made them.

Page 9: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

EVIDENCE

› Software TCO breakdown*

• The real cost is not the software but making people work with it› New tools and processes take time

• Time lost easily exceeds software development time

› Developer orientation time

* According to 84 TCO evaluations, reported at https://www.computerworld.com/article/2570233/enterprise-applications/the-true-costs-of-software.html

Page 10: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

SO?

Maximise the utility of social/institutional change.*

Open source is an answer – or at least, a piece in the puzzle.

* ”TCO is really about process improvement”, https://www.computerworld.com/article/2570090/it-management/gartner--debunking-five-myths-of-tco.html

Page 11: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

BENEFITS OF OPENING SOURCE

This is where it gets hairy!

Page 12: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

OPEN SOURCE PSYCHOLOGICAL EFFECTS

Page 13: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

EFFECTS ON DEVELOPERS

› Pride› Contact with users› Focus on reusability, documentation, ease of deployment› General-purpose components› Compatibility

That is, maximum impact for the software.

Page 14: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

EVIDENCE

Answers to “how will it affect your attitude or way of working if you write open source?” with my colleagues

› “I put more effort in documentation, changelogs and compatibility”› “It’s much more tempting to take code aesthetics seriously”› “I think on a more high level, how it would be best done”› “It feels good if I can publish something actually useful”

So… it makes you work in the way you should anyway?

Page 15: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

OPEN SOURCE SOCIAL EFFECTS

Page 16: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

EFFECTS ON USERS

Quite few, really. But:› Empowerment› Will to contribute› “Team spirit”› Gratitude

More people able to use and fix your software!

Page 17: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

SO?

Getting people to use your software effectively is hard.Open source has the correct focus.

Page 18: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

NO HARM IN OPENING SOURCE

This is where it gets complicated :(

Page 19: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

PUBLISHING SOURCE CODE

Nothing happens.› No one will even notice› Code no better/worse› It’s the development process that counts

• better prepare right from the start

Page 20: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

THE WORST THAT COULD HAPPEN

Page 21: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

THREATS AND ANSWERS

› Security problems?• Fix them. Now.

› Taking advantage?• Licenses for mutual benefit

› Helping your competition?• They don’t have your integrations, user base, and experts• Maybe you should be selling your software as a service :)• Maybe you should hire their experts.

Page 22: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

SO?

The threats are imaginary.OTOH, opening old codebases might be useless or too much work (depending on the code).

Page 23: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

CONCLUSION

I convinced you, right? No?

Page 24: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

DOES IT PAY OFF?

› You want the psychological / social effects› Best effect by actually opening the source› Doesn’t help old projects much

Someone: “It’s not realistic to put all that extra effort in...”Me: “How idealistic is it to do your work properly?”

Page 25: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017

Twitter @SolitaOywww.solita.fi

THANKS :) SEE YOU IN 2017 OPEN SOURCE SUMMIT EUROPE?

https://publiccode.eu/#action

Page 26: Panu Kalliokoski, Solita  “Why Custom Software Should Be Open Source” - Mindtrek 2017