
Предыдущий проект о перепрограммировании заводского термостата вызвал достаточно большой интерес у сообщества (ссылка будет в конце статьи). И вот поступило предложение проверить, можно ли таким же образом избавиться от спама на датчике CO2.
User
Предыдущий проект о перепрограммировании заводского термостата вызвал достаточно большой интерес у сообщества (ссылка будет в конце статьи). И вот поступило предложение проверить, можно ли таким же образом избавиться от спама на датчике CO2.
Это статья - еще один изумруд из недр интернет андеграунда. Гарантирую, что вы найдете в ней что-то интересное. Возможно, мысли автора выражены в несколько экспрессивной и утрированной форме, но учитывая такие исторические события как Азиатский финансовый кризис и Кризис 2008 года, рынок действительно напоминает сюрреалистическую зарисовку. И наше время определенно в этом плане выглядит еще более сюрреалистичным. Тот же Трампкоин, который все обсуждали несколько недель назад, откровенные манипляции с DOGE Илоном Маском, поэтому его экспрессивность понять можно, но мат я убрал)
Как я превратил майнинг в источник тепла: котел, который зарабатывает деньги
Все началось с обычного увлечения майнингом, но постепенно это хобби превратилось в настоящий образ жизни. Сначала были видеокарты, потом асики, масштабирование фермы и, наконец, идея построить дом, который будет не только куплен на доход от крипты, но и отапливаться ею.
Казалось бы, отопление за счет майнинга – звучит как фантастика. Но после долгих расчетов, тестов и внедрения системы криптоотопления я убедился, что это реально. Теперь асики не просто добывают биткоины, но и согревают мой дом, зарабатывая сотни тысяч рублей в год.
Как это работает? Какие были сложности? И главное – насколько выгодно такое решение? В этом материале я расскажу всю историю своего пути – от первых видеокарт до криптокотла, который греет мой дом и кошелек.
Приветствую тебя. Ты, наверное, уже задался вопросом, какой нездоровый на голову человек будет влезать в такие долги при нынешней экономической ситуации в стране, да и в мире в целом. На что он вообще надеется, делая визуальную новеллу, да ещё в пиксель-арте и в советском сеттинге по детским страшилкам? Он что, совсем больной? В целом вопросы справедливы и, возможно, даже диагноз верный. Но давайте взглянем чуточку назад и найдём причинно-следственные связи для столь отчаянного, на первый взгляд, поступка.
У меня, как и у многих посетителей Хабра есть raspberry pi. А ещё, почти честные сто мегабит от провайдера домашнего интернета. Идея о маленьком домашнем сервере от такой комбинации появляется сама по себе. Но сервер он ведь на то и сервер, чтобы работал независимо от факта нахождения пользователя в физической доступности. В связи с этим, возникает вопрос, как подключаться к такому серверу удалённо? Обычно провайдеры домашнего интернета прячут своих пользователей за NAT, так как IPv4 на всех не напасёшься. Мой провайдер исключением не является. Внешний статический IP он так же не предоставляет (по крайней мере, такой услуги в ЛК я не нашёл), да и совершенно ни к чему выставлять шлюз в локальную домашнюю сеть во внешний интернет. Shodan, ботнеты, сканеры и краулеры никто не отменял. Раньше для подобной задачи решение было очевидным – виртуальная частная сеть. Однако сейчас, с учётом нарушения сетевого коннекта по определённым протоколам, хочется иметь как минимум резервный удалённый канал связи. Да, нарушение коннекта по привычным для данной задачи протоколам неполное: можно отыскать протокол, который не забанен, можно поиграть с настройками, тем не менее хочется иметь возможность сделать это удалённо. Мой взгляд упал на нестандартные средства решения этой задачи.
В этой статье речь пойдёт о фреймворке коллекций в Java. Относительно недавно (в 3 кв. 2023 года) эта библиотека вновь слегка обновилась. Я ознакомился с обновлениями, и скажу, что они меня разочаровали.
Далее идёт разбор того, что именно я считаю концептуально неверными архитектурным решением в коллекциях, и предложение своего способа их организации.
Итак случившееся обновление - добавление последовательных версий интерфейсов в коллекции, а именно SequencedCollection, SequencedSet и SequencedMap. Такие последовательные коллекции ещё во времена Рапиры, кажется, называли кортежами.
Там, где что-то стоит дорого и по определению не может стоить дешевле, ушлые производители обязательно предложат «полноразмерный макет» за полцены. Подобными «макетами» домашних мониторов CO2 много лет забиты все маркетплейсы.
Но тут история иная. Во-первых, цена как у реальных приборов. Во-вторых, это не абсолютный ноунейм. И в-третьих – производитель открыто заверяет, что установлен дорогой инфракрасный датчик. Так почему бы не попробовать?
Под катом небольшой рассказ про все эти датчики и пара советов, как не промахнуться.
Привет, Хабр! Своим первым постом на площадке я хочу привлечь внимание к катастрофе, сложившейся на данный момент в RU-зоне проекта NTPPool.org. Я думаю, что проект в представлении не нуждается, тем не менее, для тех, кто никогда о нём не слышал - во многом благодаря ему все ваши компьютеры, смартфоны, серверы и прочие гаджеты имеют точное время.
Я инженер, «переболел» заточкой ножей. Поделюсь наименее очевидными элементами теории; и простейшей техникой поддержания кухонного ножа острым за одну минуту в неделю.
Ни одна система не может функционировать без сбоев, всегда могут возникнуть ситуации, когда в работе софта возникают проблемы. И здесь важное значение имеет observability — понятие, включающее в себя мониторинг и наблюдаемость. С помощью мониторинга мы можем определить, когда возникла проблема, а наблюдаемость позволяет нам понять, почему она возникла.
В этой статье мы поговорим о том, как можно реализовать observability с помощью сервисов стека Grafana.
В компании “Свой Банк” мы активно развиваем лучшие практики и стандарты в Backend-разработке. Но, прежде чем выработать хотя бы одну практику, необходимо изучить материалы, разобраться в теме и выработать подходящий вариант. Поэтому в данной статье затронем основные понятия и концепции работы null-безопасности в объектно-ориентированном языке программирования Java.
Что такое Null-безопасность и Nullability
Nullability — это концепция, которая описывает, может ли переменная или выражение содержать значение `null`. Несмотря на свою кажущуюся простоту, работа с `null` часто становится причиной сложных ошибок, таких как `NullPointerException` (NPE). Из-за этого возникла концепция null-безопасности, целью которой является защита кода от ошибок, связанных с `null`.
Null-безопасность означает, что в коде либо отсутствуют `null`-значения, либо они обрабатываются явно и безопасно. В Java существуют разные подходы к обеспечению `null`-безопасности, которые позволяют управлять возможностью появления `null` в коде и минимизировать риски, связанные с их использованием.
Итого Nullability - это способность объекта быть `null`.
Null-безопасность - это свойство языка программирования безопасно работать с `null`.
Купи курс, и тебя обманут, а я расскажу, как. Но самое главное — раскрою секрет, как сделать так, чтобы больше никогда не было проблем с курсами или их отделами продаж!
В мире бизнесов есть термин УТП (USP) — расшифровывается как «уникальное торговое предложение». И это один из главных засранцев, которые заставляют тебя покупать бесполезные курсы, игнорируя здравый смысл, потребности и ценность предложений. Заходя на лендинг какого‑нибудь продукта, мы сразу видим под шапкой и названием кучу УТП, которые разработали маркетологи. Все они разные. Есть для вашего удобства, для выгоды и даже решающие ваши страхи и проблемы. Они направлены на разные сегменты клиентов, но 90% из них — это словоблудие, за которым ничего не стоит. Давай разберем мой топ самых мерзких и даже опасных УТП.
В мире программирования создание собственных библиотек — это не просто возможность пополнения своего портфолио или способ структурировать код, а настоящий акт творческого самовыражения (и иногда велосипедостроения). Каждый разработчик иногда использовал в нескольких своих проектах однообразный код, который приходилось каждый раз перемещать. Да и хотя бы как упаковать свои идеи и знания в удобный и доступный формат, которым можно будет поделиться с сообществом.
Если вы ловили себя на мысли: «А почему мне бы не создать свою полноценную библиотеку?», то я рекомендую прочитать вам мою статью.
Эту статью вы можете использовать как шпаргалку для создания проектов, и не только библиотек.
Некоторые из вас могут подумать, что мы изобретаем велосипед. А я в ответ спрошу — сможете ли вы прямо сейчас, без подсказок, только по памяти, нарисовать велосипед без ошибок?
Добро пожаловать во вторую, скорее всего финальную часть статьи! Здесь мы окончательно допишем код, исправим некоторые ошибки.
Сколько в истории было случаев, когда человек придумывает какое-нибудь устройство для достаточно узкой задачи, а потом выясняется, что совершается революция совсем в другой отрасли? На самом деле подобных случаев немало. Например, «Виагру» разрабатывали как средство нормализации высокого давления, а «Кока-колу» — для облегчения мигрени.
Сегодня расскажем про Генри Уоррена, который просто хотел сделать часы с электроприводом. А в результате получил устройство, синхронизирующее частоту электрической сети на 95% электростанций США.
Секреты айтишной карьеры, о которых лучше не рассказывать...
...но которыми всё же с нами поделился QA lead "ITQ Group" Сергей Мурашов.
Давным-давно, когда трава была зеленой, а страна не пестрила рекламой IT-курсов, профессия тестировщика еще не была той самой ниточкой, за которую может зацепиться человек без сверхспособностей, чтобы попасть в мир IT. Именно тогда свой путь QA и начал автор этой статьи.
Привет, Хабр! Если вы открыли эту статью, вероятно, вам интересна разработка BIM‑приложений, а конкретно — просмотрщиков 3D‑моделей (Viewer). Возможно, у вас уже есть свое BIM‑приложение, и вы столкнулись с трудностями, или вы только планируете начать разработку и собираете информацию. В любом случае, вы попали по адресу.
Я расскажу вам историю о том, как мы создавали наш 3D Viewer, какие подводные камни встретились на пути, и какие уроки мы извлекли. Поехали!
Про байт‑код написано уже немало. Он везде, и никого этим не удивить: его генерирует компилятор, переупаковывает система сборки, «портит» обфускатор и изредка читают программисты. Естественно, для работы с байт‑кодом есть немало инструментов, которые используются в разных областях и на разных платформах. Среди них и ByteWeaver — инструмент для патчинга байт‑кода во время сборки, который может быть полезен разработчикам под Android.
Меня зовут Александр Асанов. Я Android‑разработчик в OK, Tracer, ByteWeaver. В этой статье я разберу, что такое байт‑код, как и зачем с ним работать, расскажу о ByteWeaver и покажу примеры работы с байт‑кодом.
Сегодня посмотрим, как с помощью фреймворка Tonic и языка Rust создавать gRPC-сервисы для задач машинного обучения. Если в вашем проекте нужно максимально эффективно строить распределённые системы, а производительность и асинхронное программирование — это то, что вы цените, то Rust в связке с Tonic станет отличным инструментом
На современном рынке эзотерических услуг есть предложения на любой вкус и кошелёк, и они пользуются устойчивым спросом. Экстрасенсы занимаются телепатией и телекинезом, контактёры совершают астральные путешествия и общаются с потусторонними сущностями, энергопрактики работают с тонкими телами, аурами и жизненными энергиями, а целители‑ньюэйджеры совмещают в своей деятельности парапсихологию, астрологию, гомеопатию, акупунктуру и биорезонанс. Несмотря на внешние различия, все эти эзотерические учения и практики так или иначе основаны на идее скрытого от обычных людей «тонкого» мира, информационно‑энергетического поля или таинственной силы — посредника между духом и материей. В данной статье мы разберёмся, совместимо ли существование такой силы с фундаментальными физическими теориями, и чем упомянутые сущности отличаются от невидимых сущностей, известных науке: квантовых полей, пространства‑времени или параллельных миров.
Точные и подробные карты невероятно выручают туристов, будь это планирование путешествия или попытка не потеряться в незнакомом месте. Помочь в обслуживании таких данных на серверной стороне может GeoServer. Посмотрим же, что таится внутри этого проекта.