środa, 26 czerwca 2013

Tydzień 4 - Workshop project plan and workshop project keywords

Plan realizacji projektu

  • Przeglądanie zaawansowanych możliwości Scratcha - 1 dzień
  • Wyszukiwanie interesujących mnie projektów - 1 dzień
  • Budowa projektu i stworzenie studia - 10 dni
  • Współpraca z innymi uczestnikami CCOW przy tworzeniu remiksów mojego projektu i umieszczaniu ich w studiu oraz ewentualne poprawki projektu - 3 dni

Słowa kluczowe projektu

  • gra edukacyjna
  • nauka języka obcego
  • wykorzystanie Scratcha w nauce języków obcych
  • nauka języków obcych poprzez zabawę
  • projekt edukacyjny w Scratchu

Tydzień 4 - Workshop project needs

Aby zrealizować mój projekt potrzebuję :

1. Bardziej szczegółowo zapoznać się z zaawansowanymi rozwiązaniami Scratch 2.0, takimi jak: camera, cloning, and cloud variables, aby je następnie wykorzystać w moim projekcie gry.

2. Wyszukać projekty i studia, które dotyczą nauki języków obcych, by te moim zdaniem najbardziej wartościowe , dodać do tworzonego studia oraz wykorzystać w moim projekcie niektóre pomysły w nich zawarte.

3. Wyszukać 16 najczęściej używanych rzeczowników angielskich, by je umieścić w mojej grze.

Tydzień 4 - Workshop project format

Zamierzam utworzyć studio w którym gromadzone będą ciekawe projekty służące pomocą w nauce języków obcych.

TYDZIEŃ 4 - Workshop project problem/exploration/question statement.

Czego będzie dotyczył mój projekt?

Oto pytanie, które postawiłem sobie rozpoczynając czwarty tydzień CCOW. Pierwszą moją myślą było stworzenie programu dla tworzonych przeze mnie zajęć, w ramach klubu z kreatywnej informatyki dla dzieci w wieku 11-13lat. Po bliższym przyjrzeniu się dostępnym źródłom i materiałom, oraz mając na względzie moje małe doświadczenie w tym zakresie, stwierdziłem, że na razie nie jestem w stanie, w tej materii stworzyć czegoś odkrywczego. Postanowiłem przygotowywać materiały na podstawie Curriculum Guide, dostępnych w sieci planów zajęć oraz projektów innych uczestników CCOW. Jeśli zatem nie plan dla klubu to co będzie tematem mojego projektu? Tutaj z pomocą przyszło mi ćwiczenie z poprzedniego tygodnia, gra memory, której tworzenie okazało się być inspirującym zajęciem. Bardzo zainteresowało mnie wykorzystanie Scratcha jako pomocy dydaktycznej nie tylko na zajęciach z informatyki. Wcześniej widziałem już projekty z matematyki, nauki i historii. Dlaczego więc Scratch ma nie pomagać w nauce języków obcych? W ten sposób, w mojej głowie zakiełkował pomysł, stworzenia łatwego do wielokrotnego użycia (remiksowania) projektu do nauki najbardziej popularnych słów angielskich dla ludzi z całego świata. Mam zamiar poprawić mój projekt Polish-English words memory game, następnie zaprosić uczestników CCOW, by tworzyli remiksy ze słówkami w swoich językach i dodawali je do utworzonego przeze mnie studia. Myślę, że będzie to dobry początek dla inspirowania nauczycieli i uczniów do korzystania ze Scratcha jako narzędzia do tworzenia ciekawych i przydatnych pomocy w nauce języków obcych.

piątek, 21 czerwca 2013

TYDZIEŃ 3 - Debug It!

Usunąłem błędy w 5 projektach. Zremiksowane i poprawione projekty umieściłem na moim profilu.

Krótka refleksja na temat zajęć.

Podczas szukania błędów, które związane są ze zmiennymi warto ustawić tryb wyświetlania wartości zmiennej i w trakcie wykonywania skryptu obserwować, czy mają one oczekiwane wartości.

TYDZIEŃ 3 - Activities

Właśnie skończyłem pracę nad grą, która dostępna jest tutaj. Mój projekt zatytułowałem: "Polish-English words memory game". Gra jest prostą grą typu memory, i ma za zadanie pomagać w nauce słówek obcojęzycznych.

Krótka refleksja na temat zajęć.

Games

Dzieląc się swoimi refleksjami na temat zajęć z tego tygodnia. Zacznę od przedstawienia przemyśleń związanych z pytaniem: "Co to jest gra?". Moim zdaniem, gra to życie, które stawia nam coraz to nowe wyzwania. A my jesteśmy graczami, którzy wybierają strategie postępowania, mające nam zapewnić sukces. Moimi ulubionymi grami są gry strategiczne i edukacyjne. Do tej drugiej kategorii należy zaprojektowana przeze mnie w tym tygodniu gra. Największym wyzwaniem podczas projektowania gry było stworzenie czegoś oryginalnego, niestety nie sprostałem temu zadaniu i stworzyłem grę w oparciu o znany schemat gier typu memory.

Interactions

W moim projekcie gry zawarłem ćwiczenia z interaktywnych puzzli numer 1,7 i 8, które były dla mnie bardzo inspirujące przy poszukiwaniu rozwiązań do projektowanej gry.

Score

W zakończonym projekcie gry zastosowałem zmienne i listy, które służą do przechowywania stanu poszczególnych sprites oraz obliczania i przechowywania wyników gry. Tłumacząc początkującym programistom pojęcie zmiennej, przedstawiam zmienne jako pudełka, znajdujące się w pamięci komputera, do których sprites wkładają swoje rzeczy aby je tam przechować i móc z nich skorzystać, kiedy zajdzie taka potrzeba. Są dwa rodzaje takich pudełek. Publiczne, do których mają dostęp wszystkie sprites oraz prywatne należące tylko do jednego.

Levels

Trudność w grze można zwiększać poprzez dodawanie kolejnych poziomów gry. Może to się odbywać poprzez zwiększanie z każdym poziomem ilości przeszkód do pokonania na te samej scenie lub zmniejszaniem czasu na jej pokonanie. Innym sposobem jest tworzenie nowych scen dla każdego poziomu. Ja w swoim projekcie zastosowałem to pierwsze podejście i z każdym kolejnym z trzech poziomów zwiększałem ilość par słówek do znalezienia. Istnieją również dwa sposoby przenoszenia się przez graczy do kolejnych poziomów. Pierwszy sposób polega na konieczności przechodzenia sekwencyjnie wszystkich poziomów. Drugi sposób pozwala graczowi na wybranie (najczęściej z menu) poziomu, na którym chce grać. W mojej grze skorzystałem z tego pierwszego sposobu. Gracz po znalezieniu wszystkich par słówek na poziomie niższym przenoszony jest na wyższy poziom.

poniedziałek, 17 czerwca 2013

TYDZIEŃ 3 - wstęp :)

Trwa już trzeci tydzień warsztatów, który jest poważnym wyzwaniem, nie dość, że za zadanie postawiono nam stworzenie gry, to jeszcze w pracy spiętrzyły mi się obowiązki. Postanowiłem, że w tym tygodniu skupię na wykonaniu gry, przy jej tworzeniu głębiej zapoznam się z wszystkimi zagadnieniami wprowadzanymi w poszczególnych ćwiczeniach.

Zatem do pracy!

sobota, 15 czerwca 2013

TYDZIEŃ 2 - Debug It!

Podobnie ja tydzień temu poprawiłem kod 5 projektów, tak aby usunąć występujące w nich błędy. Zaproponowane przeze mnie rozwiązania umieściłem na forum. Zremiksowane i poprawione projekty umieściłem na moim profilu.

Krótka refleksja na temat zajęć.

Tak jak w pierwszym tygodniu debugowałem projekty, poprzez ich remiksowanie i analizę skryptów oraz sposobu przekazywania sterowania pomiędzy poszczególnymi elementami projektów.

TYDZIEŃ 2 - Scenes

Przedostatnie zadanie w tym tygodniu wymagało stworzenia projektu, w którym wykorzystuje się kilka scen. Mój projekt.

Krótka refleksja na temat zajęć.

Podobnie jak sprites również the stage posiada swoje skrypty, dźwięki, i kostiumy (tu noszące nazwę backdrops). Często inicjuję duszki na nowej scenie poprzez blok "when backdrop switches to". Większość projektów wymaga zmian scen, wchodzą w to najczęściej wykonywane w Scratchu gry i prezentacje.

środa, 12 czerwca 2013

TYDZIEŃ 2 - Conversations

Tym razem należało zremiksować projekt Penguin Jokes, w taki sposób by zastąpić blok timingu "czekaj" na bloki broadcastingu "broadcast", "broadcast and wait" i "when I receive". W czasie ćwiczenia utworzyłem projekt o nazwie: Penguin Jokes remix.

Krótka refleksja na temat zajęć.

How would you describe Broadcast to someone else?

Broadcast jest wywołaniem zdarzenia w skrypcie poprzez wykonanie bloków "broadcast message" lub "broadcast message and wait", które może zostać obsłużone przez dowolny skrypt, oczekujący na to zdarzenie. Aby móc obsłużyć nadane zdarzenie należy stworzyć skrypt, który rozpoczyna się od bloku "when I receive message". Przy czym parametr message jest identyfikatorem przypisanym zdarzeniu w celu jego jednoznacznej identyfikacji. Trochę to skomplikowanie brzmi, ale broadcasting jest związany z przekazywaniem sterowania w programach wielowątkowych i stanowi zaawansowaną konstrukcję programistyczną. Jednak nawet osoby bez większej wiedzy w zakresie oprogramowania, intuicyjnie mogą zrozumieć zasadę działania broadcastingu, po obejrzeniu tutorialu Broadcasting Nuts & Bolts video.

When would you use timing in a project? When would you use broadcasting?

Timingu możemy używać głównie w celu uzyskania efektu przerwy bez potrzeby przekazania sterowania do innego skryptu. Broadcasting umożliwia natomiast przekazywanie sterowania pomiędzy różnymi skryptami. Dlatego należy go używać jeśli chcemy uzyskać synchronizację więcej niż jednego skryptu (duszka).

wtorek, 11 czerwca 2013

TYDZIEŃ 2 - Characters

W tym ćwiczeniu zadanie polegało na stworzeniu projektu, w którym wykorzystamy nową możliwość Scratcha 2.0 - "Make a Block" w tworzeniu animacji. Projekt wykonany przeze mnie jest dostępny tu.

Krótka refleksja na temat zajęć.

How would you explain "Make a Block" to someone else?

Funkcja "Make a Block" pozwala definiować własny, złożony z dowolnej ilości bloków podprogram wykonujący określone sekwencje czynności (zachowania) duszka. Skrypt ten dostępny jest jako nowo zdefiniowany blok, który możemy wykorzystywać wielokrotnie w skryptach duszka, identycznie jak bloki standardowe.

When might you use "Make a Block"?

Nowe bloki możemy tworzyć aby zdefiniować procedury obejmujące powtarzające się sekwencje bloków w skrypcie duszka. Parametry jakie możemy przekazywać do utworzonych bloków pozwalają na modyfikowanie efektów jego wykonania. Zastosowanie tej nowej w Scratchu funkcji pozwala na skrócenie długości skryptów poprzez wyeliminowanie powtarzających się w kodzie sekwencji bloków. Zarazem uzyskujemy lepszą czytelność i wydajność skryptu.

poniedziałek, 10 czerwca 2013

TYDZIEŃ 2 - Pass It On

W tym ćwiczeniu stworzyłem mój projekt, tak aby zachęcał innych uczestników warsztatów do remiksowania go. Projekt dostępny jest tu.

Na podstawie mojego projektu matthewm1970 wykonał swój remiks dostępny tutaj.

Następnie wyszukałem interesujący projekt do zremiksowania. Wybrałem historyjkę "Pass-it-on Roberto" wykonaną przez bob84. Mój remix znajduje się tutaj

Krótka refleksja na temat zajęć.

What is your definition of remixing?

Moim zdaniem remiksowanie polega na tworzeniu czegoś nowego na bazie istniejącej już materii. Interesujące w remiksowaniu jest to, że remix jest kompilacją podejścia różnych osób do tego samego problemu.

How did it feel to remix? How did it feel to be remixed?

Remiksowanie jest bardzo ekscytujące, ponieważ tworząc swoją wersję, zastanawiasz się jak zostanie ona odebrana przez twórcę pierwotnej wersji. W przypadku mojego remiksu autor bazowej wersji, trochę mnie zaskoczył. Stwierdził w komentarzu, że dopisana przeze mnie dalsza część historyjki ma zbyt smutne zakończenie. Tymczasem mnie wydawało się, że stworzyłem raczej zabawną puentę. Jeśli ktoś wykona remiks twojego projektu, znaczy to, że stworzyłeś coś interesującego, co zainspirowało drugiego człowieka do działania.

What are the opportunities and challenges with this activity for your students?

Myślę, że ćwiczenia z remiksowaniem są bardzo twórcze. Każdy, kto ogląda swój projekt zremiksowany przez innych, może porównać swoje rozwiązania z tymi zastosowanymi w remiksie i dokonać ich oceny. Może tym samym poznawać nowe warianty rozwiązywania podobnych problemów. Remiksowanie w Scratchu umożliwia podnoszenie swoich umiejętności poprzez zaglądanie do środka kodu i poznanie jak to działa.

niedziela, 9 czerwca 2013

TYDZIEŃ 1 - Debug It!

W tym ćwiczeniu poprawiłem kod 5 projektów, tak aby usunąć występujące w nich błędy. Zaproponowane przeze mnie rozwiązania umieściłem na forum. Zremiksowane i poprawione projekty umieściłem na moim profilu.

Krótka refleksja na temat zajęć.

What is one debugging strategy that you used?

Przy tych nieskomplikowanych projektach, błędy znalazłem po analizie blok po bloku kodu skryptów.

How would you help someone else learn how to debug a project

Najlepszą strategią debugowania kodu skryptu jest unikanie błędów poprzez tworzenie nieskomplikowanego i czytelnego kodu. Bardzo ważne jest też wczesne testowanie skryptu (w Scratchu poprzez uruchamianie skryptu zaraz po dodaniu niewielkiej ilości kodu), ponieważ niewielkie błędy, nie usunięte odpowiednio wcześnie, urastają (wraz ze wzrostem ilości kodu w programie) do wielkich i trudno rozwiązywalnych problemów.

sobota, 8 czerwca 2013

TYDZIEŃ 1 - Studios

Link do Studia założonego w czasie tego ćwiczenia znajduje się tutaj Studio

Krótka refleksja na temat zajęć.

How easy was it to find projects that you thought were interesting?

Niestety nie było łatwo znaleźć interesujące mnie projekty. Wymaga to przeglądania wielu projektów i pożera wiele czasu. Dostępne na stronie sposoby wyszukiwania są dalekie od doskonałości. Moim zdaniem zbyt mało jest kategorii, według których gromadzone są projekty. Bardzo pomogłoby rozbudowane drzewo zawierające wiele podkategorii.

What different search strategies did you employ?

Na wstępie ćwiczenia postawiłem sobie zadanie znalezienia 5 ciekawych gier, w których gracz opiekuje się wirtualnym zwierzakiem.

Wśród "Featured Studios" znalazłem Studio o nazwie "Virtual pet fun"

Wyszukiwałem interesujące projekty, przeglądając projekty umieszczone w Studio "Virtual pet fun" oraz ulubione projekty użytkowników publikujących w tym Studio.

czwartek, 6 czerwca 2013

TYDZIEŃ 1 - 10 Blocks

Mój projekt wykonany w ramach tych zajęć znajduje się tutaj 10 Blocks

Krótka refleksja na temat zajęć.

How did the constraint support your creative process?

Odpowiadając na to pytanie opowiem jak zmieniało się moje podejście do tego ćwiczenia. Początkowo, gdy zapoznałem się z jego założeniami, pomyślałem, tutaj nic mnie nie zaskoczy. Proste ćwiczenie, ustawić logicznie 10 bloków i już. Dopiero w trakcie projektowania historyjki, którą chciałem opowiedzieć, zobaczyłem jak wiele możliwości daje te 10 prostych bloków. Kolejne możliwości pojawiały się z każdym krokiem realizacji. Teraz gdy skończyłem. Pozostał niedosyt, że z powodu braku czasu stworzyłem tylko zarys tego co mogłem uzyskać.

How did it support your learning of Scratch?

Ćwiczenie to uświadomiło mi jak nieskończenie wielkie możliwości w kreowaniu własnych projektów mają nawet mało zaawansowani użytkownicy Scratcha.

środa, 5 czerwca 2013

TYDZIEŃ 1 - Step-by-Step

Mój projekt wykonany w ramach tych zajęć znajduje się tutaj Step-by-Step

Krótka refleksja na temat zajęć.

What was surprising about the activity?

Największą niespodzianką w trakcie tego ćwiczenia było uświadomienie sobie jak wiele nauczyłem się o Scratchu w czasie wykonywania tego zadania.

How did it feel to be led step-by-step through the activity?

Tego typu tutorial jest bardzo pomocny dla początkujących, którzy czują się bezpieczni w czasie poznawania środowiska, gdyż są prowadzeni krok po kroku i szybko widzą efekty swojej pracy. Zaś w przypadku błędu bardzo prosto mogą go znaleźć i usunąć.

As a learner (with Scratch and beyond), when do you like having more structure?

Poznając nowe środowiska programistyczne i języki programowania, w początkowej fazie lubię pracować w oparciu o ściśle określone etapy poznawania opracowane na podstawie doświadczeń innych użytkowników. Takie podejście znacznie ułatwia proces poznawczy.

When do you like having more freedom?

Lubię mieć swobodę w programowaniu gdy mam już za sobą trudne i żmudne poznawanie podstaw języka i środowiska. Mając opanowany podstawowy warsztat, eksperymentuję, bo najlepiej uczyć się na własnych błędach.

When do you feel most creative?

Jak już napisałem wcześniej najbardziej kreatywny czuję się gdy nie ogranicza mnie mój warsztat.

wtorek, 4 czerwca 2013

TYDZIEŃ 1 - About Me

Mój projekt wykonany w ramach tych zajęć znajduje się tutaj About Me

Krótka refleksja na temat zajęć.

What was surprising about the activity?

Jestem początkującym Scratcherem, na portalu Scratch założyłem profil 3 tygodnie temu i od tego czasu bawię się tym środowiskiem. Do tej pory stworzyłem prostą grę aby zademonstrować 9 letniemu synowi to wspaniałe narzędzie. Budując projekt About Me najpierw starałem się znaleźć sposób opowiedzenia o mnie i miejscu, w którym żyję. Dla większości uczestników warsztatów słowo Polska pewnie niewiele znaczy, dlatego szukałem sposobu pokazania, że prawdopodobnie każdy z nich zetknął się już wcześniej z kawałkiem Polski. I tutaj niespodzianka, z pomocą przyszła mi wspaniała możliwość dodawania muzyki do projektów wykonanych w Scratchu. Dodałem jako podkład muzyczny fragment Etiudy E-dur, op.10, nr 3 Fryderyka Chopina - wielkiego polskiego kompozytora. Z takim podkładem reszta poszła już gładko. Mam nadzieję, że moja prezentacja nie jest nudna i mówi trochę o mnie.

How might you adapt it for the learners that you support?

Myślę, że About Me projekt jest wspaniałym ćwiczeniem dla początkujących w Scratchu programistów, ponieważ bardzo rozwija kreatywne myślenie. Prowadząc zajęcia na ten temat najpierw poleciłbym uczestnikom wypisanie na kartce np. 4 rzeczy, które są dla nich najważniejsze a następnie poprosił ich o sporządzenie na ten temat projektu w Scratchu. Chęć przedstawienia się w ciekawy sposób będzie dużą motywacją do doskonalenia swojego warsztatu w Scratchu. Tak było właśnie ze mną.

poniedziałek, 3 czerwca 2013

TYDZIEŃ 1 - Wstęp

Zaczyna się zabawa. Do wykonania jest 5 ćwiczeń. Mam nadzieję,że znajdę czas na nie i będę potrafił je wykonać. Od Jacka Kuprasa zaczerpnąłem pomysł na design notebook w formie bloga z umożliwieniem tłumaczenia przez Google tłumacza. To znacznie przyspieszy proces pisania notatnika, ponieważ "mój angielski" utrudniałby mi pełne i trafne wyrażanie moich spostrzeżeń.