Как стать автором
Обновить
4
0.1
Aleksey Bondarev @Desprit

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

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

Умный коттедж 500 м² на Home Assistant: автоматизируем только нужное

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров32K

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

Но что, если подойти с умом и выбрать только действительно нужное, ограничившись светом, шторами, датчиками и климатом?

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

Читать далее
Всего голосов 16: ↑16 и ↓0+16
Комментарии36

Chrome Headless против cloudflare JS challenge

Уровень сложностиСредний
Время на прочтение41 мин
Количество просмотров24K

Автоматизация сбора информации с различных ресурсов - обычная задача для людей разных сфер деятельности. Жаль, что не всегда бывает достаточно сделать простой GET запрос и разобрать полученный html. Веб-сайты, с которых собираются данные, принимают защитные меры для предотвращения автоматизированных запросов. Одной из таких мер является использование cloudflare. Сегодня мы посмотрим, как cloudflare выявляет ботов через javascript и коснёмся темы деобфускации скриптов.

Читать далее
Всего голосов 82: ↑82 и ↓0+82
Комментарии6

Lua конфигурация Neovim для разработки на Go

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

В процессе знакомства с Neovim было прочитано много статей, конфигураций на Github, было просмотрено огромное количество роликов на Youtube на тему настройки, но в большинстве случаев приходилось донастраивать все под себя. В этой статье я расскажу как я настроил Neovim для разработки на Go, используя только Lua плагины и init.lua.

Читать далее
Всего голосов 12: ↑10 и ↓2+9
Комментарии13

Цифровая свобода. Часть 1. Менеджер паролей

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

Всем привет! Я хочу запустить цикл статей с инструкциями которые помогут, отвязаться от сервисов и вернут вам контроль над вашими данными. Тут будут представлены opensource аналоги сервисов, которыми все мы пользуемся каждый день и утилиты для бекапа ваших данных из цепких лап вендоров. Я не ставлю цель 100% уйти на опенсорс и селфхостед, всё таки сервисы должны быть удобными и доступными. Поэтому это не только полноценные аналоги, иногда это будут утилиты для бекапов. Главное это удобство, бесплатность и контроль над своими данными.

Читать далее
Всего голосов 14: ↑13 и ↓1+15
Комментарии58

Лингвистическая фантастика. Книги, в которых язык больше, чем просто средство для общения

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

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

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

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

Изучаем английский с помощью дейт-симов. Романсим цифровых девушек и прокачиваем лексику

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

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

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

У симуляторов свиданий есть пара крутых преимуществ перед остальными жанрами игр. С них и начнем.

Читать далее
Всего голосов 19: ↑18 и ↓1+23
Комментарии12

Делаем поиск в веб-приложении с нуля

Время на прочтение26 мин
Количество просмотров19K
В статье «Делаем современное веб-приложение с нуля» я рассказал в общих чертах, как выглядит архитектура современных высоконагруженных веб-приложений, и собрал для демонстрации простейшую реализацию такой архитектуры на стеке из нескольких предельно популярных и простых технологий и фреймворков. Мы построили single page application с server side rendering, поддерживающее просмотр неких «карточек», набранных в Markdown, и навигацию между ними.

В этой статье я затрону чуть более сложную и интересную (как минимум мне, разработчику команды поиска) тему: полнотекстовый поиск. Мы добавим в наш контейнерный рай ноду Elasticsearch, научимся строить индекс и делать поиск по контенту, взяв в качестве тестовых данных описания пяти тысяч фильмов из TMDB 5000 Movie Dataset. Также мы научимся делать поисковые фильтры и копнём совсем немножко в сторону ранжирования.

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

Исправляем опечатки в поисковых запросах

Время на прочтение14 мин
Количество просмотров19K
Наверное, любой сервис, на котором вообще есть поиск, рано или поздно приходит к потребности научиться исправлять ошибки в пользовательских запросах. Errare humanum est; пользователи постоянно опечатываются и ошибаются, и качество поиска от этого неизбежно страдает — а с ним и пользовательский опыт.

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



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

В этой статье мы разберём один из классических подходов к исправлению опечаток, от построения модели до написания кода на Python и Go. И в качестве бонуса — видео с моего доклада «”Очки верткальной реальности”: исправляем опечатки в поисковых запросах» на Highload++.
Всего голосов 22: ↑21 и ↓1+20
Комментарии8

Популярные заблуждения про радиационную стойкость микросхем

Время на прочтение31 мин
Количество просмотров109K
Примерно в каждой второй теме на Хабре, касающейся космонавтики или электроники, всплывает тема радиационной стойкости. Через новости об отечественной космонавтике красной нитью проходит тематика импортозамещения радстойкой элементной базы, но в то же самое время Элон Маск использует дешевые обычные чипы и гордится этим. А изральтяне в «Берешите» использовали радстойкий процессор и тоже гордятся этим. Да и в принципе микроэлектронная отрасль в России живет по большей части за счет госзаказа с соответствующими требованиями. Наблюдение за регулярными спорами насчет того, как надо правильно строить спутники, показывает, что подготовка участников обычно невысока, а их аргументация отягощена стереотипами, случайно услышанными вырванными из контекста фактами и знаниями, устаревшими много лет назад. Я подумал, что читать это больше нет сил, поэтому, дорогие аналитики, устраивайтесь поудобнее на своих диванах, и я начну небольшой (на самом деле большой) рассказ о самых популярных заблуждениях на тему того, что такое радиационная стойкость интегральных микросхем.


Рисунок 1. Непременная красивая картинка про космическое излучение и хрупкую Землю.
Читать дальше →
Всего голосов 231: ↑230 и ↓1+229
Комментарии117

«Если вам нужно кого-то убить, то вы обратились по адресу»

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


Свежим мартовским днём 2016 года Стивен Олвайн вошёл в закусочную «Вендис» в Миннеаполисе. Ощущая запах застарелого масла для жарки, он искал человека в тёмных джинсах и синей куртке. Олвайн, работавший в службе поддержки в области ИТ, был тощим ботаником в проволочных очках. У него с собой было $6000 наличными – он собрал их, отнеся в ломбард серебряные слитки и монеты, чтобы избежать подозрений по поводу снятия денег с банковского счёта. Он обнаружил нужного человека в одной из кабинок.

Они договорились о встрече на сайте LocalBitcoins, где собираются люди, желающие купить или продать криптовалюту близ своего места жительства. Олвайн открыл приложение Bitcoin Wallet на телефоне и передал наличные, а человек отсканировал QR-код для перевода биткоинов. Транзакция прошла без проблем. Потом Олвайн вернулся к машине и обнаружил, что ключи от неё остались внутри, а дверь заперта.
Читать дальше →
Всего голосов 112: ↑93 и ↓19+74
Комментарии172

Python Testing с pytest. Начало работы с pytest, Глава 1

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

Вернуться Дальше


Я обнаружил, что Python Testing с pytest является чрезвычайно полезным вводным руководством к среде тестирования pytest. Это уже приносит мне дивиденды в моей компании.

Chris Shaver
VP of Product, Uprising Technology


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

Unittest и абстрактные тесты

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

Вместо вступления


Unittest — наверное самый известный фреймворк для написания тестов в Python. Он очень прост в освоении и его легко начать использовать в вашем проекте. Но ничто не бывает идеальным. В этом посте я хочу рассказать об одной возможности, которой лично мне (думаю, не одному) не хватает в unittest.
Читать дальше →
Всего голосов 21: ↑20 и ↓1+19
Комментарии1

Первый взгляд на FoundationDB, открытую Apple

Время на прочтение9 мин
Количество просмотров19K
В прошлой статье мы рассматривали ограничения и препятствия, которые возникают, когда нужно горизонтально масштабировать данные и иметь гарантию ACID-свойств транзакций. В этой статье рассказываем о технологии FoundationDB и разбираемся, как она помогает преодолеть эти ограничения при разработке mission-critical приложений.

FoundationDB — это распределенная NoSQL база данных с ACID-транзакциями уровня Serializable, хранящая отсортированные пары ключ-значение (ordered key-value store). Ключами и значениями могут быть произвольные последовательности байт. У неё нет единой точки падения — все машины кластера равноправны. Она сама распределяет данные по серверам кластера и  масштабируется на лету: когда в кластер нужно добавить ресурсов, ты просто добавляешь адрес новой машины на конфигурационных серверах и база сама подхватывает ее.
Читать дальше →
Всего голосов 34: ↑34 и ↓0+34
Комментарии15

Новый взгляд на изучение и документирование исходного кода

Время на прочтение3 мин
Количество просмотров27K
TL;DR Привет. Меня зовут Богдан и я изучаю проблемы чтения кода. Я только что закочнил первую рабочую версию «codecrumbs» — визуального инструмента для изучения исходного кода с помощью «хлебных крошек». Гитхаб репозиторий можно посмотреть тут.

image

Проблема


Недавно я проводил опрос о главных проблемах с которыми мы сталкиваемся когда начинаем изучать исходный код большого проекта (если вы ещё не участвовали, то пройти опрос всё ещё можно тут).
Читать дальше →
Всего голосов 74: ↑70 и ↓4+66
Комментарии35

Профессиональная IoT-конференция InoThings++ — что было и что будет

Время на прочтение10 мин
Количество просмотров7.2K
Привет, Хабр!

Практически ровно год назад — в конце января 2018-го — мы попробовали провести первую профессиональную конференцию для разработчиков устройств, систем и проектов «Интернета вещей» InoThings++ 2018.

Помимо того, что она была первой для нас — если не считать небольших пробных секций по IoT на Highload++ и РИТ++ — мы постарались сделать её в достаточной степени выделяющейся и на фоне других IoT-конференций, который сейчас проходит весьма немало.



InoThings++ — это конференция для людей, делающих реальные проекты в IoT. У нас нет докладов с графиками Gartner и прогнозами роста рынка в миллиардах долларов, нет красивых презентаций о безмерной государственной поддержке и борьбе за статус самого умного города. Мы приглашаем выступать только тех, кто действительно работает руками — и может про это рассказать.

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



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

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

Обширный обзор собеседований по Python. Советы и подсказки

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

Всем привет!


Кратко о себе. По образованию я математик, а вот по профессии — программист. В сфере разработки с 2006 года. Хотя, поскольку программирование начали изучать ещё в школе, свои первые программки и игры я начал писать ещё в школе (примерно, с 2003). Так сложилось, что пришлось выучить и поработать на нескольких языках. Если не брать во внимание ВУЗ-овские лекции по С, С++, Бэйсику, Паскалю и Фортрану, то реально я работал с Delphi (более 6 лет), PHP (более 5 лет), Embedded (Atmel + PIC около 2.5 лет) и последним временем Python + чуть-чуть Scala. Конечно же без баз данных тоже никак не обойтись.


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

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

42 оператора расширенного поиска Google (полный список)

Время на прочтение15 мин
Количество просмотров302K
Те, кто давно занимается поисковой оптимизацией, хорошо знают об операторах расширенного поиска Google. Например, почти все знают об операторе site:, который ограничивает поисковую выдачу одним сайтом.

Большинство операторов легко запомнить, это короткие команды. Но уметь эффективно их использовать — совсем другая история. Многие специалисты знают основы, но немногие по-настоящему овладели этими командами.

В этой статье я поделюсь советами, которые помогут освоить поисковые операторы для 15 конкретных задач.
Читать дальше →
Всего голосов 127: ↑124 и ↓3+121
Комментарии40

Остров Пику: как из базальтового ада сделали уютный Туссент

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

Гора Пику образовалась очень задолго до прихода колонистов, ещё когда ломалась геологическая плита на Азорах. Высота Эвереста 8848 метров. А Пику — 8449 метров. Из которых 2351 метр приходятся на надводную часть, а остальное — гора под водой. То есть люди уже живут на склоне где-то в районе верхушки.

Представьте, что вы португальский колонист. Вам достался совершенно офигенный остров, состоящий почти полностью из базальта. И совсем немного — из почвы. Куда ни ткнись, везде атмосфера, напоминающая замок «Инферно» из Героев. Если просто стоять на берегу, скоро на зубах начнёт скрипеть от базальтовой и туфовой крошки. Потому что остров образовался всего 60-70 тысяч лет назад.

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

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

А потом вы вдруг понимаете, какое это крутое место. И вот на вечеринку приплыл неизвестный капитан, осмотрелся, и решил, что раз вы выжили, то выживут и остальные. И так появилось первое поселение.
Читать дальше →
Всего голосов 113: ↑108 и ↓5+103
Комментарии58

Азоры: последний резерв флоры в середине Атлантического океана

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

Долина внутри кратера вулкана, маленький «Затерянный мир», тёплый и надёжно защищённый от непогоды снаружи. Озеро так вообще +75 градусов Цельсия в некоторых местах.

Азорские острова — это архипелаг посреди Атлантического океана, примерно на полдороге между Европой и Америкой. Поскольку это единственные острова на многие километры вокруг, есть три классных спецэффекта:

  • Тут очень изолированный биом. Например, есть эндемичный азорский снегирь Pyrrhula murin (хотя тут вечное лето, даже на Новый год). Среди животных нет ничего ядовитого или иначе опасного для человека.
  • Очень высокая влажность из-за температурных инверсий и «шершавых» гор, останавливающих облака (как следствие — рай для флоры)
  • И тут очень важный перевалочный пункт как по дороге из Африки и Индии (вспоминаем времена Ост-Индской торговой кампании), так и начиная со Второй Мировой — база для дозаправки и встреч конвоев.

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

И ещё на островах очень, очень интересно. Сейчас расскажу.
Читать дальше →
Всего голосов 176: ↑172 и ↓4+168
Комментарии120

Multi-page SPA на Питоне

Время на прочтение15 мин
Количество просмотров12K
Мост между Python и React

Сова – это нано-фреймворк, который можно встроить в другие фреймворки.
Картинка с sova.online, на котором запущено 3 http сервера:
http://sova.online/ — просто Falcon
http://sova.online:8000/ — просто Django
http://sova.online:8001/ — просто Python (логин: 1, пароль: 1)
Там же исходные коды и инструкция по установке. Там же нет рекламы.


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

Информация

В рейтинге
3 134-й
Откуда
Ростов-на-Дону, Ростовская обл., Россия
Дата рождения
Зарегистрирован
Активность