Pull to refresh

Comments 435

Мне сейчас 14 лет, разработкой интересовался уже давно, год-два назад всерьёз занялся этим. Начинал с Си. Так уж вышло, что мне попался перевод оригинального учебника (2-издание). Также, незадолго до этого, перешел на GNU/Linux, так что подготовка окружения проблемы не составила. Теперь пишу web-сервер на go, держу парочку репов на гитхабе.
UFO just landed and posted this here
Любопытство + Google => https://github.com/handicraftsman
Ну вебсервер там соответствующий. Не считая коментариев и printf'ов, там кода строк 50 наверное.
Направление правильное, но чуть скромнее нужно быть. Инженерам заниматься самопиаром вредно, появляется странное ощущение собственной крутизны, а по факту — пока ничего нет.

Лучше меньше читай хабр и рэддит, и больше программируй. Чем больше ошибок совершишь — тем лучше

Реддит я не то чтобы сверх люблю, а строк больше 50 в разы (ибо часть функционала библиотеки net/http была захардкожена, пришлось писать свой вариант с нуля)

Респект таким парням! В 14 лет я кое-как решал задачки на Turbo Pascal'е на местных олимпиадах по информатике. С другой стороны, тогда интернет был мало у кого, и был совсем не такой, как сейчас. Сейчас в тысячи раз проще найти нужную информацию, или пообщаться с кем-то, спросить совета, и это замечательно.
Блин, во вы даете! В 14 лет я воровал металл с завода, а сейчас занимаюсь версткой, программирование как то особо не дается. Не поздно ли мне вообще заниматься программированием, а остановится только на фронтенде сайтов?
В зависимости от талантов, пускай уж лучше будет хорошим дизайнером, чем плохим программером.
В мои 14 интернет казался красивой сказкой
Эх вспоминаю себя. В школьное время приходилось самому цикл изобретать на паскале из GoTo и If и за училок отлаживать программы. А если бы меня уже тогда отправили к хорошему преподу, был бы сейчас на совершенно другом уровне. Но к сожалени, к сожалению…

Родители! Отдавайте своих детей в кружки!!!
В 9 лет создавать программы такого уровня это очень здорово! Удачи тебе в этом ремесле и ни в коем случае не забрасывай его! :)
Спасибо большое за поддержку!!!
В девять лет так складно и грамотно писать — вот что здорово! А уметь и учиться программировать — вообще замечательно!
Думаю, тут не обошлось без подсказок и поддержки родителей, не многим такие достаются.
Цени их, ТС!
Хм, я в 9 то же примерно такое делал на бейсике :D (шарпа тогда еще не было 99-2000е все же были, C слишком сложно для такого возраста)
Так что мне посоветовали ВБ. да и книг по нему тогда много было.
Мне 37, компьютер нам впервые показали в 10м классе. Сейчас у меня сыну 3 года, и я очень решительно настроен в отношении него. Он уже выучил весь алфавит. Уверенно пользуется мышью. И Scratch я планирую ему показать примерно в четыре.
VHDL. Нам нужны опенсорсные процессоры без вендорских закладок и прочего мусора.
GCC опенсорсен, Go тоже, Vala так вообще свободнее некуда.
Спасибо. Ибо раньше знал только на уровне «что-то слышал»
А чем вам IMX6 не опенсорс? Там даже есть описание регистров кодека h264 (нигде не видел такой щедрости)
Учился на проектирование цифровых систем, изучал и даже в основном понимал VHDL (синтезируемое подмножество), любил делать всякие простые штуки на FPGA. Хотел найти работу в этой области, но все предложения сводились к верификации (а я хотел разрабатывать своё, а не искать ошибки в чужом). В итоге плюнул и уже 5 лет работаю со второй любимой технологией — С++.
Я к чему: VHDL — это хорошо, но как-то спрос на него слабоват.
Мне кажется, Вы все правильно делаете! Сыну, наверняка, будет интересно!
Совсем не факт. Зависит от характера и подхода.
Я надеюсь, сыну это нравится и вы не перегибаете палку. Меня научили читать в 5 лет, но толку от этого,.т.к. по настоящему читать начал в 8, правда сразу запоем. Ребенок в первую очередь должен быть счастлив. С программированием я столкнулся в 10 на сюборе, и решил стать программистом только потому, что не мог заставить Марио прыгать по баллистической траектории. Мне самому это было интересно. Занимайтесь с ребенком с конструктором — развивайте ему логическое мышление. Это по возрасту.
Сейчас я вижу вокруг столько примеров, когда родители заставляют детей заниматься чем нибудь не по возрасту и возможностям. И еще и хвалятся. Это просто ужасно. Любите своих детей, а не пытайтесь из них сделать прокаченную копию себя. Учите их думать и размышлять. Каждый должен сам выбирать свой путь.
С вами немного не согласен; да, нужно быть в осознанном состоянии, чтобы понимать какие последствия будут от новых технологий учёных, инженеров, программистов и тд. Автор поднимает очень важную тему, это обучение малых детей с ранних лет, это необходимо в срочном порядке понимать и создавать новые образовательные программы, ибо человек может генерить гениальные идеи в возрасте 8-16 лет чуть позднее 17-19 лет и совсем реже уже от 20+ лет
Вы посмотрите сколько подростков от 9,12,16 лет используя интернет и нужную информацию создают программы/игры публикуют на appstore и тем самым уже зарабатывают.
Автор пишите ещё, дошколята будут на вас подписаны!
гениальные идеи в возрасте 8-16 лет чуть позднее 17-19 лет и совсем реже уже от 20+ лет

Простите, мне кажется, Вы неправильно выбрали здесь эпитет. Т.к. «гениальные идеи» появлялись и реализовывались всё же людьми 20+. В физике таких примером множество. Эйнштейн, Тесла, Фарадей, Максвелл… Всем им было 20+.
Ну, Гаусс добился своего самого высокого достижения (по его мнению) в возрасте 18 лет. Так что в каждом правиле есть свои исключения.
Галуа начал интересоваться математикой в 16 лет, а в 20 уже погиб на дуэли.
вы в корне не понимаете, сейчас наоборот дела обстоят, с доступностью информации дети начинают творить уже СЕЙЧАС и я это вижу на многочисленных примерах, и если человеку уже за 20+ то 1 из 1 миллиарда дай бог выкатит что то для человечества, мы должны понимать, что человек это как сок, так вот выжимают этот сок(а выжимает его система) уже в раннем возрасте(а затем идёт спад сил), вообщем… Уже сейчас нужно вкладываться в детское образование, и отказываться от настоящего образования.
Что это за стремление вообще — непременно сделать из своего ребенка гения?
Воспитать хорошего человека с развитым кругозором и самостоятельной точкой зрения, с устойчивой психикой — отлично.
Познакомить с космосом, компьютерами, литературой — пожалуйста.

Но почему все обязательно хотят вырастить гения любыми средствами, в т.ч. используя неподходящие по возрасту методы? И почему каждый первый кружок для детей обещает помочь вам в этом?
Не понимаю. Это скорее ЧСВ родителя, чем забота о счастливом будущем ребенка.
Это мечта родителей, чтобы ребенок стал миллионером и обеспечил им достойную обеспеченную старость (а не жалкое прозябание на скудной пенсии).
Если это был сарказм, то ок :)
Если нет, то запомните, ребенок ничего вам будет не должен как родителю, он вырастет и уйдет и может о вас не вспоминать, это его право. Ребёнок это не депозит, куда кладешь деньги чтобы потом проценты стричь. Ребенок это благотворительность. Всё, что будет в него вложено это будет его. Другой вопрос что воспитав хорошо его, и если он сам нормальный по себе, то он врядли забудет о вас.
очевидно же, что сарказм
странно, что комментарий заминусили

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

это понимаете Вы, это понимаю я, это понимает большинство сообщества Хабра, но в жизни встречал довольно много людей, которые думают как раз так, как написал автор комментария
UFO just landed and posted this here
>>> ребенок ничего вам будет не должен как родителю, он вырастет и уйдет и может о вас не вспоминать, это его право…
=> Это всего лишь означает что родители вырастили муд@к@. Ребенок это не депозит куда кладешь деньги. Ребенок это будущее твоего рода, это лично твоя единственная связь с будущим. Потому что ты сдохешь и только твои потомки будут жить дальше. И у них есть перед тобой обязанность — позаботиться, в свою очередь о том, чтобы род не прервался. Это его ответственность, ребенка, он должен тебе это за то, что ты породил, воспитал и вырастил его. Никакая это не благотворительность. Мы воспитываем своих детей как можно более сильными для того, чтобы они побеждали в конкуренции с чужими детьми. Называйте вещи своими именами и не бросайтесь своими высокомерными «запомните».
Поддержу.
Тут весь вопрос что понимать под словом «должен».
Должен ли пионер уступать место в трамвае бабушке?
Должен ли ребёнок заботиться о своих престарелых родителях?
Гением сделать невозможно — они просто такими рождаются, с таким мозгом и такими способностями.

Нет. Надо, чтобы у человека проявлялся интерес к предмету, чтобы он его изучал, чтобы он его ХОТЕЛ изучать. Только тогда он будет что-то делать хорошо.

Это никак не противоречит сказанному выше.
Любой здоровый ребенок может стать гением, если он будет развиваться. Если с ним заниматься. и развивать.
ну это видимо смотря что понимать под словом «гений». Многие (если не большинство) люди, внесшие значительный вклад в развитие науки/искусства и т.п., сделали это вопреки обстоятельствам, а не потому что с ними в детстве занимались.
много родителей занимаются и развивают своих детей, пытаясь вырастить гениев, однако удается не у всех
+ выращенные подобным образом «гении» довольно часто во взрослой жизни становятся несчастными
Нет. Принципиально нет. Под гением мы здесь понимаем Моцартов, Бахов и Перельманов. Есть те, кто, образно выражаясь, «улетел на Луну, подпрыгнув с третьего раза». Речь идет о специфике морфологии мозга (поля Брока и прочее). Это нельзя развить, ибо достается случайно. Да, есть те, кто, например, достигал успехов, много работая, как, например, Маяковский (акцент на шагах, что видно по его ритмике), но Хлебников и другие это делали много лучше и не в пример проще и быстрее, ибо позволял мозг.
Сколько в жизни было выдающихся ученых, про которых никто не знал, а их трудами пользуемся? Все знают Энштейна, но все ли знают хотя бы 10 фамилий тех ученых, чьими трудами Эйнштейн вывел свою теорию? И эти труды были гениальны.
Сколько гениев было признано гениями ПОСЛЕ смерти.

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

Много ли известно гениальных фигуристов? А много ли известно гениальных слаломцев? А ведь разница в том, что они делают — невелика.

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


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


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

Можно получить травму мозга при жизни. Правда, скорее останется умственно отсталым, чем повредит «нужную» область.
Согласен с Вами. Хотя есть дети, которых ничего не интересует, и их надо как-то стимулировать. Его можно учить делать всё что угодно, программирование хорошее знание в наше время. Можно научить работать руками, менять краны или работать с деревом. Не суть. Гением его это не сделает, но даст полезный навык на всю жизнь, за что он потом может сказать спасибо.
Лично я знакомлю ребенка со всем, что он сам хочет знать, никогда не оставляю вопросы без ответов и не порю дичь. Если чего-то не знаю, то говорю ему я не знаю, но давай посмотрим в энциклопедии, открываем и читаем. Ребёнку очень нравится.
«Что это за стремление вообще — непременно сделать из своего ребенка гения?»

Вы неправы. Для развитого кругозора — нужно или постоянно быть с ребенком и все ему рассказывать, либо научить его читать, пользоваться гуглом, но при этом обучить его правильному и критическому восприятию информации.

Неподходящие по возрасту методы это как? Каждый человек индивидуален. Кому-то в 5 лет легко даются иностранные языки, кто-то в 11 уже ведет в поход армии. Вопрос в том, что если ребенку стало интересно что-то, то почему он везде встречает ограничения типа «подрастешь, тогда возьмем».
Ну а если таких детей, которые интересуются в малом возрасте становится много — есть спрос, появляютс и кружки.

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

Никакого ЧСВ, только поддержка, если ребенку самому интересно.
В школе учат не когда конкретный ребенок «готов», а когда большинство готово (иначе учителя поимеют рак мозга). До 8-го класса я учился в обычной школе. Но на некоторых уроках я сидел занимался ерундой и получал 5. Например по географии. Чего там циклоны, антициклоны, силы кориолиса… Но нет, один урок учим циклоны (ок, вопросов нет), второй ВЕСЬ антициклоны (да вы издеваетесь). Сидел все время с троечником на задней парте в точечки играл. (Его поднимут спросят — садись 2, меня — 5). Математика — аналогично, новая тема ок, но «практика» — издевательство, впервые стал прогуливать (и все равно 5 на контрольной, но родителям докладывали facepalm).

Правда доставлял похожий подход в изучении грамматики языков: вот правило и целый урок решать упражнения с ним (ну ясный перец, все легко вот же правило). Но при этом не использовать правила предыдущих уроков…

Не могут родители вырастить из рандомного ребенка гения, но могут вовремя подобрать индивидуальные занятия по способностям и стремлениям. А то пол года прогуливать математику вместо того чтобы пойти в мат. класс/школу. Или вообще пишут как сейчас модно «рассеянное внимание» — да конечно рассеянное, удержать внимание ребенка скучным соплежуйством невозможно.

P.S. Не говорю что я был такой недооцененный гений в школе, по истории у меня всегда было 2-3, хотя на нее я тратил больше всего времени. Я говорю что нужен более индивидуальный подход, и родители в этом сильно могут помочь. Конечно начинают они со своего любимого (программирования), но если у него это совсем не идет и проявляются способности в чем-то другом, то родители заметят, не дебилы (не все конечно, но последние отдельная история).
по истории у меня всегда было 2-3, хотя на нее я тратил больше всего времени
Да вообще. Что за хрень с этой историей? У меня была аналогичная проблема, процентов 60 времени от всех уроков занимала именно история, и я с трудом на 4 закрыл (и то мне завысили оценку, т.к. по остальным пятерки были). Объемы материала огромные, запомнить надо дофига. А на четвертной контрольной вообще жесть, надо как-то вспомнить материал за всю четверть! Я удивлялся одноклассникам, как блин некоторые умудряются её на 5 знать? Impossibru
Я писал в первом ответе для чего ребёнок гений. Но тут второй аспект вытекает и не нужно про него забывать, так это спад сил(мыслей и тд.). Просто получается так, что человек(в данном случае ребёнок в раннем возрасте) генерит идеи на полученных им данных, и тут вытекает вторая проблема которую нужно решать(с помощью терапий питания определённых минералов в виде таблеток) — чтобы человек генерил идеи всегда. Тогда и прогресс не будет стоять, а наоборот резко развиваться, что мы и видим, с доступностью информации люди начали творить раньше чем было скажем 150 лет назад, в принципе написал очевидную ситуацию.
Человек генерирует идеи всегда. Я не знаю, кто первый придумал, что мозг к среднему возрасту скукоживается — ерунда это всё. Просто толковый человек обычно успевает проявить себя достаточно рано (именно потому, что он толковый, ему не надо 30 лет трудиться на результат). Но ситуация сейчас благоприятная для всех: продолжительность жизни (в т.ч. активной) растёт, технологии доступны людям любого возраста и т.п. И, кстати, конечно же, с возрастом появляются другие преимущества: где-то можно нагенерировать идей не имея особых знаний, а где-то нужно очень многое знать, чтобы хоть немного продвинуться вперёд.

Я к чему это. Никто никому ничего не должен. Если ребёнку нравится делать что-то — пусть делает, но он (будь хоть трижды гений) не нанимался решать глобальные вопросы человечества. Пусть каждый развивается в удобном для себя ритме, и незачем его гнать насильно вперёд.
Как то услышал фразу «Воспитание детей — самое крутое RPG с не прямым контролем». Не важно какие скилы ты решил прокачивать у своего дитятка, оно вырастет не таким каким ты хочешь. И у прожженных «гуманитариев» есть дети «технари».
Задача родителей — это находить к чему, у ребенка, есть искра заинтересованности и следить чтоб она как минимум не погасла, а как максимум выросла в «костерок».
Хорошо, что у ребенка в дошкольном возрасте появилась тяга к «программированию», но если на месте «программирования», была тяга например к «авиамоделированию», или к «ботаники», ситуация не изменилась.
Я не против если бы информатика преподавалась с 1 класса, но выросло бы количество учебных часов. На данный момент многие родители и так считают нагрузку на школьников повышенной, а тут еще и информатика/ботаника/химия… Причем, большинством родителей, как это ни прискорбно, «узкие» предметы считаются излишеством: «Не было у нас всяких информатик и прекрасно жили»,«Ну и где тебе пригодится эта химия»,«Ты представляешь, детей в 5 классе проценты учить заставляют» и т.п. Так что единственный возможный путь — это самообразование, иногда с помощью репетиторов.
Автор цени своих родитель, они у тебя молодцы.
UFO just landed and posted this here

Категорически поддерживаю. У меня Джека Лондона за плечами не было и нет (ну не интересно), зато был Жюль Верн, Обручев и ещё кое-какая научная фантастика.


Хочу высказаться против другого предмета: литературы. Этот, предмет, конечно, должен изучаться всеми, но, видимо, как-то по другому. Школьная литература испортила мой язык, я привык выражаться простынёй открытого текста, а оказалось, что в нашем мире нужна лаконичность и структурированный текст. Пришлось учиться на лету.

Потому что когда пишешь школьное сочинение ты обязан написать много текста, чтобы учительница смогла проверить пунктуацию, орфографию, и прочую грамматику.
Ха-ха. Сочинение еще цветочки. Как Вам диплом и рефераты в универе?
Школьная литература нужна для того, чтобы ты вырос и знал, что надо прочитать. К сожалению, большинство учителей литературы — идиоты, ни черта не понимающие в самой литературе, но это не проблема предмета.
UFO just landed and posted this here
Когда из школы выпускался я, это был первый год, когда обязательный экзамен по литературе ввели. Вот это была подстава. Хоть с предметом у меня особых проблем и не было, для экзамена надо было прочесть школьную программу, а меня на тот момент интересовала совсем другая литература. Пришлось выбирать форму экзамена «Защита реферата».

Первый год? Сочинение обязаловкой с покон веку писали. До самой эпохи ЕГЭ.

При чем здесь сочинение, если я про региональный устный экзамен по литературе.
Еще не все потеряно, внуков жди :)
UFO just landed and posted this here
Это здорово. Хотя я скорее имел ввиду что оговоренное скорее через поколение случается :) Но шансы надо повышать уже в текущем, это правильный подход :)
А я написал первую программу где-то еще до шестого дня рождения. Толку в ней было мало, так, рисовала всякую лабуду на экране. Но суть-то не в этом. Потом спустя годы в школе информатика — чуть ли не лучший в классе интересно и легко всё. А потом уже подготовка к институту, паскаль — тут всё и завертелось по настоящему. Самостоятельно освоил делфи и пишу на нем и по сей день.
Так случилось, что я учился (1990-2001) в экспериментальном классе, где информатика была с первого класса (г. Мурманск 43шк). Сейчас конечно точно не вспомню последовательность обучения, но начинали точно с простых вещей, что такое клавиатура, мышка, кушали букавки babytype, рисовали в paint или какой то ранний его аналог.
Далее шли алгоритмы, черепашка. Потом Кумир, фразу «если то иначе все» я помню до сих пор :D. qbasic, pascal. Также точно помню давались базовые знания по офису, интернету.
Мне никогда не казалось это чем то сложным или не по возрасту.

Судя по посту эксперимент, к сожалению, не прошел в общую школьную программу.
Младшему сыну сейчас 8 лет. Scratch тоже пытался показать ему в 4, но ему было не интересно, двигать спрайты. Интерес появился только в связке с arduino. На сколько я понял, дети воспринимают лучше то что можно «потрогать». То есть запускать двигатели и мигать светодиодами понятнее, чем виртуальные объекты. Но так как с началом школы нагрузка возросла, заниматься програмированием стали реже, и то только при желании, чтоб не отбить охоту.
Думаю, результаты опроса будут сильно смазаны из-за того, что персональные компьютеры появились в домах многих нынешних программистов гораздо позже, чем они пошли в школу.
Согласен с комментарием. Я вообще программировать начал с телефона. Жесть, правда? А когда появился ноутбук, за месяц научился тому, на что у некоторых уходят годы.
А когда я начал программировать в ПК был процессор на 1Мгц и 64Кб памяти и никаких дисков жестких. Что уж говорить о телефонах или ноутбуках ) Их не было тогда.
А я с калькулятора МК-85, вроде так назывался. Прекрасная была вещь в свое время.
В школах действительно очень мало информатики, но я считаю, что именно программированию учить не обязательно. Главное в программировании — алгоритмы, важно научиться думать как программист, а остальное приложится. Синтаксис, ООП и прочее должны быть профильно, на дополнительных занятиях или в институте.
UPD: С веткой промахнулся)
Основам программирования нужно, чтобы человек мог попробовать всё по понемножку и оценить что ему нравится делать и что ему по силам.
Классная идея. И то, что алгоритмы очень важны то же правда. Но это не работает. Вообще.

Мы можем запомнить только то, что востребовано. Все остальное вылетит как и не было. Поэтому учится писать программы нужно параллельно с другими дисциплинами. Ведь какая самая большая проблема при обучении программированию? Что писать? Разобрался с примерами в книжке. А дальше? А дальше вакуум. Нужен либо ментор, либо реальная необходимость как на работе. Но это доступно далеко не всем. К тому-же даже написание небольших программок даст реализацию и другим предметам. Той-же математике.

И еще о алгоритмах. Допустим мы прочитали про алгоритм сортировки слиянием. Он очень простой и наглядный. Его с легкостью можно объяснить любому ребенку, который знает про существование цифр и умеет их сравнивать. Идем дальше. Псевдокод. Уже не очень-то и понятно. Хотя мы все еще лихорадочно пытаемся удержать мысль в голове. Реализация. И вот тут оказывается, что мы не знаем с чего начать.

Т.е. мы пришли к ситуации когда мы «знаем», но при этом «не умеем». Как бы это ни было странно это вообще очень частая ситуация. Пример из другой области. Японцы в своих единоборствах часто используют такой бросок как «ирими наге». Посмотрите на youtube как просто и эффективно действуют мастера. Попросите вашего друга быть партнером и попробуйте повторить. Голову даю на отсечение. У вас ничего не получится. Это та самая ситуация «знаю, но не умею», которую можно буквально пощупать руками ;)
Я думаю алгоритмы имеются в виду не методы сортировки и обхода дерева, а аналитическое мышление способное составить алгоритм. Для этого даже некоторые игры подойдут (которые заставляют робота делать действия по заложенному алгоритму) или графическое программирование.
Здесь (на хабре) надо быть аккуратным с аналогиями.
Не все японцы занимаются единоборствами.
Ирими-наге — это бросок именно из в айкидо.
Эффективность айкидо сильно преувеличена.
Можно привести более очевидный пример из гимнастики с кучей сальто — «посмотрите как мастер легко это делает, а у вас это не получится..». Но в данном контексте такие аналогии неуместны — ИМХО.
Есть, я считаю, два типа программирования, не всегда связанных между собой:

1. Все, что можно связать со словами «быстро» и «низко», там, где нужно знать алгоритмы в общем и математику и ее разделы в целом: моделирование, расчеты, обработка данных и мультимедиа, видеокодеки, компьютерное зрение, криптография…

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

Я помню компонент шахмат для Delphi. Вот написал ты приложение, хочешь добавить туда шахматы, а знаний для реализации не хватает. Что делать? Не беда — берем компонент «шахматы», перетаскиваем на форму, и — оп! — у нас в программе появились шахматы.
мне кажется, если говорить про обучение, лучше совмещать эти типы.
Месяц — даём человеку задание, с кучей информацией
2Месяца — Выкидываем на природы, без интернета, ну с заданием и компьютером и спокойной тихой природой.
Пол года и уже выйдет не плохой программист, который не лазит в гугл при первой же проблеме, ну при этом может и искать информацию, да ещё и быстро обучаемый будет

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

Да, лет в 13 (2003) появился компьютер (вернее «вот тебе куча деталей, не знаем что с ними делать, разберись как-нибудь»), но ни интернета, ни книжек, ничего. А играть в три с половиной игрушки как-то не интересно. Открывал блокнотом каждый файл в системе, пробовал так менять бинарники (потом edit.com'ом реально патчил методом тыка экзешники), нашел среди этого html и методом тыка же научился какие-то странички ваять. Потом попалась книжка «программирование это просто», скопил 80 рублей и купил в Ховрино диск с вижуал бейсиком. Информации в книге катастрофически нехватало, поэтому опять же метод тыка + изучение каких-то примеров идущих вместе со студией. Не знал как выбрать подходящую книгу, поэтому купил несколько книг, смысл которых только сейчас понимаю (но уже неактуально).
В итоге около трёх тысячь часов упорства и энтузиазма ушли почти вникуда (тоже всякие калькуляторы, игрушки и вершина тогдашнего мастерства — удалённое управление с подобием ssh через мейл-ру агент). Потом ещё и убедили, что программистом мне не быть ибо домашки по алгебре не делаю. Но оказалось программирование преподают не только программистам, и тут-то обнаружился «скрытый талант» (на самом деле некоторые приобретённые и «забытые» навыки) и понеслась. Однако до сих пор нехватает образования, ибо дальнейшее образование было практически тем же методом ковыряния, проб и ошибок. С набиванием одних и тех же шишек снова и снова. В итоге сам приходил к каким-то правильным вещам, которые, как оказалось, уже давным давно описаны и вообще совершенно стандартный подход.
А дали бы мне тогда пару хороших книжек, а потом ещё пару (не говорю уже о программировании в школе и т.п.) и нынешний «уровень» был бы у меня уже к первому-второму курсам, а не к 26 годам.
UFO just landed and posted this here
Не отрицаю, некоторые плюсы от всего этого имеются. Например, многие вещи радикально глубже понимаешь, когда не прочёл их в книжке и принял «вроде умные дяди написали, видимо так и надо», а дошел сам вынужденно, после чего прочёл в той-же книжке (или в чужом коде), всем нутром понимая каждое слово. Это касается как каких-то общих концепций или паттернов проектирования, так и более «конкретных» вещей. К примеру, я не прикасался к ассемблеру пока в порыве велосипедизма не сочинил свою архитектуру микропроцессора (можно сказать эзотерическую) с его эмулятором, после чего любой нормальный ассемблер более чем легко воспринимается и кажется совершенно естественным и даже прекрасным. Тоже стало и с управлением памятью: после того, как под тот-же велосипед захотелось как-то удобнее кодить пришлось соорудить некий язык, который был бы и достаточно удобен и гибок и не слишком сложен в компиляции под мой «процессор». Чуть позже оказалось, что получился очень близкий аналог C, что подтолкнуло к изучению последнего, оказавшегося в моих глазах прекрасным (ибо то, что раньше счёл бы за «странные сложности на пустом месте» на самом деле гениальное сочетание гибкости, удобства и производительности). Что-то подобное происходило и с кодстайлом, архитектурой, ООП, проектированием, и вообще подходом к разработке.
Но. Это всё можно сильно оптимизировать во времени, если строить учёбу по циклу: проблема => решение => проблема. То есть преподаватель показывает проблему. Студент придумывает для неё решение, или несколько. Далее сам находит возможные проблемы, порождаемые собственным решением (а которые не нашел подсказывает преподаватель), придумывает решения этих проблем или решение, лишенное их. Плюс периодически преподаватель дополняет задачу (это может быть и реальный проект), порождая новые проблемы и новые решения. И так пока грабли не начнут за версту чувствоваться. Как мне кажется, должно сработать (и как со всеми моими «изобретениями» оно наверняка давно существует и успешно применяется).
UFO just landed and posted this here
Сначала нечаянно ответил на вопрос «когда я пошел на кружок программирования», а потом вспомнил про МК-61 и игру «Аэросани» на нём. Хотя сейчас уже очень сложно вспомнить, что я там пробовал писать самостоятельно.
В 9 лет написать статью, которая простым языком объяснит любому человеку необходимость в информатике в начальной школе. Обалдеть!

Тебе с текстом никто не помогал, т.к. тут правильные знаки препинания, правильно построение предложения?
Словарный запас для 9-летнего фантастический. И стиль уже сложившийся. Плюс ко всему, автор знает английский достаточно для выбора интересного ника.
С мыслями и текстом не помогали. Я много об этом думал и вот наконец решил написать. Но ошибки, конечно, мне проверили… Но, наверно, вы простите мне эту малость.
Пишите еще! Очень интересно смотреть на все это с вашей стороны
Да вы просто забыли себя в детстве:) В 9 лет мозг лучше соображает чем даже в 29 или тем более 39.
У меня в 9 лет компьютера не было, но это не мешало быть гиком — например изучать настольные игры и придумывать новые (а все это достаточно большие объемы текста и иллюстраций).
Нууу, это какое-то совсем необоснованное утверждение. Я вспоминаю, каким был придурком в 39. Не говоря о 29. 19? Ой, не напоминайте! ;)
Хотя, в 9-да. Даже раньше. Читать научился в 3, и в первом классе читал из под парты «науку и жизнь» пока у остальных ма-ма-мы-ла-ра-му ;)
Просто в 9лет, тебе не нужны были деньги, поэтому и фантазий было больше и креатива, а с возрастом это становилось дороже и дороже )
Я — сын. А папа, к сожалению, совсем не разбирается в компьютерах…
Поразительно. И орфография, и пунктуация, и словоупотребление, и целостность изложения — всё на высоте. Я бы согласился, что 9 — это год обучения в школе (хотя это тоже очень круто!), а не возраст. Это я как папа 10-летнего мальчишки говорю.
Я как-бы вообще 7 класс закончил (читать комментарий в начале)
Вы промахнулись комментом :) Но раз уж мы тут уже беседуем… Мне было бы любопытно глянуть на ваш гитхаб. Покажете?
Да вы молодцы! 14 лет и уже понимаете необходимость написания тестов. Эх, а ведь даже многие взрослые разработчики не пишут их.

То был мой первый тест за всё время. И они пока ещё не работают. К первому релизу запилю.

Скажу честно, верю с трудом. ;)
Сам являюсь преподавателем и имею дело с разными возрастами детей, для вашего возраста слишком правильный текст.
Хотя может быть я и не прав. Тогда вы уникум и возможно гений :)
Епифановский Владислав стал призером Всеросса в 6 классе (Тверь 2004год).
На счет того что бы давать программирование с раннего возраста, тут все индивидуально. На личном опыте из 30 человек желают сами максимум 2-3. Программирование это труд и не малый, тут необходимо большое желание и труд.
Жаль что вы живете не в моем городе, с радостью бы с вами позанимался.
А у меня батя этим летом вел курс по основам электроники и программирования для детей. Ограничений в возрасте принципиально не делали. Так вот, он говорит, что самыми активными были ребята из начальной школы (2-3 классы, если не ошибаюсь). Они делали то, что ребята из 6-8 классов даже не понимали. Работали с ардуино и С. Мигали лампочками, пищали пищалкой. Но упор был именно на то, чтобы ребята реально понимали, что они делают. И на уровне кода и на уровне основ электроники. Анализ происходящего, работа над ошибками вида: «включили — не работает… давайте думать, что не так».

Отец говорит, что никакой проблемы с возрастом тут нет. Я тоже считаю, что чем раньше — тем лучше. Мне в школе очень не хватало реальных проблем, а не унылой жвачки с никому не нужными решениями типовых задач.

Про то что цепляет эта тема единиц — совершенно верно. Но зато если цепляет, то всерьез и надолго. Но разве это не предназначение школы — дать растущему человеку максимально широкий кругозор в надежде, что какая-то из тем его заинтересует? Ах да, у нас сейчас в школьных программах совсем другие приоритеты…

P.S.: Я уже не раз просил отца написать о своем опыте на хабре, он все отнекивается. Наверное надо еще раз попробовать :)
У развитых детей есть одна серьезная опасность. Через нее проходят очень многие.

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

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

Желаю вам этой ошибки избежать, и если появляются неприятные, сложные и непонятные предметы — тщательно проанализировать что происходит. Может где-то пропустили базовое определение чего-то. Может преподаватель не понравился и инстинктивно начал избегать эту тему. И тогда развитие не остановится из-за какой-нить глупой ошибки ;)

Очень ценное напутствие!
У меня в школе учительница по информатике оказалась абсолютно худшим в жизни учителем. Вот просто без альтернатив. Настолько умело прививать отвращение к предмету — это тоже своего рода "искусство".
Брат (@yorko, он старше на год, учился в той же школе) оклемался на первых курсах физтеха. В итоге стал программистом, фокусируется на машинном обучении.
Я до 23 лет жил со стойким убеждением, что "прогание — не мое". Когда брат показывал примеры полезных скриптовых решений моих учебных задач, поначалу все равно продирался к сути происходящего через некоторое отвращение.
Не могу сказать, что я стал программистом. (Хотя и понятие слишком расплывчатое, наверное, так со многими радикально новыми явлениями было.) Но связка R-RStudio заменила мне весь привычный ранее рабочий процесс. И это великолепно!

Это личный опыт? Мой, как читающего с 3 лет, сильно другой. Никуда так и не скатился. Хотя и отличником не был — мне было скучно делать домашку, я ж ещё на уроке всё запомнил ;). В университете, разве что, на последнем курсе, когда нужна была повышенная стипендия пробовал на пятёрки всё сдавать. Легко, несмотря на многие годы балдапинания.
Ну, и из одноклассников не наблюдал вашей мрачной картины. Те, кто в первом были «развитые» либо волокли уже на отличника, либо, кому как мне было неинтересно, были звёздами в «своих» предметах, а остальные сдавали «на отвалите» походя. А вот закоренелые троечники иногда «выстреливали». Впрочем, нечасто. Учителя тогда почти всегда, как ставили на человеке штамп, так придерживались его до конца. Выстреливали они в вузах.
Вот честно, не знаю ни одного троечника, который бы «выстрелил» в ВУЗе. А вот в обратную сторону, т.е. отличников и т.н. «медалистов», которые тупили и скатывались на тройки (не потому, что скучали, а потому, что не могли) даже на первых курсах — полно.
Ну я, в школе имел кучу троек (четвёрок и пятёрок было меньше), а ВУЗ закончил с красным дипломом.
> Вот честно, не знаю ни одного троечника, который бы «выстрелил» в ВУЗе

Есть такие, я тому пример. Где-то до 8 класса в школе откровенно гонял балду. Ну неинтересно было в школе учиться, просто до тошноты! Потом пришло осознание, что единственный способ избежать армии — это поступить в институт (90-е годы, в то время учёба в ВУЗе с военной кафедрой гарантировала возможность избежать этой «почётной» обязанности) Вобщем, взялся за ум, пахал реально как папа Карло. В результате, если в аттестате о неполном среднем образовании у меня 2/3 «троек», то при окончании средней школы не хватило всего пары пятёрок до медали. ВУЗ окончил с красным дипломом.
Конечно, дело не только в такой «дубинке», в институте было
несравнимо интереснее, просто абсолютно другая атмосфера.
Ну да, части школьных учителей откровенно наплевать знаешь ли ты что-то или чему ты научишься, и эти суки любят снижать оценки за поведение и ставить двойки за поведение же! По одним и тем же предметам то одни тройки (не выше четвёрки), то одни пятёрки — в зависимости от учительницы учившей предмет!
>А все просто потому, что с первых классов, привыкаешь что ты все и так знаешь…
Не только поэтому. Зачастую в учебном процессе идёт равнение на отстающих, и это работает как тормоз. Плюс, дети (ладно, многие взрослые тоже) не любят тех, кто выделяется — «ботаник» может легко оказаться внизу социальной иерархии.
Тех кто выделяется тем, что у детей ценится — очень любят. Например, самого сильного пацана в классе, которого даже впятером на руках повалить не смогли, и пацаны очень уважали, и девчонки на него гроздями вешались. Также все общим любимцем был лучший футболист в классе, который тоже ото всех выделялся. Просто, у ботаника — навыки, которые в том возрасте никак не ценятся, а с теми навыки что ценятся — у него часто совсем не очень.
Ну как сказать, как ботаник, валящий всех на руках в школе, могу сказать, что за второе, конечно, будут уважать. Но ты останешься в их глазах просто сильным ботаником со всеми вытекающими.
В точку, сформулировали прямо мой печальный опыт. Отличник, олимпиады, после чего полное падение интереса к школе, в итоге почти полный пропуск девятого класса. Очнулся в колледже. Не повторяйте мой опыт…
В дополнении к этому есть ещё синдром отличника.
Когда хочется делать только на пятёрку, потому что привык.
И если не на пятёрку, то уже и не надо, и руки опускаются и т.д.
Всё правильно, надо научиться упорно работать, чтобы не бросать на старте.
Понимаете… дело в том, что программированием заниматься никогда не поздно.
Но есть куча других прикольных вещей, где возраст имеет значение.

Музыка на пример, начать можно когда угодно, но моторика меняется. Спорт, в молодости все и заживает быстро, ну и не так ломается.
У профф спортсменов выход «на пенсию» в 35 лет. В кибер-спорте активный период где-то 5 лет (потом реакция уже не та).

Опять же при занятии музыкой равномерно развиваются обе половины мозга. Я больше чем уверен, что при занятии программированием это не так.

Ну и в общем… прямая дорога в неврологию.
Учитывая, что я мыслю «русским-псевдокодом», более чем понимаю
Не только. У нас вообще мало говорят о болячках сидячих людей. Это у более «физических» профессиях все переломы, растяжения и сотрясения видны сразу и хорошо диагностируются.
А вот если сидя криво за компом вы зажмете себе какой-нибудь нерв или еще что, то вы сначала будете лечиться сами, потом вас сначала будут лечить обезболивающими (ну голова болит), а поставят ли вам правильный диагноз вообще неизвестно.
Совершенно ненужно получать это в раннем возрасте :)
> «Музыка на пример, начать можно когда угодно...»
Уже в который раз замечаю, что многие, на этом ресурсе, абсолютно уверены в том, что правильно играть на музыкальном инструменте можно научится любому человеку. Это, мягко говоря, не так. Имею некоторое отношение к музыке, поэтому немного в этом разбираюсь. По поводу «моторики» согласен. Поймите, дорогие ИТ-шники, музыкальный слух по книжке не выучишь — он либо есть, либо отсутствует. И это, довольно легко, можно определить. Есть ли подобное явление в программировании или, скорее, в алгоритмистике — не знаю.
А еще есть разные степени музыкального слуха, и это встречается гораздо чаще, чем его полное отсутствие. Так вот слабый музыкальный слух отлично тренируется. Так что не все так страшно.
Ну смысл был ближе к вашему тексту, может плохо выразился. Я вот в музыкалку бегал в юности.
Научить-то можно и взрослого, но будете сидеть и по 5 минут думать как одновременно 3 кнопки на инструменте нажать. А ребенок просто нажмет. Про сложность произведений тактично умолчим )
Ну и да… не всех.
Хотя вот петь начинать во взрослом возрасте очень даже норм.
Но на скрипке даже в 18 я бы лично не стал )
Есть.
Кроме моторики рук-ног, есть еще целые области мозга, которые связаны с зрительным, слуховым и вестибулярным и понятийным аппаратом.
Чем старше становишься, тем меньше мозг будет адаптироваться к окружающему — так как он будет использовать уже приобретенный опыт для решения задач.
Поэтому крайне важно дать азы и музыки и логики и моторики (конструкторы, спорт) в самом раннем возрасте, чтобы мозг выделил место на обработку и решение таких задач прямым способом.
Уже в который раз замечаю, что многие, на этом ресурсе, абсолютно уверены в том, что правильно играть на музыкальном инструменте можно научится любому человеку.

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


Имею некоторое отношение к музыке, поэтому немного в этом разбираюсь.

Я тоже имею, "некоторое", ага. Достанем и сравним?


Поймите, дорогие ИТ-шники, музыкальный слух по книжке не выучишь — он либо есть, либо отсутствует. И это, довольно легко, можно определить.

Оу, правда? И как же?

«Ну да, я вот уверен, что любой здоровый человек может научиться правильно играть на музыкальном инструменте.»

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

Это представьте как человек подтягивается 5 раз, и ты его тренируешь чтобы он подтянулся 20 раз.
А другой человек не может даже 5 секунд провисеть на турнике — руки соскальзывают. И все, приплыли. Даже до одного подтягивания нужны нечеловеческие усилия — промотивировать очень сложно.

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

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

Но выяснилось, что у людей часто действительно есть серьезные проблемы с музыкальным слухом.

"Есть проблемы" — не значит "нет музыкального слуха".


Люди не могут запомнить тон ноты, которая только что была проиграна.

Это не значит, что их нельзя этому научить.


Люди с трудом понимают что ты хочешь от них, и быстро теряют интерес к попытке найти или воспроизвести нужную ноту. [...] человек сразу теряет мотивацию.

Вопрос именно в интересе и в мотивации. "Сложно замотивировать" — совсем не то же самое "человек никогда не сможет".

Взрослого человека настолько сложно мотивировать к тому, что у него не выходит вообще, что в 99% случаев это практически тоже самое. И именно это и является основной причиной, почему взрослые редко начинают что-то новое, к чему у них «нет способностей».
Если бы сходу получался бы хоть какой-то видимый результат — было бы проще.

Тем не менее, говорить людям, что у них нет способностей — это лучший способ отобрать у них мотивацию. А именно с этого вы и начали.

Простите, где я сказал что нужно говорить людям, что у них нет способностей?

Что нужно говорить — нигде. Но при этом вы сказали, что играть может научиться не каждый, и слух "либо есть, либо нет". Это эквивалентно "нет способностей — даже не старайся".

Могу возразить по-другому.
Если совсем нет слуха — 99% это означает, что этого человека промотивировать его натренировать будет настолько проблематично, что проще забить и найти тех, кто сам хочет. Естественно я про взрослых.

Если "совсем нет слуха" — научить человека нельзя. Но таких приблизительно 4% (для сравнения, дальтоников среди мужчин — 8%), и этих я как раз к "нормальным здоровым людям" не отношу (извините за шовинизм).


Со всеми остальными — вопрос исключительно желания.

и этих я как раз к "нормальным здоровым людям" не отношу (извините за шовинизм)

Так бы сразу и сказали. Не пришлось бы тогда 4 дня спорить об определении.

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


Другое дело, что я не очень прав в оценке возможностей и этих людей тоже.

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


Ваши оппоненты тоже были согласны — но продолжали спорить, потому что считали этих людей "нормальными".


Это и есть спор об определении — в данном случае, об определении нормальности.

Я подозреваю, что ситуация ровно обратная: большая часть тех людей, которых мои оппоненты считают "нормальными", но не способными заниматься музыкой, в моем понимании "нормальные" и способные заниматься музыкой.


(это подозрение, конечно же, не основано ни на чем, кроме статистики предыдущих разговоров на ту же тему)


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

Если "совсем нет слуха" — научить человека нельзя. Но таких приблизительно 4%

Я, кстати, здесь не прав. Даже люди с наследственным нарушением тонального слуха вполне способы заниматься музыкой.


(так что в каком-то смысле, я сделал ту же ошибку, с которой спорил)

ИМХО для приобретения основных знаний нужно изучать информатику с 3-4 класса. Причем обязательно параллельно с математикой, тк они неразрывно связаны. Без хорошей базы в математике, навряд-ли получится сделать что-нибудь хорошее в информатике.
Почему вы так считаете?
UFO just landed and posted this here
Знание информатики как hardware&software «науки» нужно далеко не всем. Неразумно давать это тем, кто с детства занимался другим. Скажем, искусством. Или лингвистикой.
UFO just landed and posted this here
Крестики-нолики — на С#, про попугая и мячик — на Scratch, а типа Pac-man (на фото посередине) — на Game Maker. Если вопрос про игры, которые на принтскрине
Если захочешь изучить тему геймдева подробнее, взгляни на такие библиотеки как: SFML, SDL, GLUT, Piston (последняя только для языка Rust). Все они кроссплатформенны, что позволит собирать проекты как под Linux, как под Windows, так и под OS X.
Спасибо! Обязательно посмотрю
Так как писали на C#, то, думаю, Вам интересно будет глянуть в сторону игрового движка Unity3d. Чуть чуть поработать с ним, а дальше уже можно и в предложенные выше библиотеки. Все-таки они действительно немного сложны, как минимум из-за того, что в самом OpenGL постоянно используются понятия из линейной алгебры.
Эх, линейна алгебра – это пол беды… =)
UFO just landed and posted this here

Пишу сейчас, кстати, статейку про web-разработку на Go

Кстати. Небольшой совет. Если в следующий раз будешь писать ПО с участием WinAPI/Gtk/Qt/etc, постарайся делать виджеты менее огромным

Всё же, SFML, SDL и GLUT – совсем другой уровень. Не то, чтобы их осилить трудно, но они предполагают некоторые знания самого по себе OGL'а и C/C++, что, всё же, нетривиально. Я бы лучше посоветовал что-то вроде Cinder и/или JUCE, если уж выбирать из чего-то простого в освоении/использовании для C/C++.

Если нужен именно геймдев, а не фокусы, ориентированные на производительность, я бы посоветовал смотреть в сторону Unity, Love (есть такой микро-движок с написанием кода на Lua). Проблема С++-ориентированных вещей в сложности самого языка и нескольких наследственных его проблем. Piston, как ни прискорбно, пока скорее "движок" чем "конструктор" игр.

UFO just landed and posted this here
UFO just landed and posted this here
Хорошего кодера без способностей тоже не получится.
А способности определяются как раз временем начала обучения. Основное, что нужно программеру — это умение работать с многоуровневыми абстракциями. Есть хороший тест — где находится прошлый ноябрь. И по его результатам выясняет, что программисты создавали себе многоуровневую визуальную модель времени рано, лет в 7.

Вот, гляньте — https://vk.com/album-8739654_90738371, 1-2 места по России. А это довольно обычные, микрорайонные дети Не лучшие по Питеру, а набранные с ближайших кварталов. Создательница этой системы задумала её лет в 11, в 17 начала преподавать, в 18 — создала «Фрактал».

Это математика, но и в программирование создание такой системы возможно.
UFO just landed and posted this here
Ну скажем так. Предрасположение очень полезно, чтобы пробиться без адекватных технологий обучения. А при хорошей технологии обучения — и со средними способностями можно достичь высот.

В том же фрактале — пока один призер мира за 10 лет работы. Но это не отбор талантливых ребят. Он вообще из 11детной семьи. Думаю, что можно получить и 1 призер мира в год. Из самых обычных ребят из соседних кварталов.

Когда-то в 25 лет с трудом осваивали компы. А сейчас… http://bash.im/quote/407103

«zhsky: Коллега Ч. рассказала, что её дочка, которой 2 года и 4 месяца, встаёт очень рано. Она пробирается к компьютеру, включает его, потом запускает браузер. В командной строке она набирает буковку „p“, и запускает игру Poisson Rouge, в которую играет, пока не проснутся родители.
— А тут, — говорит Ч., — мы пошли на родительское собрание в ясли, и нам строго сказали: „Дорогие родители! Вы должны постепенно приучать детей к горшку!“»

я прочел это и проверил. да, правда, в 2.5 года вполне играют на Poisson Rouge. Вот только это прежде всего заслуга программистов и детских психологов Poisson Rouge, а не талант ребенка.
UFO just landed and posted this here
Вы взгляните на результаты и посчитайте вероятности, что столько талантливых ребят оказалось из ближайших кварталов.

А отбора во Фрактале нет. Приходят желающие. Кому интересно — тот остается, как и в любом другом кружке.

Фишка не в отборе, а в сдвиге сроков обучения. Шестиклассник с опытом решения задач в течение 2-5 лет — выигрывает у шестиклассника, только начавшего изучать олимпиадные задачи.

А вот как началке преподавать олимпиадную математику — это вот и есть методика, придуманная Анастасией Павловной Погодой.

Не надо обобщать. Я вот программист — и у меня нет визуальной модели времени. Разве что для дней недели — но там воскресенье невизуализировано, и мне это не мешает.

Обобщение тут одностороннее. Развитая модель времени показывает, что человек умеет работать с многоуровневыми абстракциями и считает их удобными для себя. Для декомпозиции задачи на подсистемы и объекты это умение нужно.

А «программист» — это несколько десятков профессий. И не всем из них нужно уметь работать с многоуровневыми абстракциями. Самый незаменимый человек в нашей фирме — это технический писатель по ГОСТу. Да, она тоже программы писать может. И диплом программиста. Но по сути работы — ближе к журналисту.

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

Если не нравится такое деление — ну считайте, что многоуровневые абстракции нужнее всего проектировщику структуры программы.

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

Человек умеет использовать абстракции и не пользуется этим для упрощения реальной жизни? НЕ ПОВЕРЮ. Поверю, что строить умеет, а использовать нет. Или что модели есть, но не визуальные, а слуховые.

Выбирая КОГО? Специалиста есть смысл выбирать на основании кода. А вот СТУДЕНТА — ну явно лучше выбирать по использованию моделей, чем по отметкам.

«Пришли две выпускницы из института — ну ничего не умею. Спрашиваем:
— Чему же вас учили в институте?
— Нас учили сдавать экзамены. Нас учили отлично — мы сдавали экзамены на одни пятерки.»
(с) профессор И.М.Фейгенберг

Зачем в реальной жизни нужна модель времени?

1) Планирование. Раскидали дела по ячейкам — сразу видно, где пусто, а где густо. Примерно как в школьном дневнике.
2) Оценка интервалов и их пересечений. Был ли жив Ломоносов, когда родился Пушкин?
3) Воспоминания. А когда же это я с женой познакомился? Какой это год был?
4) Запоминание. А когда днюха у сотрудника? А, правый верхний угол круга.

Ну в общем читайте https://ru.wikipedia.org/wiki/Мнемоника
«Мнемо́ника (др.-греч. μνημονικόν — искусство запоминания), мнемоте́хника — совокупность специальных приёмов и способов, облегчающих запоминание нужной информации и увеличивающих объём памяти путём образования ассоциаций (связей). Замена абстрактных объектов и фактов на понятия и представления, имеющие визуальное, аудиальное или кинестетическое представление, связывание объектов с уже имеющейся информацией в памяти различных типов для упрощения запоминания.»

Может это означает, что я не столько дискрет, сколько визуал. Но скорее — что в 7 лет, когда модели создавались, я был намного менее дискретом, чем сейчас.

Так зачем визуальная модель времени-то для этих задач?

UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
Один плохой программист за год создаёт два рабочих места.
Вообще, поддерживаю. Давать «попробовать» можно и даже нужно, но вот навязывать обучения по меньшей мере глупо. Программирование, по своей сути, та же техническая наука, как и какая-нибудь теплоэнергетика (прикладная) или термодинамика. Тот, кому интересно, научиться и найдет всё Остальные же, я уверен, найду себе более близкие им сферы. В ином случае, мы получим множество плохих специалистов и падение зарплат хороших.
От того, что в школе преподают цикл Карно (уже многие годы), у нас нет избытка инженеров по термодинамике.

любая конкуренция устрашает лузеров

UFO just landed and posted this here
Что за школа? Это точно Россия?
UFO just landed and posted this here
UFO just landed and posted this here

Не зря про их школьное образование уже мифы слагают

UFO just landed and posted this here
У нас в конторе (в Эспоо) инициативные сотрудники проводят вечера «coding for kids». Возможно и вы у себя сможете организовать подобное.
UFO just landed and posted this here
Красавец, так держать! Мне уже 18 и я хоть и знаю c# и малость c++, как-то ущёрбно себя чувствовать стал после твоей статьи). По факту — да, нужно вводить в обучение. В 11 классе наша информатичка учила нас в c++ заполнять массивы с первого(не нулевого) элемента, и заранее зная количество элементов, всё равно выделять массив под 3000(треш кароче, про динамические она походу вообще не слышала). Обязательно от такого надо избавляться!
Тоже почувствовал себя дебилом, хотя первые 5 строк кода на Basic были написаны как раз в 9. Но C# в 9 лет… Он по-моему гений.
UFO just landed and posted this here

Возраст тоже важен — к примеру, я только в 9м классе перестал видеть в строке for i := 1 to N do 2 переменные, 1 константу, 1 оператор и 3 ключевых слова — и стал видеть 1 объект, заголовок цикла. И это при том, что я к тому времени уже 2 года как ездил на соревнования...

UFO just landed and posted this here

Схемы — это еще хуже! Там цикл состоит из блоки инициализации, блока перехода и блока проверки условия — причем все нормы оформления направлены на то, чтобы растащить их как можно дальше друг от друга.


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

UFO just landed and posted this here

Хорошие сны сняться. Если не сидеть за отладкой 12 часов :)

UFO just landed and posted this here
UFO just landed and posted this here

Завидую вам. Я видел такое обозначение в справочнике — но не в книгах. А в универе так вообще его использование запрещалось...


Хорошее, кстати, обозначение. Им не только for — но и foreach передать можно.

Мне больше такое обозначение Цикла нравится (вставьте, пожалуйста, кто-нибудь картинки)
https://inf.1september.ru/2006/03/38-3.gif и https://inf.1september.ru/2006/03/38-6.gif

А вот это Case https://inf.1september.ru/2006/03/38-1.gif

PS кстати, GoTo в такой записи алгоритмов не предусмотрен в принципе. *cool face*
Вот с подобных графических схем и начинаю объяснять что такое циклы.
И вроде даже понимают ;)
UFO just landed and posted this here
Большинство моих сверстников, можно сказать, родились с мобильниками и планшетами в руках. Я видел, как едва научившиеся сидеть малыши водят пальчиками по картинкам в книжках и не понимают, почему они не двигаются. Наше поколение с первого дня попадает в мир высоких технологий, но почему-то информатика появляется только в пятом классе. Мы очень много теряем. Теряем время, когда можно и нужно знакомиться с компьютером и его возможностями. Пятый класс − это уже слишком поздно

А если честно, кто из родителей писал статью? Или это перевод?
Это результат работы нейросети, которой совсем недавно исполнилось 9 лет :)
Сильно не думаю, но если это правда, то я только за
С нейросетью классное предположение;)

Чтобы снять недоверие, разместите профиль ВКонтакте, например :)

Беглый поиск дает https://vk.com/handicraftsman. При таком нике — очень многое можно нарыть за пару минут.
Тьфу, это ник не того парня
А разве ВК позволяет регистрироваться до 13 лет?
А что мешает написать, что ребенку14? В Питере в ВК детсадовцев — процентов 10-20 от группы, первоклассников — процентов 30-40, в третьем классе — уже почти все, домашку по ВК спрашивают. Данные немного устарели — моей младшей сейчас 13.

Намного проще в 3-4 года создать ребенку собственную страницу, чем пускать его играть со своей.

Того, того. Только древний. Были проблемы с паролем в firefox, и я, запутавшись, подумал, что взлом был. И успел склепать новый. Так что старый больше не используется.
P. S. Когда я регистрировал тот аккаунт, мне было до 13 (вроде), но тогда это не запрещалось.

Не того — в смысле твой, а не 9летнего Игоря.
Игорь, для проверки -расскажите, где находится прошлый ноябрь? Если не очень понятно — то какая у вас визуальная модель времени? Интересует, какое количество уровней абстракций в модели и сами абстракции.

А так… Меня не удивляет. В 8 лет я утащил свои одноклассников на коллективную радиостанцию. Читали Борисова и Айсверга, учились делать схемы… Что-то получалось, что-то нет. А в 15 лет высянилось, что одноклассник — двоечник и второгодник — делает цветомузыку на продажу. Мелкой серией. И зарабатывает на этом. Мы с трудом отлаживали свои схемы — а у него уже пару лет производство

Не гонитесь за кружками, намного удобнее учиться по книгам. Ещё лучше — найти себе наставника. Программирование — это ремесло, а не наука. Школы и институты — придуманы учеными ради обучения ученых, а для ремесленных профессий — намного лучше обучение по цеховой системе, то есть побыть в подмастерьях у мастера.

Если вы в Питере — из кружков рекомендую математический кружок фрактал https://vk.com/club_fractal Насти Погоды. Заочная школа у неё тоже есть. Точнее, фрактал — это франчайзинг, там не одна площадка. Ещё есть центр одаренных детей при ФТШ http://www.school.ioffe.ru/center/ Там есть информатика и могут взять, несмотря на возраст.

Вообще вы не первый. В программировании системы РАПИРА принимал участие 8летний парень. Если видели такую книжку http://mexalib.com/view/23836 Звенигородский Г.А. «Первые уроки программирования», то имейте ввиду, что в написании работающей системы участвовал и ваш ровесник.

А если вообще — то я 11летнего 8классника видел. Как раз в ФТШ. Кстати, это единственная школа в системе Академии Наук, она даже минобразованию напрямую не подчиняется.
Расскажите про прошлый ноябрь. Или ссылку дайте где почитать и про интерпретацию.
Не находится что-то. Кто-то из метров программирования писал, что способности к программированию определяются ответом на этот вопрос Скорее всего я это читал в книжке ещё до появления интернета. Интерпретация простая — смотрим количество слове в модели времени — их бывает до 20. Слой — это отдельная модель месяца, недели, суток… Ну и интересно разнообразие слоев. Ну скажем у меня модель секунды, миллисекунды и микросекунды — одинакова. Ещё интересен возраст формирования модели.

Программисты — дискреты. См. http://klub-drug.ru/shkolniki/vizual-audial-kinestetik-diskret-chto-eto.html или http://pikabu.ru/story/vizual_audial_kinestetik_diskret_952936

Поэтому у программистов абстрактные модели времени появляются рано и являются довольно подробными.

Ещё можете почитать комментарии к моему собственному посту — https://vk.com/note723786_7769402 Там видны отличия в моделях у программеров и других людей.
Хм, у меня прошлый ноябрь — сине-голубой переход (как в спектре) на непрерывной линейной («спектральной») шкале. В лучшем случае, той же шкале, нарезанной на годовые «спектры». А секунды и миллисекунды — ну, при увеличении «спектры» становятся «линейчатыми». Программирую лет с 13-14, научившись по технике-молодёжи с программируемого калькулятора. Наверное, я неправильный программист :). Или вовсе не программист (ой).
Века, месяцы, недели, сутки, часы — все на одной модели? А возраст появления модели?

Ну все психологические тесты — это 20-80. В смысле, что есть 20% людей, к которым они не подходят.
Века — как-то так же, да. Та же линейка, но чёрно-белая.
Возраст появления — ну, вот прочёл ваш вопрос про ноябрь и задумался как же я время представляю. До этого небыло потребности :).
Хотя, нет, связь с линейкой появилась в 2000-ом году, когда шли баталии когда начался 21-й век — в 2000 или в 2001.
А с программерской точки зрения наиболее логичной является концепция unixtime. Мыслить о времени на уровне 20-и уровневой иерархии — очень плохая программистская идея. На мой взгляд. Достаточно попытаться пару раз реализовать календарики на том же JS, чтобы убедиться в этом :).
И как вы в школе время планировали? Визуальная модель не обязательна, но какая-то модель недели у вас была? Как правило, дискреты получаются из визуалов, потому и модели визуальные.

По мне так писать на JS — плохая идея. :-) Чуть лучше бейсика, за обучение которому Дейкстра в свое время предлагал карать, как за растление малолетних, :-) А умение работать с многоуровневыми моделями — основа программирования. Программы больше 20 тысяч строк без этого умения не отладить.

unixtime хорош до тех пор, пока вы не столкнулись с високосной секундой — https://ru.wikipedia.org/wiki/Секунда_координации Дальше начинаются танцы с бубном. Да и микросекунд в unixtime нету. Чуть лучше время в delphi — дни — это целая часть, остальное — дробная. Можно и с наносекундами работать. Но проблему с високосными секундами оно не решает.
В школе… Ну, по числам. И до сих пор так. Не по цифрам цифровых часов, а просто — к двум часам. И не по стрелкам, хотя я приверженец стрелок. То есть, получается, именно абсолютная отметка на шкале времени. Вообще, я, вроде бы, больше визуал (раз линейка у меня цветная в спектре :), но визуального представления времени почему-то небыло.

JS — это так, самый очевидный пример, когда надо время на сущности разбирать, а потом назад собирать. Но вообще, зря вы так про js, его просто используют очень часто в стиле бейсика, а так-то он вполне нормален, хотя у меня он тоже не вызывает восторгов :). Сейчас там вообще реактивность всякая и прочие вкусности.

Микросекунды… Ну, какая это проблема? Необходимость измерять время в микросекундах с начала unix epoch — это очень редкая необходимость. Или там, переводить микросекунды в дни недели :). А так — просто микросекунды, как самостоятельная сущность. Тот же unix time, только мелкий и epoch у него не абсолютная, а где надо там и выбирается.
А високосная секунда — если уж дельфийский вариант проблему с ней не решает, то что вообще её может решить?
Добро пожаловать в мир GPS. Микросекунды, пикосекунды, високосные секунды… :-)

А проблему с високосными секундами решается просто — год, номер дня в году, время в секундах от начала суток. Ну и понимать, что в сутках может быть не только 86400 секунд, но и 85399 и 86401. И не пугаться времени 24 часа 00 минут 00 секунд — это високосная секунда и есть.
Так с дельфийским тем же вариантом — в чём разница? Почти так же неудобно.
Дельфи vs unixtime? То есть 15 разрядов против 9?
1) У unixtime диапазон значений 1970-2030 год. И впереди — проблема 2030 года. У дельфи — неограниченно.
2) Интервалы до 30 лет хранятся с микросекундной точностью. То есть одно и то же время — и для коротких отсчетов (время цикла померить) и для даты.
3) Нецелая длина года и суток (в астрономических расчетах) тоже не представляет проблемы Вместо високосных секунд и лет можно использовать дробные значения суток и года.
У Linux, Solaris, Android и так далее — у всех у них проблема с UNIXTime?
У всех, кто POSIX и 32битный. См. https://ru.wikipedia.org/wiki/Проблема_2038_года
В этот момент UnixTime станет отрицательным.

А вот что написано в POSIX http://pubs.opengroup.org/onlinepubs/9699919799/functions/time.html
«Upon successful completion, time() shall return the value of time. Otherwise, (time_t)-1 shall be returned.»

При этом большинство проверяет результат time() не на "== (time_t)-1", а на "< 0".
А не пробовали представлять таблицей вместо линейки?
Календарь в Windows 7 и выше довольно любопытен в этом плане.

P. S. У меня прошлый ноябрь расположен под следующим.
Ну, я в самом начале упоминал и ленейку порезанную по годам :)
Так линейки можно выкладывать в одну бесконечную, а можно в таблицу или даже в трёхмерную структуру.
Прочитал про это разделение, вроде как дискрет получаюсь.
При этом о какой модели времени речь — не понимаю. Никакой модели в голове нет, на вопрос о прошлом ноябре просто подумалось «ноябрь прошлого года». Никаких визуализаций\картинок\слоёв абстракции не придумывал и, даже если специально пытаюсь придумать, не нахожу. Есть просто понимание времени, которое разделено на части, каждая из которых может также быть разделена на части. Но это не стрела, не шкала и не стопка листов. Просто бесформенная сущность.
PS: при программировании с абстракциями никаких сложностей не возникает, но, опять таки, никак они не визуализируются искуственно. Как пишется, так и думается.
То есть вы не дискрет, получившийся из визуала. Интересно, а кто? Аудиал или кинестик? Ребенок до школы дискретом быть не может, у него ещё не развито абстрактное мышление. Поэтому ведущий тип памяти в детстве был другой.

Очень интересно, как вы планируете время. Для меня план на неделю — это школьный дневник с воскресеньем под субботой. И в эти графы я мысленно раскидываю дела. И аналогично с планированием дня — круглая 24часовая шкала по которой распихиваются времена начала дел.

Но я — бывший визуал, разумеется.
А я не особо планирую своё время. Ставлю будильник или напоминалку (на телефоне или комп-е) и к нужному времени, чаще всего, просто помню, что и когда нужно сделать. Если напоминалку не поставить, скорее всего забуду. Хоть крестик на руке нарисовать — уже скорее всего не забуду.

Пытался пару раз как-то визуализировать для запоминания (говорят, что так проще), вплоть до «виртуального рабочего стола» или «чертогов разума», но всегда казалось, что это только добавляет сложности при запоминании. Память у меня ассоциативная, при чём на самые разные ассоциации. Как следствие, неплохая эрудиция и роль справочника по многим вопросам.

В школьные годы неделя, пожалуй, представлялась как дневник, но это потому, что и жизнь шла «по дневнику».
Школьный дневник — О! Я по нему не планирую, но вспоминаю, когда надо посчитать какой день недели придётся на определённое число (или наоборот). Только для этого.
А как кинестетик время представляет? Шесть вертикальных резов, перечёркнутых седьмым? :)
А аудиал?
ЗЫ В армии у нас за 100 дней до приказа отдельные личности находили метровую железную ленту из рулетки и каждый день отламывали по сантиметру :). Это визуалы или кинестетики?
ЗЗЫ мне кажется, как большинство психологических классификаций, эта (тоже) надуманная. Впрочем, кроме как по себе, судить мне об этом сложно, а себя я в ней не нашёл однозначным образом.
Та же фигня со школьным дневником и определением, на какой день недели будет определённая дата. Если она очень далеко — приходится прибегать к оперированию просто числами и вспоминать по костяшкам кулаков, сколько дней в каждом месяце (кстати, тоже одно из представлений времени).
> Это визуалы или кинестетики
Кинестики

> мне кажется, как большинство психологических классификаций, эта (тоже) надуманная
30 лет назад у нас был матклуб и матлагерь для ПТУшников. Для ребят, выкинутых школой за плохую успеваемость в ПТУ. Изначально в институт хотели 1-2 человека. В итоге закончили — больше половины основного состава. Кстати, пяток программистов из тех ребят вышел.

Так вот, там были практически одни кинестетики. И учили мы их особым образом — как кинестетиков. Собственно та программа, что на них обкатывалась — это ныне «Учимся по Башмакову» http://bashmakov.su/ Марк Иваныч Башмаков с тех пор стал академиком АПН, а тогда — был просто заведующим кафедрой. Наш начальник лагеря — сейчас лавный редактор журналов «Компьютерные инструменты в образовании» и «Компьютерные инструменты в школе» — https://sites.google.com/a/vm2-leti.spb.ru/pozdnkov/ и http://ipo.spb.ru/journal/index.php?pages/editor-council/, а тогда он был просто учителем математики в ПТУ.

Пара примеров, как учат кинестетиков.
1) Есть плот, по каналу какой ширины он пройдет поворот? А как влияет форма? А если плот круглый, а не прямоугольный? И тут привлекается чуть ли не половина школьного курса. Но всегда — можно вырезать из бумаги, пощупать и проверить.

2) Есть пушка, она стреляет под заданным углом. На некотором расстоянии от пушки стоит дом.Калькулятор (программируемый) вводит угол и выдает расстояние, на котором упал снаряд. Рассчитать — расстояние до дома, ширину дома, Максимальную высоту полета, высоту дома… И опять — все можно пощупать. Нарисовать дом, траекторию, посмотреть, почему именно так…

Кинестетики не хуже визуалов, но им действительно нужно отламывать сантиметры у линейки.
О как. Полагаю у многих такая визуализация значит?
Что за форсинг какой-то очередной астросоционики с квадратно-гнездовым разбиением человеков на абстрактные группы? Где верифицируемые методы определения «ведущего типа памяти»?
Где находится прошлый ноябрь?
В семи квадриллионах километров по оси t пространственно-временного континуума.
Эээ, а что если для меня прошлый ноябрь, это просто прошлый ноябрь, и я не ощущаю никакой особой модели времени и в целом ужастно ориентируюсь в датах/днях недели?
Собственно, на вопрос "где находится прошлый ноябрь", я сначала решил, что в календаре, но подумав, что такой вариант, вероятно, не устроил бы составителей теста, решил, что прошлый ноябрь находится в прошлом году за 8 месяцев от нас.
В календаре — этот вполне ответ, но КАКОЙ календарь вы при этом представили? А так — да, визуальные модели времени чаще всего основываются на календарях, дневниках, часах…
Представил перекидной, где каждая страница — это месяц, и еще такая штучка-квадратик по числам перемещается. Просто потому, что у меня такой на работе висит.

Но почему-то мне кажется, что мою квалификацию, как программиста, это ну вообще никак не характеризует.
Про квалификацию — я ответил в https://habrahabr.ru/post/308554/?reply_to=9775452#comment_9775700
Никогда не испытывал потребности в создании собственной визуальной модели времени. Время — это абстракция, наборы чисел с отношениями больше/меньше, не требующих никакой визуализации для фиксации.
Визуализация нужна только для передачи данных через внешнюю среду (пусть даже и себе). В этом случае использую готовые чужие визуальные модели, какие подвернутся под руку.
При этом работаю программистом.

Тест на дискрета — забавная штука.
А если у меня впечатления воспринимаются в произвольном порядкев зависимости от настроения, притом равномерно распределены? А иногда и звуки, и картинка, и ощущения, и абстрактные мысли о ситуации возникают практически одновременно, что невозможно даже определить, что было первым.
Гм, а модели чисел у вас тоже нету?!

А ещё смешнее с эйдетиками. У них у звуков бывает цвет, у цветов — запах и так далее. А одинаковая развитость разных типов памяти — вполне возможна.

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

Притом, что интересно, я, как мне кажется, все-таки выраженный визуал. На порядки легче запоминаю информацию через зрение. И без визуальных моделей обхожусь крайне редко. Это только со временем и числами оно как-то само собой так сложилось.
Гм, а как во втором классе вы поступали, когда таблицу умножения не помнили? я — через визуальную модель считал.
Не могу вспомнить, чтобы я ее не помнил.
Если попробовать воспроизвести то как я воспринимаю таблицу умножения с самого начала, то вроде как воспринял визуально, через картинку на обложке тетрадки (квадрат с числами, та самая «чужая модель для передачи на внешнем носителе»), оно как-то сразу в голове устаканилось и с тех пор вообще не требует обращения к визуальному образу. Сразу из памяти извлекается произведение по паре чисел, а потом оттуда же вытаскивается визуальный или звуковой образ в зависимости от того, надо результат записать или произнести. Если записать, потом «рука вспоминает» по визуальному образу, как это сделать.
У меня нету визуальной модели чисел. Я их себе никак не представляю, кроме арабского написания.

P.S. Только что просто ради эксперимента перемножал в уме два двузначных числа. Представлял в уме арабское написание промежуточного результата в десятичной системе счисления, чтобы не забыть.
Не единственная, есть еще СУНЦ в Москве и интернат в Новосибирске, да и в Питере (точнее в Петергофе) Академический лицей (тоже интернат).
45ый интернат нынче — часть СПбГУ и относится к минообразования. см, например — http://agym.spbu.ru/gimnaziya/sovet-roditelej.html
Ещё в меню «гимназия» можно по пункту «Документы перейти».
СУНЦ МГУ — это факультет МГУ, опять минобразования. СУНЦ НГУ — аналогично,

А вот что такое ФТШ — «Официальное наименование: федеральное государственное бюджетное учреждение высшего образования и науки «Санкт-Петербургский национальный исследовательский Академический университет Российской академии наук», Академический лицей «Физико-техническая школа».

Отличие в том, что СУНЦы и 45ка создавались при университетах, а университеты — это министерство образования и науки. а ФТШ изначально был создана при академическом институте и всегда входила в систему Академии наук.

Если интересно, то тут написано почему оно было сделано именно так http://www.school.ioffe.ru/school/history/creation.html
Спасибо!
Не знал такой тонкости :)
UFO just landed and posted this here
Не достаточно, в этом и проблема. Давайте дождемся ответа автора, которому, по его заявлениям, 9 лет )
Есть такое мнение, что человек пишет примерно так же, как говорит. Тут речь даже не о грамотности, а о последовательности и целостности изложения, о внимании к деталям, об отсылках к другим источникам.

Статья написана очень хорошо. Я бы сказал, слишком хорошо. Может быть, мы имеем дело с гением. Но в то же время статья может оказаться розыгрышем. Слишком непохоже на 9-летних с их бедным словарным запасом, незнанием устойчивых выражений, небогатым жизненным опытом.
Может быть, мы имеем дело с гением

А есть ссылочки на статьи признанных гениев? Мне думается, что Эйнштейн, Мендилеев и Ньютон в 9 лет так не писали.
UFO just landed and posted this here
Моцарт уже писал. Правда, не текст, а партитуры. Но вы же понимаете, что подтверждающие примеры не заменяют доказательство. Опровергающие примеры, впрочем, тоже.

UFO just landed and posted this here
Да, задают. Много. И не все интересно. Все лето всей семьей читали. Сейчас Мифы Древней Греции
Дают и не мало.
Вся беда что многие читают«из под палки» и в лучшем случае что будет по программе.
Вот сколько угодно ругайте вконтакте и т.п., но нынешнее поколение изначально привыкает к письменной речи. И если так складывается, что в конкретной среде не приветствуется безграмотный язык и обрывочные фразы, то хочешь-не хочешь, а научишься.
Да чёрт побери, я, наверно, за месяц на форумах строчу больше текста, чем за всю свою жизнь написал в школе.
Боюсь, что на форумах писать так, как написана эта статья, не научат.

Дают, дают. Причем в таких количествах — что один взгляд на этот список отбивает желание даже пытаться прочитать это все.

Никогда не читал литературу из списка на лето, много потерял? Если честно не ощущаю этого.
Нет, для перевода я еще недостаточно знаю английский, хотя изучаю, конечно. А помощь родителей в том, что мы много говорили на эту тему, мне это помогло. Ошибки мне тоже проверяют)

Так держать!
Сам начал программировать лет в 13-14. Хотел тут понаписывать всяких "умных" советов, но оставлю, пожалуй, только один. Почаще задавай себе вопрос "как это устроено?".

Тем более, что именно так появился Open-Source
Опенсорс был изначально. Это потом пришли тёмные годы микрософта ;).
Текст удивляет даже больше, чем программы. Очень круто!

Есть такая летняя компьютерная школа. Всех детей они делят на группы по уровню развития. Основной упор делается на алгоритмы и решение математически-алгоритмических задач. Преподаватели там из МГУ, МФТИ, СПбГУ, ИТМО, УрФУ. Я узнал о ней поздно, но даже одна единственная поездка в качестве школьника запомнилась надолго и сильно изменила жизнь (в лучшую сторону :). Очень рекомендую.

P.S. Да, там что-то пишут про 6-10 класс, но написать в любом случае стоит. Школьники из младшей школы там тоже бывают.
ЛКШ — это круто. Но на будущее. Меня пока не отпускают в лагеря(((
Если что черкните мне в личку. Пришлю координаты людей которые организуют ЛКШ. Если сможете поучаствовать в соревнованиях и пройти отбор думаю возьмут в качестве исключения. Люди там понимающие :)
Начал в младшей школе, затем был перерыв до старших классов.
Вспомнил, как пытаясь написать свою первую игрушку на БК-010-001, классе в 4-м, я пытался понять как заставить человечка понять, что тут лесница, тут стенка, а тут клад. И я использовал волшебное слово DIM с координатами (массивы в бейсике).
Через 2 дня я легко оперировал одномерными и двумерными массивами.

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

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

Массивы — на математике? Не удивительно, что никто не понял :)


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

А почему поле морского боя не является матрицей с точки зрения математики?
Ведь для того, чтобы реализовать морской бой не на бумаге, а на компе, все равно матрица будет заполнена не крестиками, а числами.

Ну и кроме того, хорошее ориентирование в координатах — одинаково.
Аплодирую автору стоя! Молодец!
Ещё могу посоветовать начать изучать английский:
1) сможете общаться с людьми из разных уголков света и перенимать их опыт
2) будете в курсе самой актуальной информации из мира IT
3) большинство лучших ресурсов по программированию — англоязычные
И еще: главное — верить в себя и свои силы, не бояться совершать ошибки, ставить перед собой конкретные цели и задачи и никогда не сдаваться!
Желаю удачи! У вас все получится!
наличие в каждом доме пк не является основанием или мотиватором для изучение программирования всем подряд, как наличие радио и тв не обязывало со школы изучать схемотехнику

более того, 95% людей достаточно просто уметь читать, писать и использовать 4 базовых арифметических действий для комфортной жизни

все эти призывы к программированию с пеленок напоминают возню с неграми в африке, которым пытаются впарить все эти диковинки, которые им даром не нужны
А мне кажется, что учить всех программировать в 9 лет не нужно. Базовая компьютерная грамота — да. Программирование (как обязательный предмет) — нет.
Это далеко не всем нужно, далеко не всем интересно, далеко не всем по силам. То что автор такой вот талант — замечательно, но я уверен, что таких наберется на класс 2-3 человека (если только это не физмат спецшкола). Учитель все равно вынужден ориентироваться на среднюю массу. В итоге на уроках 10% маются от скуки (они это давно занают), 90% мучаются от твердости гранита науки (нихрена не понимая).
Талантливый и старательный самоучка ничего сейчас не теряет от отсутствия уроков программирования в младшей школе. Всё, что ему бы там рассказали — прекрасно гуглится.
Учить программированию я бы стал класса с 7-го и то только как факультатив по выбору. Чтобы там собрались только те, кому это правда интересно, чтобы можно было установить высокую планку программы.
Учить программированию я бы стал класса с 7-го и то только как факультатив по выбору. Чтобы там собрались только те, кому это правда интересно, чтобы можно было установить высокую планку программы.

А откуда вообще ограничение по возрасту — если вы сами говорите, "по выбору" и "кому это правда интересно"? Первокласснику что, не может быть интересно?

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

Те, "кому интересно" (из первоклашек), сложение с вычитанием освоили еще в детском саду.

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

Когда-то я ходил на кружок программирования, который был разбит на уровни в соответствии со сложностью. На начальном уровне просто объясняли, что такое компьютер, как его включать, выключать и рисовать в Paint. На старшем уровне уже рассказывали C. Так вот, ребёнка записывали просто в ту группу, для которой он подходил по навыкам. Возраст не имел значения. И это, по-моему, правильно.
Ну, как минимум, есть необходимость найти некую исходную базу для занятий.
Скажем, если потребуется сложить две обыкновенные дроби, я точно буду знать, что все в классе это умеют (или хотя бы должны).
Альтернатива — считать, что никто ничего не умеет, но не факт, что так можно далеко продвинуться.
работал репетитором у мальчика, он как раз на тот момент учился в 7м классе
порой было сложно объяснить что-либо из-за нехватки математической базы
т.е. мальчик пришел, у него есть желание программировать, но нехватка знаний в математике мешает
в моем конкретном случае — я ему объяснял такие моменты, чтобы мы могли двигаться дальше
на курсах без ограничения по возрасту будет каша. кто-то из 3 класса, кто-то из 5го и т.д. и с ними так уже не прокатит
когда же курсы строго с 7го(например) класса, преподаватель может выстраивать образовательный процесс, т.к. знает какая база у них уже точно есть

Вы переоцениваете стандартизацию школьного образования.

В каком смысле? Школьная программа хорошо задокументированна, это официальный стандарт.
Ещё скажите, что ЕГЭ не существует.
когда курс преподается в одной школе, для учеников одного возраста и по желанию самих учеников, то минимальную базу предугадать гораздо легче
да, кто-то будет знать больше остальных, но необходимый базис будет почти у всех
это не дает 100% гарантий, но заметно облегчает процесс
школа это все же общеобразовательное учреждение, если необходим индивидуальный подход — дорога к репетиторам
это лично мое мнение, никому не навязываю

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

о чем и речь, каждая школа, каждое образовательное учреждение(курсы и т.д.) пытаются решить эту проблему по своим возможностям
кто-то вводит ограничение по возрасту, кто-то устраивает экзамены, но идеального пути нет. все дети разные и способности у всех разные, следовательно и охватить все частные случаи очень сложно
Выше все прекрасно объяснили — у них не будет должной базы.
UFO just landed and posted this here
А много ли сейчас видно предпосылок тому, что «лет через 10-15 умение писать код… будет примерно тем-же, что сейчас умение читать и писать»?

Вот если бы речь шла о телепатии, впитывании информации из ноосферы, тогда сравнение с чтением и письмом было бы подходящим, потому что это универсальный навык, позволяющий быстрее учиться чему угодно. Программирование, всё-таки, хоть и имеет очень широкое применение, не универсально.
UFO just landed and posted this here
Честно говоря, я вот предпосылок вообще не вижу. Ну то есть я понимаю, почему в начале восьмидесятых так казалось Ершову, но вот что принципиально изменилось за последние, скажем, десять лет? Почему поколение, начавшее учиться в 2006 году, не является поголовно умеющим писать код, а вот поколение 2016 — будет?
UFO just landed and posted this here
Ну и что? Гораздо более массовыми профессиями стали: биолог, психолог, инженер-химик, специалисты по рекламе, логистике, системам безопасности… Я в перечисленных вещах ничего не понимаю.
Не надо экстраполировать: вырос общий объём вычислительной техники и используемого софта, вот и стала профессия программиста более массовой. Не надо экстраполировать и смешивать массовую профессию с массовым навыком.
UFO just landed and posted this here
Я с этим не спорю, достаточно очевидный тезис.
Тут нет какого-то тренда на резкий рост. Вы же предлагаете заглянуть на 10-15 лет вперёд, а я предлагаю вернуться на 10-15 лет назад, и посмотреть, что там было.
Ну вот хоть убейте, я не представляю себе, почему биофизику не надо было уметь программировать в 2006 году, а в 2026 резко понадобится. Всё в 2006 году уже было, никто на калькуляторах не считал. Аналогично с химиками и проч. Мы уже находимся в этом будущем, где все, кому надо, уже программируют, и непонятно, с чего бы этому списку продолжать расширяться неограниченно.
UFO just landed and posted this here
> а на территории пяти северных стран — здесь этот тренд не просто сильный, а очень сильный

По моей логике получается тогда, что эти северные страны последние 20 лет были в коматозе, и к 2006 году ещё не успели адаптироваться к ситуации. Но ведь это не так.

Вот смотрите, я учился в Финляндии в магистратуре в 2002-2004 годах. Общался с самым разным народом — физиками, биологами, специалистами в лесной промышленности. Уже тогда умение пользоваться компьютером (и не просто пользоваться, а хоть немного программировать) для всех этих ребят было очевидной частью их работы.
То есть опять же, мой тезис состоит в том, что тренда нет, потому что мы уже находимся на гребне этого тренда. Ну да, может, мы ещё не в самом пике, но нельзя сказать, что вот не было программистов, а сейчас они начнут появляться в огромных количествах. Они есть, и уже достаточно давно.
UFO just landed and posted this here
Важно не писать код, а хотя бы уметь ставить простейшие алгоритмы.

Потому что смартфон, электроварка, стиральная машина, умный дом.
Резонно. Но мы уже находимся на этом этапе достаточно давно.
Стиральные машины (недавно покупал) за последние 10 лет не изменились практически никак.
Мультиварки и проч. — аналогично (там из «программирования» выбор режима и таймер).
Умный дом — как было для любителей, так и осталось (я сам себя до сих пор не могу промотивировать внедрить что-то в этом роде).

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

Детей я буду обучать тому, к чему они проявят склонность, буду даже рад, если это будет программирование (и вдвойне рад, если это будет телепатия, которой я смогу их обучить). Но зря вы так про телепатию, я ведь просто предположил каким будет следующий универсальный навык, потому что программирование я таковым не считаю.
UFO just landed and posted this here
>> Просто лет через 10-15 умение писать код (пусть и не очень сложный), а главное понимание как этот код вообще работает будет примерно тем-же, что сейчас умение читать и писать…

Не будет. Лет через 100 — возможно (просто потому, что вообще никто не может сказать, что будет в такой дальней перспективе). Через 10 — нет, это деформация восприятия от непрерывного нахождения в гиковском окружении.
UFO just landed and posted this here
Это не гиковское восприятие, это учительско-преподавательское восприятие. Потому что при всеобщем умении писать код, востребовано не умение программировать, а умение обучать программированию.

PS недавно была статья с прогнозом обвала Веб--рынка, из-за обилия тех кто-кое как пишет висючий говнокод для Веба.

Присоединяюсь к вопросу, и добавлю рекламы. В Челябинске есть лицей №31, куда берут с 5го и с 8го класса.


В пятом классе там изучают программирование на языке Лого в его KTurtle-реинкарнации. Есть спецкурс по роботам, есть "олимпиадный" спецкурс.

Начнём с того, что программирование уже сейчас начинают вводить в программу рано. Скажем, в Британии с пяти лет (ок, в пять это некие базовые представления об алгоритмах, но уже лет с семи там пойдёт Scratch). В Японии то ли в прошлом году, то ли в этом году программирование добавили в программу начальной школы, и продолжаться оно будет до самого выпуска.

Далее, любимому занятию предаются в свободное время, а не в школе из-под палки :) Объективно говоря, если в школе появится 1-2 урока информатики в неделю, это мало что изменит. Вы наверняка не час и не два посвящаете этому делу. А вашему поколению можно только позавидовать: бескрайний интернет, любые знания на расстоянии вытянутой руки. Когда я начинал изучать программирование в подростковом возрасте, всё было куда печальнее.

С другой стороны, у вас слишком много всего вокруг, а научиться фокусироваться на важном, отсекая второстепенное очень сложно. Впрочем, в девять лет можно этим не особо заморачиваться: любые знания и умения хоть какую-то пользу дадут. Просто на будущее надо иметь в виду, что рано или поздно придётся разработать себе некую «образовательную траекторию». К сожалению, я знал слишком много талантливых людей, которые никуда особо не продвинулись именно потому, что застряли на уровне «поиграть с этим», «поиграть с тем».

При этом не стоит особенно сокрушаться о потерянном времени: «мне уже N лет, а нас всё ещё не учат X». Знаю, со мной многие не согласятся, но в моём (уже скорее среднем...) возрасте кажется, что два года туда-сюда уже играют никакой роли. Сейчас я могу позволить себе потратить год-другой на какой-нибудь проект, который в итоге ни к чему не приведёт, ну и ладно, не беда. Ведь никто из нас не висит на паузе: если мы даже не занимаемся любимым делом, то всё равно занимаемся в это время чем-то другим, тоже полезным.

Ну и пару идей на будущее:

1) Замахнитесь на относительно большой проект. Пусть это будет не очень сложная, но реально большая программа из большого количества модулей. Практика показывает, что даже у хороших кодеров бывают проблемы с системным мышлением. Одно дело — построить десять маленьких домиков, другое — один-единственный небоскрёб. Опять же, необязательно гнаться за какими-то продвинутыми стилями разработки. Код может быть устроен примитивно, но он должен быть чистым и логичным. Где неясно — комментарий. Переменные должны называться разумно. Напишите документацию к проекту.

2) Обычно программисты, с которыми приходится работать, более-менее писать код умеют. Ну, с этим тоже не всегда просто, но всё же это их работа. Поэтому, опять же, с годами начинаешь ценить другое. Умение внятно изложить логику. Если в письменном виде, структурированно, совсем хорошо. Английский язык должен быть на уровне. Какая-то общая культура разработки, чтобы человек не писал «на отвали», лишь бы работало, а понимал бы, что хорошо, а что плохо.

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

Про переменные согласен. Так, в любом коде первая буква обозначает назначение. Также три таких буквы зарезервированы под нужны написания функцй: "i" для входа (аргументов), "l" для локальных переменных и "o" для возвращаемых переменных

UFO just landed and posted this here

Мне с моим атомом оно не мешает (например). + я не использую её для обозначения типов.

В языках со статической типизации она будет отчасти нагромождать код, нежели помогать его очистить, касательно функций в особенности. Там, обычно, зона видимости и (иногда) назначение очевидны из объявления.
Правильно пишут, венгерская нотация создавалась в определённых обстоятельствах, которые уже не актуальны. Я сам использую её только для объектов GUI (cmbSelectCity, btnOK, cbUseFilter).

Впрочем, можно выбрать любой подход и держаться его, а уж потом периодически пересматривать взгляды.
К сожалению не все могут или желают «периодически пересматривать взгляды» — мешают привычка или подход «мне и так нормально». Срабатывает, пока только в своем (закрытом) проекте работаешь. Становится реальным затруднением в профессиональной работе, особенно — в командной.
Я также использую эту нотацию для GUI элементов, но считаю нормальным перестраиваться под стиль языка, команды, проекта, заказчика: вариации btnOK или buttonOK; SQL ключевые слова — заглавными; на Java, JavaScript, Swift — "{" на строке имени метода и методы lowerCamelCase, в .NET — "{" на новой строке и методы UpperCamelCase; поля начинаются с подчерка в одних проектах или без подчерка в другом проекте; и т.д. Согласованность стилей облегчает чтение «чужого» кода.
Это лишнее. Если вы в собственном коде не знаете за что отвечает каждая переменная то надо что-то делать. Но не с переменными. Например, с методами — возможно они слишком длинные? Настолько, что вы к концу метода успеваете забыть для чего вам была нужна эта переменная? В коротком методе роль переменной сложно забыть. Лучше действиетельно более внятно называть, чем с префиксами этими маяться.
Писать кратко.
Меньше кода = меньше ошибок.
НеВажно какТы _пишешь Важно_что.
Больших задач не бывает, есть куча мелких объеденных в одну.
Написано «Хорошо» но не работает = не написано.
Написано «Плохо» но работает = можно отрефактировать.
Комментарий читают = не понимают код.
Непонятен код, нет комментариев = переписать.
Рад, что мой старый проект devel studio помог вам в освоении программирования. Удачи!
Я сильно удивлён качеством текста, но интересует другое — на каком топливе работает моторчик? что является стимулом для саморазвития?
А я в первом классе принес в школу трансформатор, чтобы на переменах намотать обмотку (нужно было намотать очень много витков и дома не успел это сделать). Естественно, для сверстников все это было где-то из области магии, в школе об этом рассказывают в классе 8м или даже позже.
Раньше (в 80-90х) не было компьютеров, и радиолюбительство было аналогом программирования. Если ты хочешь этим заниматься — в библиотеке полно книг, в старых телевизорах полно радиодеталей. Можно было спаять по настоящему уникальные и интересные вещи, которые не купишь в магазине — например, радиожучок, терморегулятор для самодельного инкубатора. Вы представляете, насколько это круто, шестикласснику держать в руках цыпленка, который выпарился в собственном инкубаторе?!
А сейчас, с обилием компьютеров все стало гораздо проще, интереснее, эффективнее. Цели стали еще круче. Не останавливайтесь!

Только сейчас задумался, что, вероятно, возрастная дискриминация — одна из самых стойких и широко распространенных. И это сохраняется на протяжении жизни. (Когда в свои смешные 25 споришь с 70-летним профессором, который порет неприкрытую чушь, а он начинает свою фразу с многозначительного "Молодой человек, ...").
Успехов вам!




Вот пока писал комментарий понял, что и я, и куча еще комментаторов тут внезапно решили, что надо непременно что-то вам посоветовать. А с каких таких… спрашивается? А все просто: автору 9 лет. Мы все глубоко поражены возрастными стереотипами. Я вот не напишу простейшее приложение на C#. Да и с мотивацией у меня, видимо, бывают проблемы, не ведомые автору текста.




Все же не удержусь от одного совета. Старайтесь тщательно документировать свои успехи и достижения. Когда-нибудь обязательно пригодится как раз из-за упомянутой выше возрастной дискриминации. Я закончил школу в 16 лет, всего на год-полтора раньше большинства. И не раз приходилось встречаться с удивлением моему возрасту. А вот жена моего брата закончила школу в 15 лет. И это помешало ей поступить в магистратуру в Швеции. Ей просто не поверили, что документы настоящие.

Когда в свои смешные 25 споришь с 70-летним профессором, который порет неприкрытую чушь,

Ничего-ничего, наступит время, когда вы в 70 будете спорить с 25-летним молодым человеком, который порет неприкрытую чушь… :)

внезапно решили, что надо непременно что-то вам посоветовать. А с каких таких… спрашивается?

Тогда надо просто закрыть комментарии. Автор изложил какую-то мысль, в тексте нет ни конкретных вопросов, ни предлагаемых на обсуждение тем (если не считать не особо интересного опросника).

То есть, по-вашему, возраст начала преподавания программирования — не достаточно интересная из предложенных тем?




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

не достаточно интересная из предложенных тем

Интересная. Но в чём предмет обсуждения? Наша образовательная система не самая продвинутая в мире, а в продвинутых системах этот вопрос уже решён. Остаётся лишь равняться на лидеров.

профессор в принципе не может пороть чушь?

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

Без обсуждения не может быть понимания и развития. По-моему, 9-летний программист, самостоятельно поднимающий актуальную и дискуссионную тему на хабре, способен привлечь внимание к вопросу и спровоцировать обсуждение. Меня лично тут зацепил вопрос возрастной дискриминации: человек хочет изучать, а его не берут в кружки из-за возраста. Кого-то зацепили другие сюжеты; не так часто посты вообще цепляют.
А то, что автору 9 лет — это лишь вау-эффект, цепляющий внимание. Внимание — главная валюта информационного пространства. Поэтому, кстати, украинские феминистки обнажаются, а уральский мужик режет себе пальцы. Нужны сильные ходы, чтобы завладеть вниманием.
__ предлагаю закрыть линию обсуждения профессора))

Кстати, заметим в скобках, что автор сам выводит на эту линию мысли. Он ведь зачем-то сообщает свой возраст. Когда я пишу статью (куда бы то ни было), обычно возраст не указываю. Так что не придирайтесь :)
Парень, а может ну его, это программирование. С таким изложением мыслей тебе бы копирайтером тут в корпоративных блогах подрабатывать за денежку ;)
Парень,

image


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

Извиняюсь, если кого-то тут задел своим комментарием. Но автор меня удивил в первую очередь способностью писать по-русски и лишь потом способностью писать код.

Да не, ничего личного. Просто предложение забавное. Типа: "Девушка, вы такая красивая. Почему бы вам не сняться в порно? За денежку!"

Предложение это возникло под впечатлением от статьи на фоне статьи про фаблет Lenovo c Tango в их блоге. В данном случае статья написана девятилетним мальчиком со спеллчекером в виде родителей. В случае с Lenovo писал вроде бы взрослый человек, и явно не за бесплатно. А результат прямо противоположный ожидаемому, Так что забава забавой, но я бы автора ещё почитал с удовольствием ;)
Больше всего радует целеустремленность в таком юном возрасте, я в его возрасте интересовался только Lego, велосипедом и солдатиками, которых отливал из пластмассы и потом раскрашивал сам. Но в мое время не были доступны ПК как сейчас, свой первый комп я получил только в 15 лет, на котором стоял Norton Commander и даже PAC-MAN лагал.
Его бы перевести в школу с углубленным уклоном в математику и информатику, если не забросит — будет хорошо зарабатывать. У нас в стране всегда востребованы нормальные программисты. Если повезет — заберут в хорошую фирму за границей. Я не питаю таких патриотических чувств и не буду кричать во весь голос об утечке мозгов за рубеж, считаю, что где лучше платят и лучше жить — там и надо жить.
PS: Igor_geek, хочу добавить только две вещи:
1. Мир любит увлеченных. Пока ты идешь к своей цели, всегда найдется много тех, кто будут готовы платить за твои труды. Когда деньги не цель — а ресурс, они у тебя будут всегда.
2. Ищи вокруг себя людей, которые так же увлечены как и ты, тогда твой рост будет в разы быстрее чем сейчас.
Удачи во всех начинаниях!
Да факт же что это писал не 9 летний парень. Имхо это форс каких то курсов в дальнейшем… Слишком грамотная построенная речь для ребенка такого возраста.
абсолютно не понимаю почему человека заминусовали…
Что мы видим? Программистские поделки на уровне способного ученика начальной школы и текст на уровне выпускника университета (ну или как минимум очень сильного старшекласника). Причём свои программерские навыки автор считает чем-то из ряда вон выходящим (иначе статьи бы просто не было, ну или возраст в ней бы не указывался) и рассказывает о трудозатратах, приложенных для их приобретения, а свои литературные навыки он вообще не считает чем-то особенным — пишет в комментах, мол да, читаю школьную программу по литературе, не всегда интересно.
Если всё это правда и текст писал девятилетний ребёнок, его литературный талант просто несопоставим с программерским! Разница на порядок просто. Поэтому да, я бы тоже порекомендовал подумать в сторону профессионального написания текстов (от программирования отказываться не обязательно).
Выше видел много сомнений насчёт того, что текст написал девятилетний. Честно говоря тоже сомневаюсь. В том, что девятилетний ребёнок может написать упомянутые программы и освоить в том или ином объёме упомянутые языки и инструменты — не сомневаюсь нисколько. В том, что он может написать такой текст — сомневаюсь сильно. И даже не из-за упомянутых огромного словарного запаса, безупречного построения текста и грамматики. В тексте есть логические неувязки, которые становятся таковыми только если допустить, что автору действительно девять.

>>> Кстати, одно ограничение все-таки надо признать. Оно связано с математикой. Ее в программировании много… Но зато при освоении вместе с информатикой она перестает быть абстрактной наукой.

С утверждением автора я согласен целиком и полностью. Школьная математика часто кажется ученикам слишком абстрактной и абсолютно бесполезной за пределами школы. Программирование действительно помогает понять для чего оно всё на самом деле нужно.

Но! Утверждение это верно, начиная МИНИМУМ класса с пятого. В первом и втором классе ничего абстрактного в школьной математике нет вообще. Дети просто учатся считать. Т.е. из-за школьной математики прийти к выводу «математика — абстрактная наука» автор не мог. А если более-менее продвинутую математику автор учил уже вместе с программированием, он тоже не должен был задумываться о её абстрактности, ибо в этом случае ему сразу было очевидно — она нужна для абсолютно практических вещей.
Тоже не верю, что автору статьи 9 лет, уж очень стиль изложения в статье зрелый.
В классе 9 думал: «синусы, косинусы, кому они нужны?» — спустя пару лет писал программу для обрезки видео, где нужен был функционал наклона изображения, по типу оси транспортира (как сейчас в инстаграме). Пришлось вспоминать и доучивать все заново :) Логарифмы кстати тоже пригодились.
Согласен, тоже думал, зачем все это надо, а потом, думаешь какой же я дурак был, вот сейчас бы те знания, так бы пришлось тратить меньше времени на изучение.
«синусы, косинусы, кому они нужны?» — нормально.
а «у Васи было три яблока, что за гадкая абстрактная наука?!» — уже как-то странно :)
А мне 12, занимаюсь олимпиадным программированием на Java. Еще активно пишу свой сервер для San Andreas Multiplayer.
желаю удачи, тоже этим в 12-14 занимался, сервер даже был одно время популярный, ну я не добавил донат ) щас мне 18 будет и я делаю 2D Песочницу с элементами выживание и рпг
Автор – молодец! Так держать.
Сразу навеяло воспоминания, как я в далеком 1997 году, учась в первом классе, напросился заниматься в школьный «компьютерный класс».
Персональная ЭВМ «Корвет» показалась чем-то невероятным!
А уже через год появились Pentium III, а наш внеурочный «компьютерный класс» прикрыли :(.
Оставлю здесь (возможности 9-ти летних программистов)
https://www.youtube.com/watch?v=-1CYUDnICWo

P.S. Тема [url=http://demoscene.ru/forum/viewtopic.php?t=842&start=0&postdays=0&postorder=asc&highlight=]Forth Haiku на demoscene.ru[/url] уже в исполнении отца данного программиста.
Главное — это не думать всерьёз сейчас, что программирование — это на всю оставшуюся жизнь. Жизнь, (особенно в России (во все времена)) — она ТАКИЕ фортели выкидывает… глядя на 50-летних мужиков — никогда не знаешь, кто из них был кем «в прошлой жизни», в смысле буквально 15 лет назад…
у нас в школе информатика и программирование были с 5го класса
начинали с самых простых, понятных и интересных(для детей) азов
некоторые наверняка помнят игру «черепашка» (дано поле, начальная позиция и набор команд по типу «вправо», «влево», «опустить хвост» и т.д.), давали задачи на ней и т.д.
таким образом давали понять что это и как это работает. Дальше были уже вещи посложнее, но в разумных пределах

у нас был Лицей, я учился в профильном физико-математическом классе и из 26 человек увлекались программированием максимум 6-8 человек
для них информатика была интересным предметом, для остальных же — просто предметом, который им нужно сдать (для некоторых так вообще информатика — сущий ад)
из этих 6-8 человек в итоге программистами стали человека 3-4

ну так вот, на своем примере считаю, что информатика как общеобразовательный предмет для расширения кругозора можно давать и с начальных классов, в ограниченном количестве
но программирование, как таковое, только с определенного возраста и только как факультатив по желанию
те кому это интересно — найдут всю информацию сами, интернет сейчас эту задачу упрощает, а из-за 5-10% учеников делать этот предмет обязательным для всех — достаточно глупо

но это всего лишь мое мнение, основанное лишь на моем опыте
А если у человека есть способности, а он о них не знает, тогда как?
Если бы в школе не была бы химия обязательным предметом, то я бы и не узнал о своих способностях к ней.
либо я неправильно выразился, либо Вы меня неправильно поняли :)
основы информатики и азы — как обязательный общеобразовательный предмет, чтобы каждый имел представление о том, что это
а уже дальше — по желанию и по выбору
Когда меня в 14 лет отдали на курсы, где еще на черном экране что-то писали, я был маленьким, но очень хотел. Учитель согласился заниматься со мной дополнительно чтобы подогнать до уровня других. До сих пор помню как я старательно записывал и разбирал все примеры. Но это был плохой период для моего здоровья, я много болел, зрение было не лучшим с детства. Короче, на семейном собрании решили что мне это не нужно и компьютер «высасывает соки». А потом все пошло по наклонной: компьютерные клубы, игры, постоянные обвинения что у меня зависимость. Постоянные попытки оградить. Первый комп в 2003. Первый персональный в 2008. В итоге первая программа только в 21, в 2009.

Как то даже сложно представить свою жизнь, если бы тогда все сложилось. На столько значимым был выбор. Тогда компы воспринимались как игрушки, а кто такой программист и понятия не имели. Я из маленького городка :(
Точка зрения Ершова — это Утопия, которая — рай для учителей и преподавателей, и отнюдь не рай для самих программистов.
Потому что если бы все умели отлично программировать, то программистом можно было бы нанять первого встречного человека с улицы на зарплату неквалифицированного рабочего и этого было бы достаточно, и отношение к такому человеку было бы соответствующим потому что легко заменить.

Напротив, это бы позволило заниматься сложными и интересными системами вместо раскрашивания кнопок.

Сейчас практически 100% людей умеют читать и писать. И что? По-прежнему, написать грамотный связный текст могут единицы, еще меньше тех кто на этом зарабатывает профессионально.

Я к тому, что умение писать не означает умения писать хорошо. То же и с программированием. Дать основы нужно обязательно. А дальше уже зависит от человека.

В конце концов, в индустрии за последние 20 лет появилось в разы больше людей, но грамотный специалист как был, так и остается дефицитом.
имхо, мне тоже не верится, что это писал девятилетний парень:) Но если это так, то приглашают бесплатно к нам на занятия в школу CODDY. Если мой коммент будет удален, значит тут что-то точно не так)))
У меня ребёнок с 7 лет строчит скетчи на Processing.
Прочитал книгу «Яша учится программировать».
Сначала писал на ноутбуке, потом сам нашёл среду для смартфона.
Там по мелочи, конечно, но всё равно.
С 5 класса… У мелкого начали с 1-го. Правда, ничего существенного им не давали, несмотря на то, что школа математическая. Но речь у другом. Пришел новый министр образования и заявил, что теперь информатику в Казахстане будут изучать с 5 класса! Во всех школах, без исключения. И вот школам, в которых информатика изучалась с 1-го, пришлось поменять свои программы и поставить информатику с 5 класса. :(
Так сказать, с раннего детства.
Да я тоже не соглашусь с автором.
Очень многое зависит от родителей и конкретно от склада ума.
Меня например всегда интересовали компьютеры, но дальше не пошло.
Всё детство провёл за чтением худ. литературы, а математику мне «жевал» старший двоюродный брат, который с детства занимался электроникой и сам спаял себе первый спектрум из конструктора.
В школе преподавали полный бред, играли в игрушки.
Хотел сознательно пойти учиться — упёрся в математику и оставил это дело.
Не всем быть Ааронами Шварцами, который вообще самостоятельно читать научился )
Но и конечно, большую роль в невежестве играет предоставленность ребёнка самому себе. У меня точно были возможности, возможно были способности, но совершенно небыло рядом того, кто бы это всё направил в правильное русло.
Меня сейчас закидают гнилыми помидорами, но математика не самая важная вещь для программирования.
Ну, я не закидаю, но как двоечник по математике — ощущаю всю свою ущербность из-за этого
и не только касательно программирования )
Математика — прекрасна!
зависит от цели и программиста.
Учился программировать в удаленном режиме, у меня не было информатики, но у старшего брата была.
Писал программу на листке, потом получал списанный с дисплея результат и так я учился 2 года, пока информатику не ввели у нас.
Прочитал все комментарии и выскажу своё мнение отдельной веткой.

Не важно, 9 лет парню или писала всё сильная и независимая женщина, имеющая 40 котов. Тема поднята интересная.

Про грамотность письменной речи автор уже сказал честно — помогают родители. И это правильно. Все бы авторы так ответственно подходили к своим публикациям. И то, что в 9 лет можно так грамотно излагать свои мысли — не удивительно. Залог грамотности — количество прочитанных книг. Не важно, какого жанра, важен объём книг и разнообразие слов и словесных конструкций. Ну и чтобы в книгах не было ошибок, разумеется.

Учить именно программированию в обязательном порядке не стоит. Школа должна давать общие знания — на то она и общеобразовательная. Специализации уже должны на факультативах быть. И правильно говорят про отбор по возрасту — в программировании очень важна математика и надо быть уверенным, что все обучающиеся знают её на одинаковом уровне, тогда учебный процесс будет одинаковым для всех. Индивидуальный подход — он для индивидуальных занятий и тут уже возраст не важен. И важно объяснять, где и как могут пригодиться те знания, что дают.
Например, "задача о ранце". Для школьника это задача каждого вечера\утра — правильно уложить всё в сумку\портфель. Собираясь в отпуск куда-нибудь — эту задачу решают родители. Походы в магазин — по пакетам все продукты расположить надо так, чтобы было удобно нести. Мы делаем это на автомате и даже не задумываемся о тех алгоритмах, которые в нашем мозгу руководят нашими действиями. Кстати, в своём кругу я называю это «играть в тетрис».
А "задача коммивояжёра"? Тоже ведь популярная — сделать кучу дел, разнесённых географически в сжатые сроки. Такие квесты регулярно подкидывает бюрократическая система России. Да и просто повседневная жизнь, те же походы по разным магазинам с целью минимизирования расходов, и чтобы при этом не ходить всю дорогу с тяжёлыми пакетами.
Но нам это преподавали только уже на первом курсе в университете, хотя можно уже изучать в средних-старших классах в школе.

А ещё огромное значение имеет желание и то, в какой атмосфере рос и воспитывался. Именно в детстве закладываются все основы — все наши желания, амбиции, устремления.

Расскажу немного своей истории: научился читать где-то между 4 и 5 годами. Просил родителей почитать мне, но они сказали, что я книжку и так наизусть знаю, так что «иди и читай её сам». Я сел на стул и стал «читать», пока не заметил, что скорость чтения снизилась и текст уже позабыл, но всё равно читаю, только по слогам. Волшебный момент. Поскольку это было начало 90-х, игрушек было катастрофически мало (в основном, деревянные, да), телевизор показывал только один канал, то основных развлечений было два: книги и улица.
И не стоит недооценивать силу книг — они очень сильно прокачивают грамотность, силу воображения, эрудицию. К 9 годам можно прочитать уйму книг, было бы желание и возможность.

В 6 лет у мамы на работе впервые увидел компьютер и играл там в пятнашки (любимая физическая головоломка в детском саду). К слову, пятнашки нехило так учат азам комбинаторики маленького пацана. Так вот тогда я решил, что буду «работать с компьютерами». Не играть — работать. В школе у нас не было компьютерного класса, он появился только когда я учился классе в шестом или седьмом. И вот тогда уроки информатики ввели у ВСЕХ классов. И под каждый класс своя учебная программа. Из программирования у нас были Кукарача, а потом Паскаль.
И если из всех одноклассников усваивание предмета хорошим было только у тех, у кого дома уже был компьютер (таких было мало), то у меня успеваемость была лучшей потому, что я вне занятий информатикой старался читать книги на эту тему. У нас в школьной библиотеке была книга-пособие по Windows 95. Я её прочитал ещё до того, как у нас появился компьютерный класс. А ещё раньше, когда сестре исполнилось 7 лет (а мне 6), ей подарили книгу "Необыкновенные приключения Пети Кука в Роботландии". На тот момент я мало что понимал. А вот в школе уже, когда получил доступ к компьютерному классу (попал в редакцию школьной газеты), наткнулся на файлы учебного курса «Роботландия» и узнал, что первоклашек начинают учить как раз по нему — с самых азов, на тех самых программках, которые описаны в книге. Но если в книге это текст и в возрасте 7 лет сложно его визуализировать, даже с картинками, то в компьютерной реализации всё становится намного понятнее.

Поэтому вывод такой:
0. Без желания и склонности ничего толкового не получится.
1. Учить надо с первого класса (а то и с детского сада), но закладывать азы, общее образование должно быть общим.
2. Учебные материалы должны быть наглядными, интересными и приближёнными к реальности. Сухая безжизненная теория мало кому даётся легко.
3. Более глубокое обучение давать факультативно и желательно с разбиением по уровню знаний. Всё же не по возрасту, ибо бывают исключения, когда человек изучает что-то раньше, чем это по школьной программе даётся.
4. Поддержка родителей тоже решает, а уж их помощь и занятия дома — тем более.
А мою жизнь изменила вот эта книга «Профессор Фортран»
image

а его «ноутбук» всегда работал исправно и не давал сбоев
image
Да, была у моего друга. Но мне не довелось всю её прочитать, так, пролистал только.
А комп из вырезок собрал? Только после этого можно диплом на свое имя заполнить!)

Я да. Забавно, после того как я склеил бумажный компьютер мне купили настоящий — ZX Spectrum.

UFO just landed and posted this here
Реально прослезился, детство перед глазами пролетело: родители, двор, друзья и эта книга!
Спасибо тебе.
люто плюсую!!! До сих пор помню это «небо ходимо пой мать кадабру» :)
Я, как и автор, начал программировать в 9 лет. точнее, даже в 8. Опустим тот момент, что столь выдержанный и грамотный текст статьи в те годы я написать был не в состоянии, что не мешало познавать премудрости машинной логики по советским книжкам(!), написанным для детей(!!), в которых автор относился к читателю как к себе равному(!!!), но в силу возраста многого не знающему коллеге(!!!!). Ещё могу добавить: у меня не было полноценного игрового компьютера, но простейшие игры были доступны. Когда мне не хватало чего-то в играх, отцом был запущен интерпретатор BASIC-а, а в руки дана книга для детей по программированию на нём.

К чему я это всё? Программиста нужно не только вырастить, но и воспитать. При этом, ему нельзя ничего навязывать! Впрочем, как и любому ребёнку. Достаточно всего лишь вовремя подсказывать и предупреждать. Если ребёнок упрямится и не внемлит предостережениям, то пусть наделает ошибок (если они не фатальны) — это его опыт!

Т.е., какие нужны составляющие?

1) Компьютеры для детей. Смех смехом, но это так. «Взрослый» компьютер им не удобен;
2) Серьёзные книги для детей. Это — очень важная составляющая. Да, в них должны присутствовать маскоты или просто персонажи, показывающие что-то на своём примере. Ведь сухой текст просто утомит ребёнка;
3) Мотивация. Нужны примеры, способные впечатлить, зажечь интерес. Т.е. выставки достижений, какие-то примеры программ, написанных детьми того же возраста или чуть старше. Ребёнку важно знать, что он тоже может, и это здорово.

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

А что до общения в школе: Да, меня не могли понять. Простой код BASIC-а, написанный по памяти на тетрадном листке в клеточку вызывал недоумение у сверстников. Словно я разговаривал на чужом языке. То же самое — листинг Pascal-я в конце младшей школы и листинг Assembler-а в середине средней. Увы, никто обычно не ценит этих знаний. Не зря я упомянул выставки.
«1) Компьютеры для детей. Смех смехом, но это так. «Взрослый» компьютер им не удобен;»

Боже упаси меня и моих детей от подобных штук:
image

Почему вы считаете, что книжки должны быть серьезные, а компьютеры детские?
Вполне достаточно детских программ, те же game constructors и др. Но на нормальном компе. Где ты с ребенком можешь что-то делать вместе.
Да сейчас взрослые компьютеры детям понятнее, чем многим взрослым.
По порядку:

1) В моё понимание «детские компьютеры» вовсе не входит то уродство, что Вы привели в пример) Детский — значит рассчитанный по габаритам на ребёнка. Не надо гигантскую клаву, не надо высоко посаженный монитор и т.д. и т.п. Ребёнку должно быть за ним комфортно работать.

2) Под «серьёзными книгами» я подразумеваю нормальные самоучители, а не книги категории «Ты — дурак, а я — гений! Потому слушай сюда!». Это книги, имеющие в названии постфикс "… для чайников!" или "… для новичков!". Серьёзная книга поступательно учит базовым основам, но в достаточной мере, чтобы читатель после неё смог пользоваться справочником.

Вполне вероятно, что он прочитает эту книгу и сразу кинется писать простейшую программу, но захочет чего-то большего «здесь и сейчас». Есму не захочется читать «расширенное издание», а потому он возьмётся за справочник.

3) В «детские программы» я категорически не верю. Обучение методом «мартышкинских инструкций» не научит ребёнка думать своей головой. Дело, ведь, не в привыкании, а в понимании. Если ребёнок после книги начал понимать основы, он сможет понять и более сложные вещи.

Проще говоря, интерес к делу у ребёнка возбуждают осознание и успехи. Серьёзная книга объяснит на пальцах смысл и покажет на примере. Несерьёзная книга сразу выдаст готовый рецепт «на отвали».

Тогда нужен не детский компьютер, а просто детский компьютерный стол :)

«3) В «детские программы» я категорически не верю. Обучение методом «мартышкинских инструкций» не научит ребёнка думать своей головой. Дело, ведь, не в привыкании, а в понимании. Если ребёнок после книги начал понимать основы, он сможет понять и более сложные вещи.»

Конструкторы игр — вполне нормальные детские программы.
В наше время был бейсик, на котором можно было написать более половины игр, которые в то время считались вполне играбельными.
Сейчас, чтобы написать хоть что-то, от чего не будешь рыгать на java или python, без основ ООП, без разбирания как работает веб, без кучи и кучи всего — практически нереально. Но ведь надо с чего-то начинать, чтобы у ребенка был ВИДИМЫЙ результат?
А на конструкторах вполне можно сделать продукт.
Я сам, как и многие тут присутствующие, написал свою первую программу на Basic для ZX Spectrum лет в 7-8, и было это в начале 90-х. В школе тогда стояли БК и пускали туда только 10-11 классы. Это к слову о опросе.
НО! Вот хрен бы я в 9 лет написал такой текст.
А я в восьмом классе (1992) познакомился с программируемым микрокалькулятором МК-61…
Я начинал программировать в 7 класса, и тогда у меня и компьютера-то не было. Но были учебник по С, ручка и тетрадки.
А по поводу текста статьи — у меня стойкое впечатление, что его написал студент 4-го курса филфака.
Я начинал в 12 в 1986 на yamaha MSX, даже занял третье место на районе по программированию, меня обошли политкорректные работы, мульт про голубя мира и вторая работа чтото с КПСС, а у меня был симулятор машины и столкновения и дорога лентой вилась. Все на бейсике. Потом АГАТ в школе, yamaha в физматшколе вечерней с языком Prolog, и тд. ПК Поиск, IBM совместимые с тубопаскалем, учась в институте подрабатывал в комп фирме и уговорил их купить Delphi 1.0 в коробке. Потом много всего было, но программирование люблю.
Старшему ребенку поставил на его ноутбук Unity3D прошлой зимой, 11 лет, любит планшет и игры, но летом загрустил на даче и давай Unity юзать, брал туториалы в делал проекты, единственное я попросил копи-паст не делать, а бить программы(скрипты) ручками.
Это надо было видеть, как он потом в листингах ошибки искал )
Это я к чему, нравится занимайтесь на здоровье программированием, просто для 9 летнего ребенка текст не родной. Проще сказать что эксперимент смотрим на реакцию пользователей.
тем более нет ссылок на youtube account на который есть ссылка, комменты почитать, как литературный язык «рос», у моего старшего года три как есть, но там в основном мульты из лего выкладывет.
Или действительно чтото с развитием ранним происходит у детей.
Я в это время больше на химию нажимал, ракетные испытания, нитроглицерин и тд )
это сумбурный личный взгляд, по языку думаю класс пятый.
Я бы не стал возлагать какие-то надежды на школьную программу. Она написана для каких-то середнячков, которых в природе не встречается. Для гуманитариев там много лишнего, для технарей, вроде автора, слишком медленно и скучно. Да, ИКТ должна быть с первого класса, но к четвертому нужно делить весь поток на два вышеозначенных и выстраивать программы всех предметов соответственно.

Пока этого нет самообразование лучший выход. Не обязательно искать какие-то очные курсы. Есть форумы, книги, дистанционные курсы. Даже автоматические тесты на получение сертификатов, в том числе и бесплатные, укажут вам ваш уровень знаний и на то, что нужно подтянуть\изучить.

Автору и таким же одаренным детям советую не ограничиваться только программированием, но и изучать схемотехнику и электронику. Тут на хабре раздавали отличный учебник: https://habrahabr.ru/post/259505/
Она написана для каких-то середнячков, которых в природе не встречается. Для гуманитариев там много лишнего, для технарей, вроде автора, слишком медленно

Полностью согласен, мне даже учитель разрешал спать на информатике, когда доходили до программирование, по причине того что он видел, что я ничего нового и не узнаю(самоучка)
Я бы не стал возлагать какие-то надежды на школьную программу. Она написана для каких-то середнячков, которых в природе не встречается. Для гуманитариев там много лишнего, для технарей, вроде автора, слишком медленно и скучно.
Так со всеми предметами. Просто цель школьной программы ознакомить учеников со всем понемногу, чтобы могли выбрать себе профессию по своим способностям. А не так как классическое «хочу быть космонавтом!» (после уроков физкультуры понимаешь, что на космонавта ты не тянешь, и нужно выбрать себе другую профессию).
Да, действительно в 7-8 лет хорошо ложится программирование: ООП, алгоритмы. У нас в школе 2-3 классы (в 95-96 по-моему) был экспериментальный курс про алгоритмы, про ООП (это совсем просто! экземпляры, наследния, виртуальные функции при правильной подаче элементарно понимаются детьми, даже проще алгоритмов). Ложилось легко, но мне повезло, что я тогда же в С++ начал ковыряться. Объективно говоря, без практики программирования курс был бестолковый для тех, кто не мог пробовать программировать.
Впервые столкнулся с ЭВМ в 7 лет в 1986 году. Тогда же написал первую программу на странном языке который назывался Автокод. Через 5 лет был спектрум с его бейсиком и асемблером. В результате программирование стало профессиейю
Сам я начинал программировать с микрокалькулятора БЗ-34 классе в шестом. Но тогда я не относился к этому занятию серьезно, считал вспомогательным. Но на первом курсе я заметил, что программировать на C под Unix получается легко и приятно, а физика понимается с трудом…
В конце концов перешел на функциональные языки, но путь к ним был непростой.
Я считаю, что неправильно учить детей популярным технологиям вроже питона и джаваскрипта — для того, что бы закрепиться на рынке и хорошо влиять на мозги требуются разные свойства. Школьников стоит учить использовать декларативным средствам, типа STM solver и языку Prolog для решения головоломок, обычныхшкольных задач, и решения повседневных проблем, типа планирования. Это даст навык формализации проблемы, что значительно важнее умения алгоритмизировать и кодировать. Для обучению алгоритмизации лучше использовать какте-нибудь рафинированные, ограниченные по возможностям средства — тот же МК-52 и игры с управлением роботом простыми командами. А к ООП делей приучать не надо, оно только кажется простым, а на самам деле плохо работает без хорошего владения логикой.
После того как увидел собственными глазами, что 4-о классник среди 9-11 классов взял диплом второй степени на олимпиаде МФТИ по информатике, я не удивился, что все это написал человек 9 лет. Так держать!
> Это большой недостаток школьной программы.
И сколько человек в классе считают так же? :-) Мой сын, например, жалуется, что ему скучно на уроках математики. Но он занимает призовые места на матолимпиадах, а его одноклассники с трудом понимают школьную программу.

Это классно, что ты так любишь программирование, но в жизни часто приходиться самому находить путь для себя. Например, мой сын ходит на занятия по математике в университет, куда раз в неделю собираются такие же гики как он.
Я, в свое время, прочитав в газете заметку о подобных курсах для школьников, сказал родителям, что буду туда ходить. Позже пришел к ним и попросил перевести меня в матшколу. В городской библиотеке меня не хотели пускать из-за возраста, но потом мы нашли решение: оформили билет на маму и она написала разрешение использовать ее билет — а через месяц меня просто узнавали в лицо.
У тебя много возможностей: ты живешь в большом городе, у тебя есть интернет, но главное есть стремление. Ищи курсы, книги и прочее — а родители тебя обязательно поддержат.
Насчёт того, что нужно информатику преподавать раньше, я возможно соглашусь. Но ранее обучение программированию может тяжко обойтись для школьника. Сам я начинал изучать программирование в 5-ом классе. Чуть позже перешёл на олимпиадное. И в 8-ом уже пошёл в физмат школу с углубленным обучением программированию.

Я глубоко благодарен преподавателю, который меня начал там обучать, о котором уже рассказывалось в одной из статей на хабре. Ведь он не просто рассказывал, как делать программы, а объяснял как правильно писать. Тогда мои устои пошатнулись, ведь то, как я привык писать за 3 года, оказалось совершенно неправильно. Я на своей шкуре познал, что учить школьника легко, но переучивать трудно.

Он был резко против олимпиадного программирования, как основное направление изучения данного предмета, т.к. на нём учат решать задачи, строить алгоритмы, развивают логику и математический аппарат, но никак не готовят писать хорошие программы корпоративного уровня. Там вам дадут знания для того, чтобы реализовать алгоритм Ахо-Карасик, но не объяснят подводные камни с конструктором копирования. Однако совмещать олимпиадное программирование наоборот крайне полезно.

Суть того, что я хочу сказать, что обучать нужно сразу правильно. При этом у нас достаточно мало преподавателей, которые это умеют. Обычно дают задачу и способ её решения, а после этого пишите. Особенно в университете. Мои глаза обливались кровью, когда я видел код, написанный моими знакомыми в Мехмате МГУ. 20 переменных в начале функции main, из которых используются только 5. А зачем? Потому что вдруг понадобятся. И это для них абсолютная норма. Несмотря на то, что никто из них не хотел становится программистом, можно видеть уровень преподавания.
То, что уже у младших школьников должны быть возможности для изучения программирования — это правильно, но вот включать программирование в программу начальных классов — очень спорно. Далеко не всем это будет полезно, а кому-то может привить страх перед компьютером. Да, хороший педагог такого не допустит, но где взять этих хороших педагогов?
Понравился грамотный человеческий русский язык автора.
У меня появился собственный (вернее, в семье) компьютер в 20 лет. Жалею ли я, что он не появился раньше?
Нет, нет, нет. Скучно не было.

У любой деятельности есть тёмные углы… и последствия этой деятельности, тоже не всегда светлые.

Спасибо за PHP Devel Studio, не слышал никогда, попробую.
Автор молодец! Желаю тебе успеха в развитие в этом направление, главное не забрасывать это дело, пусть тебя не пугают трудности — они есть как и в любом деле.
Выше поднималась проблема для рано начинающих детей — скука.
Помимо нее есть другая проблема — социализация. «Умник» — не самая приятная роль в школе. Дальше больше. Общество не желает принимать излишне раннего индивида. На словах могут выражать радость и удивление. На практике отношение как к редкостной диковине, которой место на полке в музее.
Как следствие плохой социализации часто идет замыкание на любимом занятии, что влечет за собой проблемы со здоровьем (что характерно, независимо от характера любимого занятия, будь то спорт или программирование).
Так что в свете вышеперечисленного польза раннего обучения информатике в школе еще под большим вопросом. Большинство будет просто забивать на обучение, концентирируясь исключительно на играх (исключительно в качестве игроков). Обучаемое меньшинство будет обречено на роль «умников».

Еще один момент. Обычно считается, что программирование — это математическая дисциплина. Так-то оно так, но есть большая доля лингвистики. Так что по факту для овладения программированием на достаточно высоком уровне нужно не забывать про языки (родной, английский, можно еще некоторое количество, желательно из разных языковых групп с отличающейся грамматикой) и литературу. Это очень важно для умения грамотно формулировать задачу и строить алгоритмы, поскольку все это завязано на способность внятно формулировать свои мысли. Разнообразие изучаемых иностранных языков не только расширяет информационное поле, но и дает навык быстрого понимания сути нового способа изложения мыслей, к которым вполне можно отнести не только иностранные языки, но и языки программирования.
За статью, лайк, но вот с тезисом я не согласен. До 5-7 лет ребёнку нужно помимо физического развития, что чаще проходит естественным образом, развивать и мозг, а это делается не с помощью информатики, а скорее иностранных языков, чтения книг, рисования, развития геометрического мышления и абстрактного (я вообще не понимаю, почему в школе арифметика и алгебра идут раньше в освоении, чем геометрия?). Информатика же сушит и узкоспециализирует мозги, а это в таком возрасте не нужно.
Согласен с Вами.
Первую программу я написал в 16 лет. Считаю, что ничего не мешает начать хоть в 5 лет. Сейчас дети растут сразу окруженные технологиями
В прошлом году довелось принять участие на защите работ лицеистов лицея 1533, куда меня пригласил как представителя Wolfram Research, научный руководитель лицея, просто потрясающий человек и учитель, Александр Гиглавый. Побывав там я понял, что действительно от возраста мало что зависит. Ребята «вытворяли» совершенно фантастические вещи: от программирования клеточных автоматов и слежения за их эволюционным развитием до создания 3D-космических игр и систем управления отоплением для отдельного дома. Думаю, что таким ребятам, как автору статьи, будет очень полезно попробовать поступить в этот лицей (возможно у кого-то найдутся еще предложения).
Школу терпеть не мог, информация подавалась сухо и неинтересно, алгебра и геометрия казались инопланетным языком, еле вышел с тройкой из школы.
Недавно понадобилось научиться программированию игр. Каково же было удивление, когда вся эта инопланетная мутотень вдруг стала полезной и интересной, все эти косинусы и синусы, и вычисление расстояния между точками, и нахождение точки пересечения линий…
Из-за этого убеждён, что алгебру и геометрию надо преподавать только через разработку игр.

А статья — тест Тьюринга школьника прям.

Автор, с вхождением в мир кода возникали мысли, что «и это всё, чего смогло добиться человечество за 70 лет программирования?!», что многое можно сделать лучше, что нужен вообще другой подход, и вообще желание создать собственный язык? Есть идеи?
>>> Кстати, одно ограничение все-таки надо признать. Оно связано с математикой. Ее в программировании много… Но зато при освоении вместе с информатикой она перестает быть абстрактной наукой. Когда потребуется правильно расположить персонажа игры, быстро поймешь, как работать с осью координат. Когда надо будет написать программу, которая что-либо вычисляет, гораздо глубже разберешься в сути этих математических действий.
=> Это вообще ИМХО центральная проблема нашего образования. На мой взгляд, она вызвана тем что преподавать в основном идут неудачники, которые ничего не умеют и нафиг нигде не нужны. И преподавание у них заключается в следовании методичке, в результате у детей не появляется понимания — на кой черт нужно все что им рассказывают, где и зачем, и как это применяется. А потом мы имеем «Нафиг мне математика, я просто хочу делать игры!» А критического мышления в этом возрасте еще нет, вся надежда на родителей, которые направят, подскажут и поддержат.

Школьные преподы там что-то истерили по поводу зарплат с премьером нашим? Молитесь своим богам, чтобы премьером не стал я — потому что всех наркоманов и колготочниц, которыми забито образование, я бы не увольнял, а судил как военных преступников за уничтожение интеллектуального потенциала страны! Вам отваливают из коршумки, т.к. государство заботится даже об убогих и старается всех пристроить к делу? Сидите и не рыпайтесь!

Для начала стоило бы изменить процесс присвоения категорий учителям так, чтобы при этом оценивались реальные знания учителя и его способность понятно и интересно объяснять, а не то что оценивается сейчас.


А там "наркоманы и колготочницы" сами пропадут.

А кто будет это оценивать и как проверять тех, кто будет оценивать?) Это замкнутый круг)

Вот когда станете премьером — вам и придется эту проблему решать. Иначе, выгнав "наркоманов и колготочниц", вы останетесь вообще без учителей — потому что нормальные учителя вылетят вместе с ними.

Есть люди которым на такое им откровенно плевать, их дети — ходят в хорошие частные школы, а на то получат ли хоть какое-то образование дети тех кого они считают «быдлом» — им плевать. Точно так же они относятся и к медицине, и всей прочей социалке.
Вам отваливают из коршумки, т.к. государство заботится даже об убогих и старается всех пристроить к делу? Сидите и не рыпайтесь!

При таком подходе качестве образования ещё упадёт, ибо как Вы сами заметили «преподавать в основном идут неудачники, которые ничего не умеют и нафиг нигде не нужны», потому что если можно заработать больше на нормальной работе, то зачем идти обучать кого-то за гроши?
Так в этом то все и дело, что системной проблеме нужно системное решение! Но по какой то необъяснимой причине, мы перенимаем с запада только самые тупые и уродские идеи! Где массовые взаимоотношения между школами и университетами/техникумами/училищами и т.д? Почему церковники, которые влезли в школу со своими основами религий обсуждаются в обществе и СМИ шире и громче, чем профориентация? До каких пор преподаватель не будет нести никакой ответственности за тех, кого он обучил?!

А то удобно получается, 11-ый класс, спасибо — до свидания, если Вася вылетел из универа на первом же семестре, он сам себе дурак. А не преподаватель, который полностью искалечил ему психику за предыдущие 11 лет и отбил вообще всякое желание учиться чему-либо!

И даже в университетах!!! Почему бы не перенять принцип, по которому профессором может стать только тот академик, у которого есть бизнес, который основан на его разработках?! Почему бы не перенять принцип, согласно которому университеты финансируются бизнесом, и бизнес получает возможность влиять на учебные программы, выставлять требования к выпускникам — чтобы получить именно те кадры, которые ему нужны в ближайшей перспективе?! Может тогда нам на метрологии читали бы хоть что-то про ГОСТы, а не бесконечные рассказы о том «как херово быть айтишником и как хорошо иметь свой винный магазинчик».

В конце-концов, почему технопарки бегают по кафедрам с рекламой своих услуг, а не кафедры ломятся в технопарки с проектами?! Может сейчас с этим получше, но когда учился я, что-то такое едва-едва начиналось в нефтегазовой и металлургической отраслях. Почему к преподаванию в УНИВЕРСИТЕТЕ допускается позавчерашний аспирант, который вчера сдал на кандидата? Кого и чему он собрался учить? Он еще ни дня по специальности в реальной отрасли не отработал!!! Этого недостаточно Карл!
> Почему к преподаванию в УНИВЕРСИТЕТЕ допускается позавчерашний аспирант, который вчера сдал на кандидата? Кого и чему он собрался учить?

Потому что кроме «позавчерашних аспирантов» никто в универ и не идет.

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

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


Программированием я увлекся классе в 8ом и, решив пару задачек, я вдруг вспомнил информатику из начальной школы и тот образ мышления, который я применял для расписывания элементарных алгоритмов. Мысль была: "Так вот для чего это нужно было!". Чертовски приятная мысль, скажу я вам.


К чему я это? Да ни к чему, просто вспомнил. По теме:


Как я понимаю, тезис данного поста — слишком мало возможностей для детей изучать программирование. Не буду говорить "раньше еще меньше было, но все равно изучали ведь!", скажу лишь то, что если вы хотите, чтобы дети изучали программирование, вам нужны преподаватели. Сейчас взрослых-то не особо обучают ему, а вы о детях. И вообще, мне кажется, что детям нужно развивать образ мышления, начиная с совсем простых вещей. Программирование — не такая уж и простая вещь по сравнению с рисованием блок-схем.
ИМХО, естественно.

Прекратите лишать своих детей детства, комментаторы! Не нужно делать из программирования цель всей жизни, хотя бы для других людей.
Как и упомянутый в статье Дж. Пол Гибсон, я начинал с ZX Spectrum 48k в возрасте 6-7 лет. Ребёнком я изучил ассемблер, о котором современные объектно-ориентированные программисты даже не имеют ни малейшего представления (как и о понятии «оптимизация кода»). Когда в школе начались уроки информатики, мой уровень знаний многократно превосходил школьную программу: я буквально доводил преподавателей до истерики тем, что шутки ради добавлял в свои «листинги» низкоуровневый машинный код, значительно расширяя возможности ущербных бейсиков, паскалей, фортранов и т.п. Помню как никто в классе не мог понять почему в моих программах все линии рисуются за долю секунды, в то время как у них прорисовка занимала много времени… (помните PLOT, DRAW?).
Что мне это дало? Как повлияло на мою жизнь? Увы, я не избрал для себя путь программиста. Но я уверен, что именно программирование с 6 лет позволило развить мой разум и умение анализировать поступающую информацию. Именно программирование развило во мне логику, сделало меня скептиком, научило не тупо зубрить, а усваивать знания (отбрасывая все лишнее). В результате я имел 5-ки в школе и университете практически по всем предметам. Физика, химия, математика, русский язык давались мне очень легко. Мой мозг как губка впитывал все интересное и это не прекратилось с возрастом. Сегодня я работаю в типографии, но при этом имею самые широкие познания во многих областях (от религии до последних изменениях в Open GL). Обожаю самовыражаться в Maya, балуюсь cо спецэффектами в Adobe After Effects, пишу код под себя в VC++. B вместе с тем сочиняю музыку на синтезаторе Yamaha, рисую, разрабатываю интерфейс для терминала обратной связи с клиентом, делаю сайт или придумываю дизайн очередного глянцевого журнала (моя специализация — полиграфия). Смог ли я быть настолько разносторонней личностью без свободы разума, что дал мне ZX Spectrum 48k в 6 лет? Я так не думаю.

Поэтому я полностью согласен, что информатика должна входить в школьную программу в 1-го класса. Потому что мы сейчас живем в информационную эру. И все остальное вторично. Любой, кто не научится жить (и чем раньше, тем лучше) в информационном обществе — обречен быть аутсайдером. Ребенка нужно обучать в первую очередь. Потому что нет никого более уязвимого неокрепшего разума ребенка. Нас окружает тонны информационной гадости и пропаганды. Посмотрите на взрослых, которые выпали из информационного потока. Они подобны дикарям, если не сказать больше. Эти обделенные знаниями (и умением получать доступ к знаниям) люди боятся всего на свете: боятся ГМО (на полном серьезе считая, что их ДНК может измениться, если они съедят ГМО), боятся СПИДа (несуществующий вирус, нарушающий все три принципа). Зато они верят в любой маркетинговый бред, потому что просто не в состоянии его проверить. И т.д. и т.п.

PS. программирование — это наука пудрить мозги тем, кто не знает что такое программирование.
боятся СПИДа (несуществующий вирус, нарушающий все три принципа)
Вы случайно не из тех, кто обнаружив у себя это продолжает трахаться со всеми без презерватива?
Безусловно, такого вируса как СПИД не существует, по той простой причине что СПИД — это синдром, болезнь и конечно он будет нарушать все возможные вирусные принципы :) Но мнение предыдущего комментатора действительно пугает.
Ваше самолюбие у меня вытекло из экрана и теперь заполняет комнату. Не оскорбления ради советую наведаться к психиатру.
Вы в другую крайность, ИМХО! Когда психиатрия начинает регулировать мировоззрение, тот тут до концлагерей рукой подать.
Нет сомнений, что Вы не знаете почти ничего о религии или знаете очень мало.
Сторонник ГМО и одновременно ВИЧ-диссидент – нетипичное сочетание. Кстати, о каких «трёх принципах» речь?
Никакие курсы не нужны и тем более дурацкие уроки информатики в школе, преподы и их курсы даже в университетах редко бывают хорошего уровня. Читать хорошие книги, смотреть как пишут другие (GitHub), писать самому.

Ps
Изучал программирование в детстве, началось с программируемого калькулятора мк61 (отец приносил с работы для расчетов), потом появился микроша (отец купил для себя, ходил на курсы Бейсика для инженеров, но я его изучил быстрее), zx спектрум (первый лично мой компьютер), изучил Бейсик, Ассемблер, Паскаль, Форт, Лисп, просил у отца брать книги с библиотеки завода по всем языкам которые о мог найти, быстро их читал, основная проблема была в том, что на спектруме компиляторы и интерпретаторы поддерживали немного другой синтаксис.
Наткнулся на такую новость.
На рассмотрение Конгресса США представлен законопроект под названием 416d65726963612043616e20436f646520, инициатором которого выступил член Палаты представителей США демократ Тони Карденас (Tony Cardenas).
Как сообщается на сайте Карденаса, название законопроекта представляет собой фразу America Can Code («Америка может программировать»), записанную в шестнадцатеричном коде. Законопроект предлагает рассматривать компьютерные языки программирования в качестве иностранных языков и предлагает ввести их изучение в школах с начальных классов (с так называемого Kindergarten — начального класса школы, в который дети в США идут в возрасте 5-6 лет).
«Само название этого законопроекта показывает, что программирование — это просто другой язык, — заявил Карденас. — Изучение иностранного языка и общение на нем оказывают огромное влияние на учащегося, как в культурном, так и в образовательном плане. Компьютерное программирование оказывает аналогичное воздействие, одновременно с этим давая возможность приобретения навыка, чрезвычайно важного в современной мировой экономике.»
Карденас также отметил, что к 2020 году в США будет ощущаться нехватка программистов: на 1,4 млн рабочих мест, связанных с программированием, будет приходиться лишь 400 тыс. выпускников вузов по этой специальности.

Articles