Search
Write a publication
Pull to refresh
3
0
Send message

30 лучших Python-проектов на GitHub на начало 2022 года

Reading time9 min
Views63K

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

UPD: добавили ссылки.

Читать далее

Портируем код C/C++ на Python

Reading time4 min
Views30K

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

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

Читать далее

Алиса, открой ворота — или MVP умного дома за пару вечеров

Reading time7 min
Views41K

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


Будет про:


  • Home Asistant
  • Алису и её станции
  • Ардуины и MQTT
  • управление воротами Came
  • локальное управление яндекс розетками
  • датчики движения
  • Влажность, температуру и CO2
  • Автоматический полив цветочков
  • Как при помощи всего этого развлечь детей и как они находят свои способы с этим играть.
Читать дальше →

Домашний веб-сервер для чайников

Reading time14 min
Views352K

Привет, Хабр! Относительно недавно после пары лет перерыва в айти, потраченных на изучение японского языка, мне пришлось срочно обновлять свои знания на работе. Ну знаете, искать возможности исполнить все хотелки начальника, как и положено эникею. Меня ждало много увлекательных открытий, но при этом, как водится, и немало боли и борьбы с непонятками. Docker, контейнеры, реверс DNS и реверс прокси, получение TLS сертификатов. В какой-то момент я наконец дошёл до удобного решения, которым я теперь хочу поделиться.

В своё время домашний сервер очень облегчил бы мне понимание Docker’а, да и удобство работы с ним неслабо бы повысил. Поэтому возникла идея написать эту статью, после прочтения которой любой человек даже с поверхностными знаниями в информационных технологиях сможет поставить себе постоянно доступный домашний сервер на базе Docker Swarm с удобной веб-мордой, простым получением TLS-сертификатов и Heroku-подобным функционалом (для чего будем использовать PaaS CapRover). 

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

Читать далее

Мой новый домашний сервер, часть 3: немного о сборке

Reading time7 min
Views46K
По сборке системников писать особо нечего. 95% процентов всех подобных отчётов сокращаются до слов «я пошел в магазин, купил железок и собрал из них компьютер».



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

Предыдущие части:

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

Самый крутой бесплатный ресурс по обучению программированию с нуля

Reading time3 min
Views93K
image


Куинси Ларсон, основатель бесплатной образовательной платформы для программистов freeCodeCamp

Куинси Ларсон


Путь Куинси Ларсона в программирование был замысловатым. Он 6 лет был директором школы и вдруг ему захотелось повысить эффективность системы образования, поэтому стал учиться программированию. Куинси Ларсон проанализировал, какие были учебные программы (буткэмпы) на тот момент и понял, что ни о какой доступности и открытости нет речи, и тогда решил сделать свой инклюзивный-диверсити-бесплатный образовательный лагерь в 2014 году. Куинси Ларсон хотел помочь начинающим программистам, чтобы те не шли таким корявым путем как он сам. Благодаря freeCodeCamp теперь никто больше не должен есть стекловату и смотреть в бездну. Узнав про мотивацию Куинси Ларсона, я обрадовался, ибо не один я такой странный и хочу собрать концентрат, Ontol, самых полезных бесплатных материалов в одном месте.

Помимо работы над freeCodeCamp, Куинси Ларсон борется за свободный интернет, контрибьютит в open-source и играется со своими двумя детишками.

freeCodeCamp


Образовательной платформой FreeCodeCamp пользуются 350 000 студентов в день из 160 стран. За 2021 год студенты провели за обучением 2,1 млрд минут или 4000 лет. 217 000 учеников считают себя выпускниками этой школы, 40 000 получили работу ИТишника впервые, после обучения тут.

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

На русском языке про FreeCodeCamp нет странички в Википедии (хотя есть на сербском, албанском, португальском, манипури, румынском, малаяльском языках), зато есть сотни более кривых «пересказов» их курсов на русском языке, но не бесплатно, а за 150к+
Читать дальше →

Радиолюбительские измерения: анализ сигналов шины I2C

Reading time5 min
Views33K


Как я уже неоднократно упоминал в своих публикациях, любительские проекты финансируются из семейного бюджета, и радиолюбитель, обычно, не может себе позволить покупку дорогостоящего измерительного оборудования. Приходится довольствоваться тем, что есть. Или тем, что удаётся взять попользоваться «на время». А иногда от безысходности радиолюбителю приходится «сверлить пилой и пилить буравчиком».

Недавно я испытал потребность выяснить, что на самом деле передаётся в разрабатываемом мной устройстве по шине I2C. Это был тот счастливый момент, когда можно было себе позволить «пилить пилой».
Читать дальше →

Как получить онлайн магистратуру по CS от американского университета по цене кофе

Reading time9 min
Views38K


Поговорим о: 1) том как я попал в магистратуру по Computer Science от Georgia Tech пока жил и работал в Воронеже, 2) требованиях к поступлению, 3) стоимости, 4) моих впечатлениях от курсов, которые мне читают, 5) почему я все еще продолжаю учиться после того, как начал работать в FAANG и переехал в UK.

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

Следующий лист дерева на ассемблере в девяти инструкциях и единственном регистре

Reading time5 min
Views7.2K


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


Я всегда считал, что читаемость кода на совести программистов и язык здесь совершенно не причём.


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


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


Но возможно я ошибаюсь. Увидим далее в статье.

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

Статическое константное дерево на шаблонах C++

Reading time6 min
Views10K

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

В статье предлагается рассмотреть особенности реализации элементарной структуры данных и способы оптимизации в условиях малого объема доступной памяти.

Читать далее

Задачи с Международной математической олимпиады 2021 (решаем в комментах)

Reading time3 min
Views91K
image

Предлагаю поразмять мозги и как в прошлом году, порешать задачки с математической олимпиады в комментариях к этой статье. Задачек 6 штук, и на них отводилось 2 дня по 4,5 часа. (Чур, в ответы не подглядывать!)

Этим летом в Питере прошла 62-я Международная математическая олимпиада с вот какими итогами:

  • Первое место заняла команда Китая, завоевавшая шесть золотых медалей (208 баллов).
  • Российские школьники заняли второе место с пятью золотыми и одной серебряной медалью (183 балла)
  • На третьем месте южнокорейская команда с пятью золотыми и одной серебряной медалью (172 балла)

Первая такая олимпиада прошла в 1959 году в Румынии, и тогда в ней принимали участие представители всего семи стран. В 2021 году в олимпиаде участвовали более 619 школьников из 107 стран.

image

Российская сборная
Тренировали сборную России учитель математики Президентского физико-математического лицея № 239 Санкт-Петербурга Кирилл Сухов, педагоги Центра педагогического мастерства Москвы Владимир Брагин и Андрей Кушнир. Россию на олимпиаде представляли:

  • Иван Бахарев (10 класс, Санкт-Петербург) — золотая медаль;
  • Айдар Ибрагимов (11 класс, Казань / Москва) — золотая медаль;
  • Матвей Исупов (11 класс, Ижевск) — золотая медаль;
  • Андрей Шевцов (11 класс, Москва) — серебряная медаль;
  • Данил Сибгатуллин (11 класс, Казань / Москва) — золотая медаль;
  • Максим Туревский (10 класс, Санкт-Петербург) — золотая медаль, абсолютное второе место в общем рейтинге.

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

ЧПУ, Arduino Uno и CoreXZ: как я собрал плоттер-головоломку

Reading time5 min
Views17K

Умелец собирает плоттер с ЧПУ из труб и показывает читателям, как он работает. А мы делимся этим материалом к старту курса по Data Science: проекты в науке о данных можно собирать подобным образом. Подробности о плоттере читайте под катом.

Читать далее

Открытый проект частотного преобразователя для управления электродвигателями

Reading time10 min
Views50K

Дефицит компонентов отразился не только на рынке потребительской электроники, но и на промышленной. Стали дефицитом в том числе и частотные преобразователи (ЧП). Может стоит сделать свой ЧП? Мы пробовали.

Вот что получилось

Советская игра «Логика» на листе бумаги

Reading time7 min
Views41K

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

Память — странная штука. Если бы я не обнаружил эту игру в коробке, я бы, возможно, никогда и не вспомнил о её существовании. Однако, несмотря на то, что я не играл в эту игру уже очень много лет, мне удалось без труда восстановить в памяти её простые правила. Но обо всём по порядку.

Читать далее

Консоль управления насосной станцией

Reading time4 min
Views13K

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

Читать далее

Двухколесный робот на карданном моторе

Reading time3 min
Views12K

С этим роботом я играюсь уже несколько месяцев. Перемещается он за счет поворачивания колес относительно груза маятника, а скорость контролирует, ориентируясь на обратную связь от датчика наклона. На его сборку меня вдохновила снятая на Consumer Electronics Show (CES 2020) видео-демонстрация с роботом Ballie от Samsung. Было понятно, что это для них чисто хайповый проект, который в серийное производство не выйдет. Тем не менее у меня возник интерес собрать нечто аналогичное.
Читать дальше →

Как я написал алгоритм сортировки, который быстрее std::sort. Часть 3

Reading time12 min
Views7.4K

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

Прим. Wunder Fund: ну, вы наверное, и сами догадываетесь, как мы любим быстрые алгоритмы и оптимизации. Если вы тоже такое любите — вы знаете, что делать)

Читать далее

STM32, CMSIS, CAN, Часть 1 — передача

Reading time11 min
Views48K

Привет, сегодня мы будем настраивать отправку данных с помощью CAN (Controller Area Network). В интернете много информации о том, как настроить CAN использую HAL библиотеку, а в случае использования CMSIS информация обрывочна, по этой причине решил рассказать о своем опыте работы.

Принцип работы CAN-сети в этой статье разбирать не будем т.к. на просторах интернета существует большой объем материла (особенно мне нравится как написано тут) на эту тему, но по ходу повествования будем останавливаться на некоторых нюансах.

Ставим себе задачу: заставить контроллер периодически отправлять кадры в CAN-сеть с скоростью передачи 250 кБит/с, со стандартной длиной идентификатора (11 бит) с полем данных размеров 8 байт.

Читать далее

Самый простой способ разместить IP-камеру на сайте в 2022 году

Reading time5 min
Views18K

Ранее в статье "Самый простой (для знающих Linux) и дешевый способ разместить IP-камеру на сайте для небольшой аудитории" я уже делился с сообществом своим видением, как быстро и просто разместить видео с камеры на своем сайте. Минусов у того подхода, к сожалению, было много. Это и запуск исключительно под Linux, и отсутствие полноценной поддержки Safari и Яндекс.Браузера для MacOSX, и необходимость проделать дополнительную работу, чтобы привести скрипт в боевое состояние. Установить Apache, PHP, FFMpeg. Сгенерировать вручную ссылки (немного не актуально – я недавно выложил генератор ссылок для того скрипта). В общем, в новом году хочется чего-то совсем простого, что настраивается в пару кликов и работает почти везде. Плюс в комментариях к статье были справедливые упоминания о технологии HLS. Вот такую программу я и написал, чем с вами сегодня и поделюсь.

Читать далее

Проверяем код дельфина Flipper Zero на чистоту с помощью PVS-Studio

Reading time12 min
Views21K

Проверяем код дельфина Flipper Zero на чистоту с помощью PVS-Studio
Flipper Zero — швейцарский нож для гиков и пентестеров с открытым исходным кодом. Так получилось, что пути этого проекта и анализатора PVS-Studio пересеклись. Философский вопрос: начинать ли проверять проект, зная, что авторы проекта уже исправляют ошибки? Попробуем.

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

Information

Rating
Does not participate
Registered
Activity