Wolne i otwarte oprogramowanie oraz jego wpływ na stan informatyki Free and Open Source Software Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 1
Ruch open source Jest to ruch oddolny, od użytkowników dla użytkowników Rozpoznawalny w świecie biznesu Oprogramowanie, które skutecznie działa Z dostępem do kodu źródłowego, najczęściej legalnie darmowe lub po kosztach dystrybucji * ) Trzeba rozróżnić: Otwarte oprogramowanie (open source software) Wolne oprogramowanie (free software) * ) wolne i otwarte oprogramowanie nie stoi na przeszkodzie zarabianiu Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 2
Doświadczenie Oprogramowanie powstające w modelu otwartym ma bardzo ciekawe cechy, zarówno z praktycznego jak i dydaktycznego punktu widzenia Mam już blisko 5 lat doświadczeń z projektami open source i free software głównie pozytywnych Z powodzeniem korzystam z różnych otwartcyh systemów operacyjnych, głównie typu Linux Uważam, że od 2,5 roku można odpowiedzialnie instalować systemy linuksowe użytkownikom z mniejszą wiedzą dotyczącą komputerów i informatyki Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 3
Proces open source Release early, release often Full-disclosure (pełny dostęp do kodu źródłowego, zasobów programów oraz przepisów na ich skompilowanie) Poleganie na odzewie ze strony użytkowników (raporty o błędach, propozycje zmian i ulepszeń) Szeroko pojęta rozproszona współpraca wielu osób kontaktujących się przez internet (często nie znających się osobiście) Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 4
Proces open source Każdy może brać udział w projekcie, uznanie zależy od umiejętności (programowanie, testowanie, naprawianie, dokumentowanie), podejścia, zaangażowania oraz dobrej oceny swoich propozycji przez innych Podejście bardziej zbliżone do akademickiego (publikowanie i wymiana wiedzy, budowanie nowego na bazie znanych wyników) Mama uczyła, że należy się dzielić Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 5
Narzędzia używane w procesie Systemy zgłaszania i śledzenia błędów (Bugzilla, Trac, Mantis i inne) Publiczne listy dyskusyjne (e-mail) Dyskusje on-line (irc) Fora dyskusyjne (www) Wiki (www) Repozytoria kodu (CVS, SVN, Mercurial, Git, Bazaar, bzr i inne) Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 6
The Source Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ
Kod źródłowy W ruchu open source najważniejsze są programy, ich jakość, ich możliwości a wszystko ma jedno źródło: Jest nim kod źródłowy! Swobodny dostęp do kodu źródłowego pozwala na bardzo wiele. Można np. zorientować się jak działa dany program, można go ulepszać i zmieniać. Jest to nieoceniony sposób powiększania wiedzy, zwłaszcza jeśli studiuje się informatykę :-) Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 8
Typowe wykorzystanie kodu źródłowego Najbardziej typowym wykorzystaniem jest kompilacja, instalacja i uruchamianie programów Nie wszyscy mają chęć i umiejętności instalacji programów ze źródeł Dlatego powstają gotowe do instalacji zbiory oprogramowania, podzielone na pakiety (package) Wyborem kodu źródłowego z różnych punktów czasowych, kompilacją i przygotowaniem pakietów zajmują się opiekunowie projektu lub dystrybucji Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 9
Etapy przygotowania programu Etap Jak? Stworzenie programu Pomysł, projekt, programiści Dystrybucja Archiwum (zip, tar, itp.) Przygotowanie do kompilacji Kompilacja configure make Instalacja make install Zapakowanie (packaging) Dystrybucja Instalacja Aktualizacja Narzędzia tworzenia pakietów Pakiet (rpm, deb, itp.) Narzędzia do zarządzania pakietami Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 10
Studenci a open source Aby móc poznawać zalety i wady sposobu pracy w stylu open source studenci powinni brać udział w otwartych projektach: współpracując z innymi studentami z różnych uczelni tworząc własne otwarte projekty (możliwość, że po semestrze projekt zginie) ulepszając istniejące, przydatne projekty (kod, dokumentacja, tłumaczenia) Infrastruktura sourceforge.net pozwala każdemu stworzyć projekt i zapewnia wspomniane wcześniej narzędzia (witryna domowa, repozytorium, itp.) Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 11
Środowisko Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 12
Znane postacie free & open software Richard Mark Stallman Eric S. Raymond Theo de Raadt Ruch GNU, licencja GPL The Cathedral and the Bazaar OpenBSD Linus Torvalds Guido van Rossum Larry Wall Linux Język Python Język Perl Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 13
Merytokracja Talk is cheap Show me the code Rację ma ten, kto lepiej trafia w meritum sprawy, jest bardziej merytoryczny Każdą dyskusję można wygrać, jeśli jest się pewnym swojego stanowiska i umie je empirycznie uzasadnić Gadanie bez sensu lub trollowanie (świadome denerwowanie) to pewny sposób na utratę szacunku Pomyłki nawet w drobnych detalach powodują, że można zostać posądzonym o brak wiedzy lub gadanie bez sensu Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 14
Hacker czyli kto? Hakerzy: 1) osoby zaangażowane w łamanie zabezpieczeń komputerowych 2) społeczność programistów i entuzjastów skupionych w latach 1960 wokół MIT AI Lab 3) hobbyści sprzętu (1970) i oprogramowania - gry, odbezpieczanie programów, scena demo (1980-1990) Cracker, Script-kiddie Czarny i biały charakter (black-hat, white-hat) Hakerem 2) nie jest ten, kto mówi tak o sobie, hakerem jest ten, o którym tak mówią inni. Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 15
Hacker HOWTO How to Become a Hacker http://catb.org/~esr/faqs/hacker-howto.html Jak zostać hackerem http://www.jtz.org.pl/inne/hacker-howto-pl.html Postawa: Świat jest pełen fascynujących problemów oczekujących na rozwiązanie Nikt nigdy nie powinien rozwiązywać problemu dwa razy Znudzenie i harówka są złe Wolność jest dobra Postawa nie zastąpi kompetencji Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 16
Hacker HOWTO Umiejętności: Naucz się programowania (C, Perl, LISP; czytaj i pisz kod) Weź jeden z UNIXów dostępnych z kodem źródłowym i naucz się go używać i zarządzać nim Naucz się używać World Wide Web i pisać w HTML Status: Pisz oprogramowanie z udostępnionym kodem źródłowym Pomagaj testować i usuwać błędy w programach z udostępnionym kodem źródłowym Publikuj użyteczne informacje Pomóż działać infrastrukturze [internetowej] Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 17
Różne losy projektów Projekty dobrze znane i prawie nieznane Wiele projektów o podobnych celach lub funkcjonalności Kopalnia pomysłów sourceforge.net Częsty brak aktywności i rozwoju takich projektów Fork jak najbardziej zdarza się w świecie wolnego i otwartego oprogramowania Syndrom Nie wynalezione tutaj (NIH) W prawdziwym świecie przetrzymają tylko najsilniejsi Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 18
Społeczności lokalny folklor Wokół projektów powstają tzw. społeczności (ang. communities), składają się one z użytkowników zainteresowanych danym pro{jektem gramem duktem} W przypadku, gdy ktoś wybiera rozwiązania inne niż dotychczas używał (np. zmienia system operacyjny) często jest to wybór emocjonalny Przejawia się to czasem bardzo żywymi dyskusjami, prowadzącymi nawet do obelg nie dziwi więc etykietka gorliwych (ang. zealots) przypinana takim użytkownikom Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 19
Doktryna niewystarczającego pochlebstwa Jak wspomina w swoim blogu John Dvorak: Jesienią 2004 Walt Mossberg, dziennikarz techniczny Wall Street Journal, zrecenzował nowy produkt Apple imac G5. Rzecz bardzo mu się spodobała, o czym może świadczyć pierwszy akapit: "Piszę te słowa na najbardziej eleganckim komputerze typu desktop, na którym miałem okazję pracować. Mam na myśli komputer, który jest nie tylko wyjątkowo piękny, ale szybki i potężny, bez wirusów, a do tego w zaskakująco przystępnej cenie." Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 20
Doktryna niewystarczającego pochlebstwa Mossberg pisał, że imac: działał bez zarzutu i sprawnie, był niemal bezgłośny i kosztował mniej niż porównywalne maszyny z Windows. Jedyne uwagi dotyczyły braku czytnika kart pamięci do łatwego odczytu zdjęć z aparatów cyfrowych oraz nieco zbyt małej pamięci w porównaniu do podobnych maszyn z Windows. http://www.dvorak.org/blog/?p=16803 http://machinist.salon.com/feature/2008/03/18/true_enough_excerpt_2/index.html Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 21
Doktryna niewystarczającego pochlebstwa Artykuł Mossberga miał około 900 słów, tylko 70 z nich czyli ok. 8% sugerowało cokolwiek zbliżonego do krytycyzmu. Firmie Apple tak spodobał się artykuł, że jego części zostały wykorzystane w materiałach reklamowych. Szef Apple, Steve Jobs, cytował go w swych wystąpieniach. Jednak skrzynka e-mail Mossberga wypełniła się krytycznymi uwagami od zwolenników marki Apple, włącznie z pomówieniami o ukryte finansowanie go przez rywali Apple. Mossberg nazwał ten efekt doktryną niewystarczającego pochlebstwa. Innymi słowy: KRYTYKA MOJEGO WZMACNIACZA WŁASNEGO EGO JEST ZABRONIONA! Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 22
Licencje Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 23
Rodzaje oprogramowania... Zamknięte Komercyjne, płatne Ograniczone (shareware) Próbne (trial) Darmowe, gratis (np. sterowniki) Otwarte oprogramowanie (dostępny kod źródłowy) Wolne oprogramowanie Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 24
... wynikają z licencji EULA (End-User License Agreement) gromada prawników wymienia użytkownikom, czego z oprogramowaniem im robić nie wolno GPL (GNU General Public License) jeden człowiek mówi drugiemu co z oprogramowaniem mu robić wolno http://www.regdeveloper.co.uk/2006/10/29/microsoft_vista_eula_analysis BSD (Berkeley Software Distribution) można używać w sposób dowolny, wystarczy otwarcie o tym wspomnieć Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 25
GPL Licencja typu: używasz i ulepszasz, więc udostępnij swoje ulepszenia Wolność 0: wolność do uruchamiania programu jak sobie życzymy Wolność 1: wolność do studiowania kodu źródłowego oraz zmieniania go aby robił co sobie życzymy Wolność 2: wolność do dystrybucji dokładnych kopii innym osobom kiedy sobie życzymy Wolność 3: wolność do dystrybucji kopii własnych zmodyfikowanych wersji innym osobom kiedy sobie życzymy Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 26
BSD Licencja typu: używasz napisz o tym uczciwie. Możliwość wykorzystania w sposób zamknięty. Możliwość dystrybucji dokładnych kopii, lub sprzedaży produktów bazujących na danym oprogramowaniu, pod warunkiem wymienienia Uniwersytetu Berkeley w materiałach reklamowych Możliwość redystrybucji własnych zmian w postaci źródłowej lub binarnej, pod warunkiem zachowania not autorskich BSD (copyright notices): w plikach - przy redystrubucji źródeł, w dokumentacji - przy redystrybucji binariów Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 27
Open-Source Initiative Różne licencje otwarte w rozumieniu OSI Mozilla Public License (MPL) Apache License Microsoft Public License (Ms-PL) GNU Library General Public License (LGPL) http://www.opensource.org/ http://www.opensource.org/licenses Inne licencje: Microsoft Shared Source License Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 28
Przykłady Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 29
The Codebreakers Program dokumentalny BBC World o Wolnym i Otwartym Oprogramowaniu i ich rozwoju (maj 2006) http://www.apdip.net/news/fossdoc http://ics.p.lodz.pl/~wiktorw/codebreakers Poruszane tematy: Piractwo i koszty oprogramowania Znajomość tylko komercyjnych rozwiązań Licencje, ograniczenia i wolności Cyfrowa przepaść między krajami Wykorzystanie FOSS w szkołach ( jeżdżąca klasa z komputerami) Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 30
OLPC One Laptop Per Child Sprzęt za ok. 150USD Dostosowany do możliwości dzieci Na zamówienia rządowe Give one, get one Dostarczony już do wielu krajów http://laptop.org Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 31
Unia Europejska IDABC Interoperable Delivery of European egovernment Services to public Administrations, Businesses and Citizens http://europa.eu.int/idabc/ IDABC Open Source Observatory http://ec.europa.eu/idabc/en/chapter/452 EU to consider buying open-source software http://www.iht.com/articles/2008/03/05/business/open.php Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 32
Stany Zjednoczone Tylko Open Source w amerykańskiej US Navy Jak powiedział wiceadmirał Mark Edwards: Czas technologii własnościowych musi dobiec końca. Nie będziemy dłużej akceptowali systemów z ograniczeniami dla sprzętu, oprogramowania i danych. Nie możemy zaakceptować rosnących kosztów [obsługi] obecnej infrastruktury. Na rynku cywilnym sytuacja jest zupełnie inna. Niektóre koncerny z prywatnego sektora są w stanie obcinać swoje koszty o 90 procent, zachowując przy tym tempo rozwoju. Wiceadmirał sugeruje, że przewaga w innowacyjności IT jest kwestią bezpieczeństwa narodowego. http://www.heise-online.pl/news/item/3344 Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 33
Open source w innych krajach Chiny Asianux, Red Flag Linux Rosja Konsorcjum ARMADA, Linux w każdej szkole do 2009 http://osnews.pl/armada-wprowadzi-pingwina-do-rosyjskich-szkol/ Brazylia Indie Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 34
Znane oprogramowanie OpenOffice Platforma Java MySQL Serwery Apache Mozilla Firefox GNU/Linux GNU/OpenSolaris Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 35
Możliwości Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 36
Just For Fun Linux powstał z zainteresowań jednego człowieka, zakwitł na serwerach, a wyrósł na rozwiązanie szeroko znane i stosowane Linux (kernel) można skompilować na wielu platformach sprzętowych, od mainframe po urządzenia wbudowane: routery, switche platformy mobilne, telefony komórkowe Farmy renderujące w większości Linux, niskie koszty systemu (DreamWorks: 3000 procesorów serwerowych, Shrek 3 to ponad 20mln godzin renderowania) http://www.linuxjournal.com/article/9653 Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 37
O co dbają użytkownicy? Nieważne jaki system, najważniejsze są: Dane Aplikacje do ich przetwarzania Koronny przykład: Programy specjalistyczne Gry Oprogramowanie wieloplatformowe Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 38
Rozwój zaangażowania w open-source Krytyczne podejście Pierwsze próby (NAJWAŻNIEJSZE!!!) Najlepiej: instalacja multiboot (dodatkowy OS) Używanie Wzbogacanie i ulepszanie (tweaking) Distro-hopping Fora dyskusyjne Dzielenie się wiedzą z innymi Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 39
Zagrożenia Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 40
Patenty na oprogramowanie Nawet średnio skomplikowane programy mogą naruszać jakiś patent (submarine patent) Czy sensowne są patenty na rzeczy wydawałoby się oczywiste? jak np. wyszukiwanie liniowe, sortowanie bąbelkowe czy one-click-buy Ale jak najbardziej patenty na złożone alogorytmy, np. szyfrujące, kodowanie audio/wideo przykład: patent na umieszczanie w urządzaniach podłączanych przez USB sterowników odczytywanych przez system operacyjny (niepotrzebne dodatkowe płyty ze sterownikami) - z pewnością nie będzie to rozwiązanie wieloplatformowe Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 41
Patenty na oprogramowanie Gromadzenie patentów na wszelki wypadek (patent portfolio) Agresywne wymuszanie przestrzegania patentów (patent trolling) Bitwy patentowe (jeszcze do nich nie doszło na dużą skalę, ale wszyscy się ich obawiają) Kato Starszy parafraza: Poza tym uważam że patenty na oprogramowanie należy zniszczyć. Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 42
Binarne sterowniki Jak producenci sprzętu wspierają (lub nie) model otwartego oprogramowania? własne sterowniki dokumentacje, specyfikacje NDA deweloperzy kernela sami napiszemy dla was sterowniki Problemy z bezpieczeństwem (nvidia, Flash Plugin) Rozwój hamowany przez zamknięte oprogramowanie niemożność zastosowania nowszego podsystemu grafiki z powodu braku sterowników grafiki w nowym formacie (Fedora Core 5, X.org-7.0 zamiast 7.1) Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 43
Binarne sterowniki Można wskazać następujące grupy producentów, zależnie od ich stosunku do otwartego oprogramowania: 1.Producenci, którzy są skłonni dawać wsparcie w postaci dokumentacji lub otwartych sterowników. 2.Producenci, którzy po prostu chcą mieć pewność że ich sprzęt działa pod Linuksem. 3.Producenci, którzy chcą mieć pewność że ich sprzęt działa przy wsparciu wyłącznie sterowników binarnych. 4. Producenci, których wcale to nie obchodzi. Wielu producentów będzie wspierać wyłącznie binarne sterowniki jeśli będzie to wystarczające, ale udostępnią dokumentację i będą wspierać rozwój sterowników jeśli nie będą mieć innego wyboru. http://lwn.net/articles/195445/ Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 44
WiOO jest zagrożeniem? The FOSS movement is causing disruption in the previouslyaccepted proprietorial software-based retrictive model of creating software, perceived norms and FUD-based (fear, uncertainity and doubt) marketing practices of the proprietary software world. Ruch wolnego i otwartego oprogramowania powoduje zamieszanie w dotychczas akceptowanym, własnościowym, ograniczającym modelu tworzenia programów [licencje, funkcjonalność zależna od ceny], postrzeganych normach oraz praktykach marketingowych bazujących na niekompletnej prawdzie (FUD) świata komercyjnego oprogramowania. http://fossmullah.wordpress.com/2006/05/18/bbcs-documentary-and-software-freedom/ Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 45
Strategia Microsoft Ustanowić standard de facto Uwieść deweloperów Efektywny ewangelizm (wojna) http://antitrust.slated.org/www.iowaconsumercase.org/011607/3000/px03096.pdf Podatek na rzecz MS (Microsoft tax) Steve Ballmer (monkeyboy): Developers, developers, developers, developers http://www.ntk.net/ballmer/mirrors.html Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 46
Filozofia Ubuntu Nasza praca nad Ubuntu odbywa się w myśl zasady wolności oprogramowania, która taką mamy nadzieję będzie się upowszechniać i przyniesie światu wiele korzyści. Kodeks Postępowania Ubuntu Bądź rozważny. Zachowaj szacunek. Współpracuj. W przypadku nieporozumień zasięgaj opinii innych. W przypadku wątpliwości poproś o pomoc. Odchodź z wyobraźnią. http://ubuntu.pl/manifest.php Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 47
Cytat "First they ignore you, then they laugh at you, then they fight you, then you win." Najpierw cię ignorują, potem się z ciebie śmieją, później z tobą walczą, a na końcu zwyciężasz. Mahatma Gandhi Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 48
Dziękuję za uwagę! Free and Open Source Software Wiktor Wandachowicz, Instytut Informatyki PŁ 49