Pull to refresh
0
0
Александр @GiantCherry

Разработчик

Send message

Визуализация данных при отладке в Visual Studio Code

Reading time2 min
Views16K


Вообще Debugger Visualizers для обычного Visual Studio — это очень старая тема (статья 2009 года), но не очень популярная. В большинстве случаев принято учить сразу дебажить, представляя процессы в голове, а штуки вроде сортировок и списков показываются на доске. В вебе часто визуальную часть предоставляет браузер, и все всем довольны. Но бывает, что списки или деревья в голове уже не умещаются, таблицы хочется отсортировать, а графики строить не выходя из среды отладки. Для всего этого и был создан плагин для VS Code — Debug Visualizer.
Читать дальше →
Total votes 26: ↑26 and ↓0+26
Comments0

VK Open: зачем разработчику открытые платформы

Level of difficultyEasy
Reading time8 min
Views19K

Привет, Хабр! Современный IT-ландшафт трудно представить без открытых платформ, где разработчики создают, размещают и продвигают свои продукты. Айтишники могут свободно обращаться к наработкам и ресурсам больших компаний, чтобы меньшими средствами реализовывать свои идеи. 

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

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

Путь в 1000 ли
Total votes 18: ↑14 and ↓4+23
Comments4

Карточная игра на JavaScript и Canvas, или персональный Лас-Вегас. Часть 1

Reading time11 min
Views31K
Однажды на досуге я придумал карточную игру и, недолго думая, создал ее электронную версию. А потом добавил еще четыре игры, включая покер Техасский Холдем. А чтобы было еще интереснее, я встроил некое подобие прогресса: выигрываешь в одной игре – открывается новая. Запланировал я разместить свою игру в двух социальных сетях и в магазине Windows Store как html5-js приложение. А также, возможно, создать еще сборки под Android и iOs. Можно играть чрез сервер с другими людьми, а можно – офф-лайн с ИИ.

Для работы я, как всегда, не использовал никакие сторонние движки и библиотеки, даже jQuery мне не понадобилось. Только функции ванильного JavaScript, включая средства работы с холстом (canvas). Холст в игре – основа для вывода всей игровой графики. В WebGL, на этот раз, не было необходимости, поэтому зоопарк поддерживаемых браузеров расширился. Средой программирования, как обычно, стал продвинутый блокнот. Игра получилась объемом 3,8 Мб, из которых 3 Мб — это семь карт спрайтов в формате png. Запускается игра по html-файлу. Сервер на PHP. В случае выбора однопользовательской игры (то есть, с ИИ), запросы к серверу не отправляются и все расчеты ведутся на клиенте. Диздок не писал – он не нужен хипстерам.


Далее – занимательная геометрия и программирование, а во второй части будет рассказ о размещении игры в социальных сетях и в магазине.
Читать дальше →
Total votes 30: ↑28 and ↓2+26
Comments45

Игровой аппарат изнутри и снаружи. Обзор от производителя

Reading time19 min
Views92K

Котики, куда ж без них

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

Так как данная тематика слабо освещена на Хабре/GT и хотелось бы о многом рассказать, начну я все же с общей вводной статьи. Я долго думал, с какой стороны подойти к данной тематике: стандартная автобиографическая подача «как я открыл казино..» или рассказать о том, как рассчитываются барабаны и бонусы в играх, о аппаратной платформе, которая применяется в нашей индустрии, об архитектуре программ, которые мы разрабатываем, об игромании, и т.д. Но все же пусть вначале это будет мини-обзор обо всем, а я постараюсь его сделать интересным.
Много трафика под катом
Total votes 79: ↑75 and ↓4+71
Comments138

Испытываем удачу в домашних условиях

Level of difficultyMedium
Reading time9 min
Views9.9K
Приветствую всех!
Давным-давно на Хабре уже выпускалась статья «Игровой автомат изнутри и снаружи», рассказывавшая нам о том, как устроены представители последнего слова техники для денежного выигрыша. И, разумеется, мне захотелось продолжить эту тему, рассказав о том, как устроены и работают более старые подобные девайсы, куда более близкие российским пользователям.


Итак, в сегодняшней статье поговорим об игровых автоматах эпохи заката игорного бизнеса в России. Узнаем, на чём они работали, как запустить такой у себя дома и поиграть в них без риска спустить целое состояние. Традиционно будет много интересного.
Читать дальше →
Total votes 32: ↑31 and ↓1+41
Comments33

Назад в будущее: как поставить на поток документирование и анализ PHP проекта 10-летней давности

Level of difficultyMedium
Reading time15 min
Views2.9K

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

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

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

Читать далее
Total votes 5: ↑4 and ↓1+3
Comments3

Организация памяти

Reading time7 min
Views238K
За последнюю неделю дважды объяснял людям как организована работа с памятью в х86, с целью чтобы не объяснять в третий раз написал эту статью.

И так, чтобы понять организацию памяти от вас потребуется знания некоторых базовых понятий, таких как регистры, стек и тд. Я по ходу попробую объяснить и это на пальцах, но очень кратко потому что это не тема для этой статьи. Итак начнем.
Читать дальше →
Total votes 178: ↑145 and ↓33+112
Comments141

Лови мутанта! Мутационные тесты: зачем и как

Level of difficultyMedium
Reading time5 min
Views4.1K

Я очень люблю тесты и считаю, что любой код должен быть покрыт ими, желательно качественными :)  
Поэтому хочу поделиться с вами опытом внедрения мутационных тестов в проект, рассказать зачем оно нужно и какую ценность несет. Рассмотрим пример внедрения Infection в приложение на Laravel. Но сначала немного теории.

Читать далее
Total votes 10: ↑9 and ↓1+9
Comments16

Интеграция с ЕСИА v2 на Debian 11 + php 7

Level of difficultyEasy
Reading time7 min
Views5K

Передо мной была поставлена задача "чтобы посетители могли войти на сайт через Госуслуги". Задачка не новая, давно решена. На PHP для этого используют библиотеки github.com/fr05t1k/esia и github.com/ekapusta/oauth2-esia, но есть пара оговорок.

Читать далее
Total votes 8: ↑7 and ↓1+10
Comments6

Бесплатный VPN без ограничений для всех. За чей счет банкет. Часть II

Level of difficultyEasy
Reading time6 min
Views25K

В прошлом блоге я уже рассказывал о реализации бесплатного VPN в России и подробно описывал почему это нужно.

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

Мы не призываем использовать VPN в России, и точно так же не рекомендуем использовать его для посещения запрещенных в РФ ресурсов.

Бесплатный впн или за чей счет банкет
Total votes 15: ↑12 and ↓3+12
Comments63

Я пытался зарабатывать по $5 в день пассивного дохода, но вместо этого научился чему-то новому

Level of difficultyEasy
Reading time8 min
Views48K

Что такое пассивный доход?

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

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

Заманчиво, не так ли?
Читать дальше →
Total votes 60: ↑51 and ↓9+61
Comments50

Интересные трюки HTML, CSS и JS

Level of difficultyMedium
Reading time8 min
Views22K

Здесь вы найдёте небольшую подборку нестандартных вариантов использования HTML/CSS/JS. Если информация окажется полезной, будем собирать эти хаки на постоянной основе и публиковать по мере накопления.

Примечание. Некоторые трюки основаны на открытых уязвимостях браузеров и поисковой системы Google и др. Поэтому могут перестать работать в ближайшее время (или продолжат, если разработчики не признают баги и не захотят их исправлять). Другие функции работают только начиная с конкретных версий Chrome, Firefox и т. д.
Читать дальше →
Total votes 47: ↑44 and ↓3+55
Comments17

Достаточно одной К155ЛА3

Level of difficultyMedium
Reading time6 min
Views56K

Продолжая тему легендарных микросхем, нельзя обойти вниманием замечательнейшую микросхему 7400, также известную на постсоветском пространстве, как К155ЛА3.

Давным-давно, когда деревья были большими, а я ещё учился в старших классах, на меня снизошло откровение от старших товарищей, что практически любое цифровое устройство можно собрать только на микросхемах К155ЛА3. Утверждение может показаться спорным, но ничто не мешает нам его проверить.

И поможет нам в этой проверке другое откровение: «Инверсия конъюнкции есть дизъюнкция инверсий». Заодно и разберёмся, что есть «конъюнкция», что есть «дизъюнкция», и причём здесь «инверсия».
И это совсем несложно
Total votes 158: ↑153 and ↓5+191
Comments156

PHPStorm + XDebug + Docker

Reading time3 min
Views33K

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

Шагов, на самом деле, немного, все очень простые, нужно лишь...

Читать далее
Total votes 22: ↑22 and ↓0+22
Comments13

Вы любите играть в Герои 3, а ваша половинка вас: 6 карт для свиданий

Level of difficultyEasy
Reading time7 min
Views21K


После прошлого поста с подборкой хадкорных карт(Вы не умеете играть в Героев 3: 13 карт S-размера, которые вы не пройдете за вечер), из комментов узнала, что некоторые любят поиграть в альянсе со своей половинкой.

У меня в Героях 3 было идеальное свидание. Мы с 8 вечера до 8 утра сидели у меня в офисе, ели пиццу и рубились в альянсе на большой карте против злобного ИИ, который нашел себе Крылья Ангела и прятался за горным перевалом, а мы вылавливали его с Оковами Войны. Сложных боев там не было, но чувство «родства душ» от решения общей задачи возникло потрясающее.

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

  • отличаются от автосгенерированных (потому что просто надоело, хочется крафта/лора/разнообразия);
  • маленького [S] или среднего [M] размера (потому что хочется играть один вечер, а не весь вечер, всю ночь, всё утро, и ещё пару дней «чинить» режим дня);
  • с альянсом для двоих игроков (потому что разводиться после каждого PvP — так себе квест).

Я веду ламповый Telegram-канал GameDEVils и блог на Substack . Заглядывайте в гости, я делюсь там материалами про геймдизайн, разработку и историю игр ^__^
Читать дальше →
Total votes 71: ↑61 and ↓10+73
Comments21

Классические алгоритмы генерации лабиринтов. Часть 1: вступление

Reading time8 min
Views61K


Предисловие


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

Если моя статья Вам понравится, я продолжу писать о различных алгоритмах. Мы рассмотрим два самых примитивных и простых случая – генерация двоичного дерева и Сайдвиндер, который, по своей сути, просто чуть измененная версия двоичного дерева с одним заметным плюсом. ОСТОРОЖНО ТРАФИК.
Читать дальше →
Total votes 68: ↑68 and ↓0+68
Comments35

Товарищ майор в клетке или как я изолировал Яндекс Браузер (для использования СБОЛа)

Level of difficultyMedium
Reading time4 min
Views54K

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

Несколько дней назад я не смог войти в СБОЛ. Решить проблему можно двумя путями: установив себе рутовый сертификат в систему или установив Яндекс.Браузер.

Устанавливать рутовый сертификат не хотелось, а Яндекс.Браузер у нас запрещен политикой компании. Как выкрутиться с минимальными потерями и не поссориться с безопасниками - читайте под катом.

Открыть доступ в СБОЛ;drop table mortgage;
Total votes 64: ↑55 and ↓9+63
Comments242

«Чтение — всему голова!» Переводим электронные книги формата .EPUB с помощью Python

Reading time7 min
Views11K

Разберёмся что “под капотом” формата EPUB и как перевести текст, но не переводить код в книге. Познакомимся с библиотекой Ebook Lib, а также узнаем для чего нам понадобиться библиотека Beautiful Soup.

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments8

Алгоритм генерации судоку

Reading time9 min
Views137K
sudoku250title
Доброго времени суток!

Думаю, головоломка Судоку не нуждается в представлении. Многие из нас проводят за её решением достаточно много времени. Например, когда нужно убить время в дороге или просто поворочать мозги, чтобы не сохли. На хабре есть довольно много постов о решении головоломки. Но когда человек решает с десяток, а может и сотню головоломок, то найдётся пытливый ум, который задаст себе вопрос «А как же получается таблица Судоку, имеющая единственное решение? И как можно описать алгоритм для сетки 9x9?».

Приведённый алгоритм является вполне логичным. Но моей задачей было описание и реализация. Обо всём этом написано под катом.

Читать дальше →
Total votes 60: ↑54 and ↓6+48
Comments23

Как развернуть IDE для прототипирования в облаке за 5 минут?

Reading time4 min
Views4.9K

Как часто бывает: устанавливаете разные пакеты и программные модули и через время замечаете, как ОС превращается в dependency hell. С этим сценарием знаком почти каждый разработчик.

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

Под катом делимся лайфхаком, как за несколько минут развернуть IDE в облаке и подключиться к ней через браузер — без использования терминала с Vim. Сохраняйте статью в закладки: пригодится тем, кто занимается прототипированием систем.
Читать дальше →
Total votes 42: ↑41 and ↓1+50
Comments5

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity