• Миниатюрный датчик качества воздуха на батарейке с e-ink экраном

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

      Узнать подробности
      • +20
      • 2.1k
      • 5
    • Мы стоим на пороге кризиса «Фальшивой науки»

      • Translation


      Журналы все чаще отзывают научные статьи, потому что оказывается, что написаны они не теми, кем заявлено. Необходимо выработать более эффективные способы решения проблемы, в противном случае мы рискуем полностью утерять общественное доверие к науке.
      Читать дальше →
    • Почему я всё ещё люблю C, но при этом терпеть не могу C++?

      • Translation
      Мне на удивление часто приходится говорить о том, почему мне всё ещё нравится язык C, и о том, почему я плохо отношусь к C++. Поэтому я решил, что мне стоит об этом написать, а не снова и снова повторять одно и то же.



      Как это обычно бывает у C-программистов, язык C не был ни моим первым языком, ни языком, после которого я уже не изучал ничего другого. Но мне всё ещё нравится этот язык, и когда мне нужно писать программы — я выбираю именно его. Правда, в то же время, я стараюсь быть в курсе того, что происходит в мире современных (и не очень) языков программирования. Я слежу за тенденциями в этой сфере и пишу собственный хобби-проект, связанный с мультимедийными технологиями, на Rust. Почему же я до сих пор не поменял C на что-то более современное? И при чём тут C++?
      Читать дальше →
    • Как попасть в состояние потока?

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

      По полочкам:
    • Радуга «Роскосмоса»

        Галактика Андромеды в различных спектральных диапазонах: радио, инфракрасном, видимом, ультрафиолетовом и рентгеновском

        Два года назад в космосе завершилась работа российского спутника «Спектр-Р» — основы астрофизического проекта «РадиоАстрон». Сейчас ему на смену пришел космический телескоп «Спектр-РГ», а в разработке находятся еще две обсерватории «Спектр-УФ» и «Миллиметрон». Давайте посмотрим зачем «Роскосмос» и Российская академия наук создают эти телескопы, и как движется их реализация.

        Начнем издалека, чтобы разобраться почему астрономам недостаточно обычных телескопов на Земле.
        Узнать подробности
      • Из хлама в NAS и немного темы майнинга

        • Tutorial

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

        Итак мы имеем: ПК 11 летней давности в состоянии «трэш».
        Если подробнее: у блока питания вздуты все конденсаторы на выходе, у жёсткого диска взорванный полимерный конденсатор на входе питания, видеокарта тоже не стартует. По моим догадкам, по 12в линии явно пошло сильно больше 12в. При этом материнка с процессором остались живы. Чудо!
        И что можно из этого получить?
      • Анонс. Машинное обучение в геологии

          Завтра, 18 июня в 15:00 в наших соцсетях выступит Лейла Исмаилова, специалист машинного обучения в геологии и со-ведущая подкаста о геологах «Про вулканы и людей»

          Лейла окончила геологический факультет МГУ им. М.В. Ломоносова. Поступила в аспирантуру Баварского Геологического Института в Германии. Во время обучения в аспирантуре опубликовала статьи в престижных научных журналах (Nature и Science Publishing group) и работала в разных лабораториях в Германии, Франции и США. С подробным списком публикаций можно ознакомиться по ссылке.

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


          Читать дальше →
        • Разработка REST-серверов на Go. Часть 3: использование веб-фреймворка Gin

          • Translation
          Сегодня, в третьей части серии материалов, посвящённых разработке серверов на Go, мы займёмся реализацией нашего REST-сервера с использованием Gin — одного из самых популярных веб-фреймворков для Go. Вот код, который мы будем тут обсуждать.

          Перевод предыдущих частей:
          Разработка REST-серверов на Go. Часть 1: стандартная библиотека.
          Разработка REST-серверов на Go. Часть 2: применение маршрутизатора gorilla/mux


          Читать дальше →
          • +39
          • 3.6k
          • 2
        • Перемешивается ли электролит в аккумуляторе при движении автомобиля?


            Привет, Хабр! Серная кислота почти вдвое тяжелее воды, и её водные растворы, в том числе аккумуляторный электролит, склонны к расслоению: тяжёлая кислота вытесняет лёгкую воду вверх и опускается вниз. Как это влияет на работу аккумуляторной батареи, и насколько эффективно перемешивает электролит тряска при движении транспортного средства? Проведём эксперимент с видео и показаниями приборов.
            Перемешивается или нет? Узнай под катом
          • Юмористичный обзор Rust с перспективы JavaScript

            • Translation

            В этой статье я в несколько забавном ключе документирую кое-какие размышления о своем знакомстве с Rust с позиции прожженного энтузиаста JavaScript. Здесь вас ждет импровизированная прогулка по феодам Вестероса, встреча с Ланнистерами и даже замаскированный под остров корабль — занятные аналогии, которые можно провести с работой в этом языке.
            Читать дальше →
          • Неочевидные уязвимости онлайн сервисов. Часть первая


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

              А может быть, вы популярный хостинг? Хотите привлечь пользователей, используя около-тематический трафик — создаете онлайн сервис который смог бы заменить целые серверные утилиты — nslookup, dig, curl?! Звучит неплохо, но всё ли так хорошо с безопасностью пользователей?

              Об интересных и неочевидных уязвимостях онлайн-сервисов поговорим под катом.
              Узнать подробности
              • +65
              • 9.5k
              • 4
            • Запросить 100 серверов нельзя оптимизировать код. Ставим запятую

                Можно выделить ряд алгоритмов, которые являются базовыми и лежат в основе практически каждой строчки программ, написанных на языках высокого уровня. Хорошо иметь под руками классический многотомный труд Дональда Кнута "The Art of Computer Programming", там детально разобраны многие базовые алгоритмы. Но прочесть и усвоить все — задача, требующая много усилий и времени, которая должна как-то быть мотивирована.


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


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


                Является продолжением серии предыдущих публикаций.

                Читать дальше →
                • +46
                • 3.9k
                • 2
              • Рояль, азот и котик: как это было

                  Если кто-то пропустил, то с 24 по 28 мая мы реализовали проект под кодовым названием «Рояль, азот и котик». И настало время рассказать о том, как мы всё организовали, с грязными подробностями, скандалами, интригами и расследованиями.

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

                  Итак, наливайте в кружку кофе, смузи или ягер, и устраивайтесь поудобнее: впереди много гик-порно, мужиков с перфораторами и сварочными аппаратами, красивых девушек и, собственно, самого рояля «Красный октябрь», который, как и полагается музыкальному инструменту Made in USSR, пережил падение и даже не расстроился (в прямом и переносном смысле). Чего не скажешь о капиталистическом ноутбуке… 

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


                  Но, обо всем по порядку
                  • +36
                  • 3.9k
                  • 7
                • Вакцины vs антибиотики: почему люди не доверяют вакцинам, но не боятся злоупотреблять антибиотиками

                    Реакция мира на новый коронавирус в 2020 году и идущая с разным успехом в разных странах прививочная кампания от него него в 2021, обнажили и обострили множество слабых мест экономики и социальных проблем. Фактически, многие аспекты социального (коллективного) бытия сейчас переживают стресс-тест, подобного которому не было с начавшейся в 1929 году Великой депрессии.

                    Одна из особо проявивших себя, но недостаточно обсуждаемых динамик — разница в коллективном восприятии вакцин и антибиотиков.

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



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

                      Звонит как-то вендор и говорит, что в возврате бракованного железа — не их жёсткий диск.


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

                      Гарантийный отдел ковыряется с диском, а потом звонят:

                      — А зачем вы подменили диск?

                      Мы такие:

                      — В смысле подменили?

                      — Мы вам продавали другой. А тут корпус тот, а внутри — другой. Какие-то следы от отвёртки.

                      Дичь полнейшая! Мы начали было ругаться, но потом стали разбираться. Начали смотреть на камеры и увидели, что наш сотрудник очень подозрительно себя вёл, когда работал с этим диском в стойке. Как в плохих комедиях про жуликов: постоянно осматривался по сторонам, отходил в сторону, возвращался. Оказалось, что он подменил диск. Честно, я не знаю зачем. Его финансовая выгода минимальная, скорее всего, даже не окупает время работы по замене корпуса.

                      У нас было ещё несколько странных ситуаций, и сейчас я о них расскажу.
                      Узнать подробности
                    • Самодельный миниатюрный лазерный гравер на Arduino Uno

                      • Translation
                      • Tutorial

                      Полагаю, что проект, о котором я хочу рассказать, будет интересен всем, кто занимается электроникой. А именно, речь идёт о миниатюрном лазерном гравере, с помощью которого можно наносить изображения на картон, на дерево, на виниловые наклейки и на прочие подобные материалы. Идею проекта я почерпнул из этого руководства, сделав кое-что по-своему.
                      Как сделать гравер?
                    • Сборка ядра Linux 5.12.12 c LLVM 12 + Clang и LTO оптимизацией



                      Технический прогресс не стоит на месте, появляются новые компьютерные архитектуры, компиляторы становятся умнее и генерируют более быстрый машинный код. Современные задачи требуют все более креативного и эффективного решения. В данной статье пойдет речь, на мой взгляд, про один из самых прогрессивных тулчейнов LLVM и компиляторы на его основе Clang и Clang++, для языков программирования С и C++ соответственно. Хоть GCC — конкурент Clang, может агрессивнее оптимизировать циклы и рекурсию, Clang дает на выходе более корректный машинный код, и чаще всего не ломает поведение приложений. Плюс оптимизация программ не заканчивается только оптимизацией циклов, поэтому Clang местами дает лучшую производительность. В GCC же за счет переоптимизации вероятность получить unpredictable behavior значительно выше. По этой причине на многих ресурсах не рекомендуют использовать -O3 и LTO(Link Time Optimization) оптимизации для сборки программ. Плюс в случае агрессивной оптимизации, размер исполняемых файлов может сильно увеличиться и программы на практике будут работать даже медленнее. Поэтому мы остановились на Clang не просто так и опции компиляции -O3 и LTO работают в нем более корректно. Плюс современные компиляторы более зрелые, и сейчас уже нет тех детских болячек переоптимизации и LTO.
                      Узнать подробности
                    • Можно ли сделать деревянный стеллаж без инструмента используя только отвертку и 3D-принтер? Легко!.

                      • Tutorial


                      Приветствую! Я хочу поделиться с вами очередной своей разработкой, которая позволяет сделать надежную, крепкую мебель и при этом без необходимости иметь инструмент, пылить в доме/квартире и собрать её буквально за один день. Эта статья для аудитории Хабра, которая любит DIY и получает удовольствие от процесса создания вещей своими руками. Осторожно, в статье много изображений и фотографий.
                      Читать дальше →
                    • DDoS-атаки: откуда берется и куда девается “мусорный” трафик

                        На прошлой неделе в наших соцсетях выступил Георгий Тарасов, Product Manager в Qrator Labs.

                        Георгий выпускник ВМиК МГУ, работает в команде Qrator с 2012. Занимался разработкой, управлением проектами, собрал в компании команду pre-sales инженеров. Теперь развивает в Qrator новый продукт, а именно защиту от онлайн-ботов.

                        Делимся с вами расшифровкой эфира и записью.

                        Читать дальше →
                        • +48
                        • 5.7k
                        • 7
                      • Как я программировал шахматную партию против брата

                        • Translation


                        Это история о том, как я попытался выиграть у брата партию в шахматы. Всего лишь гребаную одну игру. Что в этом особенного? Хорош ли я в шахматах? Вовсе нет. Научился ли я чему-то в процессе игры? Тоже нет. Может, это история о путешествии ради путешествия, а не цели? Не совсем. Получил ли я хотя бы удовольствие от этого? Не уверен.

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