Ко мне часто приходят с запросом: "Хотим разрабатывать игры! Так сказать направить увлечение ребёнка в мирное русло".
И тут начинаются вопросы: "Вы весь урок болтали / рисовали / пиликали! Где программирование?! Где код?!"
Мы уже говорили о том, чем занимаются программисты, и что написание кода — это лишь верхушка айсберга (если пропустили, рекомендую вернуться сюда).
Сегодня поговорим о другом:
Разработкой компьютерных игр занимаются только программисты?
Ха-ха, и так сто раз ИЛИ как говорят питонисты "Ха-ха" * 100.
Игры начинаются с сотворения мира… Кхм… Давайте по порядку.
Из идеи рождается проект.
Геймдизайнер — придумывает, что именно будет в игре: сюжет, персонажи, правила, механики, баланс. Делает так, чтобы играть было интересно.
Продюсер или менеджер проекта — отвечает за сроки, бюджет и команду. Следит, чтобы игра двигалась вперёд и не развалилась по дороге.
Бизнес-аналитик — помогает заказчику и команде понимать друг друга: превращает "хочу PUBG, но не как PUBG, а как Minecraft, но с элементами GTA V и Roblox" в конкретные задачи.
Технический лидер (Tech Lead) — опытный программист, который оценивает идею и определяет, реально ли её воплотить и какими средствами.
Формируется команда и создаются первые материалы.
Концепт-художник — рисует настроение, образы и стиль, чтобы команда понимала, какой должна быть игра.
2D/3D-художники — превращают концепты в конкретные ассеты: персонажей, предметы, локации.
Технический архитектор — проектирует структуру кода и технологий, чтобы всё было надёжно и масштабируемо. Это не про сюжет, а про фундамент игры.
Самый долгий этап, где идеи превращаются в живую игру.
Геймплейный программист — пишет код, чтобы персонажи бегали, прыгали, стреляли, взаимодействовали.
Бэкенд-разработчик — делает серверы и базы данных: мультиплеер, аккаунты, внутриигровые покупки.
DevOps-инженер — автоматизирует сборку и обновления, чтобы проект работал стабильно, даже если его пишут десятки человек.
QA-инженер (тестировщик) — ищет баги, проверяет, что игра работает так, как задумано, и фиксирует ошибки в отчётах.
Аниматор — оживляет персонажей и объекты, создаёт движения и спецэффекты.
Sound-дизайнер — делает атмосферу игры с помощью звуков и музыки.
Здесь важнее всего качество и производительность.
Продакт-менеджер / продюсер — решает, какие баги критичнее и что исправлять перед релизом.
Специалист по оптимизации — улучшает производительность: убирает "тормоза" и делает так, чтобы игра работала и на мощных ПК, и на "утюгах".
Выпустить игру — это только начало.
Маркетолог и SMM-специалист — рассказывают об игре, делают рекламу, привлекают игроков.
Аналитик — изучает поведение игроков: где застревают, что им нравится, какие внутриигровые товары покупают.
Системный администратор — поддерживает сервера, особенно в первые дни запуска, когда нагрузка огромная.
Специалист по безопасности — защищает игру и игроков от читеров и хакеров.
Итог
Над одной игрой работают десятки специалистов. У каждого своя роль, и все они важны. А ребёнку, который только начинает, полезно попробовать себя в каждой из них. Со временем станет ясно, какая профессия в геймдеве (и не только) ему подойдет. И это совсем не значит, что если у него не получаются сложные алгоритмические задачи, то дорога в разработку игр для него закрыта!
P.S.
Часто слышу: "Мой ребёнок должен уметь создавать игры от и до сам! Мы не доверяем командам".
А теперь представьте: вы приходите на работу, а коллег нет. Всё нужно делать самому. Надолго ли вас хватит? Сможете одинаково хорошо справляться с каждой профессией? Хватит ли сил и ресурсов выучить всё идеально? Оставлю эти вопросы открытыми для каждого.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥6🤓2👾1
В этом году в финал вышли 214 участников из 24 стран мира:
США, Германия, Россия, Индия, Малайзия, Индонезия, Греция, Болгария, Молдова, Япония, Босния и Герцеговина, Иран, Великобритания, Объединённые Арабские Эмираты, Финляндия, Беларусь, Тунис, Алжир, Казахстан, Ливан, Турция, Мьянма, Таиланд.
Мои ученики:
Финаков Сергей – номинация ScratchTeen (13-14 лет)
Сопин Николас – номинация ScratchTeen (13-14 лет)
Кузнецов Дмитрий – номинация ScratchYouth (15-18 лет)
Тарасов Даниил – номинация ScratchYouth (15-18 лет)
Сопин Вадим – номинация ScratchYouth (15-18 лет)
До 09:00 UTC 29 сентября ребятам предстоит пройти общий тест и выполнить два задания в Scratch: алгоритмическую задачу и творческий проект!
Мы месяц, готовились, разбирали все нюансы и тренировались на примерах прошлых лет. И всё равно утро началось с 1001 вопроса: Где появятся задания? На каком сайте? В какое время откроется доступ? А когда сдавать?
Пожелаем им удачи!
Please open Telegram to view this post
VIEW IN TELEGRAM
10🏆9🔥7👍4❤🔥2❤1🤩1
Final Results
17%
Однострочники в Python: зло или благо?
39%
Продолжение курса «Python для геймеров»
28%
Игра на Pygame
14%
Продолжение цикла «Методы строк»
14%
Викторина на Tkinter
61%
Курс по ООП
34🔥1
Людмила Колесникова
Хочу поделиться личной историей.
С ООП (объектно-ориентированным программированием) я впервые столкнулась в университете. Честно говоря, это было что-то страшное и непонятное — причём для всех. К тому же мы учили его на C++, а его сложно назвать дружелюбным языком.
Прошло время, и я возвращалась к этой теме снова и снова. Но каждый раз натыкалась на объяснения вроде:
«Слово инкапсуляция происходит от латинского in capsula. Таким образом, инкапсуляцию можно интуитивно понимать как изоляцию, закрытие чего-либо инородного с целью исключения влияния на окружающее, обеспечение доступности главного, выделение основного содержания путём помещения всего мешающего, второстепенного в некую условную капсулу.»
Согласитесь, мозг отключается уже на первом предложении
После таких формулировок хотелось просто закрыть вкладку и больше туда не возвращаться.
Теперь моя цель — создать курс, который будет понятен и детям, и взрослым.
Такой, после которого не захочется бежать от ООП как от огня.
Такой, после которого больше никто не напишет:
«Только давайте задачки не на ООП!»
Как обычно, за неделю я набросала структуру и написала первые темы. И, конечно, уже успела найти новые нюансы, которые хочется уточнить и объяснить лучше.
В общем — курсу быть!
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍15🔥12👏5❤3
Моя специализация — программирование и разработка компьютерных игр.
По образованию я компьютерный инженер, или, как говорят в народе, «тыж программист».
По просьбе хороших людей я решила разобраться с ЕГЭ по информатике — и, честно говоря, была обескуражена...
Задания ЕГЭ по информатике почти не пересекаются с тем, чем реально занимается программист, инженер или любой другой технарь.
А гуманитариям от них и вовсе мало пользы — ведь большинство изучаемых по информатике тем им никогда не пригодятся.
Недавно я проводила диагностику для одиннадцатиклассника, который давно у меня занимается.
По уровню знаний он уже заметно опережает уровень начинающего программиста: умеет создавать приложения с базами данных, сервером и гитом.
Открываем вместе 27 заданий ЕГЭ — и сразу видим: уверенно решить он может только 8.
Остальные темы для него просто незнакомы.
Логика и алгоритмическое мышление позволяют ему догадаться, о чём вообще идёт речь и что примерно нужно сделать, но уверенности нет.
Оказалось, что школьные учителя учили его действительно полезным вещам — тем, что пригодятся в жизни, — а темы, нужные для ЕГЭ, просто пропускали.
Есть и противоположная история.
Другой мой ученик занимается у учительницы, которая на информатике готовит только к ЕГЭ.
Код и комментарии, которым она учит, вызывают массу вопросов и лёгкий глазной тик... Реальное фото прикрепила к посту.
Зато ребята сдадут экзамен — правда, выучив набор шаблонов, не имеющих ничего общего с реальным программированием.
И тут возникает закономерный вопрос: кто прав?
Учителя, которые стараются, чтобы дети после школы действительно что-то умели
или те, у кого ученик сдаст ЕГЭ, но выйдет со школы с сомнительным набором знаний?
Please open Telegram to view this post
VIEW IN TELEGRAM
1😱7💯3🤨3🔥2
Людмила Колесникова
Экзамены в школе учат решать,
Им важно, чтоб сдал ты всё точно на «пять».
Ты выучил, как берут интеграл,
И как до Москвы Ломоносов шагал.
А ну-ка теперь, дорогой, милый друг,
Пройди бюрократии замкнутый круг,
Оформи ИП, заплати свой налог,
За свет, и за воду — чтоб точно и в срок.
Им важно, чтоб сдал ты всё точно на «пять».
Ты выучил, как берут интеграл,
И как до Москвы Ломоносов шагал.
А ну-ка теперь, дорогой, милый друг,
Пройди бюрократии замкнутый круг,
Оформи ИП, заплати свой налог,
За свет, и за воду — чтоб точно и в срок.
🔥9❤1
Людмила Колесникова
Буквы разные писать,
Чтоб ЕГЭ успешно сдать,
Учат в школе,
Учат в школе,
Учат в школе.
Но ни слова там, мой друг,
О портале госуслуг
Ну не учат,
Ну не учат
Это в школе.
P.S. Все же пропели, да?)
Чтоб ЕГЭ успешно сдать,
Учат в школе,
Учат в школе,
Учат в школе.
Но ни слова там, мой друг,
О портале госуслуг
Ну не учат,
Ну не учат
Это в школе.
P.S. Все же пропели, да?)
😁13👏4🔥3❤2
По многочисленным просьбам, добавила в курс новую тему:
Оператор match-case
Пока теория ещё в черновом виде и заданий немного, но суть уже видна.
Коротко: иногда сложно понять, какая ветка if-elif-else сработает - особенно если условий много:
if 6 <= hour < 12:
print("Утро")
elif 12 <= hour < 18:
print("День")
elif 18 <= hour < 23:
print("Вечер")
elif (0 <= hour <= 5) or hour == 23:
print("Ночь")
else:
print("Неверное время")
Многие же путаются с тем, какие границы включительно, а какие - нет. Например,
6 <= hour < 12 включает 6, но не включает 12.А вот вариант с match-case:
match hour:
case 6 | 7 | 8 | 9 | 10 | 11:
print("Утро")
case 12 | 13 | 14 | 15 | 16 | 17:
print("День")
case 18 | 19 | 20 | 21 | 22:
print("Вечер")
case 23 | 0 | 1 | 2 | 3 | 4 | 5:
print("Ночь")
case _:
print("Неверное время")
match-case сразу сопоставляет значение hour с набором шаблонов и выбирает подходящий вариант.
Да-да, в match-case можно добавлять и if, но тогда пропадёт вся суть сравнения.
Please open Telegram to view this post
VIEW IN TELEGRAM
Stepik: online education
Python для геймеров 2.0: базовый курс на игровых примерах
Изучайте Python на примерах популярных игр! Курс для начинающих, где вы освоите основы программирования и создадите 5 консольных мини-игр — от RPG до хоррора. Присоединяйтесь!
👍7❤🔥4🔥4❤1🙏1
Первый раздел моего курса по ООП готов! 🐱
Я даже нашла человека без опыта в ООП, который согласился пройти весь раздел прямо при мне — чтобы я сразу записывала все спорные и непонятные моменты.
Мы просидели вместе всю субботу и полдня понедельника: он проходил, а я тут же исправляла и дополняла.
Писала этот раздел больше месяца, а мой "лётчик-испытатель" справился с ним примерно за 8 часов.
А больше всего меня вдохновила его фраза:
Зато теперь я уверена, что тем, кто только начинает изучать ООП, будет всё понятно.
Я даже нашла человека без опыта в ООП, который согласился пройти весь раздел прямо при мне — чтобы я сразу записывала все спорные и непонятные моменты.
Мы просидели вместе всю субботу и полдня понедельника: он проходил, а я тут же исправляла и дополняла.
Писала этот раздел больше месяца, а мой "лётчик-испытатель" справился с ним примерно за 8 часов.
А больше всего меня вдохновила его фраза:
"Офигеть, я теперь понимаю, что тут написано!"
Зато теперь я уверена, что тем, кто только начинает изучать ООП, будет всё понятно.
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥15👍8👏2❤1
Остальные ребята пока не заняли призовых мест, но мы ещё будем подавать апелляции:
Финаков Сергей — ScratchTeen (13–14 лет)
Сопин Николас — ScratchTeen (13–14 лет)
Кузнецов Дмитрий — ScratchYouth (15–18 лет)
Сопин Вадим — ScratchYouth (15–18 лет)
А ещё мне невероятно приятно, что ребята, которые начинали изучать Scratch со мной, а теперь учатся у других преподавателей, заняли 1 и 2 место в номинации ScratchTeen! Поздравляю Зеленина Алексея и Григорьева Дениса — в прошлом году мы выступали вместе, а в этом они уже смогли показать отличные результаты самостоятельно.
Я невероятно горжусь всеми своими учениками ❤️
Только они и их родители знают, какой длинный и непростой путь мы проходим вместе.
Кто-то пришёл ко мне после неудачного опыта с другими преподавателями, кто-то начинал с того, что без помощи родителей не мог запустить программу — а теперь создаёт собственные игры и проекты.
А кто-то пару лет назад стеснялся отправить работу на конкурс, потому что “звёзды не мерцают”, а теперь сам объясняет малышам, что такое поведение недопустимо (да, да — я буду вспоминать это ещё долго!) 😉
И вот теперь они, как настоящие разработчики, провели 2 дня подряд — с утра до ночи, работая над своими проектами в финале международной олимпиады.
Умнички!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👏6👍4
Людмила Колесникова
В дополнение к предыдущему посту результаты финалистов :
🥇 Тарасов Даниил — ScratchYouth (15–18 лет) — 1 место!
Квиз: 12 / 15
Алгоритмическая: 36 / 36
Креативная: 57,2 (на 4 балла больше, чем у второго места!)
Финаков Сергей — ScratchTeen (13–14 лет)
Квиз: 15 / 15
Алгоритмическая: 12 / 36
Креативная: 52,2 (в этой задаче его обошли всего 4 участника!)
‼️ Подпишитесь на канал Серёжи ТУТ.
Сопин Николас — ScratchTeen (13–14 лет)
Квиз: 15 / 15
Алгоритмическая: 28 / 36
Креативная: 48,6
Кузнецов Дмитрий — ScratchYouth (15–18 лет)
Квиз: 12 / 15
Алгоритмическая: 36 / 36
Креативная: 41,6
Сопин Вадим — ScratchYouth (15–18 лет)
Квиз: 11 / 15
Алгоритмическая: 0 / 36 (вероятно, техническая ошибка 😔)
Креативная: 50,9
Если алгоритмическая задача Вадима будет найдена, то у него есть все шансы попасть в призовую тройку!
🥇 Тарасов Даниил — ScratchYouth (15–18 лет) — 1 место!
Квиз: 12 / 15
Алгоритмическая: 36 / 36
Креативная: 57,2 (на 4 балла больше, чем у второго места!)
Финаков Сергей — ScratchTeen (13–14 лет)
Квиз: 15 / 15
Алгоритмическая: 12 / 36
Креативная: 52,2 (в этой задаче его обошли всего 4 участника!)
Сопин Николас — ScratchTeen (13–14 лет)
Квиз: 15 / 15
Алгоритмическая: 28 / 36
Креативная: 48,6
Кузнецов Дмитрий — ScratchYouth (15–18 лет)
Квиз: 12 / 15
Алгоритмическая: 36 / 36
Креативная: 41,6
Сопин Вадим — ScratchYouth (15–18 лет)
Квиз: 11 / 15
Алгоритмическая: 0 / 36 (вероятно, техническая ошибка 😔)
Креативная: 50,9
Если алгоритмическая задача Вадима будет найдена, то у него есть все шансы попасть в призовую тройку!
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
Неизвестная история
Всем привет! Я Сергей. Это мой первый канал и не только в телеграмме, но и в моей жизни!
👍7👏3❤2🔥1🙏1
🥇 Тарасов Даниил – ScratchYouth (15–18 лет) – 1 место!
🥉 Сопин Вадим – ScratchYouth (15–18 лет) – 3 место! (+36 баллов после апелляции)
Остальные ребята в этот раз не заняли призовых мест,
но показали отличные результаты!
Финаков Сергей – ScratchTeen (13–14 лет)
Сопин Николас – ScratchTeen (13–14 лет)
Кузнецов Дмитрий – ScratchYouth (15–18 лет)
Ребята, я невероятно вами горжусь! ❤️
Please open Telegram to view this post
VIEW IN TELEGRAM
2❤🔥13👍8❤4👏1
Вы все знаете, что я собиралась выпустить платный курс, и долго ломала голову, как выбрать всего пятерых из желающих попасть на тестирование.
И вот решение: пока курс в разработке, я открываю бесплатный доступ для всех вас!
Курс сейчас ещё сырой, так как я продолжаю его писать. Буду очень благодарна, если вы поможете мне сделать его лучше.
Please open Telegram to view this post
VIEW IN TELEGRAM
1❤🔥13🔥10🙏2
Людмила Колесникова
Вы все знаете, что я собиралась выпустить платный курс, и долго ломала голову, как выбрать всего пятерых из желающих попасть на тестирование.
И вот решение: пока курс в разработке, я открываю бесплатный доступ для всех вас!
Курс сейчас ещё сырой, так как я продолжаю его писать. Буду очень благодарна, если вы поможете мне сделать его лучше.
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍14❤3🔥2
Людмила Колесникова
P.S. Всем спасибо за комментарии и правки! Вы мне очень помогаете
Please open Telegram to view this post
VIEW IN TELEGRAM
Stepik: online education
Агрегация объектов
1👍15🔥7❤1
P.S. Еще раз всем спасибо за комментарии и правки!
Please open Telegram to view this post
VIEW IN TELEGRAM
Stepik: online education
Атрибуты класса и экземпляра
👍13🔥7❤5
This media is not supported in your browser
VIEW IN TELEGRAM
Знаете, как проще всего понять, что вы выросли в своем деле?
Когда открываете старые работы и искренне удивляетесь:
Не ругайте себя - это самый надежный признак того, что вы растете и совершенствуетесь.
У меня так же. Когда я создавала курс "Python для геймеров", мне казалось, что он безупречен. Сейчас, после написания десятка новых курсов, я смотрю на него и думаю: м-да, какое большое пространство для улучшений.
И главное: не удаляйте свои старые работы. Они как дневник вашего развития. По ним видно ваш путь, вашу смелость начать и вашу способность учиться и становиться лучше.
И еще одно: лучше сделать продукт целиком, пусть даже несовершенным, чем изматывать себя излишней дотошностью и перфекционизмом. Раньше это было про меня, но теперь я хорошо понимаю, как много времени это съедало. Делаем целиком и потом совершенствуем, а не наоборот.
P.S. Еще неделю не буду отвечать на комментарии на Stepik и работать над курсом по ООП. Лежу в больнице. Предугадывая ваши вопросы - аппендицит. Но я понемногу иду на поправку.
Когда открываете старые работы и искренне удивляетесь:
"Правда? Это сделал я? Какой ужас!"
Не ругайте себя - это самый надежный признак того, что вы растете и совершенствуетесь.
У меня так же. Когда я создавала курс "Python для геймеров", мне казалось, что он безупречен. Сейчас, после написания десятка новых курсов, я смотрю на него и думаю: м-да, какое большое пространство для улучшений.
И главное: не удаляйте свои старые работы. Они как дневник вашего развития. По ним видно ваш путь, вашу смелость начать и вашу способность учиться и становиться лучше.
И еще одно: лучше сделать продукт целиком, пусть даже несовершенным, чем изматывать себя излишней дотошностью и перфекционизмом. Раньше это было про меня, но теперь я хорошо понимаю, как много времени это съедало. Делаем целиком и потом совершенствуем, а не наоборот.
P.S. Еще неделю не буду отвечать на комментарии на Stepik и работать над курсом по ООП. Лежу в больнице. Предугадывая ваши вопросы - аппендицит. Но я понемногу иду на поправку.
1❤18👍4💯4❤🔥2🤗2👎1
P.S. Уже работаю, но пока не так активно как раньше.
Please open Telegram to view this post
VIEW IN TELEGRAM
Stepik: online education
Комментарии и docstring
1👍16🔥9❤3👎2🏆1
Please open Telegram to view this post
VIEW IN TELEGRAM
Stepik: online education
Полиморфизм с параметрами
1👍13🔥11❤2👎2
И, как ни странно, все 16 шагов ушли только на разбор
__new__.Но, судя по комментариям и отзывам, именно этого и ждут.
Хочу поделиться первыми отзывами, которые подтверждают: курс движется ровно в том направлении, которое я и планировала:
Вот что пишут:
"Курс оочень классный, всё объяснено понятно и проходится комфортно.…
Жду разбор отличия __new__ и __init__ :з"
Юсуфов Ислам
"Помог освежить знания ООП...
Отлично освежил память. Кое-что совсем забыл. Кое-что не знал (хотя ранее прошёл 3 других курса по ООП - один из них весьма объёмный). Было интересно."
Konstantin Makarenko
"Моя дочь, занимается ежедневно и, что забавно, увлеклась старыми играми моего детства, которые я установил по её просьбе. Как родитель и как инженер могу сказать одно: это редкий пример качественного курса..."
Anonymous 1147650694
И немного конструктивной критики:
"Курс как вводный по ООП неплох, но слишком простой - и по сложности задач, и по объёму информации. Многого не хватает или дано поверхностно (видимо, чтобы у большинства мозг не закипел). После него, если кто-то надеется устроиться на работу, знаний не хватит…"
King of cats 😼
Сначала я была готова огорчиться из-за этого комментария, но на самом деле он идеально подтверждает, что курс делает ровно то, что должен.
Please open Telegram to view this post
VIEW IN TELEGRAM
Stepik: online education
Создание и удаление объектов. Часть 1
1👍13🔥7👎3❤🔥2❤2