Как стать автором
Обновить
21
0
Игорь Выдренков @IgorV

Пользователь

Отправить сообщение

Contra – игра своего времени

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров5.6K

Многие из нас ностальгируют по временам старых консолей, когда геймплей хоть и был аркадным, но все же был непростым, вызывал челлендж, испытание, проверку себя на прочность. «А как далеко я смогу пройти в этот раз»? Обычно с такими мыслями запускалась консоль у мальчишек в РФ 90-х и США конца 80-х. И про «игру своего времени» в лице Contra 1987 г. я вам сейчас расскажу. И небольшой спойлер. То, как мы играли в эту игру, и как ее восприняли на западе (игроки и общество) это немного разные вещи.

Читать далее
Всего голосов 25: ↑22 и ↓3+30
Комментарии26

Мобильная разработка за неделю #561 (21 — 27 октября)

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров888
В этом выпуске ключевые изменения в UIKit и восстановление удаленных сообщений в Telegram, самые весёлые TODO из Android-фреймворка и короткий путь с Senior-ами, инфляция званий, сравнение доходов App Store и Google Play, Yolo на пятирублёвой монете и многое другое. Подключайтесь!

Читать дальше →
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Решение проблемы race condition в Kotlin корутинах

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров4.5K

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

Читать далее
Всего голосов 7: ↑6 и ↓1+8
Комментарии3

На самом деле, ООП — это не так уж плохо

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров9.9K

ООП — определённо не самая моя любимая парадигма, но я считаю, что в мейнстримном ООП со статической типизацией кое-что сделано правильно, и это очень важно для программирования.

В этом посте я хочу рассказать, что же самое важное реализовано в мейнстримных ООП-языках со статической типизацией.

Затем я сравню ООП-код с Haskell, чтобы показать, что ООП не так плох во всём, как, похоже, считают поклонники функционального программирования.
Читать дальше →
Всего голосов 30: ↑23 и ↓7+29
Комментарии39

«Геймифицируй это». Обзор книги Ю-Кай Чоу про геймификацию

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров2.4K

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

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

В статье расскажу как использовать приёмы  геймификации и покажу как он работает на примерах. 

Читать далее
Всего голосов 9: ↑7 и ↓2+7
Комментарии6

К чистому коду через рефакторинг

Время на прочтение13 мин
Количество просмотров4.6K
Чистые функции — это такие методы, при выполнении которых не возникает побочных эффектов. В функциональном программировании чистые функции — скорее правило, чем исключение. Но в большинстве объектно-ориентированных языков с ними приходится сталкиваться нечасто, или, как минимум, они редко считаются предпочтительным вариантом. В дотнет-среде серьёзный акцент делается на внедрении зависимостей и более-менее обширных абстракциях, использующих интерфейсы.

В данной статье будет продемонстрировано, как перейти от базы кода, характеризующейся значительной опосредованностью такого рода, к более простой версии, из которой большей частью удалена избыточная сложность.
Читать дальше →
Всего голосов 8: ↑5 и ↓3+6
Комментарии1

SOLID на котиках

Время на прочтение7 мин
Количество просмотров24K


Каждый программист хоть раз слышал о принципах SOLID. На собеседованиях и экзаменах в вузах многие из нас пытались вспомнить, о чем же был тот самый принцип Лисков. Однако вряд ли цель преподавателей и интервьюеров — заставить нас заучивать строчки из учебников. SOLID действительно помогает писать качественный код, когда во всем разберешься! Если вы этого еще не сделали, добро пожаловать под кат. Еще раз взглянем на то, как устроены всем известные принципы. Обещаю — без духоты, все рассмотрим на примерах с котиками.
Читать дальше →
Всего голосов 86: ↑80 и ↓6+89
Комментарии72

Искусственный интеллект для детей или Знакомим детей с ИИ, не перегружая их взрослыми понятиями

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров1.5K
В этой статье расскажу, как мы с ребятами из Летней компьютерной школы собирали робота с искусственным интеллектом и что из этого получилось.


Читать дальше →
Всего голосов 5: ↑5 и ↓0+11
Комментарии7

Управление проектами и задачами в Obsidian

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров13K

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

Читать далее
Всего голосов 13: ↑13 и ↓0+15
Комментарии13

Как написать D-Bus сервис, работающий на системной шине, на Rust

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров4K

Привет, Хабр! На связи Федотов Максим, ведущий разработчик в "Открытой Мобильной Платформе". В этой статье я хочу поделится нашим опытом создания D-Bus-сервиса на Rust, который работает на системной шине.

Если Вы только недавно начали изучать темы ОС GNU/Linux, Rust и D-Bus, но при этом Вам уже стало тесно в рамках простых базовых примеров и хочется зайти немного поглубже, то эта статья для Вас.

Читать далее
Всего голосов 20: ↑20 и ↓0+24
Комментарии9

Резистор — это просто. Не очень

Время на прочтение4 мин
Количество просмотров13K

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

Читать про резистор
Всего голосов 92: ↑92 и ↓0+127
Комментарии68

Путешествие в мир эмуляторов микропроцессоров

Уровень сложностиСредний
Время на прочтение24 мин
Количество просмотров11K

Всем привет!

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

Тема разработки эмуляторов олдскульных микропроцессоров типа того же Intel 8080 не нова. Если вы уже разбираетесь в вопросе, то для вас этот пост не будет чем-то новым, разве что вы увидите еще один подход к реализации такого проекта. Для тех, кто ничего об этом не слышал – прошу под кат.

Читать далее
Всего голосов 43: ↑42 и ↓1+56
Комментарии17

Чтение на выходные: «Психологический анализ The Legend of Zelda. Сюжеты франшизы как отражение игрока» Энтони Бина

Время на прочтение3 мин
Количество просмотров1.6K

Неожиданно содержательная книга с геймерской полки сегодня в рубрике. То ли аналитический разбор для фанатов известной игры, то ли учебник архетипической психологии, поданный через детали сюжета. Так или иначе, будет полезна и интересна даже тем, кто в The Legend of Zelda никогда не играл. Объясним в чем соль книги по порядку.

Читать далее
Всего голосов 6: ↑5 и ↓1+6
Комментарии3

Аргументы по умолчанию(мысли вслух)

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров2.3K

Тут сценарий такой - РАССУЖДЕНИЯ АВТОРА -> РАССУЖДЕНИЯ ЧИТАТЕЛЯ.

Поехали...

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

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

Читать далее
Всего голосов 9: ↑5 и ↓4+3
Комментарии6

История моего увлечения астрономией

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров3.7K

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

Читать далее
Всего голосов 33: ↑33 и ↓0+42
Комментарии30

Делегаты и делегированные свойства в Kotlin

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.2K

Привет, Хабр! Меня зовут Артем и я автор и ведущий YouTube канала Android Insights

Сегодня мы погрузимся в мир делегатов и делегированных свойств в Kotlin. Эта тема может показаться сложной на первый взгляд, но я постараюсь объяснить её максимально понятно и подробно. Итак, приступим!

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Комментарии1

Новый подход к безопасному управлению состояниями в Kotlin-приложениях

Время на прочтение20 мин
Количество просмотров2.5K

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

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

Читать далее
Всего голосов 6: ↑6 и ↓0+9
Комментарии0

Какие технологии быстрой зарядки бывают и чем они отличаются друг от друга

Время на прочтение6 мин
Количество просмотров6.7K

Быстрая зарядка смартфонов - это область, где инновации и инженерные решения сталкиваются с физическими ограничениями литий-ионных аккумуляторов. От USB-PD до OnePlus WarpCharge - каждая технология предлагает свой подход. Но что стоит за впечатляющими слоганами на рекламных буклетах? В этой статье мы погрузимся в технические детали различных протоколов быстрой зарядки, раскроем их принципы работы и особенности реализации. 

Читать далее
Всего голосов 11: ↑9 и ↓2+9
Комментарии14

Писать код для компьютеров сложно, ещё сложнее — писать код для людей

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров13K

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

А теперь немного усложним задачу. Будем писать код для людей!

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

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

Ричард Фейнман как-то сказал: «Представьте, насколько сложнее была бы физика, если бы электроны имели чувства». Он говорил это в другом контексте, но мне кажется, это частично описывает и программирование для людей. У человека, интерпретирующего твой код, есть чувства!

Давайте поговорим о том, как упростить ему задачу.
Читать дальше →
Всего голосов 43: ↑40 и ↓3+57
Комментарии6

Книга: «Грокаем алгоритмы. 2-е изд.»

Время на прочтение5 мин
Количество просмотров15K
image Хаброжители, привет!

Мы снова возвращаемся с вторым изданием книги “Грокаем алгоритмы”! Красивым, новеньким, актуализированным. От первого тиража всё ещё пахнет типографией, а код примеров обновлен на Python 3!

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

Читать дальше →
Всего голосов 19: ↑19 и ↓0+25
Комментарии10

Информация

В рейтинге
Не участвует
Откуда
Калуга, Калужская обл., Россия
Дата рождения
Зарегистрирован
Активность