• О спасении от удушья в своей квартире или лонгрид о современной вентиляции

    О спасении от удушья в своей квартире или лонгрид о современной вентиляции 

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

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

    Читать далее
  • SQL миграции в Postgres. Часть 1


      Как обновить значение атрибута для всех записей таблицы? Как добавить первичный или уникальный ключ в таблицу? Как разбить таблицу на две? Как ... 

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

      На эти и другие вопросы, возникающие при проведении миграций схемы и данных в PostgreSQL, постараемся дать ответы в виде практических советов.
      Читать дальше →
    • Как «Ревущий Котёнок» с Reddit заработал 28.500% на акциях GameStop: объясняю простым языком

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

        Читать далее
      • Тариф «100к+», или как вельми зело огорчить спамера


          Уже не впервые сталкиваюсь, что читатели Хабра не все поголовно умеют правильно бороться со спамом. И я не про SpamAssasin, «Ктозвонил» и прочие приложения для фильтрации информационного мусора, а про несложную, но весьма доставляющую всем сторонам процесса подачу жалобы в ФАС.

          Давайте расскажу, как буквально за 15 минут не отрываясь от любимого компьютера подключить спамеру задораздирающий тариф линейки «Административный»: «Административный 100к», «Административный 150к» и вплоть до «Административный 500к» – как повезет.
          Читать дальше →
        • Поиск замены депозита в облигациях с учетом того, что с 1 января 2021 года все выплаты облагаются налогами

            Полгода назад, летом 2020 года я написал скрипт поиска ликвидных облигаций на Мосбирже (статья в закладках у 194 человек, рейтинг +45). Скрипт нужен для поиска облигаций, которые можно купить прямо сейчас с доходностью гораздо выше банковского вклада.

            Сейчас, в начале 2021 года модифицировал прошлогодний скрипт, потому что проценты по вкладам так и остаются на очень низких уровнях, а с началом 2021 года ещё и изменения в налоговом кодексе РФ подоспели. 

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

            Облигации как замена вклада в 2021 году
          • Квалифицированная электронная подпись под macOS

            • Tutorial

            По данным РБК и Тензор, в 2019 году в России будет выдано 4,6 млн. сертификатов квалифицированных электронных подписей (КЭП), соответствующих требованиям 63-ФЗ. Получается, что из 8 млн. зарегистрированных ИП и ООО каждый второй предприниматель пользуется электронной подписью. Помимо КЭП для ЕГАИС и облачных КЭП для сдачи отчетности, выдаваемых банками и бухгалтерскими сервисами, особый интерес представляют универсальные КЭП на защищенных токенах. Такие сертификаты позволяют логиниться на гос.порталы и подписывать любые документы, делая их юридически значимыми.


            Благодаря сертификату КЭП на USB-токене можно удаленно заключить договор с контрагентом или дистанционным сотрудником, направить документы в суд; зарегистрировать онлайн-кассу, урегулировать задолженность по налогам и подать декларацию в личном кабинете на nalog.ru; узнать о задолженностях и предстоящих проверках на Госуслугах.


            Представленный ниже мануал поможет работать с КЭП под macOS – без изучения форумов КриптоПро и установки виртуальной машины с Windows.

            Читать дальше →
          • Systemd для продолжающих. Part 1 — Запуск юнитов по временным событиям

            • Tutorial

            Всем привет! В последнее время я вплотную занимаюсь исследованием возможностей systemd и решил поделиться результатом исследований с сообществом, в виде небольшого (или большого, как пойдёт ;-) цикла статей. Итак первым номером нашей программы будет запуск юнитов по различным событиям происходящим во время работы ОС. В качестве исследовательской платформы будет выступать Manjaro Linux c systemd v247.2. И... да. Некоторые события, вынудили меня написать внеочередную статью, которая «взлетела на вершину хит-парада», а опрос показал, что тема актуальна и вызывает интерес, так что погнали!

            Нырнуть в кроличью нору!
          • Botsman: новая платформа для разработки Telegram-ботов

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

              Для тех же, кому уже захотелось ознакомиться с Botsman (но не очень хочется много читать) — вот ссылка, милости прошу: https://bots.mn/. Главное, о чём стоит помнить — платформа только-только запустилась, и (пока что) не стоит переносить на неё что-то серьёзное и масштабное.

              Читать далее
            • Трехмерный движок в коде… ДНК

              • Tutorial
              UPD 29 ноября: Репозиторий с кодом ДНК выложен на GitHub.
              github.com/pallada-92/dna-3d-engine

              UPD 30 ноября:
              В англоязычном твиттере заметили проект
              Новость попала в топ-10 на HackerNews!






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

              Ответ довольно неожиданный — lingua franca для моделирования сложных процессов в клетках является реакции вида
              Эти реакции моделируются при помощи закона действующих масс, который одинаково работает и в химии, и в молекулярной биологии.

              — Неужели при помощи этих примитивных реакций можно что-то программировать?
              — Да, а то, что написано выше, вычисляет $B = \sqrt{A}$.

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

              Потом я расскажу, как полученные реакции скомпилировать в код ДНК, который можно синтезировать в лаборатории и (если очень повезет) получить трехмерный куб из двумерного массива пробирок.

              Как обычно, я сделал веб-приложение с эмулятором таких реакций, в котором можно поупражняться в «реактивном» программировании. Вы сможете удивлять химиков способностью вычисления конечных концентраций в сложных системах реакций методом пристального взгляда.

              Для понимания статьи никаких предварительных знаний не требуется, необходимые сведения из школьной программы по биологии мы повторим в начале статьи. Также мы разберем типичные паттерны, которые использует эволюция для достижения сложного поведения в живых клетках.
              Читать дальше →
            • Я единственный из 1400, или самый крутой рекрутинг, что я проходил

                Я уже лет 10 пишу код на питоне, и последние 2.5 года стабильно работал на американскую компанию. Наверно, многим знакома история, когда ты кодишь-кодишь, вроде всё неплохо, и внезапно ты - самый знающий и опытный в команде и добро пожаловать в тим лиды. Астрологи объявили неделю менеджмента, количество кода снизилось на 100%.

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

                Да что же там?
              • Как превратить любой скрипт в Telegram-бота

                • Tutorial

                Если вам нужен простенький Telegram bot, способный выполнять скрипты (написанные на любом языке) и отвечать текстом и картинками, то вам под кат. Там вы найдёте рассказ о бот-движке, который делает то, что вам надо.


                Telegram bot

                Читать дальше →
              • Сети для начинающего IT-специалиста. Обязательная база

                Примерно 80% из нас, кто заканчивает университет с какой-либо IT-специальностью, в итоге не становится программистом. Многие устраиваются в техническую поддержку, системными администраторами, мастерами по наладке компьютерных устройств, консультантами-продавцами цифровой техники, менеджерами в it-сферу и так далее.


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


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


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


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


                Именно поэтому я решил собрать основные темы в одну статью и объяснить их как можно проще «на пальцах».

                Читать дальше →
              • С чего начинается Elasticsearch

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


                Самое первое и главное заблуждение — "нужен поиск, так бери эластик!". Но в действительности, если вам нужен шустрый поиск для небольшого или даже вполне себе крупного проекта, вам стоит разобраться в теме поподробней и вы откажетесь от использования именно этой системы.

                Читать дальше →
              • Типовые ошибки Python-разработчиков на собеседованиях



                  Всем привет, сегодня я хотел бы поговорить о некоторых сложностях и заблуждениях, которые встречаются у многих соискателей. Наша компания активно растет, и я часто провожу или участвую в проведении собеседований. В итоге я выделил несколько вопросов, которые многих кандидатов ставят в сложное положение. Давайте вместе рассмотрим их. Я опишу специфические вопросы для Python, но в целом статья подойдет для любого собеседования. Для опытных разработчиков никаких истин тут открыто не будет, но тем, кто только начинает свой путь, будет легче определиться с темами на ближайшие несколько дней.
                  Читать дальше →
                • Как правильно и легко рассчитать прибыль на инвестиции или калькулятор ROI на Python

                    Пусть у вас есть вложения активов в некую стратегию (даже если buy and hold), и вы хотите рассчитать return on investment (ROI). Если вы не производили никаких выводов или депозитов, тогда всё просто - используем школьную формулу.

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

                    Читать далее...
                  • Пишем примитивный и никому не нужный компилятор

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

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

                      В посте мы рассмотрим, как можно написать свой компилятор C-подобного языка меньше чем за час, исписав всего 300 строчек кода. В качестве бонуса, сюда входит и код виртуальной машины, в байткод которой будет компилироваться исходник.
                      Читать дальше →
                    • Пишем движок полнотекстового поиска на Go

                      • Translation
                      Полнотекстовый поиск — один из тех инструментов, которые мы используем практически каждый день, когда ищем какую-то информацию в интернете. Full-Text Search (FTS) — это метод поиска текста в коллекции документов. Документ может ссылаться на веб-страницу, газетную статью, сообщение электронной почты или любой структурированный текст.

                      Сегодня мы собираемся написать собственный движок FTS. К концу этой статьи он сможет выполнять поиск по миллионам документов менее чем за миллисекунду. Начнём с простых поисковых запросов, таких как «Выдать все документы со словом cat», а потом расширим движок для поддержки более сложных логических запросов.

                      Примечание: самым известным движком полнотекстового поиска является Lucene (а также Elasticsearch и Solr, построенные на его основе).
                      Читать дальше →
                    • Почему налоговая не верит в айтишников-индивидуальных предпринимателей?

                      Сколько может зарабатывать айтишник на ИП? У ФНС свое мнение


                      Когда один человек много зарабатывает и честно платит налоги, налоговики смотрят со стороны и думают: «Как такое возможно? Наверняка у него масса помощников! Пусть и за них налоги заплатит!»

                      Рассказываем, как при наличии электронной подписи в пару кликов забыть о подобных притязаниях налоговой.
                      Читать дальше →
                    • И снова о Legacy. Вечная боль техдира

                        Жил-был технический директор. Он жил долго и счастливо. И пригласили его на интересный и перспективный проект. Владельцы бизнеса размахивали руками, поднимая сквозняк в помещении — и рисовали маркерами прямо на оконных стёклах счастливое будущее, масштабность задачи, нули после первой цифры в зарплате. Звучит, как сказка.


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


                        Техдир пришёл к ним, поздоровался и спросил: «Ребята, скажите честно, какой аццкий зверь меня ждёт в этом проекте? Потому что стейкхолдеры рассказали только о единорогах с радужными хвостами и розовых пони? Legacy, да?»


                        «Legacy, ...», — грустно ответили разработчики.


                        Сказка закончилась. Началась работа — и непростые решения.


                        Читать дальше →
                      • Как снять обучающий видеоролик: 10 секретов технического писателя

                          Я – технический писатель, 4 года снимаю обучающие видеоролики для системы Directum RX. В беседе со мной коллеги часто слышат:

                          • «К ролику пришли замечания»;
                          • «Дай, пожалуйста, доступ к роликам»;
                          • «Любовь к роликам» и тому подобное.

                          Наверное, в их головах рисуются примерно такие картинки:

                          image
                          Читать дальше →