• ESP32 в окружении VSCode

      В нескольких следующих статьях я хотел бы детально рассмотреть настройку окружения VSCode для работы с фреймворком ESP-IDF. Не совсем популярная комбинация ПО обладает как преимуществами, так и недостатками, которые при детальном рассмотрении мы попытаемся исправить, обойти или превратить в достоинства.

      Изыскания проводятся в рамках разработки программно-аппаратного комплекса полетного контроллера на чистых кватернионах, без применения углов Эйлера.

      Поскольку предполагается многопользовательская удаленная разработка, то мы решили вначале отработать выбор и настройку самой среды разработки. После нескольких экспериментов с Eclipse, Visual Studio и QT Creator выбор пал на кроссплатформенный VSCode и плагин от разработчика Espressif IDF для работы с фреймворком ESP-IDF.

      В качестве «сердца» контроллера рассмотрим двухъядерный микроконтроллер ESP32, который обладает рядом преимуществ, и которые планируется использовать и раскрыть в проекте, а именно:

      Читать далее
    • Понимание джойнов сломано. Это точно не пересечение кругов, честно

        Так получилось, что я провожу довольно много собеседований на должность веб-программиста. Один из обязательных вопросов, который я задаю — это чем отличается INNER JOIN от LEFT JOIN.


        Чаще всего ответ примерно такой: "inner join — это как бы пересечение множеств, т.е. остается только то, что есть в обеих таблицах, а left join — это когда левая таблица остается без изменений, а от правой добавляется пересечение множеств. Для всех остальных строк добавляется null". Еще, бывает, рисуют пересекающиеся круги.


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


        Дело в том, что этот ответ в общем случае неверен. Ну или, как минимум, не точен.

        Читать дальше →
      • Еще немного истории — на этот раз копаемся в OS/360

          В продолжение поста о том, как работали программисты в 80-х, вспомнил и решил описать предысторию, идею и реализацию моего первого успешного проекта.

          Итак, дело было году этак в… давно тому назад. Я был студентом 3 курса, и начал работать старшим лаборантом своей кафедры.
          Читать дальше →
        • Стилевые особенности барокко в типографике

            Научный консультант — кандидат исторических наук доцент Кирьянова Елена Георгиевна

            Типографика считается древнейшей разновидностью промышленного дизайна. С середины XV в. книга обретает привычную нам форму кодекса (скрепленных вместе прямоугольных или квадратных листов в переплете), а для набора основной массы текста используются удобочитаемые антиквенные шрифты. Как известно,
            антиква (лат. antiquus — древний) — собирательное название шрифтов с короткими (обычно перпендикулярными) вспомогательными штрихами (засечками) в начале и конце основных штрихов знака.



            Читать дальше →
          • NaN все еще может немного удивить

              image

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

              Много сейчас пишут статей о светодиодных лампах, еще больше о "умных" лампах - в которых можно менять цветовую температуру, яркость и цвет свечения. В некоторых встроена bluetooth колонка, новогодняя гирлянда и прочее, не особо нужное источнику света… Многие производители «носятся» сейчас с CRI, поговаривая что он больше 95 у них (странно что не больше 100), как и срок службы лампочки > 50 000 часов… Не об этом речь пойдет в данной статье, а о том что зима на пороге, удаленка и…

              …и недостаток света на рабочем месте, в данном случае квартире. Раньше, во времена «теплого лампового» света лампочки на 100Вт было достаточно на кухне, но там только готовили и ели… А потом дети бежали на улицу… Сейчас все сидят по домам, пытаются работать, учить уроки, сидеть за монитором/ноутбуком/планшетом. Тема «мерцающих» экранов раскрыта довольно подробно в интернете, скажу лишь одно – что при помощи калибратора можно настроить монитор приемлемо и (почти)убрать ШИМ. Ставить яркость на максимум и уменьшить ее с помощью цветового профиля. Тогда не будет вылезать ШИМ подсветки некачественного монитора. Теперь к освещению, проблема офиса в квартире – это свет, а точнее его недостаток. Ведь многие используют 1-3 лампочки на всю комнату… А это очень и очень мало. Вспомните офисы, там сборки ламп 18х4 и довольно часто на потолке.

              Все красивые слова о светодиодах разбиваются о три проблемы –

              Ниже приведу спектры МГЛ и светодиода (с официальных даташитов ламп philips), он будет полезен для сравнения.

              Спектры ламп (масштаб чуть отличается, но на проблему это не влияет) МГЛ 3000k Philips CDM-T(TC), 4200k Philips CDM-T(TC), 4000k Philips LED tube+

              на пороге, удаленка и…
            • К вопросу о Linux (Л)

                Мы исходим из того, что вы получаете полноценную операционную систему, сразу полностью за все заплатив. (Билл Гейтс в ответ на вопрос о конкуренции с Л.)


                Чем больше я узнаю о Linux, тем меньше я ненавижу Б.Г.


                Ну, вообще то, я никогда не испытывал к нему столь сильных чувств, просто начинаю лучше понимать, за что фирма, производящая Окна, берет деньги. И становится яснее, почему потребители предпочитают платить Биллу (тут, конечно, есть варианты, ну Вы поняли), вместо того, чтобы воспользоваться бесплатной («то есть даром») альтернативой. Но начнем по порядку, и рассмотрим два эпизода взаимодействия с Л.
                Читать дальше →
              • К вопросу о U-Boot

                  Найди всему причину и ты многое поймешь


                  Недавно, просматривая код U-Boot в части реализации SPI, наткнулся на макрос обхода списка доступных устройств, которые после нескольких переходов сбросил меня на макрос container_of. Сам текст макроса наличествовал и я с легким изумлением увидел, что он несколько отличается от ранее виденной мною версии. Было проведено небольшое расследование, которые привело к интересным результатам.
                  Читать дальше →
                  • +12
                  • 3,4k
                  • 2
                • К вопросу о преобразователях, транзисторах, микросхемах и проявлениях черной магии с последующим разоблачением

                    Пусть он мне скажет:
                    «Ты старый осел, ты жил не так, я буду жить по-другому».
                    Я пойму, но пусть он скажет! Но он же молчит.



                    Недавно один мой молодой коллега (ММК) попросил посмотреть происходящие в его разработке непонятки. Изделие представляло собой повышающий преобразователь 5В в 5В, основным назначением которого было скомпенсировать падение напряжения на кабеле подключения внешнего DVD привода к интерфейсу USB. Построен преобразователь на основе микросхемы MAX669 в режиме «самоподдержки», схема соответствует рекомендованной и, тем не менее, устройство не работало — напряжение на выходе составляло 4 В, то есть питание 5В минус падение на проводах, минус прямое падение на диоде.
                    И при чем тут черная магия...
                  • Как определить, что в жестком диске применена технология SMR



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

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

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

                      Но если диск уже попал к вам в руки, определить использование технологии SMR можно достаточно просто. Далее я расскажу о том, как это сделать.
                      Читать дальше →
                    • Пишем голосового ассистента на Python

                      Введение


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

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

                      image
                      Читать дальше →
                    • Мелкая питонячая радость #13: стойкие пароли, гибкие уведомления и вменяемые тесты API

                        Создатель Python и пенсионер Гвидо Ван Россум был вынужден снова выйти на работу, на этот раз в Майкрософт. Нет, Гвидо сделал это не  потому, что на 15 000 рублей (200 долларов) пенсии  ему  тяжело жить — в MS он устроился от скуки: талантливому инженеру не сидится без дела. Желаю всем нам в старости быть как Гвидо и плавно перехожу к разбору трех весьма полезных штуковин из питонячего мира. 

                        Читать далее
                        • +11
                        • 4,8k
                        • 1
                      • Каверзные вопросы по Python

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


                          Читать дальше →
                        • Прощай ЕНВД. Комплект для торговой точки. Выбор оборудования и ПО. Личный опыт

                            Введение


                            Вдохновившись статьей о переходе с Эвотор на другое ПО, решил написать свою статью на эту тему. Она будет полезна в первую очередь специалистам, которые еще не определились на что переходить. Если интересно, прошу под кат.
                            Читать дальше →
                          • Вакцина «Спутник V»: инструкция, как испортить хорошее дело

                              Давайте на минуту отбросим все предубеждения и стереотипы об отечественной медицине и попробуем объективно разобраться в том, что сделано правильно, а что неправильно с "первой в мире вакциной от COVID" — Спутник V от «НИИ эпидемиологии и микробиологии им. Н. Гамалеи».


                              Поговорим о том, как устроена современная наука в целом и доказательная медицина в частности, и при чем тут пиар.


                              image

                              Читать дальше →
                            • Как устроено множество Мандельброта. Центральная кардиоида

                                image

                                Хорошо известно, что центральная часть множества Мандельброта представляет из себя кардиоиду. Не просто похожа, а именно ей и является. Сегодня мы пытаемся понять, почему именно кардиоида и что из этого следует.
                                Читать дальше →
                              • МиниSCADA своими руками

                                Однажды, мне позвонили и спросили – могу ли я сделать маленькую автоматизацию для канализационной насосной станции (КНС)? Толком ничего не выспросив и положив трубку я стал раздумывать что и как сделать.

                                Являясь специалистом по SCADA более 10-ти лет, в основном по продуктам томской компании «Элеси», мне сразу пришло в голову использовать какой-нибудь известный пакет типа TraceMode и ему подобным. Однако, встретившись с заказчиком и узнав более подробно, что ему нужно, я решил не использовать готовые пакеты.

                                Задача была проста: исключить бабушку, сидящую в здании КНС и наблюдающую за периодическим процессом раскачки емкости со сточными водами. Насосами управлял ПЛК фирмы Modicon в составе какого-то российского щита управления. Бабушка требовалась на случай аварии насосов, чтобы сообщить ремонтной бригаде и не допустить перелива емкости. Контроль должен был осуществляться дистанционно, функций управления не требовалось.
                                Читать дальше →
                              • Windows: достучаться до железа

                                  Меня всегда интересовало низкоуровневое программирование – общаться напрямую с оборудованием, жонглировать регистрами, детально разбираться как что устроено... Увы, современные операционные системы максимально изолируют железо от пользователя, и просто так в физическую память или регистры устройств что-то записать нельзя. Точнее я так думал, а на самом деле оказалось, что чуть ли не каждый производитель железа так делает!

                                  Читать далее
                                • Как получить 9В/12В от зарядного с Quick Charge (на примере STM32)

                                  Чем может быть полезна быстрая зарядка


                                  С увеличением ёмкости аккумуляторов телефонов потребовалось увеличить и мощность зарядных устройств, чтобы достичь маленького времени зарядки, для чего и нужно было увеличивать выходную мощность: напряжение, ток. Таким образом зарядные с Quick Charge 3.0 кроме 5 В могут выдавать 9В/12В/20В +возможность регулировки с шагом 0.2 В (до 12 В).


                                  image

                                  Ввиду распространенности ЗУ с этой технологией появляется интерес использовать их для получения повышенного напряжения без дополнительных преобразователей.

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