-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!newsfeed0
0.sul.t-online.de!t-online.de!border2.nntp.dca.giganews.com!border1.nntp.dca.gi
ganews.com!nntp.giganews.com!nx01.iad01.newshosting.com!newshosting.com!newsfee
d.neostrada.pl!unt-exc-01.news.neostrada.pl!atlantis.news.neostrada.pl!news.neo
strada.pl!bozon.softax.pl!news
From: Sebastian Kaliszewski <s...@r...this.informa.and.that.pl>
Newsgroups: pl.comp.programming
Subject: Re: Jaki język?
Date: Tue, 23 Feb 2010 13:10:21 +0100
Organization: TP - http://www.tp.pl/
Lines: 120
Message-ID: <v...@b...softax.pl>
References: <hlkh9u$9ji$1@nemesis.news.neostrada.pl>
NNTP-Posting-Host: 83.18.189.42
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: atlantis.news.neostrada.pl 1266924757 17500 83.18.189.42 (23 Feb 2010
11:32:37 GMT)
X-Complaints-To: u...@n...neostrada.pl
NNTP-Posting-Date: Tue, 23 Feb 2010 11:32:37 +0000 (UTC)
User-Agent: Thunderbird 2.0.0.23 (X11/20090817)
In-Reply-To: <hlkh9u$9ji$1@nemesis.news.neostrada.pl>
X-Original-Bytes: 6765
Xref: news-archive.icm.edu.pl pl.comp.programming:185067
[ ukryj nagłówki ]slawek wrote:
> Pytanie jest tak proste, że aż jest to "porażające".
Jak widać nie jest proste. Za to niektóre odpowiedzi zaiste porażające.
Niektóre to po prostu kategoria "zapomniał wół jak cielęciem był" ale o
niektórych nawet nie wiem co sądzić -- chyba świadczą o poważnym
oderwaniu od rzeczywistości :)
>
> Jaki język dla 10 latka, aby uczył się programować? Coś, co dobrze
> pokaże jakie naprawdę są możliwości komputerów.
>
> Basic? Czy raczej Python?
W przeciwieństwie do większości wypowiadających się ja akurat mam nieco
doświadczenia w uczeniu dzieci właśnie 10-14 letnich. Bardzo, zresztą,
zdolnych dzieci (ale dzieci a nie kosmitów).
Dzieci w wieku mniej-więcej 9-10 lat osiągają zdolność abstrakcyjnego
myślenia takiego jak dorośli (nawet te baaardzo zdolne). Co oznacza że
są w ogóle w stanie programować w naszym (dorosłym) rozumieniu tego
słowa (czyli zapisać algorytm "własnymi słowami", dzieci młodsze
potrafią "popychać żółwia" ale zapisania algorytmu nie ma się co
spodziewać). Ale należy pamiętać, że w wieku 10lat jest to zdolność
świeża i nigdy nie będzie poparta doświadczeniem w posługiwani się nią
ani wiedzą tej zdolności wymagającej.
Zatem, choć dziecko jest w stanie pojąć programowanie, nie może się ono
opierać o jakieś wcześniej poznane abstrakcyjne konstrukcje, bo takich
nie ma (wcześnie poznane konstrukcje były konkretne -- zbór 6 jabłek).
Czyli, np nie ma co bazować na pojęciach "wyższych rzędów" takich jak
funkcja, relacja, itp. Te pojęcia mogą co najwyżej pojawić się
naturalnie, ale bez opierania się o ich definicję. Można bazować na
pojęciach podstawowych, takich jak liczba, zbiór, figura geometryczna.
Nie należy też np. zaczynać od takich rzeczy jak wskaźniki.
Przy czym dziecko (w ogóle prawie każdy początkujący programista) nie
rozumie na czym polega coś takiego "elegancja kodu". Nie rozumie po co
są jakieś wcięcia, itp. Kod początkującego często jest chaotyczny przy
czym wygląda jak bezładny ciąg znaków z bardzo małą ilością
jakichkolwiek odstępów (a jeśli te odstępy są to często w dziwnych
miejscach). Odpadają zatem jęzki typu "executable line noise" i języki
których skłania niejaką zachęca do zrobienia śmietnika, pomieszania
różnych rzeczy itp. Innymi słowy odpadają PHP i Perl. Im język
porządniejszy tym lepiej (czyli Python, Pascal)
Nie można też dziecka zawalić kupą rzeczy których znaczenia na początku
nie zrozumie ani (zresztą) nie chcemy mu objaśniać. To odwala wszelkie
języki w których zrobienie czegokolwiek wymaga głębszej magii i/lub
odwołania np. do 20 różnych bibliotek, utworzenia 20 pośrednich obiektów
itp. Czyli z jednej strony odpada C (z uwagi na reprezentację napisów --
albo będą niepojęte magiczne gwiazdki albo trzeba by tłumaczyć wskaźniki
które na tym etapie są zbyt trudne) a z drugiej Java i jej brat C#.
Przy tym dziecko jest mniej cierpliwe od dorosłych i chce w rozsądnym
dla niego czasie zobaczyć efekty tego co robi. Często warto znaleźć lub
samemu przygotować jakąś bardzo prostą w obsłudze bibliotekę której
dziecko będzie używać. Często tak robiłem dla swoich podopiecznych --
np. prosta biblioteka w której ekran był reprezentowany jako tablica
2-wymiarowa i do której każdy wpis oznaczał zmianę konkretnego punktu na
ekranie.
Z doświadczenia własnego, z "dorosłych narzędzi" polecam Pythona lub też
Pascala (FPC). Można się też pobawić Smalltalkiem. Albo po prostu
systemy dedykowane dla dzieci -- tu i Logo też jest fajne (to
uproszczony język funkcyjny) i wiele wiele innych o których była już w
tym wątku mowa. Choć system dorosły ma tę fajną zaletę, że można
powiedzieć, że w tym się pisze "pradziwe" programy -- to tak samo jak
można mieć dziesięć samochodzików zabawek, ale poprowadzenie
prawdziwego, dorosłego samochodu (choćby po pustym parkingu) to jest to!
I rzecz ważna: typowy dzieciak nie będzie specjalnie podniecony jakimś
czysto tekstowym wynikiem. Grafika dużo silniej działa na wyobraźnie a
więc i na motywację. Z mojego doświadczenia wdzięczne tematy to automaty
komórkowe (life, symulacja płomienia (y[i,j] = (x[i,j] + x[i-1,j-1] +
x[i+1,j-1] + x[i,j-1]) / 4 - 1), rozchozenie się pożaru, itd) oraz
(proste!) fraktale typu płatek Kocha czy drzewko Pitagorasa.
>
> C++ wydaje się za trudny, C tym bardziej. Fortran/Algol - do muzeum.
> Brainfuck/Devil... nie, nie chcemy tego dzieciom robić.
>
> Lego... Lisp... Ada... Paszczal/Modula - z tego wszystkiego to chyba
> Paszczal jeszcze byłby wcale dobry (a jest jakiś kompilator na
> GPL/LGPL?), choć ma w sobie rzeczy denerwujące.
Paszczal jest ok i jest FPC.
>
> Kepler. Sorry, fajne, fajne... ale to chyba inna bajka.
>
> Java/Javowate - no, nieźle, nieźle... Java Script jest w miarę prosta -
> ale co można pisać w tym? Tzn. co można pisać, co będzie atrakcyjne dla
> 10-latka?
Java "ma złą kulturę" Java script jest zbyt "technologiczny".
>
> Prolog? Prosty, elegancki. Zaczyna mi się podobać ten pomysł. Tylko czy
> ktoś kto umie pisać programy w Prologu umie pisać programy? Z drugiej
> strony - coraz bardziej mi się to podoba.
Prolog niby fajny, ale nie wiem czy nie zbyt obciążający i wymagający
podstaw teoretycznych. Żeby nie było -- "czemu to jedno mi zaraz
rozwiązał a to obo miele już od godziny?" No i jest mało wizualny -- dla
typowego dzieciaka coś nie nie wypluje obrazka jest mało ciekawe.
>
> Ma ktoś jakieś pomysły?
Albo dedykowane dla dzieci albo Python + np. pygame albo Paszczal +
samemu napisana mała i prosta biblioteczka.
\SK
--
"Never underestimate the power of human stupidity" -- L. Lang
--
http://www.tajga.org -- (some photos from my travels)
Następne wpisy z tego wątku
- 23.02.10 11:48 Grzegorz Krukowski
- 23.02.10 12:09 Krzysiek Kowaliczek
- 23.02.10 14:35 Mif
- 23.02.10 14:38 Mif
- 23.02.10 14:47 Mif
- 23.02.10 14:55 Mif
- 23.02.10 14:58 Mif
- 23.02.10 18:08 jacem
- 23.02.10 18:21 jacem
- 24.02.10 06:47 Krzysztof Warunek
- 25.02.10 00:27 slawek
- 25.02.10 00:44 slawek
- 25.02.10 00:33 slawek
- 25.02.10 00:27 slawek
- 25.02.10 00:50 slawek
Najnowsze wątki z tej grupy
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
Najnowsze wątki
- 2025-07-14 granice
- 2025-07-14 Awaria VM?
- 2025-07-14 Gdańsk => Programista Kotlin <=
- 2025-07-14 Warszawa => Junior Rekruter <=
- 2025-07-14 Warszawa => Specjalista rekrutacji IT <=
- 2025-07-14 Wkłady do zniczy...
- 2025-07-14 Warszawa => Specjalista ds. Sprzętu Komputerowego <=
- 2025-07-14 Re: PO chroniło i chroni policyjnych bandziorów [zawiasy za katowanie obywatela (Poznań czerwiec 2012)]
- 2025-07-14 Warszawa => International Freight Forwarder <=
- 2025-07-14 Warszawa => Recruiter 360 <=
- 2025-07-14 Re: Rz?Âd ZAKAZUJE magazyn?Â?w energii ?!! Nowe prawo od 14 lipca to SZOK! ??Â
- 2025-07-14 Warszawa => Sales Assistant <=
- 2025-07-13 Fałszywe alerty
- 2025-07-12 dlaczego gadacie z tym debilem
- 2025-07-13 Unia Europejska przygotowuje nowy podatek