Search
Write a publication
Pull to refresh
-5
@cosmolevread⁠-⁠only

User

Send message

Перепрограммируем заводской датчик CO2 Zigbee от компании Tuya

Level of difficultyEasy
Reading time3 min
Views17K

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

Читать далее

Исповедь хакера: как работает финансовый рынок?

Level of difficultyEasy
Reading time21 min
Views28K

Это статья - еще один изумруд из недр интернет андеграунда. Гарантирую, что вы найдете в ней что-то интересное. Возможно, мысли автора выражены в несколько экспрессивной и утрированной форме, но учитывая такие исторические события как Азиатский финансовый кризис и Кризис 2008 года, рынок действительно напоминает сюрреалистическую зарисовку. И наше время определенно в этом плане выглядит еще более сюрреалистичным. Тот же Трампкоин, который все обсуждали несколько недель назад, откровенные манипляции с DOGE Илоном Маском, поэтому его экспрессивность понять можно, но мат я убрал)

Читать далее

Майнинг отопление загородного дома. Криптокотел. Опыт использования

Level of difficultyMedium
Reading time7 min
Views30K

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

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

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

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

Читать далее

Я взял кредит 700 тысяч на разработку своей визуальной новеллы, чтобы тебе не пришлось

Reading time12 min
Views34K

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

Читать далее

Использование оверлейных сетей для обхода NAT

Reading time15 min
Views17K

У меня, как и у многих посетителей Хабра есть raspberry pi. А ещё, почти честные сто мегабит от провайдера домашнего интернета. Идея о маленьком домашнем сервере от такой комбинации появляется сама по себе. Но сервер он ведь на то и сервер, чтобы работал независимо от факта нахождения пользователя в физической доступности. В связи с этим, возникает вопрос, как подключаться к такому серверу удалённо? Обычно провайдеры домашнего интернета прячут своих пользователей за NAT, так как IPv4 на всех не напасёшься. Мой провайдер исключением не является. Внешний статический IP он так же не предоставляет (по крайней мере, такой услуги в ЛК я не нашёл), да и совершенно ни к чему выставлять шлюз в локальную домашнюю сеть во внешний интернет. Shodan, ботнеты, сканеры и краулеры никто не отменял. Раньше для подобной задачи решение было очевидным – виртуальная частная сеть. Однако сейчас, с учётом нарушения сетевого коннекта по определённым протоколам, хочется иметь как минимум резервный удалённый канал связи. Да, нарушение коннекта по привычным для данной задачи протоколам неполное: можно отыскать протокол, который не забанен, можно поиграть с настройками, тем не менее хочется иметь возможность сделать это удалённо. Мой взгляд упал на нестандартные средства решения этой задачи.

Читать далее

Баг в дизайне коллекций

Level of difficultyEasy
Reading time4 min
Views2.9K

В этой статье речь пойдёт о фреймворке коллекций в Java. Относительно недавно (в 3 кв. 2023 года) эта библиотека вновь слегка обновилась. Я ознакомился с обновлениями, и скажу, что они меня разочаровали.

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

Итак случившееся обновление - добавление последовательных версий интерфейсов в коллекции, а именно SequencedCollection, SequencedSet и SequencedMap. Такие последовательные коллекции ещё во времена Рапиры, кажется, называли кортежами.

Читать далее

Еще один монитор CO2 без датчика CO2

Reading time5 min
Views34K

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

Но тут история иная. Во-первых, цена как у реальных приборов. Во-вторых, это не абсолютный ноунейм. И в-третьих – производитель открыто заверяет, что установлен дорогой инфракрасный датчик. Так почему бы не попробовать?

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

Читать далее

Катастрофа в российской зоне проекта NTPPool.org

Level of difficultyEasy
Reading time4 min
Views94K

Привет, Хабр! Своим первым постом на площадке я хочу привлечь внимание к катастрофе, сложившейся на данный момент в RU-зоне проекта NTPPool.org. Я думаю, что проект в представлении не нуждается, тем не менее, для тех, кто никогда о нём не слышал - во многом благодаря ему все ваши компьютеры, смартфоны, серверы и прочие гаджеты имеют точное время.

Читать далее

Заточка кухонных ножей мусатом

Level of difficultyEasy
Reading time9 min
Views84K

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

Читать далее

Grafana Stack: закрываем все современные потребности Observability

Reading time6 min
Views8.4K

Ни одна система не может функционировать без сбоев, всегда могут возникнуть ситуации, когда в работе софта возникают проблемы. И здесь важное значение имеет observability — понятие, включающее в себя мониторинг и наблюдаемость. С помощью мониторинга мы можем определить, когда возникла проблема, а наблюдаемость позволяет нам понять, почему она возникла.

В этой статье мы поговорим о том, как можно реализовать observability с помощью сервисов стека Grafana.

Читать далее

Null-безопасность в Java: когда нули тоже имеют значение

Reading time5 min
Views2.8K

В компании “Свой Банк” мы активно развиваем лучшие практики и стандарты в Backend-разработке. Но, прежде чем выработать хотя бы одну практику, необходимо изучить материалы, разобраться в теме и выработать подходящий вариант. Поэтому в данной статье затронем основные понятия и концепции работы null-безопасности в объектно-ориентированном языке программирования Java.

Что такое Null-безопасность и Nullability

Nullability — это концепция, которая описывает, может ли переменная или выражение содержать значение `null`. Несмотря на свою кажущуюся простоту, работа с `null` часто становится причиной сложных ошибок, таких как `NullPointerException` (NPE). Из-за этого возникла концепция null-безопасности, целью которой является защита кода от ошибок, связанных с `null`.

Null-безопасность означает, что в коде либо отсутствуют `null`-значения, либо они обрабатываются явно и безопасно. В Java существуют разные подходы к обеспечению `null`-безопасности, которые позволяют управлять возможностью появления `null` в коде и минимизировать риски, связанные с их использованием.

Итого Nullability - это способность объекта быть `null`.

Null-безопасность - это свойство языка программирования безопасно работать с `null`.

Читать далее

Курсы врут? Уникальные торговые предложения

Level of difficultyEasy
Reading time11 min
Views9.1K

Купи курс, и тебя обманут, а я расскажу, как. Но самое главное — раскрою секрет, как сделать так, чтобы больше никогда не было проблем с курсами или их отделами продаж!

В мире бизнесов есть термин УТП (USP) — расшифровывается как «уникальное торговое предложение». И это один из главных засранцев, которые заставляют тебя покупать бесполезные курсы, игнорируя здравый смысл, потребности и ценность предложений. Заходя на лендинг какого‑нибудь продукта, мы сразу видим под шапкой и названием кучу УТП, которые разработали маркетологи. Все они разные. Есть для вашего удобства, для выгоды и даже решающие ваши страхи и проблемы. Они направлены на разные сегменты клиентов, но 90% из них — это словоблудие, за которым ничего не стоит. Давай разберем мой топ самых мерзких и даже опасных УТП.

Читать далее

Создаем свою библиотеку на C++ с тестированием, CMake и блекджеком: часть 2

Level of difficultyMedium
Reading time30 min
Views8.7K

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

Если вы ловили себя на мысли: «А почему мне бы не создать свою полноценную библиотеку?», то я рекомендую прочитать вам мою статью.

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

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

Добро пожаловать во вторую, скорее всего финальную часть статьи! Здесь мы окончательно допишем код, исправим некоторые ошибки.

Читать далее

Часы Уоррена: устройство, которое совершило революцию в электросетях

Level of difficultyEasy
Reading time10 min
Views27K

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

Сегодня расскажем про Генри Уоррена, который просто хотел сделать часы с электроприводом. А в результате получил устройство, синхронизирующее частоту электрической сети на 95% электростанций США. 

Читать далее

Секреты айтишной карьеры, о которых лучше не рассказывать…

Level of difficultyEasy
Reading time11 min
Views89K

Секреты айтишной карьеры, о которых лучше не рассказывать...

...но которыми всё же с нами поделился QA lead "ITQ Group" Сергей Мурашов.

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

Читать далее

Как мы делали просмотрщик BIM-моделей: взлеты, падения и уроки

Level of difficultyMedium
Reading time4 min
Views3.7K

Привет, Хабр! Если вы открыли эту статью, вероятно, вам интересна разработка BIM‑приложений, а конкретно — просмотрщиков 3D‑моделей (Viewer). Возможно, у вас уже есть свое BIM‑приложение, и вы столкнулись с трудностями, или вы только планируете начать разработку и собираете информацию. В любом случае, вы попали по адресу.

Я расскажу вам историю о том, как мы создавали наш 3D Viewer, какие подводные камни встретились на пути, и какие уроки мы извлекли. Поехали!

Читать далее

ByteWeaver в Open Source: инструментирование байт-кода Java во имя великого блага

Level of difficultyHard
Reading time14 min
Views5.6K

Про байт‑код написано уже немало. Он везде, и никого этим не удивить: его генерирует компилятор, переупаковывает система сборки, «портит» обфускатор и изредка читают программисты. Естественно, для работы с байт‑кодом есть немало инструментов, которые используются в разных областях и на разных платформах. Среди них и ByteWeaver — инструмент для патчинга байт‑кода во время сборки, который может быть полезен разработчикам под Android.

Меня зовут Александр Асанов. Я Android‑разработчик в OK, Tracer, ByteWeaver. В этой статье я разберу, что такое байт‑код, как и зачем с ним работать, расскажу о ByteWeaver и покажу примеры работы с байт‑кодом.

Читать далее

Создаём быстрые gRPC-сервисы с Tonic и Rust

Level of difficultyEasy
Reading time5 min
Views1.9K

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

Читать далее

Физика сверхъестественного: тонкие энергии, астральные тела, торсионные поля и высшие планы бытия

Level of difficultyMedium
Reading time40 min
Views23K

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

Читать далее

Изучаем карты с исходным кодом GeoServer

Level of difficultyMedium
Reading time14 min
Views2.1K

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

Читать далее

Information

Rating
Does not participate
Registered
Activity