Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Программирование детям?  (Прочитано 13506 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Prezrak

  • Любитель
  • *
  • Сообщений: 77
    • Просмотр профиля
Re: Программирование детям?
« Ответ #15 : 12 Ноября 2010, 12:10:00 »
для начала kTurtle может быть.
Запустил, скатилась скупая мужская слеза.
Logo такая классная штука была.
вп 10
лв 90
вп 10
пп
по
ну если кто поймет  :)
О да! ))) Черепашка рулила

Оффлайн SureExist

  • Новичок
  • *
  • Сообщений: 11
    • Просмотр профиля
Re: Программирование детям?
« Ответ #16 : 14 Ноября 2010, 02:11:27 »
Ага)) максимум Logo
а лучше даже lego :)
в 10 лет какое программирование. Вещи типа хелло ворлд быстро надоест писать, а на большее без соответствующего категориального аппарата терпения наврядли хватит))))

Оффлайн inikakinache

  • Новичок
  • *
  • Сообщений: 12
  • Оправдывать глупости
    • Просмотр профиля
Re: Программирование детям?
« Ответ #17 : 14 Ноября 2010, 02:40:08 »
Хочу ребёнка 10 лет приобщить к программированию.

Почитайте вдумчиво вместе с ребенком "Код" Петцольда.
Только сказок других совсем уж не лишайте ;-)

Советую, поскольку сами проходили подобное.

Оффлайн Guranvir

  • Участник
  • *
  • Сообщений: 195
    • Просмотр профиля
    • Блог начинающего линуксоида
Re: Программирование детям?
« Ответ #18 : 14 Ноября 2010, 13:58:10 »
Python то как раз вполне нормален. А так правильно сначала лучше что нибудь типа Петцольда вот этого почитать, а потом или параллельно книгу "мыслить как программист. Обучение с помощью Python. Второе издание."  Она как раз и детям вполне подойдет,там и общие принципы программирования раскрываются и особенности Python. Кроме того Python хорош и тем что как язык программирования он поддерживает сразу 4 парадигмы:
1)Линейную. Ну это каждый язык поддерживать может, который используется для написания программ
2) Структурную. Блоки, функции и т.д.
3) Функциональную. Лямбда-вычисления, высшие функции, частично определенные функции и т.д.
4)  Объектно-ориентированное программирование
При чем хотя ООП подспудно пронизывает весь язык, серьезно оно себя не проявляет пока ты сам не начнешь ставить задачи где оно требуется. Ну и много классических динамических структур данных в языке из коробки: списки, очереди, словари(хеш-массивы)  и т.д. Кроме всего прочего имеет много математически-ориентированных расширений.А если чадо будет учится в окружении Linux, то Python даст возможность начать изучать системное программирование. Хотя и на винде можно , особенно после установки свободного расширения  pywin.  
А то что говорит lifewalker  о Python чистейшей воды холивар. Тогда уж вспомним про этот незабвенный бейсиковский GOTO и прочее с чем боролся Дейкстра аж в 60-ых.
Паскаль то же далеко не торт с позиций холивара:
1) Ну вобще что это такое: вместо одного символа фигурной скобки или пробела пиши каждый раз begin (5  символов ) и end(3 символа) и где эргономичность?!
 2) Ну и зачем было менять приоритеты логических операций. Во всех языках можно логические выражения писать как a==5 and b==9, а в паскале ставь скобочки
3) Зачем было придумывать это правило-исключение насчет единого блока if then begin end else begin end Чем точка с запятой здесь не угодила? То что это единая группа операторов понятно
4) Ну и вобщем зачем это then особенно не в англоговорящем мире только набивать лишний текст на клавиатуре
5) Зачем end, в С как то одной } обошлись для обозначения конца  
6)  Зачем ввели деление на функции\процедуры. Уж лучше как в С-языках оператор return, в Python его правильно доработали возвращай как значение столько переменных сколько хочешь
7) Почему вместо весьма удобной конструкции i++ в паскале нас до сих пор ожидает лишь две формы выполнения означенного действия i:=i+1 и inc(i)
8) Почему до сих пор в паскале нет комбинированных операторов += и других
Однако на самом деле в паскале есть свои преимущества: легкие конструкции для открытых массивов, для доступа к файлам,строгая статическая типизация и т.д блок var то же можно рассматривать как преимущество в обучении
А так lifewalker непоследователен тогда уж надо, без всяких ироний, с логарифмической линейки  начинать. И ведь действительно крайне полезный инструмент в математике и для прочистки мозгов             
        
« Последнее редактирование: 14 Ноября 2010, 14:01:12 от Guranvir »

Lifewalker

  • Гость
Re: Программирование детям?
« Ответ #19 : 14 Ноября 2010, 17:49:57 »
Сразу отвечу. Потому что Паскаль был придуман в первую голову для обучения процедурному программированию. С тем так же чтобы текст на Паскале выглядел похоже на обычный язык, пусть даже и английский. Коли вас так тревожат перечисленные недостатки Паскаля, возьмите Zonnon или Оберон - там нет лишнего.

Python для обучения программированию в любом возрасте противопоказан, а уж говорить про преимущества функционального программирования применительно к 10-летнему ребёнку ИМХО чуток не очень верно.

Относительно логарифмических линеек тоже ничего против не имею. Народ нынче стал настолько тупой, что 5 на 6 на калькуляторе умножают. Так что обучение программированию на простейших устройствах вполне имеет смысл.

Оффлайн BeetleJuice

  • Любитель
  • *
  • Сообщений: 74
  • A nullo diligitur, qui neminem diligit
    • Просмотр профиля
Re: Программирование детям?
« Ответ #20 : 15 Ноября 2010, 13:20:13 »
Хочу ребёнка 10 лет приобщить к программированию.

Мне бы такого родителя  :-\
Quod licet Iovi, non licet bovi подумал админ и закрыл всем нафиг доступ

Оффлайн debuntu

  • Участник
  • *
  • Сообщений: 145
    • Просмотр профиля
Re: Программирование детям?
« Ответ #21 : 17 Ноября 2010, 10:44:47 »
Никого не слушайте, пусть учит так:
logo->Visual Basic (будут недовольные линуксоиды, но на время придется вернуться в винду)->Pascal->C++

Оффлайн BeetleJuice

  • Любитель
  • *
  • Сообщений: 74
  • A nullo diligitur, qui neminem diligit
    • Просмотр профиля
Re: Программирование детям?
« Ответ #22 : 17 Ноября 2010, 11:06:26 »
на время придется вернуться в винду

Зачем Windows чтоб писать С++? Я когда тренируюсь к примеру, вообще не использую никакой среды... просто ТХТ в СРР и компеляция терминалом.

А вот про отдельные сложные проэкты молчу, тут без среды хоть и можно, но это даже извращенее чем как я: делать все только консолью  :D
Quod licet Iovi, non licet bovi подумал админ и закрыл всем нафиг доступ

Оффлайн #define true 0

  • Участник
  • *
  • Сообщений: 149
  • В Гугл, животное, кури маны! П.С.:шутка конечно :)
    • Просмотр профиля
Re: Программирование детям?
« Ответ #23 : 17 Ноября 2010, 12:10:35 »
Pascal :D , а потом С/С++!
« Последнее редактирование: 17 Ноября 2010, 12:12:31 от Denis_1 »
CPU :AMD Athlon(tm) II X2 265 Processor 3315MHz | GPU: GeForce GT 240 PCI Express

Оффлайн zz84

  • Новичок
  • *
  • Сообщений: 8
  • В туалете лучше быть пользователем чем админом :-)
    • Просмотр профиля
    • Блог о Gambas, Linux, web
Re: Программирование детям?
« Ответ #24 : 23 Ноября 2010, 15:29:16 »
Лучше всего для ребенка, мне кажется, подойдет Gambas!
Вначале простые проги, потом, с функциями, и ООП, и все это намного проще чем VisualBasic Информации на русском пока немного, но с одной стороны там все и так просто, а с другой, уже есть первые шаги, и на русском по Gambas есть довольно хороший сборник материала, а на английском довольно полный Wiki.
Если что, вопросы здесь:русскоязычное сообщество Gambas
Там же есть FAQ, где все написано.
Если бы Господь открыл исходники, я бы изменил Мир!

Оффлайн debuntu

  • Участник
  • *
  • Сообщений: 145
    • Просмотр профиля
Re: Программирование детям?
« Ответ #25 : 26 Ноября 2010, 17:22:30 »
Цитировать
Зачем Windows чтоб писать С++?
Для VB. Умник.

Оффлайн imslavko

  • Новичок
  • *
  • Сообщений: 42
    • Просмотр профиля
Re: Программирование детям?
« Ответ #26 : 26 Ноября 2010, 17:57:15 »
Вы, видимо считаете, что дети не способны освоить программирование и алгоритмы?
Погуглите Геннадия Короткевича. Сейчас учится в 10 классе в Гомеле, Белоруссии. 4 золотых, одна серебряная медаль IOI (International Olympiad in Informatics).

Оффлайн Обедающий философ

  • Активист
  • *
  • Сообщений: 286
    • Просмотр профиля
    • Искусственная жизнь по-русски
Re: Программирование детям?
« Ответ #27 : 15 Декабря 2010, 06:27:19 »
Чтобы ребёнок взялся за изучение программирования, как я полагаю, надо прежде всего стимул. У меня лично детей нет, так что буду рассматривать на собственном примере. Откровенно говоря, я вообще слабо представляю, как родитель может сознательно увлечь чем-либо своего ребёнка. По крайней мере мои родители сколько ни отдавали меня в музыкальные школы и т. п., так и не смогли добиться от меня сколько-либо положительных результатов. Зато в доме всегда было немало книжек по естественным наукам. Художественной литературы было, конечно, больше, но я ей как-то никогда не интересовался, и на уроках литературы в школе всегда сидел так, как будто вокруг меня сидят инопланетяне, разговаоривают на нечеловеческом языке и непонятно чего от меня хотят. Также общество меня слабо принимало, посему у меня было два выбора - либо читать книжки, либо смотреть телевизор (по которому, кстати говоря, в ту пору шло немало научно-популярных передач).

К чему я клоню? К тому, что когда ты растёшь в аскетичном окружении, у тебя появляется желание и возможность самосовершенствоваться. А нынче у детей тут и там сплошные соблазны - начиная от телевизора и компьютерных игр и заканчивая интернетом в самом широком смысле слова. Как совершенно справедливо заметил С. П. Капица - обилие информации ведёт к оскудению души, и это предупреждение должно быть на каждом сайте. Вот я, например, хочу освоить немало вещей, в частности, функциональное программирование, но всегда, во-первых, поражаюсь необъятности того, что собрался объять, а во-вторых, меня заботливо поджидают притаившиеся во вкладках браузера развлекательные сайты (во главе с википедией), так что запланированный подвиг, как правило, так и не совершается. Хотя, конечно, путь развития зависит и от внутренних побуждений ребёнка, и наверняка и в таких условиях будут вырастать таланты, но я слабо представляю, как с позиции родителя можно этому способствовать.

Какие могут быть стимулы к изучению программирования? Лично для меня главным стимулом всегда было создание искусственного интеллекта/искусственной жизни. Скажем, есть игра, ребёнок в неё играет, и можно написать программу, которая бы играла в эту игру за него. Как мне кажется, на сегодняшний день это единственный реальный стимул, ибо программы для всего остального уже написаны в лошадиных количествах. Есть даже целый класс игр - программистские игры. Правда, из этого класса вспоминается разве что lightbot и colobot, причём последний у меня не получилось запустить. Также не совсем игра - виртуальный футбол http://keldysh.ru/pages/robosoccer/ (качать сервер 1.6).

Ну или вообще можно в повседневной жизни пытаться обращать внимание на то, где можно применить программирование. Также неплохое занятие - радиолюбительство, можно на микропроцессорах собирать роботов и программировать их, и потешность не в пример выше, нежели просто у нажимания на кнопочки.

Касаемо того, какие языки программирования доступны для изучения ребёнку. Здесь всё зависит от того, как ставить вопрос. Ежели так, что мы хотим, чтобы язык изучило 100% детей - то здесь выбор языка, наверное, играет роль, хотя вряд ли оной цели можно добиться хотя бы с каким-либо языком. А ежели ставить задачу так, чтобы выучить язык могли те, кому это интересно - тогда годится фактически любой язык. Я слышал немало примеров, когда люди начинали с С/С++, ассемблера или даже машинных кодов (в основном для программируемых калькуляторов).

Лично с моей точки зрения - это питон, шелл-скрипты, жабаскрипт, ПХП и т. п. Хотя можно и любой другой, в зависимости от того, какие будут учебные задачи. По поводу паскаля - он используется для примеров в немалом количестве учебной литературы, но как утилитарный язык фактически умер. Даже борланд пустил дельфи на произвол судьбы. Я начинал с паскаля и очень долго держался за него, как я сейчас понимаю, напрасно. Так что его можно изучать, но ни в коем случае на нём не зацикливаться. Вообще лучше не привязываться к языку, а изучать сразу несколько, чтобы человек понимал, что не бывает идеального языка, а бывают языки/среды/библиотеки для разных применений и что выучить новый язык не есть нечто сверхъестественное. Или ещё для расширения сознания - языки вроде forth, lisp и т. п.

Также немаловажно, чтобы у ребёнка был личный компьютер, чтобы он мог заниматься программированием в полном одиночестве. Творчество - оно вещь такая, что когда за тобой наблюдают, творческое начало совершенно исчезает. Ну и чтобы администририрование заодно изучал.
Боится смерти тот, кто мало сделал за свою жизнь. /Фидель Кастро/

Оффлайн svcunion

  • Активист
  • *
  • Сообщений: 565
  • Всё на самом деле не так, как на самом деле.
    • Просмотр профиля
Re: Программирование детям?
« Ответ #28 : 15 Декабря 2010, 07:56:40 »
Есть повод хорошо подумать, по "Хочу ребёнка 10 лет приобщить к программированию".
Не думаю, что Л.Торвальдс именно так решил со своими дочерьми. Правда, если не ошибаюсь, моложе.
Есть вариант отбить охоту.
В этом возрасте, да и постарше, пусть на отлично учится в хорошей школе.
Учить программированию, которое в её годы будет анахронизмом - сомнительное занятие.
Хотя примеры создателей америко - гигантов в ИТ( или в противоположном - о К.Митнике ), как раз такие, в 10 сел за басик. Делал игры. Потом хакерские шутки. Потом под прицелом спец.подразделений и т.д. Вообщем картинка...

Оффлайн $oft

  • Активист
  • *
  • Сообщений: 273
    • Просмотр профиля
Re: Программирование детям?
« Ответ #29 : 15 Декабря 2010, 09:58:50 »
про php забыли... очень на бейсик похож с Несложным синтаксисом. Самое важное ИМХО имеет практическое применение!

когда меня давно в школе бейсику учили я 100% знал что он никогда не пригодиться - жесткий демотиватор.

зато щас увлекаюсь как хобби пхп) (смотреть в подпись).

Питон противопоказан... извращенная лексика не похОжая ни на один другой язык. Конечно если привыкнуть то там куча всего удобного сделана, но в 10 лет хотя бы просто иметь представление.

С++ жесть.

Рекомендую Бейсик или ПХП
Yii2/Laravel + JS/vue fullstack web developer
@evetrov telegram

 

Страница сгенерирована за 0.063 секунд. Запросов: 25.