Как стать автором
Обновить
21
0.1

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

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

Водяная линза и не только

Время на прочтение12 мин
Количество просмотров12K
Картинка Pikisuperstar, Freepik

Периодически возникает необходимость работы с линзами. Однако существующих линз может быть недостаточно для удовлетворения предъявляемых требований, или же, покупка готовых линз может быть сопряжена с определёнными трудностями, среди которых как время доставки, так и их стоимость. В любом случае — для ряда конструкций может быть полезно изготовление самодельных линз, о необычных путях достижения чего мы и поговорим в этой статье.
Читать дальше →
Всего голосов 43: ↑41 и ↓2+56
Комментарии33

HTTP-заголовки для ответственного разработчика

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

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

Разработчики соединяют людей.
Разработчики помогают людям.
Разработчики дают людям возможности.

Разработчики могут создать сеть для всех, но эту способность необходимо использовать ответственно. В конце концов, важно создавать вещи, которые помогают людям и расширяют их возможности. В этой статье я хочу рассказать о том, как HTTP-заголовки могут помочь вам создавать лучшие продукты для лучшей работы всех пользователей в интернете.
Читать дальше →
Всего голосов 92: ↑90 и ↓2+88
Комментарии64

Резистор в цепи затвора или как делать правильно

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


Всем доброго времени суток!

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

Любому из этих случаев я буду очень рад.
Читать дальше →
Всего голосов 51: ↑48 и ↓3+45
Комментарии70

Почему программные задачи всегда занимают больше времени, чем вы думаете

Время на прочтение6 мин
Количество просмотров21K
Каждый в IT-индустрии знает, насколько сложно оценить срок выполнения проекта. Трудно объективно оценить, сколько времени займёт решение трудной задачи. Одна из моих любимых теорий заключается в том, что здесь имеет место просто статистический артефакт.

Предположим, вы оцениваете проект в 1 неделю. Предположим, есть три одинаково вероятных результата: либо он займёт 1/2 недели, либо 1 неделю, либо 2 недели. Медианный результат фактически такой же, как и оценка: 1 неделя, но среднее значение (aka average, aka expected value) составляет 7/6 = 1,17 недель. Оценка фактически откалибрована (беспристрастна) для медианы (которая равна 1), но не для среднего.
Читать дальше →
Всего голосов 50: ↑49 и ↓1+48
Комментарии24

Разгон подсветки монитора

Время на прочтение6 мин
Количество просмотров30K
Оверклокинг процессора или памяти — это понятно, но зачем разгонять подсветку монитора?



Речь пойдёт о стареньком 23-дюймовом Samsung SyncMaster BX2340 (выпущен в январе 2011) со светодиодной подсветкой. Со временем стал замечать, что работать за ним утомительно, а сосредоточиться всё сложнее. И даже не только работать, просто читать, например. Сам монитор остался тот же, но мне стало труднее. А за другими экранами работалось вполне нормально.
Может выкинуть его, и купить новый?
Всего голосов 61: ↑60 и ↓1+59
Комментарии76

Коренные микробы

Время на прочтение8 мин
Количество просмотров9.7K
С 2007 года моя судьба связана с микробами: вот уже 13 лет они меня не отпускают. По моим прикидкам, это гораздо больше, чем 10 000 часов — что-то около 30 000. Как и с любой областью знаний, в определенный момент мозг начинает подкидывать новые идейки. Об одной из них я и хочу рассказать.

В моей голове возникло слово indibiome. Русский звучный аналог этого термина — «коренные микробы» — в выдаче Google находится семь раз, причем три упоминания приходятся на созданные мной сайты и тексты. Мне больше нравится англоязычный аналог этого слова. Indibiome происходит от indigenous microbiome (по аналогии с indigenous people). Впервые с коренными народами я столкнулся несколько лет назад, снимая документальный фильм про оленеводов. Коренные народы и коренные микробы с тех пор меня не отпускают.

Термин indibiome в выдаче Google встречается 396 раз. Наверняка есть придуманные кем-то слова или термины с такой же статистикой. С первого взгляда кажется, что indibiome — просто редкое слово. Если изучать выдачу поисковика, то можно обнаружить, что это слово используется в одной итальянской книге (Lodovico Antonio Muratori, ‎Filippo Argelati — 1723 — ‎Italy). Однако, если присмотреться, то становится понятно, что в сканированной копии Google books ошибается. На той же странице буква b в других словах выглядит по-другому. Остальные 395 упоминаний содержат еще несколько ошибочных прочтений Google, но в большей части, публикации порождены одним автором.

У этого слова есть и значение, и несколько смыслов. Придумывать слова может каждый, но если они не адаптируются к языку и не проявляют разные грани смысла в зависимости от окружения, то для выражения мыслей они бесполезны. У indibiome есть несколько смыслов, слово даже претендует на отдельную философию, образ жизни, способ поведения человека.
Читать дальше →
Всего голосов 38: ↑34 и ↓4+30
Комментарии8

SIP от Мегафона по домашнему тарифу

Время на прочтение3 мин
Количество просмотров76K
UPD: Телеграм чат для обсуждения операторов сотовой связи tg.guru/opsosru

У многих современных смарфонов есть проблема: совмещённый слот под SIM2 со слотом под карту памяти. То есть либо симка, либо флэшка…

Основной номер у меня на TELE2. Но есть и номер Мегафон с привязкой ко всяким сервисам по типу банк-клиентов. Я планировал перенести эти сервисы на номер в Теле2 и выкинуть Мегафон. Но Мегафон сделал «ход конём» и предложил мне скидку 50% на тариф «Включайся! Общайся». При этом в него входят настоящий безлимитный интернет (С возможностью раздачи трафика с телефона и скорость не режут) и 1100 минут по России в месяц. Разумеется, при поездке по РФ никаких дополнительных платежей. Правда я и 200 минут в месяц не выговариваю…

Теперь выкинуть номер Мегафона — жаба давит. Но желание освободить слот под карту памяти осталось.

Тут я вспомнил про старую услугу «Мультифон», но обнаружил, что остался только "Мультифон-бизнес" с конским тарифом по 1,6 руб. за минуту. Мультифона для обычных людей, как бы, больше не существует.



Мой внутренний оптимист приказал думать дальше. И не зря. По итогу я получил полноценный sip аккаунт (могу звонить с компьютера) по адекватному тарифу, ходят СМС, второй слот занят картой памяти без напильника, а сама sim стоит в модеме с HiLink.
Читать дальше →
Всего голосов 22: ↑19 и ↓3+16
Комментарии38

Экономика радости. Наставничество как частный случай. Закон трёх процентов

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

Знаю, что написав этот пост, не стану Паисием Святогорцем. Однако, я надеюсь, найдётся хотя бы один читатель, который, возможно, поймет какой это кайф – быть педагогом (ментором) в IT. И наша страна станет чуточку лучше. И этот читатель (который поймет) станет чуточку счастливее. Тогда этот текст написан не зря.


Я – преподаватель-совместитель. И уже давно. Лет семь-восемь. И мне – не стыдно.
Текущий выхлоп: более 20 трудоустроенных ребяток, с которыми занимался тет-а-тет. Знаю, не густо. Могло быть побольше… Ребятки пока не жалуются (вру, конечно жалуются, но всё у них – ок). В своё оправдание скажу, что есть ещё неизвестное мне количество "потоковых" студентов, которым мой предмет был полезен, но с которыми я в дальнейшем тет-а-тет не работал и не натаскивал…


Огромное количество раз я слышал: «ты – фрик», «ах зачем ты возишься с этими студентиками», «да тебе они в рот смотрят и ты компенсируешь… ну что-то компенсируешь, короче», «что ты нашёл в этой Кате? Она твоя любовница?», «что ты нашёл в это Васе? Он тебе брат?», «заняться нечем?», «у тебя же жена, дочь и ипотека!», «ты – наркоман», «у тебя много свободного времени?», «лучше бы Игру Престолов посмотрел, а то совсем отстал, дядя»… Ну и так далее. Если бы я любил творчество Oxxxymeron-а и проконсультировал Мирона (лично, увы, не знаком с ним), то «Где нас нет» можно было бы составить из вот этих вот фраз и оборотов… И вот тогда это была бы бомба!.. Ах какой классный рэпчик получился бы...


Мне надоело объяснять. Как будто я «оправдываюсь». Смешно даже. Пишу этот пост и в следующий раз, когда назовут «фриком», просто дам ссылку на этот опус.

Дальше читать
Всего голосов 26: ↑18 и ↓8+10
Комментарии44

Стажёр Вася и его истории об идемпотентности API

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

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


Меня зовут Денис Исаев, и я руковожу одной из бэкенд групп в Яндекс.Такси. Сегодня я поделюсь с читателями Хабра описанием проблем, которые могут возникнуть, если не учитывать идемпотентность распределенных систем в своем проекте. Для этого я выбрал формат вымышленных историй о стажёре Васе, который только-только учится работать с API. Так будет нагляднее и полезнее. Поехали.


image

Читать дальше →
Всего голосов 219: ↑216 и ↓3+213
Комментарии163

Как подступиться к fullstack-разработке сегодня, если ты проспал десять лет

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


Привет, Хабр! Несколько месяцев назад у меня остро встал вопрос смены профиля деятельности и я обнаружил, что для претендента на вакансию web-разработчика сейчас недостаточно навыков десятилетней давности (какая неожиданность!). Пришлось срочно актуализировать свои знания. Заодно я решил составить шпаргалку с описанием большинства современных технологий, чтобы в случае чего кидать жаждущим новых знаний линк на эту статью, да и самому не забывать.
Читать дальше →
Всего голосов 162: ↑135 и ↓27+108
Комментарии381

Знакомство с Neural ODE

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

Neural Ordinary Differential Equations


Значительная доля процессов описывается дифференциальными уравнениями, это могут быть эволюция физической системы во времени, медицинское состояние пациента, фундаментальные характеристики фондового рынка и т.д. Данные о таких процессах последовательны и непрерывны по своей природе, в том смысле, что наблюдения — это просто проявления какого-то непрерывно изменяющегося состояния.

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

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

На последней NIPS-конференции была представлена одна очень интересная статья, которая может помочь решить эту проблему. Авторы предлагают подход, который они назвали Нейронные Обыкновенные Дифференциальные Уравнения (Neural ODE).

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


Читать дальше →
Всего голосов 79: ↑76 и ↓3+73
Комментарии7

Lehmann Linear DIY или как клонировать породистого немца с хорошим результатом

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

Началось все с того, что как то на прослушке своих ушей Beyerdynamic DT880 600ohm(!) я воткнул их в какой-то породистый ламповый усилок и понял, что жить со своим старичком (тоже ламповым) я уже не смогу.


Спойлер, конечный результат:


Читать дальше →
Всего голосов 55: ↑40 и ↓15+25
Комментарии194

Сеть компании и MitM. Часть 1

Время на прочтение8 мин
Количество просмотров14K
Перехватить конфиденциальную информацию? Получить несанкционированный доступ к различным приложениям и системам? Нарушить нормальный режим работы? Все это и многое другое выполняют атаки типа Man in the Middle.


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

Заинтересовались? Добро пожаловать под кат.
Читать дальше →
Всего голосов 19: ↑17 и ↓2+15
Комментарии2

Можно ли считать статистику при малом количестве данных?

Время на прочтение6 мин
Количество просмотров15K
В целом ответ – да. Особенно, когда есть мозги и знание теоремы Байеса.

Напомню, что среднее и дисперсию можно считать только, если у вас имеется определенное количества событий. В старых методичках СССР РТМ (руководящий технический материал) говорилось, что чтобы считать среднее и дисперсию необходимо 29 измерений. Сейчас в ВУЗах немного округлили и используют число 30 измерений. С чем это связано – вопрос философский. Почему я не могу просто взять и посчитать среднее, если у меня есть 5 измерений? По идее ничто не мешает, только среднее получается нестабильным. После еще одного измерения и пересчета оно может сильно измениться и полагаться на него можно начиная где-то с 30 измерений. Но и после 31го измерения оно тоже пошатнется, только уже не так заметно. Плюс добавляется проблема, что и среднее можно считать по разному и получать разные значения. То есть из большой выборки можно выбрать первые 30 и посчитать среднее, потом выбрать другие 30 и тд … и получить много средних, которые тоже можно усреднять. Истинное среднее бывает недостижимо на практике, так как всегда имеем конечное количество измерений. В таком случае среднее является статистической величиной со своим средним и дисперсией. То есть измеряя среднее на практике мы имеем в виду «предположительное среднее», которое может быть близко к идеальному теоретическом значению.

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

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

Как интеллект-карты помогают вести IT-проекты

Время на прочтение10 мин
Количество просмотров48K
В продолжение статьи о тайм-менеджменте предлагаю вашему вниманию историю о своем опыте использования инструмента по работе с интеллект-картами. Последние десять лет я занимаюсь управлением проектами в ИТ и телекоме, и всё это время я использую MindJet MindManager. Сегодня я расскажу, как с его помощью можно организовать задачи проекта и всё то, что происходит в голове проектного менеджера. Рассчитываю, что вы прочтете эту статью, пока пьёте одну чашку кофе, а за несколько последующих — мы с вами её обсудим.

Из этого поста вы узнаете о принципах формирования интеллект-карт, основных фишках MindJet MindManager (далее — Mind) и особенностях его применения в проектной работе управленца.

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

Источник
Читать дальше →
Всего голосов 68: ↑66 и ↓2+64
Комментарии44

Транспилятор PAS2JS из Паскаля в JavaScript: несовместимости с Delphi и пути обхода

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

В наше время в кармане обычного человека лежит мощный персональный компьютер, о котором 10-20 лет назад можно было только мечтать. И если у вас километры отлаженного Windows-кода и отлично работающие приложения и утилиты, написанные на Delphi, вы наверняка хотели бы задействовать это богатство для мобильной разработки. А также опыт, накопленный за время программирования под Windows. PAS2JS поможет вам совместить два мира: разработку под Windows и создание Web-приложений и Node.js модулей.


О некоторых обнаруженных трудностях из личного опыта идёт речь в этой статье.

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

HL 2018. Конспект доклада «Make passwords great again! Как победить брутфорс и оставить хакеров ни с чем»

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

Passwords are like underwear


Привет, Хабр! Меня зовут Ахмадеев Ринат, я Sr. PHP developer.


Представляю вашему вниманию конспект доклада Make passwords great again! Как победить брутфорс и оставить хакеров ни с чем от Алексея Ермишкина из Virgil Security с HighLoad++ 2018.


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


В докладе рассматриваются способы защиты паролей начиная от хешей и заканчивая более современными подходами, такими как Facebook's password Onion, Sphinx и Pythia. В самом конце рассматривается новый Simple Password-Hardened Encryption Services (PHE).


Мне так понравился доклад, что я подготовил конспект. Всем рекомендую к ознакомлению.

Всего голосов 55: ↑55 и ↓0+55
Комментарии29

Разъяснительная беседа об асинхронном программировании в Javascript

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

Как вы, возможно, помните, еще в октябре у нас переводилась интересная статья о применении таймеров в Javascript. Она вызвала огромную дискуссию, по результатам которой мы давно хотели вернуться к этой теме и предложить вам подробный разбор асинхронного программирования в этом языке. Рады, что нам удалось найти достойный материал и опубликовать его еще до конца года. Приятного чтения!
Читать дальше →
Всего голосов 35: ↑34 и ↓1+33
Комментарии16

Айсберг

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

Аналогичная ситуация – с данными в автоматизированных системах.
Читать дальше →
Всего голосов 25: ↑21 и ↓4+17
Комментарии5

Теория шардирования

Время на прочтение26 мин
Количество просмотров128K
Кажется, мы так глубоко погрузились в дебри highload-разработки, что просто не задумываемся о базовых проблемах. Взять, например, шардирование. Чего в нем разбираться, если в настройках базы данных можно написать условно shards = n, и все сделается само. Так-то, он так, но если, вернее когда, что-то пойдет не так, ресурсов начнет по-настоящему не хватать, хотелось бы понимать, в чем причина и как все починить.

Короче, если вы контрибьютили свою альтернативную реализацию хэширования в Cassandra, то вряд ли тут для вас найдутся откровения. Но если нагрузка на ваши сервисы уже прибывает, а системные знания за ней не поспевают, то милости просим. Великий и ужасный Андрей Аксёнов (shodan) в свойственной ему манере расскажет, что шардить плохо, не шардить — тоже плохо, и как это внутри устроено. А еще совершенно случайно одна из частей рассказа про шардинг вообще не совсем про шардинг, а черт знает про что — как объекты на шарды мапить.

Фотография котиков (хоть они случайно и оказались щеночками) уже как бы отвечает на вопрос, зачем это всё, но начнем последовательно.
Всего голосов 37: ↑37 и ↓0+37
Комментарии6
1
23 ...

Информация

В рейтинге
3 093-й
Зарегистрирован
Активность