My Personal and shared experience about starting an open source project based on the book of Karl Fogel. Focus on how to get involved with open source communities. History of open source.
How to start an open source project slides-dec2016
1. 1
Dirk Frigne
6 December 2016
Praktijkervaring rond het
opzetten, onderhouden en
uitrollen van open source
2. Doel
•Inzicht verwerven in de wereld van open
source
•Helicopter overzicht van de wereld van de
geospatial Open source: “OSGeo”
•Inzicht verwerven in de dynamica van open
source community's
3. Producing Open Source Software
How to Run a Successful Free Software Project
Karl Fogel
http://producingoss.com/en/producingoss.pdf
At parties, people no longer give me a blank stare when I tell them I write free software. "Oh, yes, open
source—like Linux?" they say. I nod eagerly in agreement. "Yes, exactly! That's what I do." It's nice not
to be completely fringe anymore. In the past, the next question was usually fairly predictable: "How do
you make money doing that?" To answer, I'd summarize the economics of open source: that there are or-
ganizations in whose interest it is to have certain software exist, but that they don't need to sell copies,
they just want to make sure the software is available and maintained, as a tool instead of as a commodity
6. 07/12/16 6uGent
Dirk Frigne introduced
class-D mono amplifier with a low-pass filter for powering subwoofers
ir. “electrotechnisch ingenieur, zwakstroom” - 1986
7. 07/12/16 7uGent
from Software Engineering
Agile
Scrum
Iterations
Engineering
>30 year professional experience
As Software Developer
Reading books, on the job training
8. 07/12/16 8uGent
Bespoke Software - 1993
● DFC Software Engineering founded
● Graphical Software – technical software solutions
– Using commercial CAD platforms to develop user Interfaces to transform for
the creation of graphical documentation
– Clients: utility companies Gas/Water/Electricity/Telecom
– Projects: typical 2 – 5 years
– Team: typical 2- 7 person
– 2002: evolution to the use of open source libraries
– Hires: engineers, IT-experts
– Train on the Job.
9. 07/12/16 9uGent
Geosparc Founded - 2008
● Focus on open source
● Focus on Spatial Data Infrastructures
● Transformation from project company to
platform company
● 2013: decision to transform to product company
● 2016: spotbooking, product to manage the usage
of the public domain
10. 07/12/16 10uGent
to geo-it FOSS¹ expert
Dirk Frigne receives the INSPIRE
conference award
Dirk Frigne becomes Vice
President of OSGeo²
The second Vice-President, from Europe, is Dirk
Frigne. Dirk is an entrepreneur serving OSGeo
as Charter Member and member of geomajas
PSC. He is involved in the INSPIRE Committee
and received the Award for excellence in geo-
information technologies.
31 Januari 2016
2015 – Lisbon
INSPIRE Conference
[1] FOSS: Free Open Source Software
[2] OSGeo: Open Source Geospatial Foundation
[3] IOF: Industry Research & Development Fund
Januari 2014
Dirk Frigne joins the board of the IOF³
Ghent University
13. 07/12/16 13uGent
Geomajas - Platform
OSGeo project to facilitate the build of Spatial Data Infrastructure’s
Started in 2006
Kul – DFC Software Engineering – Flemish environmental department
JAVA based
28. Other initiatives
- Berkeley Software Distribution (BSD)
AT&T – loosley proprietary research project
(late 1970)
- X Window System (MIT) (mid 1980)
- Tex (free, publishing-quality typesetting
system)
29. Free vs Open
Free as in the “freedom to speech”, not as in
“free beer”
Motivation: software becomes more and
more important; more and more systems
and lives depend on it; so it should be free
(and open)
31. Basic principles
Identify a need
Develop a software prototype
Build a community
Set an ecosystem, with
– Users
– Developers
– Architects
– Service providers
All working together and playing by the rules
Look and feel matters! *New
Every good work of software starts by scratching a developer's personal itch.
34. What next?
Transforming private vision into a public one
Mission statement:
“Geomajas is the open source platform
to create Web GIS applications”
35. Explain the project
“integrate data real time from several
sources into one easy to deploy map in a
way the users can understand the
information presented and can act upon
the data as if it where real world objects”
36. What next?
Set up technical environment
Website
Github
Mailing list
Developer Guidelines
Demo's,
screenshots, …
37. Choosing a license
Berkeley Software Distribution (BSD)
Redistributie toegelaten, zowel in broncode
als binair.
Copyright & Disclaimer verplicht
Je mag geen gebruik maken van de namen
van de universiteit van California,
Berkeley noch van de contributors om de
software te promoten.
38. Choosing a license
GNU General Public (GPL) license:
“Copyleft” - licentie
Recht om het werk te wijzigen, afgeleide
werken te wijzigen en/of te herdistribueren
Onmogelijk om het afgeleid werk
voorwaarden op te leggen die de vrijheid
beperken.
39. Be open
Open source your code...
… not your time
Be authentic …
Avoid private discussions
Explain why you decide things...
Contribute to other communities
42. Working together (co-creation)
Forkability of a project
●
The 'force' of an open source project
●
Binding communities together
Project organisation
●
Benevolent Dictator
●
Consensus-based Democracy
●
Voting (+1 +0 -0 -1)
43. Working together
Be as open about your organization's goals
as you can without compromising
business secrets
Business goals differ with every project
Ex: Google / Facebook / university / SME /
freelancer / employee / government
44. Money
•Most free software is written by paid developers
•Financial backing is good for the sustainability
•Can also divide a project in two groups!
•Respect non paid contributions!
•Money influences the project, so does adding time.
•All OSS is commercial software
45. What money can't buy
Commit rights
Participating in the decision process
Get respect in the community
49. Why geosparc sponsors
Marketing
To be able to create more impact
To differentiate and to attract new people
Hire for the Long Term
People are important!
Everybody 'owns' the project
52. Communications
You are what you write
Write terse mails
Don't be rude
Use your real name
Activity on the mailing list …
Be authentic
53. 55
Quote
"Hire and promote first on the basis of integrity;
second, motivation; third, capacity; fourth,
understanding; fifth, knowledge; and last and
least, experience. Without integrity, motivation is
dangerous; without motivation, capacity is
impotent; without capacity, understanding is
limited; without understanding, knowledge is
meaningless; without knowledge, experience is
blind." — Dee Hock, founder of Visa.
Milestone 1980
Before 1980: Sharing was common use
- Hardware was not compatible (no standards)
- There was no internet – sharing was not simple
Pre 1980: Hardware was a differentiator
Machine depended (Assembler)
No high level programming languages
Sharing software was common practice
Software became USP
Software became ‘protected
IBM approached Microsoft in July 1980 to provide the operating system for its upcoming personal computer. For this deal, Microsoft bought a system called 86-DOS from a company called Seattle Computer Products and, after adapting it for the PC, delivered it to IBM as 'PC DOS' in exchange for a one-time fee of $50,000.
Milestone 1980
Richard Stallman worked in the Artificial Intelligence Lab at the
Massachusetts Institute of Technology in the 1970s and early '80s
- In 1980, Stallman and some other hackers at the AI Lab were refused access to the source code for the software of a newly installed laser printer, the Xerox 9700. Stallman had modified the software for the Lab's previous laser printer (the XGP, Xerographic Printer), so it electronically messaged a user when the person's job was printed, and would message all logged-in users waiting for print jobs if the printer was jammed. Not being able to add these features to the new printer was a major inconvenience, as the printer was on a different floor from most of the users. This experience convinced Stallman of people's need to be able to freely modify the software they use
Stallman wrote:
The modern computers of the era, such as the VAX or the 68020, had their own oper-
ating systems, but none of them were free software: you had to sign a nondisclosure
agreement even to get an executable copy.
This meant that the first step in using a computer was to promise not to help your
neighbor. A cooperating community was forbidden. The rule made by the owners of
proprietary software was, "If you share with your neighbor, you are a pirate. If you
want any changes, beg us to make them."
Biggest accomplishment: GNU licence
GNU General Public License (GPL)
In effect, it uses copyright law to achieve an effect opposite to
that of traditional copyright: instead of limiting the software's distribution, it prevents
Anyone , even the author, from limiting distribution. For Stallman, this was better than simply putting his code into the public domain. If it were in the public domain, any particular copy of it could be incorporated into a proprietary program (as also sometimes happens to code under permissive open source copyright licenses)
Tools:
- Emacs
- GCC
+ first operating system
- Linux (Linus Torvalds)
- X Windows System.
Slides 3 - 7
Motivation: the pleasure of working with like-minded collaborators,
or even by a simple human desire for glory.
Software must run: common interest to work together …
+ high quality code as a result
- it was just better code.
Businesses are already using open source software in day2day operations.
Browser war:
Netscape vs Microsoft internet explorer (1990)
This was a first war for data-sharing?
GPL: het gebruik maken van de copyright wetgeving om copyright te voorkomen.
Even as a sponsor, obey the rules!
Be authentic
Explain Why
Commit rights
Participating in the decision process
Get respect in the community
You are being watched!
Work together with others!
(& learn to work together)
Share idea's and meet interesting people
Help people and get help when needed
Respect and get respect for what you do
Pizza & Beer & Conferences
Work together with others!
(& learn to work together)
Share idea's and meet interesting people
Help people and get help when needed
Respect and get respect for what you do
Pizza & Beer & Conferences
Work together with others!
(& learn to work together)
Share idea's and meet interesting people
Help people and get help when needed
Respect and get respect for what you do
Pizza & Beer & Conferences
Marketing
Dual – licensing
To be able to create more impact
To differentiate and to attract new people
Hire for the Long Term
People are important!
Everybody 'owns' the project
Take ownership of your project
Meet interesting people
Co-create
Be part of the community