Рубрика «open source» - 91

Связь – она как воздух. Пока не испортишь, ее не замечают.

В течении долго времени домашнее подключение к интернет считало только как сервисная услуга-развлечение. Но с ростом различных сервисов развлекательная составляющая довольно сильно уменьшилась. А с появление возможности удаленной работы подключение к интернет превзошло в потребности даже обычную телефонию и умудрилось даже попасть в права человека.
Читать полностью »

В этой статье мы рассмотрим, как построить программу на Go, такую, как компилятор или статический анализатор, которая взаимодействует с фреймворком компиляции LLVM, используя язык ассемблера LLVM IR.

TL;DR мы написали библиотеку для взаимодействия с LLVM IR на чистом Go, см. ссылки на код и на пример проекта.

Читать полностью »

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

image
Читать полностью »

Хотим представить наш новый инструмент для токенизации текста — YouTokenToMe. Он работает в 7–10 раз быстрее других популярных версий на языках, похожих по структуре на европейские, и в 40–50 раз — на азиатских языках. Рассказываем о YouTokenToMe и делимся им с вами в open source на GitHub. Ссылка в конце статьи!

image
Читать полностью »

Всем привет!

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

Большая часть обучающего материала для наглядного и интерактивного представления реализована с использованием Jupyter Notebook. Предполагается, что читатель имеет базовые знания из области высшей математики, а также немного владеет языком программирования Python.

Курс лекций «Основы цифровой обработки сигналов» - 1
Читать полностью »

Язык программирования P4 - 1

P4 — это язык программирования, предназначенный для программирования правил маршрутизации пакетов. В отличие от языка общего назначения, такого как C или Python, P4 — это предметно-ориентированный язык с рядом конструкций, оптимизированных для сетевой маршрутизации.

P4 — это язык с открытым исходным кодом, лицензируемый и поддерживаемый некоммерческой организацией, которая называется P4 Language Consortium. Он также поддерживается Open Networking Foundation (ONF) и Linux Foundation (LF) — двумя крупнейшими зонтичными организациями в проектах с открытым исходным кодом в области сетевых технологий.

Читать полностью »

Много лет работая SQL Server DBA и занимаясь то администрированием серверов, то оптимизацией производительности. В общем, захотелось в свободное время захотелось сделать что-то полезное для Вселенной и коллег по цеху. Так в итоге получился небольшой опенсорс тул по обслуживанию индексов для SQL Server и Azure.

SQL Index Manager

Читать полностью »

До После
import math
import os.path

import requests

# 100500 other imports

print(math.pi)
print(os.path.join('my', 'path'))
print(requests.get)
import smart_imports

smart_imports.all()

print(math.pi)
print(os_path.join('my', 'path'))
print(requests.get)

Так получилось, что аж с 2012 года я разрабатываю open source браузерку, являясь единственным программистом. На Python само собой. Браузерка — штука не самая простая, сейчас в основной части проекта больше 1000 модулей и более 120 000 строк кода на Python. В сумме же с проектами-спутниками будет раза в полтора больше.

В какой-то момент мне надоело возиться с этажами импортов в начале каждого файла и я решил разобраться с этой проблемой раз и навсегда. Так родилась библиотека smart_imports (github, pypi).

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

Например, не надо будет писать import math чтобы обратиться к math.pi — мы и так можем понять, что в данном случае math — модуль стандартной библиотеки.

Smart imports поддерживают Python >= 3.5 Библиотека полностью покрыта тестами, coverage > 95%. Сам пользуюсь уже год.

За подробностями приглашаю под кат.
Читать полностью »

Есть интересная проблема, помочь решить которую можете только вы. Вкратце: в августе на TechTrain приезжает Ричард Столлман, и он не любит жить в гостиницах. У вас появляется уникальная возможность приютить у себя дома на пару дней отца всего Free Software, и под катом мы расскажем — как.

Небольшая историческая справка. Доктор Ричард Мэттью Столлман создал движение свободного ПО в 1983 году и начал разработку операционной системы GNU в 1984. GNU действительно свободна: любой имеет право копировать и распространять её, внося изменения, если пожелает. Система GNU/Linux — в основном, операционная система GNU с ядром Linux Линуса Торвальдса — сейчас используется на десятках миллионов компьютеров, их количество сложно точно подсчитать. Столлман получил множество престижных премий: ACM Grace Hopper Award, ACM Software and Systems Award, EFF Pioneer Award, MacArthur Foundation Fellowship и так далее и тому подобное. Ну и конечно, Internet Hall of Fame.

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

В Россию приезжает отец Free Software, Ричард Столлман. Ищем того, кто готов на пару дней его приютить - 1

Читать полностью »

Создаем инфраструктуру как код с GitLab и Ansible - 1

Вся мощь GitLab CI в демонстрации плейбуков Ansible при подходе «инфраструктура как код».

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

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js