Как стать автором
Обновить
42
0

Типострадалец

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

Вредные советы работодателю. Как “правильно” взаимодействовать с разработчиком

Время на прочтение12 мин
Количество просмотров21K
В последнее время мне везет — я работаю в компаниях, где по-настоящему уважают разработчиков. Но так было не всегда, приходилось сталкиваться с разными подходами к взаимодействию. Хотел бы я сказать, что “дикие нравы” уходят в прошлое, но рассказы коллег об их предыдущих местах работы да и мои наблюдения за рынком опровергают это утверждение.

Что ж, поговорим о том, как “правильно” взаимодействовать с разработчиком, например лично со мной…

image

(Если всей семьей купаться вы отправились к реке,
не мешайте папе с мамой загорать на берегу.
Не устраивайте крика, дайте взрослым отдохнуть.
Ни к кому не приставая, постарайтесь утонуть, — Григорий Остер)...

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

Хабр Конвертер: чтобы версталось легко

Время на прочтение3 мин
Количество просмотров14K
Наверняка многие из вас хотя бы однажды пользовались хабраконвертером, который официально рекомендован администрацией Хабра — https://shirixae.github.io/habraconverter-v2/. Несколько лет назад его создал хабравчанин meta4, а потом доработал Shirixae. Принцип простой: открываете гуглодок с постом, Ctrl-A, Ctrl-C и вставляете в окно конвертера. Нажимаете кнопку «Конвертировать» и получаете готовый код вёрстки, который можно вставлять в редактор Хабра и публиковать. Только перед этим нужно пройтись и поправить кое-какие мелочи.

И всё бы хорошо, если верстать приходится не слишком часто. Или посты небольшие, несложные. Но если вы верстаете помногу, и в постах есть и картинки, и таблицы, и куски кода, то из раза в раз приходится делать рутину: вставлять нужные пустые строки и убирать лишние, заменять теги <sоurce> на <cоde>, и т.д. и т.п. Мы решили потратить день, чтобы потом долетать за час, и допилили конвертер.

Новая версия лежит тут, а под катом — перечисление доработок.
Читать дальше →
Всего голосов 68: ↑67 и ↓1+111
Комментарии31

Выбираем подарки для фантастических женщин

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

Binary heartbeat by Kevin Tong

Надо признать, я не умею выбирать подарки. Но люблю научную фантастику (надеюсь, эти два факта не связаны). Как насчет придумать подарки на 8 марта не для настоящих, а для книжных героинь? Заодно вспомнив, какие фантастические романы отличаются сильными и яркими женскими персонажами.

Звучит как безобидная забава, но не забываем — некоторые из этих девушек легко могут убить за неудачный выбор подарка.
Читать дальше →
Всего голосов 21: ↑13 и ↓8+11
Комментарии22

Математики доказали универсальный закон турбулентности

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

Используя случайные процессы, три математика доказали элегантный закон, лежащий в основе хаотического движения турбулентных систем




Представьте себе спокойную реку. А теперь представьте быстрый поток пенящейся воды. Какая между ними разница? Для математиков и физиков она состоит в том, что спокойная река течёт в одном направлении, а бурный поток – в нескольких направлениях сразу.

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

Однако новое доказательство говорит о том, что хотя некоторые турбулентные системы и кажутся непокорными, на самом деле они подчиняются одному универсальному закону. В этой работе приводится одно из самых строгих описаний турбулентности, когда-либо данных математикой. И появляется оно благодаря новому набору методов, которые сами по себе меняют процесс изучения исследователями этого доселе непокорного явления.
Читать дальше →
Всего голосов 17: ↑12 и ↓5+11
Комментарии9

Распределение данных в Apache Ignite

Время на прочтение11 мин
Количество просмотров6.6K
Привет! Этот пост — немного сокращенная версия моего одноименного доклада на встрече сообщества Apache Ignite. Полную видеоверсию вместе с вопросами и ответами можно посмотреть здесь, а слайды скачать здесь. В докладе я постарался на примерах показать, как данные распределяются в Apache Ignite.
Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии1

Zip-файлы: история, объяснение и реализация

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


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

В статье очень подробно объясняется, как работают Zip-файлы и схема сжатия: LZ77-сжатие, алгоритм Хаффмана, алгоритм Deflate и прочее. Вы узнаете историю развития технологии и посмотрите довольно эффективные примеры реализации, написанные с нуля на С. Исходный код лежит тут: hwzip-1.0.zip.
Читать дальше →
Всего голосов 133: ↑132 и ↓1+174
Комментарии45

Что, собственно, такое персональные данные?

Время на прочтение8 мин
Количество просмотров27K
image

Новгородский мальчик Онфим из XIII века превратил кору в носитель персональных данных, собрав набор из изображения человека и его имени.

Представьте, что вы нашли трёх друзей, которые родились с вами в один и тот же день. У вас одинаковая дата рождения, одинаковый пол, и вы можете определёнными усилиями сменить имена в рамках закона. В итоге получится четверо одинаковых людей. Будет ли набор «Ф. И. О. + дата рождения + пол» персональными данными?

Ответ, как это ни странно, — да.

При этом под персональными данными понимается такой набор информации, который так или иначе позволяет идентифицировать физическое лицо — субъекта персональных данных. То есть однозначно указывает на конкретного человека.

Ранее в законодательном определении содержалось указание на конкретные примеры, которые каждый в отдельности или в совокупности с другой информацией составляли персональные данные. В текущей же редакции ст. 3 Федерального закона № 152-ФЗ примеров персональных данных не приводится, т. к. законодатель сделал упор на «духе закона», прямо оговорив, что к таким данным относится «любая информация, относящаяся к прямо или косвенно определённому или определяемому физическому лицу», отдав решение этого вопроса на откуп судебной практике.

Поэтому давайте разбирать на примерах, что есть ПДн, а что — нет.
Читать дальше →
Всего голосов 44: ↑42 и ↓2+40
Комментарии116

Закон Фарадея или как магнит застревает в медной трубе

Время на прочтение8 мин
Количество просмотров48K
Магнит в медной трубе
Изображение взято с сайта «Популярная механика»

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

И если вы дочитали до этого места и не испугались, добро пожаловать под кат — дальше будет интереснее!
Всего голосов 41: ↑40 и ↓1+52
Комментарии131

Невыразимо привлекателен: как мы создали ханипот, который нельзя разоблачить

Время на прочтение10 мин
Количество просмотров15K
image
Антивирусные компании, ИБ-эксперты и просто энтузиасты выставляют в интернет системы-приманки — ханипоты, чтобы «поймать на живца» свежую разновидность вируса или выявить необычную хакерскую тактику. Ханипоты встречаются так часто, что у киберпреступников выработался своеобразный иммунитет: они быстро выявляют, что перед ними ловушка и просто игнорируют её. Чтобы исследовать тактику современных хакеров, мы создали реалистичный ханипот, который в течение семи месяцев жил в интернете, привлекая самые разные атаки. О том, как это было, мы рассказали в нашем исследовании «Caught in the Act: Running a Realistic Factory Honeypot to Capture Real Threats». Некоторые факты из исследования — в этом посте.
Читать дальше →
Всего голосов 32: ↑32 и ↓0+32
Комментарии17

Cascadeur: будущее игровой анимации

Время на прочтение8 мин
Количество просмотров23K
image

Всем привет! Мы — студия разработки Banzai Games. Рады наконец открыть здесь свой блог. Будем писать о наших технологиях, проектах и делиться историями из жизни компании. Первый материал — перевод интервью с основателем студии Евгением Дябиным, которое он дал коллегам из издания 80lv. В нем он рассказал о нашей программе для создания physics-based анимации Cascadeur и ее преимуществах перед mocap-анимацией.
Всего голосов 39: ↑39 и ↓0+39
Комментарии25

1С: Ассемблер — пишем чистый байт-код для стековой машины 1С: Предприятие

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


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


Все вы, наверное, слышали, что 1С-ники жалуются на свою систему, считая язык 1С недостаточно низкоуровневым, скучным и т.п. Все они с тоской поглядывают в сторону "настоящих" языков программирования. Так вот, господа, они неправы. В системе 1С есть места, где можно размять программерский мозг и получить удовольствие от низкоуровневой техники. Предлагаю вам погрузиться в недра виртуальной машины 1С и понять, как она работает. Там есть свой "ассемблер" и сегодня мы будем писать на нем рабочий код для 1С. Заходите под кат, будет весело!

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

Путь из COBOL в Java: пишем транспилятор за сутки

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

Приветствую, Дорогие Друзья.


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


Как и обещал — переходим от простого (логирование) к более сложному: метапрограммирование.

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

Бесконечный цикл, которого не было: история бага Святого Грааля

Время на прочтение8 мин
Количество просмотров13K
Когда-то давным-давно жила игра для GBA под названием Hello Kitty Collection: Miracle Fashion Maker. Это была милая игра, основанная на знаменитой франшизе Sanrio Hello Kitty и разработанная компанией Imagineer. Но под маской кажущегося невинным названия скрывалась коварная проблема. По каким-то причинам эта простая игра не запускалась ни на одном эмуляторе GBA. Но одного этого было бы недостаточно, чтобы назвать проблему багом Святого Грааля. Как и все баги Святого Грааля, сам этот баг совершенно сбивал с толку. Объяснение было простым: на каком-то этапе последовательности запуска игры она попадала в цикл, из которого никогда не выходила, ожидая чтения определённого значения из памяти, которой не сущесвтует. Хотя подобные баги есть во многих играх, например, в интро популярной The Legend of Zelda: The Minish Cap, они полагаются на особое поведение, вызываемое чтением недействительных адресов памяти. Но этот цикл, казалось, нарушал подобное поведение. Тем не менее, на реальном оборудовании всё-таки игра работала. Более того, точно такой же баг возникал и при загрузке сохранения в Sonic Pinball Party после холодной перезагрузки. Могло ли ожидание этих недействительных адресов памяти быть каким-то образом ошибочным? Но если да, то как?

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

Созерцание великого фрактального подобия

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

(с) «Галактика галактик»

Фракталы — не просто красивое природное явление. Согласно проведенным исследованиям, рассматривание фрактальных структур на 60 % повышает стрессоустойчивость, измеряемую на основе физиологических показателей. При созерцании фракталов в лобной коре головного мозга всего за одну минуту увеличивается активность альфа-волн — как во время медитации или при ощущении легкой сонливости.

Неудивительно, что фрактальный биодизайн оказывает на человека умиротворяющее воздействие. Нам нравится смотреть на облака, на языки пламени в камине, на листву в парке… Как это работает? Ученые предполагают, что естественный ход поисковых движений наших глаз — фрактальный. При совпадении размерности траектории движения глаз и фрактального объекта мы впадаем в состояние физиологического резонанса, за счет чего активизируется деятельность определенных участков мозга.

Но не все фракталы одинаково полезны. В данной статье расскажем о фрактальной размерности и о её влиянии на здоровье.
Всего голосов 37: ↑35 и ↓2+46
Комментарии12

Коты в коробочках, или Компактные структуры данных

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

image


Как быть, если дерево поиска разрослось на всю оперативку и вот-вот подопрет корнями соседние стойки в серверной? Что делать с инвертированным индексом, жадным до ресурсов? Завязывать ли с разработкой под Android, если пользователю прилетает «Память телефона заполнена», а приложение едва на половине загрузки важного контейнера?


В целом, можно ли сжать структуру данных, чтобы она занимала заметно меньше места, но не теряла присущих ей достоинств? Чтобы доступ к хэш-таблице оставался быстрым, а сбалансированное дерево сохраняло свои свойства. Да, можно! Для этого и появилось направление информатики «Succinct data structures», исследующее компактное представление структур данных. Оно развивается с конца 80-х годов и прямо сейчас переживает расцвет в лучах славы big data и highload.


А тем временем на Хабре найдется ли герой, способный пересковоговорить три раза подряд
[səkˈsɪŋkt]?

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

Идеальный SAST. Парсер

Время на прочтение5 мин
Количество просмотров2.4K
Цикл статей посвящен описанию оптимального подхода для реализаций инструментов статического анализа кода, рассчитан на специалистов. Целью работы являются подходы, модели и методики для получения максимальной производительности инструмента при минимизации трудоемкости разработки и поддержки/изменения инструмента. В данной статье рассматривается способ ускорения работы парсера и снижения потребления памяти. Статья построена таким образом, что читатель прочел руководство написанное Терренсом Парром.
Читать дальше →
Всего голосов 5: ↑5 и ↓0+5
Комментарии21

Мифы современной популярной физики

Время на прочтение5 мин
Количество просмотров121K
Где-то в альтернативной вселенной, согласно MWI, я стал гениальным физиком. Но в этой вселенной просто подробно слежу за профессиональными публикациями в области физики, зарабатывая себе на хлеб развозкой пиццы базами данных. Как следствие чуть более глубоких знаний, я не могу смотреть никаких научно-популярных передач. Это как железом по стеклу — тут oversimplification, тут просто неверно, тут есть тонкости…

Я решил сформировать список наиболее часто встречающихся неправд и полуправд. Итак, самое частое это…

Большой взрыв


Его изображают примерно так:


Читать дальше →
Всего голосов 310: ↑304 и ↓6+298
Комментарии561

Дизеринг 2: ряд золотого сечения, синий шум и highpass-and-remap

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

В предыдущей части я рассмотрел определение дизеринга и объяснил, как он изменяет характеристики погрешностей простой 1D-дискретизации и функций.

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

Ноутбук Mathematica для ряда золотого сечения находится здесь, а его pdf-версия — здесь.

Ноутбук для второй части поста можно найти здесь, а его pdf-версию — здесь.

Ряд золотого сечения


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

FractionalPart[N*GoldenRatio]

Идею его использования я нашёл в статье “Golden Ratio Sequences For Low-Discrepancy Sampling” авторов Colas Schretter и Leif Kobbelt.

Это невероятно потрясающий ряд, потому что он распределяет следующие значения очень хорошо и на достаточно далёком расстоянии:

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

Идеальная Игра, или Система раскрытия потенциала

Время на прочтение11 мин
Количество просмотров5K
Мои последние исследования, результат которых описан в предыдущих статьях, привели меня к мысли: а что, если создать систему, противоположную Системе подавления — Систему Раскрытия Потенциала, применимую к планете Земля и человечеству? Данная система описывает правила такого устройства многомерной среды обитания существ, в которой энтропия сознания сведена к минимуму. Живущие/играющие в ней существа реализуют весь доступный им Потенциал — совокупность всех их интеллектуальных, физических и всех прочих ресурсов, данных им во всём пространстве и времени, в полном объёме. Иначе говоря, как сделать идеальную игру?


Читать дальше →
Всего голосов 17: ↑5 и ↓12-4
Комментарии18

Dagaz: Сумма технологий

Время на прочтение10 мин
Количество просмотров2.5K
          Итак, технологии интересуют меня, так сказать, по необходимости: потому что всякая цивилизация включает и то, к чему общество стремилось, и то, чего никто не замышлял.

          Порой, и довольно часто, путь технологии открывал случай: искали же когда-то философский камень, а нашли фарфор.
 
 
Станислав Лем.


С самого начала работы над проектом, было понятно, что качественный AI мне жизненно необходим! Самому с собой играть скучно, а модуль для игры по сети — он неизвестно когда ещё будет. Я пытался писать ботов сам, но все они работали либо плохо, либо плохо и медленно. В конце концов, я устал заниматься этой самодеятельностью и нашёл шахматного бота, качество игры которого меня вполне устраивало. Но тут возникла проблема. Мне-то были нужны не только Шахматы. Тому, как я с этим боролся, и посвящена эта статья.
Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Комментарии19

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность