Programowanie kluczową kompetencją przyszłości Wojciech Cellary Katedra Technologii Informacyjnych Uniwersytet Ekonomiczny w Poznaniu al. Niepodległości 10, 61-875 Poznań cellary@kti.ue.poznan.pl www.kti.ue.poznan.pl (c) W. Cellary 2016 slajd 1
Teza Naturalnym środowiskiem człowieka będzie (już jest?) środowisko cyfrowe (c) W. Cellary 2016 slajd 2
Trendy w informatyce Współpraca Przetwarzanie w chmurze Architektura usługowa SOA Media społecznościowe Internet Rzeczy Gigadane Multimedia To wszystko jest oparte na programowaniu! (c) W. Cellary 2016 slajd 3
Współpraca Przetwarzanie w chmurze współpraca między osobami, przedsiębiorstwami i instytucjami a informatykami Architektura usługowa SOA współpraca między przedsiębiorstwami i instytucjami Media społecznościowe współpraca między ludźmi Internet Rzeczy współpraca ludzi i rzeczy (c) W. Cellary 2016 slajd 4
Przetwarzanie w chmurze (c) W. Cellary 2016 slajd 5
Przetwarzanie w chmurze Przetwarzanie w chmurze jest modelem biznesowym oferowania sprzętu i oprogramowania na żądanie przez internet za opłatą proporcjonalną do użytkowania Tak jak nie trzeba mieć elektrowni, aby korzystać z energii elektrycznej, tak nie trzeba mieć serwera, aby korzystać z mocy obliczeniowej Każdy, kto ma dostęp do internetu, ma też potencjalny dostęp do aplikacji wszystkich! Demokratyzacja (c) W. Cellary 2016 slajd 6
Przetwarzanie w chmurze Moc obliczeniowa jak elektryczność lub bieżąca woda (c) W. Cellary 2016 slajd 7
Architektura usługowa SOA (c) W. Cellary 2016 slajd 8
Architektura usługowa SOA SOA ułatwia wzajemne interakcje między tymi, którzy mają środki, a tymi, którzy mają potrzeby Integracja różnorodnych systemów w celu zapewnienia centralnej roli klientowi i jego całościowym potrzebom Efektywność i wygoda (c) W. Cellary 2016 slajd 9
Media społecznościowe (c) W. Cellary 2016 slajd 10
Media społecznościowe Nowa forma życia społecznego realizowana przez internet Dwie formy społeczności: społeczności terytorialne (tradycyjne) społeczności treściowe (internetowe) Niestety społeczności treściowe nie sprzyjają spójności społecznej opartej na wspólnych wartościach (c) W. Cellary 2016 slajd 11
Relacje Społeczności terytorialne relacje wieloaspektowe przekazywalność relacji znana tożsamość znana przeszłość wyłanianie autorytetów podążanie za poglądami lidera (wiedza lub zaufanie) hierarchia trudności w opuszczeniu terytorium wspólne interesy i wspólne zagrożenia (długoterminowość) dążenie do kompromisu unifikacja poglądów Społeczności treściowe relacje jednoaspektowe nieprzekazywalność relacji anonimowość ukryta przeszłość każdy autorytetem dla siebie samego manifestacja odmienności równość łatwość opuszczenia wspólnoty wspólne zainteresowania (krótkoterminowość) pozostanie przy swojej opinii zachowanie różnorodności poglądów (c) W. Cellary 2016 slajd 12
Internet Rzeczy (c) W. Cellary 2016 slajd 13
Internet Rzeczy Zgodnie z dawnymi przekonaniami w Wigilię Bożego Narodzenia zwierzęta mówią ludzkim głosem Rzeczy, które nas otaczają: krzesła, drzwi, buty, lampy, samochody będą mówić: do nas Będzie gorzej! do innych ludzi oraz do siebie (bez nas!) w dodatku zawsze nie tylko w Wigilię (c) W. Cellary 2016 slajd 14
Komunikacja rzeczy Każda inteligentna rzecz będzie mieć adres IP Inteligentne rzeczy będą komunikować się przez bezprzewodowy Internet oprócz Internetu ludzi będzie Internet rzeczy (c) W. Cellary 2016 slajd 15
Rozmowy rzeczy Rzeczy będą wysyłać informacje o tym, co im się przydarzyło: skargi oznaki radości Rzeczy będą nam czynić różne propozycje Rzeczy będą współpracować z naszymi rzeczami: rzeczami, które nosimy rzeczami, które mamy Rzeczy będą kontaktować się z innymi rzeczami: aby ochronić nas przed niebezpieczeństwem aby przewidzieć nasze życzenia Wszystko dla naszego szczęścia! Będziemy żyć w cyber-świecie cyfrowo-rzeczywistym (c) W. Cellary 2016 slajd 16
Gigadane (c) W. Cellary 2016 slajd 17
Gigadane Łącząc siły informatycy i matematycy umieją: 1. Przewidywać przyszłość (chociaż nie z pewnością, tylko z dużym prawdopodobieństwem) 2. Znaleźć igłę w stogu siana Uczenie maszynowe zastosowane do analizy gigadanych (c) W. Cellary 2016 slajd 18
Zmiana paradygmatu Od poszukiwania przyczynowości do poszukiwania korelacji Dzięki analizie gigadanych będziemy wiedzieli co się stanie (z wysokim prawdopodobieństwem), ale nie będziemy wiedzieli dlaczego Magia? Wiedza bez zrozumienia (c) W. Cellary 2016 slajd 19
Analiza gigadanych jest spersonalizowana W wyniku analizy gigadanych otrzymujemy prawdopodobieństwo zajścia pewnego zdarzenia w odniesieniu do konkretnej osoby Analiza gigadanych to nie profilowanie Profilowaliśmy, bo nie mieliśmy ani dość danych, ani dość mocy obliczeniowej, aby obliczyć prawdopodobieństwo dla konkretnej osoby Dziś mamy (c) W. Cellary 2016 slajd 20
Korelacja to nie związek przyczynowo-skutkowy Można wykryć nieoczywistą korelację między bezawaryjnością samochodów, a ich pomarańczowym kolorem Jednak pomalowanie konkretnego samochodu na pomarańczowo, nie spowoduje, że nie będzie się psuć Nadużycie analizy gigadanych do szukania przyczynowości na podstawie korelacji, jest błędem metodologicznym Zaskakujące (absurdalne?) korelacje bez związku przyczynowo-skutkowego: http://www.tylervigen.com/spurious-correlations (c) W. Cellary 2016 slajd 21
Konsekwencje Korelacja jest zawsze obarczona błędem to tylko statystyka Jeśli ryzyko błędu przewidywania zmaterializuje się konsekwencje są błahe konsekwencje są poważne, a nawet destruktywne dla systemu naszych wartości Podpowiedź w SMS-ie Skazanie niewinnego (c) W. Cellary 2016 slajd 22
Odrzucić pokusę niesprawiedliwości Ludzie powinni być (nadal) oceniani (sądzeni) za to, co faktycznie zrobili w przeszłości, a nie za statystyczną prognozę, co mogą zrobić w przyszłości (c) W. Cellary 2016 slajd 23
Multimedia (c) W. Cellary 2016 slajd 24
Rzeczywistość Postrzegamy świat przez światło odbite Wirtualna (pozorna) rzeczywistość Postrzegamy świat przez światło wygenerowane Można wygenerować obrazy rzeczywiste abstrakcyjne fantastyczne pozwalające poznać świat poszerzające poznanie świata zapewniające rozrywkę, a nie poznanie świata (c) W. Cellary 2016 slajd 25
Atrakcyjność wirtualnej rzeczywistości Jak dziecko odróżni to co prawdziwe od tego co wirtualne? Atrakcyjność wirtualnej rzeczywistości: Oddziaływanie na wiele zmysłów człowieka Interaktywność Interaktywność burzy tradycyjny podział pomiędzy odbiorcą czytelnikiem, słuchaczem, widzem a twórcą autorem, aktorem, prezenterem (c) W. Cellary 2016 slajd 26
Atrakcyjność wirtualnej rzeczywistości Uczestnik spektaklu otaczającej wirtualnej rzeczywistości nie jest jedynie biernym obserwatorem, przyjmującym nawet najbardziej przerażające obrazy i dźwięki z bezpiecznej perspektywy widza z zewnątrz Uczestnik takiego spektaklu aktywnie go współtworzy, dzięki swoim akcjom i reakcjom, czyli podejmowanym decyzjom Interaktywność będzie wpływać z niespotykaną dotychczas siłą na kształtowanie postaw i osobowości uczniów Wychowanie przez działanie (c) W. Cellary 2016 slajd 27
Reguły w wirtualnych światach W wirtualnym świecie obowiązują wirtualne reguły, które nie muszą odpowiadać prawom natury Dla uzyskania atrakcyjności spektaklu, możliwie duża część reguł rzeczywistego świata jest odrzucana Ponadto, w wirtualnym świecie nie trzeba stosować się do powszechnie przyjętych zasad moralnych zamiast z drugim człowiekiem, wchodzi się bowiem w interakcję ze zbiorem pikseli, choć do złudzenia przypominającym istotę ludzką (c) W. Cellary 2016 slajd 28
Prawdziwe zło w wirtualnym świecie W wirtualnym świecie zło nie pociąga za sobą skutków, przeciwnie niż w realnym świecie: zabity ożyje, ucięta ręka odrośnie, a zgwałcona kobieta nie przeżyje dramatu W wirtualnym świecie zło nie ma negatywnych konsekwencji dla drugiej osoby, bo ta druga osoba nie istnieje jest tylko sztucznie wygenerowanym obrazem i głosem Jednak przyzwolenie na zło, nawet w wirtualnym świecie, z pewnością nie pozostanie bez konsekwencji dla osoby czyniącej zło, w szczególności niedojrzałego ucznia (c) W. Cellary 2016 slajd 29
pozornego Nie ma wirtualnego zła! Jest tylko prawdziwe zło w wirtualnym świecie Zadaniem szkoły jest wychowywanie uczniów w opozycji do każdego zła! (c) W. Cellary 2016 slajd 30
Programowanie kluczową kompetencją w cyber-świecie (c) W. Cellary 2016 slajd 31
Rozkazy Każdy to wie Komputer wykonuje rozkazy ale czyje? cudze wykonywanie programów własne programowanie Nad komputerem w pełni panuje ten, kto go oprogramował (c) W. Cellary 2016 slajd 32
Współzależność Komputer niezbędnym dodatkiem do człowieka oraz Umiejętność posługiwania się oprogramowaniem Człowiek niezbędnym dodatkiem do komputera Umiejętność programowania (c) W. Cellary 2016 slajd 33
Nowa forma wiedzy Wiedza jest domeną człowieka ale ludzka wiedza może być zapisana w formie algorytmu, a dalej programu wówczas komputer posiada wiedzę, która w dodatku jest wykonywalna takiej wiedzy może użyć człowiek bez wiedzy Wygoda i niebezpieczeństwo (c) W. Cellary 2016 slajd 34
Programowanie Programowanie to przełożenie wiedzy w czyn Oprogramowanie jest narzędziem pracy Oprogramowanie jest metodą pracy Oprogramowanie jest wynikiem pracy Umiejętność programowania = zdolność do pracy (c) W. Cellary 2016 slajd 35
Konfrontacja na rynku pracy Człowiek Komputer z oprogramowaniem Komputer stopniowo eliminuje pracowników umysłowych wykonujących prace rutynowe (c) W. Cellary 2016 slajd 36
Eliminacja Każdą pracę umysłową, o której z góry wiadomo jak ją zrobić, lepiej wykona komputer niż człowiek Miejsca pracy oparte na pracy rutynowej po prostu znikną (c) W. Cellary 2016 slajd 37
Stosunek do pracy Jeśli wiesz, jak coś zrobić (rozwiązać problem): Nie rób tego! Oprogramuj komputer niech komputer pracuje za Ciebie według Twojego pomysłu! teraz i w przyszłości dla Ciebie i innych Ty zabierz się za rozwiązywanie kolejnego problemu przecież jesteś człowiekiem, nie komputerem ani robotem! Jeśli przegapisz swoją szansę, ktoś inny oprogramuje komputer, a Ty nie zarobisz na życie (c) W. Cellary 2016 slajd 38
Formacyjne znaczenie programowania (c) W. Cellary 2016 slajd 39
Komputer a programista Komputer jest w 100% racjonalny Emocje może mieć (bardzo często ma) programista, ale nie komputer Za pogram jest w 100% odpowiedzialny programista, a nie komputer Komputer się nie myli, programista tak Każdy błąd programu obciąża programistę (c) W. Cellary 2016 slajd 40
Komputer na którym programista testuje swój nowo napisany program jest jak: Lustro, w którym odbija się jego zdolność do logicznego myślenia i jego wyobraźnia Ręce rzeźbiarza, które w miarę nabierania umiejętności programowania tę zdolność do logicznego myślenia i wyobraźnię kształtują Programowanie drogą do doskonalenia Pod warunkiem, że uczeń się nie zniechęci i nie porzuci celu programowania, ale to zadanie dla nauczyciela (c) W. Cellary 2016 slajd 41
Myślenie algorytmiczne Masz problem? Wymień kroki, w których go rozwiążesz Ludzie, którzy myślą algorytmicznie, skonfrontowani z jakimś problemem: nie uciekają od niego, nie panikują, nie narzekają, tylko zabierają się za jego rozwiązanie: analizują możliwe warianty, sprawdzają warunki, pod jakimi te warianty mogą się zrealizować, wybierają najlepszy Myślenie algorytmiczne jest drogą do przedsiębiorczości i zaradności (c) W. Cellary 2016 slajd 42
Procesy Program statyczny zapis algorytmu Proces program w trakcie wykonywania Zarządzanie procesami w komputerze Procesy są wolne od emocji, więc pozwalają skupić się na czysto racjonalnej stronie zarządzania Współbieżność Szeregowanie Synchronizacja Komunikacja Odporność na błędy transmisji Droga do nauczenia się zarządzania procesami w życiu (c) W. Cellary 2016 slajd 43
Programowanie zespołowe Tak jak złożonych systemów nie programuje się w pojedynkę, tak złożonych problemów nie rozwiązuje się w życiu w pojedynkę Jeden wspólny cel Podział zadań (inaczej niewykonalne) Sukces zależny od najsłabszego ogniwa Droga do wyrobienia w uczniach postaw prospołecznych (c) W. Cellary 2016 slajd 44
Cykl życia oprogramowania Analiza i specyfikacja wymagań Specyfikacja oprogramowania model systemu Weryfikacja modelu Zaprojektowanie architektury systemu podział na moduły Algorytmizacja modułów programowych Implementacja czyli faktyczne programowanie (kodowanie) Testowanie modułów Integracja i testowanie systemu Kształcenie użytkowników Pielęgnacja systemu Ewolucja systemu Likwidacja systemu zastąpienie innym Programowanie w wąskim znaczeniu Programowanie w szerokim znaczeniu inżynieria systemów (c) W. Cellary 2016 slajd 45
Zdolności twórcze Umiejętność programowania przemieni w czyn twórczy potencjał uczniów (c) W. Cellary 2016 slajd 46
Programowanie w szkole w nowym świetle Aspekt utylitarny Aspekt formacyjny Nauczyciel informatyki Nauczyciel wyobraźni i zaradności Szczególne wyzwanie dla edukacji To Państwo macie być takimi nauczycielami! (c) W. Cellary 2016 slajd 47
Wnioski (c) W. Cellary 2016 slajd 48
Przyszły świat Świat będzie inteligentną przestrzenią cyber-fizyczną wypełnioną e-usługami Ponieważ dominującymi e-usługodawcami będą komputery to ludzie muszą być: Twórcami e-usług łączącymi wiedzę dziedzinową z umiejętnością programowania W mniej ambitnej wersji: konfiguratorami personalizatorami adaptatorami re-programistami (c) W. Cellary 2016 slajd 49
Kim chcesz być uczniu gdy dorośniesz? Chcesz być inżynierem? ucz się programowania Chcesz być lekarzem? ucz się programowania Chcesz być ekonomistą? ucz się programowania Chcesz być nauczycielem? ucz się programowania Chcesz być kimkolwiek? ucz się programowania W każdym zawodzie komponent umiejętność programowania będzie kluczowym czynnikiem konkurencyjności (c) W. Cellary 2016 slajd 50
Zależność Przewaga konkurencyjna Innowacyjność Programowanie (c) W. Cellary 2016 slajd 51
Panowanie Nad cyber-światem będą panować ci, którzy go oprogramują Nasi uczniowie mają prawo do swojego kawałka tortu ale to zależy od szkoły, czyli nauczycieli (c) W. Cellary 2016 slajd 52
Dziękuję Wojciech Cellary (c) W. Cellary 2016 slajd 53