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

User

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

Level of difficulty Easy
Reading time 7 min
Views 28K
Digest

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

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

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

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

Reading time 13 min
Views 1.4M
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
Comments 148

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

Level of difficulty Easy
Reading time 11 min
Views 23K

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

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

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

Reading time 12 min
Views 46K

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


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


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

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


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

  • Кошмар


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


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


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

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

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

Reading time 20 min
Views 62K


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

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

Reading time 3 min
Views 17K

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


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

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

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

Reading time 32 min
Views 91K
Translation


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


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

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

Reading time 1 min
Views 118K

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

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

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

Reading time 7 min
Views 17K

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

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

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

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

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

Reading time 6 min
Views 12K

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

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

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

Reading time 4 min
Views 3.2K

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

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

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

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

Reading time 14 min
Views 3.3K

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

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

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

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

Reading time 19 min
Views 19K
Tutorial

Введение


Всё началось с короткого скрипта, который должен был объединить информацию об адресах 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
Comments 13

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

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

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

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

Reading time 8 min
Views 3.6K

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

Консольные утилиты Linux, которые смогут облегчить вам жизнь

Reading time 4 min
Views 89K

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

Читать дальше →
Total votes 62: ↑46 and ↓16 +30
Comments 97

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

Reading time 14 min
Views 14K

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


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


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



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

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

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

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

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

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

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

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

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

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

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

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

Композиция UIViewController-ов и навигация между ними (и не только)

Reading time 15 min
Views 21K


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

Читать дальше →
Total votes 6: ↑6 and ↓0 +6
Comments 10
1

Information

Rating
1,912-th
Location
London, England - London, Великобритания
Date of birth
Registered
Activity

Specialization

Mobile Application Developer