forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Болтовня (http://forum.boolean.name/forumdisplay.php?f=25)
-   -   С чего начать обучение программированию? (http://forum.boolean.name/showthread.php?t=15256)

ffinder 06.08.2011 16:15

С чего начать обучение программированию?
 
Здравствуйте, булкомэны и булковумэны!
Хочу научить младшего брата программированию.
Субъекту 12 лет, 5 класс школы.

Есть ли годные обучающие языки программирования?
Или стоит сразу с индустриальных языков начинать?
В общем я в растерянности. Порог входа в современное программирование как-то незаметно задрался до неприличных высот.

Нужно, чтобы был сразу виден результат, только тогда это может зацепить и поддерживать интерес в изучении.

Жду ваших советов.

Lestar 06.08.2011 16:22

Ответ: С чего начать обучение программированию?
 
C# чем не годный язык.Минимальный результат будет практически сразу.

Taugeshtu 06.08.2011 16:27

Ответ: С чего начать обучение программированию?
 
Начинал (вот чтоб прям начинал) с ДаркБейсика. Вот многие скажут "фе" (и будут правы), зато в своё время мне сильно помогло разобраться в 3д (да и программировании вообще) безумное количество русифицированных примеров, и обширная русифицированная же справка.

Потом перескочил на б3д, стал чуть цивилизованней, потом можно на индустриальные переходить (мне так кажется).

den 06.08.2011 16:27

Ответ: С чего начать обучение программированию?
 
processing.org
годная вещь.
простой язык на основе java.
своя ide.
100500 функций для рисования (ну чтобы было интересно) и немного для работы с файлами.
100500 примеров (и обучающие итоже) в комплекте.
всё кросплатформенно (+под андроид можно компилировать) и открыто.

ну или блитз3дэ:)

NitE 06.08.2011 16:47

Ответ: С чего начать обучение программированию?
 
Я помню начинал с хтмл. Тогда был одержим идеей создать сайт, так-что это не для всех. Не программирование конечно, но помогает понять, что такое синтаксис, например.

IGR 06.08.2011 16:48

Ответ: С чего начать обучение программированию?
 
почему бы не начать с блиц3д, язык простой, иде простой !!
В 3д, сеть, звуки не лезть а просто научить реализовывать простые алгоритмы поиска, сортировки и вывода результата
Техт 10,10, результат

Dream 06.08.2011 17:00

Ответ: С чего начать обучение программированию?
 
Мне кажется лучше начать с блиц макса, с 2д графии. Чтобы уже после двух строчек кода был вден результат(загрузить рисунок например, потом двигать его), ну и дальше вверх, по кривой обучения

falcon 06.08.2011 17:04

Ответ: С чего начать обучение программированию?
 
python, на мой взгляд, отличный выбор.
В отличии от классических паскалей и бейсиков, изучение питона - путь не тупиковый (да простят меня дельфисты).
Но вообще начать было бы здорово с основ алгоритмизации, объяснить, что из себя представляет память, как происходит выполнение программы. Так сказать настроить на нужную волну. И ещё было бы здорово привить привычку чтения технических книжек.
Очень важно, что бы не приходилось объяснять начинающиму перед тем как он распечатает свой первый Hello World, что такое дерективы препроцессора, импорт пакетов, модулей, что такое пространства имён, объекты, перегруженные операторы, точка входа, функции.. а ведь всё это необходимо что бы распечатать текст в Java, C# и C++..
в этом больше приимущество паскалей и бейсиков. Они действительно проще. Питон тоже обладает этими приимуществами, но плюс к тому этот язык сейчас весьма актуален :)

ingko 06.08.2011 17:09

Ответ: С чего начать обучение программированию?
 
Не, а чего-то такое - прикладное для винды... Или линукса, чтобы оно что-то умело полезное делать? Я тоже хочу научиться программить :)

Gector 06.08.2011 17:45

Ответ: С чего начать обучение программированию?
 
Блицмакс.
1) Довольно прост.
2) ООП ближе к серьезным языкам. Будет легче осваивать промышленные языки).
3) Писать игрушки в 12 намного веселей).

Nerd 06.08.2011 18:16

Ответ: С чего начать обучение программированию?
 
Только binary x86, только хардкор!
А если серьёзно - Pure Basic кошерен.

Amatsu 06.08.2011 19:37

Ответ: С чего начать обучение программированию?
 
Турбо Паскаль же

impersonalis 06.08.2011 21:09

Ответ: С чего начать обучение программированию?
 
http://habrahabr.ru/company/microsoft/blog/124116/ ?
PS: а сам-то он хочет учиться?

NitE 06.08.2011 21:13

Ответ: С чего начать обучение программированию?
 
Цитата:

Pure Basic кошерен.
Указание типа переменной там совсем не кошерно. Не для начинающих однозначно.

IgorOK 06.08.2011 21:56

Ответ: С чего начать обучение программированию?
 
ИМХО: BlitzMax

Тот же бейсик только с блекджеком и шлюхами. :-D

Morganolla 06.08.2011 23:39

Ответ: С чего начать обучение программированию?
 
Наверно питон на начальном уровне, там нет типов, но есть ООП! Только надо найти хороший учебник для начинающих.

Randomize 07.08.2011 14:54

Ответ: С чего начать обучение программированию?
 
Эрланг

Romanzes 07.08.2011 15:25

Ответ: С чего начать обучение программированию?
 
Нам в 5-м классе впаривали обучающий язык "Кенгуренок Roo", потом QBasic. Roo предельно простой и примитивный, никаких переменных вообще нет, зато есть функции, суть заключается в написании программ для кенгуренка, который скачет по экрану и рисует линии. Мне в том возрасте было довольно интересно. Благодаря этому языку я понял смысл функций и вообще заинтересовался программированием. Но эта программа вроде бы только для DOS. (Но на XP запускается без проблем)
Сейчас в школах впаривают некое Лого, подозреваю, что это унылая поделка без души.

ffinder 07.08.2011 16:01

Ответ: С чего начать обучение программированию?
 
Спасибо всем, кто потратил свое время и дал советы. Ваши мысли показали стоящий передо мной вопрос с различных сторон.
Итак, отчет по первому занятию.

Я вспомнил, что сам начинал с Spectrum BASIC. Там не было никаких контекстов устройств, переключения графический\текстовый режим, долгой компиляции, сохранения програм по куче файлов и прочей несущественной для старта ерунды.
Был REPL, и можно было вводить программу построчно.
Все или работало сразу, или выкидывало однострочные сообщения об ошибках.
Еще было подобие IntellySens'а. Ключевые слова и синтаксические конструкции вводились одной кнопкой.

И я решил для пробы найти что-то подобное.
Нагуглился какой-то BASIC256. На нем и началось обучение. После нескольких странных приколов (диалекты Бейсика же) - обучение перешло на Blitz3D.

Что пошло хорошо:
1. В Бейсике можно писать осмысленные программы из 2-3 строк.
2. Понята логика работы основных конструкций: Print, Input, If Then Else, For Next (т.е. не собственное безошибочное написание, а именно что они делают).

Что пошло не так хорошо:
1. Нет навыков набора латиницей. Это очень замедляет всё.
2. Синтаксис, его надо учить, да.

Итоги: не так уж плохо для первого раза. Посмотрим, что будет дальше.

Теперь развернуто отвечу falcon'у, т.к. он затронул методологию обучения.
Цитата:

Сообщение от falcon (Сообщение 198257)
Но вообще начать было бы здорово с основ алгоритмизации, объяснить, что из себя представляет память, как происходит выполнение программы. Так сказать настроить на нужную волну. И ещё было бы здорово привить привычку чтения технических книжек.

Вчера я начал все же не с технических подробностей, а с демонстрации самой возможности того, что компьютером, вернее её логикой, можно управлять.
Основной упор был на простоту. Чтобы ребенок осознал, что программирование это не что-то невероятное, а вполне себе познаваемая вещь.

Цитата:

Сообщение от falcon (Сообщение 198257)
Очень важно, что бы не приходилось объяснять начинающиму перед тем как он распечатает свой первый Hello World, что такое дерективы препроцессора, импорт пакетов, модулей, что такое пространства имён, объекты, перегруженные операторы, точка входа, функции.. а ведь всё это необходимо что бы распечатать текст в Java, C# и C++..
в этом больше приимущество паскалей и бейсиков. Они действительно проще.

+100500

Цитата:

Сообщение от falcon (Сообщение 198257)
python, на мой взгляд, отличный выбор.
В отличии от классических паскалей и бейсиков, изучение питона - путь не тупиковый (да простят меня дельфисты).

согласен, но все-же ООП на Питоне это нечто своеобразное, совсем не по законам жанра. И куча приколов с динамической типизацией, которые надо будет объяснять. И еще одна "радость" в Питоне - создание полей классов на ходу при обращении к ним. Т.е. опечатался, например вместо name набрал nmae - и "компилятор" тебе ничем не поможет, ищи ошибку по всему тексту.
Да, я знаю, что можно перегрузить get_attr. Но это явно уже не про обучение программированию.
Цитата:

Сообщение от falcon (Сообщение 198257)
Питон тоже обладает этими приимуществами, но плюс к тому этот язык сейчас весьма актуален :)

ответил про "преимущества".

ffinder 07.08.2011 16:07

Ответ: С чего начать обучение программированию?
 
Цитата:

Сообщение от NitE (Сообщение 198251)
Я помню начинал с хтмл. Тогда был одержим идеей создать сайт, так-что это не для всех. Не программирование конечно, но помогает понять, что такое синтаксис, например.

А вот это просто отличная идея.
Надо показать, что все сайты в интернете внутри используют HTML.
Возможно будет небольшое "озарение":)

Цитата:

Сообщение от Randomize
Эрланг

ты знаешь, если бы у ирланка синтаксис был не настолько дурацким, а на уровне бейсика - это был бы ясный и решительный win.

falcon 07.08.2011 16:45

Ответ: С чего начать обучение программированию?
 
Цитата:

Вчера я начал все же не с технических подробностей, а с демонстрации самой возможности того, что компьютером, вернее её логикой, можно управлять.
Блин, казалось, такая простая истина, а серьёзно раскрыть её на первом занятии мне почему-то в голову не приходило. Взял на заметку)

Цитата:

согласен, но все-же ООП на Питоне это нечто своеобразное, совсем не по законам жанра.
вероятно вся твоя критика питона действительно оправдана.
Просто меня жутко бесит, что зачастую приходится начинать обучение с паскалей и бейсиков.. Начинающий, как никто склонен к субъективным убеждениям (аля "на %user languge% можно сделать всё!" ) из-за которых они всеми силами воют за делфи, не слазают с бмакса, и т.д.
И так хочется, что бы первый язык, тот язык на котором у новичка начнёт что-то получатся был бы актуальным и востребованным. Что бы если прогинг вышел за рамки хобби, и потихоньку переростал в профессию, можно было бы найти работу или поучавствовать в серьёзных опен сорс проектах..
в этом плане паскали и бейсики мертвы.. И очень хочется найти альтернативы. Пока что мне питон кажется убедительной альтернативой)
в конце концов введение в ооп будет не на начальном этапе))

h1dd3n 07.08.2011 18:16

Ответ: С чего начать обучение программированию?
 
PascalABC (.NET) там все для обучения есть. Простое рисование и т.д., однако синтаксис паскаля (хоть и с фишками .net). Я начинал с такой убогой хрени как libertybasic. Что-то понимать начал только когда перешел на бмакс.

RBK 08.08.2011 04:46

Ответ: С чего начать обучение программированию?
 
Используй для обучения игру COLOBOT, в ней используется упрощенный вариант языка С. Более важно вызвать занятиями интерес изучать программирование.

ffinder 21.08.2011 22:21

Ответ: С чего начать обучение программированию?
 
Итак, продолжение [s]марлезонского балета[/s]
Сейчас обучение идет по двум фронтам.
1. тренировка набора латиницей. используется программа BabyType. ученик осилил 34 уровень.
2. Microsoft Kodu. игровой sandbox и немного программирования с помощью пиктограмм. Довольно забавно. Используются очень высокоуровневые конструкции (опрос клавиатуры/мыши/джойстика, действия: прыжок, движение (по вейпоинтам включительно), поворот...). Встроенный редактор террейна, расстановка объектов, программирование логики объектов, изменение свойств объектов.

Теперь про COLOBOT.
Это игра не для обучения программированию. Уж точно не для обучения с нуля.
Скорее это игра для заскучавших бородатых дядь-программистов.
Возможно попробую её позже. Когда уже будут твердые базовые навыки у малого.

Mr_F_ 21.08.2011 23:56

Ответ: С чего начать обучение программированию?
 
как-то вы недостаточно хардкорны.
всё что нужно для обучения программированию - это ярое желание.
я сидел в возрасте сабжа и даже раньше, и читал древние бабушкины книжки по dos-коммандам, переводил хелп qbasic'а с гигантским бумажным словарём.

Hurrit 22.08.2011 07:38

Ответ: С чего начать обучение программированию?
 
по мне, лучше начинать с паскаля. он дает возможность легко понять суть программирования, а понимая ел выучить другой язык не составляет проблемы. з.ы. помню, я с другом перепичатывали алгоритмы на паскале с книжки на комп, они ещл огромные были, но весь кайф был в том, что книга была турецкая, и мы почти никогда не знали что у нас получится в итоге, бывало очень весело видеть аналоговые часы и прочие приколы.

Randomize 22.08.2011 07:51

Ответ: С чего начать обучение программированию?
 
Ммм? http://smallbasic.com/

St_AnGer 22.08.2011 10:33

Ответ: С чего начать обучение программированию?
 
я начинал с QuickBasic на бумаге, т.к. доступ к пк был раз в неделю только. И какая же была радость когда получалась анимация человечка из пяти линий, или какой нибудь кораблик... Basic ведь для того и basic, что с него начинать очень просто

RBK 22.08.2011 13:17

Ответ: С чего начать обучение программированию?
 
Цитата:

Сообщение от ffinder (Сообщение 199600)
Теперь про COLOBOT.
Это игра не для обучения программированию. Уж точно не для обучения с нуля.
Скорее это игра для заскучавших бородатых дядь-программистов.
Возможно попробую её позже. Когда уже будут твердые базовые навыки у малого.

Посмотри в разделе Упражнения, именно там обучение с нуля.
Упражнения идут в таком порядке:
  • как выполняется программа
  • переменные
  • условия
  • циклы
  • функции(в конце рассматривается рекурсия)
В справке идет немного теории, потом практическое задание.

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

AVL 22.08.2011 16:35

Ответ: С чего начать обучение программированию?
 
А почему не сразу C++? Я в школе изучал QBasic, потом VB, в универе на первом курсе был паскаль. На втором курсе будет C++, я решил на каникулах немного его изучить. Так вот - перейти с бейсика на паскаль было намного проще, чем с паскаля на C++.

falcon 22.08.2011 18:54

Ответ: С чего начать обучение программированию?
 
>>А почему не сразу C++?
Цитата:

Очень важно, что бы не приходилось объяснять начинающиму перед тем как он распечатает свой первый Hello World, что такое дерективы препроцессора, импорт пакетов, модулей, что такое пространства имён, объекты, перегруженные операторы, точка входа, функции.. а ведь всё это необходимо что бы распечатать текст в Java, C# и C++..
да и вообще для первого языка, все тонкости и неоднозначности C++ слишком сложны.

Randomize 22.08.2011 20:35

Ответ: С чего начать обучение программированию?
 
Мой вброс не засчитан? :'C

NitE 22.08.2011 21:16

Ответ: С чего начать обучение программированию?
 
Randomize, http://forum.boolean.name/showpost.p...3&postcount=14

ffinder 22.08.2011 21:45

Ответ: С чего начать обучение программированию?
 
Small Basic был испробован. Но он там странный. Обычный print не работает, вместо него что-то типо доднедовского System.Console.PrintLine или как-то так.
Преимуществ против BlitzBasic'а не показал и был удален.

YellowAfterlife 22.08.2011 22:48

Ответ: С чего начать обучение программированию?
 
Как мне кажется, можно было бы начать с GameMaker.
Отдельно для программирования может не лучший выбор, но для разработки игр (а это скорее всего более интересно в таком возрасте) - то что нужно.
Плюсы
* Простой синтаксис: локальные переменные объектов "объявляются" при присвоении им значения, вызов функций не составляет проблем, свои "функции" редактируются в отдельных окошках. Названия стандартных функций на простом английском.
* Простая организация компонентов игры. В "проекте" есть категории графики, звука, кода, уровней, объектов (с простыми "событиями" для шага \ ввода \ столкновений \ т.п.)
* "Все в одном". Есть внутренний простой редактор графики, редактор уровней, редактор кода с подсветкой синтаксиса (так же показывает очевидные ошибки в коде пока он печатается). Так же есть "сценарии" (выполнение кода на указанных шагах) и кривые Безье (точнее, не совсем они, но функция похожа).
* Перспективы развития среды. В начале сентября начинается бета-тестирование версии с HTML5 экспортом, в следующем году планируется релиз версии с экспортом на iOS - Anroid - PSP.
* Есть "визуальное" программирование "блоками" действий.
Минусы
* Интерпретированный язык программирования. Разработчики все собираются это "исправить", но пока заметно лишь то что их интересует добавления экспорта на разные платформы. То есть еще ближайший ~год этого не будет.
* Слабая 3d функциональность (фактически лишь рисование).
* Возможное развитие "ленивости" в плане написания кода. Некоторым людям переход на языки программирования, где нужно объявлять переменные перед использованием, дается сложнее чем другим.
Общее:
* Создание первой игры занимает менее получаса.
* Программа легка в освоении.
* Хорошо подходит для создания прототипов игр; при желании код легко портируется под другие языки программирования.
В возрасте 12..13 лет я в начале ковырял Just Basic (который был очень печальный), и потом GM - у меня до сих пор где-то есть папка с кучей игр, что я делал в то время. В общем было весело :)

Igor 23.08.2011 00:53

Ответ: С чего начать обучение программированию?
 
Начинал с паскаля (6 или 7 класс). Простой, удобный. Первый "толчок" дала школа, потом я задавал отцу кучу вопросов и учился сам.
ООП конечно нужно, но для начала надо без него структурное освоить.
Пользовался FreePascal , но у него немного страшноватый интерфейс. Встречал ABC Pascal - код набирать в красивом окошке, программа тоже не в консоли. Но он вроде пошаговый (читает-выполняет), exe не создаёт и потому я с ним не экспериментировал.
+ Минималистичный интерфейс из Writeln и readln.
+ Можно написать что-нибудь серьёзное.
Я сам освоил (и придумал) алгоритм сортировки массивов, потом реализовывал более продвинутые, искал простые числа и сохранял их в файлик, узнал что есть 92 способа расставить 8 ферзей на шахматной доске чтобы они друг друга не били. Сомневаюсь что кто-то из моих одноклассников хотел бы этим заниматься, но мне жутко нравилось.
Ага, Midlet Pascal - можно что-то сделать для телефона и показать друзьям.

Вот ссылка на учебник. Многое описано неполно, но главное - начать, основы есть.

есть забавная штучка - Codu Game Lab. Код писать не надо, тыкаешь мышкой. Совсем детская, куча заготовок, тыканьем мышки добавляешь скрипты. Пытался научить сестрёнку но она не заинтересовалась, а мне через пару дней надоела.

AVL 23.08.2011 09:02

Ответ: С чего начать обучение программированию?
 
Как это .exe не создает??? Все он создает.

Igor 23.08.2011 23:24

Ответ: С чего начать обучение программированию?
 
Мне казалось что ABC не создаёт. Точно не знаю.

AVL 24.08.2011 00:00

Ответ: С чего начать обучение программированию?
 
А я точно знаю.

Igor 24.08.2011 21:41

Ответ: С чего начать обучение программированию?
 
Да ты у нас знаток
ссылка
Цитата:

Компилятор Pascal ABC является компилятором переднего плана (front-end). Это означает, что он не генерирует исполняемый код в виде .exe-файла, а создает в результате компиляции дерево программы в памяти, которое затем выполняется с помощью встроенного интерпретатора. В итоге скорость работы программы примерно в 20 раз медленнее скорости работы этой же программы, откомпилированной в среде Borland Pascal, и в 50 раз медленнее этой программы, откомпилированной в среде Borland Delphi.
Установил, *.exe он не создаёт, "программа" состоит только из одного файла .pas

AVL 24.08.2011 23:24

Ответ: С чего начать обучение программированию?
 
Вложений: 1
Цитата:

*.exe он не создаёт
А это тогда что?
UPD: Разобрался. Просто я не знал что кроме PascalABC.NET есть был еще PascalABC.

L.D.M.T. 25.08.2011 09:14

Ответ: С чего начать обучение программированию?
 
Поскольку с этого года я буду работать учителем информатики, то вопрос выбора языка программирования для меня тоже стал актуальным. small basic был также опробован мною но не одобрен, qbasic не катит из за проблем работы на семерке (хотя дос-бокс еще никто не отменял, но возиться влом), поэтому все же остановлюсь на старом добром B3D :)

Nerd 25.08.2011 09:42

Ответ: С чего начать обучение программированию?
 
Цитата:

Сообщение от L.D.M.T. (Сообщение 200069)
Поскольку с этого года я буду работать учителем информатики, то вопрос выбора языка программирования для меня тоже стал актуальным. small basic был также опробован мною но не одобрен, qbasic не катит из за проблем работы на семерке (хотя дос-бокс еще никто не отменял, но возиться влом), поэтому все же остановлюсь на старом добром B3D :)

Только тогда лицензия на блиц нужна. Ты готов заплатить $100*~25=~$2500=~72500 рублей?

AVL 25.08.2011 13:18

Ответ: С чего начать обучение программированию?
 
А почему именно бейсик то?

HolyDel 25.08.2011 13:44

Ответ: С чего начать обучение программированию?
 
Цитата:

Только тогда лицензия на блиц нужна.
да не, ему пофиг на авторские права.

Mr_F_ 25.08.2011 15:55

Ответ: С чего начать обучение программированию?
 
нет о_0

Igor 26.08.2011 00:11

Ответ: С чего начать обучение программированию?
 
Замучаешься преподавать информатику, судя по нашей учительнице. Те кому интересно и так знают, на уроках скучают, остальные даже не пытаются понять как это работает.
Прошли паскаль, потом Word, стали снова изучать паскаль - выяснилось что все всё забыли, проходили заново...
Люди не могут найти наименьшее число в массиве, не говоря уж о том чтобы его отсортировать.
P.S. Потому язык нужен простой
P.P.S. Линукс рулит - он бесплатный и ученики много не натворят потому как мало кто в нём разбирается

impersonalis 12.09.2011 13:32

Ответ: С чего начать обучение программированию?
 
Как прогресс?
И, кстати, http://ru.wikipedia.org/wiki/Учебный...ограммирования

moka 12.09.2011 16:53

Ответ: С чего начать обучение программированию?
 
Я в 6 лет с Лого начинал, вот кстати интерпретатор.
Вообще SmallBasic показался отличным для обучения.

Начнём с реалей, не с точки зрения ГД а вообще индустрии потребных в программистах. Большая их доля приходится на языки не столь низкого и хардкорно уровня как C или C++.

Есть куча программистов, Java, C#, PHP, JS, и других. Они имхо занимают сейчас большую часть программистов, нежели Сишники.

Знание языка низкого-уровня, это круто и очень хорошо, но не обязательно. Есть не мало разрабов, не знающих С++, и имеющих отличный успех в других, и делают на этом великолепную карьеру.

Поэтому, почему "учителя", сразу же определяют что конечная точка "должна" быть именно С++?

Я вот глянул на тот же SmallBasic, и весьма порадовался данному инструменту. Он не расчитан совсем на детишек (не 6 лет), но и не плох во многом, даёт отличный взгляд на многие абстракции в программировании.

Почему не С++, уже много сказали, но также, если молодой человек захочет стать программистом, то ему отлично расскажут про память, как работает железо, как работает вообще много "за кадровых" процессов. Что естественно молодому ученику не нужно. Ему нада сразу результат.

При этом SmallBasic имеет кучу возможностей с GUI, Графикой и другими областями.

impersonalis 02.12.2013 13:02

Ответ: С чего начать обучение программированию?
 
ПРИЗЫВАЮ ТОПИКСТАРТЕРА В ТРЕД :pure_magic:

ABTOMAT 02.12.2013 16:34

Ответ: С чего начать обучение программированию?
 


Часовой пояс GMT +4, время: 07:10.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot