Metodyka pisania kursu i socjologia tworzenia produktu. Kulisy kursu Pythona.

Aby napisać dobry kurs/artykuł bądź jakąkolwiek inną formę pisaną - na początku twórca musi zadać sobie kilka prostych pytań:

  • Do jakiej grupy ludzi adresowany jest kurs?
  • Jaki jest profil adresowanej grupy - jaka jest jej specyfika a jakie jej potrzeby?
  • Jaka powinna być szczegółowość podawanej treści?
  • Czy autor chce podać wszystkie treści "jak na tacy", czy zachęcić czytelnika do poszukiwań?

Od odpowiedzi na wszystkie postawione powyżej pytania zależy jakość przygotowanego materiału.

Należy jednak dodać, że te pytania, odpowiednio przetworzone, umożliwiają przygotowanie konceptu jakiegokolwiek produktu, dlatego przykłady, jakimi będę posługiwał się w tekście - odnoszą się do różnych sytuacji - także tych z życia wziętych.

Skupmy się jednak na każdym problemie osobno - w sposób ogólny:

Do jakiej grupy ludzi adresowany jest produkt/dzieło/materiał?

Definiowanie odbiorcy to chyba najważniejszy krok w procesie twórczym. Zarówno pisarze, muzycy, programiści jak i naukowcy precyzują, do kogo kierowane jest ich dzieło/rozwiązanie. W momencie pominięcia tego kroku następuje rozmycie pomiędzy funkcjonalnością a intencją. Czy programista, który pisze kalkulator dla statystycznego Kowalskiego, zawrze w nim funkcje całkowania i analizy Fouriera? Można też odwrócić sytuację - czy lutnik wyprodukuje dla bardzo zaawansowanego gitarzysty instrument o dwóch strunach?
Rozmycie to więc polega na niczym innym, jak na niezrozumieniu odbiorcy.

Jaki jest profil adresowanej grupy - jaka jest jej specyfika a jakie jej potrzeby?

Odpowiedź na pytanie poprzednie jest odpowiedzią ogólną. Stwarza pewien zarys rozwiązania problemu, jednakże nie definiuje jego poszczególnych elementów. Uzupełnieniem jest powyższe pytanie. Każdy twórca musi zrozumieć mechanizmy, jakie są szczególne do adresowanej grupy, oraz poznać potrzeby danej grupy. Na przykład - o programistach wiadomo tyle, że - do pracy potrzebują komputera, pewnej wiedzy technicznej, matematycznej i metodycznej. Czy więc dobrym produktem dla takowej grupy jest traktat filozoficzny? Otóż, o ile znajdą się w tej grupie osoby, które interesują się takową tematyką, to nie można tego zagadnienia generalizować do całej grupy. Aktualny poziom wiedzy cywilizacji jest na tyle duży, że o ile matematyka była kiedyś bardzo mocno powiązana z filozofią, to w zaistniałej sytuacji technologicznej są to aktualnie nauki bardzo rozległe i dalekie.
Problem pogłębia się jeszcze bardziej, kiedy autor chce skierować swój produkt do naprawdę małej niszy. Okazuje się że każda grupa dzieli się na podgrupy, i im bardziej szczegółowego tematu chce dotknąć nasz produkt, tym bardziej szczegółowe badania musimy wykonać. Można to zaprezentować na poniższym diagramie (rys. 1) - przykładem jest tutaj zawód nauczyciela.

Rysunek 1

Rys. 1. Diagramie przykładowego podziału nauczycieli

Otóż okazuje się, że każdy nauczyciel powinien posiadać pewną wiedzę ogólną, predysponującą go do zawodu. Produkt/artykuł dla takiego nauczyciela może więc dotyczyć szerokiej gamy zagadnień z dziedziny samego nauczania jak i jego metodyki. W diagramie tym wyszczególnionych jest jednak kilka podgrup nauczycieli. Nauczyciel przedmiotów technicznych i manualnych powinien posiadać oprócz informacji z zakresu metodyki nauczania, także narzędzia i informacje o technice - dlatego do takiego nauczyciela może być skierowana prasa naukowa i techniczna, czy choćby programy specjalne komputerowe. Inne potrzeby będzie miał nauczyciel przedmiotów ścisłych - jak np. zbiór najważniejszych wzorów fizycznych i chemicznych. Grupa docelowa może być złożona z innych grup - jak nauczyciel plastyki. Oprócz narzędzi do rzeźby i malarstwa musi znać nieco faktów z dziedzin humanistycznych. W ten sposób można znaleźć potrzeby różnych innych grup - jednak tę kwestię pozostawiam czytelnikowi do rozważenia, jeżeli ciekawy jest jak to działa w innych sytuacjach.

Jaka powinna być szczegółowość podawanej treści?

Każdy człowiek nie lubi się przemęczać. W zależności jednak od tematyki i celu produktu jest on w różny sposób skomplikowany. Jeżeli ktoś chce poznać jakiś nowy temat, i nie zna zbyt wielu szczegółów zagadnienia - często sięgnąć może do obszernych, ale napisanych prostym i lakonicznym językiem pozycji. Inaczej jest w wypadku pewnej wiedzy, którą odbiorca danego produktu już ma - często chce się pewnych rzeczy tylko douczyć. Dla osób zaś zaawansowanych adresowane są skondensowane ściągawki, które zawierają np. najważniejsze pojęcia rozpatrywanego problemu.
Każdy więc produkt musi przejść ten proces weryfikacji, w którym zostanie stwierdzone, jak zaawansowany jest odbiorca danego rozwiązania. Jest to o tyle ważne, że na przykład matematyczny laik będzie męczył się z zapoznaniem się z pojęciem pochodnej, zaś doświadczony programista, ucząc się nowego języka, może być zdezorientowany czytaniem po raz n-ty definicji zmiennej.

Czy autor chce podać wszystkie treści "jak na tacy", czy zachęcić czytelnika do poszukiwań?

Specyficzną cechą każdej grupy odbiorców jest średnia ich motywacji i poznawania nowych rozwiązać. Może się okazać na przykład to, że monter-elektronik nie chce projektować nowego urządzenia, a skorzystać z gotowego rozwiązania, które zapewni mu lepszy i szybszy zarobek. Niektórzy lubią jednak "tworzyć koło na nowo", i dzięki temu zdobywać wiedzę na temat działania pewnych rozwiązań - co jest też wyjściem jak najbardziej dobrym, ale bardziej czasochłonnym i ryzykownym.
Określenie więc motywacji jest także rzeczą ważną, jeżeli chodzi o aspiracje odbiorcy danego rozwiązania.

Przejdźmy jednak do sedna:

Jakie są cele i założenia kursu języka Python, jeżeli chodzi o podaną wyżej metodykę tworzenia rozwiązań?

Po pierwsze - kurs adresowany jest do młodych ludzi, szczególnie w wieku gimnazjalnym i ponadgimnazjalnym. Światowy trend edukacyjny - tak jak współczesny rynek - opiera się na pojęciu programowania i jego pochodnych. Osoby tworzące portal apki.org wychodzą z założenia, że ten dział techniki jest działem, który w bardzo dużym stopniu przyczynia się do rozwoju cywilizacji - dlatego młodzież - w odpowiedzi na potrzeby rynku - powinna być kształcona w tymże kierunku.
Potrzebami dzisiejszej młodzieży jest szybki dostęp do mediów i łączenie ich ze światem zewnętrznym. Portal apki.org wychodzi naprzeciw tym oczekiwaniom i tworzy prosty, ale bardzo nowoczesny i zaawansowany interfejs dla przyszłego programisty. Każdy młody człowiek chce widzieć efekty swojej nauki, dlatego specjalnie spreparowana witryna będzie umożliwiała testowanie stworzonego kodu w locie (rozwiązanie w pewien sposób podobne do - na przykład - interaktywnego interpretera języka Python).
Kurs tworzony jest w taki sposób, żeby każda lekcja zawierała mało informacji, ale tych lekcji było dużo. Jeżeli młody użytkownik za każdym krokiem będzie widział jakiś postęp - to będzie to motywacją dla niego do dalszej nauki. Problemy i rozwiązania w danym języku opisane są obszernie, jednakże ich forma pozwala na bardzo szybkie i skuteczne przyswajanie. Aspirujący programista musi widzieć w danym momencie tylko to, co aktualnie jest mu potrzebne.
Twórcy portalu apki.org zakładają, że każdy młody użytkownik będzie miał chęć rozwoju własnej wiedzy - nie wszystkie informacje będą więc podane "jak na tacy". Nie zmienia to jednak faktu, że przy okazji powstanie dodatkowy materiał, który nie będzie podstawową częścią kursu, a tylko jego rozszerzeniem - i będzie mieć formę podręcznikową.

Podsumowując - aby stworzyć dany produkt, należy określić potrzeby rynku - do którego jest kierowany. Tak też jest z kursem.

Sławomir Kozok

Read more posts by this author.