Workout для юного программиста


Оглавление (нажмите, чтобы открыть):

Вот что значит успех: 10-летнюю девочку-программиста уже приглашают на работу в Google и Microsoft

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

С чего все начиналось

Эта история началась, когда Самайре было 8 лет. Именно в этом возрасте девочка придумала настольную игру CoderBunnyz, целью которой было обучать других детей программированию. Сама Самайра умела это делать с 6 лет.

Благодаря своему изобретению, в 2020 году малышка заняла 2-е место на конкурсе Pitchfest от Think Tank Learning, за что получила премию в размере 2 500 долларов США. Это привлекло маркетологов компании Cartoon Network, которые как раз искали образ, который бы вдохновлял молодых девушек. Ее показали в одном из их видео, и это дало старт новому витку карьеры юной изобретательницы.

Развитие карьеры

После этого Самайра Мехта начала продавать свою игру на Amazon. В одном из интервью очаровательная девочка восторженно рассказывала, что уже за первый год ей удалось продать 1000 коробок CoderBunnyz и заработать более 35 000 долларов США.

Такой успех — далеко не случайность. Работая над игрой, девочка с помощью своего отца Ракеша Мехты (инженера Intel, Oracle и Sun Microsystems alum) разработала беспроигрышный маркетинговый план.

Сейчас Мехта использует игру для проведения семинаров по программированию для детей школьного возраста. Она также выступила с инициативой «Да, миллиард детей могут программировать», что позволяет заинтересованным людям узнать о возможности жертвовать игру школам. Затем в этих школах девочка организовывает занятия, на которых помогает детям освоить игру.

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

CoderBunnyz: продолжение

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

С CoderMindz дети могут изучать основные принципы работы искусственного интеллекта: методы его тренировки, адаптивного обучения. В конце концов, они могут использовать эти навыки для создания роботов.

Эта игра была разработана совместно с братом Самайры, Аадитом. На тот момент мальчику было 6 лет, как раз в этом возрасте отец начал учить мастерству программирования и Самайру.

На пике популярности

Когда игра набрала наибольшей популярности, по словам ее изобретательницы, она была просто загружена мастер-классами в Силиконовой долине. На них побывали более 2000 детей. Целая серия из них прошла в штаб-квартире компании Google в Маунтин-Вью, Калифорния. Именно там Самайра и познакомилась со Стейси Салливаном, главным менеджером по культуре Google.

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

Между тем, Салливан и другие сотрудники Google были настолько впечатлены талантом девочки, что ее выбрали в качестве основного докладчика на конференции Diversity in Tech, состоявшейся в августе в Сан-Франциско. Помимо этого выступления, Самайра выступила и на многих других мероприятиях, организаторами которых были в том числе компания Microsoft и организация World Wide Womenearlier.

Повод для гордости

После того, как игра CoderBunnyz стала очень популярной, Самайра Мехта познакомилась с большим количеством интересных людей. По ее словам, одним из самых значительных поводов для гордости для нее является письмо от бывшей первой леди США Мишель Обамы.

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

Последние успехи

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

Практически всю свою прибыль девочка вкладывает в производство игр CoderBunnyz и CoderMindz, но у юной изобретательницы находятся средства и на благотворительность. Самайра Мехта жертвует деньги в фонд международной некоммерческой глобальной организации здравоохранения PATH, которая борется с бездомностью, что, по мнению Самайры, очень важно.

«Активные граждане» выбрали темы курсов для школы юного программиста

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

Наиболее популярным направлением оказалось 3D-моделирование — создание виртуальных трехмерных моделей, за которое проголосовали 18,35 процента горожан. Второе место заняли курсы по практической кибернетике, на которых дети смогут разрабатывать и собирать электронные устройства. Это направление выбрали 15,72 процента участников. 13,21 процента голосов получили курсы программирования для платформы Android. 11,45 процента «активных граждан» посчитали, что в школе необходимо организовать курсы по программированию игр. Замыкает пятерку лидеров программирование для платформы iOS, за которое проголосовали 11,02 процента москвичей.

Свои варианты курсов предложили 0,73 процента участников. Среди предложенных тем — веб-дизайн (HTML, CSS, Java Script), робототехника и изучение языков C++, C#, Python.

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

7 лучших приложений для обучения детей программированию

Маленькие дети легко осваивают новые языки. Хотя опыт и знания, присущие взрослым индивидуумам, являются ключом к эффективности, молодой мозг характеризуется большей податливостью. Кроме разговорных языков, детей в юном возрасте было бы здорово познакомить и с языками программирования. Программа micro:bit от компании BBC учит малышей азам кодирования, а система Kano представляет собой компьютер типа «сделай сам» (DIY) для детей, позволяющий изучить основы программирования.

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

Kodable

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

Вдобавок, переход от занятия к занятию происходит в развлекательной форме. Элементы игры проявляются в заданиях ученикам, таких как перемещение по лабиринту. Но Kodable не слишком упрощает программирование. Курс включает в себя даже такие понятия, как циклы и ветвление. Система основана на решениях условного типа (операторы if/then) в качестве первоначального представления о концепции программирования. Кроме того, Kodable делает изучение JavaScript забавным, используя игровой подход. В целом, Kodable — это эффективное средство начального уровня для обучения детей программированию.

Преимущества: Kodable имеет бесплатную версию, основанную на веб-интерфейсе. Она иллюстрирует базовые концепции программирования, такие как циклы и ветвление.

Стоимость: Бесплатная/платная версии

Платформы:

Daisy the Dinosaur

Ни для кого не секрет, что динозавры потрясают воображение. Использование в продуктах персонажа-динозавра — это рецепт, основанный на передовом опыте. Данный вывод ещё раз подтверждает программа DaisytheDino, являющаяся одним из лучших приложений для обучения детей программированию. Её мини-игры поясняют малышам основы информатики. Например, команды цикла loop-deloop побуждают учеников использовать другие операторы, чтобы заставить Daisy выполнять различные действия. Но есть одна загвоздка: использовать команду spin допускается лишь один раз. Обойти это ограничение можно путём вложения spin внутрь команды повтора repeatfive.

Daisy the Dinosaur — это одно из лучших приложений для обучения детей программированию не только потому, что оно использует образ динозавра. Хотя главный герой программы, безусловно, помогает привлечь внимание юных программистов, система предельно сфокусирована на самом кодировании и его проблемах. Кроме того, она не выглядит как технически-ориентированное ПО. На первый взгляд это просто игра, требующая решения головоломок. Несмотря на очень короткий курс (по данным CommonSenseMedia, школьникам начальных классов на его прохождение требуется всего 10 минут), система бесплатна и даёт фундаментальные знания о программировании.

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

Стоимость: Бесплатная

Платформа: iOS

Think and Learn Code-a-Pillar

Программа Think and Learn Code-a-Pillar от компании Fisher-Price предлагает уникальный бонус: это и приложение, и автономная игрушка. Практическое освоение детьми информационных технологий и программирования, безусловно, полезно, но многие часы, проведённые за экраном монитора, могут навредить здоровью малыша. Поэтому разработчики Think-LearnCode-a-Pillar объединили в нём функционал системы обучения и игрушки.

Работая с программой, юные пользователи решают головоломки, которые иллюстрируют основные концепции кодирования. Система рассчитана на маленьких детей в возрасте 3-6 лет. В то же время встроенная игрушка Code-a-Pillar независима от приложения. Некоторые из заданий могут оказаться слишком сложными для самых маленьких учеников. Поэтому лучше всего проводить занятия под присмотром взрослых. Хотя то же самое можно сказать и о возрастной группе 5-6 лет, на которую рассчитаны загадки из раздела «CandyLand». Звуковые эффекты и саундтрек можно отключить. Это полезная возможность, позволяющая ограничить воздействие отвлекающих факторов.

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

Стоимость: Платная

Платформы:

Gamestar Mechanic

GamestarMechanic — это веб-приложение, которое научит детей создавать собственные видеоигры. Малыши любят играть, поэтому создание своей игры покажется им более привлекательным, чем разработка веб-приложений или других программ. Таким образом, дизайн игры представляет собой отличное обучающее решение с огромной отдачей: получение собственной игры. Однако ориентация на разработку игр подразумевает более продвинутый уровень программирования. Не ждите от GamestarMechanic простого, развлекательного обучения, которое характерно для таких приложений, как Think and Learn Code-a-Pillar.

Для детей в возрасте 7-14 лет Gamestar Mechanic подходит идеально. Приложение имеет курс обучения, режим создания игр, а также функцию игры и обучения в игровом режиме. Последний представлен квестами: вы получаете предметы, которые можно использовать для создания игр. Эффективное общение в сообществе дополняет функционал Gamestar Mechanic, делая его исключительным инструментом для обучения кодированию подростков.

Преимущества: программа Gamestar Mechanic ориентирована на старшую возрастную группу. Создание игр — многообещающий и подающий надежды сектор, поскольку он обеспечивает идеальный переход к более продвинутому программированию.

Стоимость: Платная

Платформа: Web

Minecraft

Minecraft — это очень популярная игра. Стиль «песочницы» (англ. «sandbox»), когда правила придумывает сам игрок, делает её крайне адаптируемой. Хотя программа не разрабатывалась специально для детей, её контент представляет собой безопасную среду программирования, подходящую для всех возрастов. На интернет-блоге Lifehacker можно даже найти руководство для родителей по игре в Minecraft с малышами. Некоторые моды Minecraft написаны специально для детей (например, LearnToMod). Вы можете использовать Minecraft для того, чтобы объяснить своим чадам, что такое сервер и как настроить игровой Linux-сервер. На самом деле, Linux прекрасно подходит для детей и позволяет приобрести ценный жизненный опыт.

Однако Minecraft не рассчитана на аудиторию из самых маленьких учеников. Для них взрослым придётся выполнить ряд первоначальных настроек. После того как они будут сделаны, через LearnToMod будет доступен набор знаний в области программирования, которые очень легко усвоить. Программа активно обсуждается в интернет-сообществе. Ввиду большого числа дополнительных приложений, Minecraft является более дорогой. Тем не менее, она содержит множество учебников, способствующих развитию навыков программирования в реальном мире. Версия MinecraftPi представляет собой отличную среду, которую можно использовать как мод Minecraft для детей.

Преимущества: моды, такие как LearnToMod с уроками и инструкциями, обучают детей навыкам кодирования.

Стоимость: Платная

Tynker

Tynker является отличным приложением. Его название созвучно со словом «мастерить» (англ. «tinkering»), что подразумевает необходимость приложить руки к работе. В целом, Tynker преподаёт программирование блестяще. Как и многие приложения для обучения детей информатике, программа пытается захватывающе преподносить материал. Платформа может похвастаться небольшим выбором заданий. Дети могут программировать роботов и беспилотные самолёты, моды для Minecraft, создавать приложения и игры или проводить научно-технические и инженерно-математические исследования (STEM).

Прежде чем перейти к изучению Python и JavaScript, детям предлагается начать осваивать кодирование при помощи визуальных блоков. Но на каждом этапе программирование сосредотачивается на проектах, что увлекает учеников и ориентирует их на результат. Поскольку, прежде чем перейти к реальному коду, Tynker даёт уроки с визуальными блоками, его метод обучения можно считать очень доходчивым. Всеобъемлющая среда с разбивкой на уровни, соответствующие степени знаний и мастерства, делает приложение одним из лучших среди систем обучения детей программированию. Вы также можете рассмотреть аналогичную программу Scratch, которую разрабатывает Массачусетский технологический институт (MIT).

Преимущества: программа бесплатная, но имеет платные уровни. Tynker позволяет детям реализовать интересные проекты и растёт вместе с их навыками.

Стоимость: Бесплатная/Платная

Платформа: Web

Nancy Drew: Codes & Clues – Mystery Coding Game

NancyDrew: Codes&Clues – MysteryCodingGame (Нэнси Дрю: коды и подсказки – загадочная игра для программистов) предлагает игровую форму обучения. Более того, она включает в себя отдельную тему STEM со своим главным героем.

Прохождение игры не вызывает сложностей и является эффективным инструментом обучения. В ней есть рассказ о технической ярмарке с загадкой, которую нужно решить. В процессе игры дети перетаскивают блоки визуального кода в подходящие для них места. Некоторые мини-игры требуют подбора костюмов. Эксперты Common Sense Media дали Nancy Drew: Codes & Clues оценку 3/5 за её обучающие возможности и 4/5 за лёгкость игры. Ещё одно приложение для изучения основ программирования — Goldieblox: Adventuresin Coding от компании The Rocket Cupcake – также ориентировано на STEM. Благодаря сбалансированному геймплею, NancyDrew является одним из лучших программных решений для обучения детей программированию.

Преимущества: Интуитивно понятный интерфейс, захватывающий геймплей и темы STEM.

Стоимость: Платная

Платформа: iOS/Android

Лучшие программы для обучения детей программированию

Хотя программирование может показаться невероятно сложным, лучше начать его изучение ещё в детстве. Эти программы для обучения детей программированию предлагают захватывающие возможности для достижения цели. Microsoft и её программа KoduGameLab сохраняют лидерство, оставаясь на переднем рубеже технологий для освоения кодирования.

Почему программирование в 5 лет – это реально

«Давайте учить детей программированию! – призывает в своих выступлениях Митч Резник, профессор Лаборатории Медиа Массачусетского Технологического Института. – Это вид творчества, позволяющий выразить мысли и чувства, доступный человеку любого возраста». Чем раньше ребенок начнет заниматься кибер-творчеством, тем более гармоничной личностью он вырастет – считают эксперты IT. Как ребенку начать «кодить» самостоятельно, и во сколько обойдется обучение программированию с репетитором или в обучающей студии?

Советы юных программистов

Владислав Осин увлекся программированием, наблюдая, как папа-айтишник разрабатывает сайты для заказчиков и дает консультации по программированию детям своего шефа. Мальчику было 11 лет, но он сразу понял – хочет работу как у папы. «Сначала я просто учил языки для создания простой веб-страницы. Потом начал изучать уже язык посерьезней – PHP, – делится Влад, – это язык для «оживления» сайта, который делает страницы динамичными». Влад говорит, что его родители не заплатили за обучение ни рубля – что-то черпал из недр интернета, где-то помогали папа и друзья — юные программеры, с которыми Влад объединился для взаимопомощи: «Программировать я начал на wisdomweb.ru – это сайт для начинающих. Учился на бесплатных видеоуроках, потом мне пришла идея – создать небольшую команду подростков, интересующихся программированием. Я нашел ребят, и мы вместе начали выпускать некоторые простые продукты – сделали блокнот, калькулятор». Влад считает, что любой человек может найти себя в программировании, потому что в этой сфере есть все: «Я – уже не программист, а 3D Character Artist (создатель 3D моделей). Благодаря этому, меня начали просить делать модели – я сделал фигурки киберспортсменов. Моя цель – работать в известной компании по 3D, например Blizzard или Аэроплан». Увлекаться книгами по программированию юный эксперт не советует – во-первых, информация в книгах быстро устаревает, во-вторых, лучше практики быть не может ничего.

Увлечение математикой – с 4 лет, первый язык программирования – в 6, криптография – в 7, первая собственная программа – в 8, программа-предсказатель природных катаклизмов – в 12. И это все – Света Иванова, вдобавок ко всему попавшая в Книгу рекордов России и Европы как самый титулованный и юный программист. Будущее Света собирается связать с биоинженерными технологиями – мечтает разрабатывать продукты, полезные людям.

14-летнего Егора Лифаря называют вундеркиндом: он – золотой медалист Всероссийской Олимпиады школьников по информатике. Однако, сам Егор предпочитает называть себя трудоголиком: мальчик говорит, чтобы достичь успеха, надо много заниматься – математикой, геометрией и программированием. И начать нужно как можно раньше.

Во всем мире – бум курсов и школ программирования для детей и подростков. В Америке обучение детей ведется в школах, в летних лагерях, и даже детских садах, где азы коддинга постигают 5-летние малыши. В Англии, Франции и Испании программирование – уже обязательный школьный предмет. С 2013 году в младшей и средней школе Польши действует программа «Мастера Кодирования». В Японии программирование собираются ввести в начальной школах в 2020 году. В России информатика включена в перечень обязательных уроков, однако, на деле преподается не везде, а если преподается, то зачастую весьма поверхностно и посредственно.

Обучение – в игровой форме

«Я играл в «Цивилизацию» и спустился вниз к своему отцу сказать, что из Гарварда пришло письмо…» – компьютерные игры в восприятии многих родителей – зло, от которого ребенка нужно оберегать. Однако, автор вышеуказанной фразы Марк Цукерберг как, видимо, и его родители уверены в обратном. Именно игровые методики «затягивают» детей и подростков в программирование «на раз»: обучают, развлекая, мотивируют, исключая рутину, в равной степени развивают логику и творческое начало ребенка.

Мастер Йода рекомендует:  Как правильно задавать вопросы, или Проблема XY

Денис Голиков, автор учебников по программированию для детей, советует детям и подросткам «стартовать» со Scratch – яркого, увлекательного и невероятно доступного языка программирования. Все, что необходимо юному «кодеру» – это умение читать, считать и фантазировать: «Мой сын, который занимался Scratch в 1 и 2 классах, до сих пор не утратил этого заряда креативности – он занимается в ИЗО-студии, рисует удивительные картины, занимает первые и призовые места на городских олимпиадах по всем школьным предметам» — делится Денис Голиков. Чтобы создать динозавра или робота, снежинку или котика, а потом управлять ими, нужно разобраться с углами и градусами, построить алгоритм действий – тут и математика, и геометрия, и развитие творческого мышления, и приобретение навыков планирования. «Для создания сложных проектов необходимы знания практически по всем школьным предметам. Занятия программированием не только улучшают логическое мышление, но и развивают креативность и любознательность. Ведь Scratch – не только программирование, программа позволяет рисовать и создавать музыку», – подтверждает Денис Голиков.

Программирование, наряду со знанием английского языка, уже называют необходимым навыком образованного человека. Эксперты говорят, что многие профессии будущего потребуют знаний в сфере IT: роботостроитель, редактор интерактивных книг, биоинформатик. В докладе Всемирного экономического форума «The Future of Jobs 2020» утверждается, что главные технологии будущего – скоростной мобильный интернет, искусственный интеллект и облачные технологии. Денис Голиков считает: «Переизбытка программистов не появится. Эта отрасль очень бурно развивается, и в наше время программировать должен уметь любой специалист с высшим образованием. Постоянно появляются новые направления АйТи, и будут появляться, поэтому без работы в 21 веке программист точно не останется».

Где учиться?

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

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

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

«Мой сын занимается с репетитором. Скоро один сможет. Фигачит этапы, как семечки».

«Школа «коддинг» — супер! На первом же занятии делали сайт. Второй курс — будет музыкальное программирование. И по цене – доступно. 4000 рублей за 4 субботы по 3 часа».

Учиться можно онлайн – есть программы, бесплатные и доступные для понимания совсем малышам и детям возраста 5-10 лет. Ресурсов – море, и вот лишь часть: Kodable — сервис, в игровой форме развивающий алгоритмическое мышление, который годится для пользователей, делающих первые шаги в программировании. Code.org — бесплатные уроки информатики, доступные для понимания детсадовцам и младшеклассникам. Lightbot – развлекательная площадка с главным героем – роботом, обучающим ребенка начальным этапам алгоритмики.

Для подростков ресурсов еще больше: CodeMonkey – бесплатная онлайн-игра, в которой обезьянка собирает бананы. Java Script – ресурс, позволяющий рисовать картинки. CeeBot — курс уже для подростков, которые смогут поуправлять роботами, уничтожающими фауну планеты. CodeCombat – игра – путешествие за кристаллами.

Можно включить в образовательный минимум ресурс www.kpolyakov.spb.ru, который поможет в изучении таких языков как Delphi и Python. Проект Younico – авторские онлайн-курсы по различным направлениям. «Фоксфорд» – онлайн-школа для учеников 5-11-х классов: Python, java и Android; введение в С/С++, 8-11-е классы. Цена онлайн-курсов – от 0 до 5000 рублей в месяц в зависимости от направления и уровня сложности.

Действительно «сильная» подготовка, как говорят эксперты, при профильных вузах: ИТМО, ЛЭТИ, Бауманка и МФТИ. Обычно выпускники таких школ, уже обучаясь, пробуют силы на олимпиадах и впоследствии имеют серьезный бонус при поступлении на профильные факультеты. Цена курсов – в среднем около 5000 рублей в месяц.

Алексей Костырев, программист и репетитор по программированию, объясняет, на что обратить внимание при выборе: «Не надо ориентироваться на рейтинги из интернета – сеть чистят специальные люди. Первое: не торопитесь оплачивать абонемент на полгода-год, пусть ребенок отучится месяц и выскажет свое мнение. В группе не должно быть больше 8-10 детей, иначе индивидуальный контакт с каждым учеником будет минимальным. А индивидуальная работа должна быть, поскольку скорость обучения у всех детей разная. Никакой теории, никаких записей в блокноты – только проекты. И главное – ребенку не должно быть скучно, рутинно, как в обычной школе».

Еще и еще один вариант начать обучения, правда, доступен он только детям, живущим в небольших провинциальных городках – пригласить к себе группу «Кружок». С 2020 несколько неравнодушных программеров из Москвы и Питера во главе с Александром Братчиковым колесят по городам и весям с благородной миссией – увлечь детей программированием. Город Воткинск, село Глазок, деревня Сардаял – программисты-благотворители считают: это дети мегаполисов выбирают курсы из сотен предложений, а у детей из городков и деревень выбора нет совсем, им нужно помогать. Приезжают ребята на две недели, встречаются со всеми желающими в кафе, ДК или даже школе, и вместе работают над проектами. Александр Братчиков рассказывает: «Начинать надо с очень простого и яркого, чтобы был вау-эффект, чтобы увлечь – тогда не бросят, будут сами заниматься. Вот есть такой Коля из Вязьмы – он вышел уже на серьезный уровень после нашего отъезда, делает сложные программы, и мы продолжаем общаться. Так что интерес заронить можно даже за несколько дней».

Мнение педагога

Мы живем в цифровую эпоху, когда гаджеты от компьютеров и смартфонов до планшетов стали неотъемлемой частью нашей жизни. Даже маленькие дети в наши дни используют приложения в телефоне для игры, чувствуя себя как рыба в воде в мире цифровых технологий. С течением времени дети становятся все более технически подкованными, поэтому нет никаких причин, по которым они не могут изучить основы программирования с самого раннего возраста. Это позволяет не только развить навыки аналитического программирования, но и поможет им понять, хотят ли они стать программистом в будущем.

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

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

Бери и делай: как прокачаться в программировании и разработке

Как понять, что есть проблема

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

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

  1. Ваш код плохо понимают коллеги, а если приходится вносить в него изменения, то все ломается.
  2. Вы сами боитесь приближаться к чужому коду и править его.
  3. Вы слишком долго решаете возникающие в работе проблемы, а написание кода для вас – это борьба, а не удовольствие.
  4. Вам не интересно, а страшно учить новые языки программирования.
  5. Вы с трудом объясняете свои задачи коллегам-технарям и совсем не знаете, как говорить о работе с гуманитариями из маркетинга.

Узнали себя хоть в одном пункте? Вам нужно срочно что-то менять.

Первые шаги к решению

Понимание проблемы – уже хорошо. Но наскоком прокачку навыков не взять. Начнете вы с энтузиазмом, но быстро выдохнетесь, а вместе с этим остановится и ваш рост. Блогер-разработчик из Facebook Joma Tech считает, что для постоянных изменений каждому нужна система. Рассказываем по пунктам, как ее выстроить.

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

Кто-то советует выделить 20% рабочего времени на развитие, кто-то считает, что хватит 15 минут в день. Джома говорит о том, что для формирования привычки нужно 3 недели. Определите, сколько времени вы можете уделять учебе ежедневно и не отступайтесь минимум 21 день.

Фиксируйте большие цели, пилите их на маленькие подцели и до достижения каждой устанавливайте свой срок. Будет хорошо, если об этом плане узнают другие люди – например, тимлид, который готов поставить вас на новый проект. Ответственность это хороший мотиватор.

Где в онлайне прокачаться

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

Курсы и материалы

Bento – учебные материалы по 80 языкам программирования.

Code School – курсы по разработке, программированию, работе с данными, кибер безопасности и многому другому. Можно оценить текущий уровень навыков и настроить план обучения.

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

Lynda – сервис от команды Linkedin с кучей видео-курсов по разным языкам программирования.

Safari Books Online – онлайн-курсы с преподавателем, материалы для изучения самому или в команде.

Coursera – программы российских и мировых университетов онлайн, большой выбор, есть бесплатные курсы.

Confreaks.tv – видео и презентации с мировых ИТ-конференций. Не можете летать – смотрите и учитесь из дома.

Сервисы для тренировок

Hacker Rank – тренировки, обучалки и задачки по выбранным вручную скиллам. Есть даже подготовка к интервью, если вы проседаете в этом.

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

Code Chef – много программистских задачек для разного уровня знаний, можно читать чужие решения. Есть ежемесячные челленджи.

Exercism – бесплатный сервис для тренировки на 48 языках программирования. После выполнения задания можно разобрать его с наставником.

Coding Bat – задачки для практики кода на Java и Python.

Leet Code – можно тестировать, отлаживать и писать проекты онлайн на 14 языках программирования.

Code jam – онлайн соревнования от Google с решением алгоритмических головоломок в несколько раундов. Тех, кто проходит в финал, ценят в крупных международных компаниях.

Project Euler – регулярные челленджи, на которых нужно решать математические и программистские проблемы.

Hacker Earth – реальные задания от компаний, среди которых IBM, Amazone, Adobe и другие. Можно пробовать решать задачи самостоятельно, а можно объединяться в команды.

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

Игры и интерактив

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

Codin Game – игры на 25 языках программирования.

Code Combat – обучение информатике и программированию через игры для взрослых и детей. Сайт переведен на русский, интерфейсы в играх на английском.

Mimo – мобильное приложение, в котором можно в легкой форме прокачивать языки от HTML до C#.

Grasshopper – мобильное приложение, которое через игры учит основам JavaScript.

Swift Playgrounds – сервис для прокачки навыков разработки под IOS с играми, задачками и головоломками.

WarriorJS – игра для изучения скриптов веб-разработки. Будете, используя JavaScript, помогать своему герою-воину пройти через препятствия.

Code Cards – виртуальные карточки, под рубашкой которых вас ждут задачи на HTML, CSS, JavaScript, Ruby and Rails. Каждый язык содержит 53 карточки с заданиями – можно выбрать один или перемешать.

Что ещё поможет вам расти профессионально

Если перерыть весь интернет (что я и сделала) и опросить практиков кода на тему «как прокачаться», то все сведется к списку из 5 советов.

В прокачке хард скиллс не стоит забывать еще и о следующих 3 вещах:

  1. Читайте техническую литературу. В книгах описаны основы, которые нужно знать, а иногда не мешает и перечитать. Возможно, с новым опытом вы иначе увидите фундаментальные истины.
  2. Изучайте чужой код. Open-source решения и открытые библиотеки – это богатство опыта. Читайте код лучших инженеров, пытайтесь понять, почему он написан так, а не иначе. А потом попробуйте повторить – написать изученный код с нуля самому. Принципы хорошего программирования улягутся в голове незаметно, но прочно.
  3. Участвуйте в офлайн событиях. Хакатоны, митапы и соревнования – все это активизирует мозг и учит искать решение проблем в стрессовых ситуациях и в сжатые сроки. Горящий дедлайн на работе вас больше не испугает.

А если вам не наплевать на софт скиллс, то:

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

В итоге

Постоянное развитие поможет стать продуктивным и дорогим специалистом, а главное – развеет рутину. А может, вы станете тем самым супер-программистом, который работает как 10 обычных? В любом случае пусть это будет бонусом, а не целью.

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

Игровая разработка для детей

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

Слишком юный возраст – это сколько?

Наверное, самый распространённый вопрос. Сколько лет должно быть мне (или моему ребёнку), чтобы знакомиться с игровой разработкой? Ответить на него невозможно, поскольку все дети разные. На самой нижней ступени (при использовании подходящих инструментов) по-настоящему заинтересованный 6-летний новичок уже может достичь определённых успехов. На другой стороне спектра в 12 лет для этих успехов уже должно быть достаточно образовательной базы и умственных способностей. Реальный возраст получается где-то посередине.

Для начала нужно усвоить несколько критически важных вещей.

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

Второе – управление ожиданиями. Здесь мы теряем большую часть потенциальных разработчиков, независимо от возраста. Разработка игр – не самое сложное в мире занятие, но оно достаточно комплексное. Ваш ребёнок не будет в скором времени работать над масштабными современными играми, вроде Call Of Duty или NHL, не будет делать MMO-проекты. Начинать нужно с чего-то очень скромного и постепенно двигаться дальше.

Если ребёнок убеждает себя, что собирается делать новый Minecraft, его ждёт очень болезненная неудача. С другой стороны, установка «когда-нибудь я сделаю новый Minecraft» может отлично сработать. Тут очень важно понимать разницу. Как и с любым другим навыком, этот следует развивать постепенно. Попытка взяться за слишком серьёзное дело приведёт лишь к провалу и разочарованию. Для справки, сам я начал программировать лет в 8 на Atari BASIC.

Что вообще такое игровая разработка?

Здесь мы слегка углубимся в технические аспекты. Игровая разработка – обобщающий термин, подразумевающий множество навыков, направленных на создание одного большого творения. Представьте, что вы занимаетесь производством автомобилей. Одного навыка для этого недостаточно, вам нужны инженеры, дизайнеры, сборщики, тестировщики и множество других специалистов, чтобы сделать одну машину. Однако весь перечень необходимых задач может выполняться одним человеком. Есть немало успешных игр, написанных, нарисованных и выпущенных одним человеком. Впрочем, важно понимать, что это редкие случаи. Я говорю о том, что весь процесс разработки не сводится к одной задаче, их несколько. И если ребёнку по душе что-то одно, другое может и не понравиться. Важно помнить это при выборе программ, проверяя наличие образцов графики и звука, чтобы не приходилось абсолютно всё делать самостоятельно.

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

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

С видеоиграми всё точно так же. Первая задача обычно называется программированием, вторая состоит из наполнения игры графикой, анимацией, звуком и музыкой. Для всего этого требуются совершенно разные навыки, но без них, как правило, не обойтись. Наша статья сосредоточится на программировании – когда дети интересуются разработкой игр, они думают именно об этом. Если ребёнок хочет рисовать графику для игр, то скорее всего уже и так делает наброски в блокноте! И это, кстати, правильный подход, ведь разница между «художником» и «игровым художником» минимальна.

Что такое программирование?

Итак, когда речь идёт об игровой разработке, скорее всего имеется в виду программирование. Что это такое? Проще всего сказать, что это искусство объяснять компьютеру, что он должен делать. В контексте разработки игр это значит делать вещи, вроде «если игрок нажимает кнопку «вверх», сделать то» или «если здоровье падает до нуля, сделать это».

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

По большому счёту, существует три способа говорить компьютеру, что делать (зачастую дело сводится к их комбинации):

Визуальное программирование

Распространённый подход среди новичков, да и среди разработчиков вообще (к примеру, в популярном коммерческом движке Unreal Engine 4 есть интерфейс визуального программирования Blueprints). Вы формируете игровой экран, перетаскивая элементы, впоследствии связывая их подобием блок-схемы. Если ваш ребёнок мыслит визуальными образами, это лучший выбор.

Мастер Йода рекомендует:  9 вопросов для получения должности JavaScript-разработчик

Construct – один из инструментов визуальной разработки игр

Скриптовые языки

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

Пример скриптового языка LUA в библиотеке LÖVE

Этот кусочек текста указывает компьютеру загрузить изображение «whale.png» и вывести его на экран.

Традиционные языки программирования

Наконец, многие игры пишутся на традиционных языках: C++, Java, C# и других. Сразу скажу прямо, что не советую юным игроделам начинать с традиционных, или, если точнее, компилируемых языков по ряду причин.

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

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

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

IDE, библиотека, что.

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

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

IDE. Интегрированная среда разработки (Integrated Development Environment) – приложение, отвечающее сразу за множество задач. Не все описанные программы включают IDE, то есть для разных работ вам может понадобиться разный софт. Обычно среда разработки содержит текстовый редактор, язык программирования и ряд других инструментов.

Библиотека. Представьте, что это некто, делающий за вас кучу работы. Как правило, даже «простые вещи», вроде вывода на экран, не являются частью языка. Эти вещи создают другие люди, делая их доступными в виде библиотек. В некоторых случаях (в GameMaker или Construct) всё это уже собрано для вас воедино. В Lua, к примеру, вам требуется самому выбирать библиотеку. У каждого подхода есть свои плюсы и минусы. Gamemaker многое упрощает для начинающих, зато Lua позволяет сменить библиотеку на более удобную.

Спрайт. Это используемая в игре графика, например, персонаж игрока. Спрайт может быть картинкой или содержать множество анимаций. Точное значение спрайта в каждом движке своё, но в игре это всегда видимый движущийся объект. В Super Mario Brothers это Марио, черепахи, огненные шары и т.д. Сам мир при этом – небо, трубы и прочее – не обязательно состоит из спрайтов.

HTML 5. Здесь не всё может быть понятно сразу. HTML 5 – это последняя версия HTML, языка разметки веб-страниц. При загрузке сайта в браузере компьютера или телефона вы видите HTML-документ. Но HTML5 – это ещё и обобщённый термин для множества технологий, на которых держится работа веб-сайтов. Сюда входит сам HTML, CSS (ещё один язык, определяющий внешний вид страниц) и JavaScript, скриптовый язык, отвечающий за логику. Люди часто пользуются HTML, HTML5 и JavaScript как взаимозаменяемыми понятиями, хотя технически это не совсем верно. HTML5 может использоваться для создания игр, и с ним не обязательно работать в самом браузере.

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

Средства игровой разработки, подходящие для детей

Итак, переходим к непосредственной сути статьи – инструментам, способным познакомить вашего ребёнка с миром игровой разработки. Это ни в коем случае не всеобъемлющий список! В каждом пункте я расскажу, что входит в комплект программы, на примере покажу, как она работает, опишу плюсы и минусы, укажу цену, если она есть и приведу ссылки на учебную литературу. Осталось отметить один момент… каждый из вариантов может быть полезен, здесь нет «лучшего» выбора. Выбирайте на основе предпочтений вашего ребёнка. Если первый выбор не сработал, пробуйте что-то другое.

Список построен без определённого порядка.

Scratch

Это проект, финансируемый Массачусетским технологическим институтом и направленный на обучение программированию детей от 8 до 16 лет. Программа появилась на свет в 2006, и с тех пор собрала вокруг себя крупное сообщество. Особый упор делает на привлекательность для всей семьи. Для работы Scratch нужен только браузер, вы просто заходите на сайт и начинаете программировать. Scratch включен в вводный курс по компьютерным технологиям Гарварда и Йельского университета CS50. Для сохранения результатов требуется регистрация, но она простая, и даже не требует подтверждения по электронной почте.

Scratch относится к категории средств визуального программирования. Ребёнок переносит актёров на сцену и управляет ими с помощью Lego-образных блоков программирования. Блоки выступают неплохим аналогом структуры настоящих языков программирования, так что впоследствии в них будет проще разобраться. Документации доступно много, а примеров программ буквально тысячи.

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

Scratch, запущенный в Chrome

Загрузка нового спрайта

Программирование в Scratch

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

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

Scratch – это решение «всё-в-одном», для работы вам больше ничего не понадобится. В комплекте присутствует множество сцен, фонов и звуков.

Scratch абсолютно бесплатен и существует за счёт спонсорской поддержки.

Книги (да, есть на русском):

  • Первая книга юного программиста. Учимся писать программы на Scratch — Юлия Торгашева
  • Творческие задания в среде Scratch. 5-6 класс. Рабочая тетрадь — Юлия Пашковская
  • Программирование для детей. Иллюстрированное руководство по языкам Scratch и Python — Кэрол Вордерман

У Scratch есть и приложение для iPad под названием ScratchJr для детей 5-8 лет. Тоже совершенно бесплатное. Ничего не нужно покупать или скачивать, для знакомства с программой не нужно даже регистрироваться, так что Scratch можно назвать наиболее доступным вариантом из списка.

Construct2

Construct2 – ещё один движок, основанный на визуальном программировании. Игры создаются в интерфейсе с перетягиванием элементов, а логика контролируется системой событий наподобие блок-схем. Если функциональности недостаточно, можно создавать собственные плагины при помощи JavaScript, хотя это уже довольно сложно и вовсе не обязательно – Construct2 задуман так, чтобы всё управлялось событиями. Конечный результат работы представляет собой HTML5, его можно экспортировать на разные платформы, включая мобильные устройства (Android, iOS, Windows Mobile), браузеры и настольные системы.

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

По Construct2 есть много доступной документации, в том числе подробная справочная информация и руководство в формате PDF. Сообщество очень активное, за поддержкой всегда можно обратиться на форум.

Construct устанавливается на компьютер под управлением Windows. Mac на данный момент не поддерживается.

Главное окно программы

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

Позволяют быстро добавить объекту предопределённое поведение.

Встроенный графический редактор

Construct2 – это решение «всё-в-одном», для работы вам больше ничего не понадобится. С самого начала он не изобилует игровыми ресурсами, зато есть доступный для бесплатного скачивания увесистый пакет ассетов (осторожно, ссылка прямая, архив весит 38 Мб). Для платных версий предусмотрены дополнительные ассеты.

Если захотите делать свои плагины, вам понадобится JavaScript SDK (доступен бесплатно) и инструмент для редактирования текста, поскольку в Construct его нет.

Construct2 доступен в разных версиях:

  • Бесплатная версия – созданные игры можно запускать только в браузере, меньше ассетов и ряд ограничений на сложность игр. Ограничения не должны быть большой проблемой, по крайней мере, сначала.
  • Персональная версия – стоит $129, можно делать игры для iPhone, Android и настольных систем, больше звуков, музыки, спрайтов и других ассетов.
  • Бизнес-версия – по сути, то же, что и персональная, только стоит дороже и требуется к приобретению после превышения порога прибыли в $5000 (если у вас возникает такая проблема, это хорошо!).

Game Maker

GameMaker – гибридная система «всё-в-одном», объединяющая визуальное программирование с собственным скриптовым языком GML. Изначально игры работают только на Windows, но в платной версии их можно создавать и для браузеров, iOS, Android, Windows Phone и других платформ.

Программирование в GameMaker может строиться на блок-схемах на манер Construct2. Есть возможность писать код на скриптовом языке GML. Это сразу и плюс и минус. С одной стороны, это гибкая система, с другой стороны, разбираться в ней сложнее. Поскольку это собственный язык GameMaker, многие полученные навыки окажутся не столь полезны при переходе к другому средству разработки. Конечно, основные концепции программирования от языка к языку не меняются, так что это не особо серьёзная проблема.

Помимо необходимых ассетов в GameMaker есть буквально всё, что только может понадобиться, правда, качество инструментов варьируется. В дополнение к программированию вы можете самостоятельно создавать графику, звук и уровни – всё это в одном приложении. Среди игр, созданных в GameMaker есть очень успешные проекты – например, оригинальная версия Spelunky и Hotline Miami (не для детей).

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

Скриптинг (скрипт полёта пули)

GameMaker включает всё, что вам нужно, будь то редактирование кода, создание и редактирование изображений, дизайн карт или что угодно ещё. Есть в комплекте и встроенный отладчик. Правда, в стандартной версии не так уж много примеров работ. На самом деле, их вообще нет. Впрочем, благодаря активному сообществу, в сети без труда можно найти кучу примеров и уроков. Качество материалов может быть самым разным, и сами Yoyo Games ими не занимаются, так что хорошие уроки придётся ещё поискать.

С лицензиями GameMaker не всё так просто, поскольку ценовая структура поменялась, но не все материалы успели обновиться.

  • Начальная версия сильно ограничивает использование ресурсов и скриптов. Впрочем, обновление до версии Standard требует только подтверждения почты, на которую вам вышлют ключ продукта.
  • Ещё есть версия Professional за $100 с функционалом для совместной работы (вам пока не требуется). Главное отличие этой версии в том, что можно покупать отдельные модули для поддержки экспорта на другие платформы ($200 за каждую). Например, если вы хотите разрабатывать под Android и iOS, придётся в сумме заплатить $500.
  • И, наконец, версия Master со всеми доступными платформами стоит $800.

Для начинающего разработчика хватит и простой зарегистрированной версии. Если поглядываете на Professional, она нередко бывает на распродажах в Steam.

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

Lua и LÖVE

Lua – скриптовый движок, а LÖVE – библиотека для создания игр. Изначально Lua был языком программирования для «не-программистов» и быстро стал популярен в качестве скриптового языка для коммерческих игр, таких, как эти. У данного варианта есть одно большое преимущество перед, скажем, GML. Lua используется повсюду и многим знаком, так что знать его будет полезно. В плане изучения язык довольно прост.

LÖVE – это библиотека для создания игр с помощью Lua. Она предоставляет практически весь функционал, необходимый для создания 2D-игр – вывод графики, проигрывание звука, управление входными данными, загрузку файлов и т.д.

LÖVE и Lua недостаточно самих по себе, вам понадобится ещё текстовый редактор для написания и правки скриптов, софт для создания графики и записи звука, редактор карт для дизайна уровней и подобные вещи. К счастью, всё это есть в бесплатном доступе, и ниже я приведу примеры. Только скачивать всё придётся по отдельности. Вместе с LÖVE не идёт никаких ассетов, но с этим вам помогут ресурсы вроде Open Game Art и FreeSound. Опять же, всё надо скачивать самостоятельно.

Главный минус LÖVE – отсутствие поддержки мобильных платформ. В данный момент библиотека позволяет делать игры только для компьютеров, хотя в будущем обещают и мобильные устройства.

Пример кода Lua/LÖVE

Библиотека LÖVE содержит Lua, поэтому сначала идём только сюда, а потом сюда за документацией для новичков. Однако, вам ещё нужен текстовый редактор и программы для графики и звука.

Для простого набора текста есть два популярных варианта: Notepad++ и Sublime Text.

Впрочем, для разработки на Lua я бы советовал пользоваться ZeroBrane Studio – это скорее IDE с поддержкой автодополнения кода, отладки и подобных вещей. Ах, да – ещё она бесплатная.

Популярные бесплатные программы для создания графики – Paint.NET, GIMP и Inkscape, хотя у двух последних приличная кривая обучения. Также есть куда более дружелюбный редактор Krita (спасибо lg.balukation за наводку).

Для создания уровней и карт отлично подходит бесплатный редактор Tiled.

Об альтернативах – Lua в качестве скриптового языка используется во многих популярных средствах разработки, например, в Corona, Gideros и Marmalade Quick. Все они сложнее LÖVE, поэтому её я и рекомендую. Однако, они отлично демонстрируют, насколько полезным может быть знание Lua.

Lua и LÖVE бесплатны, за ZeroBrane вы платите, сколько пожелаете.

Только одна из книг описывает программирование именно на LÖVE.

Поиск материалов по библиотеке затрудняет распространённость слова love, так что добавляйте в запросы lua.

Python и PyGame

Это ещё одна комбинация языка и библиотеки. PyGame во многом похожа на LÖVE и дружелюбна к новичкам. В ней используется Python, популярный скриптовый язык, хотя он более известен в мире 3D-графики, чем в разработке игр. Часто используется IT-профессионалами для автоматизации задач, поэтому знание Python пригодится даже за пределами игровой разработки. На этом языке написано несколько известных игр.

PyGame обладает ожидаемой функциональностью, справляясь со звуком, графикой и вводом. Вам нужно позаботиться о редакторе текста и создании ассетов. Впрочем, в отличие от LÖVE, кое-какие ассеты и образцы уже идут в комплекте с PyGame.

Код Python в PyCharm

Пользуйтесь советами для LÖVE, большинство указанных инструментов помогут и тут.

Конечно, не считая ZeroBrane – в качестве аналога советую ознакомиться с PyCharm (есть бесплатная версия). Это не самый простой редактор, но вы всегда можете работать в обычном Notepad++ или Sublime Text.

Python и PyGame бесплатны. У PyCharm есть бесплатная версия.

Пишем платформер на Python, используя pygame в трех частях на Хабре.

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

К сожалению, у Python есть две версии – недостаток, уже долгие годы портящий язык. Вам нужно выбирать версию 2.x.

HTML5 и… много чего

HTML5 – не самый простой для понимания термин. HTML, по сути – язык браузеров, а Javascript – язык, позволяющий ему делать своё дело. С каждым поколением браузеров возможности создания игр для них становились всё более впечатляющими.

Javascript – интересный вариант для обучения, поскольку ваш ребёнок уже может быть знаком с веб-браузерами. Он может открыть текстовый файл, набрать какой-нибудь код, сохранить его в виде веб-страницы и играть. Очень удобный цикл обратной связи. Но тут есть и свои недостатки. Javascript – достаточно понятный язык, но всё же его сложно рекомендовать абсолютным новичкам. К тому же, особенности каждого браузера будут лишний раз всё усложнять. И, в отличие от Lua или Python, для работы с HTML существует огромное множество средств – рекомендации по ним составили бы отдельную статью подлиннее этой!

Если ребёнок заинтересован именно в разработке HTML5-игр, надо подбирать правильную библиотеку. Неплохими вариантами, предоставляющими достойную функциональность и преодолевающими заскоки некоторых браузеров, выступают Phaser и CreateJS (хотя и других буквально сотни). Обе библиотеки понятные, распространённые и снабжены доступной документацией.

По аналогии с Python и Lua, HTML5 не является интегрированным решением, однако практически в каждом современном браузере предусмотрены средства, облегчающие разработку.

Stencyl

Stencyl – это набор средств визуального программирования, именующий себя «самым простым и быстрым способом создания игр», что вполне может быть правдой! По функциональности он схож с Construct2, программируете вы, конструируя сцену и снабжая её поведениями. Это решение «всё-в-одном» со встроенным графическим редактором, хотя возможность импорта изображений тоже присутствует. Писать скрипты в Stencyl нельзя, но можно создавать расширения с помощью языка Haxe, если вам не хватает функционала программы. Впрочем, это уже может выходить за пределы текущих способностей ребёнка – в этом случае пригодятся расширения, доступные в магазине.

Stencyl работает на Windows, Linux и Mac и по умолчанию создаёт только Flash-приложения. Другие платформы, в том числе iOS и Android, доступны за отдельную плату. Программа не может похвастаться массой ассетов в комплекте, но обеспечивает быстрый доступ к ним, плюс онлайн-справка весьма хороша.

Это решение «всё-в-одном». Если вы не углубляетесь в программирование расширений на Haxe, всё, что вам нужно, уже либо есть в комплекте, либо доступно по ссылкам прямо из приложения.

  • В Stencyl можно работать бесплатно, однако результатом будут только Flash-игры. Выпущенные игры снабжаются заставкой Stencyl во время загрузки.
  • За $99 доступна версия Studio, в которой можно создавать приложения для настольных систем. Заставка Stencyl в них отсутствует.
  • За $199 можно делать игры для iOS и Android.

Lego Mindstorm

Позвольте сразу же уточнить, что это очень, очень дорогая штука. Но если ваш ребёнок интересуется робототехникой или просто ярый фанат Lego, это подходящий способ познакомить его с программированием. Mindstorm Lego – это конструктор для создания роботов. В комплекте идут программируемые блоки, задающие поведение робота. Mindstorm предлагает постепенный прогресс в обучении: сначала робот собирается из кусочков конструктора, затем можно учиться управлять им при помощи приложения (для iPad или настольных систем), а потом уже начинать программировать логику.

Lego Mindstorm позволяет как самостоятельно управлять своими творениями, так и программировать их в приложении EV3 с помощью блок-схем. Есть и инструменты, позволяющие заниматься сколь угодно низкоуровневым программированием.

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

Готовый огнедышащий дракон Mindstorm, месяц на сборку

Мастер Йода рекомендует:  Как подключить на сайт прием криптовалют Обзор сервиса PayKassa.pro

Дорого! Очень дорого!

  • Базовый набор с неполной локализацией можно найти от 22000 рублей
  • За дополнения придется заплатить еще больше
  • Из США доступен за 350 долларов плюс доставка

В электронном виде (ссылки на pdf-файлы) доступны руководство и учебный материал.

  • Конструируем роботов на Lego Mindstorms Education EV3 — Валерий Сафули, Наталия Дорожкина

Это уже не совсем «программирование игр», но определённо удобный способ знакомства со множеством навыков, которые для него нужны. И да, если бы мои родители подарили мне такое в детстве, я бы номинировал их на премию «Родитель года». Вот дочка подрастёт, куплю ей такой… хотя, может, это будет подарок для меня самого?

Особые упоминания

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

Моды для Minecraft

Если ваши дети играют в компьютерные игры, они уже могут быть знакомы с Minecraft. Моддинг – это модифицирование оригинальной игры, и в этом плане Minecraft особенно популярен. Моды могут быть удобным средством изучения программирования – или, по крайней мере, мотивировать к нему. Модами для Minecraft занимается очень много людей. Минус в том, что пишутся они на Java, а этот язык не подходит для детей младшего возраста. Впрочем, при должном интересе к игре, попробовать стоит. Узнать больше можно тут.

GameSalad

Это инструмент визуального программирования, наподобие Stencyl и Construct2. Использовался для создания коммерческих игр, доступна бесплатная версия, платные открывают доступ к другим платформам. Лично я GameSalad не пользовался.

Codea

Codea – приложение для разработки игр для iPad на самом iPad. Стоит $10, использует Lua и предоставляет собственную, простую в изучении библиотеку. Есть редактор кода, отладчик и средства для подключения к компьютеру. Можно подключиться к Mac и сделать вполне пригодную для выпуска игру. Набирать текст на iPad совсем невесело, так что беспроводная клавиатура практически необходима. Включает массу примеров и отлично подходит для детей, у которых имеется iPad (особенно, когда это всё, что у них есть).

Kodu или Project Spark

Это игра про создание игр. По факту, это игра, которую можно модифицировать, превращая во что угодно. Kodu – язык визуального программирования от Microsoft. Project Spark – модифицированная версия Kodu, вышедшая для XBox One. Это далековато от обычного программирования, но многие идеи (как и конечный результат!) те же самые.

Code Combat

Интересная концепция – браузерная игра, где персонаж управляется программированием. По мере продвижения по игре вас учат более сложным вещам. По сути, вы учитесь программировать, играя в игру. Изначально создавалась для обучения Javascript, но потом были добавлены и другие языки. Я убеждён, что она полностью бесплатна, так что вам ничего не стоит попробовать.

Alice

Alice – это средство для обучения программированию с интегрированной средой разработки. Вот собственные слова авторов:

Alice – инновационная трёхмерная среда, в которой можно без труда работать с анимацией, рассказывая истории, создавая игры или видео. Это свободно распространяемое обучающее ПО, предназначенное для знакомства учеников с объектно-ориентированным программированием. Оно учит фундаментальным концепциям программирования на примере создания анимированных роликов и простых видеоигр. В Alice виртуальный мир наполнен трёхмерными объектами (люди, животные, машины), и ученики пишут программы, с помощью которых они анимируются.

Alice поддерживается Университетом Карнеги – Меллон и абсолютно бесплатна.

RPGMAKER

RPGMaker Ace – это продукт, схожий с GameMaker, предназначенный для создания конкретного типа игр, относящихся к жанру jRPG. Его лозунг, буквально: «Достаточно простой для ребёнка, достаточно мощный для разработчика». С помощью RPGMaker сделано несколько коммерческих игр. Отлично подойдёт вашему ребёнку, если он поклонник жанра. Стоит $70, но часто бывает на распродажах в Steam.

Заключение

Конечно, я не углублялся в подробности, но зато прошёлся по большей части доступных вариантов. Если вы думаете, что стоит что-то добавить в список, дайте мне знать! Я постарался сделать статью понятной людям с любым уровнем знаний, но, разумеется, мог с этим не справиться. Если что-то непонятно, напишите. Главное, что не стоит забывать – все дети разные, и один и тот же подход работает не для всех. Выбирайте, что на ваш взгляд лучше подойдёт вашему ребёнку, и если что-то будет не получаться, знайте, что всегда есть уйма других вариантов!

Мой ребенок хочет стать программистом. Что мне нужно делать уже сейчас?

Основатель школы Digital Banana

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

Мария Конопелько, основатель школы Digital Banana, объясняет, что нужно делать в такой ситуации.

Скажу сразу, что такие родители уже могут почувствовать себя счастливчиками, ведь около 70% подростков даже в 11 классе понятия не имеют, чем хотели бы заняться в жизни. Поэтому «горящие глаза» и неподдельный интерес к какому-то делу – это действительно ценно.

При этом в случае с программированием возраст практически не имеет значения. Начинать развиваться в этой сфере можно даже в шесть лет.

С чего начать?

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

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

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

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

Онлайн или офлайн?

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

Так называемые визуальные языки программирования, среди которых популярны во всем мире Scratch, Google Blockly, направлены на тренировку логических навыков и дают общее представление о принципах программирования.

При этом за короткое время дети успевают создать свой первый проект – простейшую игру или мультфильм.

Подростков ждет выбор побогаче и знакомство со «взрослыми» языками программирования: Python, JavaScript, С#, стек веб-технологий и основы 3D. Выпускники курсов могут похвастать собственными играми, сайтами, чат-ботами, нейросетями и знанием языков программирования.

Фото: архив школы Digital Banana

Хорошим началом для освоения станет язык Python, ведь он разрабатывался как язык для обучения программированию. Если ребенок любит сложные задачи – можно осваивать классический инженерный стек: С++, java. Для тех, кому важно сразу видеть результат – подойдет фронтэнд-разработка сайтов. Если сфера ИТ привлекает, но в код лезть совсем не хочется, то можно рассмотреть дизайн интерфейсов.

Подростков, желающих разрабатывать мобильные приложения, ждут языки java, kotlin для Android и Swift для любителей яблочных гаджетов. Для поклонников компьютерных игр самым простым для входа в программирование языком станет C#.

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

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

Еще один аргумент в пользу офлайна – развитие soft skills:

  • работа в команде,
  • делегирование задач,
  • планирование,
  • презентация результатов.

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

Знакомство с ИТ-компаниями

Погружение в среду может оказать впечатляющий эффект на ребенка. Увидеть своими глазами, как на самом деле устроена работа в ИТ-компании, или попасть на стажировку к известному разработчику софта или игр – точно пункт из wish-листа вашего юного гика.

Общение с состоявшимися специалистами, да еще и на их территории, однозначно поможет с профориентацией и поддержит мотивацию кодить дальше. Попасть в ИТ-компанию не так уж и сложно. Крупные корпорации рады гостям и устраивают экскурсии для школьников. А с 2020 года регулярно приходят прямо в школы сами в специальные Дни ИТ-знаний.

Фото: архив школы Digital Banana

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

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

Как правило, такие события проводятся при поддержке крупных ИТ-компаний, технических вузов, благотворительных фондов в течение года. Кроме того, в России проходят и международные акции, направленные на популяризацию ИТ-образования среди школьников: Международная неделя Кода, Meet and Code, Час кода и другие. В период акций бесплатных мастер-классов и лекций по программированию хоть отбавляй.

Олимпиады

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

В случае с подростком участие в олимпиадах по программированию – это еще одна возможность проверить на прочность имеющиеся знания и понять, вдруг Computer Science, а вовсе не промышленное программирование в какой-то компании, это ваше «все».

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

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

За перечнем таких олимпиад можно следить тут. А еще талантливые участники попадают на радары престижных ИТ-компаний.

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

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

Хакатоны

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

Отличие, как правило, в длительности. На выполнение задания хакатона детским командам отводится шесть-десять часов.

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

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

Выбор вуза

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

Вот что значит успех: 10-летнюю девочку-программиста уже приглашают на работу в Google и Microsoft

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

С чего все начиналось

Эта история началась, когда Самайре было 8 лет. Именно в этом возрасте девочка придумала настольную игру CoderBunnyz, целью которой было обучать других детей программированию. Сама Самайра умела это делать с 6 лет.

Благодаря своему изобретению, в 2020 году малышка заняла 2-е место на конкурсе Pitchfest от Think Tank Learning, за что получила премию в размере 2 500 долларов США. Это привлекло маркетологов компании Cartoon Network, которые как раз искали образ, который бы вдохновлял молодых девушек. Ее показали в одном из их видео, и это дало старт новому витку карьеры юной изобретательницы.

Развитие карьеры

После этого Самайра Мехта начала продавать свою игру на Amazon. В одном из интервью очаровательная девочка восторженно рассказывала, что уже за первый год ей удалось продать 1000 коробок CoderBunnyz и заработать более 35 000 долларов США.

Такой успех — далеко не случайность. Работая над игрой, девочка с помощью своего отца Ракеша Мехты (инженера Intel, Oracle и Sun Microsystems alum) разработала беспроигрышный маркетинговый план.

Сейчас Мехта использует игру для проведения семинаров по программированию для детей школьного возраста. Она также выступила с инициативой «Да, миллиард детей могут программировать», что позволяет заинтересованным людям узнать о возможности жертвовать игру школам. Затем в этих школах девочка организовывает занятия, на которых помогает детям освоить игру.

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

CoderBunnyz: продолжение

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

С CoderMindz дети могут изучать основные принципы работы искусственного интеллекта: методы его тренировки, адаптивного обучения. В конце концов, они могут использовать эти навыки для создания роботов.

Эта игра была разработана совместно с братом Самайры, Аадитом. На тот момент мальчику было 6 лет, как раз в этом возрасте отец начал учить мастерству программирования и Самайру.

На пике популярности

Когда игра набрала наибольшей популярности, по словам ее изобретательницы, она была просто загружена мастер-классами в Силиконовой долине. На них побывали более 2000 детей. Целая серия из них прошла в штаб-квартире компании Google в Маунтин-Вью, Калифорния. Именно там Самайра и познакомилась со Стейси Салливаном, главным менеджером по культуре Google.

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

Между тем, Салливан и другие сотрудники Google были настолько впечатлены талантом девочки, что ее выбрали в качестве основного докладчика на конференции Diversity in Tech, состоявшейся в августе в Сан-Франциско. Помимо этого выступления, Самайра выступила и на многих других мероприятиях, организаторами которых были в том числе компания Microsoft и организация World Wide Womenearlier.

Повод для гордости

После того, как игра CoderBunnyz стала очень популярной, Самайра Мехта познакомилась с большим количеством интересных людей. По ее словам, одним из самых значительных поводов для гордости для нее является письмо от бывшей первой леди США Мишель Обамы.

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

Последние успехи

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

Практически всю свою прибыль девочка вкладывает в производство игр CoderBunnyz и CoderMindz, но у юной изобретательницы находятся средства и на благотворительность. Самайра Мехта жертвует деньги в фонд международной некоммерческой глобальной организации здравоохранения PATH, которая борется с бездомностью, что, по мнению Самайры, очень важно.

Юный программист

Объединение дополнительного образования рассчитано на обучающихся 8-9 классов 14-15 лет.

Цель реализации программы:

  • обучение, воспитание и развитие учащихся в области алгоритмизации и программирования.

Задачи программы:

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

2. Освоение и систематизация знаний, относящихся к математическим объектам информатики; построению описаний объектов и процессов, позволяющих осуществлять их компьютерное моделирование; средствам моделирования; информационным процессам в технологических и социальных системах, построению алгоритмов и компьютерных программ

3. Овладение умениями строить математические объекты информатики, в том числе логические формулы и программы на формальном языке, удовлетворяющие заданному описанию; использовать общепользовательские инструменты и настраивать их для нужд пользователя; применять алгоритмы и приёмы программирования;

4. Развитие алгоритмического мышления, способностей к формализации, элементов системного мышления;

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

6. Приобретение опыта создания, редактирования, оформления, сохранения, передачи информационных объектов различного типа с помощью современных программных средств; построение компьютерных моделей, коллективной реализации информационных проектов, преодоление трудностей в процессе интеллектуального проектирования, информационной деятельности в различных сферах, востребованных на рынке труда.

Формы и виды контроля:

— участие в предметных неделях по информатике, проектно-исследовательская , деятельность, участие в олимпиадах различного уровня.

Требования к уровню подготовки обучающихся:

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

Используемые учебники и пособия, в том числе электронные образовательные ресурсы:

  • Андреева Е.В. Программирование – это так просто, программирование – это так сложно. Современный учебник программирования. – М.: МЦНМО, 2009.
  • Авторский курс Д.П. Кириенко «Программирование на языке Питон» http://informatics.mccme.ru/course/view.php? >Количество часов для реализации программы:

Дополнительная образовательная программа «Юный программист» рассчитана на 1 год обучения, 123 учебных часа/41 учебная неделя в год. Занятия проводятся 3 раза в неделю по 45 мин./один академический час.

Тренировка мускульной памяти у программистов

Xakep #246. Учиться, учиться, учиться!

Несколько месяцев назад начал работу уникальный клавиатурный тренажёр ShortcutFoo, созданный программистами для программистов. Эта программа вырабатывает мускульную память на клавиатурные сочетания во всех программистских текстовых редакторах, а также в некоторых других программах: Sublime, Emacs, TextMate, Visual Studio, Xcode, Command Line, Photoshop, Eclipse, Gmail и проч.

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

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

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

Добавить комментарий