Pull to refresh
18
0
Алексей Сторожев @storoj

User

Send message

Про решаемость пятнашек

Level of difficultyMedium
Reading time8 min
Views7.9K

Привет, я создатель известного в узких кругах приложения 15 Puzzle для Android.

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

Читать далее
Total votes 71: ↑72 and ↓-1+73
Comments46

Гайд по сплит клавиатурам

Level of difficultyEasy
Reading time31 min
Views8.5K

Этот гайд создан для тех, кто интересуется сплит клавиатурами, но еще не знаком с их особенностями и преимуществами или рассматривает переход на них. Главная цель гайда – предоставить всестороннюю информацию о сплит клавиатурах: от их истории и типов до подробного рассмотрения их конструкции, обучения слепой печати, изменения раскладки и так далее.

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

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

Царица наук: математика, беспощадная ты мука

Level of difficultyEasy
Reading time7 min
Views33K

Дайджест про то, как и зачем учить математику, 
если ты взрослый

С самых юных лет было очевидно, что я — естественнонаучник: ребёнок, выросший в семье инженеров и с неподдельным интересом обожающий всё живое, зелёное и биологическое. Дальше началось смешное: во дворе была филологическая гимназия, а чего далеко ходить... В свою очередь, гимназии нужны были олимпиадники и вот она, математика и мама с грозными задачниками, ибо в школе нас просто не учили (была вообще импортная адаптивная программа с усеченной геометрией). Для школы и вуза стараний родителей хватило, для олимпиад нет: физика шла на ура, а математика с приличным скрипом. Как я сейчас говорю, «не щёлкало». Сейчас мне 37 лет и я нет‑нет, да возвращаюсь к математике, хотя она мне точно не нужна ни в работе, ни в увлечении.

Читать далее
Total votes 71: ↑67 and ↓4+63
Comments163

Памятка пользователям ssh

Reading time13 min
Views1.5M
abstract: В статье описаны продвинутые функций OpenSSH, которые позволяют сильно упростить жизнь системным администраторам и программистам, которые не боятся шелла. В отличие от большинства руководств, которые кроме ключей и -L/D/R опций ничего не описывают, я попытался собрать все интересные фичи и удобства, которые с собой несёт ssh.

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

Оглавление:
  • управление ключами
  • копирование файлов через ssh
  • Проброс потоков ввода/вывода
  • Монтирование удалённой FS через ssh
  • Удалённое исполнение кода
  • Алиасы и опции для подключений в .ssh/config
  • Опции по-умолчанию
  • Проброс X-сервера
  • ssh в качестве socks-proxy
  • Проброс портов — прямой и обратный
  • Реверс-сокс-прокси
  • туннелирование L2/L3 трафика
  • Проброс агента авторизации
  • Туннелирование ssh через ssh сквозь недоверенный сервер (с большой вероятностью вы этого не знаете)
Читать дальше →
Total votes 360: ↑352 and ↓8+344
Comments148

Странности великих компьютерщиков, часть 1

Level of difficultyEasy
Reading time11 min
Views23K

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

О стереотипах вокруг айтишников вообще и о том, как они менялись со временем, мы поговорим в другой раз, а пока коснёмся того, какими необычными привычками знаменитые и великие компьютерщики прошлого и настоящего запомнились окружающим. И тем самым повлияли как на образ безумного учёного вообще, так и на образ компьютерного гика в частности. На сей раз двигаться мы будем не совсем в хронологическом порядке, а немного вразнобой. Так получилось.
Впрочем, началось всё в эпоху самого что ни на есть настоящего стимпанка…
Читать дальше →
Total votes 114: ↑110 and ↓4+106
Comments37

Математическая модель игры Доббль

Reading time12 min
Views52K

Уровни сложности чтения


  • Я слишком молод, чтобы думать


    • Введение и правила игры
    • Как они это делают?
    • Матрица инцидентности для игры Доббль
    • Каких двух карточек не хватает в комплекте игры?
    • Почему в игре на 2 карточки меньше максимально возможного количества?
    • Благодарности

  • Сделай мне умно


    • Введение и правила игры
    • Как они это делают?
    • При чём тут карточки?
    • Проективные плоскости малых порядков
    • Матрица инцидентности для игры Доббль
    • Каких двух карточек не хватает в комплекте игры?
    • Почему в игре на 2 карточки меньше максимально возможного количества?
    • Благодарности

  • Кошмар


    • Введение и правила игры
    • Как они это делают?
    • Конечная геометрия для грудничков
    • При чём тут карточки?
    • Проективные плоскости малых порядков
    • Как построить проективную плоскость?
    • Матрица инцидентности для игры Доббль
    • Каких двух карточек не хватает в комплекте игры?
    • Почему в игре на 2 карточки меньше максимально возможного количества?
    • Благодарности


Введение и правила игры


Несколько лет назад я купил игру Доббль (Dobble, оригинальное название “Spot It!”). Это очень простая, быстрая и весёлая игра, которую я считаю одной из лучших настольных игр вообще.

Читать дальше →
Total votes 110: ↑110 and ↓0+110
Comments23

Раскрываем секреты загрузочных ISO-образов

Reading time20 min
Views82K


В этой статье я хочу поговорить об ISO-файлах, на которых, как известно, распространяются дистрибутивы операционных систем. Начиная писать статью, я немного сомневался в её актуальности, так как я ассоциировал ISO-образы с оптическими дисками, которые, ввиду ряда причин, уходят в прошлое. У меня было стойкое понимание, что ISO-файлы в основном нужны только для хранения образов оптических дисков, которые содержат установщик операционной системы. Но, как оказалось, всё гораздо сложнее и интереснее, особенно применительно к современному железу.
Читать дальше →
Total votes 193: ↑193 and ↓0+193
Comments73

Коллекционирую лучшие C++ практики

Reading time3 min
Views19K

Коллекционирую лучшие C++ практики


Что-то наши публикации всё больше о плохом, чем о хорошем. Здесь баг, тут код с запахом, это антипаттерн, вот так писать не надо. Помогите увидеть светлую сторону программирования на С++. Оставляйте комментарии.

Читать дальше →
Total votes 38: ↑37 and ↓1+36
Comments9

Подводные камни Bash

Reading time32 min
Views94K


В этой статье мы поговорим об ошибках, совершаемых программистами на Bash. Во всех приведённых примерах есть какие-то изъяны. Вам удастся избежать многих из нижеописанных ошибок, если вы всегда будете использовать кавычки и никогда не будете использовать разбиение на слова (wordsplitting)! Разбиение на слова — это ущербная легаси-практика, унаследованная из оболочки Bourne. Она применяется по умолчанию, если вы не заключаете подстановки (expansions) в кавычки. В общем, подавляющее большинство подводных камней так или иначе связаны с подстановкой без кавычек, что приводит к разбиению на слова и глоббингу (globbing) получившегося результата.


Читать дальше →
Total votes 143: ↑141 and ↓2+139
Comments63

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

Reading time1 min
Views123K

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

Читать далее
Total votes 546: ↑508 and ↓38+470
Comments178

Как я создаю игры на своём 3D движке в одиночку

Reading time7 min
Views18K

Много лет назад я занимался созданием маленьких Flash игр и публиковал их на сайте Newgrounds. Сейчас я делаю полноценные игры для ПК.

На сегодняшний день у меня 4 законченные коммерческие игры в Steam, и самая последняя из них — выпущенная в 2021 году Pilie Pals, о процессе создания которой я расскажу в этой статье.

Я работал над игрой всего примерно 6 месяцев, по вечерам после работы и на выходных. Я занимаюсь дизайном, программированием, графикой, звуками и музыкой в одиночку, и использую свой собственный движок 3D игр.

Читать далее
Total votes 50: ↑49 and ↓1+48
Comments13

Умный дом iOS разработчика

Reading time6 min
Views14K

В свободное время (а иногда и в рабочее) я изучаю микроконтроллеры и собираю умный дом у себя в квартире, а так как по профессии я iOS-разработчик, то на умный дом я смотрю через призму iPhone и HomeKit. После сборки более-менее рабочего умного дома и, столкнувшись с кучей проблем, решил рассказать про свой опыт и устройства в цикле из 2 статей. Первая статья будет небольшим ликбезом в теорию микроконтроллеров и протоколов, а во второй уже поделюсь конкретным применением этих протоколов и фреймворков в моем умном доме.

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

Лето в Карабаше

Reading time4 min
Views3.3K

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

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

Читать далее
Total votes 9: ↑6 and ↓3+3
Comments7

MFS — паттерн построения UI в iOS приложениях

Reading time14 min
Views3.6K

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

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

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

Как Linux'овский sort сортирует строки

Reading time19 min
Views20K

Введение


Всё началось с короткого скрипта, который должен был объединить информацию об адресах e-mail сотрудников, полученных из списка пользователей почтовой рассылки, с должностями сотрудников, полученными из базы отдела кадров. Оба списка были экспортированы в текстовые файлы в кодировке Юникод UTF-8 и сохранены с юниксовскими концами строк.


Содержимое mail.txt


Иванов Андрей;ia@example.com

Содержимое buhg.txt


Иванова Алла;маляр
Ёлкина Элла;крановщица
Иванов Андрей;слесарь
Абаканов Михаил;маляр

Для объединения файлы были отсортированы юниксовской командой sort и поданы на вход юниксовской программе join, которая неожиданно завершилась с ошибкой:


$> sort buhg.txt > buhg.srt
$> sort mail.txt > mail.srt
$> join buhg.srt mail.srt > result
join: buhg.srt:4: is not sorted: Иванов Андрей;слесарь

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


$> sort buhg.txt
Абаканов Михаил;маляр
Ёлкина Элла;крановщица
Иванова Алла;маляр
Иванов Андрей;слесарь

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

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

Почему в машинном обучении используют «синтетические» данные

Reading time3 min
Views4.7K
Обсуждаем мнения ИТ-сообщества и экспертов индустрии. Также рассмотрим пару проектов, в рамках которых разрабатывают инструменты для генерации «искусственных» данных. Один из них представили выходцы из Агентства национальной безопасности США и Google.

Читать дальше →
Total votes 18: ↑15 and ↓3+12
Comments1

Александр Павлюк: «Мне очень хочется, чтобы в OSM постепенно появлялись планы зданий»

Reading time8 min
Views3.7K

Александр Павлюк — программист, который увлекается фотограмметрией и съемкой с коптера. Он делает ортофотопланы и собирается освоить технологию SLAM. Как он подсел на моноколесо, зачем ему отдельный роутинг и причем здесь OSM — обо всем это Александр рассказал в интервью.
Читать дальше →
Total votes 12: ↑12 and ↓0+12
Comments4

Ваша коммерческая информация на Microsoft Exchange Online? Ваша ли она по праву — и если да, то по какому?

Reading time14 min
Views14K

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


Но это не всегда так. А с некоторых пор совсем не так.


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



Читать дальше →
Total votes 55: ↑32 and ↓23+9
Comments83

Корпоративный туалет

Reading time7 min
Views29K
Сергей понуро брел по коридорам вслед за главным инженером. Тот что-то рассказывал, показывал пальцем то на одну дверь, то на другую, объяснял, какие замечательные люди там трудятся, какие шедевры создают в разных областях. Поначалу Сергею было интересно, он шел рядом, вежливо слушал, послушно поворачивал голову вслед за указующим пальцем, но очень быстро устал.

Сильно выматывал диссонанс. Всегда, на всех предприятиях, на каждом сайте и собеседовании он слышал одно и то же. Мы молодцы, у нас команда, мы создаем шедевры, наши планы по развитию о-го-го, и ничто не сможет нас остановить! А потом, как приглядишься, или поработаешь с ними, то оказывается… Что там конкретно оказывается, не так уж и важно. Но оказывается обязательно.

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

— Погодите! – громко сказал он. — Где у вас тут… Ну это… Ежикам позвонить можно?

Главный инженер остановился, обернулся и уставился на Сергея непонимающим взглядом.

— Что, простите?

— Ну ежикам позвонить. Посылку отправить. — с тупой улыбкой продолжал Сергей, но, видя, что понимания нет, прекратил использовать метафоры. — Туалет у вас где?
Читать дальше →
Total votes 87: ↑51 and ↓36+15
Comments75

Чтение на выходные: как не испортить слух и спастись от городского шума — 17 статей и практических руководств

Reading time4 min
Views11K
В дайджесте «Мира Hi-Fi» поговорим о том, почему в городах растет уровень шума и что мы можем сделать, чтобы сохранить слух и уменьшить шумовое загрязнение.

Читать дальше →
Total votes 25: ↑23 and ↓2+21
Comments1
1

Information

Rating
Does not participate
Location
London, England - London, Великобритания
Date of birth
Registered
Activity

Specialization

Mobile Application Developer