Во что играют программисты
Игры для программистов, часть вторая
Прошло четыре с половиной года с тех пор, как я, пользуясь свежеполученным инвайтом, написал предыдущий хабрапост с подобным заголовком. Большой срок для игровой индустрии. Успело появиться много новых хороших игр, и недавно я ощутил настоятельную необходимость поделиться знанием о них с широкой общественностью.
Несмотря на опасность, что вновь возникнет спор относительно названия, я решил оставить его прежним, дабы сохранить преемственность. Можно воспринимать его как «игры для тех, кто имеет способность к программированию», или ещё как-нибудь в этом духе. Однако я полагаю, что вы читаете этот пост не ради рассуждений о семантике, потому перейдём к сути.
Infinifactory
Ещё одна игра от автора великолепного SpaceChem, с обзора которого начинался мой предыдущий пост. Теперь (фанфары и визги школьниц) — в 3D! В принципе, наличие третьего измерения — наиболее существенное отличие от предыдущей игры. Суть геймплея не подверглась особым изменениям: нужно брать детальки со входа, делать из них другие детальки и отправлять их на выход. Однако нельзя сказать, что Infinifactory сугубо вторична. Наличие гравитации, способы манипуляции с деталями — всё это создаёт совершенно новые задачи, не вызывая ощущения дежавю.
Отдельное удовольствие доставляет сюжет. Да, да, сюжет головоломки про создание конвейеров. Практически производственная драма… в космосе. Главного героя похитили могущественные, но довольно тупые инопланетяне, и теперь он работает для них за еду. Сюжет оказывает влияние на то, как именно называются и выглядят совокупности кубиков на входах и выходах конвейера. Думаю, вы никогда не сумеете изгладить из памяти миссию про изготовление китовых консервов. Ещё можно вспомнить прекрасный цинизм, с которым игра заставляет вас налаживать сборку камер-одиночек, полностью аналогичных той, в которой вы находитесь между миссиями. Впрочем, зачем я это пишу? Вы же наверняка уже бросили читать и пошли устанавливать игру.
Кстати, интересный факт: сходство с Майнкрафтом не случайно. Создатель Infinifactory — также автор старой малоизвестной игры Infiniminer, одним из идейных клонов которой когда-то стал Minecraft.
TIS-100
Игра того же разработчика, о которой на Хабре уже есть отдельная статья, но я всё равно напишу о ней своими словами, потому что я люблю писать, а игра того заслуживает. Если коротко, это симулятор примитивного многопоточного ассемблера, на котором вам по сюжету приходится писать разнообразные хеллоуорлды. Возможности его бедны, а в каждую ноду помещается очень ограниченное число строк, из-за чего у программиста возникают трудности, которые (я надеюсь) вряд ли встретятся в реальной работе. А чтобы жизнь не показалась мёдом, общаются ноды между собой асинхронно. Из этих трудностей рождается суть игры: ни одна нода не может целиком реализовывать сколь-нибудь сложный алгоритм, потому приходится разделять его между нодами, иногда жестоким и противоестественным способом.
Да, и там тоже присутствует сюжет. Сюжет игры про многопоточный ассемблер. Это звучит даже забавнее, чем старая шутка про Tetris: Story Mode. Суть его в том, что главному герою остаётся в наследство винтажный на вид девайс с очень странной архитектурой. Программируя его, герой восстанавливает данные из битых нод и постепенно узнаёт его историю — откуда он взялся, для чего он создан. И надо сказать, это не то знание, знакомство с которым проходит бесследно…
Human Resource Machine
А вот ещё один ассемблер. Обманчиво простой, с мультяшной графикой и «программированием мышкой». Наверное, не один ребёнок, получив в подарок «детскую развивающую» игру, в ярости сломал об колено клавиатуру, пытаясь оптимизировать решение какой-нибудь дебильно простой задачи, чтобы оно выполнялось на два такта быстрее.
На самом деле, если ребёнок не перфекционист, нацеленный на стопроцентное прохождание, то это действительно будет для него хорошей обучающей игрой. А, и ещё, если кому вдруг интересно, создатели Human Resource Machine — это те, кто сделал World of Goo.
Кстати, раз уж мы заговорили про обучающие игры…
После таких низкоуровневых вещей, как ассемблер, почему бы не… опуститься на уровень ниже? MHRD — это игра про логические элементы, в которой игрок своими, можно сказать, руками, собирает из голых NAND полноценный процессор. Причём игра подводит его к этому плавно, без резких скачков сложности. На мой взгляд, прохождение этой игры нужно давать в качестве лабораторной работы к курсам типа «Архитектура компьютера».
«Сюжет» игры незамысловат, как в старом добром немецком кино: игрока нанимает на работу корпорация MicroHard, которая хочет завоевать рынок процессоров, или что-то в этом роде. Соответственно, пока она будет завоёвывать рынок, игрок должен собрать сам процессор. Делается это с помощью своеобразного «языке программирования», на котором описываются элементы и их связи. Однажды собранный элемент можно переиспользовать в дальнейших схемах, не описывая его каждый раз заново.
К сожалению, игре не хватило совсем немного, чтобы стать истинным бриллиантом. «IDE» подтормаживает, нет возможности интерактивно поиграть с собранными элементами. Игра не великолепна, но весьма хороша.
Hack’n’Slash
Порой игроки хакают игры, чтобы упростить себе прохождение. Но что насчёт игры, в которой хаки необходимы для прохождения? Hack’n’Slash начинается с того, что главный герой (сходство которого с Линком из Legend of Zelda, разумеется, совершенно случайно) находит странный меч, оканчивающийся USB-штекером. Тыкая этим мечом в разнообразные игровые объекты, он может изменять их свойства — например, самое банальное, установить свойству «здоровье» монстра значение «0».
В дальнейшем герой находит новые артефакты, делающие другие полезные вещи — например, показывающие collision boxes всех объектов на экране. А для победы над финальным боссом необходимо модифицировать скрипты самой игры, написанные, кстати, на языке Lua. Честно говоря, графика меня немного вымораживает, но с геймплейной точки зрения игра весьма любопытна.
И раз уж мы заговорили о графике…
Untrusted —or— the Continuing Adventures of Dr. Eval
Раз уж мы заговорили о графике, то у Hack’n’Slash есть брат близнец, который приятнее мне по трём причинам. Во-первых, он бесплатный и опенсорсный. Во-вторых, он в ASCII-графике, что согревает моё сердце как человека, прошедшего оригинальный Dungeon Crawl. И в-третьих, у него под капотом JS, а не Lua — тут, конечно, дело привычки, но первый для меня уже роднее русского, а со вторым я имел дело лишь при написании мелких модов к Don’t Starve.
Игровой процесс похож на то, что происходит в самом конце Hack’n’Slash: игрок получает доступ к самому коду игры и может модифицировать отдельные его участки, что необходимо для прохождения. Игра остроумна и прекрасна; единственный недостаток её в том, что она слишком короткая.
Что ж, пожалуй, на этом всё. До встречи в третьей части, ещё через четыре с половиной года.
10 игр для программистов, которые позволят улучшить свои навыки
Планируете изучать Java, C++ или Python, но не знаете, с чего начать? А как насчёт игр для программистов?
Хотя традиционно игры ассоциируются с развлечениями, новые тенденции показывают, что геймификация может значительно улучшать скорость усвоения информации. Во многих областях знаний, в том числе и на курсах программирования, появилось множество обучающих игр.
Давайте же узнаем о том, как геймификация помогает нам лучше учиться и какие игры помогут стать программистом!
Что такое геймификация?
В буквальном смысле геймификация обозначает привнесение игровых элементов в какую-то деятельность, например, обучение, шоппинг, маркетинг или даже выполнение финансовых операций. Она может быть полной — игра как способ достижения цели, или частичной, когда игровые элементы дополняют другую деятельность.
Яркими примерами геймификации являются следующие приложения:
Как геймификация помогает изучать новые навыки?
Игра — самый естественный для человека способ обучения, и это подтверждено множеством исследований. Исследования показывают, что игровой учебный процесс демонстрирует лучшие результаты по сравнению с традиционным обучением на основе лекций, потому что именно так мы по своей природе привыкли воспринимать новую информацию. Игры, эксперименты, попытки и провалы в одиночку или вместе с друзьями всегда веселее, чем простое многочасовое чтение книг, кода или формул. Даже когда мы взрослеем, ситуация не меняется.
С другой стороны, чтение и зубрёжка — более привычный подход, который используется в школах, университетах и на работе, сложнее даётся человеческому мозгу. Однако у традиционного подхода есть свои преимущества, и поэтому всегда лучше сочетать лучшее из обеих систем.
10 лучших игр для программистов, улучшающих навыки разработки/программирования
Итак, если вы хотите совершить первые шаги в программировании самым простым и интересным способом, то какую игру выбрать или с чего начать? Давайте перечислим самые лучшие игры!
CodeGym
CodeGym — это интерактивная платформа обучения Java, содержащая более 600 мини-лекций и 1200 задач, помогающих учиться с нуля. Нужно учесть, что Java — один из самых популярных языков программирования для начинающих, поэтому CodeGym может стать отличным началом вашей карьеры.
Языки программирования: Java
Плюсы:
CodeMonkey
Code Monkey — популярная интерактивная игра-головоломка, помогающая интуитивно обучаться программированию. Она даёт базовые знания по практике кодинга, а также реальным языкам программирования, и имеет уровни с повышающейся сложностью.
Языки программирования: CoffeeScript (схож с JavaScript) и Python
Плюсы:
Code Hunt
Code Hunt — это обучающая игра Microsoft Research, позволяющая изучать языки программирования C# и Java. Это браузерное приложение. Обучающиеся проходят короткий туториал по каждой части, а затем выбирают фрагменты кода, чтобы получить нужный проходной балл.
Языки программирования: Java и C#
Плюсы:
CheckIO и Empire of Code
CheckIO — это стратегическая игра, обучающая JavaScript. Это веб-игра, позволяющая не только обучаться самому, но и использовать решения других людей для улучшения своего счёта.
Empire of Code — это новый проект CheckIO. Это игра в построение мира, позволяющая защищать свою базу, решая различные типы задач.
Языки программирования: JavaScript и Python
Плюсы:
CSS Diner
CSS Diner — это простая, но забавная игра, помогающая начать освоение селекторов CSS.
Языки: CSS
Плюсы:
CodinGame
CodinGame — это набор игр, головоломок и задач, помогающий начинающим, опытным и даже профессиональным программистам оттачивать свои навыки самым увлекательным образом, а также получать признание в сообществе.
Языки программирования: больше десятка
Плюсы:
Robocode
Robocode имеет простой интерфейс, позволяющий создавать собственные танки-роботы и участвовать в боях с другими игроками в реальном времени.
Плюсы:
CodeWars
CodeWars позволяет начать с нуля и обучиться до уровня опытного программиста. Можно улучшать свои навыки и достигать более высоких уровней. Игра имитирует японские боевые искусства под названием «ката», вам нужно будет писать код для преобразования определённых входящих данных в выходные данные. Лучше всего в CodeWars то, что она награждает ваши решения в зависимости от уровня их оптимизации, так как каждая задача имеет несколько возможных решений. Чем выше уровень сложности, тем выше ваш ранг.
Языки программирования: 29 основных и 26 дополнительных языков
Плюсы:
Cyber Dojo
Cyber Dojo похож на реальный додзё, в котором вы практикуете и совершенствуете свои навыки. Это веб-приложение позволяет программистам и командам разработчиков обдумывать используемые в кодинге практики и достигать высоких уровней навыка, а также повышать навыки кодинга.
Языки программирования: более 35 языков программирования
Плюсы:
На правах рекламы
У нас вы можете заказать облачный сервер и использовать его для обучения. Скорость интернет-канала 500 Мегабит, автоматическая установка большого количества операционных систем. Лучше один раз попробовать 😉
10 лучших игр по программированию, которые улучшат ваши навыки
Вы помните далёкие дни из детства, когда вы, проводили целый день, а иногда даже не ели целый день, чтобы поиграть в игры на Nintendo? (Ах, дни Mario и Contra. )
С того времени игры претерпели гигантские преобразования и сфера стала более обширной. Это уже не просто хобби. Сейчас в Интернете доступно множество игр, связанных с программированием, и вы можете использовать их чтобы изучить и отточить свои скилы в увлекательной форме. Более того, эти игры могут помочь вам улучшить навыки решения задач, поскольку вам нужно будет решать задачи различной сложности, а также соревноваться с другими опытными программистами по всему миру. Специально к старту новых потоков курсов Fullstack-разработчик на Python, разработка на C# и разработка на Java, в этой статье мы отобрали несколько таких игр, играя в которые можно параллельно качать и себя самого.
1. Untrusted
Приключения доктора Эвала!
В игре есть несколько уровней, таких как cellBlockA, где вы будете генерировать и удалять стены, theLongWayOut, в котором вам нужно создать новый выход, и многое другое. Игра – довольно увлекательное путешествие, если вы обладаете хорошими знаниями концепций и программирования JavaScript. Интерфейс игры выглядит так:
2. Robocode
Было бы здорово изучать программирование, и создавать боевых роботов-танков (звучит увлекательно, правда?).
3. Elevator Saga
Elevator Saga поможет вам продемонстрировать свои навыки в JavaScript в контексте программирования движения лифтов для эффективной перевозки людей. Задачи самые разные, начиная с простых: перевезти 15 человек за 60 секунд или меньше и т. д., И они постепенно усложняются. Вам нужно придумать оптимизированный алгоритм, чтобы сократить время ожидания пассажиров. Игра действительно очень полезна для работы над вашими навыками JavaScript и подходами к оптимизации алгоритмов.
Кроме того, интерфейс Elevator Saga довольно прост, всё, что вам нужно, – ввести свой код в окно ввода и нажать кнопку «Применить», чтобы начать испытание. Некоторые из примеров кода для Elevator Saga приведены ниже, чтобы дать вам общее представление:
чтобы сообщить лифту о переходе на 1-й этаж: elevator.goToFloor(1);
чтобы остановить лифт, если он движется: elevator.stop();
чтобы получить номер этажа, на котором в настоящее время находится лифт: elevator.currentFloor();
4. Vim Adventures
Если вы часто испытываете трудности с VIM, то Vim Adventures наверняка создан для вас!! Vim Adventures – это онлайн-игра, которая позволяет вам изучать горячие клавиши VIM и другие известные концепции в увлекательной и интересной форме с помощью игровой среды, подобной Zelda. Эта игра упрощает изучение и понимание мощного текстового редактора Vim, который впоследствии поможет вам стать более эффективным программистом.
В начале игры вы можете двигаться только в четырёх направлениях (влево, вправо, вверх и вниз), а по ходу игры вы сталкиваетесь с другими аспектами, такими как разговор с людьми, сбор предметов и кнопок клавиатуры и т. д. Каждая клавиша клавиатуры добавляется к набору команд, которые вы можете использовать, пока не станете экспертом в VIM. Кроме того, всякий раз, когда вы берёте клавишу, игра объясняет её предназначение для лучшего понимания.
5. CodeCombat
CodeCombat в основном рекомендуется тем людям, которые имеют небольшой или даже нулевой опыт в программировании, поскольку игра не только помогает вам практиковать свои навыки, но и обеспечивает замечательный процесс обучения в формате игры. Вы можете изучить различные языки программирования, такие как Python, JavaScript, CoffeeScript, Lua и т. д., с помощью игры. Вам нужно будет написать код на любом из этих языков, чтобы сообщить персонажу, что ему нужно делать. Более того, игра начинается с простых головоломок и задач, а затем уровень сложности постепенно растёт. И, да, в игру также включены различные обучающие программы, позволяющие овладеть синтаксисом языка.
Кроме того, CodeCombat – это проект с открытым исходным кодом, и вы можете не только учиться и играть, но и вносить вклад в исходный код, чтобы добавлять новые функции, исправлять ошибки и т. д., чтобы повысить уровень своего программирования. Что ещё нужно?
6. Flexbox Defense
flex-start: группировать элементы в начале главной оси;
flex-end: группировать элементы в конце главной оси;
center: группировать элементы в центре;
space-around: равномерно распределить элементы по главной оси так, чтобы вокруг всех элементов было равное пространство.
Есть много других свойств CSS Flexbox, которые используются в игре, такие как align-items, flex-direction, order и некоторые другие.
7. Code Hunt
Ещё игра в списке, которая может помочь вам попрактиковаться и улучшить свои навыки программирования в игровой манере, – это Code Hunt. Это игра по программированию от Microsoft Research. Игра основана на головоломках, которые вы должны изучить, используя данные подсказки и контрольные примеры. Сначала вам нужно определить шаблон, а затем написать решение. Code Hunt позволяет вам овладеть двумя известными языками – Java и C #. Игра разработана таким образом, чтобы научить вас основам этих двух языков.
Поскольку Code Hunt принадлежит Microsoft, её предпочитают миллионы студентов (и даже профессионалов) во всём мире, и, если вы с нетерпением ждёте, чтобы укрепить свои навыки владения Java или C# более увлекательным способом, вы, безусловно, можете попробовать.
8. CheckIO
Вы не поверите, что CheckIO используют учителя и инструкторы в своих учебных программах или классах, чтобы помочь учащимся отрабатывать навыки программирования. Более того, игра очень кастомизируемая, и вы всегда можете внести свой вклад в неё.
9. Screeps
Вам также необходимо знать, что написание скрипта для Screeps ничем не отличается от написания любого другого приложения JavaScript. И вы также можете разделить свои скрипты на модули с помощью синтаксиса Node.js, чтобы сделать игру более удобной.
Кроме того, вы можете использовать другие языки, такие как C++ и т. д., А также можете компилировать их с помощью WebAssembly. А также Screeps позволяет вам вносить свой вклад в разработку игрового движка и изменять поведение игровых объектов.
10. CSS Diner
Наконец, CSS Diner – игра по программированию, которая помогает вам практиковаться и совершенствовать свои навыки CSS. Игра помогает вам управлять селекторами CSS на всех 32 уровнях, включённых в игру. И уровень сложности каждого раунда повышается по мере прохождения игры. Игра состоит из различных захватывающих уровней в зависимости от нескольких важных атрибутов, таких как id, classname, empty, first-child, only-of-type и многих других. Более того, если вам нужна подсказка для решения определённого уровня, всё, что вам нужно сделать, – это навести указатель мыши на элементы в таблице и просмотреть HTML-разметку.
Игра предоставит вам лучшее понимание для выбора определённых элементов в HTML и CSS и впоследствии поможет вам перемещаться по элементам DOM, когда дело касается JavaScript. И самое приятное – то, что вы можете играть в CSS Diner в своем браузере без каких-либо затрат или хлопот, таких как вход в систему, создание учётной записи и т. д.
Также можно принять во внимание несколько других игр: Codewars, SQL Murder Mystery и Duskers. Излишне говорить, что почти каждый технический энтузиаст так или иначе склонен к играм. А с помощью упомянутых выше игр по программированию вы можете улучшить свои навыки более увлекательным и авантюрным способом. Тем не менее вам не рекомендуется идти на компромисс с продолжающимся процессом обучения и использовать эти игры в течение ограниченного времени, поскольку избыток чего-либо всегда неблагоприятен.
Если у вас есть на примете полезные игровые проекты подобные этим, но в список не попавшие — делитесь ими в комментариях!
Играми поделились, а теперь поделимся и релевантными программами обучения. Тем кому в освоении нового не хватает «крепкого плеча» ментора, которая поможет довести начатое до конца — добро пожаловать на наши программы Fullstack-разработчик на Python, разработка на C# и разработка на Java и да прибудет с вами сила.
Узнайте, как прокачаться и в других специальностях или освоить их с нуля:
Топ-25 лучших игр для программистов
Рейтинг лучших игр для программистов
SQL Murder Mystery
В SQL Murder Mystery вы примеряете на себя роль детектива и расследуете убийство в городе SQL City. Геймплей состоит в том, чтобы докопаться до правды с помощью верных запросов в базу данных. Игра подойдет и новичкам, и опытным программистам.
Какой язык прокачаете: SQL.
Цена: бесплатно.
Язык: английский.
The Deadlock Empire
The Deadlock Empire — это игра, которая поможет улучшить навык программирования на С#. Суть проста — игрок должен найти уязвимые места в многопоточной программе. И хотя разработчики дополнили игру руководством, она все еще подходит только опытным специалистам.
Какой язык прокачаете: C#.
Цена: бесплатно.
Язык: английский.
Robo code
Robo code — это браузерная игра для программистов, которая поможет улучшить навык работы с Java. В основе проекта лежит соревнование по сложности и чистоте кода. Сначала пользователь пишет код и конструирует танк. Чем грамотнее выйдет код, тем сильнее и прокачаннее он получится. После этого начнется битва с другими игроками, цель которой — уничтожить всех врагов. Побеждает тот, чей танк отказался сильнее, т. е. самый сложный и правильный код.
Какой язык прокачаете: Java, NET.
Цена: бесплатно.
Язык: английский.
Code Hero
Code Hero — это 3D-платформер от третьего лица, который поможет начать свой путь в роли разработчика на движке Unity и заняться программированием своей игры. Игрок может создавать и редактировать уровни, добавлять свои ассеты и осваивать полезные инструменты UnityScript. Обучаться можно в одиночном режиме или вместе с друзьями.
Какой язык прокачаете: JavaScript и UnityScript.
Цена: бесплатно.
Язык: английский.
Codewars
Codewars — образовательная игра, которая поможет поднять уровень знаний о программировании на разных языках. Геймплей предлагает игроку решать простые (до 10 минут) и сложные (до 1 часа) задачи, а после сравнить свое решение с результатами других пользователей. Игра помогает отработать синтаксис языка и выработать алгоритмы для решения задач. В Codewars есть рейтинг игроков: каждая решенная задача приближает пользователя к новому рангу.
Какой язык прокачаете: JavaScript, C#, Java, Python и другие.
Цена: бесплатно.
Язык: английский.
Robozzle
Эта простая игра для программистов поможет увереннее чувствовать себя при работе с JavaScript. На игровом поле в лабиринте из разноцветных кубов разложены звездочки. Игрок должен написать код, с помощью которого робот соберет их все.
Какой язык прокачаете: JavaScript.
Цена: бесплатно.
Язык: английский.
Shenzhen I/O
Эта обучающая программированию игра дает примерить на себя роль инженера и заняться разработкой электронных схем. Симулятор предлагает решать задачи и писать для них код на ассемблере, либо создавать их самому. Интересно, что для этого сперва нужно прочесть мануал на 50 страниц. Без этого игру не пройти, но положительные отзывы уверяют, что оно того стоит.
Какой язык прокачаете: знание основ ассемблера, решение сложных алгоритмических задач.
Цена: 360 руб.
Язык: английский, китайский.
Flexbox Defense
Flexbox Defense — это обучающая программированию игра, в которой пользователь должен защитить башни. Расставлять объекты на поле — сами башни и ловушки — нужно с помощью кода CSS. Игра состоит из 12 разных уровней, на некоторых из них придется вспомнить все нюансы языка. А если не выйдет, всегда можно начать заново.
Какой язык прокачаете: CSS.
Цена: бесплатно.
Язык: английский.
Codingame
Codingame — это онлайн-платформа для программистов, которая помогает специалистам по всему миру прокачать навыки в форме игры. Раз в месяц можно принять участие в онлайн-турнире, решить задачу и отправить результат в одну из компаний-спонсоров, чтобы поучаствовать в конкурсе на вакансию. В новой версии можно работать с 23 языками программирования.
Какой язык прокачаете: Bash, C, C++, C#, Clojure, D, Dart, F#, Go, Groovy, Haskell, Java и т. д.
Цена: бесплатно.
Язык: английский, французский.
Screeps
Screeps — это ММО-игра для обучения программированию. Геймплей стандартный для стратегии — развивать колонию, добывать ресурсы, расширять границы территории и защищать ее от врагов. Условие одно — это это нужно делать с помощью кода JavaScript. Игроки могут создавать альянсы и каждый месяц участвовать в соревнованиях с другими коалициями.
Какой язык прокачаете: JavaScript.
Цена: 699 руб.
Язык: английский, но есть русскоязычный фан-проект «Screeps по-русски», в котором собрана база знаний для игры.
Dungeons and Developers
Dungeons and Developers — игра для изучения программирования по мотивам культовой настольной RPG. Игрок может выбрать персонажа и шаг за шагом открывать новые языки в древе навыков. Конечная цель — изучить все навыки и стать мастером. Проходить игру можно совместно с «сопартийцами» — другими пользователями.
Какой язык прокачаете: HTML, CSS, JavaScript и т. д.
Цена: бесплатно.
Язык: английский.
7 Billion Humans
7 Billion Humans — игра для программистов, которая предлагает управлять офисом с помощью команд. Игрока ждут 60 уровней, где он должен решать алгоритмические головоломки — перетаскивать блоки скрипта — и следить, чтобы офисные сотрудники исполняли поручения начальника.
Какой язык прокачаете: решение задач по алгоритму.
Цена: 360 руб.
Язык: английский, русский.
Code Monkey
Эта простая онлайн-игра создана для новичков, которые хотят обучиться основам программирования в интерактивной форме. Игрок управляет обезьяной и собирает бананы на игровом поле с помощью команд. Под рукой пользователя всегда есть игровые подсказки, а сложность уровня постепенно становится выше. Так со временем игрок учится работать с более сложными алгоритмами.
Какой язык прокачаете: CoffeeScript и Python.
Цена: бесплатно.
Язык: английский, русский.
Vim Adventures
Vim Adventures — это игра для программистов, которая научит базовой работе с текстовым редактором Vim. Цель игрока — управлять персонажем с помощью кнопок Vim, чтобы выбраться из лабиринта. Игра делится на уровни: чем он больше, тем труднее справиться с задачей.
Какой язык прокачаете: Vim.
Цена: бесплатно.
Язык: английский.
Untrusted
Untrusted — это мультиплеерная Java-головоломка, в которой пользователь играет за хакера. Цель квеста — взломать сервер и не попасться в руки тайным агентам. Эта игра для обучения программированию помогает не только научиться работать с Java, но и размять мозг во время разработки хитрых тактик.
Какой язык прокачаете: Java.
Цена: бесплатно.
Язык: английский.
Elevator Saga
Elevator Saga — это игра-песочница для программистов, которая поможет улучшить навык работы с Java. В ходе игры пользователь управляет лифтом с помощью алгоритма и перевозит разные группы людей на время. Чем сложнее уровень — тем больше этажей и человек.
Какой язык прокачаете: Java.
Цена: бесплатно.
Язык: английский.
Colobot
Colobot — это обучающая программированию игра в жанре стратегия, которая научит работе с C++ и JavaScript. По сюжету игры пользователь должен организовать экспедицию на одну из планет, развить свою базу и уничтожить инопланетных врагов. Чтобы проходить квесты, нужно будет создавать собственных роботов.
Какой язык прокачаете: C++, JavaScript.
Цена: бесплатно.
Язык: английский.
CodeCombat
CodeCombat — это браузерная ролевая игра, которая научит игрока базовым навыкам программирования и написанию чистого кода. Есть индивидуальный и многопользовательский режимы. В первом доступна сюжетная кампания с квестами и уровнями, по мере прохождения которых задачи становятся сложнее. В мультиплеерном режиме можно посоревноваться в знаниях с реальными соперниками.
Какой язык прокачаете: Python, JavaScript, CoffeeScript, C++.
Язык: английский, русский и еще 48 языков.
Empire of Code
Браузерная стратегия Empire of Code сохранила стандартный для жанра геймплей — игрок должен наращивать мощность базы, выигрывать битвы, улучшать армию роботов и добывать золото. Игра делит пользователей на два лагеря, которые противостоят друг другу — JavaScript и Python. Каждый игрок управляет базой с помощью кода по названию своего лагеря. Стратегия подойдет и новичкам: в игре есть много подсказок, которые помогут выполнять задания.
Какой язык прокачаете: JavaScript и Python.
Цена: бесплатно.
Язык: английский
Guess This Code
Guess This Code — это обучающая игра-викторина, которая проверит, насколько хорошо вы отличаетесь языки программирования друг от друга. Правильные ответы приносят баллы — они помогают подниматься в верх рейтинга. Играть можно одному, либо посостязаться с друзьями или случайными пользователями.
Какой язык прокачаете: TypeScript, R, C++, Java, JavaScript и т. д.
Цена: бесплатно.
Язык: английский
RubyWarrior
RubyWarrior — это игра для начинающих программистов Ruby. По сюжету игрок в роли 8-битного воина путешествует в поисках принцессы и сражается с чудовищами. Только биться с опасными врагами придется не мечом, а кодом в ходе решения задач. С каждым уровнем сложность будет увеличиваться — так игра поможет разобраться с синтаксисом Ruby и научит решать нестандартные задачи.
Какой язык прокачаете: Ruby.
Цена: бесплатно.
Язык: английский
CodeFights
CodeFights — это обучающая программированию игра, в которой игроку предстоит сражаться, решая задачи. Каждый бой состоит из 3 раундов, где нужно исправить баг или дописать недостающие строки кода. За верные решения пользователь копит опыт и повышает уровень, за неправильные — теряет очки. Играть можно вместе с друзьями или случайными игроками на сервере.
Какой язык прокачаете: C++, Java, JavaScript, Python.
Цена: бесплатно.
Язык: английский
Check IO
Check IO — это игровой ресурс, который помогает наглядно изучать и практиковать TypeScript и Python. Начинающие программисты могут решать цепочки задач и получать оценки других игроков, а более опытные — делиться знаниями с другими пользователями. Некоторые компании ищут на Check IO подрядчиков для разовых задач или постоянных сотрудников, а зарубежные курсы программирования внедряют ресурс в обучение студентов.
Какой язык прокачаете: TypeScript, Python.
Цена: бесплатно.
Язык: английский
Code Hunt
Code Hunt — игра от Microsoft Research, которая проверит, насколько хорошо вы знаете свой язык программирования. В геймплей входит сборник задач разной сложности. Причем указаний, что нужно сделать, вы здесь не найдете. Игрок сам должен догадаться, какую строчку исправить, чтобы код заработал. В конце компилятор оценит чистоту кода по трехбалльной системе. Игра подходит как опытным специалистам, так и новичкам.
Какой язык прокачаете: JavaScript, C#.
Цена: бесплатно.
Язык: английский
CSS Diner
CSS Diner — это компьютерная игра для обучения программированию, которая поможет запомнить все виды селекторов CSS и основные правила верстки. Цель игрока — разместить на столе предметы с помощью команд. В игре есть 32 уровня, на каждом сложность задач немного растет.
Какой язык прокачаете: CSS.
Цена: бесплатно.
Язык: английский
Какие игры про программирование подходят детям?
Будущим программистам в возрасте от 10 лет мы советуем начать путь с игр Scratch, Code Monkey, Kodu и Tynker. Однако если ребенок заинтересован в программировании и хочет связать с ним свою жизнь, знаниям нужна структура. И в этом помогут занятия с наставником — например, на курсе программирования для детей в Skysmart.